mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik EEPROM-Killer -> ich find den Fehler nicht!


Autor: Joachim B. (jojo84)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend zusammen!

Ich habe mal ein Programm geschrieben, daß so lange abwechselnd 0x00 unf 
0xff an eine EEPROM-Speicherstelle in einem Atmega8 schreibt, bis diese 
kaputt ist. "Eigentlich ganz einfach." dachte ich... Ein- und Ausgabe 
schön über nen Terminalprogramm (was auch soweit klappt), aber irgendwas 
stimmt scheinbar mit meinen EEPROM-Routinen nicht!
Denn ich habe an einer Stelle mittlerweile weit über 4 Mio. 
Schreibzugriffe! Und spezifiziert sind die mit gerade mal 10000.

Ich finde es echt nicht. der Inhalt der zu zerstörende Speicherstelle 
wird sogar vor jedem neuen Reinschreiben ausgegeben, und da kann ich 
sehen, DASS die Werte sich scheinbar wirklich ändern, die 
Schreibzugriffe also stattfinden...
Würde mich echt freuen, wenn ihr da mal drüber gucken könntet...

Danke schonmal!

Gruß,
Jojo

Autor: Christian M. (chrisreg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eeproms halten anscheinend sehr viel aus:

http://hackaday.com/2010/06/14/update-flash_destro...

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim A. schrieb:
> aber irgendwas stimmt scheinbar mit meinen EEPROM-Routinen nicht!
Du solltest zwischendurch mal die Versorgungsspannung abschalten 
und/oder vor dem Lesen länger warten. So eine ausgeleierte EEPROM-Zelle 
hält die geschriebenen Daten schon noch locker ein paar Sekunden... 
:-o
Nur eben nicht mehr die garantierten 10 Jahre... :-(

Autor: Bernhard R. (barnyhh)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und wozu dient der Test?

Im Datenblatt steht ausdrücklich und explizit die Mindestzahl von 
Schreibzyklen. Ein sinnvoller Test prüft also, ob nach dieser 
Mindestzahl von Schreibzyklen alles noch stimmt ---> IC hat 
Spezifikation bestanden.

Ein sinnfreier Test dagegen prüft irgendetwas anderes, z.B. beschreibt 
es das EEPROM einige Millionen Male. Wenn das EEPROM jetzt immer noch 
tut, geht der sinnfreie Tester hin und sucht seinen Fehler.

Bernhard

Autor: Ralph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann lies mal die Spec genau.

Die 10000 sind gültig über den gesamten Versorgungsspannungs und 
Temperatur Bereich.
Bist du im optimalen Bereich halten die Zellen fast ewig.

Mach den gleichen Versuch mal bei z.b. 80 °C ( ich gehe mal davon aus 
das der EEPROM auf -20  bis +85 °C ausgelegt ist) und du wirst sehen das 
die Anzahl der Schreibzyklen gewaltig einbricht.

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... Und spezifiziert sind die mit gerade mal 10000 ...

Das EEPROM im ATMega8 ist mit 100 000 Schreibzyklen angegeben.

Autor: Joachim B. (jojo84)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok, danke erstmal für die Antworten...

@Martin:
da hast du natürlich recht... da ist die eine "0" wohl beim eintippen 
verloren gegangen :) .

@Lothar:
danke für den Hinweis. Einmal hatte ich die Spannung schon aus, bei ca. 
3 Mio. Zugriffen. Das war gestern, heute sind es bereits 4 Mio. Aber ok, 
ich kann ja mal längere Pausen einfügen. Aber eine Sekunde ist mir da 
doch zu lang ;) ...

@Bernhard:
auch wenn es in den Forenregeln nicht "ausdrülich und explizit" drin 
steht kann aber doch davon ausgegangen werden, daß sinnfreie Kommentare 
auch keine Mindestanzahl von "Prima"-Stempeln ins Fleiß-Heftchen gibt. 
Aber genau so, wie der Eine gern sinnfrei testet macht de Andere eben 
gern sinnfreie Kommentare.

Jeder so, wie er will :) . Dann geh ich mal vorsichtig davon aus, daß 
dann eben noch ab Ablauf gefeilt werden sollte...

Danke erstmal!
Gruß

Autor: Maxwell (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe beruflich mit EEPROMs im Automotive Bereich zu tun. Die 
Anforderungen in dem Bereich sind ziemlich streng was Temperaturbereich 
und Anzahl der Schreibzyklen betrifft. Es gibt da mehrdimensionale 
Diagramme, die die Anzahl der Zyklen angeben abhängig von vielen 
Parameter.
Es gibt da auch die Aussage, dass nicht die Zelle an sich das schwächste 
Glied ist, sondern die Ladungspumpe zur Erzeugung der 
Programmierspannung.

Autor: bko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Hersteller garantiert das der Inhalt des EEPROMs, auch
nach den 100000ten Programmieren zehn Jahre erhalten bleibt.
(Innerhalb des spezifizierten Temperaturbereiches).

Da hab ich was von Infineon dazu gefunden:
http://av.rds.yahoo.com/_ylt=A0geumA6QmRMxQIBEDiTL...

Also muss dein Test eigentlich nach dem x-ten EEPROM Schreiben
nun in zehn Jahren weitergeführt werden. Beim Chiptest (auf dem Wafer !) 
wird diese Zeit durch sog. "baken" des Wafers bei 225 Grad Celsius 
abgekürzt:
http://www.tmworld.com/article/325423-EEPROMs_stor...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.