Flash memory

programming a Flash cell
deletion of a Flash cell

Flash memory is digital memory chips; the exact designation reads Flash EEPROM. Contrary to „usual “EEPROM memory bytes with the bottle EPROM, which smallest addressable memory unit, to delete not individually, leave themselves.

Flash memory applies everywhere, where information persistence (non volatile) on smallest area must be stored.

Examples:

Inhaltsverzeichnis

Funktionsprinzip

Die Bytes oder Worte (typisch durchaus bis 64 Bit) eines Flash-Speichers können einzeln adressiert werden. Dabei können sie in einigen Architekturen auch einzeln geschrieben werden, wogegen bei anderen nur größere Datenmengen auf einmal programmiert werden können. I. d. R. ist die entgegengesetzte Operation, das Löschen, aber nur in größeren Einheiten, sog. Sektoren (meistens ein Viertel, Achtel, Sechzehntel usw. der Gesamtspeicherkapazität) möglich. Dabei ist die logische Polarität nicht immer gleich: es existieren sowohl Implementierungen, die das Programmieren logisch als Übergang logisch '0' nach '1' realisieren, als auch umgekehrt. Gemeinsames Merkmal ist aber immer, dass die beiden Operationen

  • jeweils nur den Übergang in eine Richtung ('0' nach '1' oder '1' nach '0') darstellen und
  • (oft) nur eine von beiden bit-selektiv arbeiten kann: das Programmieren.

Das bedeutet, dass zum Wiederbeschreiben immer erst eine Löschoperation (auf einem Byte bei manchen EEPROM-Architekturen, auf einem Sektor bei Flash) nötig ist und dann das gewünschte Bit-Pattern, also der gewünschte Speicherinhalt durch Programmieroperationen hergestellt wird.

Oft müssen zum Schreiben auf den Flash-Speicher spezielle Kommandos (in Form einer Sequenz von anzulegenden genau spezifizierten Daten-/Adresspaaren) an den Flash-Speicher gegeben werden. Das ist eine Sicherheitsmaßnahme gegen unbeabsichtigtes Beschreiben oder Löschen des Speichers.

Ein Flash-Speicher besteht aus einer bestimmten, von der Speichergröße abhängigen Anzahl einzelner Speicherelemente. Die Speicherung eines Bits innerhalb eines solchen Speicherelements erfolgt über ein Floating Gate, dem eigentlichen Speicherelement des Flash-FETs. Es liegt zwischen dem Steuer-Gate und der Source-Drain-Strecke und ist von dieser wie auch vom Steuer-Gate jeweils mittels einer Oxid-Schicht isoliert. Im ungeladenen Zustand des Floating Gate kann bei am Gate aufgesteuertem Transistor in der Source-Drain-Strecke (sog. Kanal) ein Strom fließen. Werden über das Steuer-Gate durch Anlegen einer hohen positiven (10..18 V) Spannung Elektronen auf das Floating-Gate gebracht, so kann in der Source-Drain-Strecke auch bei aufgesteuertem Transistor kein Strom mehr fließen: das negative Potential der Elektronen auf dem Floating Gate wirkt der Spannung am Steuer-Gate entgegen und hält den Flash-Transistor geschlossen. Der ungeladene Zustand wird wieder erreicht, indem die Elektronen durch Anlegen einer hohen negativen Spannung über die Steuergate-Kanal-Strecke wieder aus dem Floating Gate ausgetrieben werden. Dabei ist es sogar möglich, dass der Flashtransistor in den selbstleitenden Zustand gerät, d. h. er liefert sogar dann Strom, wenn am Steuer-Gate keine Spannung anliegt: statt mit Elektronen ist das Floating Gate nun quasi mit positiven Ladungsträgern (Defektelektronen, 'Löcher') besetzt. Das ist insbesondere in NOR-Architekturen (s. u.) problematisch.

Der Mechanismus, der die Elektronen durch die isolierende Oxidschicht passieren läßt, wird Fowler-Nordheim-Tunneleffekt genannt (nach ihren ersten Erforschern), d. h. bei einem Flashspeicher handelt es sich um die Anwendung eines nur quantenmechanisch deutbaren Effekts. Um die Elektronen leichter zum Tunneln 'hinauf' zum Floating Gate zu veranlassen, wird oft das Verfahren CHE (channel hot electron) verwendet: die Elektronen werden durch Anlegen einer Spannung über dem Kanal, also zwischen Drain und Source, beschleunigt und dadurch auf ein höheres Energieniveau (daher engl. hot) gehoben, wodurch sie schon bei geringeren Spannungen (typ. 10 V) zwischen Gate und Kanal zum Floating Gate tunneln. (In obiger Abbildung zum Programmieren ist dieses Verfahren – allerdings für eine ältere Technologie – angedeutet.)

Ob der geladene oder ungeladene Floating-Gate-Zustand als jeweils '0'- oder '1'-Zustand der Speicherzelle angesehen wird, ist implementierungsabhängig. (Logisch gesehen entspricht das ohnehin nur einem invertierenden oder nicht nicht-invertierenden Verhalten der Ausleseschaltung: Stromfluß durch die Zelle ist entweder '1' oder '0'.)

Architekturen

Am Markt sind derzeit folgende Flash-Architekturen gängig, die sich vor allem in der internen Ansteuerungslogik – und damit z. B. in der maximal realisierbaren Zugriffsgeschwindigkeit – unterscheiden:

NAND-Flash
die Flashtransistoren sind in gewissen Anzahlen hintereinander geschaltet (Serienschaltung). Das entspricht dem n-Kanal-Zweig eines NAND-Gatters in der CMOS-Technologie.
NOR-Flash
die Flashtransistoren sind über eine sog. Bitline parallel geschaltet – diese kann je nach genauer Architektur auf der Source- oder der Drain-Seite liegen. Über diese Bitline werden die Zellen dann auch ausgelesen. Das entspricht einer Verschaltung wie im n-Kanal-Zweig eines NOR-Gatters in CMOS.

Die NAND-Architektur zielt auf Märkte, in denen es auf viel Speicher auf wenig Raum ankommt (wie bei den ersten vier Beispielen oben), weniger jedoch auf geringe Zugriffszeit auf ein beliebiges Datum: die Strombegrenzung durch die Serienschaltung ist hier limitierend. Die NOR-Architektur setzt auf den Ersatz von UV-löschbaren EPROMs (die zwischenzeitlich von Flash-Bausteinen nahezu ersetzt sind und kaum noch weiter entwickelt werden). Ausserdem lassen sich hier erheblich kürzere Zugriffszeiten realisieren: die Parallelschaltung hat den geringeren Widerstand zwischen Stromquelle und Auswerteschaltung.

Flash-Speicher haben eine begrenzte Lebensdauer die in einer maximalen Anzahl an Lösch-Zyklen angegeben wird (zwischen 10-100.000 Zyklen für NOR-Flash und bis zu 1 Million für NAND-Flash). Dies entspricht gleichzeitig der maximalen Anzahl Schreib-Zyklen, da der Speicher jeweils blockweise gelöscht werden muss, bevor er wiederum beschrieben werden kann. Diese Zyklenzahl wird Endurance genannt.

Eine andere wichtige Kenngröße ist die Zeit der fehlerfreien Datenhaltung, die Retention.

Technologien

Das wichtigste Kriterium zur Unterscheidung von Flashtechnologien ist natürlich die Geometrie der Speicherzelle, des Flashtransistors, u. a. werden folgende Zelltypen unterschieden:

  • die Split-Gate-Zelle, s. Abb.
  • die ETOX-Zelle, eine vereinfachte Struktur, bei der der nach unten abknickende Teil des Steuer-Gates der Split-Gate-Zelle entfällt, deren Floating Gate in aller Regel mit CHE geladen wird
  • die UCP-Zelle, die i. d. R. in 'beiden Richtungen' mit Fowler-Nordheim-Tunneling beschrieben wird
  • die NROM-Zelle ohne eigentliches Floating Gate: hier wird die Ladung direkt in eine Zone des Isolators zwischen Kanal und Steuer-Gate 'geschossen', auch in Ausführungen, bei denen zwei Ladungszonen (eine in Source-, die andere in Drain-Nähe) ausgeprägt werden, wodurch diese Zelle zwei Bit auf einmal speichern kann.
  • die 2-Transistorzelle: ein normaler n-Kanal-Transistor und ein Flashtransistor hintereinander. Diese Zelle hat den Nachteil, dass sie größer ist, aber u. U. für Programmieren und Löschen einfacher ansteuerbar ist, was bei kleineren Speichergrößen in anderen Schaltungsteilen Flächeneinsparungen bringen kann.

Speichergrößen

Im November 2005 erreichen NAND-Flash-Speicher ca. 8 GBit (entsprechend 1 Gigabyte), NOR-Flash-Speicher 512 MBit (entsprechend 64 Megabyte). Der Unterschied in der Speicherkapazität rührt vor allem daher, dass bei NAND-Flash-Speicher die Daten- und Adress-Leitungen auf denselben Anschlüssen (Pins) ausgeführt werden, d. h. derselbe Anschluss abwechselnd für Daten- und Adressübermittlung genutzt wird („Multiplex“), während bei den NOR-Flash-Speichern diese getrennt sind. Dadurch können die NOR-Typen wesentlich schneller bei den Datenzugriffen sein, haben aber bedeutend mehr Pins und bedürfen damit prinzipiell größerer Gehäuse. De facto sind jedoch bei hohen Kapazitäten die Gehäuse der NAND-Typen nahezu genauso groß wie jene der NOR-Typen, was aber an dem sehr großen Speicherchip im Innern, nicht am Platzbedarf der Anschlüsse liegt. Nichtsdestoweniger sind die wenigsten Gehäusepins bei NAND-Typen tatsächlich angeschlossen, der Vorteil der simpleren „Verdrahtung“ des Bausteins im Gerät bleibt deshalb erhalten.

Vorteile

  • Datenerhalt bei fehlender Versorgungsspannung (nichtflüchtiger Speicher/nonvolatile Memory)
  • geringer Energieverbrauch im Betrieb
  • günstiger Massenspeicher
  • Auslesen funktioniert bei NOR-Typen genau so wie bei herkömmlichen statischen RAM-Bausteinen
  • resistent gegen Erschütterungen
  • kleine Bauform

Nachteile

  • langsamer als RAM (Random Access Memory), vor allem beim Schreiben
  • es können (oft) nur ganze Sektoren auf einmal gelöscht werden
  • relativ komplexe Ansteuerung beim Schreiben/Löschen (Memory Controller erforderlich, z. T. werden Flash-Speicher sogar mit eigenen intelligenten Interfaces ausgestattet)
  • begrenzte Anzahl von Schreibzyklen, schon beim Annähern an diese Grenze steigende Unzuverlässigkeit
 

  > German to English > de.wikipedia.org (Machine translated into English)