DE102020106169A1 - METHOD OF OPERATING A STORAGE DEVICE, STORAGE DEVICE, AND DATA STORAGE DEVICE - Google Patents
METHOD OF OPERATING A STORAGE DEVICE, STORAGE DEVICE, AND DATA STORAGE DEVICE Download PDFInfo
- Publication number
- DE102020106169A1 DE102020106169A1 DE102020106169.2A DE102020106169A DE102020106169A1 DE 102020106169 A1 DE102020106169 A1 DE 102020106169A1 DE 102020106169 A DE102020106169 A DE 102020106169A DE 102020106169 A1 DE102020106169 A1 DE 102020106169A1
- Authority
- DE
- Germany
- Prior art keywords
- value
- comparison
- values
- status
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000013500 data storage Methods 0.000 title description 6
- 230000015654 memory Effects 0.000 claims abstract description 185
- 238000001514 detection method Methods 0.000 claims abstract description 52
- 238000012937 correction Methods 0.000 claims abstract description 41
- 239000003990 capacitor Substances 0.000 claims description 7
- 230000015572 biosynthetic process Effects 0.000 claims description 3
- 210000004027 cell Anatomy 0.000 description 166
- 238000009826 distribution Methods 0.000 description 42
- 238000005259 measurement Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009472 formulation Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/004—Reading or sensing circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1673—Reading or sensing circuits or methods
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
Es wird ein Verfahren zum Lesen einer Mehrzahl von Speicherzellen, in welchen ein mittels eines Fehlererkennungs- und/oder Fehlerkorrekturcodes gesichertes Datenwort gespeichert ist, bereitgestellt. Das Verfahren kann aufweisen, für jede der Speicherzellen, Vergleichen eines Zustandswerts der Speicherzelle oder eines von einem Zustandswert der Speicherzelle abgeleiteten Werts mit mehreren Vergleich-Zustandswerten, wobei jede der Speicherzellen mit denselben Vergleich-Zustandswerten verglichen wird, Bilden einer Mehrzahl von gelesenen Datenwörtern, wobei für jeden der Vergleich-Zustandswerte eines der gelesenen Datenwörter gebildet wird, und Anwenden des Fehlererkennungs- und/oder Fehlerkorrekturcodes zur Fehlererkennung auf eine Mehrzahl der gelesenen Datenwörter.A method is provided for reading a plurality of memory cells in which a data word secured by means of an error detection and / or error correction code is stored. The method can comprise, for each of the memory cells, comparing a status value of the memory cell or a value derived from a status value of the memory cell with a plurality of comparison status values, wherein each of the memory cells is compared with the same comparison status values, forming a plurality of read data words, wherein one of the read data words is formed for each of the comparison status values, and applying the error detection and / or error correction code for error detection to a plurality of the read data words.
Description
Technisches GebietTechnical area
Verschiedene Ausführungsformen betreffen im Allgemeinen ein Verfahren zum Betreiben einer Speichervorrichtung, eine Speichervorrichtung und eine Datenspeichereinrichtung.Various embodiments generally relate to a method of operating a storage device, a storage device, and a data storage device.
Hintergrundbackground
In
In der Ansicht
Allerdings ist der Abstand zwischen den Verteilungen, wie in der Ansicht
Im Stand der Technik wird beispielsweise mittels komplementären Speicherns/Lesens versucht, Lesefehlern vorzubeugen bzw. diese zu beheben. Dabei kann beispielsweise nur ein halbes Bit (statt einem Bit) pro Speicherzelle gespeichert werden. Dadurch wird allerdings doppelt so viel Speicherplatz benötigt, also ein 100%iger Overhead an benötigten Speicherzellen erzeugt. Auch andere herkömmliche Verfahren können einen stark erhöhten Bedarf an Speicherplatz haben und/oder technisch relativ aufwändig sein, wie beispielsweise ein genaues Abstimmen/Einstellen des Referenzstroms.In the prior art, attempts are made, for example, to prevent or correct read errors by means of complementary storage / reading. For example, only half a bit (instead of one bit) can be stored per memory cell. As a result, however, twice as much storage space is required, i.e. a 100% overhead of required storage cells is generated. Other conventional methods can also have a greatly increased requirement for storage space and / or be relatively complex technically, such as, for example, precise tuning / setting of the reference current.
KurzdarstellungBrief description
Es wird ein Verfahren zum Lesen einer Mehrzahl von Speicherzellen, in welchen ein mittels eines Fehlererkennungs- und/oder Fehlerkorrekturcodes (EDC bzw. ECC) gesichertes Datenwort gespeichert ist, bereitgestellt. Das Verfahren kann aufweisen, für jede der Speicherzellen, Vergleichen eines Zustandswerts der Speicherzelle oder eines von einem Zustandswert der Speicherzelle abgeleiteten Werts mit mehreren Vergleich-Zustandswerten, wobei jede der Speicherzellen mit denselben Vergleich-Zustandswerten verglichen wird, Bilden einer Mehrzahl von gelesenen Datenwörtern, wobei für jeden der Vergleich-Zustandswerte eines der gelesenen Datenwörter gebildet wird, und Anwenden des Fehlererkennungs- und/oder Fehlerkorrekturcodes zur Fehlererkennung auf eine Mehrzahl der gelesenen Datenwörter.A method is provided for reading a plurality of memory cells in which a data word secured by means of an error detection and / or error correction code (EDC or ECC) is stored. The method can comprise, for each of the memory cells, comparing a status value of the memory cell or a value derived from a status value of the memory cell with a plurality of comparison status values, wherein each of the memory cells is compared with the same comparison status values, forming a plurality of read data words, wherein one of the read data words is formed for each of the comparison status values, and applying the error detection and / or error correction code for error detection to a plurality of the read data words.
FigurenlisteFigure list
In den Zeichnungen beziehen sich gleiche Bezugszeichen im Allgemeinen alle verschiedenen Ansichten hindurch auf die gleichen Teile. Die Zeichnungen sind nicht unbedingt maßstabsgetreu, stattdessen ist der Akzent auf die Veranschaulichung der Prinzipien der Erfindung gesetzt. In der folgenden Beschreibung werden verschiedene Ausführungsformen der Erfindung unter Bezugnahme auf die folgenden Zeichnungen beschrieben, wobei:
-
1 schematische Ansichten von Verteilungen von Zellenstromwerten einer typischen Flash-Speichervorrichtung bzw. einer typischen RRAM-Speichervorrichtung darstellt; -
2A eine schematische Ansicht von Verteilungen von Zellenstromwerten einer RRAM-Speichervorrichtung zusammen mit einem Referenzstrom darstellt; -
2B eine schematische Ansicht von Verteilungen von Zellenstromwerten einer RRAM-Speichervorrichtung zusammen mit drei Referenzströmen, welche gemäß verschiedenen Ausführungsbeispielen beim Lesen bereitgestellt werden, darstellt; -
3 eine Veranschaulichung von Teilaspekten eines Lesevorgangs einer Speichervorrichtung gemäß verschiedenen Ausführungsformen darstellt; -
4 eine Veranschaulichung von Teilaspekten eines Lesevorgangs einer Speichervorrichtung gemäß verschiedenen Ausführungsformen darstellt; -
5 eine schematische Teilansicht einer Speichervorrichtung gemäß verschiedenen Ausführungsformen während eines Lesevorgangs darstellt; -
6 eine Veranschaulichung von Teilaspekten eines Lesevorgangs einer Speichervorrichtung gemäß verschiedenen Ausführungsformen darstellt; -
7 eine schematische Veranschaulichung einer Speichervorrichtung und ihrer Nutzung gemäß verschiedenen Ausführungsformen darstellt; -
8 eine schematische Ansicht einer Speichervorrichtung gemäß verschiedenen Ausführungsformen darstellt; und -
9 ein Flussdiagramm eines Verfahrens zum Lesen einer Mehrzahl von Speicherzellen gemäß verschiedenen Ausführungsformen darstellt.
-
1 Fig. 11 illustrates schematic views of distributions of cell current values of a typical flash memory device and a typical RRAM memory device, respectively; -
2A Fig. 3 is a schematic view of distributions of cell current values of an RRAM memory device together with a reference current; -
2 B shows a schematic view of distributions of cell current values of an RRAM memory device together with three reference currents which are provided during reading according to various exemplary embodiments; -
3 represents an illustration of partial aspects of a read operation of a memory device according to various embodiments; -
4th represents an illustration of partial aspects of a read operation of a memory device according to various embodiments; -
5 shows a schematic partial view of a memory device according to various embodiments during a read process; -
6th represents an illustration of partial aspects of a read operation of a memory device according to various embodiments; -
7th Figure 12 is a schematic illustration of a storage device and its usage in accordance with various embodiments; -
8th illustrates a schematic view of a memory device according to various embodiments; and -
9 illustrates a flow diagram of a method for reading a plurality of memory cells according to various embodiments.
Beschreibungdescription
Die folgende ausführliche Beschreibung nimmt auf die beiliegenden Zeichnungen Bezug, welche spezifische Einzelheiten und Ausführungsformen, in welchen die Erfindung realisiert werden kann, veranschaulichend darstellen.The following detailed description makes reference to the accompanying drawings, which illustrate specific details and embodiments in which the invention may be practiced.
Das Wort „beispielhaft“ wird hierin so verwendet, dass es „als Beispiel oder zur Veranschaulichung dienend“ bedeutet. Ausführungsformen oder Designs, die hierin als „beispielhaft“ beschrieben werden, sind nicht unbedingt als bevorzugt oder vorteilhaft gegenüber anderen Ausführungsformen oder Designs zu interpretieren.The word "exemplary" is used herein to mean "serving as an example or illustration". Embodiments or designs described herein as "exemplary" are not necessarily to be interpreted as preferred or advantageous over other embodiments or designs.
Verschiedene Aspekte der Offenbarung werden für Vorrichtungen bereitgestellt, und verschiedene Aspekte der Offenbarung werden für Verfahren bereitgestellt. Es versteht sich von selbst, dass die Grundeigenschaften der Vorrichtungen auch für die Verfahren gelten und umgekehrt. Daher wurde eine doppelte Beschreibung solcher Eigenschaften der Kürze halber möglicherweise unterlassen.Various aspects of the disclosure are provided for devices and various aspects of the disclosure are provided for methods. It goes without saying that the basic properties of the devices also apply to the method and vice versa. Therefore, a duplicate description of such properties may have been omitted for the sake of brevity.
In verschiedenen Ausführungsbeispielen werden ein Verfahren, das ein robustes und schnelles Lesen von Speicherzellen, die ein schmales Lesefenster haben, und eine entsprechende Speichervorrichtung bereitgestellt. Robust bedeutet hierbei, dass das Verfahren bzw. die Speichervorrichtung gemäß den Ausführungsbeispielen zumindest teilweise auch unter Bedingungen, die bei herkömmlichen Verfahren bzw. Vorrichtungen zu Lesefehlern führen würden, ein fehlerfreies Lesen ermöglichen.In various exemplary embodiments, a method that enables robust and rapid reading of memory cells that have a narrow reading window, and a corresponding memory device, are provided. In this context, robust means that the method or the storage device according to the exemplary embodiments enable error-free reading, at least in part, even under conditions which would lead to reading errors in conventional methods or devices.
Das fehlerfreie Lesen wird ermöglicht, indem ein mittels einer Lesevorrichtung (z.B. einem Leseverstärker) ausgegebener Zellenwert gleichzeitig, z.B. parallel, mit einer Mehrzahl von Referenzwerten verglichen wird, z.B. ein Zellenstrom mit einer Mehrzahl von Referenzströmen, ein entsprechender Zellen-Spannungswert mit einer Mehrzahl von Referenz-Spannungswerten oder eine entsprechende Zellen-Zeitdauer mit einer Mehrzahl von ReferenzZeitdauern. Anders ausgedrückt kann das Lesen des Zellenwerts basierend auf einer Strom- oder Spannungsmessung oder auf einem Vergleich von Zellen bzw. Zelleigenschaften im Zeitbereich (vereinfachend auch als „Zeitmessung“ bezeichnet) erfolgen.Error-free reading is made possible by comparing a cell value output by means of a reading device (e.g. a sense amplifier) simultaneously, e.g. in parallel, with a plurality of reference values, e.g. a cell current with a plurality of reference currents, a corresponding cell voltage value with a plurality of references Voltage values or a corresponding cell time period with a plurality of reference time periods. In other words, the reading of the cell value can be based on a current or voltage measurement or on a comparison of cells or cell properties in the time domain (also referred to as “time measurement” for simplicity).
Mittels Verwendens der Zeitmessung können besonders kostengünstige Ausführungsbeispiele bereitgestellt werden. Das heißt, dass mittels Verwendens mehrerer Zeit-Referenzwerte eine relativ einfache, mit geringem Aufwand zu verwirklichende Lösung für das Lesen nichtflüchtiger Speicher, die schnell gelesen werden müssen (welche beispielsweise zum Speichern von Programmcode genutzt werden) bereitgestellt werden kann.By using the time measurement, particularly cost-effective exemplary embodiments can be provided. This means that by using several time reference values, a relatively simple solution that can be implemented with little effort can be made available for reading non-volatile memories that have to be read quickly (which are used, for example, to store program code).
Bei Verwenden der Zeitmessung kann beispielsweise ein Flächen-Overhead minimiert werden, indem analoge Spannungs-/Stromkomparatoren mit hoher Auflösung (statisch/dynamisch) vermieden werden können.When using time measurement, for example, area overhead can be minimized by avoiding analog voltage / current comparators with high resolution (static / dynamic).
In verschiedenen Ausführungsbeispielen kann ein schneller Lesevorgang mit mehreren Referenzwerten für Speichervorrichtungen mit einem schmalen Lesefenster bereitgestellt werden.In various exemplary embodiments, a fast read process with multiple reference values can be provided for memory devices with a narrow read window.
Die im Folgenden beschriebenen Ausführungsbeispiele können eine Speichervorrichtung
In verschiedenen Ausführungsbeispielen kann die Speicherzelle ein Setzen/Differenzieren von drei oder mehr programmierbaren Pegeln ermöglichen. In dem Fall kann das Setzen/Differenzieren bereits gemäß einem Stand der Technik zwei oder mehr Referenzströme erfordern. Gemäß verschiedenen Ausführungsbeispielen, die hierin nicht detailliert ausgeführt werden, werden anstelle jedes dieser Referenzströme eine Mehrzahl von Referenzströmen zum parallelen Vergleichen des Zellenstromwerts bereitgestellt.In various exemplary embodiments, the memory cell can enable three or more programmable levels to be set / differentiated. In that case, the setting / differentiating can already require two or more reference currents according to a prior art. According to various exemplary embodiments, which are not explained in detail herein, a plurality of reference currents for parallel comparison of the cell current value are provided instead of each of these reference currents.
Eine allgemeinere Terminologie von „Speicherwert“ kann hierin anstelle von oder zusätzlich zu „Bitwert“ verwendet werden.More general terminology of “memory value” may be used herein in place of or in addition to “bit value”.
Zusätzlich sind in
Einige Eigenschaften der (Teil-)Verteilungen
Das kann, wie in
Für solche verschobenen (Teil-)Verteilungen
In verschiedenen Ausführungsbeispielen wird deshalb zusätzlich zu Iref mindestens ein weiterer Referenzwert bereitgestellt. In
In
Der Zellenstrom Icell kann allgemein als ein Zustandswert der Speicherzelle der aus einer Speicherzelle ausgelesen wird, bezeichnet werden. Es versteht sich, dass ein allgemeines Konzept, das hierin beschrieben wird, auch für andere Typen von Zustandswerten, z. B. Spannungen, Widerstandswerte usw., bzw. daraus abgeleiteten Werten gilt, insbesondere auch für die unten ausführlicher beschriebene Verwendung einer Zeitdauer, welche einen aus dem Zellenstrom abgeleiteten Wert darstellt, der dem Ermitteln des Programmierzustands der Zelle dient. Hierin ist im Folgenden zur Vereinfachung der Beschreibung die Zeitdauer mitunter bei den Zustandswerten der Speicherzelle mitgemeint. Das bedeutet, dass „Zustandswert der Speicherzelle“ als eine verkürzte Formulierung von „Zustandswert der Speicherzelle oder eines davon abgeleiteten Werts“ zu verstehen ist, es sei denn, es sei denn, die abgeleiteten Werte sind explizit genannt oder aus dem Kontext geht etwas anderes hervor. Analoges gilt für Plural-Formulierungen usw.The cell current Icell can generally be referred to as a state value of the memory cell that is read from a memory cell. It will be understood that a general concept described herein also applies to other types of state values, e.g. B. voltages, resistance values, etc., or values derived therefrom applies, in particular also to the use of a period of time, which is described in more detail below, which represents a value derived from the cell current and used to determine the programming state of the cell. In the following, in order to simplify the description, the duration is sometimes also meant for the state values of the memory cell. This means that “state value of the memory cell” is to be understood as an abbreviated formulation of “state value of the memory cell or a value derived therefrom”, unless the derived values are explicitly named or the context indicates otherwise . The same applies to plural formulations, etc.
Das ist zumindest teilweise in
Wie in
Referenzströme, Referenzspannungen, Referenzzeitdauern und ggf. andere als Referenz herangezogene Größen werden hierin allgemein als Vergleich-Zustandswerte bezeichnet, auch in dem Fall der Referenzzeitdauer, obwohl, wie oben ausgeführt, die Zeitdauer streng genommen kein Zustandswert der Speicherzelle ist, sondern ein daraus abgeleiteter Wert.Reference currents, reference voltages, reference time durations and possibly other variables used as reference are generally referred to herein as comparison status values, also in the case of the reference time duration, although, as explained above, the time duration is, strictly speaking, not a status value of the memory cell, but a value derived therefrom .
Das Zuordnen kann beispielsweise derart vorgenommen werden, dass der erste Speicherwert zugeordnet wird, wenn der Vergleich ergibt, dass der Zustandswert der Speicherzelle kleiner ist als der Vergleich-Zustandswert, und der zweite Speicherwert zugeordnet wird, wenn der Vergleich ergibt, dass der Zustandswert der Speicherzelle mindestens genauso groß ist wie der Vergleich-Zustandswert.The assignment can be made, for example, such that the first memory value is assigned when the comparison shows that the status value of the memory cell is less than the comparison status value, and the second memory value is assigned when the comparison shows that the status value of the memory cell is is at least as large as the comparison status value.
In verschiedenen Ausführungsbeispielen können die Vergleich-Zustandswerte (z.B. die Referenzströme Irefx) so gewählt sein, dass für alle oder im Wesentlichen alle vorgesehenen Betriebszustände und/oder Umgebungsbedingungen und dementsprechend erwartete verschobene (Teil-)Verteilungen von Zellen-Zustandswerten (z.B. der Zellenströme
Dementsprechend sollte zumindest für das Zuordnen des Zellenstroms zum Speicherwert, bei welchem dieser mindestens eine Vergleich-Zustandswert verwendet wird, der Speicherwert richtig zugeordnet werden.Accordingly, at least for the assignment of the cell current to the memory value in which this at least one comparison status value is used, the memory value should be assigned correctly.
In verschiedenen Ausführungsbeispielen kann die Mehrzahl der Vergleich-Zustandswerte eine ungerade Anzahl aufweisen, d.h. n kann ungerade sein, z.B. 3, 5, 7, oder mehr. Das ermöglicht beispielsweise, einen Standard-Vergleich-Zustandswert und auf beiden Seiten des Standard-Vergleich-Zustandswerts (d.h. zu höheren und zu niedrigeren Werten) jeweils gleich viele weitere Vergleich-Zustandswerte bereitzustellen. Anders ausgedrückt kann eine Anzahl derjenigen der weiteren Vergleich-Zustandswerte, die kleiner als der Standard-Vergleich-Zustandswert sind, gleich sein einer Anzahl derjenigen der weiteren Vergleich-Zustandswerte, die größer als der Standard-Vergleich-Zustandswert sind. Dabei kann der Standard-Vergleich-Zustandswert derjenige Zustandswert sein, der beim Lesen der Speicherzellen unter Standardbedingungen (z.B. einer erwarteten üblichen Betriebstemperatur, Betriebsspannung, usw.) einem Mittelwert von Zustandswerten entspricht, die für Speicherzellen in einem ersten Programmierzustand bzw. in einem zweiten Programmierzustand erwartet werden. Der Mittelwert kann z.B. ein arithmetisched Mittel aller Werte, ein arithmetisches Mittel der häufigsten Zustandswerte der Speicherzellen in einem ersten Programmierzustand bzw. in einem zweiten Programmierzustand, ein Median aller erwarteten Zustandswerte, oder eine andere geeignete Art von Mittelwert sein.In various embodiments, the majority of the comparison state values can have an odd number, i.e. n can be odd, e.g. 3, 5, 7, or more. This makes it possible, for example, to provide a standard comparison status value and an equal number of further comparison status values on both sides of the standard comparison status value (i.e. at higher and lower values). In other words, a number of those of the further comparison status values which are smaller than the standard comparison status value can be equal to a number of those of the further comparison status values which are greater than the standard comparison status value. The standard comparison status value can be that status value which, when reading the memory cells under standard conditions (e.g. an expected normal operating temperature, operating voltage, etc.) corresponds to an average value of status values for memory cells in a first programming state or in a second programming state to be expected. The mean value can be, for example, an arithmetic mean of all values, an arithmetic mean of the most frequent state values of the memory cells in a first programming state or in a second programming state, a median of all expected state values, or another suitable type of mean value.
In verschiedenen Ausführungsbeispielen kann die Mehrzahl der Vergleich-Zustandswerte eine gerade oder eine ungerade Anzahl aufweisen, d.h. n kann größer oder gleich zwei sein. Die Mehrzahl der Vergleich-Zustandswerte kann dabei z.B. einen Standard-Vergleich-Zustandswert und mindestens einen weiteren Vergleich-Zustandswert aufweisen, oder zwei oder mehr Vergleich-Zustandswerte, von denen keiner der Standard-Vergleich-Zustandswert ist, z.B. wenn die Standardbedingungen, z.B. Umgebungsbedingungen, nicht bekannt sind.In various exemplary embodiments, the majority of the comparison status values can have an even or an odd number, i.e. n can be greater than or equal to two. The majority of the comparison status values can have, for example, a standard comparison status value and at least one further comparison status value, or two or more comparison status values, none of which is the standard comparison status value, e.g. if the standard conditions, e.g. ambient conditions , are not known.
In verschiedenen Ausführungsbeispielen kann der mindestens eine weitere Vergleich-Zustandswert den Standard-Vergleich-Zustandswert und eine Mehrzahl weiterer Vergleich-Zustandswerte aufweisen, wobei eine größere Anzahl der weiteren Vergleich-Zustandswerte kleiner als der Standard-Vergleich-Zustandswert ist, und eine kleinere Anzahl der weiteren Vergleich-Zustandswerte größer ist als der Standard-Vergleich-Zustandswert, oder umgekehrt. Anders ausgedrückt können die Vergleich-Zustandswerte hinsichtlich ihrer Anzahl (ggf. auch hinsichtlich ihrer Abstände) unsymmetrisch um den Standard-Vergleich-Zustandswert verteilt sein. Bei der unsymmetrischen Anordnung der Vergleich-Zustandswerte in Bezug auf den Standard-Vergleich-Zustandswert kann beispielsweise berücksichtigt werden, welche(r) Betriebsbedingung(en) zusätzlich zu den Standardbedingungen am wahrscheinlichsten auftritt bzw. auftreten werden. Wenn beispielsweise zu erwarten ist, dass die Speichervorrichtung entweder bei Standardbedingungen oder bei höheren Umgebungstemperaturen betrieben wird, was bedeutet, dass die erwarteten Verteilungen der Zustandswerte
Allgemeiner ausgedrückt kann ein so genannter Offset-Zustandswert einem Mittelwert von Zustandswerten entsprechen, die beim Lesen der Speicherzellen unter anderen als den Standardbedingungen für Speicherzellen in einem ersten Programmierzustand bzw. in einem zweiten Programmierzustand erwartet werden, wobei die größere Anzahl der weiteren Vergleich-Zustandswerte kleiner als der Standard-Vergleich-Zustandswert ist, wenn der Offset-Zustandswert kleiner als der Standard-Zustandswert ist, und wobei die größere Anzahl der weiteren Vergleich-Zustandswerte größer als der Standard-Vergleich-Zustandswert ist, wenn der Offset-Zustandswert größer als der Standard-Zustandswert ist.In more general terms, what is known as an offset state value can correspond to an average value of state values that are expected when reading the memory cells under conditions other than the standard conditions for memory cells in a first programming state or in a second programming state, the larger number of further comparison state values being smaller than the standard comparison status value if the offset status value is smaller than the standard status value, and wherein the greater number of further comparison status values is greater than the standard comparison status value if the offset status value is greater than the The default status value is.
Eine Differenz zwischen dem Standard-Vergleich-Zustandswert und dem mindestens einen weiteren Vergleich-Zustandswert kann in verschiedenen Ausführungsbeispielen größer sein als ein Zehntel, z.B. größer als ein Siebtel, z.B. größer als ein Fünftel, der Differenz der Zustandswerte, die für Speicherzellen in einem ersten Programmierzustand bzw. in einem zweiten Programmierzustand erwartet werden.A difference between the standard comparison status value and the at least one further comparison status value can be greater than a tenth, for example greater than a seventh, for example greater than a fifth, of the difference in the status values for memory cells in a first Programming state or are expected in a second programming state.
Allgemein können in verschiedenen Ausführungsbeispielen Differenzen zwischen jedem der Vergleich-Zustandswerte und seinen benachbarten Vergleich-Zustandswerten gleich sein, also die Mehrzahl von Vergleich-Zustandswerten (einschließlich eines Standard-Vergleich-Zustandswertes, oder ohne dass ein solcher verwendet wird) äquidistant verteilt sein, oder die Differenzen können variieren. Beispielsweise können die Differenzen in einem Bereich (in dem z.B. ein Offset-Zustandswert erwartet werden kann) kleiner sein, die Vergleich-Zustandswerte also dichter angeordnet sein, und in einem weiteren Bereich größer sein, die Vergleich-Zustandswerte also weniger dicht angeordnet sein.In general, in various exemplary embodiments, differences between each of the comparison status values and its neighboring comparison status values can be the same, that is to say the plurality of comparison status values (including a standard comparison status value, or without such being used) can be distributed equidistantly, or the differences can vary. For example, the differences can be smaller in one area (in which, for example, an offset status value can be expected), i.e. the comparison status values are arranged more densely, and larger in a further area, the comparison status values can therefore be arranged less densely.
In verschiedenen Ausführungsbeispielen kann zumindest einer der zugeordneten Speicherwerte
In verschiedenen Ausführungsbeispielen kann ein wortweises Lesen in Kombination mit der EDC-/ECC-Datensicherung genutzt werden, um zu ermitteln, welcher der zugeordneten Speicherwerte
In verschiedenen Ausführungsbeispielen kann, wie in
Anschaulich beschrieben kann beim wortweisen Lesen mittels mehrerer Vergleich-Zustandswerte parallel eine Mehrzahl von gelesenen Datenwörtern gebildet werden, wobei für jeden der Vergleich-Zustandswerte ein zugehöriges gelesenes Datenwort gebildet wird. Dabei kann jedes gelesene Datenwort für jede der Speicherzellen eine zugeordnete Dateneinheit enthalten. Jeder der Dateneinheiten wird einer von mehreren Speicherwerten zugeordnet (z.B. 0 oder 1) basierend auf dem Vergleich des Zustandswerts der zugeordneten Speicherzelle mit dem für das Datenwort genutzten Vergleich-Zustandswert.Described clearly, when reading word by word by means of several comparison status values, a plurality of read data words can be formed in parallel, an associated read data word being formed for each of the comparison status values. Each read data word can contain an assigned data unit for each of the memory cells. Each of the data units is assigned one of several memory values (e.g. 0 or 1) based on the comparison of the status value of the assigned memory cell with the comparison status value used for the data word.
Anders ausgedrückt kann das Verfahren das oben beschriebene Vergleichen eines Zustandswerts der Speicherzelle mit einer Mehrzahl von Vergleich-Zustandswerten (z.B. Irefx) aufweisen, wobei das Vergleichen für jede der (im Beispiel m) Speicherzellen, in denen ein Teil des Wortes gespeichert ist, erfolgt, und jede der Speicherzellen mit derselben Mehrzahl von Vergleich-Zustandswerten (z.B. Irefx) verglichen wird, und jedes der Vergleichsergebnisse als eine Dateneinheit des mittels des zugehörigen Vergleich-Zustandsworts gebildeten Datenworts gespeichert wird.In other words, the method can include the above-described comparison of a status value of the memory cell with a plurality of comparison status values (eg Iref x ), the comparison being carried out for each of the (in the example m) memory cells in which a part of the word is stored , and each of the memory cells is compared with the same plurality of comparison status values (for example Iref x ), and each of the comparison results is stored as a data unit of the data word formed by means of the associated comparison status word.
Das Vergleichen kann zum Bilden einer Mehrzahl von gelesenen Datenwörtern 336Wx führen (im Beispiel 336W0, 336W1 und 336W2) mittels Zuordnens, für jede der Speicherzellen und für jeden der Vergleich-Zustandswerte, des ersten oder des zweiten Speicherwertes zu der Speicherzelle basierend auf dem Vergleich. Mittels des Zuordnens wird dabei jeweils eine der Dateneinheiten
In verschiedenen Ausführungsbeispielen können auf die so gebildeten Datenwörter
In verschiedenen Ausführungsbeispielen können die Fehlererkennungs- und/oder Fehlerkorrekturcodes zunächst nur zur Fehlererkennung angewendet werden, z.B. parallel für mindestens zwei der Vergleich-Zustandswerte, z.B. für alle Zustandswerte. Sofern mindestens eines der gelesenen Datenwörter
Sofern die Fehlererkennung noch nicht auf alle Datenwörter 336x angewendet wurde, die aus demselben gespeicherten Datenwort mittels der unterschiedlichen Vergleich-Zustandswerte gebildet wurden, kann bei Nichtvorliegen eines fehlerfreien gelesenen Datenworts auf die weiteren gelesenen Datenwörter die Fehlererkennung angewandt werden, und/oder - parallel mit der weiteren Fehlererkennung oder in einem Anschluss dazu, z.B. falls kein fehlerfreies gelesenes Datenwort 336x identifiziert wird, mindestens eines der Datenwörter, bei welchem ausschließlich korrigierbare Fehler vorliegen, korrigiert werden und als Ausgabe-Datenwort
Das Ausführen der Fehlererkennung kann in verschiedenen Ausführungsbeispielen wesentlich schneller ablaufen als das Korrigieren der korrigierbaren Fehler, so dass das Auffinden fehlerfreier gelesener Datenwörter ggf. schneller erfolgen kann als das Korrigieren von mit korrigierbaren Fehlern behafteten gelesenen Datenwörtern.In various exemplary embodiments, the execution of the error detection can proceed significantly faster than the correction of the correctable errors, so that the finding of error-free read data words can possibly take place faster than the correction of read data words afflicted with correctable errors.
Die Anwendung der Fehlererkennungs- und/oder Fehlerkorrekturcodes kann, beispielsweise bei Vorliegen einer Rangfolge, z.B. wenn ein Standard-Vergleich-Zustandswert verwendet wird, sequenziell und abhängig von zumindest einem Ergebnis der ersten Fehlererkennung/Fehlerkorrektur erfolgen, ggf. auch abhängig von den weiteren Ergebnissen. Eine solche Vorgehensweise ist in der folgenden Tabelle veranschaulicht:
Sofern bei Verwendung des Standard-Vergleichsstroms
In verschiedenen Ausführungsbeispielen, beispielsweise wenn kein Standard-Vergleich-Zustandswert vorliegt, oder auch trotz des Vorliegens eines solchen Standard-Vergleich-Zustandswerts, kann die Fehlererkennung/Fehlerkorrektur parallel, oder zumindest ohne dass eine Abhängigkeit von einem oder mehreren der Ergebnisse der Fehlererkennung/Fehlerkorrektur besteht, für alle gelesenen Datenwörter
Wie in
Die Prioritäten-Tabelle
In verschiedenen Ausführungsbeispielen kann die Vorgehensweise so beschrieben werden, dass mit oder nach dem Anwenden des Fehlererkennungs- und/oder Fehlerkorrekturcodes auf ein erstes der gelesenen Datenwörter bei Fehlerfreiheit des ersten gelesenen Datenworts ein Ausgeben des fehlerfreien ersten gelesenen Datenworts ausgeführt wird, bei Vorliegen ausschließlich korrigierbarer Fehler beim ersten gelesenen Datenwort ein Korrigieren des ersten gelesenen Datenworts und ein Ausgeben des korrigierten ersten gelesenen Datenworts ausgeführt wird, oder, bei Vorliegen mindestens eines nicht korrigierbaren Fehlers beim ersten gelesenen Datenwort, der Fehlererkennungs- und/oder Fehlerkorrekturcode auf ein zweites der gelesenen Datenwörter ausgeführt wird, wobei bei Fehlerfreiheit des zweiten gelesenen Datenworts dieses ausgegeben wird. Dabei kann das Anwenden des Fehlererkennungs- und/oder Fehlerkorrekturcodes auf des erste der gelesenen Datenwörter und das zweite der gelesenen Datenwörter (und, sofern vorhanden, weitere der gelesenen Datenwörter) in verschiedenen Ausführungsbeispielen grundsätzlich immer erfolgen. In verschiedenen Ausführungsbeispielen kann das Anwenden des Fehlererkennungs- und/oder Fehlerkorrekturcodes auf das zweite der gelesenen Datenwörter (und, sofern vorhanden, weitere der gelesenen Datenwörter) nur bei Bedarf ausgeführt werden.In various exemplary embodiments, the procedure can be described in such a way that, with or after applying the error detection and / or error correction code to a first of the read data words, if the first read data word is free from errors, the first read data word is output without errors, if only correctable errors are present the first read data word is corrected for the first read data word and the corrected first read data word is output, or, if there is at least one uncorrectable error in the first read data word, the error detection and / or error correction code is executed on a second of the read data words , whereby if the second read data word is free of errors, this is output. The application of the error detection and / or error correction code to the first of the read data words and the second of the read data words (and, if available, further of the read data words) can in principle always take place in various exemplary embodiments. In various exemplary embodiments, the application of the error detection and / or error correction code to the second of the read data words (and, if present, further of the read data words) can only be carried out when required.
In verschiedenen Ausführungsbeispielen kann bei Verwendung der Zeitdauer als Vergleich-Zustandswert ein geringer zusätzlicher Platzbedarf (z.B. Halbleiterflächenbedarf) bei der Speichervorrichtung verwirklicht werden.In various exemplary embodiments, when the duration is used as the comparison status value, a small additional space requirement (for example semiconductor area requirement) can be achieved in the memory device.
In
Die in
Die Speichervorrichtung
Die Speichervorrichtung
Die Speichervorrichtung
Der mindestens eine Logikschaltkreis
Die Speichervorrichtung
Das Verfahren kann aufweisen, Vergleichen eines Zustandswerts der Speicherzelle mit mehreren Vergleich-Zustandswerten, wobei jede der Speicherzellen mit denselben Vergleich-Zustandswerten verglichen wird (bei
Im Folgenden werden zusammenfassend einige Ausführungsbeispiele angegeben.Some exemplary embodiments are summarized below.
Ausführungsbeispiel 1 ist ein Verfahren zum Lesen einer Mehrzahl von Speicherzellen, in welchen ein mittels eines Fehlererkennungs- und/oder Fehlerkorrekturcodes gesichertes Datenwort gespeichert ist. Das Verfahren kann aufweisen, für jede der Speicherzellen, Vergleichen eines Zustandswerts der Speicherzelle oder eines von einem Zustandswert der Speicherzelle abgeleiteten Werts mit mehreren Vergleich-Zustandswerten, wobei jede der Speicherzellen mit denselben Vergleich-Zustandswerten verglichen wird, Bilden einer Mehrzahl von gelesenen Datenwörtern, wobei für jeden der Vergleich-Zustandswerte eines der gelesenen Datenwörter gebildet wird, Anwenden des Fehlererkennungs- und/oder Fehlerkorrekturcodes zur Fehlererkennung auf eine Mehrzahl der gelesenen Datenwörter.
Ausführungsbeispiel 2 ist ein Verfahren gemäß Ausführungsbeispiel 1, welches ferner bei Fehlerfreiheit eines der gelesenen Datenwörter ein Ausgeben des fehlerfreien gelesenen Datenworts aufweist, anderenfalls bei Vorliegen ausschließlich korrigierbarer Fehler bei mindestens einem der gelesenen Datenwörter ein Korrigieren von mindestens einem der gelesenen Datenwörter und Ausgeben des korrigierten gelesenen Datenworts aufweist.
Ausführungsbeispiel 3 ist ein Verfahren gemäß Ausführungsbeispiel 1 oder 2, wobei das Vergleichen als paralleles Vergleichen des Zustandswerts oder des von dem Zustandswert der Speicherzelle abgeleiteten Werts jeweils einer der Speicherzellen mit jedem der Vergleich-Zustandswerte erfolgt.Embodiment 3 is a method in accordance with
Ausführungsbeispiel 4 ist ein Verfahren gemäß einem der Ausführungsbeispiele 1 bis 3, wobei der Zustandswert oder der von dem Zustandswert der Speicherzelle abgeleitete Wert ein Wert ist, der mittels eines Programmierens der Speicherzelle änderbar ist.Embodiment 4 is a method in accordance with one of the
Ausführungsbeispiel 5 ist ein Verfahren gemäß einem der Ausführungsbeispiele 1 bis 4, wobei der Zustandswert einen Strom oder eine Spannung oder der von dem Zustandswert der Speicherzelle abgeleitete Wert eine Zeitdauer aufweist.Embodiment 5 is a method in accordance with one of the
Ausführungsbeispiel 6 ist ein Verfahren gemäß einem der Ausführungsbeispiele 1 bis 5, wobei das Zuordnen derart vorgenommen wird, dass ein erster Speicherwert zugeordnet wird, wenn der Vergleich ergibt, dass der Zustandswert der Speicherzelle oder der von dem Zustandswert der Speicherzelle abgeleitete Wert kleiner ist als der Vergleich-Zustandswert, und ein zweiter Speicherwert zugeordnet wird, wenn der Vergleich ergibt, dass der Zustandswert der Speicherzelle oder der von dem Zustandswert der Speicherzelle abgeleitete Wert mindestens genauso groß ist wie der Vergleich-Zustandswert.Embodiment 6 is a method in accordance with one of the
Ausführungsbeispiel 7 ist ein Verfahren gemäß einem der Ausführungsbeispiele 1 bis 6, wobei die mehreren Vergleich-Zustandswerte eine ungerade Anzahl aufweisen.Embodiment 7 is a method in accordance with one of the
Ausführungsbeispiel 8 ist ein Verfahren gemäß einem der Ausführungsbeispiele 1 bis 6, wobei die Mehrzahl der Vergleich-Zustandswerte mindestens drei Vergleich-Zustandswerte aufweist.Embodiment 8 is a method in accordance with one of the
Ausführungsbeispiel 9 ist ein Verfahren gemäß einem der Ausführungsbeispiele 1 bis 8, wobei die mehreren Vergleich-Zustandswerte einen Standard-Vergleich-Zustandswert und mindestens einen weiteren Vergleich-Zustandswert aufweisen, wobei der Standard-Vergleich-Zustandswert festgelegt ist als derjenige Zustandswert, der beim Lesen der Speicherzellen unter Standardbedingungen einem optimalen Zustandswert, z.B. einem Mittelwert von Zustandswerten, entspricht, die für Speicherzellen in einem ersten Programmierzustand bzw. in einem zweiten Programmierzustand erwartet werden, wobei optional beim Festlegen des Standard-Vergleich-Zustandswerts ein Alter der Speicherzellen, Bedingungen (z.B.), unter welchen sie gelagert wurden und mögliche weitere Faktoren, welche den erwarteten Zustandswert beeinflussen können, berücksichtigt werden.Embodiment 9 is a method in accordance with one of the
Ausführungsbeispiel 10 ist ein Verfahren gemäß Ausführungsbeispiel 9, wobei der mindestens eine weitere Vergleich-Zustandswert eine Mehrzahl weiterer Vergleich-Zustandswerte aufweist, wobei eine Anzahl derjenigen der weiteren Vergleich-Zustandswerte, die kleiner als der Standard-Vergleich-Zustandswert sind, gleich ist einer Anzahl derjenigen der weiteren Vergleich-Zustandswerte, die größer als der Standard-Vergleich-Zustandswert sind.
Ausführungsbeispiel 11 ist ein Verfahren gemäß Ausführungsbeispiel 9, wobei der mindestens eine weitere Vergleich-Zustandswert eine Mehrzahl weiterer Vergleich-Zustandswerte aufweist, wobei eine größere Anzahl der weiteren Vergleich-Zustandswerte kleiner als der Standard-Vergleich-Zustandswert ist, und eine kleinere Anzahl der weiteren Vergleich-Zustandswerte größer ist als der Standard-Vergleich-Zustandswert, oder umgekehrt.
Ausführungsbeispiel 12 ist ein Verfahren gemäß Ausführungsbeispiel 11, wobei ein Offset-Zustandswert einem Mittelwert von Zustandswerten oder davon abgeleiteten Werten entspricht, die beim Lesen der Speicherzellen unter anderen als den Standardbedingungen für Speicherzellen in einem ersten Programmierzustand bzw. in einem zweiten Programmierzustand erwartet werden, wobei die größere Anzahl der weiteren Vergleich-Zustandswerte kleiner als der Standard-Vergleich-Zustandswert ist, wenn der Offset-Zustandswert kleiner als der Standard-Zustandswert ist, und wobei die größere Anzahl der weiteren Vergleich-Zustandswerte größer als der Standard-Vergleich-Zustandswert ist, wenn der Offset-Zustandswert größer als der Standard-Zustandswert ist.Embodiment 12 is a method in accordance with
Ausführungsbeispiel 13 ist ein Verfahren gemäß einem der Ausführungsbeispiele 9 bis 12, wobei eine Differenz zwischen dem Standard-Vergleich-Zustandswert und dem mindestens einen weiteren Vergleich-Zustandswert größer ist als beispielsweise ein Zehntel der Differenz der Zustandswerte, die für Speicherzellen in einem ersten Programmierzustand bzw. in einem zweiten Programmierzustand erwartet werden.Embodiment 13 is a method according to one of the embodiments 9 to 12, wherein a difference between the standard comparison status value and the at least one further comparison status value is greater than, for example, a tenth of the difference in the status values that are required for memory cells in a first programming state or respectively are expected in a second programming state.
Ausführungsbeispiel 14 ist ein Verfahren gemäß einem der Ausführungsbeispiele 5 bis 13, wobei der vom Zustandswert abgeleitete Wert die Zeitdauer aufweist, und wobei das Vergleichen des Zustandswerts der Speicherzelle mit der Mehrzahl von Vergleich-Zustandswerten aufweist: Integrieren eines Zellstroms der Speicherzelle bis zu einem vorbestimmten Zielwert, Ermitteln der Zeitdauer, die für das Erreichen des vorbestimmten Zielwerts benötigt wurde, Integrieren einer Mehrzahl von Vergleichsströmen, wobei jeder der Vergleich-Zustandswerte diejenige Vergleich-Zeitdauer ist, die einer der integrierten Vergleichsströme zum Erreichen des vorbestimmten Zielwerts benötigt, und, für jede der Vergleich-Zeitdauern, Ermitteln, ob die Zeitdauer kleiner oder größer als die Vergleich-Zeitdauer ist.Embodiment 14 is a method in accordance with one of the embodiments 5 to 13, wherein the value derived from the state value has the duration, and wherein the comparison of the state value of the memory cell with the plurality of comparison state values comprises: integrating a cell current of the memory cell up to a predetermined target value Determination of the period of time which was required for reaching the predetermined target value, integrating a plurality of comparison currents, each of the comparison status values being that comparison time period which one of the integrated comparison currents requires to achieve the predetermined target value, and, for each of the Comparison periods, determining whether the period is less than or greater than the comparison period.
Ausführungsbeispiel 15 ist ein Verfahren gemäß einem der Ausführungsbeispiele 1 bis 14, welches ferner, bei Fehlerfreiheit von mindestens zwei der gelesenen Datenwörter, ein Vergleichen der mindestens zwei fehlerfreien gelesenen Datenwörter und ein Ausgeben eines Alarms, wenn das Vergleichen ergibt, dass die mindestens zwei fehlerfreien gelesenen Datenwörter ungleich sind, aufweist.Embodiment 15 is a method according to one of the
Ausführungsbeispiel 16 ist ein Verfahren gemäß einem der Ausführungsbeispiele 1 bis 14, welches ferner, bei Vorliegen ausschließlich korrigierbarer Fehler bei mindestens zwei der gelesenen Datenwörter, ein Korrigieren von mindestens zwei der gelesenen korrigierbaren Datenwörter und Vergleichen der mindestens zwei korrigierten gelesenen Datenwörter und ein Ausgeben eines Alarms, wenn das Vergleichen ergibt, dass die mindestens zwei korrigierten gelesenen Datenwörter ungleich sind, aufweist.Embodiment 16 is a method according to one of the
Ausführungsbeispiel 17 ist ein Verfahren gemäß Ausführungsbeispiel 15 oder 16, wobei das Vergleichen mittels einer XOR-Funktion erfolgt.Embodiment 17 is a method according to embodiment 15 or 16, the comparison being carried out by means of an XOR function.
Ausführungsbeispiel 18 ist eine Speichervorrichtung. Die Speichervorrichtung kann eine Mehrzahl von Speicherzellen aufweisen, welche eingerichtet sind zum Speichern eines mittels eines Fehlererkennungs- und/oder Fehlerkorrekturcodes gesicherten Datenworts, eine Mehrzahl von Leseverstärkern, welche eingerichtet sind, Zustandswerte der Speicherzellen und Vergleich-Zustandswerte bereitzustellen, und mindestens einen Logikschaltkreis, welcher eingerichtet ist, für jede der Speicherzellen einen Zustandswert der Speicherzelle oder einen von einem Zustandswert der Speicherzelle abgeleiteten Wert mit mehreren Vergleich-Zustandswerten zu vergleichen, wobei jede der Speicherzellen mit denselben Vergleich-Zustandswerten verglichen wird, eine Mehrzahl von gelesenen Datenwörtern zu bilden, wobei für jeden der Vergleich-Zustandswerte eines der gelesenen Datenwörter gebildet wird, und die Fehlererkennungs- und/oder Fehlerkorrekturcodes zur Fehlererkennung auf eine Mehrzahl der gelesenen Datenwörter anzuwenden.Embodiment 18 is a storage device. The memory device can have a plurality of memory cells which are set up to store a data word secured by means of an error detection and / or error correction code, a plurality of sense amplifiers which are set up to provide status values of the memory cells and comparison status values, and at least one logic circuit which is set up to compare a status value of the memory cell or a value derived from a status value of the memory cell with a plurality of comparison status values for each of the memory cells, wherein each of the memory cells is compared with the same comparison status values, to form a plurality of read data words, wherein for each of the comparison status values of one of the read data words is formed, and the error detection and / or error correction codes for error detection are applied to a plurality of the read data words.
Ausführungsbeispiel 19 ist eine Speichervorrichtung gemäß Ausführungsbeispiel 18, welche ferner aufweist, bei Fehlerfreiheit eines der gelesenen Datenwörter das fehlerfreie gelesene Datenwort auszugeben, anderenfalls bei Vorliegen ausschließlich korrigierbarer Fehler bei mindestens einem der gelesenen Datenwörter mindestens eines der gelesenen Datenwörter zu korrigieren und das korrigierte gelesene Datenwort auszugeben.Embodiment 19 is a memory device according to embodiment 18, which furthermore has to output the error-free read data word if one of the read data words is free of errors, otherwise if only correctable errors are present in at least one of the read data words Correct data words at least one of the read data words and output the corrected read data word.
Ausführungsbeispiel 20 ist eine Speichervorrichtung gemäß Ausführungsbeispiel 18 oder 19, wobei das Vergleichen als paralleles Vergleichen des Zustandswerts oder des vom Zustandswert abgeleiteten Werts jeweils einer der Speicherzellen mit jedem der Vergleich-Zustandswerte erfolgt.Embodiment 20 is a memory device according to embodiment 18 or 19, the comparison taking place as a parallel comparison of the status value or the value derived from the status value of one of the memory cells with each of the comparison status values.
Ausführungsbeispiel 21 ist eine Speichervorrichtung gemäß einem der Ausführungsbeispiele 18 bis 20, wobei der Zustandswert oder der vom Zustandswert abgeleitete Wert ein Wert ist, der mittels eines Programmierens der Speicherzelle änderbar ist.
Ausführungsbeispiel 22 ist eine Speichervorrichtung gemäß einem der Ausführungsbeispiele 18 bis 21, wobei der Zustandswert einen Strom oder eine Spannung oder der vom Zustandswert abgeleitete Wert eine Zeitdauer aufweist.Embodiment 22 is a memory device according to one of the embodiments 18 to 21, wherein the status value has a current or a voltage or the value derived from the status value has a duration.
Ausführungsbeispiel 23 ist eine Speichervorrichtung gemäß einem der Ausführungsbeispiele 18 bis 22, wobei der Logikschaltkreis eingerichtet ist, das Zuordnen derart vorzunehmen, dass ein erster Speicherwert zugeordnet wird, wenn der Vergleich ergibt, dass der Zustandswert der Speicherzelle oder der vom Zustandswert abgeleitete Wert kleiner ist als der Vergleich-Zustandswert, und ein zweiter Speicherwert zugeordnet wird, wenn der Vergleich ergibt, dass der Zustandswert der Speicherzelle oder der vom Zustandswert abgeleitete Wert mindestens genauso groß ist wie der Vergleich-Zustandswert.Embodiment 23 is a memory device according to one of the embodiments 18 to 22, wherein the logic circuit is set up to undertake the assignment in such a way that a first memory value is assigned if the comparison shows that the state value of the memory cell or the value derived from the state value is less than the comparison status value and a second memory value is assigned if the comparison shows that the status value of the memory cell or the value derived from the status value is at least as large as the comparison status value.
Ausführungsbeispiel 24 ist eine Speichervorrichtung gemäß einem der Ausführungsbeispiele 18 bis 23, wobei die mehreren Vergleich-Zustandswerte eine ungerade Anzahl aufweisen.Embodiment 24 is a memory device in accordance with one of the embodiments 18 to 23, wherein the plurality of comparison state values have an odd number.
Ausführungsbeispiel 25 ist eine Speichervorrichtung gemäß einem der Ausführungsbeispiele 18 bis 24, wobei die mehreren Vergleich-Zustandswerte mindestens drei Vergleich-Zustandswerte aufweisen.
Ausführungsbeispiel 26 ist eine Speichervorrichtung gemäß einem der Ausführungsbeispiele 18 bis 24, wobei die mehreren Vergleich-Zustandswerte einen Standard-Vergleich-Zustandswert und mindestens einen weiteren Vergleich-Zustandswert aufweisen, und wobei der Standard-Vergleich-Zustandswert festgelegt ist als derjenige Zustandswert bzw. davon abgeleiteter Wert, der beim Lesen der Speicherzellen unter Standardbedingungen einem Mittelwert von Zustandswerten entspricht, die für Speicherzellen in einem ersten Programmierzustand bzw. in einem zweiten Programmierzustand erwartet werden.Embodiment 26 is a memory device according to one of the embodiments 18 to 24, wherein the multiple comparison status values have a standard comparison status value and at least one further comparison status value, and the standard comparison status value is defined as that status value or one thereof Derived value which, when reading the memory cells under standard conditions, corresponds to an average value of state values which are expected for memory cells in a first programming state or in a second programming state.
Ausführungsbeispiel 27 ist eine Speichervorrichtung gemäß Ausführungsbeispiel 26, wobei der mindestens eine weitere Vergleich-Zustandswert eine Mehrzahl weiterer Vergleich-Zustandswerte aufweist, wobei eine Anzahl derjenigen der weiteren Vergleich-Zustandswerte, die kleiner als der Standard-Vergleich-Zustandswert sind, gleich ist einer Anzahl derjenigen der weiteren Vergleich-Zustandswerte, die größer als der Standard-Vergleich-Zustandswert sind.Embodiment 27 is a memory device according to embodiment 26, the at least one further comparison status value having a plurality of further comparison status values, a number of those of the further comparison status values that are smaller than the standard comparison status value being equal to a number those of the further comparison status values which are greater than the standard comparison status value.
Ausführungsbeispiel 28 ist eine Speichervorrichtung gemäß Ausführungsbeispiel 26, wobei der mindestens eine weitere Vergleich-Zustandswert eine Mehrzahl weiterer Vergleich-Zustandswerte aufweist, wobei eine größere Anzahl der weiteren Vergleich-Zustandswerte kleiner als der Standard-Vergleich-Zustandswert ist, und eine kleinere Anzahl der weiteren Vergleich-Zustandswerte größer ist als der Standard-Vergleich-Zustandswert, oder umgekehrt.Embodiment 28 is a storage device according to embodiment 26, the at least one further comparison status value having a plurality of further comparison status values, a larger number of the further comparison status values being smaller than the standard comparison status value, and a smaller number of the further comparison status values Comparison status values is greater than the standard comparison status value, or vice versa.
Ausführungsbeispiel 29 ist eine Speichervorrichtung gemäß Ausführungsbeispiel 28, wobei ein Offset-Zustandswert einem Mittelwert von Zustandswerten oder davon abgeleiteten Werten entspricht, die beim Lesen der Speicherzellen unter anderen als den Standardbedingungen für Speicherzellen in einem ersten Programmierzustand bzw. in einem zweiten Programmierzustand erwartet werden, wobei die größere Anzahl der weiteren Vergleich-Zustandswerte kleiner als der Standard-Vergleich-Zustandswert ist, wenn der Offset-Zustandswert kleiner als der Standard-Zustandswert ist, und wobei die größere Anzahl der weiteren Vergleich-Zustandswerte größer als der Standard-Vergleich-Zustandswert ist, wenn der Offset-Zustandswert größer als der Standard-Zustandswert ist.Embodiment 29 is a memory device according to embodiment 28, wherein an offset status value corresponds to an average value of status values or values derived therefrom which are expected when reading the memory cells under conditions other than the standard conditions for memory cells in a first programming state or in a second programming state, wherein the larger number of further comparison status values is smaller than the standard comparison status value if the offset status value is smaller than the standard status value, and the larger number of further comparison status values is greater than the standard comparison status value if the offset status value is greater than the standard status value.
Ausführungsbeispiel 30 ist eine Speichervorrichtung gemäß einem der Ausführungsbeispiele 27 bis 29, wobei eine Differenz zwischen dem Standard-Vergleich-Zustandswert und dem mindestens einen weiteren Vergleich-Zustandswert größer ist als beispielsweise ein Zehntel der Differenz der Zustandswerte, die für Speicherzellen in einem ersten Programmierzustand bzw. in einem zweiten Programmierzustand erwartet werden.Embodiment 30 is a memory device according to one of the embodiments 27 to 29, wherein a difference between the standard comparison status value and the at least one further comparison status value is greater than, for example, a tenth of the difference in the status values that are required for memory cells in a first programming state or respectively are expected in a second programming state.
Ausführungsbeispiel 31 ist eine Speichervorrichtung gemäß einem der Ausführungsbeispiele 22 bis 30, welche ferner eine Mehrzahl von Kondensatoren aufweist, wobei der vom Zustandswert abgeleitete Wert die Zeitdauer aufweist, und wobei das Vergleichen des Zustandswerts der Speicherzelle mit den Vergleich-Zustandswerten aufweist: Integrieren eines Zellstroms der Speicherzelle mittels eines ersten der Kondensatoren bis zu einem vorbestimmten Spannungswert, Ermitteln der Zeitdauer, die für das Erreichen des vorbestimmten Spannungswerts benötigt wurde, Integrieren einer Mehrzahl von Vergleichsströmen mittels mehrerer weiterer der Kondensatoren, wobei jeder der Vergleich-Zustandswerte diejenige Vergleich-Zeitdauer ist, die einer der integrierten Vergleichsströme zum Erreichen des vorbestimmten Spannungswerts benötigt, und für jede der Vergleich-Zeitdauern, Ermitteln, ob die Zeitdauer kleiner oder größer als die Vergleich-Zeitdauer ist.Embodiment 31 is a memory device according to one of the embodiments 22 to 30, which furthermore has a plurality of capacitors, wherein the value derived from the state value has the duration, and wherein the comparison of the state value of the memory cell with the comparison state values comprises: integrating a cell current of the Memory cell by means of a first of the capacitors up to a predetermined voltage value, determining the time period which was required for reaching the predetermined voltage value, integrating a plurality of comparison currents by means of several further capacitors, each of the comparison status values being the comparison time period which one of the integrated comparison currents is required to reach the predetermined voltage value, and for each of the comparison time periods, determining whether the time period is less than or greater than the comparison time period.
Ausführungsbeispiel 32 ist eine Speichervorrichtung gemäß einem der Ausführungsbeispiele 18 bis 31, wobei die Speichervorrichtung eine RRAM-, MRAM-, PCRAM-, FLASH- oder CBRAM-Vorrichtung ist.Embodiment 32 is a memory device according to one of the embodiments 18 to 31, wherein the memory device is an RRAM, MRAM, PCRAM, FLASH or CBRAM device.
Ausführungsbeispiel 33 ist eine Speichervorrichtung gemäß einem der Ausführungsbeispiele 19 bis 32, wobei die Speicherzellen resistive Speicherzellen sind.Embodiment 33 is a memory device in accordance with one of the embodiments 19 to 32, wherein the memory cells are resistive memory cells.
Ausführungsbeispiel 34 ist eine Datenspeichereinrichtung. Die Datenspeichereinrichtung kann die Speichervorrichtung gemäß einem der Ausführungsbeispiele 18 bis 33 aufweisen, wobei die Datenspeichereinrichtung eine aus einer Gruppe von Datenspeichereinrichtungen ist, wobei die Gruppe eine Festplatte, eine SSD und eine selbständige nichtflüchtige Speichervorrichtung wie einen Speicherstift aufweist.Embodiment 34 is a data storage device. The data storage device can comprise the storage device according to one of the exemplary embodiments 18 to 33, the data storage device being one of a group of data storage devices, the group comprising a hard disk, an SSD and an independent non-volatile storage device such as a memory stick.
Claims (26)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102020106169.2A DE102020106169A1 (en) | 2020-03-06 | 2020-03-06 | METHOD OF OPERATING A STORAGE DEVICE, STORAGE DEVICE, AND DATA STORAGE DEVICE |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102020106169.2A DE102020106169A1 (en) | 2020-03-06 | 2020-03-06 | METHOD OF OPERATING A STORAGE DEVICE, STORAGE DEVICE, AND DATA STORAGE DEVICE |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE102020106169A1 true DE102020106169A1 (en) | 2021-09-09 |
Family
ID=77388916
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE102020106169.2A Pending DE102020106169A1 (en) | 2020-03-06 | 2020-03-06 | METHOD OF OPERATING A STORAGE DEVICE, STORAGE DEVICE, AND DATA STORAGE DEVICE |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE102020106169A1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110205823A1 (en) | 2010-02-19 | 2011-08-25 | Gerrit Jan Hemink | Non-Volatile Storage With Temperature Compensation Based On Neighbor State Information |
| US20170271031A1 (en) | 2013-05-31 | 2017-09-21 | Western Digital Technologies, Inc. | Updating read voltages |
-
2020
- 2020-03-06 DE DE102020106169.2A patent/DE102020106169A1/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110205823A1 (en) | 2010-02-19 | 2011-08-25 | Gerrit Jan Hemink | Non-Volatile Storage With Temperature Compensation Based On Neighbor State Information |
| US20170271031A1 (en) | 2013-05-31 | 2017-09-21 | Western Digital Technologies, Inc. | Updating read voltages |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE102011083180B4 (en) | Readout distribution management for phase change memory | |
| DE10233642B4 (en) | Error correction coding and decoding in a solid state storage device | |
| DE102014111654A1 (en) | Systems and methods utilizing a flexible read reference for a dynamic read window | |
| DE112011100371T5 (en) | Method, apparatus and computer program product for decoding a codeword | |
| EP2100308B1 (en) | Method and semiconductor memory with a device for detecting addressing errors | |
| DE2456709C2 (en) | Circuit arrangement for error detection and correction | |
| DE102015113414A1 (en) | Error correction using WOM codes | |
| DE102017103347B4 (en) | PROCESSING OF DATA IN MEMORY CELLS OF A MEMORY | |
| DE10043440C2 (en) | Magnetoresistive memory and method for reading it out | |
| DE102015215401A1 (en) | A memory device and method for correcting a stored bit string | |
| DE10344625A1 (en) | Semiconductor memory device with a preventive function regarding a data change due to accumulated disturbances | |
| DE10206689A1 (en) | Integrated memory and method for operating an integrated memory | |
| DE112017003013T5 (en) | Methods and apparatus for reading nonvolatile memory cells | |
| DE3827174A1 (en) | SEMICONDUCTOR STORAGE DEVICE | |
| DE102013222136B4 (en) | Circuit and method for multi-bit correction | |
| DE102018124836A1 (en) | NEW STORAGE BLOCK | |
| EP0902924B1 (en) | Redundancy memory circuit with rom storage cells | |
| DE102020106169A1 (en) | METHOD OF OPERATING A STORAGE DEVICE, STORAGE DEVICE, AND DATA STORAGE DEVICE | |
| DE60212103T2 (en) | STRUCTURED MEMORY CELL TEST | |
| DE112021000637T5 (en) | CONTINUOUS MONOTONIC COUNTER FOR STORAGE DEVICES | |
| DE102020211842B4 (en) | Storage devices and methods for operating them | |
| DE102020100541B4 (en) | DETERMINATION OF A RESULTING DATA WORD WHEN ACCESSING A STORAGE | |
| DE112022004976T5 (en) | DYNAMIC MEASUREMENT LEVELS FOR NON-VOLATILE MEMORY DEVICES | |
| DE69526789T2 (en) | Memory arrangement with improved result and improved reliability | |
| DE112022005281T5 (en) | Erase Performance Loss Indicator (EPLI) implementation in a flash memory device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R012 | Request for examination validly filed | ||
| R016 | Response to examination communication |