-
Hintergrund der Erfindung
-
Gebiet der Erfindung
-
Die
Erfindung betrifft ein Speichersystem für nicht flüchtige Datenspeicherung und
insbesondere ein Speichersystem, das Referenzniveaus zum Lesen von
Daten verwendet, die in einem Format mit mehreren Zuständen gespeichert
sind.
-
Beschreibung des Stands der
Technik
-
Speicherkarten
werden im Allgemeinen verwendet, um digitale Daten für eine Verwendung
mit verschiedenen Produkten (beispielsweise elektronischen Produkten)
zu speichern. Beispiele für
Speicherkarten sind Flashkarten, die Flash- oder EEPROM-Speicherzellen zum
Speichern der Daten verwenden. Flashkarten weisen einen relativ
kleinen Formfaktor auf und wurden zum Speichern digitaler Daten
für Produkte,
wie beispielsweise Kameras, tragbare Computer, Set-Top-Boxen, tragbare
oder andere kleine Tonabspieler/Aufnahmegeräte (zum Beispiel MP3-Geräte) und
medizinische Überwachungsgeräte verwendet.
Ein Hauptlieferant von Flashkarten ist die SanDisk Corporation in
Sunnyvale, CA.
-
Von
diesen Speicherkarten wird zunehmend erwartet, dass sie immer größere Mengen
von Daten speichern. Folglich wurden individuelle Speicherelemente
innerhalb dieser Speicherkarten zum Unterstützen mehrere Niveaus entwickelt,
um mehrere Bits von Daten effektiv zu speichern. Herkömmliche Speicherelemente
speichern nur zwei Zustände, während Speicherelemente
mit mehreren Niveaus oder hoher Dichte mehr als zwei Zustände (zum
Beispiel vier Zustände)
speichern. Zum Beispiel können Speicherelemente
in einigen heutigen Mehrfach-Niveau- Speicherkarten vier (4) Niveaus speichern
und somit gewissermaßen
einem einzelnen Speicherelement ermöglichen, als zwei (2) Bits
von Daten zu wirken. Während
diese mehrere Niveaus einer Speicheranordnung ermöglichen,
wesentlich größere Mengen
von Daten ohne eine entsprechende Vergrößerung der Größe oder
der Kosten zu speichern, ist es schwieriger, gespeicherte Daten
aus der Speicheranordnung zu lesen.
-
Nicht
flüchtige
Speicher sind sehr beliebt und nützlich,
weil sie Daten sogar behalten, nachdem sie von der Stromversorgung
getrennt wurden. Allerdings ist die Aufrechterhaltung der Ladung
von nicht flüchtigen
Speichern nicht perfekt. Folglich kann nach dem Programmieren einer
Speicherzelle die Spannung der Speicherzelle nach oben oder nach unten
driften, in Abhängigkeit
von verschiedenen Einflüssen,
wie beispielsweise angelegte Vorspannungen, elektromagnetische Felder,
die in der Speichervorrichtung erzeugt werden, und Ladung, die in Dielektrika
der Speichervorrichtung gefangen ist.
-
Wenn
nicht flüchtige
Speicher mehrere Zustände
in jedem Speicherelement unterstützen,
was als ein Speicher mit mehreren Zuständen bezeichnet wird, werden
Referenzniveaus benötigt,
um ein Unterscheiden zwischen den Zuständen zu unterstützen, wenn
Daten von den Speicherzellen gelesen werden.
-
Herkömmliche
Referenzzellen wurden innerhalb der Speichervorrichtung zum Speichern
von globalen Referenzspannungen verwendet, die in der Fabrik programmiert
werden können,
oder vor oder mit den Benutzerzellen geschrieben werden können. Allerdings
ist die Fähigkeit,
diese Referenzspannungen auf eine genaue Weise abzurufen schwierig
aufgrund von Schwellwertspannungs-/Stromverteilungen unter beschriebenen
Referenzspeichereinheiten. Die Verteilungen können verursacht werden durch Schwankung
in anfänglich
geschriebenem Schwellwert/Strom; Spannungsstörungen; materielle Schwankungen,
welche in unterschiedlicher Umgebungsempfindlichkeit resultieren;
und Ladungsverlust von eingebauten elektrischen oder magnetischen
Feldern. In jedem Fall ist das Ergebnis eine erhöhte Fehlerwahrscheinlichkeit
während
Leseoperationen.
-
US-B-6275419 offenbart
Methoden für
eine hoch dichte Kodierung mit mehreren Zuständen für einen Speicher mit mehreren
Zuständen.
Die Methoden umfassen das Bestimmen optimaler Vergleichspunkte für verschiedene
Zustände
durch die Verwendung von Referenzzellen. Vergleichsniveaus werden von
den Referenzzellen bestimmt. Insbesondere wird ein optimaler Vergleichspunkt
erhalten, indem zehn Referenzzellen ausgelesen werden und ihre Daten zusammensummiert
werden, was eine Anhäufung der
Daten dieser zehn Zellen ergibt. Max- und Min-Register werden beibehalten. Der Filterpunkt wird
dann durch Subtraktion des Max und Min von der Summe und Dividieren
durch acht ermittelt, was das mittlere Speicherniveau, das der Referenzzelle zugeordnet
ist, ergibt. Demgemäß minimiert
diese Methode die Wahrscheinlichkeit eines Fehlers von einer isolierten,
fehlerhaften Zelle, ob hoch oder niedrig.
-
WO-A-0227729 offenbart
Methoden zum Verwenden von beschreibbaren Referenzzellen mit Speicherung
mit mehreren Zuständen.
Mehrere Referenzzellen werden für
jeden Speicherschreibblock bereitgestellt. Diese Zellen werden jedes
Mal umprogrammiert, wenn die Benutzerzellen des zugeordneten Schreibblocks
beschrieben werden, vorzugsweise zur selben Zeit, unter Verwendung
der gleichen festgelegten globalen Referenzniveaus, um die programmierten
Schwellwerte der Referenz- und Benutzerzellen festzulegen. Die Schwellwertspannungen
der Referenzzellen werden jedes Mal gelesen, wenn die Benutzerzellen
ge lesen werden, und diese Schwellwerte werden zum Bestimmen der
gespeicherten logischen Niveaus der Benutzerzellen verwendet.
-
Somit
besteht ein Bedarf für
verbesserte Vorgehensweisen zum verlässlichen Speichern und Erfassen
von Referenzniveaus, so dass Zustände (logische Niveaus) von
Speicherzellen mit mehreren Zuständen
verlässlich über die
Lebensdauer der Speichervorrichtung abgerufen werden können.
-
Allgemein
gesagt betrifft die Erfindung ein Speichersystem (zum Beispiel Speicherkarte),
das eine Fehlerbehandlung für
gespeicherte Niveaus (zum Beispiel Referenzniveaus), die bei einer
Unterscheidung von logischen Niveaus für Datenspeichereinheiten, die
Datenspeicherung bereitstellen, verwendet werden, aufweist. Die
gespeicherten Niveaus können
in vorbestimmten Speichereinheiten (zum Beispiel beschreibbare Referenzspeichereinheiten) in
dem Speichersystem gespeichert werden. Das Speichersystem ist typischerweise
ein nicht flüchtiges
Speicherprodukt oder eine nicht flüchtige Speichervorrichtung,
die binäre
Datenspeicherung oder Datenspeicherung mit mehreren Zuständen bereitstellt.
-
Die
Erfindung kann auf vielfältige
Weise implementiert werden. Beispielsweise kann die Erfindung als
ein System, eine Vorrichtung oder ein Verfahren implementiert werden.
Mehrere Ausführungsformen
der Erfindung werden nachstehend diskutiert.
-
Gemäß einem
ersten Aspekt der Erfindung wird ein Verfahren zum Lesen von Daten
von einer Speichervorrichtung bereitgestellt, die Datenspeichereinheiten
und zugeordnete Referenzspeichereinheiten aufweist, wobei das Verfahren
umfasst: (a) im Wesentlichen gleichzeitiges Lesen von Datenniveaus
von be stimmten Datenspeichereinheiten und von Referenzniveaus von
Referenzspeichereinheiten, die den bestimmten Datenspeichereinheiten
zugeordnet sind; (b) Berechnen eines verarbeiteten Referenzniveaus
von den Referenzniveaus; (c) Ermitteln von Zustandsunterscheidungsniveaus
basierend auf dem verarbeiteten Referenzniveau; (d) Unterscheiden
von Zuständen
der Datenniveaus von den bestimmten Datenspeichereinheiten basierend
auf den Zustandsunterscheidungsniveaus, um gelesene Daten für einen
Anforderer zu erfassen; (e) Bewerten der Qualität der Referenzniveaus; (f)
Ermitteln ob die Qualität
der Referenzniveaus akzeptabel ist; (g) Senden der gelesenen Daten
an den Anforderer, wenn das Ermitteln (f) ermittelt, dass die Qualität der Referenzniveaus
akzeptabel ist; und (h) Anhalten des Sendens (g) und Korrigieren
für mindestens
eines der Referenzniveaus, wenn das Ermitteln (f) ermittelt, dass
die Qualität
der Referenzniveaus nicht akzeptabel ist.
-
Gemäß einem
zweiten Aspekt der Erfindung wird ein Speichersystem bereitgestellt,
das umfasst: mehrere Datenspeichereinheiten, wobei jede der Datenspeichereinheiten
Datenspeicher mit mehreren Zuständen
auf eine nicht flüchtige
Weise bereitstellt; mehrere Referenzspeichereinheiten, wobei die
Referenzspeichereinheiten Speicher für Referenzniveaus auf eine
nicht flüchtige
Weise bereitstellen; einen Referenzniveaufehlerbehandler, der betriebsfähig zum Empfangen
der Referenzniveaus von den Referenzspeichereinheiten verbunden
ist, wobei der Referenzniveaufehlerbehandler die Qualität der Referenzniveaus
bewertet; und eine Speichersteuereinheit, die betriebsfähig mit
den Datenspeichereinheiten und den Referenzspeichereinheiten verbunden ist,
wobei die Speichersteuereinheit betrieben wird, um Lese-, Schreib-
und Löschvorgänge mit
Bezug auf Datenspeichereinheiten und die Referenzspeichereinheiten
zu steuern, wobei die Speichersteuereinheit Zustands unterscheidungsniveaus
verwendet, um den Zustand der Datenspeicherelemente, die gelesen
werden, zu ermitteln, wobei das Speichersystem betrieben wird zum
Ermitteln, ob die Qualität
der gelesenen Daten für
einen Anfordernden akzeptabel ist, und Senden der gelesenen Daten
an einen Anfordernden, wenn es ermittelt wird, dass die Qualität der Referenzniveaus
akzeptabel ist; und Anhalten des Sendens der gelesenen Daten an
den Anfordernden und Korrigieren für mindestens eines der Referenzniveaus,
wenn das Referenzniveau nicht akzeptabel ist.
-
Andere
Aspekte und Vorteile der Erfindung werden von der folgenden genauen
Beschreibung in Verbindung mit den beiliegenden Zeichnungen deutlich
werden, welche mittels Beispielen die Prinzipien der Erfindung veranschaulichen.
-
Die
Erfindung wird leicht verstanden werden durch die folgende genaue
Beschreibung in Verbindung mit den beiliegenden Zeichnungen, wobei
gleiche Bezugszeichen gleiche strukturelle Elemente bezeichnen,
und in welchen:
-
1A ein
funktionelles Blockschema eines Speichersystems gemäß einer
Ausführungsform
der Erfindung ist;
-
1B ein
Flussdiagramm einer Unterscheidungsniveauverarbeitung gemäß einer
Ausführungsform
der Erfindung ist;
-
2A ein
Flussdiagramm einer Leseanfrageverarbeitung gemäß einer Ausführungsform
der Erfindung ist;
-
2B ein
Flussdiagramm einer Leseanfrageverarbeitung gemäß einer anderen Ausführungsform
der Erfindung ist;
-
2C ein
Flussdiagramm einer Leseanfrageverarbeitung 270 gemäß noch einer
anderen Ausführungsform
der Erfindung ist; und
-
3 ein
Flussdiagramm einer Leseanfrageverarbeitung gemäß einer anderen Ausführungsform
der Erfindung ist.
-
Genaue Beschreibung der Erfindung
-
Die
Erfindung betrifft ein Speichersystem (zum Beispiel Speicherkarte),
das eine Fehlerbehandlung für
gespeicherte Niveaus (zum Beispiel Referenzniveaus), die bei einer
Unterscheidung von logischen Niveaus für Datenspeichereinheiten, die
Datenspeicherung bereitstellen, verwendet werden, aufweist. Die
gespeicherten Niveaus können
in vorbestimmten Speichereinheiten (zum Beispiel beschreibbare Referenzspeichereinheiten)
in dem Speichersystem gespeichert werden. Das Speichersystem ist
typischerweise ein nicht flüchtiges
Speicherprodukt oder eine nicht flüchtige Speichervorrichtung,
das bzw. die binäre
Datenspeicherung mit mehreren Zuständen bereitstellt.
-
Das
Speichersystem kann beispielsweise zu einer Speicherkarte (wie beispielsweise
eine Steckkarte), einem Speicherstift oder einem anderen Halbleiterspeicherprodukt
gehören.
Beispiele von Speicherkarten umfassen PC-Karten (frühere PCMCIA-Vorrichtungen), Flash-Karten,
Flash-Datenträger,
Multimediakarten, und ATA-Karten.
-
Ausführungsformen
von diesem Aspekt der Erfindung werden nachstehend mit Bezug auf 1A bis 3 diskutiert.
Allerdings wird ein Fachmann es leicht zu würdigen wissen, dass die genaue Beschreibung,
die hierin mit Bezug auf diese Figu ren gegeben wird, für erklärende Zwecke
ist, da sich die Erfindung über
diese begrenzten Ausführungsformen hinaus
erstreckt.
-
1A ist
ein funktionelles Blockschema eines Speichersystems 10 gemäß einer
Ausführungsform
der Erfindung. Das Speichersystem 10 stellt hoch dichte
Datenspeicherung unter Verwendung von Speicherung mit mehreren Zuständen bereit. Das
Speichersystem 10 weist eine Speichersteuereinheit 12 auf,
die Operationen (zum Beispiel Lesen, Löschen, Programmieren) für das Speichersystem 10 steuert
und mit einem Host über
einen Datenbus 13 kommuniziert. Das Speichersystem 10 weist
auch Datenspeichereinheiten mit mehreren Zuständen 14 (zum Beispiel
Speicherzellen) auf, die Daten für
das Speichersystem 10 auf eine nicht flüchtige Weise speichern. Die
Datenspeichereinheiten mit mehreren Zuständen 14 stellen hoch
dichte Speicherung für Daten
bereit, weil jede Datenspeichereinheit (Datenspeicherelement) fähig ist,
mehr als zwei Zustände zu
speichern. Mit anderen Worten ist jede Datenspeichereinheit (zum
Beispiel Speicherzelle) fähig,
mehr als ein Bit von Daten zu speichern. Die Datenspeichereinheiten
mit mehreren Zuständen 14 sind
typischerweise in Blöcken
angeordnet, welche die kleinste Schreibeinheit bei einer Ausführungsform
repräsentieren.
-
Das
Speichersystem 10 weist auch Referenzspeichereinheiten 16 auf,
die Referenzniveaus auf eine nicht flüchtige Weise speichern, einen
Referenzniveaufehlerbehandler 18 und eine Zustandsunterscheidungsniveau-Schaltung 20.
Die Referenzspeichereinheiten 16 sind den Datenspeichereinheiten
mit mehreren Zuständen 14 zugeordnet.
Insbesondere werden mehrere der Referenzspeichereinheiten 16 für jeden
Block von Speicher in den Datenspeichereinheiten mit mehreren Zuständen 14 bereit gestellt
und diesem zugeordnet. Die Referenzspeichereinheiten 16,
die einem Block von Daten zugeordnet sind, der geschrieben wird,
werden jedes Mal, wenn die Datenspeichereinheiten mit mehreren Zuständen 14,
die dem Block zugeordnet sind, beschrieben werden mit Referenzniveaus
umprogrammiert. Typischerweise werden die Referenzspeichereinheiten 16 mit
festgelegten, globalen Referenzniveaus zur selben Zeit programmiert,
zu der die Datenspeichereinheiten mit mehreren Zuständen 14 mit den
Referenzniveaus umprogrammiert werden. Die gespeicherten Referenzniveaus
in den Referenzspeichereinheiten 16 werden verwendet, um Schwellwertniveaus
(zum Beispiel Spannungsschwellwerte) festzulegen, die bei einer
Zustands-logisches
Niveau)Unterscheidung von sowohl den Datenspeichereinheiten 14 als
auch den Referenzspeichereinheiten 16 verwendet werden.
Die Referenzniveaus, die in den Referenzspeichereinheiten 16 gespeichert
sind, werden jedes Mal gelesen, wenn die Datenspeichereinheiten 14 gelesen
werden, und diese Referenzniveaus (zum Beispiel Schwellwertspannungen)
werden verwendet, um die gespeicherten logischen Niveaus der Datenspeichereinheiten 14 zu bestimmen.
-
Es
ist bekannt, dass nicht flüchtige
Speicherzellen Ladungsaufrechterhaltungseigenschaften aufweisen,
die sich als eine Funktion der Anzahl von durchgeführten Programmier/Löschzyklen
verändern.
Durch Umprogrammieren der Referenzspeichereinheiten 16 jedes
Mal, wenn die zugeordneten Datenspeichereinheiten 14 programmiert
werden, entwickeln die Referenzspeichereinheiten 16 die gleiche
Vorgeschichte, und darum die gleichen Ladungsaufrechterhaltungseigenschaften
wie die zugeordneten Datenspeichereinheiten 14. Mit anderen Worten
indem die Referenzspeichereinheiten 16 genauso oft wie
die entsprechenden Datenspeichereinheiten 14 gelöscht und
umprogrammiert werden, wird die Zyklusabhängigkeit von der La dungsaufrechterhaltung
berücksichtigt,
was es ermöglicht,
die effektive Schwellwertspanne zum Unterscheiden der logischen
Niveaus, die in den Datenspeichereinheiten 14 gespeichert
sind, beizubehalten. Folglich wird eine Verschlechterung der effektiven
Schwellwertspanne der Datenspeichereinheiten 14 aufgrund
von Ladungsverlust reduziert. Demgemäß kann die Bestimmung von gespeicherten
logischen Niveaus für
die Datenspeichereinheiten 14 zuverlässig über die Lebensdauer der Speichervorrichtung
durchgeführt werden.
-
Gemäß einer
Ausführungsform
der Erfindung werden mehrere der Referenzspeichereinheiten 16 mit
vorbestimmten Zuständen
jedes Mal beschrieben, wenn die zugeordneten Datenspeichereinheiten 14 beschrieben
werden. Wenn die zugeordneten Datenspeichereinheiten 14 gelesen
werden sollen, werden die Referenzniveaus von den mehreren Referenzspeichereinheiten 16,
die diesen zugeordnet sind, gelesen, und von der Zustandsunterscheidungsniveau-Schaltung 20 verwendet,
um Unterscheidungspunkte (Zustandsunterscheidungsniveaus) zu bestimmen.
Sobald die Unterscheidungspunkte bestimmt sind, kann die Speichersteuereinrichtung 12 (oder
die Datenspeichereinheiten selber) die gespeicherten logischen Niveaus
innerhalb der Datenspeichereinheiten 14 bestimmen. Während die Unterscheidungspunkte
bestimmt werden oder während
die logischen Niveaus, die in den Datenspeichereinheiten 14 gespeichert
sind, unter Verwendung der Unterscheidungspunkte bestimmt werden,
kann die Qualität
der Referenzniveaus (Spannung oder Strom) von dem Referenzniveaufehlerbehandler 18 untersucht
werden. Jedes der Referenzniveaus von den Referenzspeichereinheiten 14,
für die
ein Referenzniveau mit einer nicht akzeptablen Qualität festgestellt
wurde, kann korrigiert werden (zum Beispiel gelöscht oder ersetzt). Danach
werden neue Unterscheidungspunkte von der Zustandsunterscheidungsniveau-Schaltung 20 bestimmt
unter Verwendung der Referenzniveaus von den Referenzspeichereinheiten 14 mit
akzeptabler Qualität.
Die neuen Unterscheidungspunkte werden dann verwendet, um die Speicherlogikniveaus
von den Datenspeichereinheiten 16 zu entnehmen.
-
Obwohl
der Referenzniveaufehlerbehandler 18 und die Zustandsunterscheidungsniveau-Schaltung 20 als
separate Komponenten gezeigt sind, können die Schaltungen für diese
Komponenten auch zusammengelegt werden, oder können mit der Speichersteuereinheit 12 zusammengelegt
werden. Im Allgemeinen stellt das Speichersystem 10 hoch
dichte, nicht flüchtige
Datenspeicherung bereit und kann auf vielfältige Weise ausgestaltet werden.
Beispielsweise kann das Speichersystem 10 als eine Speicherkarte
(wie beispielsweise eine Steckkarte), ein Speicherstift oder ein
anderes Halbleiterspeicherprodukt ausgebildet sein.
-
1B ist
ein Flussdiagramm einer Unterscheidungsniveauverarbeitung 100 gemäß einer Ausführungsform
der Erfindung. Die Unterscheidungsniveauverarbeitung 100 wird
beispielsweise von einem Speichersystem durchgeführt, das Speicherung mit mehreren
Zuständen
(zum Beispiel Speichersystem 10) bereitstellt. Mit einer
Speicherung mit mehreren Zuständen
ist eine Speicherkapazität
höherer
Dichte für
Daten verfügbar,
weil jede Datenspeichereinheit (Datenspeicherelement) fähig ist,
mehr als zwei Zustände
zu speichern. Mit anderen Worten ist jede Datenspeichereinheit (zum
Beispiel Speicherzelle) fähig,
mehr als 1 Bit von Daten zu speichern. Somit können die Datenspeichereinheiten
auch als Datenspeichereinheiten mit mehreren Zuständen bezeichnet
werden.
-
Die
Unterscheidungsniveauverarbeitung 100 liest (102)
anfänglich
Referenzniveaus von Referenzspeichereinheiten. Die Referenzspeichereinheiten werden
in dem Speichersystem zum Bereitstellen von Referenzniveaus bereitgestellt,
welche beim Bestimmen von Unterscheidungsniveaus verwendet werden,
die wiederum zum Unterscheiden zwischen den verschiedenen Zuständen, die
von dem Speicher mit mehreren Zuständen unterstützt werden, verwendet
werden. Nachdem die Referenzniveaus von den Referenzspeichereinheiten
gelesen werden (102), wird die Qualität der Referenzniveaus bewerte (104).
Hier ist die Qualität
der Referenzniveaus ein Maß für wie zuverlässig die
Referenzniveaus sind, da diese Referenzniveaus durch eine Vielfalt
von Einflüssen
verschlechtert oder unbrauchbar werden können.
-
Als
nächstes
wird eine Entscheidung (106) gemacht, um zu ermitteln,
ob die Qualität
der Referenzniveaus akzeptabel ist. Wenn die Entscheidung (106)
ermittelt, dass die Qualität
der Referenzniveaus nicht akzeptabel ist, dann wird die Unterscheidungsniveauverarbeitung 100 tätig bwz.
betrieben, um für
die Referenzniveaus zu korrigieren (110), die eine nicht
akzeptable Qualität
aufweisen. Bei einer Ausführungsform
kann das Korrigieren (110) zum Ändern oder Entfernen eines
oder mehrerer der Referenzniveaus, die eine nicht akzeptable Qualität aufweisen,
betrieben werden.
-
Andererseits,
wenn die Entscheidung (106) ermittelt, dass die Qualität der Referenzniveaus
akzeptabel ist (oder folgend auf ein Korrigieren (110) von
Referenzniveaus mit nicht akzeptabler Qualität), dann können die Referenzniveaus von
dem Speichersystem bei seinem Betrieb verwendet werden. Und zwar
werden, nachdem die Entscheidung (106) ermittelt hat, dass
die Qualität
der Referenzniveaus akzeptabel ist (oder nach Korri gieren (110),
wenn die Qualität
der Referenzniveaus nicht akzeptabel war), Zustandsunterscheidungsniveaus
ermittelt (108). Hier werden die Referenzniveaus, die von
den Referenzspeichereinheiten erhalten wurden, zum Ermitteln der
Zustandsunterscheidungsniveaus verwendet. Diese Zustandsunterscheidungsniveaus
werden dann von dem Speichersystem verwendet, um zwischen den verschiedenen
Zuständen,
die in den Datenspeichereinheiten mit mehreren Zuständen gespeichert
werden können,
zu unterscheiden. Jede Datenspeichereinheit (zum Beispiel Speicherzelle) des
Speichersystems kann eine Ladungsmenge speichern, die einem von
mehr als zwei Zuständen entspricht.
Beispielsweise könnten
die Datenspeichereinheiten mit mehreren Zuständen 16 Zustände oder
Speicherniveaus in einer einzelnen Datenspeichereinheit unterstützen, was
vier Bits von Daten entspricht. Somit können die Zustandsunterscheidungsniveaus
Strom oder Spannungsniveaus bereitstellen, die es dem Speichersystem
oder einer anderen Schaltung ermöglicht,
den bestimmten Zustand zu ermitteln, in welchem sich eine gegebene
Datenspeichereinheit befindet. Folgend auf die Operation (108) ist
die Unterscheidungsniveauverarbeitung 100 vollständig und
endet.
-
2A ist
ein Flussdiagramm einer Leseanfrageverarbeitung 200 gemäß einer
Ausführungsform
der Erfindung. Die Leseanfrageverarbeitung 200 wird beispielsweise
von einem Speichersystem, das Datenspeichereinheiten mit mehreren
Zuständen
aufweist, durchgeführt,
wenn ein Anfordernder (zum Beispiel Host) angefordert hat, Daten
von Speicherstellen innerhalb des Speichersystems zu lesen.
-
Die
Leseanfrageverarbeitung 200 liest (202) anfänglich Referenzniveaus
von Referenzspeichereinheiten als auch Datenniveaus von Datenspeichereinheiten.
Hier werden die Referenzni veaus von den Referenzspeichereinheiten
gelesen, die den Datenspeichereinheiten, die die Datenniveaus, die
gelesen werden, enthalten, zugeordnet sind. Zusätzlich werden die Referenzniveaus
im Wesentlichen zur selben Zeit gelesen, zu der die Datenniveaus
gelesen werden. Die Referenzniveaus können ein oder mehrere Niveaus
betreffen. Bei einer Ausführungsform
speichern mehrere Referenzspeichereinheiten die gleichen Referenzniveaus
für eine
verbesserte Zuverlässigkeit.
Bei einer Implementierung werden beispielsweise zwei oder mehr (zum
Beispiel 16) Referenzspeichereinheiten zum Speichern des gleichen
Referenzniveaus verwendet. Die Referenzspeichereinheiten werden
beschrieben, gelöscht
und gelesen, wenn ihre zugeordneten Datenspeichereinheiten geschrieben,
gelöscht
oder gelesen werden und „verfolgen" somit die Verwendung
der zugeordneten Datenspeichereinheiten. Als ein Ergebnis entwickeln
die Referenzspeichereinheiten dieselbe Vorgeschichte und darum dieselben
Ladungsaufrechterhaltungseigenschaften wie die Datenspeichereinheiten.
Zusätzlich erfahren
die Referenzspeichereinheiten die gleichen Betriebsbedingungen wie
beispielsweise Spannung und Temperatur, welche ein Erkennen von
Zuständen
beeinflussen kann. Folglich wird die Unterscheidung von Datenniveaus,
die in den Datenspeichereinheiten gespeichert sind, zuverlässiger gemacht.
-
Als
nächstes
wird ein mittleres Referenzniveau berechnet (204). Hier
können
die Referenzniveaus, die gelesen (202) werden, gemittelt
werden, um das mittlere Referenzniveau zu erzeugen. Nachdem das
mittlere Referenzniveau berechnet (204) ist, werden Zustandsunterscheidungsniveaus
ermittelt (206) basierend auf dem mittleren Referenzniveau. Wie
oben bemerkt werden die Zustandsunterscheidungsniveaus von dem Speichersystem
zum Unterscheiden zwischen den verschiedenen Zustän den, die
von den Datenspeichereinheiten mit mehreren Zuständen unterstützt werden,
verwendet.
-
Sobald
die Zustandsunterscheidungsniveaus ermittelt wurden (206),
können
Zustände
der Datenspeichereinheiten unterschieden werden (208) unter
Verwendung der Datenniveaus von den Datenspeichereinheiten und der
Zustandsunterscheidungsniveaus von den Referenzspeichereinheiten, um
gelesene Daten zu erfassen. Hier können die vorher gelesenen Datenniveaus
(Operation 202) untersucht werden, um den Zustand für die Datenspeichereinheiten
durch Verwendung der Zustandsunterscheidungsniveaus zu ermitteln.
In der Tat ermöglicht die
Unterscheidung (208) der Zustände dem Speichersystem, die
gelesenen Daten zu erfassen, die durch die Leseanforderungsverarbeitung 200 gelesen
werden sollen. Im Wesentlichen gleichzeitig mit dem Unterscheiden
(208) bewertet (210) die Leseanforderungsverarbeitung
(200) auch eine Qualität
der Referenzniveaus. Bei einer Ausführungsform wird die Bewertung
der Qualität
der Referenzniveaus typischerweise individuell an jedem der Referenzniveaus durchgeführt. Allerdings
könnte
bei anderen Ausführungsformen
die Qualität
der Referenzniveaus stattdessen an zwei oder mehreren Referenzniveaus
als eine Gruppe durchgeführt
werden.
-
Folgend
auf die Operationen 208 und 210 ermittelt eine
Entscheidung (212), ob die Qualität der Referenzniveaus akzeptabel
ist. Wenn die Entscheidung (212) ermittelt, dass die Qualität nicht
akzeptabel ist, dann wird die Leseanfrageverarbeitung 200 tätig, um
für die
Referenzniveaus mit der geringen Qualität zu korrigieren (214).
Hier kann das Korrigieren (214) betrieben werden, um einen
oder mehrere der Referenzniveaus, die eine geringe Qualität aufweisen,
zu entfernen, zu ersetzen oder auf eine andere Weise zu ändern. Folgend
auf die Operation 214 kehrt die Leseanfrageverarbeitung 200 zurück, um die
Operation 204 und folgende Operationen zu wiederholen,
so dass die Zustandsunterscheidungsniveaus wieder ermittelt und
verwendet werden können,
basierend auf den dem Korrigieren (214) folgenden Referenzniveaus.
Alternativ, wenn die Entscheidung (212) bestimmt, dass
die Qualität
akzeptabel ist, können
die gelesenen Daten dann zu dem Anforderer für die Leseoperation geschickt
werden (216). Typischerweise ist der Anforderer eine Host-Vorrichtung,
die das Speichersystem verwendet. Der Operation 216 folgend
ist die Leseanfrageverarbeitung 200 vollständig und
endet.
-
Durch
im Wesentlichen gleichzeitiges Durchführen der Bewertung (210)
und der Unterscheidung (208) kann die Bewertung (210)
der Qualität
der Referenzniveaus ohne eine Leistungseinbuße für die Leseanfrageverarbeitung 200 durchgeführt werden, wann
immer die anfänglich
gelesene Referenzzellenqualität
für akzeptabel
erachtet wird. Mit einem optimal ausgestalteten und hergestellten
Speichersystem werden die Referenzniveaus in den meisten Fällen eine
akzeptable Qualität
aufweisen, wenn sie anfänglich
gelesen werden. Somit wird die Bewertung (210) der Qualität der Referenzniveaus
keinen wesentlichen Einfluss auf die Leistung (und zwar Leseleistung)
des Speichersystems haben. In den seltenen Fällen, wenn eines oder mehrere
der Referenzniveaus eine nicht akzeptable Qualität aufweist, wird eine Leistungsbelastung
auferlegt, weil die Referenzniveaus korrigiert (214) werden
müssen
und dann die Operationen 204–208 wieder durchgeführt werden müssen. Allerdings
ist aufgrund ihrer Seltenheit die Leistungsbelastung minimiert.
-
2B ist
ein Flussdiagramm einer Leseanfrageverarbeitung 250 gemäß einer
anderen Ausführungsform
der Erfindung. Die Leseanfrageverarbeitung 250 ist im Allgemeinen
der Leseanfrageverarbeitung 200, die in 2A mit
Bezug auf verschiedene Operationen, und zwar den Operationen 202–210, veranschaulicht
ist, ähnlich.
Allerdings betrifft die Leseanfrageverarbeitung 250 eine
andere Ausführungsform,
bei welcher die Unterscheidung (208) vervollständigt wird,
bevor die Bewertung (210) vervollständigt wird. Somit kann bei
dieser Ausführungsform
damit begonnen werden, die gelesenen Daten zu dem Anforderer zu
senden, während
die Bewertung (210) weiterläuft. Wenn benötigt, kann
hier auch die Bewertung (210) gleichzeitig mit mindestens
einem Teil des Sendens der gelesenen Daten an den Anforderer durchgeführt werden.
Insbesondere ermittelt eine Entscheidung (252) folgend
auf das Unterscheiden (208) der Zustände der Datenspeichereinheiten,
ob die Qualität
der Referenzniveaus akzeptabel ist. Wenn die Entscheidung (252)
ermittelt, dass die Qualität
der Referenzniveaus nicht akzeptabel ist, dann werden jegliche der
gelesenen Daten, die schon zu dem Anforderer gesendet wurden, widerrufen
(254). Da die Bewertung (210) nicht vollständig sein
könnte,
wenn das Unterscheiden (208) vollständig ist, können hier die gelesenen Daten
ihre Übermittlung
zu dem Anforderer beginnen. Wenn festgestellt wird, dass die Qualität der Referenzniveaus,
die beim Ermitteln der Unterscheidungs-(208)Zustände verwendet wurden, nicht
akzeptabel war, dann werden die gelesenen Daten, die in diesem Bezug
gesendet wurden, widerrufen (254). Als nächstes korrigiert
(256) die Leseanfrageverarbeitung 250 für die Referenzniveaus
mit geringer Qualität.
Wiederum kann das Korrigieren (256) ein Einstellen oder
Entfernen von einem oder mehreren Referenzniveaus, die geringe Qualität aufweisen,
betreffen. Folgend auf die Operation 256 kehrt die Leseanfrageverarbeitung 250 zurück, um die
Entscheidung (204) und folgende Operationen zu wiederholen,
so dass die Referenzniveaus, wie korrigiert, in einem Wiederermitteln
der Zustandsunterscheidungsniveaus und somit der gelesenen Daten
von den Datenspeichereinheiten mit mehreren Zuständen verwendet werden können.
-
Andererseits,
wenn die Entscheidung (252) ermittelt, dass die Qualität der Referenzniveaus
akzeptabel ist (was anfänglich
angenommen wird), kann damit begonnen werden, die gelesenen Daten zu
dem Anforderer zu senden (258). An diesem Punkt wurden
die Zustände
der Datenspeichereinheiten mit mehreren Zuständen bei Operation 208 festgelegt,
und somit kann das Senden der gelesenen Daten fortfahren. Im Allgemeinen
wird die Entscheidung (252) asynchron mit dem Senden (258) der
Daten durchgeführt.
Der Operation 258 folgend ermittelt eine Entscheidung (260),
ob das Senden der gelesenen Daten vollständig ist. Wenn die Entscheidung
(260) ermittelt, dass die gelesenen Daten nicht vollständig zu
dem Anforderer gesendet wurden, dann kehrt die Leseanforderungsverarbeitung 250 zurück, um die
Entscheidung (252) und folgende Operationen zu wiederholen,
so dass das Senden (258) der gelesenen Daten fortfahren
kann, bis es entweder bei Operation 254 widerrufen wird
(aufgrund nicht akzeptabler Qualität der Referenzniveaus) oder
bis es bei der Entscheidung (260) vollständig ist.
Sobald das Senden der gelesenen Daten vervollständigt wurde (ohne widerrufen
zu werden), ist die Leseanfrageverarbeitung 250 vollständig und endet,
da die Leseanfrage vollständig
verarbeitet wurde.
-
2C ist
ein Flussdiagramm einer Leseanfrageverarbeitung 270 gemäß noch einer
anderen Ausführungsform
der Erfindung. Die Leseanfrageverarbeitung 270 ist im Wesentlichen ähnlich zu
der in 2A veranschaulichten Leseanfrageverarbeitung 200 in
Bezug auf verschiedene Operationen, und zwar Operationen 202–216.
Allerdings weist die Leseanfrageverarbeitung 270 des Weiteren
ein Schleifensteuerungsmerkmal auf. Das Schleifensteuerungsmerkmal
steuert wie oft Operationen 204–214 wiederholt werden
können.
Mit anderen Worten ist es aus Gründen
der Leistung wünschenswert,
die Menge an Zeit zu begrenzen, die verwendet werden kann, um zu
versuchen, eine ausreichende Qualität zu erreichen. Gemäß der Leseanfrageverarbeitung 270 wird
beim Starten der Verarbeitung eine Zählung auf einen vorbestimmten
Wert (zum Beispiel „0") initialisiert 272.
Dann ermittelt folgend auf Operationen 208 und 210 eine
Entscheidung (274), ob eine Zählung (d. h. Schleifenzählung) größer ist
als eine Schleifengrenze (zum Beispiel „1"). Wenn die Zählung nicht größer als
die Schleifengrenze ist, dann kann Operation 212 durchgeführt werden.
Wenn die Entscheidung (212) bestimmt, dass die Qualität nicht akzeptabel
ist, dann kann Operation 214 durchgeführt werden. Folgend auf Operation 214,
vor einem Zurückkehren
der Schleife zu Operation 204, wird der Zähler erhöht (276).
Demgemäß kann die
Schleifengrenze bewirken, dass die Leseanfrageverarbeitung 270 die
gelesenen Daten an den Anfordernden sendet (216) (oder
ansonsten die Leseanfrageverarbeitung 270 verlassen), sogar
wenn die Qualität
noch nicht als akzeptabel erachtet wird. Das Schleifensteuerungsmerkmal
kann auch mit der Leseanfrageverarbeitung 250 von 2B verwendet
werden.
-
Des
Weiteren, obgleich die Leseanfrageverarbeitungen 200, 250 und 270,
die in 2A, 2B und 2C veranschaulicht
sind, die Berechnung eines mittleren Referenzniveaus bei Operation 204 andeuten,
ist eine solche Berechnung nicht auf Mitteln beschränkt. Allgemeiner
können
die Referenzniveaus auf jegliche Weise mathematisch verarbeitet werden
(zum Beispiel statistisch verarbeitet), wie beispielsweise durch
Berechnung eines Minimums, eines Maximums, eines quadratischen Mittelwerts (RMS),
eines Scheitelpunkts, eines Mittels, eines Medians, eines Moduls
und/oder einer linearen Regression. Ungeachtet der mathematischen
Verarbeitung, die an den Referenzniveaus durchgeführt wird, werden
die Zustandsunterscheidungsniveaus danach basierend auf dem verarbeiteten
Referenzniveau ermittelt. Wie oben erwähnt, werden die Zustandsunterscheidungsniveaus
von dem Speichersystem zum Unterscheiden zwischen den verschiedenen
Zuständen,
die von den Datenspeichereinheiten mit mehreren Zuständen unterstützt werden,
verwendet.
-
Die
Leseanfrageverarbeitungen 200, 250 und 270,
die in 2A bzw. 2B bzw. 2C veranschaulicht
sind, beziehen sich im Allgemeinen auf die Verwendung eines einzelnen
Referenzniveaus, das von mehreren Referenzniveaus erhalten wurde,
die eigentlich dasselbe Niveau speichern. Allerdings sollte man
verstehen, dass die Leseanfrageverarbeitung zwei oder mehr Referenzniveaus
verwenden kann, um mehrere Zustandsunterscheidungsniveaus zu ermitteln,
die von dem Speicher mit mehreren Zuständen verwendet werden. Diesbezüglich werden
für jedes
der eingerichteten Referenzniveaus mehrere Referenzspeichereinheiten
verwendet, die das gleiche Referenzniveau speichern. Beispielsweise,
wenn die Referenzniveaus von den Referenzspeichereinheiten gelesen
werden, würde
eine erste Anzahl der Referenzspeichereinheiten einem ersten Referenzniveau
entsprechen, und eine zweite Anzahl von Referenzspeichereinheiten
würde ein zweites
Referenzniveau betreffen, usw., wenn mehr als zwei mittlere Referenzniveaus
verwendet werden. Das Ermitteln der Zustandsunterscheidungsniveaus
kann dann das eine oder mehrere Referenzniveaus verwenden. Alternativ
kann der gesamte Bestand von Referenzspeichereinheiten, die zum Überspannen
des Bereichs von Referenzniveaus eingerichtet sind, als ein Ensemble
statistisch verarbeitet werden, zum Beispiel unter Verwendung von
linearer Regressionsmethodik.
-
Gemäß einem
anderen Aspekt der Erfindung kann ein Speichersystem auch Fehlerkorrekturcodes (ECC)
beim Lesen von Daten verwenden. ECC ist bekannt und wird oft verwendet,
um zu ermöglichen, Daten
mit erhöhter
Zuverlässigkeit
zu lesen. ECC wird verwendet, um zu minimieren, wie oft die Qualitätsbewertung
und/oder eine Korrektur von Referenzniveaus durchgeführt werden
muss. Da die Qualitätsbewertung
und/oder die Korrekturverarbeitung Rechenleistung und Zeit benötigt, verringert
eine Minimierung ihrer Verwendung den Leistungsverlust, der durch
das Verarbeiten verursacht wird.
-
3 ist
ein Flussdiagramm einer Leseanfrageverarbeitung 300 gemäß einer
anderen Ausführungsform
der Erfindung. Die Leseanfrageverarbeitung 300 wird zum
Beispiel von einem Speichersystem durchgeführt, das Datenspeichereinheiten
mit mehreren Zuständen
aufweist, wenn ein Anforderer (zum Beispiel Host) ein Lesen von
Daten von Speicherstellen innerhalb des Speichersystems angefordert
hat.
-
Die
Leseanfrageverarbeitung 300 liest (202) anfänglich Referenzniveaus
von Referenzspeichereinheiten als auch Datenniveaus von Datenspeichereinheiten.
Hier werden die Referenzniveaus von den Referenzspeichereinheiten
gelesen, die den Datenspeichereinheiten zugeordnet sind, die die
Datenniveaus halten, die gelesen werden. Zusätzlich werden die Referenzniveaus
im Wesentlichen zur gleichen Zeit gelesen, zu der die Datenniveaus
gelesen werden. Die Referenzniveaus können einen oder mehrere Niveaus
betreffen. Bei einer Ausführungsform speichern
mehrere Referenzspeichereinheiten das gleiche Referenzniveau für eine verbesserte
Zuverlässigkeit.
Die Referenzspeichereinheiten werden beschrieben, gelöscht und
gelesen, wenn ihre zugeordneten Datenspeichereinheiten beschrie ben,
gelöscht
oder gelesen werden, und „verfolgen" somit die Verwendung
der zugeordneten Datenspeichereinheiten. Als ein Ergebnis entwickeln
die Referenzspeichereinheiten dieselbe Vorgeschichte und darum dieselben
Ladungsaufrechterhaltungseigenschaften wie die Datenspeichereinheiten.
Zusätzlich
erfahren die Referenzspeichereinheiten die gleichen Betriebsbedingungen,
wie beispielsweise Spannung und Temperatur, welche eine Zustandserkennung
beeinflussen können.
Folglich ist die Zuverlässigkeit
der Unterscheidung der Datenniveaus, die in den Datenspeichereinheiten
gespeichert sind, erhöht.
-
Als
nächstes
wird ein verarbeitetes Referenzniveaus berechnet (304).
Hier werden die Referenzniveaus, die gelesen werden (302),
zum Erstellen des verarbeiteten Referenzniveaus verarbeitet. Die
Berechnung (304) der Referenzniveaus beim Erstellen des
verarbeiteten Referenzniveaus kann auf jegliche Weise erreicht werden,
wie beispielsweise durch Berechnung eines Minimums, eines Maximums,
eines quadratischen Mittelwerts (RMS), eines Scheitelpunkts, eines
Mittels, eines Medians, eines Moduls und/oder einer linearen Regression.
Nachdem das verarbeitete Referenzniveau berechnet wurde (304),
werden Zustandsunterscheidungsniveaus ermittelt (306) basierend
auf dem verarbeiteten Referenzniveau. Wie oben erwähnt werden
die Zustandsunterscheidungsniveaus von dem Speichersystem zum Unterscheiden
zwischen den verschiedenen Zuständen,
die von den Datenspeichereinheiten mit mehreren Zuständen unterstützt werden,
verwendet.
-
Sobald
die Zustandsunterscheidungsniveaus ermittelt wurden (306),
können
die gelesenen Daten von den Datenniveaus unter Verwendung der Zustandsunterscheidungsniveaus
und Fehlerkorrekturcodes ermittelt werden (308). Hier werden
die vorher gelesenen Datenniveaus (Operation 302) untersucht,
um den Zu stand der Datenspeichereinheiten durch Verwendung der Zustandsunterscheidungsniveaus
zu ermitteln. Zusätzlich
wird ECC, das auch von dem Speichersystem bereitgestellt wird, verwendet,
um die gelesenen Daten zuverlässiger
zu ermitteln (308).
-
Als
nächstes
bestimmt eine Entscheidung (310) unter Verwendung des ECC,
ob ein Datenfehler beim Ermitteln (308) der gelesenen Daten
identifiziert wird. Typischerweise, wenn der ECC nicht fähig ist, zuverlässig die
gelesenen Daten zu ermitteln, deutet der ECC an, dass ein Datenfehler
vorhanden ist. Wenn die Entscheidung (310) ermittelt, dass
es keinen Datenfehler gibt, dann werden die gelesenen Daten zu dem
Anforderer gesendet (312). Andererseits, wenn die Entscheidung
(310) ermittelt, dass ein Datenfehler vorhanden ist, dann
kann die Qualitätsbewertung
und/oder die Korrektur an den Referenzniveaus in dem Bestreben durchgeführt werden,
den Datenfehler zu überwinden.
Insbesondere wird, wenn die Entscheidung (310) ermittelt,
dass ein Datenfehler vorhanden ist, die Qualität der Referenzniveaus bewertet
(314). Bei einer Ausführungsform wird
die Bewertung der Qualität
der Referenzniveaus typischerweise individuell an jedem der Referenzniveaus
durchgeführt.
Allerdings könnte
bei anderen Ausführungsformen
die Qualität
der Referenzniveaus stattdessen an zwei oder mehr der Referenzniveaus
als eine Gruppe durchgeführt
werden. Eine Entscheidung (316) ermittelt dann, ob die
Qualität
der Referenzniveaus akzeptabel ist. Wenn die Entscheidung (316)
ermittelt, dass die Qualität
nicht akzeptabel ist, dann arbeitet die Leseanfrageverarbeitung 300 zum
Korrigieren (318) der Referenzniveaus mit geringer Qualität. Hier
kann das Korrigieren (318) tätig werden, um eines oder mehrere
der Referenzniveaus, die eine geringe Qualität aufweisen, zu ändern oder
zu entfernen. Folgend auf die Operation 318 kehrt die Leseanfrageverarbeitung 300 zurück, um die
Operation 304 und folgende Operationen zu wiederholen,
so dass die Zustandsunterscheidungsniveaus wieder bestimmt und verwendet
werden können,
um die gelesenen Daten auf Basis der Referenzniveaus folgend auf
das Korrigieren (318) wieder zu ermitteln. Alternativ,
wenn die Entscheidung (316) ermittelt, dass die Qualität akzeptabel
ist, dann sind die gelesenen Daten fehlerbehaftet und somit wird ein
Datenlesefehler zu dem Anforderer gesendet (320). Typischerweise
ist der Anforderer eine Host-Vorrichtung, die das Speichersystem
verwendet. Folgend auf die Operationen 312 oder 320 ist
die Leseanfrageverarbeitung 300 vollständig und endet. Das in 2C gezeigte
Schleifensteuerungsmerkmal kann auch mit der Leseanfrageverarbeitung 300 verwendet
werden.
-
Es
sollte erwähnt
werden, dass bei dieser Ausführungsform
die Operationen 314–318 der
Leseanfrageverarbeitung 300 nur durchgeführt werden, wenn
der ECC einen Fehler beim Lesen der Daten aufzeigt. Als ein Ergebnis
werden mit einem optimal ausgestalteten System die Operationen 314–318 nur in
seltenen Fällen
durchgeführt.
Es erfolgt dann nur in seltenen Fällen, dass die Leseverarbeitungsleistung verlangsamt
oder verschlechtert wird aufgrund der Leistung der Qualitätsbewertung
und/oder Korrekturverarbeitung der Operationen 314–318.
-
Obwohl
vieles der oben bereitgestellten Erörterung der Erfindung Vorrichtungen
mit vielen Zuständen
betrifft, sollte es klar sein, dass die Erfindung auch auf binäre Speichervorrichtungen
anwendbar ist. Vorrichtungen mit mehreren Zuständen stellen allerdings eine
größere Speicherdichte
als binäre
Speichervorrichtungen bereit.
-
Die
Erfindung kann des Weiteren ein elektronisches System, das ein Speichersystem
wie oben erörtert
aufweist, betreffen. Speichersysteme (d. h. Speicherkarten) werden
allgemein zum Speichern digitaler Daten zur Verwendung mit verschiedenen elektronischen
Produkten verwendet. Oft ist das Speichersystem von dem elektronischen
System entfernbar, so dass die gespeicherten digitalen Daten tragbar
sind. Das erfindungsgemäße Speichersystem
kann einen relativ kleinen Formfaktor aufweisen und kann zum Speichern
digitaler Daten für
elektronische Produkte, wie beispielsweise Kameras, tragbare oder
Notebook-Computer, Netzwerkkarten, Netzwerkgeräte, Set-Top-Boxen, tragbare oder andere kleine Klangabspieler/Rekorder
(zum Beispiel MP3-Geräte)
und medizinischen Überwachungsgeräte verwendet
werden.
-
Die
Vorteile der Erfindung sind zahlreich. Verschiedene Ausführungsformen
oder Implementierungen können
einen oder mehrere der folgenden Vorteile ergeben. Ein Vorteil der
Erfindung ist, dass eine Fehlerbehandlung für Referenzniveaus bereitgestellt
wird. Ein anderer Vorteil der Erfindung ist, dass eine Fehlerbehandlung
für Referenzniveaus ohne
eine wesentliche Leistungseinbuße
durchgeführt
werden kann. Noch ein anderer Vorteil der Erfindung ist, dass zuverlässige, Hochleistungsspeichersysteme
erhalten werden können.
-
Die
vielen Merkmale und Vorteile der vorliegenden Erfindung sind aus
der schriftlichen Beschreibung ersichtlich, und somit wird mit den
beigefügten
Ansprüchen
beabsichtigt, alle solche Merkmale und Vorteile der Erfindung zu
erfassen. Des Weiteren, da zahlreiche Abwandlungen und Veränderungen
einem Fachmann leicht einfallen werden, sollte die Erfindung nicht
als beschränkt
auf die exakte Ausführung
und den exakten Betrieb wie beschrieben und veranschaulicht erachtet
werden.
-
Demzufolge
sind alle geeigneten Abwandlungen und Äquivalente im Umfang der Erfindung
inbegriffen, wie in den Ansprüchen
definiert.