Flash-Speicher
Flash-Speicher sind digitale Speicher(-Chips).
Die Bytes können dabei einzeln adressiert und gelesen werden. Bytes können einzeln geschrieben werden. Das Löschen einzelner Bytes ist jedoch nicht möglich. Will man Speicherwerte löschen, muss ein ganzer Sektor (meistens ein Viertel, Achtel, Sechzehntel usw. der Gesamtspeicherkapazität) gelöscht werden. Zum Schreiben auf den Flash-Speicher, Löschen einzelner Sektoren bzw. Löschen des gesamten Speichers müssen spezielle Kommandos (z.B. eine so genannte Unlock-Sequenz) an den Flash-Speicher geschrieben werden. Das verhindert das unbeabsichtigte, "zufällige" Beschreiben oder Löschen des Speichers. Im Gegensatz dazu kann bei EEPROMs jedes Byte auch einzeln gelöscht werden.
Flash-Speicher haben eine begrenzte Lebensdauer die in einer maximalen Anzahl an Lösch-Zyklen angegeben wird (ca. 100.000 Zyklen).
Vorteile von Flash-Speichern sind:
- Datenerhalt bei fehlender Versorgungsspannung (nichtflüchtiger Speicher / nonvolatile Memory)
- geringer Energieverbrauch im Betrieb
- günstiger Massenspeicher
- Auslesen funktioniert genau so wie bei herkömmlichen statischen RAM-Bausteinen
Den Vorteilen stehen folgende Nachteile gegenüber:
- langsamer als RAM (Random Access Memory) vor allem beim Schreiben
- es können nur immer ganze Sektoren auf einmal gelöscht werden werden
- relativ komplexe Ansteuerung beim Schreiben/Löschen (Memory Controller erforderlich)
- nähert man sich der garantierten Anzahl von Löschzyklen werden die Flash-Speicherchips zunehmend unzuverlässig
Ein Beispiel für einen Flash-Speicher ist die DiskOnChip. Auch auf Speicherkarten für Digitalkameras befinden sich meistens Flash-Speicherchips.
Ein Flash-Speicher besteht aus Millionen einzelner Speicherelemente. Die Speicherung eines Bits innerhalb eines solchen Speicherelements erfolgt über das Floating-Gate (Speicherelement) des Flash-FETs. Es isoliert das Gate von der Source-Drain-Strecke. Wenn das Floating Gate geladen ist, ist der Stromfluss zwischen Drain und Source abgeschnürt (0-Zustand). Beim Programmieren springen Elektronen vom Gate über (Blitz = Flash), es fließt Strom (1-Zustand).