EEPROM

#256652
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
Angehängte Dateien:
Gast #256654
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?
#256656
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
Gast #256657
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
Gast #256658
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.
Gast #256659
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.
Gast #256660
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.
#256661
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

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.