Dear All,
We have an S32K144 EVB and trying to implement MBD algorithms. Our sample time is 50 ms and we save calculated data as uint32(14 piece uint32) to EEPROM (4 kB and partition :0x02) which means our model saves data to EEPROM 20 times in a second( 1200 times in a minute, 72000 times in one hour).
My questions are:
1. We observe that data write to EEPROM takes 5 ms and it it too much and is not acceptable for our system. What may be reason behind that long time period of 5 ms.
2. In datasheet of S32K144, endurance of EEPROM is written as 100K cycle. Since our model writes data 72k times just in one hour. EEPROM of related processor should already have been exceeded and dead. But we can still write data to EEPROM. How that is possible? Does EEPROM write function has any internal check whether data that is desired to be written is same with data that is already exists on EEPROM so as to increase lifetime of EEPROM.
Any help will be appreciated.
Thanks.
Hello,
1.
The execution time is specified in the datasheet, rev.13, Table 35.
But this is only the time during which the CCIF = 0, it does not include any CPU overhead of the driver that you use.
I don’t know how you measure the execution time.
2.
100k is the minimum guaranteed if EEPROM backup to FlexRAM ratio = 16.
Also, the minimum guarateed retention depends on the endurance.
You can use the Flex Memory Endurance Calculator
If a write to FlexRAM does not change the already existing record, no new record is created in the EEPEOM backup.
For more information about the EEPROM, please take a look at
AN11983 Using the S32K1xx EEPROM Functionality
https://www.nxp.com/docs/en/application-note/AN11983.pdf
Regards,
Daniel