EEPROM losing memory, heat? - Page 1
Forum section: electronics / general

author: woodchips
author_rank: Frequent Contributor
timestamp: April 19, 2023, 08:33:33 am
content: My products use the 93C46 EEPROM to store calibration information. I have used many different manufactures but all were 5V versions after problems with the 3V version. These products were manufactured in the late 1990's into the 2000's.I have just had the third enquiry since about Christmas time that the calibration information has corrupted, easily fixed in each case by getting the customer to reload the calibration information from the backup copy stored in the same EEPROM.In the last 20 odd years this has scarcely ever happened before.The question is why? My thoughts as the moment are that the roasting hot summer, north and south of the equator, have caused this. Is this reasonable? The data in the 93C46 is stored by a voltage on a floating gate and high temperatures could have drained it. What about all the rest of the calibration data stored in the chip, is that slowly draining away as well so whilst it still works, it could be in error?The microcontrollers used are several from the Microchip PIC16C7x family, and there has been no failure there that has been reported. With the code going wrong then the device would simply stop working, not much error protection in those chips!Data retention is guaranteed for 10 years from memory, but EPROMs are still good after 50+ years.Any comments or ideas please.

author: m k
author_rank: Super Contributor
timestamp: April 19, 2023, 09:36:20 am
content: Are backups always ok?Are corrupted addresses known?

author: Jeroen3
author_rank: Super Contributor
timestamp: April 19, 2023, 02:03:53 pm
content: Ambient temperatures of 40 are not supposed to severely reduce the retention. But maybe your devices are getting very hot?I suspect that the most likely culprit here is jittering of the spi lines during chip reset that can cause an accidental write when the stars align.You will probably never have this happen on your desk, but once you've sold enough...Some workaround could be to never use address 0x00, depending on the reset pin states.Do you have sufficient pull-down/up resistors on the chip selects?Or you know, find the jitteriest (is that a word) power switch and turn it off and on for a while to see if you can reproduce it?

author: RoGeorge
author_rank: Super Contributor
timestamp: April 19, 2023, 02:35:20 pm
content: - I would suspect first a software bug. Maybe there is a bug that keeps writing more often than it should, and it wears out the EEPROM page where that calibration values reside.- Second, I would check if the brown out interrupt is enabled and properly handles a power outage during an EEPROM write.- Could be as well a faulty batch of EEPROM chips

author: james_s
author_rank: Super Contributor
timestamp: April 19, 2023, 05:31:43 pm
content: You said data retention is guaranteed for 10 years and these products are over 20 years old, it's not too surprising this is happening. Elevated temperature certainly doesn't help, is it possible these devices are being left in direct sunlight, in a hot car, or a garage loft or something where the temperature could be MUCH higher than ambient?

author: NiHaoMike
author_rank: Super Contributor
timestamp: April 20, 2023, 02:21:55 am
content: Could read disturb be a possibility?

author: Whales
author_rank: Super Contributor
timestamp: April 20, 2023, 04:33:45 am
content: It looks like ambient temp affects flash storage lifetime dramatically. A 10degC change more than halves the life in this Infineon doc, see Figure 6 on page 8:https://www.infineon.com/dgdl/Infineon-AN217979_Endurance_and_Data_Retention_Characterization_of_Infineon_Flash_Memory-ApplicationNotes-v03_00-EN.pdf?fileId=8ac78c8c7cdc391c017d0d30d6b064f5Weather could explain it....but you're succeeding at reading the same info stored at a different spot in the same EEPROM? So reading them must be degrading them? Or are you doing something else?

author: woodchips
author_rank: Frequent Contributor
timestamp: April 20, 2023, 05:30:28 pm
content: My thanks to everyone who read or replied.These EEPROMs are not flash, at the time, 1991, the only choice was either the 93 series or 24 series EEPROMs. I just happened to use the 93C series, looked easier to use when an 8 bit port is used for different things and needed to get the ins, outs and tristates correct!The EEPROM isn't written except during the calibration sequence, but it is read several times per second to extract lookup table data. When calibrated it is powered from the mains and even if there was a power loss then would have to start the whole procedure anew.At the time 3V devices weren't around, but when they arrived I did use the dual voltage 93C46 until failures in the field caused a reversion to just the 5V only version. As time progressed these became harder to source, had to buy end of line and other manufacturers parts. The 3V failure was due to the bus lines detecting a spurious write during power on. Various pull up/down resistors have always been used but not using address 0 was quickly implemented.I have no control over where the units were placed but sure many were in front of a window.The other big change over the years is the change from transformer based to switch mode wall warts. I have discovered that the switch mode type can put 80V pk-pk signal on the output, only at 1 or 2 uA, but enough to upset a battery powered unit when everything else is off to save battery life. Some used battery, some had a mains power supply as an option, but the software still did the power saving.Over the 30 odd years I have sold many thousands of units, just that three identical failures in such a short period raises questions.