- EEPROM
-
EEPROM (Electrically Erasable Programmable Read-Only Memory, wörtlich: elektrisch löschbarer, programmierbarer Nur-Lese-Speicher, auch E2PROM genannt) ist ein nichtflüchtiger, elektronischer Speicherbaustein, der unter anderem in der Computertechnik und dort hauptsächlich in eingebetteten Systemen eingesetzt wird. Ursprünglich wurde dieser Bausteintyp mittels eines Programmiergerätes mit beliebigen Daten gefüllt, inzwischen kann das auch von der angeschlossenen CPU im System bewerkstelligt werden.
Funktionsweise
Ein EEPROM besteht aus einer Feldeffekt-Transistorenmatrix mit isoliertem Floating Gate, in der jeder Transistor ein Bit repräsentiert. Beim Programmiervorgang wird auf das Floating Gate eine Ladung gespeichert (der Transistor sperrt). Beim Löschen wird diese Ladung wieder entfernt. Das geschieht wie das Programmieren mit einem hohen Spannungspuls am Control Gate, wobei ein Tunnelstrom von diesem durch das isolierende Dielektrikum auf das Floating Gate fließt.Schematische Darstellung Dieser Löschvorgang kann entweder durch ein Programmiergerät oder auch direkt im System erfolgen. Bei EPROMs ist hingegen zum Löschen eine UV-Lampe nötig. Um den gesamten Inhalt eines EEPROMs zu löschen werden deshalb nur einige Sekunden benötigt - verglichen mit 10 bis 30 Minuten beim EPROM.
Nach dem „Brennvorgang“ des EEPROMs werden die geschriebenen Daten durch ein Bitmuster geladener/ungeladener Transistoren repräsentiert. Diese Daten lassen sich nun beliebig oft auslesen. Die Lesespannung liegt dabei unterhalb der Programmierspannung. Die Anzahl der möglichen Schreibvorgänge ist allerdings begrenzt. Die Hersteller garantieren typischerweise mindestens 1.000.000 Schreibzyklen (Stand 2006). Früher war zum Programmieren das Anlegen einer höheren Spannung erforderlich, diese wird inzwischen bausteinintern erzeugt.
Anwendungsgebiete
EEPROMs können byteweise beschrieben und gelöscht werden. Im Vergleich zu Flash-EEPROMs, die zwischen 1 μs und 1 ms für einen Schreibzyklus benötigen, sind herkömmliche EEPROMs mit 1 ms bis 10 ms erheblich langsamer. EEPROMs verwendet man deshalb bevorzugt, wenn einzelne Datenbytes in größeren Zeitabständen verändert und netzausfallsicher gespeichert werden müssen, wie zum Beispiel bei Konfigurationsdaten oder Betriebsstundenzähler.
Die Nachfolge des EPROM anzutreten, ist dem EEPROM im Gegensatz zum Flash-Speicher aufgrund der deutlich höheren Herstellungskosten nie gelungen. Stattdessen haben EEPROMs eine Nische gefunden in Anwendungen, in denen kleinere Datenmengen gespeichert werden müssen, die sich häufiger verändern. So besaßen denn auch die Mehrzahl der bis zum Jahr 2005 erschienenen Mikrocontroller einen kleinen EEPROM-Speicher für veränderliche, nichtflüchtige Daten. Bis gegen Ende des Jahres 2007 hat sich diese Entwicklung umgekehrt und die Mehrzahl aller neu erschienenen Controller hat kein EEPROM mehr. Begünstigt durch die fallenden Preise konnte der in den Mikrocontrollern ebenfalls enthaltene Flashspeicher erheblich vergrößert werden. Ursprünglich nur für Programm- und statische Daten zuständig, kann dieser auch nun für die veränderlichen Daten verfügbar gemacht werden. Dazu wird ein Teilbereich des inzwischen vergrößerten Flashspeichers reserviert und mit neuen Algorithmen[1] beschrieben und gelesen. Dabei muss eine Page vor der Löschung, ebenso wie der gesamte reservierte Bereich, erst komplett ausgenutzt sein, bevor neu beschrieben wird. Dieses Verfahren macht in vielen Fällen das EEPROM in Microcontrollern überflüssig.
Allerdings lässt sich ein EEPROM nicht in allen Anwendungen durch Flash ersetzen. Momentan ist es noch nicht möglich, Flash über einen so weiten Temperaturbereich wie EEPROM zuverlässig zu beschreiben, allerdings macht hier die Prozesstechnik Fortschritte und Temperaturkompensation beim Schreiben verbessert das Verhalten. Zudem kann es in bestimmten Anwendungen problematisch sein, eine nicht deterministische Schreibzeit zu haben, die sich bei EEPROM-Emulation mittels Flash ergeben kann, wenn eine Page gelöscht werden muss.
Quellen
Wikimedia Foundation.