-
HINTERGRUND DER ERFINDUNG
-
Die vorliegend beschriebenen erfinderischen Konzepte betreffen nichtflüchtige Speichervorrichtungen und ein Verfahren zum Betreiben derselben, und insbesondere nichtflüchtige Flash-Speichervorrichtungen einschließlich einer Fehlerkorrektur-Kodierungs-Funktionalität (ECC-Funktionalität) und ein Verfahren zum Betreiben von Flash-Speichervorrichtungen einschließlich einer ECC-Funktionalität.
-
1 stellt schematisch ein Beispiel eines Speicherblocks BLK1 einer NAND-Flash-Speicherzellenanordnung dar, in welcher eine Mehrzahl von nichtflüchtigen Speicherzellen mit entsprechende Schnittstellen von Wortleitungen WL <0:31> und Bitleitungen BL <1:m> verbunden sind. Die Speicherzellen sind in Serie mit einer der Bitleitungen BL verbunden, um eine Speicherzellenkette zu definieren, wobei jede Kette gemeinsam mit einer gemeinsamen Source-Leitung CSL verbunden ist. Ferner enthält jede Kette an entgegengesetzten Enden einen Masse-Auswahlleitungs(GSL)-Transistor und einen Ketten-Auswahlleitungs(SSL)-Transistor. Die Daten, die in den Speicherzellen jeder Wortleitung WL gespeichert sind bilden eine Seite 1111 mit Daten. Wie hier später diskutiert, speichert bei Multi-Level-Cell(MLC)-Speichervorrichtungen jede Wortleitung WL mehrere Datenseiten.
-
2 ist ein Blockdiagramm, das schematisch ein Beispiel einer nichtflüchtigen Speichervorrichtung darstellt. Wie dargestellt enthält der nichtflüchtige Speicher 1100 eine nichtflüchtige Speicherzellenanordnung 1110, einen Adressdekoder 1130, eine Daten-Eingabe/Ausgabe(I/O)-Schaltung 1120, sowie eine Steuerlogik- und Hochspannungsgeneratoreinheit 1140. Der Adressdekoder 1130 spricht auf die Steuerlogik- und Hochspannungsgeneratoreinheit 1130 an, um eine Lese-/Schreibeadresse ADDR zu dekodieren und Programmier-/Lesespannungen etc. an ausgewählte, adressierte Wortleitungen WL der nichtflüchtigen Speicherzellenanordnung 1110 anzulegen. Die Daten-I/O-Schaltung 1120 spricht auch auf die Steuerlogik- und Hochspannungsgeneratoreinheit 1130 an, und enthält zum Beispiel eine Bitleitungs(BL)-Auswahlschaltung, Schreibtreiber, und eine Leseschaltung, die mit der Eingabe und der Ausgabe der Daten (DATA) in Verbindung stehen. Die Steuerlogik- und Hochspannungsgeneratoreinheit steuert einen Gesamtbetrieb des nichtflüchtigen Speichers 1100, und erzeugt die relativ hohen Spannungen, die zum Programmieren der Speicherzellen der Speicherzellenanordnung 1110 erforderlich sind. Die Speicherzellenanordnung 1110 enthält eine Mehrzahl von Speicherblöcken BLK <1:n>, wie zum Beispiel den Speicherblock BLK1, der in 1 dargestellt ist.
-
Multi-Level-Cell(MLC)-Speichervorrichtungen sind durch Programmieren von zwei (2) oder mehr Bits von gespeicherten Daten in jeder einzelnen Speicherzelle gekennzeichnet. Im Falle einer N-Bit-MLC-Flash-Speichervorrichtung (wobei N eine positive Ganzzahl ist), wird dies durch Einstellen der Schwellwertspannung (zum Beispiel durch das Fowler-Nordheim-Tunneln) von jeder Speicherzelle auf eine von 2N Schwellwertverteilungen erreicht.
-
3 stellt Schwellwertspannungsverteilungen bei dem Beispiel einer 2-Bit-MLC-Flash-Speichervorrichtung dar. Wie dargestellt ist jede Schwellwertspannung von jeder Speicherzelle auf einen von vier Schwellwertspannungsverteilungszuständen eingestellt, nämlich einen gelöschten Zustand E oder einen von programmierten Zuständen P1, P2 und P3. Wie ebenso dargestellt sind den Schwellwertspannungsverteilungszuständen E, P1, P2 und P3 gespeicherte Datenbits von „11“, „10“, „00“, bzw. „01“ zugeordnet.
-
Grundsätzlich weist jedes Bit der MLC-Speicherzellen eine separate Seitenadresse auf. Zum Beispiel bilden in einer 2-Bit-MLC-Speicherzelle die gespeicherten niedrigstwertigen Bits (LSB) der Zellen einer Wortleitung eine erste Datenseite, und die gespeicherten höchstwertigen Bits (MSB) der Zellen der Wortleitung bilden eine zweite Datenseite. Somit speichern die N-Bit-MLC-Speicherzellen (wobei N gleich 2 oder mehr ist), welche mit einer bestimmten Wortleitung verbunden sind, N Datenseiten.
-
MLC-Speichervorrichtungen sind als Antwort auf die Nachfrage nach einer höheren Integration entwickelt worden. Wie jedoch aus 2 ist ersichtlich ist, sind die Lücken zwischen Schwellwertspannungsverteilungen der MLC-Speicherzellen reduziert, wenn die Anzahl der Bits (N) ansteigt, was zu einer negative Auswirkung auf den Lesespielraum führen kann. Daher kann eine Speichersteuerung, welche zwischen einen Host und die Flash-Speichervorrichtung geschaltet ist, mit einer Fehlerkorrektur-code(ECC)-Schaltung ausgestattet sein, welche ausgebildet ist zum Erfassen und Korrigieren von Fehlern in von den MLC-Speicherzellen ausgelesenen Daten. Die Fehlerwahrscheinlichkeit steigt proportional zur Anzahl der Datenbits an, die in jeder Speicherzelle gespeichert sind, und somit können die der Komplexität, Größe und Betriebszeit der ECC-Schaltung geschuldeten Ressourcen in MLC-Speichervorrichtungen wesentlich zunehmen.
-
Aus der Druckschrift
US 2009/0190397 A1 ist eine Speichervorrichtung und ein Verfahren zum Lesen von Speicherdaten bekannt. Die Speichervorrichtung umfasst: ein Multi-Bit-Zellenarray; eine Programmiereinheit, die N Datenseiten in einer Speicherseite in dem Multi-Bit-Zellenarray speichert; und eine Steuereinheit, die die N Datenseiten in eine erste Gruppe und eine zweite Gruppe unterteilt, Daten der ersten Gruppe von der Speicherseite liest und ein Schema zum Lesen von Daten der zweiten Gruppe von der Speicherseite basierend auf den gelesenen Daten der ersten Gruppe bestimmt.
-
Aus der Druckschrift
US 2009/0187368 A1 ist ein Verfahren zur Durchführung von Burn-In-Tests bekannt, um Schwankungen aufgrund von Prozessstreuungen in hergestellten integrierten Schaltungen (IC) zu reduzieren. Hergestellte ICs werden basierend auf Leistungsmerkmalen (z. B. Betriebsgeschwindigkeit), die das Ausmaß der Prozessstreuung in den ICs anzeigen, in mehrere Kategorien eingeteilt. Die ICs werden Burn-In-Tests unterzogen, wobei die Schwere der Belastungsparameter, die während eines Burn-In-Tests angewendet werden, proportional zu den Leistungsmerkmalen ist. Als Ergebnis wird die von den ICs gezeigte Prozessstreuung (Post-Burn-In) verringert.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Gemäß einem Aspekt der erfinderischen Konzepte ist ein nichtflüchtiger Speicher vorgesehen, welcher eine Mehrzahl von N-Bit-Multi-Level-Cell(MLC)-Speicherzellen und eine Steuerung enthält. Die Mehrzahl von N-Bit-MLC-Speicherzellen ist zum Speichern von N Datenseiten vorgesehen, wobei jede der MLC-Speicherzellen in jede von 2N Schwellwertspannungsverteilungen programmierbar ist, und wobei N eine positive Zahl ist. Die Steuerung ist dazu ausgebildet, die N Datenseiten in die MLC-Speicherzellen zu programmieren, und einen teilweisen Verschachtelungsprozess auszuführen, bei dem die N Datenseiten in M Seitengruppen aufgeteilt werden, wobei M eine positive Zahl ist, und wobei jede Seitengruppe zumindest eine der N Datenseiten enthält, und bei dem jede der M Seitengruppen einer Fehlerkorrekturcode(ECC)-Schaltung zugeführt wird, um Paritätsbits für die entsprechenden M Seitengruppen zu erzeugen, wobei eine Bitfehlerrate (BER) der Seiten in jeder der M Gruppen durch den teilweisen Verschachtelungsprozess angeglichen wird.
-
Gemäß einem weiteren Aspekt der erfinderischen Konzepte ist ein Verfahren zum Einstellen von Schwellwertspannungsverteilungen in einem nichtflüchtigen Speicher vorgesehen. Der nichtflüchtige Speicher enthält N-Bit-Multi-Level-Cell(MLC)-Speicherzellen zum Speichern von N Datenseiten, wobei jede der N-Bit-MLC-Speicherzellen in jede von 2N Schwellwertspannungsverteilungen programmierbar ist. Das Verfahren teilt die N Seiten in M Seitengruppen auf, und stellt 2N-1 Prüfspannungen, die mit den 2N Schwellwertspannungsverteilungen verknüpft sind, derart ein, dass die durchschnittliche Bitfehlerrate (BER) der M Seitengruppen angeglichen wird. Das Verfahren programmiert die N Datenseiten in N-Bit-MLC-Speicherzellen unter Verwendung der eingestellten 2N-1 Prüfspannungen und führt einen teilweisen Verschachtelungsprozesses aus, bei dem jede der M Seitengruppen einer Fehlerkorrekturcode(ECC)-Schaltung zugeführt wird, um Paritätsbits für die entsprechenden M Seitengruppen zu erzeugen, wobei eine Bitfehlerrate der Seiten in jeder der M Gruppen durch den teilweisen Verschachtelungsprozess angeglichen wird.
-
Gemäß einem weiteren Aspekt der erfinderischen Konzepte ist ein Speichersystem vorgesehen, welches einen nichtflüchtigen Speicher und eine Speichersteuerung enthält. Der nichtflüchtige Speicher enthält eine Steuerlogik, einen Adressdekoder und eine Speicherzellenanordnung. Die Speicherzellenanordnung enthält Zeilen und Spalten von N-Bit-Multi-Level-Cell(MLC)-Speicherzellen, wobei jede Zeile der MLC-Speicherzellen dazu ausgebildet ist, N Datenseiten zu speichern. Die Speichersteuerung enthält eine Host-Schnittstelle zum Ankoppeln an eine externe Vorrichtung, eine Speicherschnittstelle zum Ankoppeln an den nichtflüchtigen Speicher, einen Hauptprozessor, einen Pufferspeicher und eine Fehlerkorrekturcode(ECC)-Schaltung. Die Speicherschaltung ist dazu ausgebildet, einen teilweisen Verschachtelungsprozess auszuführen, bei dem die N Datenseiten in M Seitengruppen aufgeteilt werden, wobei M eine positive Zahl ist und wobei jede Seitengruppe zumindest eine der N Datenseiten enthält, und bei dem jede der M Seitengruppen der ECC-Schaltung zugeführt wird, um Paritätsbits für entsprechende M Seitengruppen zu erzeugen, wobei eine Bitfehlerrate (BER) der Seiten in jeder der M Gruppen durch den teilweisen Verschachtelungsprozess angeglichen wird.
-
Figurenliste
-
Die obigen und weitere Aspekte der erfinderischen Konzepte werden anhand der detaillierten Beschreibung unter Bezugnahme der beigefügten Figuren deutlicher ersichtlich, in denen:
- 1 ein schematisches Diagramm einer nichtflüchtigen Speicheranordnung ist (Stand der Technik);
- 2 ein schematisches Blockdiagramm ist, das eine Multi-Level-Cell(MLC)-Flash-Speichervorrichtung darstellt (Stand der Technik);
- 3 ein Schwellwertspannungsverteilungsdiagramm ist, das verwendet wird beim Beschreiben einer Multi-Level-Cell(MLC)-Flash-Speichervorrichtung (Stand der Technik);
- 4 ein Blockdiagramm einer Speichersteuerung gemäß einer Ausführungsform der erfinderischen Konzepte ist;
- 5 ein Schwellwertspannungsverteilungsdiagramm zum Beschreiben einer Bitfehlerrate (BER) in einer MLC-Flash-Speichervorrichtung ist;
- 6 eine Tabelle ist, welche relative BERs für Seiten einer 2-Bit MLC-Flash-Speichervorrichtung darstellt;
- 7 ein Schwellwertspannungsdiagramm einer 4-Bit-MLC-Flash-Speichervorrichtung ist;
- 8 eine Tabelle ist, welche relative BERs für Seiten einer 4-Bit-MLC-Flash-Speichervorrichtung darstellt;
- 9 und 10 Diagramme sind zum Beschreiben eines Verschachtelungsverfahrens, welches zur Reduzierung eines BER-Missverhältnisses verwendet werden kann;
- 11 bis 14 Diagramme sind zum Beschreiben der Verschiebung der Schwellwertspannungsverteilungen zum Reduzieren des BER-Missverhältnisses;
- 15 und 16 Diagramme sind zum Beschreiben eines Schemas für die teilweise Verschachtelung zum Reduzieren des BER-Missverhältnisses gemäß einer Ausführungsform der erfinderischen Konzepte;
- 17 ein Diagramm ist zum Beschreiben der Verschiebung der Schwellwertspannungsverteilungen zum Reduzieren des BER-Missverhältnisses gemäß einer Ausführungsform der erfinderischen Konzepte;
- 18 ein Flussdiagramm ist zum Beschreiben eines Verfahrens zum Reduzieren des BER-Missverhältnisses gemäß einer Ausführungsform der erfinderischen Konzepte;
- 19 und 20 Diagramme sind, die eine Speicherkarte und ein Speicherkartensystem gemäß einer Ausführungsform der erfinderischen Konzepte darstellen;
- 21 und 22 Diagramme sind, welche ein Computersystem und eine Speichersteuerung gemäß einer Ausführungsform der erfinderischen Konzepte darstellen; und
- 23 ein Diagramm ist, das ein Computersystem gemäß einer Ausführungsform der erfinderischen Konzepte darstellt.
-
DETAILLIERTE BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
-
Verschiedene beispielhafte Ausführungsformen der erfinderischen Konzepte werden nachstehend bezüglich der beigefügten Figuren beschrieben, wobei gleiche Bezugszeichen für ähnliche bzw. gleichartige Elemente verwendet werden.
-
Obwohl zum Beispiel die Begriffe „erster/erste/erstes“, „zweiter/zweite/zweites“, etc. hiernach zum Beschreiben verschiedener Elemente verwendet werden, sollten diese Elemente nicht durch diese Begriffe beschränkt bzw. begrenzt werden. Diese Begriffe werden lediglich zur Unterscheidung der Elemente verwendet. Zum Beispiel könnte ein erstes Element als zweites Element bezeichnet werden und ähnlich ein zweites Element als erstes Element, ohne dabei vom Umfang der erfinderischen Konzepte abzuweichen bzw. diese zu beschränken. Ähnlich sind die Begriffe „über“, „unter“, „oberhalb“, „unterhalb“ etc. relative Begriffe, welche nicht dazu gedacht sind, die erfinderischen Konzepte auf eine besondere Vorrichtungsanordnung zu beschränken. Der vorliegend verwendete Begriff „und/oder“ enthält jede Kombination von einem oder mehrerer der damit zusammenhängenden, aufgeführten Begriffe bzw. Gegenstände.
-
Hierbei ist zu verstehen, dass wenn ein Element als „verbunden“ oder „gekoppelt“ mit einem anderen Element bezeichnet wird, dieses entweder direkt mit dem anderen Element verbunden oder gekoppelt sein kann, oder Zwischenelemente vorliegen. Dagegen, wenn ein Element als „direkt verbunden“ oder „direkt gekoppelt“ mit einem anderen Element bezeichnet wird, liegen keine Zwischenelemente vor. Andere bzw. weitere Begriffe, welche zum Beschreiben der Beziehung zwischen Elementen verwendet werden, sollten ähnlich betrachtet werden (zum Beispiel „zwischen“ im Vergleich zu „direkt dazwischen“, „benachbart“ im Vergleich zu „direkt benachbart“ etc.).
-
Die vorliegend verwendeten Singularformen „einer/eine/eines“ und „der/die/das“ können auch die entsprechenden Pluralformen umfassen, solange der Kontext diesbezüglich nicht ausdrücklich anderes sagt. Ferner sollte verstanden werden, dass die Begriffe „aufweist“, „aufweisen“, „enthält“ und/oder „enthalten“ vorliegend das Vorhandensein von erwähnten Eigenschaften, Ganzzahlen, Schritten, Betätigungen, Elementen, und/oder Komponenten spezifizieren, nicht jedoch das Vorhandensein oder das Hinzufügen von einem oder mehreren weiteren Eigenschaften, Ganzzahlen, Schritten, Betätigungen, Elementen, Komponenten, und/oder Gruppen davon ausschließen.
-
Solange nicht anders definiert, weisen alle Begriffe (einschließlich technischer und wissenschaftlicher Begriffe), die vorliegend verwendet werden, die gleiche Bedeutung auf, wie sie für gewöhnlich von einem entsprechenden Fachmann verstanden wird. Ferner sollte verstanden werden, dass Begriffe, die in herkömmlichen Wörterbüchern definiert sind, eine Bedeutung haben, die dem Kontext der relevanten Technik entsprechen bzw. bezüglich diesem interpretiert werden können, und werden nicht in idealisierter oder verallgemeinerte Form interpretiert werden, solange dies hier nicht ausdrücklich so definiert ist.
-
4 ist ein Blockdiagramm eines Speichersystems 1000, welches zur Implementierung von Ausführungsformen der erfinderischen Konzepte verwendet werden kann. Das Speichersystem 1000 kann zum Beispiel eine Multimediakarte (MMC), eine Sichere Digital Karte (SD-Karte), eine Mikro-SD-Karte, einen Speicherstift, eine ID-Karte, eine PCMCIA-Karte, eine Chip-Karte, eine USB-Karte, eine Smartcard, und/oder eine Kompakt-Flash(CF)-Karte sein.
-
Das Speichersystem 1000 enthält eine nichtflüchtige Speichervorrichtung 1100 und eine Speichersteuerung 1200. In diesem Beispiel ist die nichtflüchtige Speichervorrichtung 1100 ein Flash-Speicher mit MLC-Speicherzellen, wie z.B. denjenigen, die in der oben beschriebenen 2 dargestellt sind.
-
Die Speichersteuerung 1200 ist konfiguriert, die nichtflüchtige Speichervorrichtung 1100 über eine Flash-Schnittstelle (I/F) 1210 zu steuern. Ferner kommuniziert die Speichersteuerung 1200 mit einer externen Vorrichtung (zum Beispiel der Host-Vorrichtung) über einen Host-I/F 1220, wobei sie dabei irgendeines von verschiedenen Schnittstellenprotokollen, wie zum Beispiel einem Universial-Serial-Bus(USB)-Protokoll, einem Multimediakarten(MMC)-Protokoll, einem Peripheral-Component-Interconnection(PCI)-Protokoll, einem PIC-Express(PCI-E)-Protokoll, einem Advanced-Technology-Attachment(ATA)-Protokoll, einem Serial-ATA-Protokoll, einem Parallel-ATA-Protokoll, einem Small-Component-Small-Interface(SCSI)-Protokoll, einem Enhanced-Small-Disc-Interface(ESDI)-Protokoll, einem Integrated-Drive-Electronics(IDE)-Protokoll und einem E-IDE-Protokoll, verwendet.
-
Ein Pufferspeicher 1250 der Speichersteuerung 1200 funktioniert bzw. arbeitet als Input/Output-Puffer, welcher vorübergehend Daten speichert, die auf den Flash-Speicher 1100 zu schreiben sind („schreibe Daten“), und Daten, die von dem Flash-Speicher 1100 zu lesen sind („lese Daten“). Grundsätzlich ist eine Datenübertragungsrate des Busprotokolls (zum Beispiel SATA oder SAS) der Host-Vorrichtung weit höher als eine Datenübertragungsrate zu und von dem Flash-Speicher 1100. Der Pufferspeicher 1250 ist vorgesehen, um dieser Differenz der Datenübertragungsraten Rechnung zu tragen und sie zu organisieren.
-
Ein Fehlerkorrekturcode(ECC)-Block 1230 der Speichersteuerung 1230 erfasst und korrigiert Datenlesefehler, die von der nichtflüchtigen Speichervorrichtung 1100 gelesen werden. Eine Vielzahl von ECC-Protokollen ist im Stand der Technik bekannt, und die erfinderischen Konzepte sind diesbezüglich nicht beschränkt. Der EEC-Block kann grundsätzlich so funktionieren, dass Paritätsbits basierend auf den Bitlogikzuständen der Schreibdaten erzeugt werden, und diese Paritätsbits mit den geschriebenen Daten im Flash-Speicher 1100 in Verbindung gebracht werden. Anschließend werden die Paritätsbits bei einer Leseoperation verwendet, um Fehler in den Daten zu erfassen, wie sie vom Flash-Speicher 1100 gelesen werden.
-
Ein Hauptprozessor (CPU) 1240 der Speichersteuerung 1200 steuert einen Gesamtbetrieb des Datenaustauschs, der durch die Speichersteuerung 1200 ausgeführt wird. Obwohl nicht dargestellt, ist es für einen Fachmann offensichtlich, dass die Speichersteuerung ferner mit weiteren Komponenten wie zum Beispiel einem ROM (nicht dargestellt) vorgesehen sein kann, welches Datencodes zum Ankoppeln mit der Host-Vorrichtung speichern kann. Ferner kann die Steuerung 1200 mit mehreren CPUs ausgestattet sein, um Multitasking und eine Hochgeschwindigkeitsparallelverarbeitung zu ermöglichen.
-
5 und 6 erläutern eine Bitfehlerrate, die in Zusammenhang mit einem 2-Bit-MLC-Flash-Speicher steht. 5 stellt eine Spannungsverteilung (Anzahl der Zellen gegen Schwellwertspannung Vth) von 2-Bit-Flash-Speicherzellen dar. Wie dargestellt, enthält die Spannungsverteilung einen gelöschten Zustand E, und Programmierzustände P1, P2 und P3. In dem in 5 dargestellten Beispiel sind die 2-Bit-Logikwerte (das heißt, 2-Bit-Daten) 11, 10, 00, 01 den entsprechenden Spannungsverteilungen E, P1, P2, P3 zugeordnet.
-
Im MLC-Flash-Speicher bildet jedes Datenbit pro Speicherzelle eine logische Datenseite. Im Falle des 2-Bit-MLC können die niedrigstwertigen Bits LSB der gespeicherten Daten eine erste Datenseite sein, und können die höchstwertigen Bits MSB der gespeicherten Daten eine zweite Datenseite sein. Dies ist in 6 dargestellt. In einer tatsächlichen, echten Flash-Speichervorrichtung sind die Schwellwertspannungsverteilungen nicht wie in 3 oben dargestellt ideal, sondern ein Abschnitt von jeder Schwellwertverteilung überlappt stattdessen mit einer benachbarten Schwellwertspannungsverteilung. Dies wird in 5 durch den Überschneidungsbereich 901 der Verteilungszustände E und P1, den Überschneidungsbereich 902 der Verteilungszustände P1 und P2, und die Überschneidungsbereiche 903 der Verteilungszustände P2 und P3 dargestellt. Beim Lesen der ersten (LSB) Datenseite wird eine Lesespannung angelegt, welche sich zentral zwischen den Spannungen der Verteilungszustände P1 und P2 befindet. Jedoch können Speicherzellen mit Schwellwertspannungen im Überschneidungsabschnitt 902 inkorrekt gelesen werden. Dies ist deshalb so, da die Speicherzellen der Schwellwertspannungsverteilung P1 inkorrekt als eine Schwellwertspannung oberhalb der Lesespannung aufweisend erfasst werden können, wobei Speicherzellen der Schwellwertspannungsverteilung P2 inkorrekt als eine Schwellwertspannung unterhalb der Lesespannung aufweisend erfasst werden können.
-
Bezüglich der Tabelle von 6 ist das niedrigstwertige Bit LSB (das heißt Seite 1) der 2-Bit-Daten 1, 1, 0, 0 für die entsprechenden Spannungsverteilungen E, P1, P2, P3, und ist das höchstwertige Bit MSB (Seite 2) der 2-Bit-Daten 1, 0, 0, 1 für die entsprechenden Spannungsverteilungen E, P1, P2, P3. Die normalisierte Bitfehlerrate (BER) von jeder Seite ist durch die Anzahl von Bitübergängen 1-0 oder 0-1 (das heißt die Anzahl von Leseoperationen) zwischen den Schwellwertspannungsverteilungen definiert. Im Beispiel von 6 weist Seite 1 einen solchen Übergang (von P1 zu P2) auf, und somit hat Seite 1 eine normalisierte BER von 1 hat. Seite 2 weist zwei solche Übergänge auf (von E zu P1, und von P2 zu P3), und somit hat Seite 2 eine normalisierte BER von 2.
-
Die BER von einem 4-Bit-Flash-Speicher wird nachstehend mit Bezug auf die 7 und 8 beschrieben.
-
7 stellt schematisch eine ideale Schwellwertspannungsverteilung von 4-Bit-Flash-Speicherzellen dar. Wie dargestellt enthalten die Spannungsverteilungen einen gelöschten Zustand E und programmierte Zustände P1 bis P15. 7 stellt zudem Lesespannungen R1 bis R15 dar, die bei einer Leseoperation der Flash-Speicherzellen angelegt werden.
-
8 stellt die 4-Bit-Logikwerte dar, die jedem der gelöschten Zustände E und den programmierten Zuständen P1 bis P15 von 7 zugeordnet werden. Beim Lesen der ersten Datenseite (Seite 1) liegt ein einzelner Bitübergang vor, wobei ein einzelnes Lesen bei R8 ausgeführt wird. Somit ist die normalisierte BER gleich 1. Beim Lesen von Seite 2 liegen zwei Bitübergänge vor, wobei das Lesen zweimal bei R4 und R12 ausgeführt wird, und die normalisierte BER ist gleich 2. Beim Lesen von Seite 3 liegen vier Bitübergänge vor, wobei das Lesen viermal bei R2, R6, R10 und R14 ausgeführt wird, und die normalisierte BER ist gleich 4. Zuletzt liegen beim Lesen von Seite 4 acht Übergänge vor, wobei das Lesen achtmal bei R1, R3, R5, R7, R9, R11, R13 und R15 ausgeführt wird, und die normalisierte BER ist gleich 8.
-
Wie oben beschrieben nimmt die BER überproportional mit der Anzahl der Bits (das heißt Seiten pro Wortleitung) der MLC-Flash-Speichervorrichtung zu. Wie in der Tat den oben angegebenen Beispielen entnommen werden, ist bei einer N-Bit-MLC-Speichervorrichtung die BER von jeder Seite gleich 2n-1, wobei n die Seitenanzahl von 1 bis N darstellt. Die ECC-Schaltung (zum Beispiel, der ECC-Block 1230 von 4) der Speichersteuerung muss für den schlechtesten Fall der BER ausgebildet sein. Im Falle des 4-Bit MLC-Flash-Speichers von den 7 und 8 bedeutet dies, dass die ECC-Schaltung für eine BER von 8 ausgestaltet ist, obwohl die Seiten 1 bis 3 eine BER von weniger als 8 aufweisen. Der überproportionale Anstieg der BER relativ zur Anzahl der Seiten pro Bitleitung kann eine übermäßige Vergrößerung der ECC-Kapazität erfordern.
-
9 und 10 zeigen Diagramme zum Beschreiben eines Verschachtelungsverfahrens der verwandten Technik, welches zum Reduzieren der größten anzunehmenden BER einer MLC-Flash-Speichervorrichtung verwendet werden kann.
-
Bei dem Beispiel eines 4-Bit-MLC-Flash-Speichers ist dieses Verfahren gekennzeichnet durch das Verschachteln von von vier (4) Seiten (Seiten 1 bis 4) innerhalb jedes Sektors, der (zum Beispiel, von einem Host) in einen Pufferspeicher 1251 geladenen ist. Hierbei enthält der Pufferspeicher acht Sektoren SCT1 bis SCT8. Die verschachtelten Daten von jedem Sektor des Pufferspeichers 1252 werden als Sektordaten S1 bis S8 verwendet, welche der ECC-Schaltung 1231 zugeführt werden, und die ECC-Schaltung 1231 erzeugt Paritätsbits basierend auf den verschachtelten Daten. Die Paritätsbits werden anschließend in einem Reservespeicherbereich des Flash-Speichers 1100 so gespeichert, dass sie mit den darin gespeicherten Seitendaten 1111 in Verbindung gebracht werden. Wenn die Daten gelesen werden, führt die ECC 1231 eine Fehlerkorrektur der physikalischen Seiten basierend auf den Paritätsbits durch. Auf diese Weise haben alle Datenseiten die gleiche BER. Das heißt, im Falle der 4-Bit-Flash-Speichervorrichtung ist die BER (1+2+4+8)/4=3,75.
-
Während das Verschachtelungsverfahren des obigen Beispiels effektiv zum Verringern der größten anzunehmenden BER von 8 auf 3,75 ist, werden erhebliche Ressourcen an Pufferspeicher 1252 für dessen Implementierung benötigt. Dies liegt zumindest teilweise daran, dass alle vier (4) Datenseiten als ein Sektor in den Pufferspeicher 1251 geladen werden müssen. Zum Beispiel in dem Fall, in welchem jede Seite in der Lage ist, 512 Bits zu speichern, kann ein Sektor von 2 kB zugewiesen werden, und ein großer Kapazitätspufferspeicher 1251 wird notwendig.
-
Ein weiteres Verfahren zum Angleichen des BER-Missverhältnisses wird nachstehend bezüglich den
11 bis
14 beschrieben. Dieses Verfahren betrifft die Offenbarung der gemeinsam zugeteilten US Non-Provisional-Anmeldung mit der Nr.
12/081453 , eingereicht am 16. April 2008, und veröffentlicht am 09. April 2009 mit der Veröffentlichungsnummer
US 2009 / 0 091 990 A1 .
-
Bezugnehmend auf 11 enthält dieses Verfahren das Verschieben von Lücken zwischen Schwellwertspannungsverteilungen, so dass die Überlappung bei Übergängen von Seiten mit niedriger BER relativ zur Verteilungsüberlappung bei Übergängen von Seiten mit hoher BER vergrößert wird. Zum Beispiel sind in 11 die Schwellwertspannungsverteilungen E, P1, P2 und P3 für eine 2-Bit MLC-Flash-Speichervorrichtung dargestellt. Im vorstehenden Beispiel von 5 hat jeder der Überlappungsbereiche 901, 902 und 903 die gleiche Fläche eingenommen, d.h. die mit jedem Überlappungsbereich verknüpfte BER war für dieselbe. Dagegen nimmt der Überlappungsbereich 902a von 11 die doppelte Fläche von jedem der Bereiche 901a und 903a ein. Daher ist eine des mit dem Überlappungsbereich 902a verknüpfte BER doppelt so hoch wie eine mit jedem der Überlappungsbereiche 901a und 903a verknüpfte BER. Hierbei ist zu beachten, dass die Summe der Bereiche 901 bis 903 gleich der Summe der Bereiche 901a bis 902c angenommen wird, und somit die gesamte BER der zwei kombinierten Seiten gleich ist. Die BER ist jedoch für jede Seite gleich, da die erste Seite einen einzelnen Leseschritt bei P1/P2 enthält, und die zweite Seite zwei Leseschritte bei E/P1 und P2/P3 enthält. Auf diese Weise wird die größte anzunehmende BER im Vergleich zu 5 auf die herkömmliche durchschnittliche BER reduziert, das heißt auf (1+2)/2=1,5.
-
12 zeigt ein Diagramm zum Beschreiben der Einstellungen der Verteilung der Schwellwertspannung Vt im Falle einer 4-Bit-MLC-Flash-Speichervorrichtung. Wie dargestellt wird die Lücke zwischen den Verteilungen P7 und P8 der Schwellwertspannung Vt (das heißt der Leseübergang der Seite 1) so eingestellt, dass die BER (Überlappungsbereich) das Achtfache der Lücke zwischen E und P1, der Lücke zwischen P2 und P3, der Lücke zwischen P4 und P5, der Lücke zwischen P6 und P7, der Lücke zwischen P8 und P9, der Lücke zwischen P10 und P11, der Lücke zwischen P12 und P13, und der Lücke zwischen P14 und P15 ist (das heißt der Leseübergänge der Seite 4). Außerdem ist, wie dargestellt, die mit dem Übergang der Seite 1 verknüpfte Lücke doppelt so groß wie die, die mit den Übergängen der Seite 2 verknüpft sind, und vierfach so groß wie die, die mit den Übergängen der Seite 3 verknüpft sind. Auf diese Weise wird, verglichen mit 8, die ungünstigste BER auf die ursprünglich durchschnittliche BER reduziert, das heißt auf (1 + 2 + 3 + 4) = 3,75.
-
Das Einstellen der Lücken (BER) zwischen den Verteilungen der Schwellwertspannung Vt kann durch Einstellen von Leseprüfspannungen während eines Programmierbetriebs realisiert werden. Dies ist anhand eines Beispiels in den 13 und 14 dargestellt.
-
Bezug nehmend auf 13 würden normal positionierte Verteilungen P7 und P8 der Schwellwertspannung durch Ausführen eines Programmierbetriebs unter Verwendung von Leseprüfspannungen F7 und F8 resultieren. Um die Lücke zwischen den Verteilungen P7 und P8 der Schwellwertspannung zu verringern (BER zu erhöhen), kann die Leseprüfspannung F7 um A auf eine neue Leseprüfspannung F7' erhöht werden, und kann die Leseprüfspannung F8 um A auf eine neue Leseprüfspannung F8' erhöht werden. Auf diese Weise wird die BER bei dem P7/P8-Übergang erhöht.
-
14 ist ein ähnliches Diagramm zum Darstellen einer Lückeneinstellung bei dem P3/P4-Übergang und dem P11/P12-Übergang. Normal positionierte Verteilungen P3 und P4 der Schwellwertspannung würden durch Ausführen eines Programmierbetriebs unter Verwendung von Leseprüfspannungen F3 und F4 resultieren. Um die Lücke zwischen den Verteilungen P3 und P4 der Schwellwertspannung zu verringern (BER anzuheben) kann die Leseprüfspannung F3 um B1 auf eine neue Leseprüfspannung F3' angehoben werden, und die Leseprüfspannung F4 um B1 auf eine neue Leseprüfspannung F4' verringert werden. Auf diese Weise wird die BER bei dem P3/P4-Übergang erhöht. Normal positionierte Verteilungen P11 und P12 der Schwellwertspannung würden durch Ausführen eines Programmierbetriebs unter Verwendung von Leseprüfspannungen F11 und F12 resultieren. Um die Lücke zwischen Verteilungen P11 und P12 der Schwellwertspannung zu verringern (BER zu erhöhen), kann die Leseprüfspannung F11 um B2 auf eine neue Leseprüfspannung F11' erhöht werden, und die Leseprüfspannung F12 um B2 auf eine neue Leseprüfspannung F12 verringert werden. Auf diese Weise wird die BER bei dem P11/P12-Übergang erhöht. Hierbei ist A > B1 und A > B2. Somit ist der Anstieg der BER bei dem P7/P8-Übergang größer als der bei den P3/P4- und P 11/P 12-Übergangen.
-
Auf eine ähnliche Weise können die Leseprüfspannungen so eingestellt werden, dass sie die BER bei den P1/P2-, P5/P6-, P9/P10- und P13/P14-Übergangen verringern, und ferner die BER bei den E/P1-, P2/P3-, P4/P5-, P6/P7-, P8/P9-, P10/11-, P12/P13- und P 14/P 15-Übergangen verringern.
-
Ausführungsformen der erfinderischen Konzepte werden nun mit Bezug auf die 15 bis 18 beschrieben. Bei den nachfolgenden Ausführungsformen sind N-Bit-MLC-Speicherzellen zum Speichern von N Datenseiten vorgesehen. Die N Datenseiten werden in M Seitengruppen aufgeteilt, wobei jede der M Seitengruppen zumindest eine der N Seiten enthält. In den nachfolgenden Beispielen enthält jede der M Seitengruppen N/M Seiten. Bei einem teilweisen Verschachtelungsprozess werden die Seitendaten von jeder Gruppe verschachtelt, um Sektordaten zu erzeugen, welche bei einem Fehlerkorrekturcode(ECC)-Prozess angewendet werden, um Paritätsbits für jede Gruppe zu erzeugen, um dadurch eine Bitfehlerrate (BER) der Seiten in jeder Gruppe anzugleichen (oder ein Missverhältnis der BER zu verringern). Ferner werden Einstellungen der Verteilungen der ausgeführt, um die BER der M Seitengruppen anzupassen bzw. anzugleichen (oder ein Missverhältnis der BER zu reduzieren). Spezifische Beispiele der Ausführungsformen werden nachstehend für einen Fall beschrieben, in welchen M = 4, und M = 2 ist, die erfinderischen Konzepte jedoch nicht darauf beschränkt sind.
-
Zuerst Bezug nehmend auf die 15 und 16 ist das Beispiel dieser Ausführungsform durch Ausführen eines teilweisen Verschachtelungsverfahrens der erfinderischen Konzepte gekennzeichnet.
-
Beim dargestellten Beispiel einer 4-Bit-MLC-Flash-Speichervorrichtung ist die Ausführungsform durch Verschachteln von zwei Seiten (z. B. Seiten 1 und 2) in manchen Sektoren (z. B. Sektoren SCT1-SCT4) des Pufferspeichers 1252, und Verschachteln von zwei weiteren Seiten (z. B. Seiten 3 und 4) in anderen Sektoren (z. B. Sektoren SCT5-SCT8) des Pufferspeichers 1252 gekennzeichnet. Die verschachtelten Daten von jedem Sektor SCT1-SCT4 des Pufferspeichers 1252 werden als Sektordaten S1-S4 einer ECC-Schaltung 1232 zugeführt, und die ECC-Schaltung 1232 erzeugt erste Paritätsbits basierend auf den verschachtelten Seite 1/Seite 2-Daten. Die ersten Paritätsbits werden anschließend in einem Reservespeicherbereich des Flash-Speichers 1100 so gespeichert, dass sie mit den darin gespeicherten Daten 1111 der Seite 1 und Seite 2 verknüpft sind. Ähnlich werden verschachtelte Daten von ihrem Sektor SCT5-SCT8 des Pufferspeichers 1252 als Sektordaten S5-S8 verwendet, die einer ECC-Schaltung 1232 zugeführt werden, und die ECC-Schaltung 1232 erzeugt zweite Paritätsbits basierend auf den verschachtelten Seite 3/Seite 4-Daten. Die zweiten Paritätsbits werden dann in einem Reservespeicherbereich des Flash-Speichers 1100 so gespeichert, dass sie mit darin gespeicherten Daten 1111 der Seite 3 und Seite 4 verknüpft sind. Wenn die Daten gelesen werden, führt die ECC eine Fehlerkorrektur der physikalischen Seiten basierend auf den ersten Paritätsbits und den zweiten Paritätsbits aus. Auf diese Weise haben die Daten der Seite 1 und der Seite 2 die gleiche BER, und die Daten der Seite 3 und der Seite 4 die gleiche BER. Das heißt, im Falle der 4-Bit Flash-Speichervorrichtung ist die BER von Seite 1/Seite 2 ist (1 + 2)/2 = 1,5, und die BER der Seite 3/Seite 4 ist (4 + 8)/2 = 6.
-
Da bei der obigen Ausführungsform in jedem Sektor zwei (2) Datenseiten geladen sind, kann die Kapazität des Pufferspeichers 1232 wesentlich reduziert werden, im Vergleich zu der Kapazität, die für das Verschachtelungsschema von den 9 und 10 benötigt wird. Ferner kann auch die Größe der ECC-Schaltung 1232 reduziert werden. Außerdem kann durch Einstellen der Verteilungen des Spannungsschwellwerts Vt wie unten beschrieben das Missverhältnis der BER zwischen den Seiten 1/2 und den Seiten 3/4 verhindert werden. Dies wird nachfolgend bezüglich 17 beschrieben.
-
Im obenstehenden Beispiel hatten die verschachtelten Seiten 1 und 2 eine BER von 1,5, und die verschachtelten Seiten 3 und 4 eine BER von 6. Dies kann auf eine BER von 1 für die Seiten 1 und 2, und eine BER von 4 für die Seiten 3 und 4 (d. h., einem BER-Verhältnis von 1:4) normalisiert werden. Sich 17 zuwendend werden die Seite 1/Seite 2-Übergänge (P3/P4 und P7/P8 und P11/P12) durch das zuvor beschriebene Einstellen der Prüflesespannungen so eingestellt, dass die BER bei jedem Übergang vier (4) mal größer bzw. höher als die der verbleibenden Seite 3/Seite 4-Übergänge ist. In anderen Worten ist die BER bei den P3/P4- und P7/P8- und P11/12-Übergangen (erste Seitengruppe) erhöht, und ist die BER bei den verbleibenden Übergängen (der zweiten Seitengruppe) verringert, so dass die BER für die erste Gruppe der Seite 1/Seite 2 an die BER der zweiten Seitengruppe Seite 3/Seite 4 angeglichen ist. In diesem besonderen Beispiel ist die normalisierte BER jeder Seitengruppe (1 + 2)/2 = 2,5.
-
18 ist ein Flussdiagramm zum Beschreiben eines Verfahrens gemäß Ausführungsformen der erfinderischen Konzepte. Zuerst werden wie obenstehend vorgeschlagen N physikalische Datenseiten in M Seitengruppen unterteilt (S110). Zum Beispiel werden vier (4) physikalische Datenseiten in zwei Gruppen von Seiten aufgeteilt, wobei jede Gruppe zwei (4/2) Seiten enthält. Anschließend wird eine teilweises Verschachtelungsschema ausgeführt (S120), bei dem Seiten von jeder der M Gruppen verschachtelt werden, um Sektordaten zu erzeugen, welche in einem ECC-Prozess verwendet werden, um dadurch ein Missverhältnis der BER zwischen Seiten in jeder Gruppe zu reduzieren oder zu. Die Verteilungen der Schwellwertspannung Vt werden zudem so eingestellt, dass ein Missverhältnis der BER zwischen M Seitengruppen reduziert oder verhindert werden (S130).
-
Somit kann das BER-Missverhältnis gemäß den oben beschriebenen Ausführungsformen durch Ausführen des teilweisen Verschachtelungsprozesses während der ECC, und durch Einstellen der Verteilungen des Spannungsschwellwerts Vt basierend auf den teilweise verschachtelten Daten verhindert werden. Die Ausführungsformen ermöglichen einen Pufferspeicher mit verringerter Kapazität, im Vergleich zum vorstehend beschriebenen vollständigen Verschachtelungsprozess, und die Einstellungen der Verteilungen des Spannungsschwellwerts Vt sind im Vergleich zu dem vorstehend beschrieben Verfahren vereinfacht.
-
Für eine einfache Erläuterung stellt die obige Diskussion eine BER-Beziehung des Standes der Technik dar, bei der die normalisierte BER einer nten Seite 2n ist, wobei n gleich 0 bis (N-1) und N die Gesamtzahl der Seiten ist. Aufgrund von Betriebs- und/oder Prozessveränderungen (wie z. B. Burn-In), kann diese Seitenbeziehung der BER jedoch verändert werden, wobei die Ausführungsformen hierbei entsprechend verändert werden können. Zum Beispiel enthält eine Ausführungsform der erfinderischen Konzepte beim Abschätzen der BER für jede der N Seiten in dem Fall, in welchem die 2N-1 Prüfspannungen gleich verteilt sind, das Bestimmen einer erwarteten Veränderung, die aus einem Burn-In-Prozess resultiert, und eine entsprechende Einstellung der 2N-1 Prüfspannungen. Das Abschätzen bzw. der Abschätzschritt kann ferner das Bestimmen einer erwarteten Veränderung enthalten, welche von einer fehlenden Randomisierung von gespeicherten Daten in den MLC-Speicherzellen resultiert. Darüber hinaus können Programmierzustände mit einer niedrigen Schwellwertspannung eine breitere Verteilung aufgrund von Programmierladungsstörungen aufweisen, welche auch die BER von jeder Seite beeinflussen. Hierbei ist erneut darauf hinzuweisen, dass die hier vorliegenden Ausführungsformen auch verändert werden können, um solchen Variationen Rechnung zu tragen.
-
Die obigen Ausführungsformen sind dazu gedacht, die BER der N/M Seiten innerhalb jeder Gruppe von Seiten anzugleichen und/oder die BER für die M Gruppen von Seiten anzugleichen. Hierbei ist zu verstehen, dass ein exaktes Übereinstimmen der BER's in einer tatsächlichen Vorrichtung nicht möglich ist, und dass der Begriff „angleichen“ für eine Reduzierung des BER-Missverhältnisses derart steht, dass die BER-Werte innerhalb angemessener Grenzen von Prozess- und Betriebsvariationen im Wesentlichen gleich sind.
-
Ferner erwähnt die obige Beschreibung, dass die Verteilungen der Schwellwertspannung Vt korrigiert oder eingestellt werden können, um das BER-Missverhältnis der M Seitengruppen zu verringern. Dabei ist zu verstehen, dass diese Verteilungen der Schwellwertspannung Vt im Voraus vor dem Versenden eines Produkts eingestellt werden können oder stattdessen nach dem Versenden korrigiert und/oder eingestellt werden können.
-
19 und 20 stellen eine perspektivische Ansicht einer SD-Speicherkarte bzw. eine Blockansicht eines Speicherkartensystems gemäß Ausführungsformen der erfinderischen Konzepte dar. Das Speicherkartensystem 2000 enthält eine Speicherkarte 2200 (wie zum Beispiel die SD-Speicherkarte, die in 19 dargestellt ist) und einen Host 2100. Die Host-Vorrichtung 2100 enthält eine Host-Steuerung 2110 und eine Host-Verbindung (CNT) 2120. Die Host-Steuerung 2110 enthält zum Beispiel eine Haupt-CPU, einen DRAM, einen SRAM, etc., und überträgt Befehle (CMD) und ein Taktsignal (CLK) an die Speicherkarte 2200. Die Speicherkarte enthält einen nichtflüchtigen Speicher 2230, eine Kartensteuerung 2220 und einen Kartenanschluss (CNT) 2210. Im Betrieb ist die Speicherkarte 2200 lösbar mit der Host-Anschluss 2120 verbunden, um den Austausch von Daten (DAT) zwischen der Host-Vorrichtung 2100 und der Speicherkarte 2200 zu ermöglichen. Ferner ist die Speichersteuerung 2220 gemäß einem oder mehreren der hier beschriebenen erfinderischen Konzepte ausgebildet.
-
21 ist ein Blockdiagramm eines weiteren Speichersystems gemäß Ausführungsformen der erfinderischen Konzepte. Insbesondere enthält das Speichersystem dieses Beispiels eine Host-Vorrichtung 3100 und ein Festkörperlaufwerk bzw. ein Festkörperlaufwerk (SSD) 3200. Hierbei tauschen die Host-Vorrichtung 3100 und das SSD 3200 Signale über Signalanschlüsse 3231 des SSD 3200 aus, und die Host-Vorrichtung 3100 überträgt ein Leistungssignal PWR an einen Hilfs-Leistungs-Zuführanschluss 3221 der SSD 3200 überträgt. Der SSD 3200 enthält eine SSD-Steuerung 3210, eine Hilfsstromversorgung 3220, und eine Mehrzahl von Gruppen 3201 bis 320n von Speicherchips (NVM), wobei jede Speicherchipgruppe 3201 bis 320n zumindest einen nichtflüchtigen Speicherchip enthält. Die SSD Steuerung 3210 ist gemäß einer oder mehrerer der erfinderischen Konzepte, die vorliegend beschrieben werden, ausgebildet und kommuniziert mit den Speicherchipgruppen 3201 bis 320n über eine entsprechende Mehrzahl von Kanälen CH1 bis CHn.
-
22 ist ein Blockdiagramm der in 21 gezeigten SDD-Steuerung 3200 gemäß Ausführungsformen der erfinderischen Konzepte. Dieses Beispiel ist ähnlich der Speichersteuerung 1200 aus 4, abgesehen davon, dass die Speichersteuerung 3210 über die Schnittstelle 3211 des nichtflüchtigen Speichers über eine Mehrzahl von Kanälen CH1<1:n> mit den entsprechenden Speicherchipgruppen 3201 bis 320n des nichtflüchtigen Speichers 3200 kommuniziert. Bevorzugt werden Daten über die Speicherchipgruppen verteilt, um zum Beispiel die Lebensdauer der Chipgruppen zu verlängern. Der Host I/F 3212, der ECC-Block 3213, der Pufferspeicher 3215 und die CPU 3214 sind gleich oder ähnlich den gleich bezeichneten Elementen der zuvor beschriebenen 4, und somit wird hier auf deren detaillierte Beschreibung verzichtet. Bei dieser Ausführungsform ist die Speichersteuerung 3210 mit einem SSD vorgesehen, aber die erfinderischen Konzepte sind nicht darauf beschränkt. Ausserdem kann die CPU 3214 mehrere Hauptprozessoren enthalten, wodurch Multitasking und/oder ein paralleles Verarbeiten bzw. eine Parallelverarbeitung ermöglicht wird.
-
23 zeigt ein Blockdiagramm eines Computersystems gemäß einer Ausführungsform der erfinderischen Konzepte. Beispiele des Computersystems 4000 sind mobile Vorrichtungen, PCs, Digitalkameras, Camcorder, Mobiltelefone, MP3-Player, Tragbare Multimediaabspielgeräte (PMPs), Persönliche Digitale Assistenten (PDAs), und HD-Fernseher (HDTV). Das Computersystem 4000 dieses Beispiels enthält einen Hauptprozessor (CPU) 4300, eine Benutzerschnittstelle 4500, einen Direktzugriffsspeicher (RAM) 4400, eine Stromversorgung bzw. ein Netzteil 4200, eine Hilfsstromversorgung 4250 und ein Speichersystem 4100. Die Funktionalität der CPU 4300, der Benutzerschnittstelle 4500, des RAMs 4400, der Stromversorgung 4200, der Hilfsstromversorgung 4250 und des Bussystems sind von dem Fachmann gut verstanden. Das Speichersystem 4100 enthält eine Speichersteuerung 4120 und einen Flash-Speicher 4110, und kann einem der Speichersysteme, die vorstehend beschrieben worden sind, entsprechen. Ferner ist die Steuerung 4120 gemäß einer oder mehrerer erfinderischer Konzepte, die vorliegend beschrieben sind, konfiguriert.
-
Ein MLC-Flash-Speicher gemäß einem oder mehreren der erfinderischen Konzepte kann auf oder in einer der Mehrzahl verschiedener Gehäusetypen enthalten sein. Zum Beispiel kann eine Flash-Speichervorrichtung gemäß einem oder mehreren erfinderischen Konzepten auf oder in einer Package-on-Package (PoP), Ball-Grid-Arrays (BGAs), Chipscale-Gehäusen (CSPs), Plastic-Leaded-Chip-Carrier (PLCC), ein Plastic-Dual-In-Line-Gehäuse (PDIP), einem Die-In-Waffle-Pack, einer Die-In-Wafer-Form, einem Chip-On-Board (COB), einem keramischen Dual-In-Line-Gehäuse (CERDIP), einem Plastic-Metric-Quad-Flat-Pack (MQFP), einem Thin-Quad-Flatpack (TQFP), einer Small-Outline (SOIC), einem Shrink-Small-Outline-Gehäuse (SSOP), einem Thin-Small-Outline-Gehäuse (TSOP), einem Thin-Quad-Flatpack (TQFP), einem System-In-Gehäuse (SIP), einem Multi-Chip-Gehäuse (MCP), einem Wafer-Level-Fabricated-Gehäuse (WFP), einem Wafer-Level-Processed-Stack-Gehäuse (WSP), und dergleichen enthalten sein.