Flash-Speicher
Englisch: flash memory
Ein wiederbeschreibbarer Speicherbaustein, der seine Daten ohne Stromversorgung behält.
Flash-Speicher: stromlose Datenspeicherung in einem Chip
Flash-Speicher ist eine Halbleiterspeichertechnologie, die Daten in Floating-Gate-Transistoren speichert, ohne ständige elektrische Stromversorgung zu benötigen. Ein einzelner Chip enthält Millionen oder Milliarden dieser Transistoren, die in einem Gitter angeordnet sind. Jeder Transistor kann ein oder mehrere Bits speichern, indem er Elektronen auf einem isolierten Gate einlagert. Wenn die Stromversorgung unterbrochen wird, bleibt die gespeicherte Ladung erhalten. Das macht Flash-Speicher nichtflüchtig und ideal für tragbare Geräte, eingebettete Systeme und Rechenzentren, die einen Stromausfall überstehen müssen.
Der Begriff "Flash" bezieht sich auf den Löschvorgang, der ganze Datenblöcke gleichzeitig löscht, statt Zelle für Zelle. Diese Löschung auf Blockebene unterscheidet Flash von älteren Technologien wie EEPROM, bei denen einzelne Bytes unabhängig voneinander neu geschrieben werden konnten. In der Praxis gibt es zwei Haupttypen von Flash-Speicher: NOR-Flash ermöglicht wahlfreien Zugriff und wahlfreies Umschreiben, NAND-Flash löscht und schreibt in Blöcken, bietet aber höhere Dichte und niedrigere Kosten. Die meisten Consumer-Speichergeräte, SSDs, USB-Sticks und Speicherkarten verwenden NAND-Flash, während NOR-Flash typischerweise in der Firmware-Speicherung von Mikrocontrollern und Netzwerkgeräten zu finden ist.
Lese- und Schreibgeschwindigkeit unterscheiden sich erheblich je nach Architektur. NAND-Flash erreicht in modernen SSDs typischerweise Lesegeschwindigkeiten von 200 bis 600 Megabyte pro Sekunde, während die Schreibgeschwindigkeit stark vom Controller abhängt und davon, ob Daten in die schnelle Single-Level-Cell-Schicht (SLC) oder in die dichteren Multi-Level-Cell- (MLC) oder Triple-Level-Cell-Bereiche (TLC) geschrieben werden. NOR-Flash ist langsamer, ermöglicht aber Byte-weise Lesezugriffe und eignet sich daher zum direkten Ausführen von Code aus dem Chip. Alle Flash-Speicher verschleißen allmählich. Jeder Löschzyklus beschädigt die Oxidschicht leicht und begrenzt das Gerät auf eine endliche Anzahl von Programmier-Lösch-Zyklen, typischerweise 10.000 bis 100.000 für SLC und 1.000 bis 10.000 für MLC, je nach Zellentyp und Spannungsbelastung.
Wear Leveling und Fehlerkorrektur sind kritische Strategien in Flash-Controllern. Wear Leveling verteilt Schreibvorgänge über den Chip, um zu verhindern, dass häufig genutzte Bereiche ihren Zyklus-Haushalt vorzeitig aufbrauchen. Fehlerkorrekturcodes (ECC) erkennen und beheben Bitfehler, die durch Ladungsverlust oder Lesestörungen verursacht werden. Beim wiederholten Zugriff auf eine Zelle können benachbarte Zellen beschädigt werden. Ohne diese Mechanismen würden Flash-Geräte unerwartet ausfallen und die Datenintegrität lange verlieren, bevor der mechanische Verschleiß offensichtlich wird.
Flash-Speicher dominiert industrielle Anwendungen, bei denen Robustheit und Energieeffizienz wichtig sind. Er treibt Temperaturschreiber, Fahrzeug-Infotainment-Systeme, Industrieregler und Feldgeräte an, die in rauen Umgebungen arbeiten. Das Fehlen von beweglichen Teilen eliminiert Ausfallmodi durch mechanische Verschleißerscheinungen, und der geringe Stromverbrauch während des Betriebs und null Leistung im Leerlauf eignen sich für ferngesteuerte und batteriebetriebene Geräte. Thermische Belastung, Spannungsschwankungen und elektromagnetische Störungen können jedoch Verschleiß beschleunigen. Industrielle Flash-Implementierungen enthalten daher oft erweiterte ECC, breitere Stromversorgungsspannungstoleranzen und temperaturgeregelte Komponenten, die für erweiterte Temperaturbereiche wie minus 40 bis 85 Grad Celsius ausgelegt sind.