Embedded Systeme Managed-NAND spart Zeit, Platz und Kosten Die clevere Alternative zu NOR-Flash Die NAND-Technologie bietet im Vergleich zur NOR-Technologie hohe Speicherdichten zu günstigen Preisen. Aus diesen Gründen hat sie vor allem in Applikationen wie MP3-Playern, Mobiltelefonen und Speicherkarten Einzug gehalten. In industriellen Applikationen erschweren oder verhindern allerdings die immer kleineren Prozessgeometrien sowie die damit zusammenhängenden Faktoren den Einsatz von NAND-Speichern. Abhilfe schafft das Managed-NAND (e-MMC), denn hier adaptiert der integrierte Controller die technologischen Veränderungen. NAND-Speicher sind in Pages (Seiten) und Blöcke aufgeteilt. Die Größen der Pages variieren dabei von 512 Byte bis zu 4 KByte bei größeren Flash-Bausteinen. Mehrere Pages sind zu einem Block gruppiert. Bei kleinen Speichern ist die Blockgröße 16 KByte und bei höheren Dichten 512 KByte. Eine Page ist die kleinste programmierbare Einheit, das Löschen erfolgt nur blockweise. Die Programmier- und Löschzyklen sind bei der SLC-Technologie (Single Level Cell) mit 100 000 Zyklen und bei der MLC-Technologie (Multi Level Cell) mit bis zu 10 000 Zyklen spezifiziert. Nach diesen Zyklen lassen sich die Zellen weiterhin programmieren, allerdings erhöht sich dabei die RBER (Raw Bit Error Rate) geringfügig. Jeder Page ist ein weiterer Bereich zugeordnet: die sogenannte Spare-Page. Hier werden vom Hersteller die Bad-BlockMarkierungen für die Defektblöcke abgelegt. Diese Defektblöcke sind bereits zum Zeitpunkt der Auslieferung vorhanden und müssen später von der Treibersoftware berücksichtigt werden. Für die Zugriffssteuerung sind entsprechende NAND-Controller notwendig. Der Datenbus hat üblicherweise eine Breite von 8 bit oder 16 bit. Fehlertypen bei NAND Schwachpunkt der NAND- im Vergleich zur NOR-Technologie ist ihre geringere Zuverlässigkeit, die durch verschiedene ˘ AUTOR Andreas Krizan ist Product Sales Manager Commodities bei Rutronik 24 Bild 1: ManagedNAND-Bausteine sind in BGA-Bausteinen erhältlich Bilder/Grafiken: Rutronik Ausfalleffekte bedingt ist. Hier lassen sich zwei Fehlerarten unterscheiden: Der erste Fehlertyp ist der Block-Status-Fehler, bei dem ein Schreib- oder Löschvorgang für einen bestimmten Block nicht erfolgreich abgeschlossen werden kann. Die zweite Fehlervariante, die in den Bit-Error-Rates sichtbar wird, tritt auf, wenn Bitfehler über den entsprechenden Grad der Fehlerkorrektur (ECC, Error Code Correction) wiederhergestellt werden. Diese Korrektur führt jedoch nicht zu einem Datenverlust oder einem Statusfehler. Beide Ausfalleffekte werden nach unterschiedlichen Fehlerraten bemessen. Hier unterscheidet man die Raw Bit Error Rate (RBER, Fehlerrate der „Roh-Bit“) genannten Fehler vor einer Fehlerkorrektur und die Fehlerrate nach der Korrektur, die als Uncorrectable Bit Error Rate (UBER) bezeichnet wird. Die UBER kann mit Hilfe der gemessenen RBER und einem spezifischen Level der Fehlerkorrektur errechnet werden. Je höher der Grad der Fehlerkorrektur desto geringer ist die Anzahl der UBER. Hierdurch lassen sich UBER-Fehlerraten von 10 -19 bis 10 -15 erreichen, so dass NAND-Speicher ebenso zuverlässig werden wie NOR-Speicher. Fehlermechanismen bei NAND Die Gründe für die höhere Fehleranfälligkeit der NAND-Technologie sind vielfältig. Alle im folgenden aufgelisteten Fehlermechanismen können zu Störungen und damit zu Bit- oder Blockfehlern führen: Program Disturb: Zur Programmierung einer Page wird eine Spannung von 20 V angelegt, so dass die Elektronen in das FloatingGate fließen. Hierbei kann es vorkommen, dass sich bei benachbarten Zellen (Stressed-Cells) am Floating-Gate ebenfalls Ladung ansammelt. Die Zelle erscheint dadurch als unzureichend programmiert. Nur teilweise programmierte Pages beschleunigen die Möglichkeit einer Störung. Die Stressed-Cells werden dabei nicht beschädigt. Ein Löschvorgang versetzt die Zelle wieder in einen störungsfreien Zustand. Deshalb lassen sich mit Hilfe von ECC (Fehlerkorrektur) solche Bitfehler effektiv korrigieren. Read Disturb: Das Auslesen einer NANDZelle erfolgt über das Messen der Ladung im Floating-Gate. Bei jedem Lesevorgang geht ein sehr geringer Teil der Ladung verloren und erscheint ab einem bestimmten Wert als unzureichend programmiert. Die Daten müssen dann über ECC korrigiert und neu abgespeichert werden. Als Faustregel für die maximale Anzahl der Lesevorgänge bis zum nächsten Löschvorgang innerhalb eines Blocks gilt 1 Millionen Zyklen bei SLC und 100 000 Zyklen bei MLC. Nach dem Löschvorgang wird der elektronik industrie 1/2 - 2009 Embedded Systeme Read-Disturb-Zähler auf Null zurückgesetzt. Wird die maximale Anzahl an Lesezyklen überschritten, sollte der Inhalt in einen anderen Block übertragen und der bisherige als ungültig markiert werden. Data Retention: Im Zeitverlauf entsteht ein Ladungsverlust am Floating-Gate, durch den der Schwellwert der Spannung bis zum Ruhezustand absinkt. Die Zellen sind unbeschädigt und können sicher gelöscht und wiederbeschrieben werden. Die Programmier-, Lösch- und Lesevorgänge beeinflussen die Dauer des Datenerhalts. Bei Bild 2: NAND und e-MMC im Vergleich Blöcken, die einen langen Datenerhalt benötigen, empfiehlt es sich, die sein. Auch das Wear-Leveling genannte Programmier- und Löschzyklen sowie die gleichmäßige Beschreiben aller gültigen Lesevorgänge zu begrenzen So lassen sich Blocks sorgt für eine längere Lebensdaudie Read-Disturb genannten Störungen er der Zellen. beim Lesen vermeiden. Managed-NAND punktet dreifach Endurance: Schreib- und Löschzyklen führen zu einer Abnutzung des Tunneloxids. Dadurch können Teile der Ladung im Dielektrikum eingefangen werden, was wiederum einen Fehler beim Schreib- oder Löschvorgang verursacht. Um die Lebensdauer der Zellen zu verlängern, gilt es, immer den Status zu prüfen, ob die Schreib- oder Löschoperationen fehlerfrei stattfinden. Schlägt ein Schreibvorgang fehl, dann sollten die Daten aus dem Block in einen anderen übertragen werden, der Block als Bad-Block (schlechter Block) markiert und nicht weiter verwendet werden. Die Fehlerkorrektur behebt auftretende Fehler. Außerdem sollten die Metadaten des Block-Managements in einem zusätzlichen Bereich mit ECC gesichert Block-Management und Fehlerkorrektur hängen sowohl vom Hersteller als auch von der Technologie ab. Änderungen in der Block- oder Page-Größe sowie das Hinzufügen von neuen Funktionen bedeuten für den Anwender einen enormen Aufwand. Bei einem Technologiewechsel auf kleinere Strukturen ändert sich die RBER (Raw Bit Error Rate), so dass die ECC-Schemata und die Wear-Leveling-Algorithmen neu berechnet werden müssen. Der FTL (Flash Translation Layer) muss auf die neuen Page- und Blockgrößen angepasst werden. Ein solcher Technologiewechsel findet bei den Herstellern üblicherweise in Zyklen von 9 bis 15 Monaten statt. Das Managed-NAND (e-MMC, embedded-Multi-Media-Card) von Micron Technology erleichtert diese Anpassungen erheblich: Mit seinem integrierten MMC-Controller übernimmt es die Funktionen des Bad-Block-Managements, von ECC und Wear-Leveling. Durch das MMC-Interface wird Managed-NAND zu einem standardisierten NANDSpeicher: ähnlich wie eine Speicherkarte, jedoch als diskretes Bauteil. Unsichtbar für den Host Da die technologischen Veränderungen erst hinter dem MMC-Controller stattfinden, sind sie für den Host nicht mehr sichtbar. Dies eröffnet eine ganze Reihe von Vorteilen: Eine erleichterte und verkürzte Entwicklungsphase und einen deutlichen Preisvorteil im Vergleich zu NOR- oder SLC-NAND-Flash durch die ­Verwendung der MLC-Technologie. Die Pluspunkte der Technologie zeigen sich besonders stark in Applikationen wie ­Navigationssystemen, Set-Top-Boxen, Freisprecheinrichtungen und MultimediaAnwendungen. Auch für Embedded-Computing-Anwendungen oder als Ersatz für Speicherkarten ist Managed-NAND dank der hohen Speichergrößen interessant. Wenn das Medium nicht ausgetauscht werden muss, bietet es hier nicht nur Platz-, sondern auch Kostenreduzierung, da ein Kartenslot entfällt. Managed-NAND ist in den Grössen 2 GByte bis 32 GByte als BGA-Baustein erhältlich und bietet je nach Konfiguration Datenraten maximal 52 MByte/s. (av) ˘ infoDIRECT 314ei0109 ˘ Link zu Rutronik www.elektronik-industrie.de