Yahoo Groups archive

AVR-Chat

Index last updated: 2026-04-28 22:41 UTC

Message

Re: [AVR-Chat] RE: ATmega88PA EEPROM Memory Life

2012-12-13 by Bob Paddock

> Yes. You'd either want to use another byte(s) location to indicate which
> EEPROM location has the current data or find out what the excessive writing
> failure mode is (0 or 1) then when the current location is worn out and it
> fails to pass a verification

Another failure is where it will verify immediately after writing, but will lose
charge over time.  Time could be measured in seconds or days in this case.
An immediate read back is not an indication of a good write to EEPROM
cells that are dieing.

At room temperature you may get millions of write cycles to a
location.  8 Million is the case I'm familiar with.
Data sheet does not say 100,000 is the maximum it says it is the
guaranteed minimum.
It is not going to fail at 100,001.

I've gotten inconsistent answers from Atmel over the years about
EEPROMs wearing at the byte or the page level.
Look at the section on memory programming and it will give the EEPROM
page size.  4 and 16 bytes are typical EEPROM page sizes.
I've always gone conservative and assumed EEPROM wears by pages.  Can
someone point to a definitive Atmel answer?

There are techniques for increasing EEPROM life such as using Gray
Code to store your EEPROM data.  Fewer number of bits will transition
with a given write.
There is also inverted one-hot code; shift a single zero bit around,
EEPROM has no penalty for writing ones.


--
http://blog.softwaresafety.net/
http://www.designer-iii.com/
http://www.wearablesmartsensors.com/

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.