DE102014115877A1 - Verfahren, Vorrichtung und Einrichtung zur Datenverarbeitung - Google Patents

Verfahren, Vorrichtung und Einrichtung zur Datenverarbeitung Download PDF

Info

Publication number
DE102014115877A1
DE102014115877A1 DE201410115877 DE102014115877A DE102014115877A1 DE 102014115877 A1 DE102014115877 A1 DE 102014115877A1 DE 201410115877 DE201410115877 DE 201410115877 DE 102014115877 A DE102014115877 A DE 102014115877A DE 102014115877 A1 DE102014115877 A1 DE 102014115877A1
Authority
DE
Germany
Prior art keywords
data bits
determining
empty
cells
data
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
Application number
DE201410115877
Other languages
English (en)
Inventor
Jan Otterstedt
Thomas Kern
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of DE102014115877A1 publication Critical patent/DE102014115877A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • G11C16/28Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7204Capacity control, e.g. partitioning, end-of-life degradation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

Es wird ein Verfahren zur Datenverarbeitung offenbart. Für mehrere Datenbits wird auf der Basis einer Mehrheitsentscheidung ein Leerzustand bestimmt. Jedes Datenbit wird durch eine Gruppe von mindestens zwei Speicherzellen repräsentiert. Die mindestens zwei Speicherzellen dieser Gruppe sind komplementäre Zellen eines Differenzielles-Lesen-Speichers.

Description

  • Ausführungsformen der vorliegenden Erfindung betreffen eine Leerdetektion von Datenbits eines nichtflüchtigen Speichers mit differenziellem Lesen.
  • Ein differenzielles Lesen kann zur Detektion von Datenbits von nichtflüchtigem Speicher verwendet werden. Die Einführung eines differenziellen Lesens in einem nichtflüchtigen Speicher (NVM) verbessert die Zuverlässigkeit, z.B. sogar nach einer hohen Anzahl von Schreib-/Lesezyklen, erfordert aber (mindestens) zwei NVM-Zellen (auch als Zellenpaar bezeichnet) pro Datenbit. Das Lesen dieser Zellen kann jedoch unvorhersehbare Ergebnisse liefern.
  • Eine Aufgabe besteht darin, insbesondere eine verbesserte oder effizientere Möglichkeit zur Bestimmung eines Leerzustands zu schaffen.
  • Diese Aufgabe wird gemäß den Merkmalen der unabhängigen Ansprüche gelöst. Bevorzugte Ausführungsformen sind insbesondere den abhängigen Ansprüchen entnehmbar.
  • Mindestens eines/eine der folgenden Beispiele und/oder Ausführungsformen können als innovativ betrachtet werden. Sie können mit anderen beschriebenen Aspekten oder Ausführungsformen kombiniert werden. Jede hier beschriebene Ausführungsform oder Ausgestaltung ist nicht unbedingt als gegenüber anderen Ausführungsformen oder Ausgestaltungen bevorzugt oder vorteilhaft aufzufassen.
  • Es wird ein Verfahren zur Verarbeitung von Daten vorgeschlagen, umfassend:
    • – Bestimmen eines Leerzustands für mehrere Datenbits auf der Basis einer Mehrheitsentscheidung.
  • Die Gruppe von mindestens zwei Speicherzellen kann als ein Zellenpaar implementiert sein, d.h. zwei komplementäre Speicherzellen eines Differenzielles-Lesen-Speichers.
  • Es ist eine Weiterbildung, dass jedes Datenbit der mehreren Datenbits durch eine Gruppe von mindestens zwei Speicherzellen repräsentiert wird, wobei die mindestens zwei Speicherzellen dieser Gruppe komplementäre Zellen eines Differenzielles-Lesen-Speichers sind.
  • Es ist eine Weiterbildung, dass die Speicherzellen Teil eines nichtflüchtigen Speichers sind.
  • Es ist eine Weiterbildung, dass der Differenzielles-Lesen-Speicher mindestens eines der Folgenden umfasst:
    • – Floating-Gate-Zellen;
    • – PCRAM,
    • – RRAM,
    • – MRAM,
    • – MONOS-Einrichtungen,
    • – Nanokristallzellen und
    • – ROM.
  • Es ist eine Weiterbildung, dass das Verfahren ferner umfasst:
    • – Setzen eines Leer-Indikators, falls der Leerzustand für mehrere Datenbits bestimmt wird;
    • – Rücksetzen des Leer-Indikators, falls der Leerzustand für mehrere Datenbits nicht bestimmt wird.
  • Es ist eine Weiterbildung, dass das Verfahren ferner umfasst:
    • – Bestimmen des Leerzustands auf der Basis eines Status eines Fehlerkorrekturcodes.
  • Es ist eine Weiterbildung, dass das Verfahren ferner umfasst:
    • – Bestimmen des Leerzustands auf der Basis eines Fehlerkorrekturstatus von voll gelöschten Datenbits.
  • Es ist eine Weiterbildung, dass das Verfahren ferner umfasst:
    • – Bestimmen eines oder mehrerer potentiell leerer Datenbits, falls der Strom seiner Speicherzellen eine vorbestimmte Stromschwelle erreicht oder überschreitet;
    • – Bestimmen eines Verhältnisses der potentiell leeren Datenbits zu Gesamtdatenbits der Speicherzellen;
    • – Bestimmen eines Leerzustands für die Gesamtdatenbits, falls das Verhältnis ein vordefiniertes Kriterium erfüllt.
  • Es ist eine Weiterbildung, dass das Verfahren ferner umfasst:
    • – Bestimmen eines weiteren potentiell leeren Datenbits, falls der Strom aller Speicherzellen die vorbestimmte Stromschwelle erreicht oder überschreitet.
  • Es ist eine Weiterbildung, dass das Verhältnis das vordefinierte Kriterium erfüllt, falls das Verhältnis eine vordefinierte Schwelle erreicht oder überschreitet.
  • Es ist eine Weiterbildung, dass das Verfahren ferner umfasst:
    • – Bestimmen der potentiell leeren Datenbits während oder nach einer Leseoperation der Datenbits.
  • Es ist eine Weiterbildung, dass das Verfahren ferner umfasst:
    • – Anwenden eines vorbestimmten Offset entweder auf einen Zellenerfassungsverstärker oder auf einen komplementären Erfassungsverstärker;
    • – Bestimmen einer Anzahl umgewechselter Datenbits;
    • – Bestimmen des Leerzustands für die Datenbits, falls die Anzahl umgewechselter Datenbits ein vordefiniertes Kriterium erfüllt.
  • Es wird angemerkt, dass das Offset eine beliebige Kombination aus Folgendem sein kann: ein Strom, eine Spannung, eine Zeitinformationen (z.B. Verzögerung) oder ein beliebiger Parameter, der z.B. von einem Erfassungsverstärker genutzt werden kann.
  • Es ist eine Weiterbildung, dass das Verfahren ferner umfasst:
    • – Bestimmen des Leerzustands für die Datenbits, falls die Anzahl und/oder ein Verhältnis umgewechselter Datenbits eine vordefinierte Schwelle erreicht oder überschreitet.
  • Es ist eine Weiterbildung, dass das Verfahren ferner umfasst:
    • – Bestimmen der Anzahl umgewechselter Datenbits über eine Exklusiv-Oder-Funktion.
  • Es ist eine Weiterbildung, dass das Verfahren ferner umfasst:
    • – Invalidieren mindestens eines Datenbits durch Überschreiben mindestens einer Speicherzelle mindestens eines Datenbits.
  • Ein (Über-)Schreiben der Zellen der Zellenpaare eines Wortes kann daher zur Invalidierung von Daten verwendet werden, ohne das gesamte Datenwort löschen zu müssen.
  • Weiterhin wird eine Vorrichtung zur Datenverarbeitung vorgeschlagen. Diese umfasst:
    • – eine Verarbeitungseinheit, die eingerichtet ist zum Bestimmen eines Leerzustands für mehrere Datenbits auf der Basis einer Mehrheitsentscheidung.
  • Es ist eine Weiterbildung, dass jedes Datenbit durch eine Gruppe von mindestens zwei Speicherzellen repräsentiert wird, wobei mindestens zwei Speicherzellen dieser Gruppe komplementäre Zellen eines Differenzielles-Lesen-Speichers sind.
  • Es ist eine Weiterbildung, dass die Speicherzellen Teil eines nichtflüchtigen Speichers sind.
  • Es ist eine Weiterbildung, dass der Differenzielles-Lesen-Speicher mindestens eines der Folgenden umfasst:
    • – Floating-Gate-Zellen;
    • – PCRAM,
    • – RRAM,
    • – MRAM,
    • – MONOS-Einrichtungen,
    • – Nanokristallzellen und
    • – ROM.
  • Es ist eine Weiterbildung, dass die Verarbeitungseinheit eingerichtet ist zum
    • – Bestimmen eines potentiell leeren Datenbits, falls der Strom seiner Speicherzellen eine vorbestimmte Stromschwelle erreicht oder überschreitet;
    • – Bestimmen eines Verhältnisses der potentiell leeren Datenbits zu den Gesamtdatenbits; und
    • – Bestimmen eines Leerzustands für die Datenbits, falls das Verhältnis ein vordefiniertes Kriterium erfüllt.
  • Es ist eine Weiterbildung, dass die Verarbeitungseinheit eingerichtet ist zum
    • – Anwenden eines vorbestimmten Offset entweder auf einen Zellenerfassungsverstärker oder auf einen komplementären Erfassungsverstärker;
    • – Bestimmen einer Anzahl umgewechselter Datenbits;
    • – Bestimmen des Leerzustands für die Datenbits, falls die Anzahl umgewechselter Datenbits ein vordefiniertes Kriterium erfüllt.
  • Es ist eine Weiterbildung, dass die Verarbeitungseinheit ausgelegt ist zum
    • – Invalidieren mindestens eines Datenbits durch Überschreiben mindestens einer Speicherzelle mindestens eines Datenbits.
  • Weiterhin ist eine Vorrichtung zur Verarbeitung von Daten vorgesehen, insbesondere zur Bestimmung eines Leerzustands von Datenbits, wobei die Vorrichtung umfasst:
    • – ein Mittel zum Bestimmen eines Leerzustands für mehrere Datenbits auf der Basis einer Mehrheitsentscheidung.
  • Es ist eine Weiterbildung, dass jedes Datenbit durch eine Gruppe von mindestens zwei Speicherzellen repräsentiert wird, wobei die mindestens zwei Speicherzellen dieser Gruppe komplementäre Zellen eines Differenzielles-Lesen-Speichers sind.
  • Ausführungsformen werden unter Bezugnahme auf die Zeichnungen dargestellt und veranschaulicht. Die Zeichnungen dienen der Veranschaulichung des Grundprinzips, so dass zum Verständnis des Grundprinzips notwendige Aspekte dargestellt werden. Die Zeichnungen sind nicht maßstabgerecht. In den Zeichnungen stehen gleiche Bezugszeichen für gleiche Merkmale.
  • 1 zeigt eine Tabelle, die Zustände eines Zellenpaars eines Differenzial-Lese-NVM zusammenfasst;
  • 2 zeigt Verteilungen des Zellenstroms ("Icell") für korrekt programmierte Zellenpaare mit einer Stromverteilung geschriebener Zellen und einer Stromverteilung gelöschter Zellen;
  • 3 zeigt die Zellenstromverteilung für zwei gelöschte Zellenpaare, d.h. Zellenpaare, die sich im Leerzustand befinden;
  • 4 zeigt eine Überlagerung von 2 und 3, die das Problem der Leerzustandsdetektion angibt;
  • 5 zeigt eine Verteilung des Zellenstroms und geschriebene Paare und leere Paare, die in diese Verteilung fallen, wobei eine Stromschwelle vorgesehen ist, um eine Anzahl potentiell leerer Zellenpaare zu identifizieren;
  • 6 zeigt eine Beispieltabelle, die einen Leerindikator umfasst, der angibt, ob ein gelesenes Datenwort als leer angesehen wird oder nicht;
  • 7 zeigt zwei Graphen zur Visualisierung der Grenzen eines Lesefensters, das wegen einer hohen Anzahl von Lese-/Schreibzyklen und/oder Temperatureffekten verschoben ist;
  • 8 zeigt ein Offset, das auf einen Zellenstrom der Zelle angewandt wird, um dadurch zu einer verschobenen Kurve zu führen;
  • 9 zeigt ein Beispiel für umgewechselte Zellenpaare, wenn das Offset angewandt wird;
  • 10 zeigt eine Beispieltabelle, die eine Spalte umfasst, die eine Anzahl umgewechselter Zellenpaare nfl abbildet, die mit einer vorbestimmten Schwelle nth verglichen wird, um zu bestimmen, ob die Datenbits leer sind;
  • 11 zeigt eine Stromverteilung geschriebener Zellen und eine Stromschwelle zur Bestimmung, ob sich ein Zellenpaar potentiell in einem undefinierten Zustand befindet;
  • 12 zeigt eine Beispieltabelle, die zwei Schwellen für das Verhältnis m/n benutzt, um eine Unterscheidung zwischen den Zuständen leer, fehlerhaft und gültig zu ermöglichen;
  • 13 zeigt eine Tabelle mit einem Beispiel-Benutzungsfallszenario, das auch einen Fehlerkorrekturcode-(ECC-)Mechanismus berücksichtigt, wobei angenommen wird, dass der voll gelöschte Zustand nicht ECC-Sauber ist;
  • 14 zeigt eine Tabelle mit einem anderen Beispiel-Benutzungsfallszenario, wobei angenommen wird, dass der voll gelöschte Zustand ECC-Sauber ist.
  • Die Einführung eines differenziellen Lesens in einem nichtflüchtigen Speicher (NVM) verbessert die Zuverlässigkeit, z.B. selbst nach einer hohen Anzahl von Schreib-/Lesezyklen, erfordert aber (mindestens) zwei NVM-Zellen (auch als Zellenpaar bezeichnet) pro Datenbit.
  • Abhängig von den Zuständen der zwei Zellen eines Paars (d.h. eine cell_t und eine cell_c mit t = wahr und c = Komplement) kann der Zustand eines gespeicherten Datenbits auf der Basis einer in 1 gezeigten Beispieltabelle bestimmt werden.
  • Daher können zwei assoziierte NVM-Zellen eines Speichers komplementäre Informationen speichern, d.h. sie können entgegengesetzte Zustände aufweisen. Wie in 1 gezeigt, kann nur ein Bit, das komplementäre Zellenzustände aufweist, erfolgreich decodiert werden, d.h. eine der zwei Zellen eines Zellenpaars muss sich im geschriebenen Zustand befinden, und die andere Zelle muss sich im gelöschten Zustand befinden, um erfolgreiche Datendecodierung zu erlauben.
  • Die Löschung einer Seite, die mehrere Datenbits umfasst, die jeweils durch zwei Speicherzellen repräsentiert werden, führt jedoch zu einem Zustand, bei dem sich beide Zellen im gelöschten Zustand befinden, einem sogenannten "Leerzustand". Nach einer Löschoperation sind daher die Datenbits für dieses Zellenpaar noch nicht definiert. Das Lesen eines solchen Zellenpaars kann zu einem unvorhersehbaren Ergebnis führen oder kann sogar bei wiederholten Leseoperationen unterschiedliche Ergebnisse ergeben.
  • Falls eine Leseoperation einer Software einen Leerzustand liest, ist das Ergebnis einer solchen Leseoperation deshalb unvorhersehbar. Die Software kann Anweisungen umfassen, die auf einem Prozessor oder prozessorgestützten System ausgeführt sind und/oder werden. Daher können zusätzliche Maßnahmen erforderlich sein, um zu bestimmen, ob sich das Zellenpaar in einem solchen Leerzustand befindet oder nicht.
  • Daher werden nachfolgend Beispiele und/oder Ausführungsformen angegeben, um zu erleichtern, wie das Lesen eines Leerzustands zu detektieren ist, wodurch die Vorteile des differenziellen Lesens aufrechterhalten werden.
  • 2 zeigt Verteilungen des Zellenstroms ("Icell") für korrekt programmierte Zellenpaare mit einer Stromverteilung 201 geschriebener Zellen und einer Stromverteilung 202 gelöschter Zellen. Ein geschriebenes Zellenpaar 203 ("geschriebenes Paar 1") umfasst zwei Zellen, die komplementäre Ströme liefern (eine Zelle befindet sich im geschriebenen Zustand und die andere Zellen im gelöschten Zustand). Dasselbe gilt dementsprechend für die übrigen in 2 abgebildeten Zellenpaare, d.h. die geschriebenen Paare 2 bis 4.
  • Die gelöschte und geschriebene Verteilung 201 und 202 in 2 weisen einen Überlappungsbereich 204 auf, wobei der Zellenstrom einer der Zellen der geschriebenen Zellenpaare 2 bis 4 in diesen Überlappungsbereich 204 fällt. Bei allen geschriebenen Zellenpaaren 1 bis 4, die in 2 abgebildet sind, erlaubt der Unterschied zwischen den Strömen der komplementären Zellen jedoch eine unzweideutige Decodierung, und somit wird dem Datenbit, das mit dem jeweiligen Zellenpaar assoziiert ist, ein Wert "0" oder "1" zugewiesen.
  • 3 zeigt die Zellenstromverteilung gelöschter Zellen mit zwei beispielhaften gelöschten Zellenpaaren "leeres Paar 1" und "leeres Paar 2", d.h. Zellenpaaren, die sich in dem Leerzustand befinden.
  • 4 zeigt eine Überlagerung von 2 und 3, wodurch das Problem der Leerzustandsdetektion angegeben wird: Aufgrund der sich überlappenden Verteilungen für geschriebene und gelöschte Zellen kann der Zustand des "geschriebenen Paars 4" nicht vom Zustand des "leeren Paars 2" unterschieden werden. Daher ist in einem solchen Szenario auf der Basis von Zellenströmen eines einzigen Zellenpaars Leerdetektion nicht möglich.
  • Beispiel: Betrachtung mehrerer Datenbits
  • Ein hier angegebenes Beispiel erlaubt Leerdetektion eines Zustands eines Zellenpaars durch Betrachtung von mehreren Datenbits, die ein Datenwort bilden können, die (im Wesentlichen) zur selben Zeit geschrieben und/oder gelesen werden können. Die Anzahl der betrachteten Datenbits (d.h. Zellenpaare) wird als n bezeichnet.
  • Es wird angemerkt, dass jedes Zellenpaar mehrere Speicherzellen umfassen kann und nicht auf nur zwei komplementäre Zellen beschränkt ist. Zum Beispiel können in einem solchen Zellenpaar mehrere komplementäre Zellen verwendet werden, um ein Datenbit zu repräsentieren. Mehrere Datenbits können das Wort bilden, wobei das Wort in diesem Kontext nicht auf eine konkrete Anzahl von Datenbits beschränkt ist. Das Wort kann einer Löschprozedur unterzogen werden, d.h. alle Bit des Worts können während einer solchen Löschoperation gelöscht werden. Das Wort kann in diesem Kontext als Seite betrachtet werden, oder eine solche Seite kann mehrere Wörter umfassen.
  • Dieser Ansatz kann den Umstand nutzen, dass die Wahrscheinlichkeit des Vorliegens eines Zustands wie ein geschriebenes Zellenpaar und ein leeres Zellenpaar, die (im Wesentlichen) dieselben Zellenströme aufweisen (wie in 4 für das "geschriebene Paar 4" und das "leere Paar 2" gezeigt), relativ niedrig ist, weil in einem solchen Fall mindestens eine der Zellen des Zellenpaars einen Strom bereitstellen muss, der von der Niederwahrscheinlichkeits-Überlappungsregion 204 ist.
  • 5 zeigt die Verteilung des Zellenstroms 202 und die geschriebenen Paare 2 und 4 und die leeren Paare 1 und 2, die in diese Verteilung 202 fallen. Es wird eine Stromschwelle 501 vorgesehen, um eine Anzahl m potentiell leerer Zellenpaare zu identifizieren. Die Stromschwelle 501 kann benutzt werden, wenn die Stromdifferenzen der Zellenpaare gelesen werden, um die Datenbits eines Worts zu decodieren. Daher wird die Anzahl von m potentiell leeren Zellenpaaren durch alle Zellenpaare bestimmt, bei denen beide Zellen einen Zellenstrom aufweisen, der höher als die Stromschwelle 501 ist.
  • In dem in 5 gezeigten Beispiel beträgt die Anzahl m potentiell leerer Zellenpaare vier und umfasst die geschriebenen Zellenpaare "geschriebenes Paar 2" und "geschriebenes Paar 4".
  • Als nächstes kann ein Anteil der potentiell leeren Zellenpaare m angesichts der Gesamtzahl der Zellenpaare n
    m/n
    mit einer vorbestimmten Schwelle, z.B. 50%, verglichen werden. Das vollständige gelesene Wort (Datenbits) kann daher als leer definiert werden, falls m/n diese vorbestimmte Schwelle erreicht oder überschreitet. Dadurch kann eine Software automatisch entscheiden, ob sich eine Menge von Datenbits (Datenwort) im Leerzustand befindet oder nicht. Die Software kann Anweisungen umfassen, die auf einem Prozessor oder prozessorgestützten System ausgeführt sind und/oder werden.
  • 6 zeigt eine Beispieltabelle, die einen Leerindikator umfasst, der angibt, ob ein gelesenes Datenwort als leer betrachtet wird oder nicht. Wenn das Verhältnis m/n kleiner als 50% ist, wird daher angenommen, dass das Datenwort gültig ist, und abhängig von den Strömen ihrer jeweiligen komplementären Zellen wird angenommen, dass jedes Bit des Datenworts einen Wert von entweder "0" oder "1" aufweist. In einem solchen Fall wird der Leerindikator auf "0" gesetzt. Verbleibende Bitfehler können über Fehlerkorrekturcodes (ECC) korrigiert werden.
  • Wenn das Verhältnis m/n 50% erreicht oder überschreitet, d.h. mindestens die Hälfte der Zellenpaare die Stromschwelle 501 erreicht oder überschreitet, wird auch angenommen, dass das Datenwort gültig, aber leer ist. Daher wird der Leerindikator auf "1" gesetzt.
  • Dieser Ansatz erlaubt das Erhalten definierter Daten; es gibt keine "undefinierten" Daten mehr. Zusätzlich werden die Vorteile differenzieller Lesungen bewahrt.
  • Beispiel: differenzielle Prüfung
  • Mit der Zeit und insbesondere hinsichtlich Zellen, die eine hohe Menge von Lese- und Schreibzyklen erfahren müssen, kann sich ein Lesefenster in Richtung höherer Zellenströme bewegen. Außerdem kann sich die Temperatur auch auf den Zellenstrom auswirken.
  • Im Fall eines sich bewegenden Lesefensters kann eine absolute und feste Stromschwelle zu unvollkommenen Ergebnissen führen, wie in 7 gezeigt ist: Ein Graph 701 zeigt, dass sich eine Stromschwelle 703 eines Lesefensters zwischen einer Stromverteilung 704 geschriebener Zellen und einer Stromverteilung 705 gelöschter Zellen befindet. Daher ist Decodierung der Zellenpaare durchführbar.
  • Ein Graph 702 zeigt, dass sich die Stromschwelle 703 des Lesefensters in dem unteren Strombereich der Stromverteilung 704 geschriebener Zellen befindet, wodurch eine korrekte Detektion der Zellenpaare beeinträchtigt wird.
  • Um zu bestimmen, ob sich Zellenpaare eines Datenworts in einem Leerzustand befinden, kann eine differenzielle Prüfung durchgeführt werden. Eine solche differenzielle Prüfung kann auf der Basis mindestens einer der folgenden Beispielannahmen unterstützt werden:
    • – In einem gelöschten Zustand kann eine Überlappung zwischen Zellen- und Komplementverteilungen angenommen werden, da sie gleichzeitig gelöscht werden und dieselbe Zyklusgeschichte erfahren.
    • – Störungen sind (statistisch) gleich verteilt und erzeugen kein Ungleichgewicht zwischen der Zelle und ihrem Komplementarray.
    • – Ein Verstärker der Komplementerfassung zeigt keinerlei systematisches Offset.
  • Auf der Basis dieser Annahmen gibt eine Komplementerfassung im Mittel 50% Nullen und 50% Einsen aus.
  • Wenn entweder an einen Zellenerfassungsverstärker- oder Komplement-Zellenerfassungsverstärkereingang ein zusätzliches Stromoffset (um einen vorbestimmten Offsetbetrag, z.B. +1/+2/+3 Sigma) ausgegeben wird, ändern sich die Daten mit Offset und ohne Offset signifikant.
  • 8 zeigt eine positives Offset eines einzelnen Sigma 803, das auf den Zellenstrom der Zelle "cell_c" angewandt wird, was zu einer verglichen mit der Kurve 801 verschobenen Kurve 802 führt. Diese Verschiebung beeinflusst alle Zellenpaare, aber mit unterschiedlicher Auswirkung: Zellenpaare mit einem Zellenstrom Icell_c, der höher als der Zellenstrom Icell_t (gemäß 9 einer logischen "0" zugewiesen) ist, erhalten eine höhere Stromdistanz (+1 Sigma). Im Gegensatz dazu, erhalten Zellenpaare mit einem Zellenstrom Icell_t, der höher als der Zellenstrom Icell_c (gemäß 9 einer logischen "1" zugewiesen) ist, eine Reduktion der Stromdifferenz. Wenn diese Reduktion die ursprüngliche Stromdifferenz zwischen dem Zellenstrom Icell_c und dem Zellenstrom Icell_t überschreitet, d.h. (Icell_c + Sigma > Icell_t), wechselt das Bit von einer logischen "1" zu "0". Die Anzahl der Bit, die von "1" auf "0" wechseln, kann durch dieses Stromoffset moduliert werden. Je höher das Stromoffset ist, desto höher ist die Wahrscheinlichkeit, Bit umzuwechseln, und umgekehrt. Die positive Verschiebung kann auch auf die Verteilung des Zellenstroms Icell_t angewandt werden, was wiederum zu Bitumwechslungen von "0" auf "1" führen kann. Daher kann dann auf der Basis der Verschiebung auf der Basis des angewandten Offset bestimmt werden, wie viele Zellenpaare ihren Zustand wechseln. Der Wechsel kann über eine Exklusiv-Oder-(XOR-)Funktion bestimmt werden und kann zur Unterscheidung zwischen einer leeren und einer normal programmierten, aber potentiell verzerrten Verteilung, verwendet werden. Das Offset kann wie in 8 gezeigt ein Strom sein, oder es kann abhängig von dem in einem jeweiligen Erfassungsverstärker benutzten Parameter eine Spannung oder ein beliebiger anderer geeigneter Parameter verwendet werden.
  • 9 zeigt ein Beispiel für umgewechselte Zellenpaare, wenn das Offset angewandt wird (Bit, die Zellenpaare ohne Offset 901 repräsentieren, im Gegensatz zu Bit, die Zellenpaare, nachdem das Offset angewandt wurde, repräsentieren 902). Bestimmte Bit, die ohne das zusätzliche Stromoffset eine logische "1" angeben (wegen Icell_t > Icell_c), wechseln nun aufgrund des zu dem Strom Icell_c addierten zusätzlichen Stroms um und geben eine logische "0" an, wegen des Wechsels zu Icell_t < Icell_c.
  • Gemäß diesem Beispiel haben daher auf der Basis des angewandten Offsets sechs Zellenpaare ihren Wert von "1" auf "0" gewechselt.
  • Ein Niveau des Wechsels (das über eine Exklusiv-Oder-(XOR-)Funktion bestimmt werden kann) kann benutzt werden, um zwischen einer leeren und einer normal programmierten, aber potentiell verzerrten Verteilung zu unterscheiden.
  • Das Niveau des Wechsels kann eine Anzahl umgewechselter Zellenpaare enthüllen. Diese Anzahl kann mit einer vorbestimmten Schwelle verglichen werden, und auf der Basis eines solchen Vergleichs kann eine Entscheidung möglich sein, ob das Datenwort leere Bit umfasst oder nicht.
  • Anders ausgedrückt, werden benachbarte Zellen erkannt, weil sie zu einem umgewechselten Zellenpaar führen, falls das Offset angewandt wird, was für leere Zellenpaare relativ normal ist, aber für geschriebene Zellenpaare relativ ungewöhnlich. Die Anzahl umgewechselter Zellenpaare auf der Basis des angewandten Offset gibt daher eine Wahrscheinlichkeit an, dass sich ein Datenwort im geschriebenen (programmierten) Zustand oder im Leerzustand befindet.
  • 10 zeigt eine Beispieltabelle, wobei in der Spalte 1003 eine Anzahl umgewechselter Zellenpaare nfl mit einer vorbestimmten Schwelle nth verglichen wird. Wenn die Anzahl umgewechselter Zellenpaare nfl größer als die Schwelle nth ist, wird ein Leer-Indikator (Spalte 1004) auf "1" gesetzt. Als Alternative kann ein Verhältnis der umgewechselten Bit und der vorherigen Bit, die logisch "1" angeben, mit einer vorbestimmten Schwelle verglichen werden.
  • Falls die Anzahl umgewechselter Zellen nfl nicht größer (oder kleiner) als die Schwelle nth ist, wird der Leer-Indikator auf "0" gesetzt, und die Zellenpaare sind entweder programmiert oder verfälscht, abhängig von einem Status "ECC sauber" (siehe Spalte 1002): Der ECC-sauber-Status ist erfüllt ("ja" in Spalte 1002), wenn die Fehlerkorrektur in der Lage ist, teilweise verfälschte Daten zu rekonstruieren, oder wenn überhaupt keine verfälschten Daten bestehen. Der ECC-sauber-Status ist nicht erfüllt ("nein" in Spalte 1002), wenn die Fehlerkorrektur nicht in der Lage ist, alle Fehler zu korrigieren.
  • In einem solchen Fall wird ein Verfälschte-Daten-Bit (Spalte 1005) auf "1" gesetzt (das andernfalls auf "0" gesetzt ist).
  • Eine Spalte 1001 hat somit den Status der Daten, der entweder "programmiert", "gelöscht" oder "verfälscht" ist, zusammengefasst.
  • Zusätzliche Aspekte:
  • Als Option kann ein Anteil von Zellenpaaren eines gelesenen Worts bestimmt werden, wobei sich beide Zellen des Zellenpaars potentiell im geschriebenen Zustand befinden. Dies kann für Softwareverarbeitung und/oder Zugriff auf den NVM getrennt angegeben werden. Die Software kann Anweisungen umfassen, die auf einem Prozessor oder prozessorgestützten System ausgeführt sind und/oder werden.
  • 11 zeigt eine Stromverteilung 1101 geschriebener Zellen und eine Stromschwelle 1102. Es ist deshalb möglich, beide Zellen eines Zellenpaars zu schreiben und für dieses Zellenpaar einen undefinierten Zustand zu erzeugen, der von dem Leerzustand des Zellenpaars unterschieden werden kann. (Über-)Schreiben beider Zellen der Zellenpaare in einem Wort kann daher zur Invalidierung von Daten benutzt werden, ohne dass es notwendig ist, das gesamte Datenwort zu löschen.
  • Die angegebene Lösung kann auf NVM mit differenziellem Lesen angewandt werden, insbesondere auf NVM-Zellentypen wie Einrichtungen des Typs Floating Gate, PCRAM (Phase-Change Random Access Memory), RRAM (Resistive Random Access Memory), MRAM (Magneto-Resistive Random Access Memory), MONOS (Metal-Oxide-Nitride-Oxide-Silicon), Nanokristallzellen usw. Die Lösung kann für alle Speichertypen verwendet werden, insbesondere Nurlesespeicher (ROM).
  • Die Lösung kann in verschiedenen Arten von Anwendungen implementiert werden, z.B. bezüglich Datenübertragung, Datenspeicherung, insbesondere auf Speichereinrichtungen wie z.B. Festplatten.
  • Die Lösung kann auch mit verschiedenen Typen von Fehlerdetektions- und/oder Fehlerkorrekturschemata, z.B. Blockcodes, zyklische Codes, BCH-Codes usw., kombiniert werden.
  • Jedes Zellenpaar kann mehrere Zellen umfassen, insbesondere mehr als zwei Speicherzellen.
  • 12 zeigt eine Beispieltabelle, die zwei Schwellen für das Verhältnis m/n benutzt, um eine Unterscheidung zwischen den Zuständen leer, fehlerhaft und gültig zu ermöglichen. Die abgebildeten Werte der Schwellen sind nur Beispiele und können abhängig von dem jeweiligen Benutzungsfallszenario, von Hardware- und/oder Sicherheitsanforderungen unterschiedlich sein.
  • Falls das Verhältnis m/n kleiner als 40% ist, wird der Leer-Indikator auf "0" gesetzt und der Fehlerindikator wird auf "0" gesetzt, um dadurch gültige Daten anzunehmen.
  • Falls das Verhältnis m/n mindestens 40% aber weniger als 60% ist, kann der Leer-Indikator auf "0" oder "1" (angegeben durch "X") gesetzt werden, und der Fehlerindikator wird auf "1" gesetzt, um dadurch anzunehmen, dass das Datenwort ungültig ist. Anders ausgedrückt, gibt es in diesem Fall zu viele potentiell leere Zellenpaare, damit die Daten gültig (geschrieben oder programmiert) sind, aber noch nicht genug potentiell leere Zellenpaare, um ein leeres Datenwort anzunehmen.
  • Falls das Verhältnis m/n mindestens 60% ist, wird der Leer-Indikator auf "1" gesetzt und der Fehlerindikator wird auf "0" gesetzt, um dadurch ein leeres Datenwort anzunehmen.
  • 13 zeigt eine Tabelle mit einem Beispiel-Benutzungsfallszenario, das auch einen Fehlerkorrekturcode-(ECC-)Mechanismus betrachtet. Hierbei bedeutet "ECC sauber", dass Fehler mindestens korrigiert werden können (oder keine Fehler vorliegen können, die Korrektur benötigen). Dementsprechend bedeutet "ECC" nicht sauber" (ECC sauber – nein), dass Fehler durch ECC-Mittel nicht korrigiert werden können. Das Szenario gemäß 13 nimmt an, dass der voll gelöschte Zustand nicht ECC sauber ist.
  • Der Fall "ECC sauber":
    • – falls das Verhältnis m/n mindestens 80% beträgt, wird ein Leerzustand des Datenworts angenommen,
    • – falls das Verhältnis m/n mindestens 50%, aber kleiner als 80% ist, wird ein fehlerhafter Zustand des Datenworts angenommen und
    • – falls das Verhältnis m/n kleiner als 50% ist, wird ein gültiges Datenwort angenommen.
  • Der Fall "ECC nicht sauber":
    • – falls das Verhältnis m/n mindestens 30% beträgt (ein niedriger Wert reicht aus, wegen der Grundannahme, dass der ECC im voll gelöschten Zustand des Datenworts nicht sauber ist) wird ein Leerzustand des Datenworts angenommen und
    • – falls das Verhältnis m/n kleiner als 30% ist, wird ein fehlerhafter Zustand des Datenworts angenommen.
  • 14 zeigt eine Tabelle mit einem anderen Beispiel-Benutzungsfallszenario. Die Terminologie von 13 gilt auch für 14. Das Szenario gemäß 14 nimmt an, dass der voll gelöschte Zustand ECC sauber ist.
  • Der Fall "ECC sauber":
    • – falls das Verhältnis m/n mindestens 60% beträgt, wird ein Leerzustand des Datenworts angenommen,
    • – falls das Verhältnis m/n mindestens 50%, aber kleiner als 60% ist, wird ein fehlerhafter Zustand des Datenworts angenommen und
    • – falls das Verhältnis m/n kleiner als 50% ist, wird ein gültiges Datenwort angenommen.
  • Der Fall "ECC nicht sauber":
    • – falls das Verhältnis m/n mindestens 80% beträgt (es wird ein hoher Wert gesetzt, wegen der Grundannahme, dass der ECC im voll gelöschten Zustand des Datenworts sauber ist und daher eine hohe Anzahl potentiell leerer Zellenpaare angesichts aller Zellenpaare des Datenworts erforderlich ist) wird ein Leerzustand des Datenworts angenommen und
    • – falls das Verhältnis m/n kleiner als 80% ist (mit der Grundannahme "ECC sauber" im voll gelöschten Zustand besteht eine hohe Wahrscheinlichkeit eines Fehlers, wenn das Verhältnis m/n nicht (sehr) hoch ist) wird ein fehlerhafter Zustand des Datenworts angenommen.
  • Obwohl verschiedene Ausführungsbeispiele der Erfindung offenbart wurden, ist es für den Fachmann offensichtlich, dass verschiedene Änderungen und Modifikationen vorgenommen werden können, mit denen manche Vorteile der Erfindung erreicht werden können, ohne vom Geist und Schutzbereich der Erfindung abzuweichen. Es ist für den hinreichend qualifizierten Fachmann nachvollziehbar, dass weitere Komponenten, die die gleichen Funktionen erfüllen, auf geeignete Weise ersatzweise verwendet werden können. Es sollte erwähnt werden, dass die unter Bezugnahme auf eine bestimmte Figur erläuterten Merkmale mit Merkmalen anderer Figuren kombiniert werden können, selbst in jenen Fällen, in denen dies nicht ausdrücklich erwähnt wurde. Weiterhin können die erfindungsgemäßen Verfahren in entweder allen Software-Implementierungen, unter Verwendung von geeigneten Prozessoranweisungen, oder in Hybridimplementierungen, die eine Kombination aus Hardware- und Softwarelogik nutzen, um die gleichen Ergebnisse zu erzielen, erreicht werden. Solche Modifikationen des Erfindungsgedankens sollen von den angefügten Ansprüchen abgedeckt werden.

Claims (22)

  1. Verfahren zur Verarbeitung von Daten, umfassend: – Bestimmen eines Leerzustands für mehrere Datenbits auf der Basis einer Mehrheitsentscheidung.
  2. Verfahren nach Anspruch 1, wobei jedes Datenbit der mehreren Datenbits durch eine Gruppe von mindestens zwei Speicherzellen repräsentiert wird, wobei die mindestens zwei Speicherzellen dieser Gruppe komplementäre Zellen eines Differenzielles-Lesen-Speichers sind.
  3. Verfahren nach Anspruch 2, bei dem die Speicherzellen Teil eines nichtflüchtigen Speichers sind.
  4. Verfahren nach Anspruch 2, wobei der Differenzielles-Lesen-Speicher mindestens eines der Folgenden umfasst: – Floating-Gate-Zellen; – PCRAM, – RRAM, – MRAM, – MONOS-Einrichtungen, – Nanokristallzellen und – ROM.
  5. Verfahren nach einem der vorhergehenden Ansprüche, ferner umfassend: – Setzen eines Leer-Indikators, falls der Leerzustand für mehrere Datenbits bestimmt wird; – Rücksetzen des Leer-Indikators, falls der Leerzustand für mehrere Datenbits nicht bestimmt wird.
  6. Verfahren nach einem der vorhergehenden Ansprüche, ferner umfassend: – Bestimmen des Leerzustands auf der Basis eines Status eines Fehlerkorrekturcodes.
  7. Verfahren nach einem der vorhergehenden Ansprüche, ferner umfassend: – Bestimmen des Leerzustands auf der Basis eines Fehlerkorrekturstatus von voll gelöschten Datenbits.
  8. Verfahren nach einem der vorhergehenden Ansprüche, ferner umfassend: – Bestimmen eines oder mehrerer potentiell leerer Datenbits, falls der Strom seiner Speicherzellen eine vorbestimmte Stromschwelle erreicht oder überschreitet; – Bestimmen eines Verhältnisses der potentiell leeren Datenbits zu Gesamtdatenbits der Speicherzellen; – Bestimmen eines Leerzustands für die Gesamtdatenbits, falls das Verhältnis ein vordefiniertes Kriterium erfüllt.
  9. Verfahren nach Anspruch 8, ferner umfassend: – Bestimmen eines weiteren potentiell leeren Datenbits, falls der Strom aller Speicherzellen die vorbestimmte Stromschwelle erreicht oder überschreitet.
  10. Verfahren nach Anspruch 8, bei dem das Verhältnis das vordefinierte Kriterium erfüllt, falls das Verhältnis eine vordefinierte Schwelle erreicht oder überschreitet.
  11. Verfahren nach einem der Ansprüche 8 bis 10, ferner umfassend: – Bestimmen der potentiell leeren Datenbits während oder nach einer Leseoperation der Datenbits.
  12. Verfahren nach einem der vorhergehenden Ansprüche, ferner umfassend: – Anwenden eines vorbestimmten Offset entweder auf einen Zellenerfassungsverstärker oder auf einen komplementären Erfassungsverstärker; – Bestimmen einer Anzahl umgewechselter Datenbits; – Bestimmen des Leerzustands für die Datenbits, falls die Anzahl umgewechselter Datenbits ein vordefiniertes Kriterium erfüllt.
  13. Verfahren nach Anspruch 12, ferner umfassend: – Bestimmen des Leerzustands für die Datenbits, falls die Anzahl und/oder ein Verhältnis umgewechselter Datenbits eine vordefinierte Schwelle erreicht oder überschreitet.
  14. Verfahren nach einem der Ansprüche 12 oder 13, ferner umfassend: – Bestimmen der Anzahl umgewechselter Datenbits über eine Exklusiv-Oder-Funktion.
  15. Verfahren nach einem der vorhergehenden Ansprüche, ferner umfassend: – Invalidieren mindestens eines Datenbits durch Überschreiben mindestens einer Speicherzelle mindestens eines Datenbits.
  16. Vorrichtung zur Datenverarbeitung, umfassend: – eine Verarbeitungseinheit, die eingerichtet ist zum Bestimmen eines Leerzustands für mehrere Datenbits auf der Basis einer Mehrheitsentscheidung.
  17. Vorrichtung nach Anspruch 16, wobei jedes Datenbit durch eine Gruppe von mindestens zwei Speicherzellen repräsentiert wird, wobei mindestens zwei Speicherzellen dieser Gruppe komplementäre Zellen eines Differenzielles-Lesen-Speichers sind.
  18. Vorrichtung nach Anspruch 17, bei dem die Speicherzellen Teil eines nichtflüchtigen Speichers sind.
  19. Vorrichtung nach einem der Ansprüche 16 bis 18, wobei der Differenzielles-Lesen-Speicher mindestens eines der Folgenden umfasst: – Floating-Gate-Zellen; – PCRAM, – RRAM, – MRAM, – MONOS-Einrichtungen, – Nanokristallzellen und – ROM.
  20. Vorrichtung nach einem der Ansprüche 16 bis 19, bei der die Verarbeitungseinheit eingerichtet ist zum – Bestimmen eines potentiell leeren Datenbits, falls der Strom seiner Speicherzellen eine vorbestimmte Stromschwelle erreicht oder überschreitet; – Bestimmen eines Verhältnisses der potentiell leeren Datenbits zu den Gesamtdatenbits; und – Bestimmen eines Leerzustands für die Datenbits, falls das Verhältnis ein vordefiniertes Kriterium erfüllt.
  21. Vorrichtung nach einem der Ansprüche 16 bis 20, bei der die Verarbeitungseinheit eingerichtet ist zum – Anwenden eines vorbestimmten Offset entweder auf einen Zellenerfassungsverstärker oder auf einen komplementären Erfassungsverstärker; – Bestimmen einer Anzahl umgewechselter Datenbits; – Bestimmen des Leerzustands für die Datenbits, falls die Anzahl umgewechselter Datenbits ein vordefiniertes Kriterium erfüllt.
  22. Vorrichtung nach einem der Ansprüche 16 bis 21, bei der die Verarbeitungseinheit ausgelegt ist zum – Invalidieren mindestens eines Datenbits durch Überschreiben mindestens einer Speicherzelle mindestens eines Datenbits.
DE201410115877 2013-10-31 2014-10-31 Verfahren, Vorrichtung und Einrichtung zur Datenverarbeitung Pending DE102014115877A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/068,454 2013-10-31
US14/068,454 US10776259B2 (en) 2013-10-31 2013-10-31 Method, apparatus and device for data processing

Publications (1)

Publication Number Publication Date
DE102014115877A1 true DE102014115877A1 (de) 2015-04-30

Family

ID=52811946

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201410115877 Pending DE102014115877A1 (de) 2013-10-31 2014-10-31 Verfahren, Vorrichtung und Einrichtung zur Datenverarbeitung

Country Status (3)

Country Link
US (1) US10776259B2 (de)
JP (1) JP5869649B2 (de)
DE (1) DE102014115877A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9196320B2 (en) * 2013-12-13 2015-11-24 Infineon Technologies Ag Method, apparatus and device for data processing
JP6708146B2 (ja) 2017-03-03 2020-06-10 株式会社デンソー ニューラルネットワーク回路
US10679712B2 (en) * 2017-12-21 2020-06-09 Cypress Semiconductor Corporation Non-volatile memory device and method of blank check
JP7120114B2 (ja) * 2019-03-27 2022-08-17 株式会社デンソー 不揮発性メモリ読出回路

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3653028A (en) * 1967-08-29 1972-03-28 Honeywell Inf Systems Code conversion device for multiple terminal data editing display system
US4047158A (en) * 1974-12-13 1977-09-06 Pertec Corporation Peripheral processing system
US4402063A (en) * 1981-09-28 1983-08-30 Bell Telephone Laboratories, Incorporated Flip-flop detector array for minimum geometry semiconductor memory apparatus
FR2810152A1 (fr) * 2000-06-13 2001-12-14 St Microelectronics Sa Memoire eeprom securisee comprenant un circuit de correction d'erreur
JP4945118B2 (ja) * 2005-11-14 2012-06-06 株式会社日立製作所 記憶容量を効率的に使用する計算機システム
JP5018779B2 (ja) * 2006-08-22 2012-09-05 日立化成工業株式会社 回路接続材料、回路部材の接続構造及び回路部材の接続構造の製造方法
KR100909358B1 (ko) * 2007-04-16 2009-07-24 삼성전자주식회사 신뢰성 높은 초기화 데이터를 제공하는 플래시 메모리 장치및 그것의 초기화 방법
JP2009272028A (ja) * 2008-04-07 2009-11-19 Renesas Technology Corp 半導体集積回路およびその動作方法
US8351290B1 (en) 2008-09-12 2013-01-08 Marvell International Ltd. Erased page detection
KR20100098969A (ko) * 2009-03-02 2010-09-10 삼성전자주식회사 에러 정정 코드들의 신뢰성을 향상시킬 수 반도체 장치, 이를 포함하는 반도체 시스템, 및 에러 정정 코드 처리 방법
JP5328732B2 (ja) * 2010-08-06 2013-10-30 ルネサスエレクトロニクス株式会社 半導体装置
US8924817B2 (en) * 2010-09-29 2014-12-30 Advanced Micro Devices, Inc. Method and apparatus for calculating error correction codes for selective data updates
JP2012181894A (ja) 2011-03-01 2012-09-20 Renesas Electronics Corp 不揮発性記憶装置およびその制御方法
WO2012166050A1 (en) * 2011-05-30 2012-12-06 Agency For Science, Technology And Research Buffer management apparatus and method
US9047210B2 (en) * 2011-09-15 2015-06-02 Sandisk Technologies Inc. Data storage device and method to correct bit values using multiple read voltages
US9235465B2 (en) * 2012-06-06 2016-01-12 University of Pittsburgh—of the Commonwealth System of Higher Education Recursively determined invertible set approach to correct multiple stuck-at faults in rewritable memory

Also Published As

Publication number Publication date
JP2015088214A (ja) 2015-05-07
JP5869649B2 (ja) 2016-02-24
US10776259B2 (en) 2020-09-15
US20150121016A1 (en) 2015-04-30

Similar Documents

Publication Publication Date Title
DE102019124438B4 (de) Multi-state-programmierung für speichervorrichtungen
DE102013020712B4 (de) Techniken zum Speichern von Bits in Speicherzellen mit Hängenbleiben-auf-0-oder-1-Fehlern
DE112014004761B4 (de) Beeinflussung des Wear-Leveling in Speichersystemen
DE102008003113B4 (de) ECC-Steuereinheit, Speichersystem und Verfahren zur Korrektur eines Fehlers
DE102015201384B4 (de) Vorrichtung und Verfahren zum Verbessern der Datenspeicherung durch Dateninvertierung
DE102017104257A1 (de) Auf Zellenstrom basierende Bitleitungsspannung
DE102017001433A1 (de) Systeme und Verfahren für adaptive Lesepegelanpassung
DE112014002632T5 (de) Lesespannungsberechnung bei Solid-State-Speichervorrichtungen
DE112011100371T5 (de) Verfahren, Vorrichtung und Computerprogrammprodukt zum Decodieren eines Codeworts
DE102010037290A1 (de) Speichersysteme und Verfahren zur Erfassung einer Verteilung von instabilen Speicherzellen
DE102018105434B4 (de) Verfahren und System zum Abtasten von gelöschten Flashspeicherseiten mit Querverweis auf verwandte Anwendungen
DE112007003080T5 (de) Verfahren, System und Vorrichtung für den ECC-Schutz von kleinen Datenstrukturen
DE102013016681B4 (de) Codieren und Decodieren von Daten zum Vornehmen von Anpassungen für Speicherzellen mit Haftfehlern
DE102014115877A1 (de) Verfahren, Vorrichtung und Einrichtung zur Datenverarbeitung
DE102017001420A1 (de) Redundanz von fehlerkorrekturcodierten daten in einem speichersystem
DE102011055714A1 (de) Verfahren zum Programmieren einer nicht-flüchtigen Speichervorrichtung
DE102013013047B4 (de) Bestimmung einer Kennung
DE102015113414A1 (de) Fehlerkorrektur unter Verwendung von WOM-Codes
DE102017103347B4 (de) Verarbeitung von daten in speicherzellen eines speichers
DE102005009700B4 (de) Programmierverfahren und nichtflüchtiger Speicher
DE102017212767B4 (de) Verfahren und Vorrichtung zur Steigerung der Zuverlässigkeit eines nicht-flüchtigen Speichers
DE112020005502T5 (de) Dynamische überprovisionierungszuweisung für zweckbestimmte blöcke
DE102015209502A1 (de) Markierungsprogrammierung in nichtflüchtigen Speichern
DE102007051192B4 (de) Speichervorrichtung, die Drei-Pegel-Zellen einsetzt, und zugehöriges Verfahren zum Verwalten
DE102016123689B4 (de) Speicherschaltung und Verfahren zum Betreiben einer Speicherschaltung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G11C0016280000

Ipc: G11C0016020000

R016 Response to examination communication