Aantal read cycles EEPROM

Ik werk momenteel aan een project waar ik twee contactloze IR sensoren met elkaar wil laten matchen.
Van fabriek af wijken ze onderling te veel af en ook nog eens met een non-lineaire afwijking.

Ik heb nu in code een formule staan die IR sensor2 kan mappen op sensor1.
Zeg maar een correctie formule.
Dit werkt aardig, maar niet optimaal nog.
Het liefste wil ik af van alle floating point berekeningen en de ruwe ADC resultaten kalibreren.

Nu zit ik te denken aan het genereren van een calibratie tabel in EEPROM.
Sensor2 kan dan de dichtstbijzijnde waarde opzoeken in de tabel en de gewenste correctie toepassen.

Nu garanderen ze bij de Atmega328P het volgende:
The EEPROM has an endurance of at least 100,000 write/erase cycles.

Maar is het lezen van EEPROM dan onbeperkt?
Ja, dat is voor praktische doeleinden onbeperkt. Er zal vast een theoretisch verouderingsmechanisme zijn, maar dat wordt in de praktijk zelden gehaald. Oude EEPROM chips willen nog weleens corrupt raken, maar volgens mij ligt dat aan andere effecten (penetrerende ioniserende straling).
het ding noemt niet voor niets EEPROM. samenstelling van : EE P ROM . Het ding gedraagt zich om uit te lezen dus als een ROM, en dat kan je naar hartelust doen. Schrijven is beperkt. 100.000 keer lijkt me erg veel...
Niet meer dan ongeveer pi * 1015 in tien jaar.

(10 miljoen x per seconde lezen gedurende tien jaar). :-)
four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Dankjewel.

Het idee was om de tabel elke seconde te benaderen, dus dan zou 100k cycles snel uitgespeeld zijn.
Data Retention
Reliability qualification results show that the projected data retention failure rate is much less than 1 PPM over 20 years at 85°C or 100 years at 25°C.

Pagina 8 van de datasheet.
Meep! Meep!
EricP

mét CE

Tenzij de software de boel zelf kan calibreren... Waarom douw je het niet in flash? Kun je evt. gewoon een look-up table maken met 1024 entries...
Op 10 januari 2019 17:15:08 schreef EricP:
Tenzij de software de boel zelf kan calibreren... Waarom douw je het niet in flash? Kun je evt. gewoon een look-up table maken met 1024 entries...


Dat zou ook nog kunnen.
Het doel is uiteindelijk dat iemand gemakkelijk een calibratie kan doen aan het einde van de assembly lijn.
Dat hoeft maar eenmalig en zou ik dan in eeprom kunnen opslaan gedurende de lifetime van het product.
buckfast_beekeeper

Golden Member

Lezen is niet het probleem. Het is het aantal schrijfcycli wat telt.
Honing kan je importeren, bestuiving niet.
vziw, is het zelf het aantal keren wissen dat telt. Nu moet je wissen om "1" te kunnen schrijven, maargoed. (Bij wissen wordt alles "1". Daarna worden de "0" en geschreven. In theorie zou je 1 keer kunnen wissen en dan door meer bits "0" te maken de boel nog beperkt kunnen "aanpassen" zonder wissen. Vast heel erg jaren '80 met OTP dingen, dus vóór mijn tijd... Maar stiekem best ingenieus hoe men dat kon, toen.)

Maargoed. Allemaal onbelangrijk: lezen kan onbeperkt.

(Flash slijt trouwens ook van schrijven/wissen, en niet van lezen - staat in elk geval niet gespecificeerd)

(En hoe hard het slijt van schrijven/wissen kan verschillen, ene EEPROM/FLASH mag een miljoen cycli, ander EEPROM/FLASH maar 100.)

(Dan is er nog "data retention", vaak 100 jaar oid. Ik vraag me dan af hoe ze dat testen >:). Maar dat is niet "slijten door gelezen te worden", maar "slijten door te bestaan".)
Blog // Backwards Lightspeed Bus: i*i=-1, so iic=-c.
Ik heb een flashchip in handen gehad die maar acht cycli kon volgens de spcs..... Bios use only was de bedoeling. (Hij zat in een usb stick)
four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Op 11 januari 2019 09:44:15 schreef Lucky Luke:
(Dan is er nog "data retention", vaak 100 jaar oid. Ik vraag me dan af hoe ze dat testen >:).


Op hogere temperatuur. Als hij op 25 graden 100 jaar doet, op 85 20 jaar, dan kun je een formuletje pakken dat op een paar maanden komt bij (uit mijn hoofd) 135 graden.

100 chippies programmeren, paar maanden op 135 graden en tellen hoeveel bitjes omgevallen zijn.

Wat dit betekend voor het gebruik van voor-geprogrammeerde devices bij reflow solderen (paar minuten op 230 graden) mag je zelf uitvogelen.
Dan moet je me wel dat formuletje geven >:) Ik vermoed dat het die 100 jaar wat inkort, misschien worden het er 85 of 42 ofzo... Of 99 jaar en 3 maanden... Zonder het formuletje niet te zeggen.

Die 100 jaar klinkt ook al als "te exact gespecificeerd om exact waar te zijn".

(Maargoed. Goed te onthouden dat het beter is ze ná het solderen de programmeren. Ook wel zo praktisch).
Blog // Backwards Lightspeed Bus: i*i=-1, so iic=-c.
Zo exact opgeven is inderdaad wat lachwekkend... ;)
Bij sommige voedingen geven ze bijv. op: MTBF = 216320 uur. (maak er dan een afgerond getal van)

Bij de meeste electronica kun je wel stellen dat bij 10°C hogere temperatuur de levensduur halveert.
Arco - "Simplicity is a prerequisite for reliability" - www.arcovox.com
bprosman

Golden Member

Bij sommige voedingen geven ze bijv. op: MTBF = 216320 uur. (maak er dan een afgerond getal van)

Mijn wiskunde leraar kon daar ook altijd boos over worden als hij in de vrouwenbladen las : Dit artikel kost CA. 9,95
De jongere generatie loopt veel te vaak zijn PIC achterna.
Arco - "Simplicity is a prerequisite for reliability" - www.arcovox.com
Op 13 januari 2019 12:47:15 schreef Arco:
Zo exact opgeven is inderdaad wat lachwekkend... ;)
Bij sommige voedingen geven ze bijv. op: MTBF = 216320 uur. (maak er dan een afgerond getal van)


Volgens mij bedoel je 219500 uur. En dat is een heel rond getal: 25 jaar.
Nee, dat was het zeker niet...
Arco - "Simplicity is a prerequisite for reliability" - www.arcovox.com