MC56F847X EEPROM maximum number of erasures cycles?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

MC56F847X EEPROM maximum number of erasures cycles?

跳至解决方案
1,526 次查看
IvyGuo
Contributor III

When the Flexnvm  was partitioned as the EEPROM backup data memory,the eeprom can write about 1.6 millions cycles or not ? How to set the FMC and FTFL to achive the goal?

In datasheet, there are some set of data show the write cycle of eeprom  up to 100M cycles. how to set the  EEPROM backup to FlexRAM ratio to 256 or 512?  Is there some registers to finish the setting?

IvyGuo_0-1685367100238.png

 

标记 (1)
0 项奖励
回复
1 解答
1,508 次查看
Lorenzo_Mch_IT
Contributor IV

See MC56F847xx Reference Manual, Rev. 2, 3/2014.

At page 422 there is the formula they used for "simulated EEPROM" write cycles estimation.
At page 423 there is a graph showing what to expect, but it's misleading because  projects the estimation beyound the available data flash.


With 32KB of data flash fully assigned as "EEPROM backup", if you select the minimum "simulated EEPROM" size you get a ratio of 32K/32 = 1024, that is about 5 milion writes using 16bit or 32bit writes or about 1.6 milion writes using 8bit writes.

If you have to use the maximum size for "simulated EEPROM" (2KB) the ratio goes down to 16, so you can expect about 60K of 16/32bit writes or about 25K of 8bit writes (assuming 10K writes for "normal" flash memory).

The registers with the settings for simulated EEPROM size and backup are described at page 404,405,406.


It's a bit tricky, because while the "simulated EEPROM" size is exactly the value written in the EEESIZE field (of Data flash IFR 0x00FD), the DEPART field (of Data Flash IFR 0x00FC) is NOT the "EEPROM backup" size, but instead the data flash size to NOT be allocated as eeprom backup.

So, to get 32KB all for EEPROM backup, set DEPART to  0011 binary or 1000 binary.

在原帖中查看解决方案

0 项奖励
回复
4 回复数
1,466 次查看
IvyGuo
Contributor III

Thanks for your help,Lorenzo,xianjun:

your description “ if you select the minimum "simulated EEPROM" size you get a ratio of 32K/32 = 1024, that is about 5 milion writes using 16bit or 32bit writes or about 1.6 milion writes using 8bit writes.”  refer to this equation right?  sofrware use this api? 

DEFlashPartition(&ftfl_cfg, 0x36U, 0x02, FlashCommandSequence); //0x36: 256bytes EEPROM data size, 0x02: 16kbytes EEPROM buckup size

 

 

IvyGuo_0-1685500673324.png

 

And another question is  this chip has a built in writeing balance strategy?  user mannul shows that the :

 

After a sector in EEPROM backup is full of EEPROM data records, EEPROM data

records from the sector holding the oldest data are gradually copied over to a previously

erased EEPROM backup sector. When the sector copy completes, the EEPROM backup

sector holding the oldest data is tagged for erase

 

 

 

 

0 项奖励
回复
1,453 次查看
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

1)refer to this equation right? sofrware use this api? 

>>>>Yes, the ratio is the EEPROM backup size/EEPROM data size, for your case, it is 16kB/256B=62

 

2)And another question is this chip has a built in writeing balance strategy?

>>>>Yes, the The EEPROM file system  is smart enough, it's strategy is to use all backup FlexNVM rather than using a fixed part of flexNVM part.

Hope it can help you

BR

XiangJun Rong

0 项奖励
回复
1,492 次查看
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

Pls refer to the section 20.4.11.14 Program Partition Command, the FCCOB4[EEESIZE] bits defines the FlexRAM size when you use command 0x80 to execute EEPROM partition operation. The FlexNVM Partition Code defines the FLEX NVM size for the EEPROM function.

Hope it can help you

BR

XiangJun Rong

xiangjun_rong_0-1685416699432.png

 

0 项奖励
回复
1,509 次查看
Lorenzo_Mch_IT
Contributor IV

See MC56F847xx Reference Manual, Rev. 2, 3/2014.

At page 422 there is the formula they used for "simulated EEPROM" write cycles estimation.
At page 423 there is a graph showing what to expect, but it's misleading because  projects the estimation beyound the available data flash.


With 32KB of data flash fully assigned as "EEPROM backup", if you select the minimum "simulated EEPROM" size you get a ratio of 32K/32 = 1024, that is about 5 milion writes using 16bit or 32bit writes or about 1.6 milion writes using 8bit writes.

If you have to use the maximum size for "simulated EEPROM" (2KB) the ratio goes down to 16, so you can expect about 60K of 16/32bit writes or about 25K of 8bit writes (assuming 10K writes for "normal" flash memory).

The registers with the settings for simulated EEPROM size and backup are described at page 404,405,406.


It's a bit tricky, because while the "simulated EEPROM" size is exactly the value written in the EEESIZE field (of Data flash IFR 0x00FD), the DEPART field (of Data Flash IFR 0x00FC) is NOT the "EEPROM backup" size, but instead the data flash size to NOT be allocated as eeprom backup.

So, to get 32KB all for EEPROM backup, set DEPART to  0011 binary or 1000 binary.

0 项奖励
回复