Forum: Mikrocontroller und Digitale Elektronik EEPROM


von Poseidonius (Gast)


Lesenswert?

Hi,

kann mir jemand (nur so ungefaehr) erklaeren, warum ein EEPROM nur eine
bestimmte Zahl von Schreibzyklen hat?

Vielen Dank

von Μαtthias W. (matthias) Benutzerseite


Lesenswert?

Hi

weil beim durchtunneln der Elektronen in das floating gate die
Isolationsschicht zu eben diesem ein bischen beschädigt wird.
Irgendwann ist diese Schicht soweit geschädigt das das floating gate
seine Ladung nicht mehr halten kann.

Matthias

von Michael H. (hoerti)


Angehängte Dateien:

Lesenswert?

Hallo,

Die begrenzte Anzahl von Schreibzyklen beruhen auf dem Funktionsprinzip
des EEPROMS.

Eine EEPROM-Zelle ist ungefähr so aufgebaut wie ein
Feldeffekttransistor. Der unterschied zwischen den beiden leigt an
einem zusätzlichen Floating-Gates, welches die EPROM-Zelle besitzt.
(siehe jpg)
Soll die Zelle beschrieben werden, so wird dass Floatinggate mit
Elektronen negativ aufgeladen (-> dadurch verschiebt sich die
Threshholdspannung der Zelle und es kann ausgewertet werden, ob die
Zelle 0 oder 1 speichert). Da bei diesem Schreibzyklus die Elektronen
durch das Oxid gelangen müssen ("tunneln"), wird das Oxid mit
zunehmender Anzahl der Schreibzyklen zerstört -> Dadurch ist die
Schreibzyklusanzahl begrenzt. (Die Anzahl der Schreibzyklen gilt
übrigends für jede einzelne EEPROM-Zelle)

lg
Michi

von Profi (Gast)


Lesenswert?

Was ist schlimmer: Schreiben oder Löschen?

Was ist, wenn ich immer wieder den selben Wert abspeichere, ohne
dazwischen zu löschen, ist das auch schädlich?

von TravelRec. (Gast)


Lesenswert?

Ist beides gleich schlimm. Wenn Du die Zelle löschst und neu
beschreibst, hast Du gleich 2x Schaden gemacht. Allerdings wirst Du
keinen vernünftigen Wert in die Zelle schreiben können, ohne die vorher
zu löschen - logisch, oder?! Immer wieder den gleichen Wert zu
schreiben, ohne zu löschen, ist auch schädlich. Aber was macht das
für´n Sinn?

von Thomas O. (Gast)


Lesenswert?

ja eben wenn du eine 1 schreiben willst solltest du erstmal auslesen ob
da schon ne 1 drinsteht, wenn ja brauchste garnichts reinschreiben und
sparst so einen Schreibzyklus.

von Peter D. (peda)


Lesenswert?

EEPROMs machen beim Schreiben ein Auto-Erase.
Ein extra Löschen halbiert also die Anzahl der Schreibzyklen.

EEPROMs mit Pagewrite schreiben immer eine komplette Page, wenn auch
nur ein Byte programmiert wurde. Wenn man immer ein Byte schreibt, bis
es kaputt ist, dann sind auch alle anderen Bytes in der Page kaputt.

Sind aufeinander folgende Byte zu schreiben, dann ist der Pagemodus
schonender und deshalb vorzuziehen. Zudem ist er ja auch schneller.

Will man wirklich oft schreiben, nimm einfach FRAMs (24F256).
Allerdings ist dort das Lesen zerstörend, d.h. ein Lesen wird immer mit
einem automatischen Wiederbeschreiben gekoppelt.
Die Hersteller halten sich aber leider zurück, wie es dabei mit der
Datensicherheit aussieht, d.h. wenn der Strom gerade in dem Augenblick
des Wiederbeschreibens ausfällt.


Peter

von Poseidonius (Gast)


Lesenswert?

Hallo,

welche Möglichkeiten zur "Lebensverlängerung" für EEPROMS oder
Flash-Speicher gibt es denn? Im Netz habe ich was von Ringpuffern
gehört aber nicht so recht nachvollziehen könnnen.

Schönen Sonntag

von Thomas O. (Gast)


Lesenswert?

Wenn man z.b. nur 10% eines EEPROMS nutzt könnte man das Programm so
schreiben das diese 10% bei jedem Neustart 10% nach untengeschoben
werden. Man könnte auch NVRAMS nutzen das sind kombinierte SRAM inkl.
EEPROM das EEPROM wird abernur beschrieben wenn der Saft ausgedreht
wird. Oder man kombiniert sowas selbst.

von crazy horse (Gast)


Lesenswert?

@Peter: hast du schon mal schlechte Erfahrungen mit FRAMS gemacht? Ich
habe die in mehreren Applikationen drin und noch nie Probleme gehabt.
Meistens werden darin Zählerstände von von Durchflussgebern
gespeichert, dass sind dann mindestens long-Zahlen. Da ich genug Platz
im FRAM habe, werden die dreifach gespeichert. Aber auch nach richtiger
(absichtlicher) Quälerei habe ich noch nie einen Datenverlust
feststellen können.

von A.K. (Gast)


Lesenswert?

Nicht immer an die gleiche Stelle schreiben. Reihum durch, mit Timestamp
oder Zähler dabei, damit man später die aktuelle Stelle auch
wiederfindet. Das ist der erwähnte Ringpuffer. Prima geeignet um Daten
und Aktivitäten zu protokollieren.

Irgendwann wird natürlich Batterie/Goldcap-gepuffertes RAM sinnvoll,
wenn's für EEPROM zu krass wird.

von Peter D. (peda)


Lesenswert?

@crazy horse,

nein, FRAMs habe ich noch nicht benutzt.
Mich wundert bloß, warum die Hersteller nichts dazu aussagen.

Bisher nutze ich EEPROMs nur zum Abspeichern von Settings und da bricht
sich der Nutzer wohl eher die Finger, als das die Schreibzyklen
überschritten werden. Die Geräte sind auch etwas älter, da gabs noch
keine FRAMs.


Peter

von crazy horse (Gast)


Lesenswert?

na, bin ich ja beruhigt. Habe auch noch keinerlei Beschwerden von Kunden
bekommen (Zählerstand==Geld), scheint also durchaus ausgereift.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.