Nand-flash

Nand-flash

NAND-Flash bezeichnet einen Typ von Flash-Speicher, der in der sogenannten „NAND-Technologie“ gefertigt ist. Der Ausdruck „NAND-Technologie“ bezieht sich dabei auf die serielle Anordnung der einzelnen Speicherzellen: Diese bestehen aus speziellen MOS-FETs, die wie bei einem NAND-Gatter verschaltet sind.

Inhaltsverzeichnis

Aufbau

Aufbau und Struktur einer NAND-Zelle. Die einzelnen MOSFETs einer Zelle liegen in unterschiedlichen Pages innerhalb eines Blockes.

Der Platzbedarf für eine Flash-Speicherzelle in NAND-Technik beträgt laut Toshiba nur etwa 2/5 der Fläche, die für eine Speicherzelle in NOR-Technik erforderlich ist.

NAND-Flashes arbeiten grundsätzlich page- und blockorientiert. Eine Page besteht aus einer Zusammenfassung von 512 Bytes bei kleineren Speichergrößen oder 2048 Bytes bei größeren NAND-Flashbausteinen. Mehrere Pages sind zu einem Block gruppiert. Die Größe der Blöcke liegt bei kleineren Speichergrößen üblicherweise bei 16 KB, bei größeren Bausteinen beträgt die Blockgröße 128 KB.

Pages können nur einmal beschrieben werden; weitere Schreibvorgänge sind erst nach einem erneuten Löschen möglich. Aufgrund der Gruppierung ist ein Löschen einer Page jedoch nur über ein Löschen des Blocks möglich, in dem sie liegt. Wie bei Flash-Speichern üblich, können die Bits in den Bytes nur von 1 nach 0 gekippt werden. Der umgekehrte Weg ist nur über einen Löschvorgang zu erreichen.

Bei NAND-Flashes ist es üblich, dass einige Defektblöcke – die so genannten Bad Blocks – bereits zum Zeitpunkt der Auslieferung vorhanden sind. Diese werden bereits vom Hersteller durch spezielle Tests detektiert und als defekt markiert. Später müssen sie von der Treibersoftware berücksichtigt werden. Garantiert ist von den meisten NAND-Flash-Herstellern, dass der erste Block eines Speicherbausteins für eine bestimmte Anzahl von Schreibvorgängen fehlerfrei ist. Dies ermöglicht die Speicherung wichtiger Initialdaten wie eine „Bad-Block-Tabelle“ an fixer Adresse, während alle anderen Daten in ihren jeweiligen Adresspositionen variabel gehalten werden müssen [1].

Bei NAND-Flashspeichern besitzt jede Page fix zugeordnet eine Spare Page. Diese ist bei kleineren Bausteinen üblicherweise 16 Byte lang, bei größeren Bausteinen 64 Bytes. Darin werden unter anderem vom Hersteller Bad-Block-Markierungen abgelegt oder im regulären Betrieb bei fehlerfreien Blöcken Korrekturdaten für eine Vorwärtsfehlerkorrektur (FEC), um mögliche Lesefehler korrigieren zu können. Die Spare Pages sind mit den Nutzdaten-Pages fest gekoppelt: Wird eine Page (d. h. ein Block) gelöscht, werden dabei ebenfalls die zugehörigen Spare Pages gelöscht. In der Praxis bedeutet dies, dass als defekt markierte Blöcke keinesfalls gelöscht (formatiert) werden dürfen, da dadurch die Fehlerinformation über Bad Blocks verloren geht. Aus diesem Umstand heraus können NAND-Flash-Bausteine auch nicht mittels eines Kommandos komplett gelöscht werden, sondern müssen blockweise in Einzelschritten, unter Ausnahme der als defekt markierten Blöcke, gelöscht werden.

Die initialen Bad Blocks werden durch den Hersteller im Rahmen von Extremtests, wie Extremtemperaturen und variable Zugriffsgeschwindigkeiten im Grenzbereich, ermittelt. Unter normalen Einsatzbedingungen wie bei Zimmertemperatur, müssen diese Bad Blocks nicht grundsätzlich fehlerhaft arbeiten.

Bei NAND-Flashes können auch während des Betriebs Bitfehler auftreten, die durch geeignete Fehlerkorrekturverfahren erkannt und behandelt werden müssen. Blöcke mit derartigen Laufzeitfehlern müssen ebenfalls vom NAND-Flashcontroller oder dem Software-Treibersystem zu der Liste der Bad Blocks hinzugefügt werden. Der Teil, der zur Verwaltung der Bad Blocks verantwortlich ist, wird als Bad Block Management System bezeichnet.

Arten

In einer NAND-Flashzelle kann im Rahmen des Floating Gate die Datenspeicherung mit einer unterschiedlichen Anzahl von Spannungsniveaus erfolgen. Mit zwei verschiedenen Spannungsniveaus pro Zelle kann ein Bit pro Zelle gespeichert werden, diese NAND-Zellen werden auch als SLC-Speicherzelle bezeichnet. Werden vier verschiedene Spannungsniveaus verwendet, können damit zwei Bit pro Zelle gespeichert werden, wie dies bei den MLC-Speicherzellen der Fall ist. Mit acht verschiedenen Spannungsniveaus lassen sich drei Bit pro NAND-Zelle speichern.

Der Vorteil der SLC-Speicherzellen ist eine höhere Anzahl von Schreib-/Lesezyklen und grössere Robustheit, da bei dem Auslesevorgang nur zwei Spannungswerte unterschieden werden müssen.

Der Vorteil der MLC-Speicherzellen ist eine effizientere Ausnützung der Chipfläche und höhere Speicherdichte. Nachteilig sind an den MLC-Speicherzellen die längeren Zugriffszeiten und die reduzierte Anzahl von Schreib-/Lesezyklen. Diese Reduktion folgt aus dem Umstand, dass durch den Einsatz von vier oder mehr Spannungsebenen die Unterscheidung zwischen den einzelnen Spannungen schwieriger und mit grösseren Fehlerwahrscheinlichkeiten behaftet ist.

Schnittstelle

Der Zugriff auf NAND-Speicher findet üblicherweise über einen gemultiplexten Adress-/Datenbus mit einer Breite von 8 Bit statt. Das verwendete Protokoll ist kommandobasiert. Aufgrund der verwendeten Bus-Schnittstelle ist ein verhältnismäßig großer Softwareaufwand zur Ansteuerung erforderlich bzw. in Hardware als IP-Core sind entsprechende NAND-Flash-Controller für die Zugriffssteuerung notwendig [2].

Zudem ist insbesondere das Booten eines Systems nur mit zusätzlicher Hardware in Form eines NAND-Flash-Controllers möglich. Ein herkömmlicher Prozessor mit Adress-/Datenbus kann diese Speicher nicht direkt adressieren. Bei NOR-Flashes ist dies kein Problem, die Firmware eines Computers wird daher üblicherweise in NOR-Speichern abgelegt. In NAND-Speichern werden die Daten über ein Dateisystem mit Bad Block Management System abgelegt.

Einsatzbereiche

NAND-Flashes sind überwiegend für große Speichermengen ausgelegt; sie finden Verwendung in USB-Sticks, Flash-Speicherkarten (z. B. CF- und SD-Karten) sowie in praktisch allen auf Halbleiterspeicher basierenden MP3-Playern.

Vorteile

  • Sehr geringer Preis pro Megabyte
  • Hohe Schreib- und Lesegeschwindigkeiten bei großen Datenmengen
  • Niedrigere Leistungsaufnahme während der Programmierung
  • NAND-Flashes sind mit hohen Speicherkapazitäten erhältlich
  • Die geringe Anzahl von erforderlichen Signalleitungen ermöglicht eine (hardwareseitig) kostengünstige Ankoppelung an Controllersysteme
  • Die kommandobasierte Bus-Schnittstelle ermöglicht, Chips mit größerer Speicherkapazität einzusetzen, ohne das Schaltungsdesign zu ändern

Nachteile

  • Verglichen mit NOR-Speichern ist ein nicht unerheblicher Softwareaufwand erforderlich, um NAND-Speicher korrekt anzusteuern
  • Aufgrund der verwendeten Zugriffsart können NAND-Speicher nicht direkt als Programmspeicher für Microcontroller eingesetzt werden (diese benötigen einen linear adressierbaren Speicher mit wahlfreiem Zugriff)
  • Zur Anbindung an herkömmliche Controllersysteme ist eine Glue Logic erforderlich.
  • 100.000 bis 1.000.000 Schreib-Lösch-Zyklen, danach ist der Speicher nicht mehr nutzbar.

Einzelnachweise

  1. STMicroelectronics: Bad block management in Single Level Cell NAND Flash memories, Application Note AN1819. 2007 (http://www.st.com/stonline/products/literature/an/10119.pdf ; Firmenschrift, Englisch). 
  2. Micron: NAND Flash Controller via Xilinx Spartan-3 FPGA, Application Note TN-29-06. 2005 (http://download.micron.com/pdf/technotes/nand/tn2906.pdf ; Firmenschrift, Englisch). 

Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • NAND-Flash — bezeichnet einen Typ von Flash Speicher, der in der sogenannten NAND Technik gefertigt ist. Der Ausdruck „NAND Technik“ bezieht sich dabei auf die serielle Anordnung der einzelnen Speicherzellen: Diese bestehen aus speziellen MOS FETs, die wie… …   Deutsch Wikipedia

  • Open NAND Flash Interface Working Group — The Open NAND Flash Interface Working Group (ONFI or ONFi[1] with a lower case i ), is a consortium of technology companies working to develop open standards for NAND flash memory chips and devices that communicate with them.[2] The formation of… …   Wikipedia

  • Open NAND Flash Interface Working Group — (сокращённо ONFI или ONFi)  консорциум технологических компаний, занимающийся разработкой открытых стандартов на микросхемы NAND флеш. Создание ONFI было анонсировано на Intel Developer Forum в марте 2006 года. Важно отметить, что консорциум …   Википедия

  • Nand — may stand for: Nand (raga), an Indian classical raga. Logical NAND ( Not AND ), a binary operation in logic. NAND gate, an electronic gate that implements a logical NAND. NAND, Solid State Drive use to retain data integrity when a system loses… …   Wikipedia

  • Flash memory — Computer memory types Volatile RAM DRAM (e.g., DDR SDRAM) SRAM In development T RAM Z RAM TTRAM Historical Delay line memory Selectron tube Williams tube Non volatile …   Wikipedia

  • NAND-ROM — geöffneter USB Stick – der linke Chip ist der eigentliche Flashspeicher, der rechte ein Mikrocontroller …   Deutsch Wikipedia

  • Flash-EEPROM — geöffneter USB Stick – der linke Chip ist der eigentliche Flashspeicher, der rechte ein Mikrocontroller …   Deutsch Wikipedia

  • Flash-EPROM — geöffneter USB Stick – der linke Chip ist der eigentliche Flashspeicher, der rechte ein Mikrocontroller …   Deutsch Wikipedia

  • Flash-Memory — geöffneter USB Stick – der linke Chip ist der eigentliche Flashspeicher, der rechte ein Mikrocontroller …   Deutsch Wikipedia

  • Flash-ROM — geöffneter USB Stick – der linke Chip ist der eigentliche Flashspeicher, der rechte ein Mikrocontroller …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”