If you need to use NON volatile memory for an extensive period ie 100,000 writes or more then EEprom isn't the way forward. EEprom was only really designed for occasional storage writes..
I use FRAM over a trillion writes and no loss of speed!! There is no write delay so is the same as SRAM..
Hi there,
But unfortunately the endurance is quoted as being only 151 years, and i need 152 years (ha ha).
Seriously, that's an excellent idea. I will definitely have to look into this very soon, if not sooner.
For the Arduino, my application happens to require a fairly low write rate that's why i was thinking about the wear leveling. Maybe once per hour, for maybe 16 hours, then not used again for maybe 7 days. So that would be maybe 16 writes per week, or maybe at the most four times that, about 64 writes per week. So you can see why i was thinking about this. If i can get some benefit from wear leveling however i may increase the number of writes per week, so it's partly dependent on what i can actually achieve here. If i can get up to maybe 20 years i could go with many more writes per week to meet that timely goal and that would give me more accurate data storage.
You are definitely right though, i think everyone who uses uC's should get some FRAM's if they need non volatile storage. Thanks for the tip.
I see that for one FRAM i looked at, the wear on that is quoted as being 64 bits (8 bytes) per write, regardless how many bits (under or equal to 64) are written at once. So using wear leveling on that would end up in a truly mind boggling longevity where other factors would start to dominate.
I would have given you two 'likes' for this idea but they only allow 1 per customer