DE102021115501A1 - Leseaktualisierung zur verbesserung der leistung bei datenerhaltung für nichtflüchtigen speicher - Google Patents

Leseaktualisierung zur verbesserung der leistung bei datenerhaltung für nichtflüchtigen speicher Download PDF

Info

Publication number
DE102021115501A1
DE102021115501A1 DE102021115501.0A DE102021115501A DE102021115501A1 DE 102021115501 A1 DE102021115501 A1 DE 102021115501A1 DE 102021115501 A DE102021115501 A DE 102021115501A DE 102021115501 A1 DE102021115501 A1 DE 102021115501A1
Authority
DE
Germany
Prior art keywords
data
memory cells
state
read
voltage
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
DE102021115501.0A
Other languages
English (en)
Inventor
Ravi Kumar
Deepanshu Dutta
Vishwanath Basavaegowda Shanthakumar
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.)
SanDisk Technologies LLC
Original Assignee
SanDisk Technologies LLC
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 SanDisk Technologies LLC filed Critical SanDisk Technologies LLC
Publication of DE102021115501A1 publication Critical patent/DE102021115501A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
    • 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
    • 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
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • 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
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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/08Address circuits; Decoders; Word-line control circuits
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)

Abstract

Es werden eine Speichereinrichtung und ein Betriebsverfahren bereitgestellt. Die Einrichtung schließt Speicherzellen ein, die jeweils mit einer Wortleitung verbunden und in einem von einer Vielzahl von Blöcken angeordnet und so konfiguriert sind, dass sie eine einem Datenzustand entsprechende Schwellenspannung beibehalten. Die Speicherzellen sind entweder in einem ersten Lesezustand, in dem eine Wortleitungsspannung entladen ist, oder in einem zweiten Lesezustand, in dem die Wortleitungsspannung bis zu einem Restspannungsniveau hochgekoppelt ist, betreibbar. Die Steuerschaltung bestimmt ein Einschaltungsereignis und legt periodisch eine vorbestimmte Aktualisierungslesespannung an die Wortleitung für eine vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken in einem festgelegten Intervall auf der Basis von mindestens einem Datenerhaltungsfaktor an, um die Speicherzellen der Vielzahl von Blöcken als Antwort auf die Bestimmung des Einschaltungsereignisses in dem zweiten Lesezustand zu halten.

Description

  • GEBIET
  • Die vorliegende Anmeldung bezieht sich auf nichtflüchtige Speichervorrichtungen und den Betrieb von nichtflüchtigen Speichervorrichtungen.
  • HINTERGRUND
  • Dieser Abschnitt liefert Hintergrundinformationen in Bezug auf die Technologie, die mit der vorliegenden Offenbarung verbunden ist, und ist somit nicht notwendigerweise Stand der Technik.
  • Halbleiterspeichervorrichtungen sind zur Verwendung in verschiedenen elektronischen Vorrichtungen beliebter geworden. Zum Beispiel wird ein nichtflüchtiger Halbleiterspeicher in Mobiltelefonen, Digitalkameras, persönlichen digitalen Assistenten, mobilen Rechenvorrichtungen, nichtmobilen Rechenvorrichtungen und anderen Vorrichtungen verwendet.
  • Ein Ladungsspeichermaterial wie ein Floating-Gate oder ein Ladungsfängermaterial kann in solchen Speichervorrichtungen verwendet werden, um eine Ladung zu speichern, die einen Datenzustand darstellt. Ein Ladungseinfangmaterial kann vertikal in einer dreidimensionalen (3D) gestapelten Speicherstruktur oder horizontal in einer zweidimensionalen (2D) Speicherstruktur angeordnet sein. Ein Beispiel für eine 3D-Speicherstruktur ist die Bit-Cost-Scalable-Architektur (BiCS-Architektur), die einen Stapel alternierender leitender und dielektrischer Schichten aufweist.
  • Eine Speichervorrichtung schließt Speicherzellen ein, die beispielsweise in Ketten angeordnet sein können, wobei Auswahlgatetransistoren an den Enden der Kette bereitgestellt werden, um einen Kanal der Kette wahlweise mit einer Sourceleitung oder einer Bitleitung zu verbinden. Beim Betrieb solcher Speichervorrichtungen ergeben sich jedoch verschiedene Herausforderungen.
  • KURZDARSTELLUNG
  • Dieser Abschnitt stellt eine allgemeine Zusammenfassung der vorliegenden Offenbarung bereit und ist keine umfassende Offenbarung ihres vollen Schutzumfangs oder aller ihrer Merkmale und Vorteile.
  • Eine Aufgabe der vorliegenden Offenbarung ist es, eine Speichervorrichtung und ein Verfahren zum Betreiben der Speichervorrichtung bereitzustellen, welche die oben erwähnten Nachteile angehen und überwinden.
  • Dementsprechend ist es ein Gesichtspunkt der vorliegenden Offenbarung, eine Einrichtung bereitzustellen, die eine Vielzahl von Speicherzellen einschließt. Jede der Vielzahl von Speicherzellen ist mit einer von einer Vielzahl von Wortleitungen verbunden und in einem von einer Vielzahl von Blöcken angeordnet und so konfiguriert, dass sie eine Schwellenspannung entsprechend einem von einer Vielzahl von Datenzuständen beibehält. Die Vielzahl von Speicherzellen ist in einem von einem ersten Lesezustand, in dem eine Wortleitungsspannung der Vielzahl von Wortleitungen entladen ist, und einem zweiten Lesezustand, in dem die Wortleitungsspannung der Vielzahl von Wortleitungen bis zu einem Restspannungsniveau hochgekoppelt ist, betreibbar. Die Steuerungschaltung ist mit der Vielzahl der Wortleitungen gekoppelt und so konfiguriert, dass sie ein Einschaltungsereignis der Einrichtung bestimmt, bei dem sich die Vielzahl der Speicherzellen in dem ersten Lesezustand befindet. Die Steuerschaltung ist zusätzlich so konfiguriert, dass sie periodisch eine vorbestimmte Aktualisierungslesespannung an eine ausgewählte der Vielzahl von Wortleitungen für eine vorbestimmte Zeitdauer für jeden der Vielzahl von Blöcken in einem von einer Vielzahl von festgelegten Intervallen auf der Grundlage von mindestens einem Datenerhaltungsfaktor anlegt, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken als Antwort auf die Bestimmung des Einschaltungsereignisses der Einrichtung in dem zweiten Lesezustand zu halten.
  • Gemäß einem anderen Gesichtspunkt der Offenbarung ist eine Steuerung in Kommunikation mit einer Einrichtung, die eine Vielzahl von Speicherzellen einschließt. Jede der Vielzahl von Speicherzellen ist mit einer von einer Vielzahl von Wortleitungen verbunden und in einem von einer Vielzahl von Blöcken angeordnet und so konfiguriert, dass sie eine Schwellenspannung entsprechend einem von einer Vielzahl von Datenzuständen beibehält. Die Vielzahl von Speicherzellen ist in einem von einem ersten Lesezustand, in dem eine Wortleitungsspannung der Vielzahl von Wortleitungen entladen ist, und einem zweiten Lesezustand, in dem die Wortleitungsspannung der Vielzahl von Wortleitungen bis zu einem Restspannungsniveau hochgekoppelt ist, betreibbar. Die Steuerung ist so konfiguriert, dass sie ein Einschaltungsereignis der Einrichtung bestimmt, bei dem sich die Vielzahl der Speicherzellen im ersten Lesezustand befindet. Die Steuerung ist auch so konfiguriert, dass sie die Speichereinrichtung anweist, periodisch eine vorbestimmte Aktualisierungslesespannung an eine ausgewählte der Vielzahl von Wortleitungen für eine vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken in einem von einer Vielzahl von festgelegten Intervallen auf der Grundlage von mindestens einem Datenerhaltungsfaktor anzulegen, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand in Antwort auf die Bestimmung des Einschaltungsereignisses der Speichereinrichtung zu halten.
  • Gemäß einem zusätzlichen Gesichtspunkt der Offenbarung wird ein Verfahren zum Betrieb einer Speichereinrichtung bereitgestellt. Die Speichereinrichtung schließt eine Vielzahl von Speicherzellen ein. Jede der Vielzahl von Speicherzellen ist mit einer von einer Vielzahl von Wortleitungen verbunden und in einem von einer Vielzahl von Blöcken angeordnet und so konfiguriert, dass sie eine Schwellenspannung entsprechend einem von einer Vielzahl von Datenzuständen beibehält. Die Vielzahl von Speicherzellen ist in einem von einem ersten Lesezustand, in dem eine Wortleitungsspannung der Vielzahl von Wortleitungen entladen ist, und einem zweiten Lesezustand, in dem die Wortleitungsspannung der Vielzahl von Wortleitungen bis zu einem Restspannungsniveau hochgekoppelt ist, betreibbar. Das Verfahren schließt den Schritt des Bestimmens eines Einschaltungsereignisses der Speichereinrichtung ein, bei dem sich die Vielzahl der Speicherzellen im ersten Lesezustand befindet. Das Verfahren fährt fort mit dem Schritt des periodischen Anlegens einer vorbestimmten Aktualisierungslesespannung an eine ausgewählte der Vielzahl von Wortleitungen für eine vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken in einem von einer Vielzahl von festgelegten Intervallen auf der Basis von mindestens einem Datenerhaltungsfaktor, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand in Antwort auf das Bestimmen des Einschaltungsereignisses der Speichereinrichtung zu halten.
  • Weitere Anwendungsgebiete werden aus der hierin gegebenen Beschreibung ersichtlich. Die Beschreibung und die speziellen Beispiele in dieser Kurzdarstellung dienen nur der Veranschaulichung und sollen den Schutzumfang der vorliegenden Offenbarung nicht einschränken.
  • Figurenliste
  • Die hierin beschriebenen Zeichnungen dienen nur der Veranschaulichung ausgewählter Ausführungsformen und nicht aller möglichen Implementierungen, und sollen den Schutzumfang der vorliegenden Offenbarung nicht einschränken.
    • 1A ist ein Blockdiagramm einer beispielhaften Speichereinrichtung oder -vorrichtung gemäß den Gesichtspunkten der Offenbarung;
    • 1B zeigt ein Beispiel einer Speicherzelle gemäß Gesichtspunkten der Offenbarung;
    • 1C zeigt ein Beispiel für die Schaltung zur Temperaturerfassung von 1A gemäß den Gesichtspunkten der Offenbarung;
    • 2 ist ein Blockdiagramm der beispielhaften Speichervorrichtung, das zusätzliche Details der Steuerung gemäß den Gesichtspunkten der Offenbarung zeigt;
    • 3 ist eine perspektivische Ansicht einer Speichervorrichtung, die einen Satz von Blöcken in einer beispielhaften 3D-Konfiguration der Speicherstruktur von 1 gemäß Gesichtspunkten der Offenbarung aufweist;
    • 4 zeigt eine beispielhafte Querschnittsansicht eines Abschnitts eines der Blöcke von 3 gemäß Gesichtspunkten der Offenbarung;
    • 5 zeigt eine Darstellung des Speicherloch-/Säulendurchmessers im Stapel von 4 gemäß den Gesichtspunkten der Offenbarung;
    • 6 stellt eine Nahansicht eines Bereichs des Stapels von 4 gemäß Gesichtspunkten der Offenbarung dar;
    • 7A stellt eine beispielhafte Ansicht von NAND-Ketten in Unterblöcken in einer 3D-Konfiguration, die mit 4 übereinstimmt, gemäß Gesichtspunkten der Offenbarung dar;
    • 7B stellt die Wortleitung und die SGD-Schichten in einem beispielhaften Satz von Blöcken dar, der gemäß den Gesichtspunkten der Offenbarung mit 4 übereinstimmt;
    • 8A stellt eine beispielhafte Schwellenspannungsverteilung (Vth) von Speicherzellen dar, bei der acht Datenzustände verwendet werden, in einer ersten Lesebedingung im Vergleich zu einer zweiten Lesebedingung gemäß Gesichtspunkten der Offenbarung;
    • 8B stellt beispielhafte Bitfolgen für untere, mittlere und obere Datenseiten und zugehörige Lesespannungen für die Vth-Verteilungen von 8A gemäß Gesichtspunkten der Offenbarung dar;
    • 9 stellt eine Wellenform eines beispielhaften Programmiervorgangs gemäß den Gesichtspunkten der Offenbarung dar;
    • 10A stellt eine Darstellung von beispielhaften Wellenformen in einem Programmiervorgang dar, die die Einkopplung einer Wortleitungsspannung gemäß den Gesichtspunkten der Offenbarung zeigen;
    • 10B stellt eine Darstellung einer Kanalspannung (Vch) entsprechend 10 gemäß Gesichtspunkten der Offenbarung dar;
    • 10C stellt eine Darstellung von beispielhaften Wellenformen in einem Lesevorgang dar, die die Einkopplung einer Wortleitungsspannung gemäß den Gesichtspunkten der Offenbarung zeigen;
    • 10D stellt eine Darstellung einer Kanalspannung (Vch) entsprechend 10C gemäß Gesichtspunkten der Offenbarung dar;
    • 10E stellt die Kurvenformen von 10C dar, die einen Verfall der hochgekoppelten Spannung der Wortleitung gemäß Gesichtspunkten der Offenbarung zeigen;
    • 10F stellt eine Darstellung einer Kanalspannung in Übereinstimmung mit 10E gemäß Gesichtspunkten der Offenbarung dar;
    • 10G stellt eine Darstellung einer Vth einer Speicherzelle dar, die mit der hochgekoppelten Wortleitung verbunden ist, in Übereinstimmung mit 10E und 10F gemäß Gesichtspunkten der Offenbarung;
    • 11A stellt die Steuer-Gate- und Kanalspannungen an einer Speicherzelle dar, die als Kondensator wirkt, wenn die Steuer-Gate-Spannung bei einer Erfassung gemäß den Gesichtspunkten der Offenbarung verringert wird;
    • 11B stellt einen Abschnitt einer Speicherzelle dar, der die Elektroneninjektion in einen Ladungseinfangbereich während einer schwachen Programmierung gemäß den Gesichtspunkten der Offenbarung zeigt;
    • 12 zeigt eine Aktualisierungsfrequenz- und Temperaturnachschlagetabelle, die eine Vielzahl festgelegter Intervalle einschließt, die jeweils einer von einer Vielzahl von Größenordnungen der Chiptemperatur gemäß den Gesichtspunkten der Offenbarung entsprechen;
    • 13A und 13B zeigen die mögliche Schwellenspannung für jede einer Vielzahl von Speicherzellen, die ein Schwellenfenster überspannen, wobei jede der Vielzahl von Speicherzellen so konfiguriert werden kann, dass sie eine Vielzahl von Bits gemäß Gesichtspunkten der Offenbarung speichert;
    • 14 zeigt Verteilungen der Schwellenspannung des vierzehnten Datenzustands und eines fünfzehnten Datenzustands vor und nach einer Überprüfung der Datenerhaltung gemäß Gesichtspunkten der Offenbarung;
    • 15 veranschaulicht die Schritte eines Verfahrens zum Betrieb der Speichereinrichtung gemäß den Gesichtspunkten der Offenbarung;
    • 16A-16B zeigen eine Sektor-Fehlerrate (SFR) in Abhängigkeit von Fehlerbitanzahl (FBC)/Sektor für unterschiedliche Datenerhaltungszeiträume mit und ohne Aktualisierung oder Dummy-Lesung für eine beispielhafte Speichereinrichtung gemäß den Gesichtspunkten der Offenbarung;
    • 17 zeigt Schwellenspannungsverteilungen für eine beispielhafte Speichereinrichtung nach 80 Stunden Datenerhaltung bei Backen mit 85 Grad Celsius mit 2000 Schreib-/Löschzyklen mit und ohne Aktualisierung oder Dummy-Lesen gemäß Gesichtspunkten der Offenbarung;
    • 18 zeigt eine Verbesserung der Schwellenspannungstoleranz für die Datenerhaltung beim Aktualisierungslesen für eine beispielhafte Speichereinrichtung gemäß den Gesichtspunkten der Offenbarung; und
    • 19 zeigt Schwellenspannungsverteilungen für eine beispielhafte Speichereinrichtung nach 80 Stunden Datenerhaltung bei 85 Grad Celsius mit verschiedenen Schreib-/Löschzyklen mit und ohne Aktualisierung oder Dummy-Lesen gemäß Gesichtspunkten der Offenbarung.
  • Zum besseren Verständnis wurden, soweit möglich, identische Bezugszeichen verwendet, um identische Elemente zu bezeichnen, die den Figuren gemein sind. Es wird in Betracht gezogen, dass die in einer Ausführungsform offenbarten Elemente ohne besondere Aufzählung vorteilhaft auf andere Ausführungsformen angewendet werden können.
  • DETAILLIERTE BESCHREIBUNG
  • In der folgenden Beschreibung werden Einzelheiten ausgeführt, um ein Verständnis der vorliegenden Offenbarung zu ermöglichen. In einigen Fällen wurden spezielle Schaltungen, Strukturen und Techniken nicht im Detail beschrieben oder gezeigt, um die Offenbarung nicht unklar zu machen.
  • Im Allgemeinen bezieht sich die vorliegende Offenbarung auf nichtflüchtige Speichervorrichtungen eines Typs, der zur Verwendung in vielen Anwendungen gut geeignet ist. Die nichtflüchtige Speichereinrichtung und die zugehörigen Verfahren dieser Offenbarung werden in Verbindung mit einer oder mehreren Ausführungsformen beschrieben. Jedoch dienen die offenbarten speziellen beispielhaften Ausführungsformen lediglich der Beschreibung der erfinderischen Konzepte, Merkmale, Vorteile und Aufgaben mit ausreichender Klarheit, um es dem Fachmann zu ermöglichen, die Offenbarung zu verstehen und auszuführen. Insbesondere werden die beispielhaften Ausführungsformen vorgestellt, damit diese Offenbarung gründlich ist und dem Fachmann den Schutzumfang vollständig vermittelt. Es werden zahlreiche spezielle Einzelheiten ausgeführt, wie etwa Beispiele für spezielle Komponenten, Vorrichtungen und Verfahren, um ein gründliches Verständnis von Ausführungsformen der vorliegenden Offenbarung zu ermöglichen. Es wird für den Fachmann offensichtlich sein, dass spezielle Einzelheiten nicht eingesetzt werden müssen, dass beispielhafte Ausführungsformen in vielen verschiedenen Formen verkörpert sein können und dass keine dahin gehend ausgelegt werden sollte, dass sie den Schutzumfang der Offenbarung einschränkt. In einigen beispielhaften Ausführungsformen werden gut bekannte Prozesse, gut bekannte Vorrichtungsstrukturen und gut bekannte Technologien nicht im Detail beschrieben.
  • Bei einigen Speichervorrichtungen sind Speicherzellen wie in NAND-Ketten in einem Block oder Unterblock miteinander verbunden. Eine NAND-Kette weist eine Anzahl von in Reihe verbundenen Speicherzellen zwischen einem oder mehreren Drain-seitigen SG-Transistoren (SGD-Transistoren) auf einer Drain-Seite der NAND-Kette, die mit einer Bitleitung verbunden ist, und einem oder mehreren Source-seitigen SG-Transistoren (SGS-Transistoren) auf einer Source-Seite der NAND-Kette auf, die mit einer Sourceleitung verbunden ist. Weiterhin können die Speicherzellen mit einer gemeinsamen Steuergateleitung (z. B. Wortleitung), die auf ein Steuergate wirkt, angeordnet sein. Ein Satz von Wortleitungen erstreckt sich von der Sourceseite eines Blocks zu der Drainseite eines Blocks. Speicherzellen können auch in anderen Arten von Ketten sowie auf andere Weisen verbunden werden.
  • Die Speicherzellen können Datenspeicherzellen einschließen, die dazu geeignet sind, Benutzerdaten zu speichern, und Dummy- oder Nichtdatenspeicherzellen, die nicht dazu geeignet sind, Benutzerdaten zu speichern. Eine Dummy-Wortleitung ist mit einer Dummy-Speicherzelle verbunden. Eine oder mehrere Dummy-Speicherzellen können an dem Drain- und/oder Source-Ende einer Kette von Speicherzellen bereitgestellt werden, um einen graduellen Übergang in dem Kanalgradienten bereitzustellen.
  • Während eines Programmiervorgangs werden die Speicherzellen gemäß einer Wortleitungsprogrammierreihenfolge programmiert. Zum Beispiel kann das Programmieren an der Wortleitung an der Sourceseite des Blocks beginnen und an der Wortleitung an der Drainseite des Blocks fortgesetzt werden. Bei einem Ansatz wird jede Wortleitung vollständig programmiert, bevor eine nächste Wortleitung programmiert wird. So wird zum Beispiel eine erste Wortleitung, WL0, in einem oder mehreren Programmierdurchgängen programmiert, bis die Programmierung abgeschlossen ist. Als nächstes wird eine zweite Wortleitung, WL1, mit einem oder mehreren Programmierdurchgängen programmiert, bis die Programmierung abgeschlossen ist, und so weiter. Ein Programmierdurchgang kann einen Satz von sich erhöhenden Spannungen einschließen, die an die Wortleitung in jeweiligen Programmschleifen oder Programmierverifizierdurchläufen angelegt werden, wie in 9 dargestellt. Verifizierungsvorgänge können nach jeder Programmierspannung durchgeführt werden, um zu bestimmen, ob die Speicherzellen ein Programmieren abgeschlossen haben. Wenn ein Programmieren für eine Speicherzelle abgeschlossen ist, kann sie von einem weiteren Programmieren ausgeschlossen werden, während ein Programmieren für andere Speicherzellen in nachfolgenden Programmierschleifen fortgeführt wird.
  • Die Speicherzellen können auch gemäß einer Unterblockprogrammierreihenfolge programmiert werden, wobei Speicherzellen in einem Unterblock oder einem Abschnitt eines Blocks programmiert werden, bevor Speicherzellen in einem anderen Unterblock programmiert werden.
  • Jede Speicherzelle kann einem Datenzustand gemäß Schreibdaten in einem Programmierbefehl zugeordnet sein. Basierend auf ihrem Datenzustand bleibt eine Speicherzelle entweder in dem gelöschten Zustand oder wird in einen programmierten Zustand programmiert. Zum Beispiel gibt es in einer Speichervorrichtung mit einem Bit pro Zelle zwei Datenzustände einschließlich des gelöschten Zustands und des programmierten Zustands. In einer Speichervorrichtung mit zwei Bits pro Zelle gibt es vier Datenzustände einschließlich des gelöschten Zustands und drei höheren Datenzuständen, die als die Datenzustände A, B und C bezeichnet werden. In einer Speichervorrichtung mit drei Bits pro Zelle gibt es acht Datenzustände einschließlich des gelöschten Zustands und sieben höheren Datenzuständen, die als die Datenzustände A, B, C, D, E, F und G bezeichnet werden (siehe 8A). In einer Speichervorrichtung mit vier Bits pro Zelle gibt es sechzehn Datenzustände einschließlich des gelöschten Zustands und fünfzehn höheren Datenzuständen. Die Datenzustände können als S0, S1, S2, S3, S4, S5, S6, S7, S8, S9, S10, S11, S12, S13, S14 und S15 bezeichnet werden, wobei S0 der gelöschte Zustand ist.
  • Nachdem die Speicherzellen programmiert sind, können die Daten in einem Lesevorgang zurückgelesen werden. Ein Lesevorgang kann ein Anlegen einer Reihe von Lesespannungen an eine Wortleitung beinhalten, während eine Abtastschaltlogik bestimmt, ob Zellen, die mit der Wortleitung verbunden sind, in einem leitenden oder nichtleitenden Zustand sind. Wenn eine Zelle in einem nichtleitenden Zustand ist, überschreitet die Vth der Speicherzelle die Lesespannung. Die Lesespannungen werden auf Pegel eingestellt, von denen erwartet wird, dass sie zwischen den Schwellenwertspannungspegeln von benachbarten Datenzuständen liegen.
  • Es wurde jedoch beobachtet, dass die Vth einer Speicherzelle variieren kann, je nachdem, wann der Lesevorgang stattfindet. Zum Beispiel kann die Vth in den Speicherzellen abhängig von einem hochgekoppelten Zustand der Wortleitungen beim Lesevorgang variieren. Es kann ein „erster Lesezustand“ definiert werden, bei dem die Wortleitungen nicht hochgekoppelt sind, und ein „zweiter Lesezustand“, bei dem die Wortleitungen hochgekoppelt sind.
  • Die Speicherzellen können sich nach einem Einschaltungsereignis in der Speichervorrichtung im ersten Lesezustand befinden. Wenn die Speichervorrichtung für die Verwendung eingeschaltet wird, kann ein Vorgang auftreten, der auf fehlerhafte Blöcke prüft. Bei diesem Vorgang wird 0 V oder eine andere niedrige Spannung an die Wortleitungen angelegt. Dadurch wird ein eventuelles Hochkoppeln der Wortleitungsspannungen abgeleitet.
  • Die Wortleitungen können auch in einem Block entladen werden, wenn die Spannungen der Wortleitungen auf ein niedriges Niveau eingestellt sind. Dies kann auftreten, wenn der Block inaktiv ist, während ein Vorgang in einem anderen Block ausgeführt wird. Die Zellen können sich auch im ersten Lesezustand befinden, nachdem nach einer letzten Erfassung eine längere Zeit vergangen ist, da sich die Wortleitungen mit der Zeit entladen. Das Hochkoppeln der Wortleitungen verursacht eine Vth-Verschiebung in den Zellen durch versehentliches Programmieren oder Löschen. Da die Wortleitungen im ersten Lesezustand nicht signifikant hochgekoppelt sind, tritt diese Vth nicht auf.
  • Die Zellen können sich im zweiten Lesezustand befinden, wenn das Lesen kurz, z. B. Sekunden oder Minuten, nach einem letzten Erfassungsvorgang erfolgt. Da die Wortleitungen im zweiten Lesezustand relativ stark hochgekoppelt sind, kommt es durch die Wortleitungsspannung zu einem Programmieren bzw. Löschen der Zellen und zu einer entsprechenden Verschiebung der Vth. Insbesondere die Wortleitungen mit hochgekoppelter Spannung können eine schwache Programmierung von Zellen verursachen, die eine relativ niedrige Vth haben, die niedriger ist als die hochgekoppelte Spannung, z. B. Zellen in niedriger programmierten Datenzuständen, was zu einer Vth-Aufwärtsverschiebung für diese Zellen führt. Außerdem kann es zu einem schwachen Löschen von Zellen kommen, die eine relativ hohe Vth haben, die höher ist als die hochgekoppelte Spannung, z. B. Zellen in höher programmierten Datenzuständen, was zu einer Vth-Abwärtsverschiebung für diese Zellen führt.
  • Die Zellen gehen allmählich vom zweiten Lesezustand in den ersten Lesezustand über, z. B. nach einer Stunde, wenn die Wortleitungen entladen werden.
  • Das Hochkoppeln der Wortleitungsspannung wird durch die Spannungen einer Erfassung, wie beispielsweise einer Verifizierungsoperation, die in Verbindung mit einer Programmieroperation erfolgt, oder einer Leseoperation, die nach Abschluss einer Programmieroperation erfolgt, verursacht. Die Erfassung der Zellen erfolgt durch Anlegen einer Erfassungsspannung (z. B. einer Lese-A/erifizierungsspannung) an eine ausgewählte Wortleitung. Gleichzeitig wird an den nicht ausgewählten Wortleitungen eine Lesedurchgangsspannung angelegt und dann herabgestuft. Diese Herabstufung reduziert vorübergehend eine Kanalspannung aufgrund von kapazitiver Kopplung. Wenn die Kanalspannung wieder auf ihr nominales Niveau ansteigt, bewirkt dies eine Erhöhung bzw. Hochkoppeln der Wortleitungsspannungen, auch durch kapazitive Kopplung. Bei Zellen in den unteren Datenzuständen nimmt die Vth allmählich ab, da Elektronen, die im ladungseinfangenden Material der Zellen gefangen sind, herausgelöst werden und in den Kanal zurückkehren. Bei Zellen in den höheren Datenzuständen steigt die Vth allmählich an, wenn Elektronen aus dem Kanal entfernt werden. Siehe 8A. Techniken, die hierin bereitgestellt werden, befassen sich mit den obigen und anderen Problemen.
  • 1A ist ein Blockdiagramm einer beispielhaften Speichervorrichtung. Die Speichervorrichtung 100 wie ein nichtflüchtiges Speichersystem kann ein oder mehrere Speicherelemente 108 einschließen. Das Speicher-Die 108 schließt eine Speicherstruktur 126 von Speicherzellen, z. B. ein Array von Speicherzellen, eine Steuerschaltung 110 und Lese/Schreib-Schaltungen 128 ein. Die Speicherstruktur 126 ist durch Wortleitungen über einen Zeilendecodierer 124 und durch Bitleitungen über einen Spaltendecodierer 132 adressierbar. Die Lese-/Schreibschaltungen 128 schließen mehrere Abtastblöcke 51, 52, ..., 53 (Abtastschaltlogik) ein und ermöglichen das parallele Lesen oder Programmieren einer Seite von Speicherzellen. Üblicherweise ist eine Steuerung 122 in der gleichen Speichervorrichtung 100 (z. B. einer entfernbaren Speicherkarte) enthalten wie das eine oder die mehreren Speicherchips 108. Die Steuerung kann von dem Speicher-Die getrennt sein. Befehle und Daten werden zwischen dem Host 140 und der Steuerung 122 über einen Datenbus 120 und zwischen der Steuerung und dem einen oder den mehreren Speicher-Dies 108 über Leitungen 118 übertragen.
  • Die Speicherstruktur kann 2D oder 3D sein. Die Speicherstruktur kann ein oder mehrere Arrays von Speicherzellen aufweisen, einschließlich eines 3D-Arrays. Die Speicherstruktur kann eine monolithische dreidimensionale Speicherstruktur aufweisen, in der mehrere Speicherebenen oberhalb von (und nicht in) einem einzelnen Substrat wie einem Wafer ohne dazwischen liegende Substrate ausgebildet sind. Die Speicherstruktur kann jede Art von nichtflüchtigem Speicher aufweisen, der monolithisch in einer oder mehreren physischen Ebenen von Speicherzellenanordnungen ausgebildet ist, die einen aktiven Bereich aufweisen, der über einem Siliziumsubstrat angeordnet ist. Die Speicherstruktur kann sich in einer nichtflüchtigen Speichervorrichtung befinden, die Schaltlogik aufweist, die dem Betrieb der Speicherzellen zugeordnet sind, ganz gleich, ob sich die zugehörige Schaltlogik oberhalb oder innerhalb des Substrats befindet.
  • Die Steuerschaltlogik 110 arbeitet mit den Lese-/Schreibschaltungen 128 zusammen, um Speichervorgänge auf der Speicherstruktur 126 auszuführen, und schließt eine Zustandsmaschine 112, einen On-Chip-Adressdecodierer 114 und ein Leistungssteuerungsmodul 116 ein. Die Zustandsmaschine 112 stellt eine Steuerung von Speichervorgängen auf Speicherebene bereit. Die Zustandsmaschine kann eine Uhr 112a einschließen, um eine verstrichene Zeit seit einer letzten Erfassung zu bestimmen, wie weiterhin unten beschrieben. Es kann ein Speicherbereich 113 bereitgestellt werden, z. B. für Sätze von Lesespannungen, wie weiterhin unten beschrieben. Im Allgemeinen kann der Speicherbereich Betriebsparameter und Software/Code speichern. Ein Timer 113a kann auch verwendet werden, um das Timing von vorbestimmten Aktualisierungslesespannungsimpulsen für die Wortleitungen zu bestimmen, was, zum Beispiel, weiter unten genauer beschrieben wird. Es kann auch ein Temperatursensor 115 bereitgestellt werden.
  • In einer Ausführungsform ist die Zustandsmaschine durch die Software programmierbar. In anderen Ausführungsformen verwendet die Zustandsmaschine keine Software und ist vollständig in Hardware (z. B. elektrischen Schaltungen) implementiert.
  • Der On-Chip-Adressdecodierer 114 stellt eine Adressschnittstelle zwischen derjenigen, die von dem Host oder einer Speichersteuerung verwendet wird, und der Hardware-Adresse bereit, die von den Decodierern 124 und 132 verwendet wird. Das Leistungssteuermodul 116 steuert die Leistung und die Spannungen, die den Wortleitungen, Auswahlgateleitungen und Bitleitungen während Speichervorgängen zugeführt werden. Es kann Treiber für Wortleitungen, SGS- und SGD-Transistoren und Sourceleitungen einschließen. Die Abtastblöcke können in einem Ansatz Bitleitungstreiber einschließen. Ein SGS-Transistor ist ein Auswahlgate-Transistor an einem Source-Ende einer NAND-Kette, und ein SGD-Transistor ist ein Auswahlgate-Transistor an einem Drain-Ende einer NAND-Kette.
  • In einigen Implementierungen können einige der Komponenten kombiniert werden. Bei verschiedenen Ausgestaltungen können eine oder mehrere der Komponenten (allein oder in Kombination), andere als die Speicherstruktur 126, als mindestens eine Steuerschaltung betrachtet werden, die dazu eingerichtet ist, die hierin beschriebenen Techniken einschließlich der Schritte der hierin beschriebenen Verfahren durchzuführen. Zum Beispiel kann eine Steuerschaltung ein beliebiges aus einer Steuerschaltlogik 110, einer Zustandsmaschine 112, Decodierern 114 und 132, einem Leistungssteuerungsmodul 116, Abtastblöcken 51, 52, ... , 53, Lese-/Schreibschaltungen 128, einer Steuerung 122 und so weiter oder eine Kombination davon einschließen.
  • Die Off-Chip-Steuerung 122 (die in einer Ausführungsform eine elektrische Schaltung ist) kann einen Prozessor 122c, Speichervorrichtungen (Speicher) wie etwa ROM 122a und RAM 122b und eine Fehlerkorrekturcode-Maschine (ECC-Maschine) 245 aufweisen. Die ECC-Engine kann eine Reihe von Lesefehlern korrigieren.
  • Eine Speicherschnittstelle 122d kann ebenfalls bereitgestellt werden. Die Speicherschnittstelle, die mit ROM, RAM und Prozessor in Kommunikation steht, ist eine elektrische Schaltung, die eine elektrische Schnittstelle zwischen Steuerung und Speicher-Die bereitstellt. Zum Beispiel kann die Speicherschnittstelle das Format oder die Zeitsteuerung von Signalen verändern, einen Puffer bereitstellen, von Spitzen isolieren, ein E/A zwischenspeichern und so weiter. Der Prozessor kann über die Speicherschnittstelle 122 d Befehle an die Steuerschaltung 110 (oder jede andere Komponente des Speicherchips) geben.
  • Die Speichervorrichtung weist einen Code wie einen Satz von Anweisungen auf und der Prozessor ist dazu betreibbar, den Satz von Anweisungen auszuführen, um die hierin beschriebene Funktionalität bereitzustellen. Alternativ oder zusätzlich kann der Prozessor auf Code von einer Speichervorrichtung 126a der Speicherstruktur zugreifen, wie etwa auf einen reservierten Bereich von Speicherzellen in einer oder mehreren Wortleitungen.
  • Der Code kann zum Beispiel von der Steuerung verwendet werden, um auf die Speicherstruktur zuzugreifen, wie etwa für Programmier-, Lese- und Löschvorgänge. Der Code kann Bootcode und Steuercode (z. B. einen Satz von Befehlen) einschließen. Der Bootcode ist eine Software, die die Steuerung während eines Boot- oder Startvorgangs initialisiert und der Steuerung ermöglicht, auf die Speicherstruktur zuzugreifen. Der Code kann von der Steuerung verwendet werden, um eine oder mehrere Speicherstrukturen zu steuern. Nach dem Einschalten holt der Prozessor 122c den Bootcode aus dem ROM 122a oder der Speichervorrichtung 126a zur Ausführung, und der Bootcode initialisiert die Systemkomponenten und lädt den Steuercode in den RAM 122b. Sobald der Steuercode in den RAM geladen ist, wird er durch den Prozessor ausgeführt. Der Steuercode enthält Treiber zum Durchführen grundlegender Aufgaben, wie etwa Steuern und Zuweisen von Speicher, Priorisieren der Verarbeitung von Befehlen und Steuern von Eingabe- und Ausgabeports.
  • Im Allgemeinen kann der Steuercode Anweisungen einschließen, um die hierin beschriebenen Funktionen einschließlich der weiter unten erläuterten Schritte der Flussdiagramme durchzuführen und um die Spannungswellenformen einschließlich der weiter unten erörterten bereitzustellen. Eine Steuerschaltung kann dazu eingerichtet sein, die Anweisungen auszuführen, um die hierin beschriebenen Funktionen durchzuführen.
  • In einer Ausführungsform ist der Host eine Rechenvorrichtung (z. B. ein Laptop, ein Desktop, ein Smartphone, ein Tablet, eine Digitalkamera), die einen oder mehrere Prozessoren, eine oder mehrere prozessorlesbare Speichervorrichtungen (RAM, ROM, Flash-Speicher, Festplattenlaufwerk, Solid-State-Memory) einschließt, die einen prozessorlesbaren Code (z. B. eine Software) zum Programmieren der einen oder der mehreren Prozessoren speichert, um die hierin beschriebenen Verfahren durchzuführen. Der Host kann auch einen zusätzlichen Systemspeicher, eine oder mehrere Eingabe-/Ausgabeschnittstellen und/oder eine oder mehrere Eingabe-/Ausgabevorrichtungen einschließen, die mit dem einem oder den mehreren Prozessoren in Kommunikation stehen.
  • Andere Arten von nichtflüchtigen Speichern zusätzlich zu NAND-Flash-Speichern können ebenfalls verwendet werden.
  • Halbleiterspeichervorrichtungen schließen flüchtige Speichervorrichtungen ein, wie etwa Dynamic Random Access Memory-Vorrichtungen („DRAM-Vorrichtungen“) oder Static Random Access Memory-Vorrichtungen („SRAM-Vorrichtungen“), nichtflüchtige Speichervorrichtungen, wie etwa Resistive Random Access Memory („ReRAM“), Electrically Erasable Programmable Read Only Memory („EEPROM“), Flash-Speicher (der auch als Untergruppe eines EEPROM betrachtet werden kann), Ferroelectric Random Access Memory („FRAM“) und Magnetoresistive Random Access Memory („MRAM“), und andere Halbleiterelemente, die Informationen speichern können. Jeder Typ von Speichervorrichtung kann unterschiedliche Konfigurationen aufweisen. Zum Beispiel können Flash-Speichervorrichtungen in einer NAND- oder NOR-Konfiguration eingerichtet sein.
  • Die Speichervorrichtungen können aus passiven und/oder aktiven Elementen in beliebigen Kombinationen gebildet sein. Als ein nichteinschränkendes Beispiel schließen passive Halbleiterspeicherelemente ReRAM-Vorrichtungselemente ein, die in einigen Ausführungsformen ein widerstandsschaltendes Speicherelement wie ein Anti-Fuse- oder Phasenwechselmaterial und gegebenenfalls ein Lenkelement wie eine Diode oder einen Transistor einschließen. Weiterhin schließen als nichteinschränkendes Beispiel aktive Halbleiterspeicherelemente EEPROM- und Flash-Speichervorrichtungselemente ein, die in einigen Ausführungsformen Elemente einschließen, die einen Ladungsspeicherbereich enthalten, wie etwa ein Floating-Gate, leitende Nanopartikel oder ein dielektrisches Ladungsspeichermaterial.
  • Mehrere Speicherelemente können derart eingerichtet sein, dass sie in Reihe geschaltet sind, oder derart, dass jedes Element einzeln zugänglich ist. Als nicht einschränkendes Beispiel enthalten Flash-Speichervorrichtungen in einer NAND-Konfiguration (NAND-Speicher) üblicherweise Speicherelemente, die in Reihe geschaltet sind. Eine NAND-Kette ist ein Beispiel für einen Satz von in Reihe geschalteten Transistoren, aufweisend Speicherzellen und SG-Transistoren.
  • Ein NAND-Speicherarray kann derart eingerichtet sein, dass das Array aus mehreren Speicherketten zusammengesetzt ist, in denen eine Kette aus mehreren Speicherelementen zusammengesetzt ist, die sich eine einzelne Bitleitung teilen und auf die als eine Gruppe zugegriffen wird. Alternativ können Speicherelemente derart eingerichtet sein, dass jedes Element einzeln zugänglich ist, z. B. ein NOR-Speicherarray. NAND- und NOR-Speicherkonfigurationen sind Beispiele, und Speicherelemente können anderweitig eingerichtet sein.
  • Die Halbleiterspeicherelemente, die innerhalb eines und/oder über einem Substrat liegen, können in zwei oder drei Dimensionen angeordnet sein, wie als eine zweidimensionale Speicherstruktur oder eine dreidimensionale Speicherstruktur.
  • In einer zweidimensionalen Speicherstruktur sind die Halbleiterspeicherelemente in einer einzigen Ebene oder einer einzigen Speichervorrichtungsebene angeordnet. Üblicherweise sind Speicherelemente bei einer 2D-Speicherstruktur in einer Ebene (z. B. in einer x-y-Richtung-Ebene) angeordnet, die sich im Wesentlichen parallel zu einer Hauptoberfläche eines Substrats erstreckt, das die Speicherelemente trägt. Das Substrat kann ein Wafer sein, über oder in dem die Schicht der Speicherelemente gebildet ist, oder es kann ein Trägersubstrat sein, das an den Speicherelementen befestigt wird, nachdem diese gebildet werden. Als ein nicht einschränkendes Beispiel kann das Substrat einen Halbleiter, wie Silizium, einschließen.
  • Die Speicherelemente können auf der einzelnen Speichervorrichtungsebene in einem geordneten Array angeordnet sein, wie in einer Vielzahl von Zeilen und/oder Spalten. Jedoch können die Speicherelemente in nicht regelmäßigen oder nicht orthogonalen Konfigurationen angeordnet sein. Die Speicherelemente können jeweils zwei oder mehr Elektroden oder Kontaktleitungen, wie Bitleitungen und Wortleitungen, aufweisen.
  • Ein 3D-Speicherarray ist so angeordnet, dass Speicherelemente mehrere Ebenen oder mehrere Speichervorrichtungsebenen belegen, wodurch eine Struktur in drei Dimensionen gebildet wird (d. h. in der x-, y- und z-Richtung, wobei die z-Richtung im Wesentlichen senkrecht und die x- und y-Richtung im Wesentlichen parallel zu der Hauptoberfläche des Substrats sind).
  • Als ein nichteinschränkendes Beispiel kann eine 3D-Speicherstruktur vertikal als Stapel mehrerer 2D-Speichervorrichtungsebenen angeordnet sein. Als ein weiteres nichteinschränkendes Beispiel kann ein 3D-Speicherarray als mehrere vertikale Spalten (z. B. Spalten, die sich im Wesentlichen senkrecht zu der Hauptoberfläche des Substrats erstrecken, d. h. in der y-Richtung) angeordnet sein, wobei jede Spalte mehrere Speicherelemente hat. Die Spalten können in einer 2D-Konfiguration angeordnet sein, z. B. in einer x-y-Ebene, was eine 3D-Anordnung von Speicherelementen mit Elementen auf mehreren vertikal gestapelten Speicherebenen ergibt. Andere Konfigurationen von Speicherelementen in drei Dimensionen können auch ein 3D-Speicherarray bilden.
  • Als ein nichteinschränkendes Beispiel können die Speicherelemente in einem 3D-NAND-Speicherarray miteinander gekoppelt sein, um eine NAND-Kette innerhalb einer einzigen horizontalen (z. B. x-y) Speichervorrichtungsebene zu bilden. Alternativ können die Speicherelemente miteinander gekoppelt sein, um eine vertikale NAND-Kette zu bilden, die über mehrere horizontale Speichervorrichtungsebenen verläuft. Andere 3D-Konfigurationen können in Betracht gezogen werden, wobei einige NAND-Ketten Speicherelemente in einer einzigen Speicherebene enthalten, während andere Ketten Speicherelemente enthalten, die sich über mehrere Speicherebenen erstrecken. 3D-Speicherarrays können auch als eine NOR-Konfiguration und als eine ReRAM-Konfiguration ausgelegt sein.
  • Üblicherweise werden in einem monolithischen 3D-Speicherarray eine oder mehrere Speichervorrichtungsebenen oberhalb eines einzigen Substrats gebildet. Gegebenenfalls kann das monolithische 3D-Speicherarray auch eine oder mehrere Speicherschichten zumindest teilweise innerhalb des einzigen Substrats haben. Als ein nicht einschränkendes Beispiel kann das Substrat einen Halbleiter, wie Silizium, einschließen. In einem monolithischen 3D-Array werden die Schichten, die jede Speichervorrichtungsebene des Arrays bilden, üblicherweise auf den Schichten der darunter liegenden Speichervorrichtungsebenen des Arrays gebildet. Schichten von benachbarten Speichervorrichtungsebenen eines monolithischen 3D-Speicherarrays können jedoch gemeinsam genutzt werden oder Zwischenschichten zwischen Speichervorrichtungsebenen haben.
  • 2D-Arrays können getrennt gebildet und dann zusammengepackt werden, um eine nichtmonolithische Speichervorrichtung mit mehreren Speicherschichten zu bilden. Zum Beispiel können nicht monolithische gestapelte Speicher konstruiert werden, indem Speicherebenen auf separaten Substraten gebildet und dann die Speicherebenen übereinander gestapelt werden. Die Substrate können vor dem Stapeln gedünnt oder aus den Speichervorrichtungsebenen entfernt werden, aber da die Speichervorrichtungsebenen anfangs über getrennten Substraten gebildet werden, sind die sich ergebenden Speicherarrays keine monolithischen 3D-Speicherarrays. Weiterhin können mehrere 2D-Speicherarrays oder 3D-Speicherarrays (monolithisch oder nichtmonolithisch) auf getrennten Chips gebildet und dann zusammengepackt werden, um eine Speichervorrichtung mit gestapelten Chips zu bilden.
  • Eine zugehörige Schaltung ist üblicherweise für den Betrieb der Speicherelemente und für die Kommunikation mit den Speicherelementen erforderlich. Als nicht einschränkende Beispiele können Speichervorrichtungen Schaltungen aufweisen, die zum Steuern und Ansteuern von Speicherelementen verwendet werden, um Funktionen, wie Programmieren und Lesen, auszuführen. Diese zugehörige Schaltung kann sich auf demselben Substrat wie die Speicherelemente und/oder auf einem separaten Substrat befinden. Zum Beispiel kann eine Steuerung für Schreib-/Lesevorgänge des Speichers auf einem separaten Steuerungschip und/oder auf demselben Substrat wie die Speicherelemente angeordnet sein.
  • Ein Fachmann wird erkennen, dass diese Technologie nicht auf die beschriebenen beispielhaften 2D- und 3D-Strukturen beschränkt ist, sondern alle relevanten Speicherstrukturen in dem Geist und Umfang der Technologie abdeckt, wie hierin beschrieben und wie es von einem Fachmann verstanden wird.
  • 1B stellt eine beispielhafte Speicherzelle 200 dar. Die Speicherzelle weist ein Steuergate CG auf, welches eine Wortleitungsspannung Vwl empfängt, einen Drain mit einer Spannung Vd, eine Source mit einer Spannung Vs und einen Kanal mit einer Spannung Vch.
  • 1C stellt ein Beispiel für die Temperaturerfassungsschaltung 115 von 1A dar. Die Schaltung schließt die pMOSFETs 131a, 131b und 134, die bipolaren Transistoren 133a und 133b sowie die Widerstände R1, R2 und R3 ein. I1, I2 und I3 bezeichnen Ströme. Voutput ist eine temperaturabhängige Ausgangsspannung, die einem Analog-Digital-Wandler (ADC) 129 bereitgestellt wird. Vbg ist eine temperaturunabhängige Spannung. Eine Spannungspegel-Erzeugungsschaltung 135 verwendet Vbg, um eine Reihe von Spannungspegeln einzustellen. Zum Beispiel kann eine Referenzspannung durch eine Widerstandsteilerschaltung in mehrere Pegel unterteilt werden.
  • Der ADC vergleicht Voutput mit den Spannungspegeln und wählt die nächstliegende Übereinstimmung unter den Spannungspegeln aus, wobei er einen entsprechenden digitalen Wert (VTemp) an den Prozessor 122c ausgibt. Dies sind Daten, die eine Temperatur der Speichervorrichtung angeben. In einem Ansatz speichern ROM-Sicherungen 123 Daten, die den passenden Spannungspegel mit einer Temperatur korrelieren. Der Prozessor verwendet dann die Temperatur, um temperaturbasierte Parameter in der Speichervorrichtung einzustellen.
  • Vbg, ergibt sich durch Addition der Basis-Emitter-Spannung (Vbe) über dem Transistor 131b und dem Spannungsabfall über dem Widerstand R2. Der Bipolartransistor 133a weist einen größeren Bereich (um einen Faktor N) auf als der Transistor 133b. Die PMOS-Transistoren 131a und 131b sind gleich groß und in einer Stromspiegelkonfiguration angeordnet, so dass die Ströme I1 und I2 im Wesentlichen gleich sind. Wir haben Vbg=Vbe+R2×I2 und I1=Ve/R1, so dass I2=Ve/R1. Daraus ergibt sich: Vbg=Vbe+R2×kT In(N)/R1×q, wobei T die Temperatur, k die Boltzmann-Konstante und q eine Einheit der elektrischen Ladung ist. Die Quelle des Transistors 134 ist mit einer Versorgungsspannung Vdd verbunden und der Knoten zwischen dem Drain des Transistors und dem Widerstand R3 ist die Ausgangsspannung, Voutput. Das Gate des Transistors 134 ist mit demselben Endgerät verbunden wie die Gates der Transistoren 131a und 131b und der Strom durch den Transistor 134 spiegelt den Strom durch die Transistoren 131a und 131b.
  • 2 ist ein Blockschaubild der beispielhaften Speichervorrichtung 100, welches weitere Einzelheiten der Steuerung 122 zeigt. Wie hierin verwendet, ist eine Flashspeichersteuerung eine Vorrichtung, die auf dem Flashspeicher gespeicherte Daten verwaltet und mit einem Host kommuniziert, wie beispielsweise einem Computer oder einer elektronischen Vorrichtung. Eine Flashspeichersteuerung kann verschiedene Funktionen zusätzlich zu der hier beschriebenen spezifischen Funktionalität haben. Zum Beispiel kann die Flashspeichersteuerung den Flashspeicher formatieren, um sicherzustellen, dass der Speicher ordnungsgemäß arbeitet, um schlechte Flashspeicherzellen auszugrenzen und Ersatzspeicherzellen zuzuordnen, die künftig fehlerhafte Zellen ersetzen sollen. Einige Teile der Ersatzzellen können verwendet werden, um Firmware aufzunehmen, um die Flashspeichersteuerung zu betreiben und andere Merkmale zu implementieren. Im Betrieb, wenn ein Host Daten aus dem Flashspeicher lesen oder Daten in diesen schreiben muss, kommuniziert der Host mit der Flashspeichersteuerung. Wenn der Host eine logische Adresse bereitstellt, zu der Daten gelesen/geschrieben werden sollen, kann die Flashspeichersteuerung die vom Host empfangene logische Adresse in eine physische Adresse in der Flashspeichersteuerung umwandeln. (Alternativ kann der Host die physische Adresse bereitstellen). Die Flashspeichersteuerung kann auch verschiedene Speicherverwaltungsfunktionen durchführen, wie z. B., ohne darauf beschränkt zu sein, Abnutzungsausgleich (Verteilen von Schreibvorgängen zum Vermeiden eines Verschleißes spezifischer Speicherblöcke, auf die ansonsten wiederholt geschrieben werden würde) und Speicherbereinigung (nachdem ein Block voll ist, Bewegen ausschließlich der gültigen Datenseiten zu einem neuen Block, so dass der volle Block gelöscht und wiederverwendet werden kann).
  • Die Schnittstelle zwischen der Steuerung 122 und dem nichtflüchtigen Speicher-Die 108 kann eine beliebige geeignete Flash-Schnittstelle sein. In einer Ausführungsform kann die Speichervorrichtung 100 ein System auf Kartenbasis sein, z. B. eine Secure-Digital-Karte (SD-Karte) oder eine Mikro-Secure-Digital-Karte (Mikro-SD-Karte). In einer alternativen Ausführungsform kann das Speichersystem Teil eines eingebetteten Speichersystems sein. Zum Beispiel kann der Flash-Speicher in dem Host eingebettet sein, wie etwa in Form einer Solid-State-Festplatte (SSD), die in einem Personal Computer installiert ist.
  • In einigen Ausführungsformen schließt die Speichervorrichtung 100 einen einzelnen Kanal zwischen der Steuerung 122 und dem nichtflüchtigen Speicher-Die 108 ein, wobei der hier beschriebene Gegenstand nicht darauf beschränkt ist, einen einzelnen Speicherkanal aufzuweisen.
  • Die Steuerung 122 schließt ein Frontend-Modul 208, das mit einem Host verbunden ist, ein Backend-Modul 210, das mit dem einen oder den mehreren nichtflüchtigen Speicher-Dies 108 verbunden ist, und verschiedene andere Module ein, die Funktionen durchführen, die nun ausführlich beschrieben werden.
  • Die Komponenten der Steuerung können die Form einer gepackten funktionellen Hardwareeinheit (z. B. einer elektrischen Schaltung), konzipiert zur Verwendung mit anderen Komponenten, eines Abschnitts eines Programmcodes (z. B. Software oder Firmware) ausführbar durch einen Prozessor, z. B. einen Mikroprozessor, oder eine Verarbeitungsschaltlogik, die üblicherweise eine bestimmte Funktion von in Beziehung stehenden Funktionen ausführt, oder einer abgeschlossenen Hardware- oder Softwarekomponente, die eine Schnittstelle zum Beispiel mit einem größeren System hat, annehmen. Zum Beispiel kann jedes Modul eine anwendungsspezifische integrierte Schaltung (ASIC), ein anwenderprogrammierbares Gate-Array (FPGA), eine Schaltung, eine digitale Logikschaltung, eine analoge Schaltung, eine Kombination diskreter Schaltungen, Gatter oder irgendeine andere Art von Hardware oder Kombination davon einschließen. Alternativ oder zusätzlich kann jedes Modul Software einschließen, die in einer prozessorlesbaren Vorrichtung (z. B. einem Speicher) gespeichert ist, um einen Prozessor für die Steuerung zu programmieren, um die hierin beschriebenen Funktionen auszuführen. Die in 2 dargestellte Architektur ist eine beispielhafte Implementierung, welche die in 1A dargestellten Komponenten der Steuerung 122 (z. B. den RAM, den ROM, den Prozessor, die Schnittstelle) verwenden kann (aber nicht muss).
  • Die Steuerung 122 kann eine Rekonditionierungsschaltlogik 212 einschließen, die zum Rekonditionieren von Speicherzellen oder Speicherblöcken verwendet wird. Die Rekonditionierung kann das Auffrischen von Daten an ihrem aktuellen Standort oder das Neuprogrammieren von Daten in eine neue Wortleitung oder einen neuen Block als Teil der Durchführung einer fehlerhaften Wortleitungspflege, wie nachfolgend beschrieben, einschließen.
  • Wieder Bezug nehmend auf Module der Steuerung 122, verwaltet eine Pufferverwaltung/Bussteuerung 214 Puffer im Direktzugriffsspeicher (RAM) 216 und steuert die interne Buszuteilung der Steuerung 122. Der RAM kann DRAM und/oder SRAM einschließen. Ein DRAM oder dynamischer Speicher mit wahlfreiem Zugriff ist ein Typ eines Halbleiterspeichers, in dem der Speicher in Form einer Ladung gespeichert ist. Jede Speicherzelle in einem DRAM besteht aus einem Transistor und einem Kondensator. Die Daten werden in dem Kondensator gespeichert. Kondensatoren verlieren Ladung aufgrund von Leckage, und daher sind DRAMs flüchtige Vorrichtungen. Zum Halten der Daten in den Speicher muss die Vorrichtung regelmäßig aktualisiert werden. Im Gegensatz dazu behält SRAM oder statischer Speicher mit wahlfreiem Zugriff einen Wert bei, solange Strom zugeführt wird.
  • Ein Nur-Lese-Speicher (ROM) 218 speichert den Systembootcode. Obwohl sie in 2B als von der Steuerung getrennt angeordnet veranschaulicht sind, können in anderen Ausführungsformen der RAM 216 und/oder der ROM 218 innerhalb der Steuerung angeordnet sein. In noch anderen Ausführungsformen können sich Teile des RAM und des ROM sowohl innerhalb der Steuerung 122 als auch außerhalb der Steuerung befinden. Weiterhin können in einigen Implementierungen die Steuerung 122, der RAM 216 und der ROM 218 auf separaten Halbleiter-Dies angeordnet sein.
  • Das Frontend-Modul 208 schließt eine Host-Schnittstelle 220 und eine Physical-Layer-Schnittstelle (PHY) 222 ein, welche die elektrische Schnittstelle mit dem Host oder der Speichersteuerung der nächsten Ebene bereitstellen. Die Wahl des Typs der Host-Schnittstelle 220 kann von dem Typ des verwendeten Speichers abhängen. Beispiele für die Host-Schnittstellen 220 schließen SATA, SATA Express, SAS, Fibre Channel, USB, PCle und NVMe ein, ohne jedoch darauf beschränkt zu sein. Die Host-Schnittstelle 220 ermöglicht üblicherweise die Übertragung von Daten, Steuersignalen und Zeitsignalen.
  • Das Backend-Modul 210 schließt eine Fehlerkorrektursteuerungsmaschine (ECC-Maschine) 224 ein, welche die vom Host empfangenen Datenbytes codiert und die aus dem nichtflüchtigen Speicher gelesenen Datenbytes decodiert und deren Fehler korrigiert. Ein Befehlssequenzer 226 erzeugt Befehlssequenzen, z. B. Programmier- und Löschbefehlssequenzen, zur Übermittlung an das nichtflüchtige Speicher-Die 108. Ein RAID-Modul (Redundant-Array-of-Independent-Dies-Modul) 228 verwaltet die Erzeugung einer RAID-Parität und die Wiederherstellung ausgefallener Daten. Die RAID-Parität kann als zusätzliche Integritätsschutzstufe für die Daten verwendet werden, die in die Speichervorrichtung 100 geschrieben werden. In einigen Fällen kann das RAID-Modul 228 ein Teil der ECC-Maschine 224 sein. Es ist zu beachten, dass die RAID-Parität als zusätzliche(s) Die oder Dies hinzugefügt werden kann, wie durch den gebräuchlichen Namen impliziert, aber sie kann auch innerhalb des bestehenden Dies hinzugefügt werden, z. B. als zusätzliche Ebene oder zusätzlicher Block oder zusätzliche Wortzeilen innerhalb eines Blocks. Eine Speicherschnittstelle 230 stellt die Befehlssequenzen für das nichtflüchtige Speicher-Die 108 bereit und empfängt Statusinformationen von dem nichtflüchtigen Speicher-Die. Eine Flash-Steuerschicht 232 steuert den Gesamtbetrieb des Backend-Moduls 210.
  • Zusätzliche Komponenten der Speichervorrichtung 100 schließen die Medienverwaltungsschicht 238 ein, welche den Abnutzungsausgleich von Speicherzellen des nichtflüchtigen Speicherchips 108 durchführt. Das Speichersystem schließt auch andere diskrete Komponenten 240 ein, wie etwa externe elektrische Schnittstellen, einen externen RAM, Widerstände, Kondensatoren oder andere Komponenten, die mit der Steuerung 122 über eine Schnittstelle verbunden sein können. In alternativen Ausführungsformen sind eine oder mehrere der Physical-Layer-Schnittstelle 222, des RAID-Moduls 228, der Medienverwaltungsschicht 238 und der Pufferverwaltung/Bussteuerung 214 optionale Komponenten, die in der Steuerung 122 nicht erforderlich sind.
  • Eine Flash-Übersetzungsschicht (Flash Translation Layer, FTL) oder Medienverwaltungsschicht (Media Management Layer, MML) 238 kann als Teil der Flash-Verwaltung integriert sein, welche Flash-Fehler behandeln und mit dem Host interagieren kann. Insbesondere kann MML ein Modul in der Flash-Verwaltung sein und für die Interna der NAND-Verwaltung verantwortlich sein. Insbesondere kann die MML 238 einen Algorithmus in der Firmware der Speichervorrichtung einschließen, welcher Schreibvorgänge von dem Host in Schreibvorgänge in die Speicherstruktur 126, z. B. den Flash-Speicher, des Dies 108 übersetzt. Die MML 238 kann erforderlich sein, weil: 1) der Flash-Speicher eine begrenzte Lebensdauer haben kann; 2) der Flash-Speicher nur in Vielfachen von Seiten geschrieben werden kann; und/oder 3) der Flash-Speicher nicht geschrieben werden kann, es sei denn, er wird als Block gelöscht. Die MML 238 versteht diese potentiellen Beschränkungen des Flash-Speichers, die für den Host möglicherweise nicht sichtbar sind. Dementsprechend versucht die MML 238, die Schreibvorgänge von dem Host in Schreibvorgänge in den Flash-Speicher zu übersetzen. Fehlerhafte Bits können unter Verwendung der MML 238 identifiziert und aufgezeichnet werden. Diese Aufzeichnung von fehlerhaften Bits kann zur Bewertung des Zustands von Blöcken und/oder Wortleitungen (den Speicherzellen auf den Wortleitungen) verwendet werden.
  • Die Steuerung 122 kann über eine Schnittstelle mit einem oder mehreren Speicher-Dies 108 verbunden sein. In einer Ausführungsform implementieren die Steuerung und mehrere Speicherchips (welche zusammen die Speichervorrichtung 100 aufweisen) ein Solid-State-Laufwerk (SSD), welches eine Festplatte in einem Host emulieren, ersetzen oder an deren Stelle als Netzwerkverbundene Speichervorrichtung (Network Attached Storage, NAS) usw. verwendet werden kann. Zusätzlich muss die SSD nicht dazu veranlasst werden, als eine Festplatte zu arbeiten.
  • 3 ist eine perspektivische Ansicht einer Speichervorrichtung 600, die einen Satz von Blöcken in einer exemplarischen 3D-Konfiguration der Speicherstruktur 126 von 1A aufweist. Auf dem Substrat befinden sich Beispielblöcke BLK0, BLK1, BLK2 und BLK3 von Speicherzellen (Speicherelementen) und ein Peripheriebereich 604 mit Schaltlogik zur Verwendung durch die Blöcke. Zum Beispiel kann die Schaltlogik Spannungstreiber 605 einschließen, welche mit Steuergateschichten der Blöcke verbunden werden können. Bei einem Ansatz werden Steuergateschichten auf einer gemeinsamen Höhe in den Blöcken gemeinsam angesteuert. Das Substrat 601 kann auch Schaltlogik unter den Blöcken zusammen mit einer oder mehreren unteren Metallschichten tragen, welche in Leiterbahnen strukturiert sind, um Signale der Schaltlogik zu übertragen. Die Blöcke sind in einem Zwischenbereich 602 der Speichervorrichtung ausgebildet. In einem oberen Bereich 603 der Speichervorrichtung sind eine oder mehrere obere Metallschichten in Leiterbahnen strukturiert, um Signale der Schaltlogik zu übertragen. Jeder Block weist einen gestapelten Bereich von Speicherzellen auf, wobei alternierende Ebenen des Stapels Wortleitungen darstellen. In einem möglichen Ansatz hat jeder Block gegenüberliegende abgestufte Seiten, von denen sich vertikale Kontakte nach oben zu einer oberen Metallschicht erstrecken, um Verbindungen zu Leiterbahnen herzustellen. Während vier Blöcke beispielhaft dargestellt sind, können zwei oder mehr Blöcke verwendet werden, die sich in x - und/oder y-Richtung erstrecken.
  • In einem möglichen Ansatz befinden sich die Blöcke in einer Ebene und die Länge der Ebene in x-Richtung stellt eine Richtung dar, in der sich Signalpfade zu Wortleitungen in der einen oder den mehreren oberen Metallschichten erstrecken (eine Wortleitungs- oder SGD-Leitungsrichtung), und die Breite der Ebene in der y-Richtung stellt eine Richtung dar, in der sich Signalpfade zu Bitleitungen in der einen oder den mehreren oberen Metallschichten (einer Bitleitungsrichtung) erstrecken. Die z-Richtung stellt eine Höhe der Speichervorrichtung dar. Die Blöcke könnten auch in mehreren Ebenen angeordnet sein.
  • 4C stellt eine beispielhafte Querschnittsansicht eines Teils einer der Blöcke von 3 dar. Der Block weist einen Stapel 616 von alternierenden leitfähigen und dielektrischen Schichten auf. In diesem Beispiel weisen die leitfähigen Schichten zwei SGD-Schichten, zwei SGS-Schichten und vier Dummy-Wortleitungsschichten (oder Wortleitungen) WLD1, WLD2, WLD3 und WLD4 zusätzlich zu Datenwortleitungsschichten (oder Wortleitungen) WLL0 bis WLL10 auf. Die dielektrischen Schichten werden als DL0 bis DL19 bezeichnet. Weiterhin sind Bereiche des Stapels dargestellt, welche die NAND-Ketten NS1 und NS2 aufweisen. Jede NAND-Kette wst ein Speicherloch 618 oder 619, das mit Materialien gefüllt ist, welche Speicherzellen bilden, die den Wortleitungen benachbart sind. Ein Bereich 622 des Stapels ist in 6 detaillierter gezeigt.
  • Der Stapel schließt ein Substrat 611 ein. In einem Ansatz weist ein Abschnitt der Quellenleitung SL eine n-Typ-Quellendiffusionsschicht 611a im Substrat auf, die in Kontakt mit einem Quellenende jeder Reihe von Speicherzellen in einem Block steht. Die n-Typ-QuellenDiffusionsschicht 611a ist in einem p-Typ-Well-Bereich 611b ausgebildet, die wiederum in einem n-Typ-Well-Bereich 611c ausgebildet ist, der wiederum in einem p-Typ-Halbleitersubstrat 611d ausgebildet ist, in einer möglichen Implementierung. Die n-artige Sourcediffusionsschicht kann bei einem Ansatz von allen Blöcken in einer Ebene gemeinsam genutzt werden.
  • NS1 hat ein Quellenende 613 an einer Unterseite 616b des Stapels und ein Drain-Ende 615 an einer Oberseite 616a des Stapels. Lokale Verbindungen, wie beispielsweise die lokale Verbindung 617, können periodisch über den Stapel bereitgestellt werden. Die lokalen Zwischenverbindungen können metallgefüllte Schlitze sein, die sich durch den Stapel erstrecken, um beispielsweise die Leitung der Quelle/Substrat mit einer Leitung oberhalb des Stapels zu verbinden. Die Schlitze können während der Herstellung der Wortleitungen verwendet und anschließend mit Metall gefüllt werden. Die lokale Zwischenverbindung weist einen leitenden Bereich 617a (z. B. Metall) innerhalb eines isolierenden Bereichs 617b auf. Ein Teil einer Bitleitung BL0 ist ebenfalls dargestellt. Ein leitendes Via 621 verbindet das Drain-Ende 615 von NS1 mit BL0.
  • In einem Ansatz weist der Block von Speicherzellen einen Stapel von alternierenden Steuer-Gate- und dielektrischen Schichten auf und die Speicherzellen sind in sich vertikal erstreckenden Speicherlöchern in dem Stapel angeordnet.
  • In einem Ansatz weist jeder Block eine terrassenförmige Kante auf, in der vertikale Verbindungen mit jeder Schicht, einschließlich der Schichten SGS, WL und SGD, verbunden sind und sich nach oben bis zu horizontalen Pfaden zu Spannungsquellen erstrecken.
  • Dieses Beispiel schließt zwei SGD-Transistoren, zwei drain-seitige Dummy-Speicherzellen, zwei quellenseitige Dummy-Speicherzellen und zwei SGS-Transistoren in jeder Kette ein, als ein Beispiel. Im Allgemeinen ist die Verwendung von Dummy-Speicherzellen optional und es können eine oder mehrere bereitgestellt werden. Außerdem können ein oder mehrere SGD-Transistoren und ein oder mehrere SGS-Transistoren in einer Speicherkette bereitgestellt werden.
  • Ein isolierender Bereich 620 kann bereitgestellt werden, um Abschnitte der SGD-Schichten voneinander zu trennen, um eine unabhängig angetriebene SGD-Leitung pro Unterblock bereitzustellen. In diesem Beispiel sind die Wortleitungsebenen für zwei benachbarte Unterblöcke gemeinsam. Siehe auch 7B. In einer anderen möglichen Implementierung erstreckt sich der isolierende Bereich 620 bis hinunter zum Substrat, um die Wortleitungsschichten zu trennen. In diesem Fall sind die Wortleitungsebenen in jedem Unterblock getrennt. Allerdings können in beiden Fällen die Wortleitungslagen eines Blocks an ihren Enden miteinander verbunden werden, so dass sie innerhalb eines Blocks zusammen angetrieben werden, wie in 7B dargestellt.
  • 5 stellt eine Auftragung des Speicherloch-/Säulendurchmessers in dem Stapel von 4 dar. Die vertikale Achse ist mit dem Stapel von 4 in Ausrichtung gebracht und zeigt eine Breite (wMH), z. B. einen Durchmesser, der Säulen, die durch Materialien in den Speicherlöchern 618 und 619 gebildet werden. In einer solchen Speichervorrichtung weisen die Speicherlöcher, die durch den Stapel geätzt werden, ein sehr hohes Seitenverhältnis auf. Zum Beispiel ist ein Verhältnis der Tiefe zum Durchmesser von etwa 25 bis 30 üblich. Die Speicherlöcher können einen kreisförmigen Querschnitt aufweisen. Aufgrund des Ätzverfahrens können das Speicherloch und die resultierende Säulenbreite entlang der Länge des Lochs variieren. Üblicherweise wird der Durchmesser von oben nach unten in der Speicherbohrung immer kleiner (durchgezogene Linie). Das heißt, die Speicherlöcher verjüngen sich, wobei sie sich am Boden des Stapels verengen. In einigen Fällen tritt eine leichte Verengung an der Oberseite des Lochs in der Nähe des Auswahlgates auf, sodass der Durchmesser geringfügig breiter wird, bevor er von der Oberseite zur Unterseite des Speicherlochs zunehmend kleiner wird (lange gestrichelte Linie). Zum Beispiel weist die Speicherlochbreite in diesem Beispiel ein Maximum auf der Ebene von WL9 in dem Stapel auf. Die Speicherlochbreite ist auf der Ebene von WL10 etwas kleiner und auf den Ebenen von WL8 bis WL0 zunehmend kleiner.
  • Aufgrund der Uneinheitlichkeit des Durchmessers des Speicherlochs und der resultierenden Säule kann die Programmierungs- und Löschgeschwindigkeit der Speicherzellen variieren, basierend auf ihrer Position entlang dem Speicherloch. Bei einem relativ kleineren Durchmesser am Boden eines Speicherlochs ist das elektrische Feld über dem Tunneloxid relativ stärker, sodass die Programmierungs- und Löschgeschwindigkeit für Speicherzellen in Wortleitungen, die dem Teil mit dem relativ kleineren Durchmesser der Speicherlöcher benachbart sind, höher ist. Der Betrag der Wortleitungshochkopplung und -entladung ist daher relativ größer als bei Speicherzellen in Wortleitungen, die an den Abschnitt der Speicherlöcher mit relativ großem Durchmesser angrenzen.
  • In einer anderen möglichen Implementierung, dargestellt durch die kurze gestrichelte Linie, wird der Stapel in zwei Ebenen hergestellt. Zuerst wird die untere Lage mit einem entsprechenden Speicherloch gebildet. Anschließend wird die obere Lage wird mit einem entsprechenden Speicherloch gebildet, welches mit dem Speicherloch in der unteren Lage in Ausrichtung gebracht ist. Jedes Speicherloch ist verjüngt, sodass ein doppelt verjüngtes Speicherloch gebildet wird, in welchem die Breite zunimmt, dann abnimmt und wieder zunimmt, wenn man sich von dem Boden des Stapels nach oben bewegt.
  • 6B stellt eine Nahansicht des Bereichs 622 des Stapels von 4 dar. Speicherzellen sind an den verschiedenen Ebenen des Stapels an dem Schnittpunkt einer Wortleitungsschicht und eines Speicherlochs ausgebildet. Bei diesem Beispiel werden SGD-Transistoren 680 und 681 über Dummy-Speicherzellen 682 und 683 und einer Datenspeicherzelle MC bereitgestellt. Eine Anzahl von Schichten kann entlang der Seitenwand (SW) des Speicherlochs 630 und/oder innerhalb jeder Wortleitungsschicht abgeschieden werden, z. B. durch Atomschichtabscheidung. Zum Beispiel kann jede Säule 699 oder Spalte, die von den Materialien innerhalb eines Speicherlochs geformt ist, eine ladungseinfangende Schicht 663 oder einen Film wie Siliziumnitrid (Si3N4) oder ein anderes Nitrid, eine Tunnelschicht 664 (Tunneloxid), einen Kanal 665 (z. B. mit Polysilizium) und einen dielektrischen Kern 666 einschließen. Eine Wortleitungsschicht kann ein Sperroxid/High-k-Sperrmaterial 660, eine Metallbarriere 661 und ein leitfähiges Metall 662 wie etwa Wolfram als ein Steuer-Gate einschließen. Beispielsweise werden Steuergates 690, 691, 692, 693 und 694 bereitgestellt. In diesem Beispiel werden alle Schichten mit Ausnahme des Metalls in dem Speicherloch bereitgestellt. In anderen Ansätzen können einige der Schichten in der Steuer-Gate-Schicht sein. Zusätzliche Säulen sind gleichermaßen in den verschiedenen Speicherlöchern ausgebildet. Eine Säule kann eine säulenförmige aktive Fläche (AA) einer NAND-Kette bilden.
  • Wenn eine Speicherzelle programmiert wird, werden Elektronen in einem Teil der Ladungseinfangschicht gespeichert, welche der Speicherzelle zugeordnet ist. Diese Elektronen werden in die Ladungseinfangschicht aus dem Kanal und durch die Tunnelschicht gezogen. Die Vth einer Speicherzelle wird proportional zu (z. B. je nach Erhöhung) der Menge gespeicherter Ladung erhöht. Während eines Löschvorgangs kehren die Elektronen in den Kanal zurück.
  • Jedes der Speicherlöcher kann mit einer Vielzahl von ringförmigen Schichten gefüllt sein, die eine Blockieroxidschicht, eine Ladungseinfangschicht, eine Tunnelschicht und eine Kanalschicht aufweisen. Eine Kernregion jedes der Speicherlöcher ist mit einem Körpermaterial gefüllt, und die Vielzahl von ringförmigen Schichten befindet sich zwischen der Kernregion und der Wortleitung in jedem der Speicherlöcher.
  • Die NAND-Kette kann als einen Floating-Body-Kanal aufweisend betrachtet werden, da die Länge des Kanals nicht auf einem Substrat ausgebildet ist. Weiterhin wird die NAND-Kette durch eine Vielzahl von Wortleitungsschichten bereitgestellt, die übereinander in einem Stapel angeordnet und durch dielektrische Schichten voneinander getrennt sind.
  • 7A stellt eine beispielhafte Ansicht von NAND-Ketten in Unterblöcken in einer 3D-Konfiguration dar, die mit 4 übereinstimmt. Beispielhafte Speicherzellen sind dargestellt, die sich in der x-Richtung entlang von Wortleitungen in jedem Unterblock erstrecken. Jede Speicherzelle ist der Einfachheit halber als Würfel dargestellt. SB0 schließt NAND-Ketten 700n, 701n, 702n und 703n ein. SB1 schließt NAND-Ketten 710n, 711n, 712n und 713n ein. SB2 schließt NAND-Ketten 720n, 721n, 722n und 723n ein. SB3 schließt NAND-Ketten 730n, 731n, 732n und 733n ein. Bitleitungen sind mit Sätzen von NAND-Ketten verbunden. Zum Beispiel ist eine Bitleitung BL0 mit NAND-Ketten 700n, 710n, 720n und 730n verbunden, eine Bitleitung BL1 ist mit NAND-Ketten 701n, 711n, 721n und 731n verbunden, eine Bitleitung BL2 ist mit NAND-Ketten 702n, 712n, 722n und 732n verbunden, und eine Bitleitung BL3 ist mit NAND-Ketten 703n, 713n, 723n und 733n verbunden. Eine Abtastschaltung kann mit jeder Bitleitung verbunden sein. Zum Beispiel sind die Abtastschaltungen 400, 400a, 400b und 400c mit den Bitleitungen BLO, BL1, BL2 bzw. BL3 verbunden. Die NAND-Ketten sind Beispiele für vertikale Speicherketten, z. B. vertikale Ketten, die sich von einem Substrat nach oben erstrecken.
  • Programmieren und Lesen kann für ausgewählte Zellen in einer Wortleitung und einem Unterblock zu einem Zeitpunkt erfolgen. Dies ermöglicht, jede ausgewählte Zelle durch eine jeweilige Bitleitung und/oder Sourceleitung zu steuern. Zum Beispiel ist ein beispielhafter Satz 795 von Speicherzellen in SB0 mit WLL4 verbunden. Ähnlich weisen die Sätze 796, 797 und 798 Datenspeicherzellen in SB1 auf, SB2 und SB3 sind mit WLL4 verbunden.
  • 7B zeigt die Wortleitungs- und SGD-Schichten in einem Beispielsatz von Blöcken, der mit 4 übereinstimmt. Dargestellt sind die Blöcke BLK0, BLK1, BLK2 und BLK3. Die Wortleitungslagen (WLL) in jedem Block sind mit Beispiel-SGD-Linien dargestellt und lang. In jedem Teilblock wird eine SGD-Leitung bereitgestellt. BLK0 schließt die Unterblöcke SB0, SB1, SB2 und SB3 ein. Jeder Kreis steht für ein Speicherloch oder eine Kette. Die Unterblöcke sind in x-Richtung gestreckt und enthalten in der Praxis Tausende von Speicherketten. Zusätzlich sind viele weitere Blöcke als die abgebildeten in einer Reihe auf dem Substrat angeordnet. Die Wortleitungsschichten und SGD/SGS-Schichten können Spannungen von einem Zeilendecoder 799 erhalten.
  • 8A zeigt ein Beispiel für die Vth-Verteilung von Speicherzellen, bei der acht Datenzustände verwendet werden, in einer ersten Lesebedingung im Vergleich zu einer zweiten Lesebedingung. Acht Datenzustände sind nur ein Beispiel, da auch andere Zahlen wie vier, sechzehn oder mehr verwendet werden können. Für die Zustände Er, A, B, C, D, E, F und G ergeben sich die Vth-Verteilungen 820, 821, 822, 823, 824, 825, 826 und 827 in der zweiten Lesebedingung bzw. 820a, 821a, 822a, 823a, 824a, 825a, 826a und 827a in der ersten Lesebedingung. Für die Zustände A, B, C, D, E, F und G haben wir jeweils die Programmverifizierungsspannungen VvA, VvB, VvC, VvD, VvE, VvF und VvG. Ebenfalls abgebildet sind die Lesespannungen VrAH, VrBH, VrCH, VrDH, VrEL, VrFL bzw. VrGL in der zweiten Lesebedingung und die Lesespannungen VrAL, VrBL, VrCL, VrDL, VrEH, VrFH bzw. VrGH in der ersten Lesebedingung. Ebenfalls abgebildet ist eine Beispielcodierung der Bits 111, 110, 100, 000, 010, 011, 001 und 101. Das Bit-Format ist: UP/MP/LP. Während eines Löschvorgangs wird eine Löschverifizierungsspannung VvEr verwendet.
  • Dieses Beispiel zeigt, dass die Verschiebung in der Vth-Verteilung für die erste Lesebedingung im Vergleich zur zweiten Lesebedingung relativ größer ist, wenn der Datenzustand relativ niedriger oder höher ist, als wenn der Datenzustand im mittleren Bereich liegt. Die Verschiebung kann progressiv größer sein für progressiv niedrigere oder höhere Datenzustände. In einem Beispiel sind die Lesespannungen von VrAL, VrBL, VrCL und VrDL optimal für die relativ niedrigeren Zustände von A, B, C bzw. D und die Lesespannungen von VrEH, VrFH und VrGH sind optimal für die relativ höheren Zustände von E, F bzw. G in der ersten Lesebedingung. In ähnlicher Art und Weise sind die Lesespannungen von VrAH, VrBH, VrCH und VrDH optimal für die relativ niedrigeren Zustände von A, B, C bzw. D, und die Lesespannungen von VrEL, VrFL und VrGL sind optimal für die relativ höheren Zustände von E, F bzw. G in der zweiten Lesebedingung. Somit ist in einer möglichen Implementierung die niedrigere von zwei Lesespannungen pro Zustand in der ersten Lesebedingung für die niedrigeren Zustände und die höhere von zwei Lesespannungen pro Zustand in der ersten Lesebedingung für die höheren Zustände optimal.
  • Die optimalen Lesespannungen liegen im Allgemeinen in der Mitte zwischen den Vth-Verteilungen benachbarter Datenzustände. Dementsprechend verschieben sich mit der Verschiebung der Vth-Verteilung auch die optimalen Lesespannungen.
  • Die Erstlesebedingung kann auftreten, wenn seit einem letzten Programmier- oder Lesevorgang eine lange Verzögerung eingetreten ist. Eine Beispielsequenz ist: einen Block programmieren, eine Stunde warten, dann den Block lesen. Die erste Lesebedingung kann auch bei einem Ausschalten/Einschalten auftreten. Eine Beispielsequenz ist: Programmieren eines Blocks, Ausschalten/Einschalten, dann Lesen des Blocks. Die erste Lesebedingung kann auch auftreten, wenn ein Programm oder das Lesen von anderen Blöcken erfolgt. Eine Beispielsequenz ist: einen Satz programmieren, einen anderen Satz programmieren, dann den einen Satz lesen.
  • 8B zeigt beispielhafte Bitfolgen für die untere, mittlere und obere Datenseite und die zugehörigen Lesespannungen. In diesem Fall speichern die Speicherzellen jeweils drei Daten-Bits in einem der acht Zustände. Es sind beispielhafte Bitzuordnungen für jeden Zustand dargestellt. Ein unteres, mittleres oder oberes Bit kann Daten einer unteren, mittleren bzw. oberen Seite repräsentieren. Es werden sieben Datenzustände A, B, C, D, E, F und G zusätzlich zu dem gelöschten Zustand Er verwendet. Mit diesen Bitsequenzen können die Daten der unteren Seite durch Lesen der Speicherzellen unter Verwendung der Lesespannungen (z. B. Steuergate- oder Wortleitungsspannungen) VrA und VrE bestimmt werden. Das Bit der unteren Seite (LP) ist 1, wenn Vth<=VrA oder Vth>VrE. LP=0, wenn VrA<Vth<=VrE. Im Allgemeinen kann eine Speicherzelle durch Abtastschaltlogik abgetastet werden, während eine Lesespannung angelegt ist. Wenn sich die Speicherzelle zu einem Abtastzeitpunkt in einem leitfähigen Zustand befindet, ist ihre Schwellenspannung (Vth) niedriger als die Lesespannung. Wenn sich die Speicherzelle in einem nicht-leitfähigen Zustand befindet, ist ihre Vth größer als die Lesespannung.
  • Die Lesespannungen, die zum Lesen einer Seite von Daten verwendet werden, werden für jeden Zustand durch Übergänge von 0 auf 1 oder 1 auf 0 in den codierten Bits (Codewort) bestimmt. Beispielsweise geht das LP-Bit zwischen Er und A von 1 auf 0 über und zwischen D und E von 1 auf 0 über. Dementsprechend sind die Lesespannungen für die LP VrA und VrE.
  • Die Daten der mittleren Seite können durch Lesen der Speicherzellen unter Verwendung der Lesespannungen von VrB, VrD und VrF bestimmt werden. Das Bit der mittleren Seite (MP) ist 1, wenn Vth<=VrB oder VrD<Vth<=VrF. M=0, wenn VrB<Vth<=VrD oder Vth>VrF. Zum Beispiel geht das MP-Bit zwischen A und B von 1 auf 0 über und zwischen C und D von 0 auf 1 über und zwischen E und F von 1 auf über. Dementsprechend sind die Lesespannungen für die MP VrB, VrD und VrF.
  • Die Daten der oberen Seite können durch Lesen der Speicherzellen unter Verwendung von Lesespannungen von VrC und VrG bestimmt werden. Das Bit der oberen Seite (UP) ist 1, wenn Vth<=VrC oder Vth>VrG. UP=0, wenn VrC<Vth<=VrG. Zum Beispiel geht das UP-Bit zwischen B und C von 1 auf 0 über und zwischen F und G von 0 auf 1 über. Dementsprechend sind die Lesespannungen für die UP VrC und VrG. Die gelesenen Spannungen werden als VrA, VrB, VrC, VrD, VrE, VrF und VrG dargestellt, wobei jeder dieser Werte den ersten oder zweiten Lesewert darstellen kann, je nachdem, welcher optimal ist.
  • 9 stellt eine Wellenform eines exemplarischen Programmiervorgangs dar. Die horizontale Achse zeigt eine Programmschleifenzahl und die vertikale Achse Steuer-Gate- oder Wortleitungsspannung. Im Allgemeinen kann ein Programmiervorgang das Anlegen einer Impulsfolge an eine ausgewählte Wortleitung beinhalten, wobei die Impulsfolge mehrere Programmschleifen oder Programmieren-Verifizieren-Iterationen einschließt. Der Programmierteil der Programmieren-Verifizieren-Iteration weist eine Programmierspannung auf, und der Verifizierteil der Programmieren-Verifizieren-Iteration weist einen oder mehrere Verifizierspannungen auf.
  • Jede Programmspannung schließt zwei Schritte ein, in einem Ansatz. Weiterhin wird bei diesem Beispiel Inkrementschritt-Impulsprogrammierung (Incremental Step Pulse Programing, ISPP) verwendet, bei der die Programmierspannung in jeder aufeinanderfolgenden Programmierschleife um eine feste oder variierende Schrittgröße ansteigt. Dieses Beispiel nutzt ISPP in einem einzigen Programmierdurchgang, in dem die Programmierung abgeschlossen wird. ISPP kann auch in jedem Programmierdurchgang eines Multi-Pass-Vorgangs verwendet werden.
  • Die Wellenform 900 schließt eine Reihe von Programmspannungen 901, 902, 903, 904, 905, .. 906 ein, die an eine zur Programmierung ausgewählte Wortleitung und an einen zugehörigen Satz nichtflüchtiger Speicherzellen angelegt werden. Es können beispielsweise nach jeder Programmspannung eine oder mehrere Verifizierungsspannungen bereitgestellt werden, basierend auf den zu verifizierenden Zieldatenzuständen. An die gewählte Wortleitung können zwischen den Programmier- und Verifizierungsspannungen 0 V angelegt werden. Beispielsweise können die Verifizierungsspannungen für den A- und B-Zustand von VvA bzw. VvB (Kurvenform 910) nach jeder der Programmspannungen 901 und 902 angelegt werden. A-, B- und C-Zustand-Verifizierungsspannungen von VvA, VvB und VvC (Kurvenform 911) können nach jeder der Programmspannungen 903 und 904 angelegt werden. Nach mehreren zusätzlichen Programmschleifen, nicht dargestellt, können nach der Programmendspannung 906 E-, F- und G-Zustand-Verifizierungsspannungen von VvE, VvF und VvG (Kurvenform 912) angelegt werden.
  • 10A zeigt eine Darstellung von beispielhaften Wellenformen bei einem Programmiervorgang, die eine Einkopplung einer Wortleitungsspannung zeigen. Die dargestellte Zeitspanne entspricht einer Programmverifizierungsiteration. Die horizontale Achse stellt die Zeit und die vertikale Achse die Spannung der Wortleitung, Vwl, dar. Eine Programmspannung 1000 liegt an einer ausgewählten Wortleitung von t0-t4 an und erreicht eine Größe von Vpgm. Die Programmspannung kann vorübergehend auf einem mittleren Niveau wie Vpass pausieren, um einen einzelnen großen Übergang zu vermeiden, der unerwünschte Kopplungseffekte haben kann. Eine Durchlassspannung 1005 wird an die nicht ausgewählten Wortleitungen von t0-t19 angelegt und erreicht eine Größe von Vpass, die ausreichend hoch ist, um die Zellen in einen leitenden Zustand bereitzustellen, so dass die Erfassungsvorgänge (z. B. Verifizierung) für die Zellen der ausgewählten Wortleitung erfolgen können. Die Durchlassspannung schließt einen ansteigenden Abschnitt, einen Abschnitt mit fester Amplitude, beispielsweise bei Vpass, und einen abfallenden Abschnitt ein. Optional kann die Durchlassspannung relativ zur Programmspannung früher erhöht werden, so dass Vpass von to erreicht wird.
  • An die ausgewählte Wortleitung wird eine Verifizierungsspannung 1010 angelegt. In diesem Beispiel werden alle sieben Verifizierungsspannungen nacheinander angelegt. In diesem Beispiel wird eine Speichervorrichtung mit acht Niveaus verwendet. Die Verifizierungsspannungen von VvA, VvB, VvC, VvD, VvE, VvF und VvG werden jeweils bei t8, t9, t10, t11, t12, t13 und t14 angelegt. Die Abtastschaltungen können bei jeder Verifizierungsspannung aktiviert werden. Die Wellenform sinkt von VvG auf 0 V oder ein anderes stationäres Niveau von t15-t16.
  • Bei den nicht ausgewählten Wortleitungen führt die Verringerung von Vpass dazu, dass die Zellen von einem leitenden Zustand in einen nicht leitenden Zustand übergehen. Insbesondere, wenn Vpass unter ein Niveau der Abschneidegrenze, Vcutoff (die gestrichelte Linie bei t18), fällt, wird der Kanal der Zelle abgeschnitten, d. h. die Zelle wird nicht mehr leitend. Wenn eine Zelle nicht leitend wird, verhält sie sich wie ein Kondensator, bei dem das Steuer-Gate eine Platte und der Kanal eine andere Platte ist. Eine Zelle wird nicht leitend, wenn Vcg<Vcutoff oder Vcg<(Vth+Vsl), wobei Vcg die Steuer-Gate-Spannung der Zelle (die Wortleitungsspannung), Vth die Schwellenspannung der Zelle und Vsl die Quellleitungsspannung ist, die wiederum ungefähr der Spannung am Quellendgerät der Zelle entspricht. Für eine Zelle im höchsten programmierten Zustand, z. B. dem G-Zustand, kann die Vth so niedrig wie VvG (oder niedriger aufgrund von Ladungsverlusten nach der Programmierung) und so hoch wie die Vth am oberen Ende des G-Zustands in der Vth-Verteilung 827 oder 827 a in 8A sein. Vcutoff kann daher so niedrig wie VvG+Vsl oder so hoch wie Vth des oberen Endes des G-Zustands+Vsl sein. Wenn die Durchlassspannung 1005 von Vcutoff auf 0 V abnimmt, wird der Kanal um einen ähnlichen Betrag kapazitiv heruntergekoppelt, wie in der Darstellung 1015 in 10B dargestellt.
  • Der Spannungshub während der Abschneidegrenze des Kanals wird größer, wenn Vsl größer ist. Da jedoch Vch=Vsl ist, ist das minimale heruntergekoppelte Niveau von Vch im Wesentlichen unabhängig von Vsl. So führt zum Beispiel ein 6-V-Pegel in der Wortleitungsspannung (z. B. Vcutoff=6 V) mit Vsl=1 V zu etwa dem gleichen minimalen, heruntergekoppelten Niveau von Vch wie ein 5-V-Pegel in der Wortleitungsspannung (z. B. Vcutoff=5 V) mit Vsl=0 V.
  • Die Darstellung 1012 stellt das Hochkoppeln der Wortleitungsspannungen von t19-t20 dar. Das Ankoppeln wird relativ schnell dargestellt, ist aber nicht maßstabsgetreu. In der Praxis kann der Verifizierungsvorgang, z. B. von t5-t19, etwa 100 Mikrosekunden in Anspruch nehmen, während das Hochkoppeln der Wortleitung deutlich länger dauern kann, im Millisekundenbereich, wie beispielsweise 10 Millisekunden.
  • 10B zeigt eine Darstellung der Kanalspannung (Vch) entsprechend 10A. Für eine nicht ausgewählte Speicherkette (eine Kette, die keine Zelle hat, die in der aktuellen Programmschleife programmiert wird) wird Vch während der Programmspannung, z. B. von t0-t4, auf ein Niveau wie 8 V (nicht dargestellt) angehoben. Diese Anhebung wird erreicht, indem die SGD- und SGS-Transistoren der nicht ausgewählten Kette in einem nichtleitenden Zustand bereitgestellt werden, um Vch zum Schweben zu bringen. Vch wird aufgrund der kapazitiven Kopplung höher gekoppelt, wenn Vpass und Vpgm an den Wortleitungen anliegen. Für eine ausgewählte Speicherkette (eine Kette mit einer Zelle, die in der aktuellen Programmschleife programmiert wird) wird Vch üblicherweise wie dargestellt während der Programmspannung geerdet.
  • Während der Verifizierungsspannungen kann Vch beispielsweise zunächst bei etwa 1 V für eine ausgewählten Speicherkette liegen. Vch ist etwa gleich groß wie Vsl für die Kanäle der ausgewählten Speicherketten. Vsl wird auf Basis der verwendeten Erfassungsart eingestellt. Beispiele schließen eine negative Erfassung ein, bei der Vsl etwa 1 V beträgt, und eine positive Erfassung, bei der Vsl etwa 0 V beträgt und eine negative Wortleitungsspannung verwendet wird. Die hierin beschriebenen Techniken gelten unabhängig vom Niveau von Vsl oder der Art der Erfassung.
  • Der Kanal wird von t18-t19 kapazitiv auf ein Mindestniveau heruntergekoppelt und beginnt dann von t19-t20 auf ein endgültiges Niveau von z. B. 0 V zurückzukehren. Werden die Spannungen der Wortleitungen ab t19 floaten gelassen, werden die Spannungen (Darstellung 1012) durch den Anstieg von Vch kapazitiv höher gekoppelt. Die Spannungen der Wortleitungen fließen bis zu einem Spitzenpegel von Vwl_coupled_up und erreichen damit die zweite Lesebedingung. Vcutoff kann zum Beispiel 6 V betragen, so dass sich die Spannung der Wortleitung um 6 V ändert, z. B. 6-0 V, die in den Kanal eingekoppelt wird. Bei einem Anfangswert von Vch von 1 V und einem Kopplungsverhältnis von 90 % kann die minimale Vch beispielsweise etwa 1-6×0,9=-4,4 V betragen. Dementsprechend ergibt sich eine Vch-Erhöhung von 4,4 V, die an die Wortleitung, z. B. Steuergate, der Zellen gekoppelt ist. Vwl_coupled_up kann etwa 4,4 × 0,9 = 4 V betragen. Die Spannungen der Wortleitungen werden gefloatet, indem die Wortleitungen von einem Wortleitungstreiber abgeklemmt werden.
  • 10C zeigt eine Darstellung von beispielhaften Wellenformen bei einem Lesevorgang, die eine Einkopplung einer Wortleitungsspannung zeigen. Ein Lesevorgang ähnelt einem Verifizierungsvorgang, da beide Erfassungsvorgänge sind und beide eine Kopplung der Wortleitungsspannungen bereitstellen können. Die horizontale Achse stellt die Zeit und die vertikale Achse die Spannung der Wortleitung, Vwl, dar. Die Durchgangsspannungen 1115, 1116 und 1117 liegen an den nicht ausgewählten Wortleitungen von t0-t3, t4-t8 bzw. t9-t12 an und haben eine Größe von Vpass. Die Durchlassspannung schließt einen ansteigenden Abschnitt, einen Abschnitt bei Vpass und einen abfallenden Abschnitt ein. Eine Lesespannung schließt separate Wellenformen 1120 (auf den Niveaus von VrAH und VrEL), 1121 (auf den Niveaus von VrBH, VrDH und VrFL) und 1122 (auf den Niveaus von VrCH und VrGL) für jede der unteren, mittleren bzw. oberen Seiten ein, in Übereinstimmung mit 8A und 8B. Die Lesespannungen sind zum Beispiel für die zweite Lesebedingung optimiert und liegen an der ausgewählten Wortleitung an. In diesem Beispiel wird eine Speichervorrichtung mit acht Niveaus verwendet.
  • Bei den nicht ausgewählten Wortleitungen führt die Verringerung von Vpass dazu, dass die Zellen von einem leitenden Zustand in einen nicht leitenden Zustand übergehen, wie beschrieben. Die gestrichelte Linie bei t13 zeigt an, wann eine Zelle im G-Zustand nicht mehr leitend wird. Wenn die Durchlassspannung 1117 von Vcutoff auf 0 V sinkt, wird der Kanal um einen ähnlichen Betrag kapazitiv heruntergekoppelt, wie in der Darstellung 1035 in 10D dargestellt. Wenn die Kanalspannung nach t14 ansteigt, werden die Spannungen der Wortleitungen gefloatet und höher gekoppelt, auf Vwl_coupled_up.
  • 10D zeigt eine Darstellung der Kanalspannung (Vch) entsprechend 10C. Der Kanal wird von t13-t14 kapazitiv auf ein Mindestniveau von Vch_min heruntergekoppelt und beginnt dann, von t14-t15 auf ein endgültiges Niveau von z. B. 0 V zurückzukehren. Werden die Spannungen der Wortleitungen ab t14 floaten gelassen, werden die Spannungen (Darstellung 1032) durch den Anstieg von Vch (Darstellung 1035) kapazitiv höher gekoppelt. Die Spannungen der Wortleitungen fließen, wie beschrieben, auf ein Spitzenniveau von Vwl_coupled_up.
  • 10E zeigt die Wellenformen von 10C, die ein Abklingen der hochgekoppelten Spannung der Wortleitung zeigen. Die Zeitskala ist anders als in 10A-10D und stellt einen längeren Zeitraum dar, wie beispielsweise eine oder mehrere Stunden. Die Darstellung 1123 zeigt die ausgelesenen Spannungen (entsprechend den Wellenformen 1120-1122 in 10C) in einem Zeitabschnitt t041. Die Darstellung 1123a zeigt die Durchgangsspannungen (entsprechend den Wellenformen 1115-1117 in 10C). Eine Darstellung 1125 zeigt einen Anstieg von Vwl auf ein hochgekoppeltes Niveau (Vwl_coupled_up) aufgrund der Kopplung (in einer Zeitspanne t1-t2), gefolgt von einem Abklingen von Vwl in einer Zeitspanne t2-t3. Im Allgemeinen erfolgt der Anstieg von Vwl relativ schnell im Vergleich zur Zeitdauer des Abklingens.
  • 10F zeigt eine Darstellung der Kanalspannung in Übereinstimmung mit 10E. Auf eine Abnahme folgt eine Zunahme (Darstellung 1126) im Zeitraum t1-t2. Vch ist etwa 0 V von t2-t3 (Darstellung 1127).
  • 10G zeigt eine Darstellung der Vth einer Speicherzelle, die mit der hochgekoppelten Wortleitung verbunden ist, in Übereinstimmung mit 10E und 10F. Für eine Zelle in einem beispielhaften Datenzustand, wie beispielsweise dem Zustand A, befindet sich die Vth auf einem anfänglichen Niveau, Vth_initial, von t0-t1. Dies stellt die erste Lesebedingung dar. Vth steigt von t1-t2 (Darstellung 1128) aufgrund der Kopplung gleichzeitig mit dem Anstieg von Vch auf ein Spitzenniveau von Vth_coupled_up. Dies stellt die zweite Lesebedingung dar. Die Vth sinkt dann von t1-t3 allmählich wieder auf Vth_initial.
  • 11A zeigt die Steuer-Gate- und Kanalspannungen an einer Speicherzelle, die als Kondensator wirkt, wenn die Steuer-Gate-Spannung bei einer Erfassung verringert wird. Das erste Leseproblem wird durch das Stapeln von Wortleitungsebenen oder -schichten in 3D verursacht, wobei die Kanäle der Speicherzellen schwebend sind und nicht wie in 2D-Flash-NAND-Architekturen mit dem Substrat gekoppelt sind. Wortleitungskopplung und Elektroneneinfang in Oxid-Nitrid-Oxid (ONO)-Schichten sind die Quellen des ersten Leseproblems.
  • Wie beschrieben, schalten die G-Zustandszellen, zum Beispiel mit einer Vth von 5 V, nach einem Lese-/Verifizierungsvorgang den Kanal ab, wenn die an einer Wortleitung anliegende Lesespannung (Vpass) auf 5 V absinkt. Das schwebende Kanalpotential wird dann auf einen negativen Wert heruntergedrückt, wenn Vpass weiterhin auf Vss reduziert wird. Danach steigt die negative Spannung im oben dargestellten Kanal (etwa -4,5 V) nach Beendigung des Lesevorgangs durch Anziehen positiver Ladungen an. Da die Datenwortleitungen schwebend sind, ist die Anzahl der Löcher, die zum Aufladen des Kanals benötigt werden, relativ gering, so dass die ausgewählten und nicht ausgewählten Wortleitungen schnell auf etwa 4 V hochgekoppelt werden können (unter der Annahme eines Kopplungsverhältnisses von 90 %). Das Potenzial an den Wortleitungen bleibt eine Zeit lang bei etwa 4 V. Dadurch werden Elektronen in den Tunnel-ONO-Schichten angezogen und eingefangen, was zu einer Vth-Aufwärts- bzw. -Abwärtsverschiebung für die niedrigeren bzw. höheren Datenzustände führt. Die Wortleitungsspannung steigt somit nach dem Lesevorgang durch die Kopplung der Wortleitung an das potentialfreie Kanalpotential auf etwa 4 V an.
  • Die obere Platte stellt das Steuergate oder die Wortleitung dar und die untere Platte den Kanal. Der Kondensator 1040 stellt eine Speicherzelle dar, wenn die Spannung der Wortleitung von 8 V (Vpass) auf 5 V (Vcutoff wie VvG oder etwas höher) abfällt und Vch=0 V. Der Kondensator 1042 stellt eine Speicherzelle dar, wenn die Spannung der Wortleitung 0 V erreicht, so dass Vch auf etwa -4,5 V heruntergekoppelt wird. Der Kondensator 1044 stellt eine Speicherzelle dar, wenn die zugehörige Wortleitungsspannung zu floaten beginnt. Der Kondensator 1046 stellt eine Speicherzelle dar, wenn die zugehörige Wortleitungsspannung in der zweiten Lesebedingung Vwl_coupled_up erreicht. Ist die Vth der Speicherzelle kleiner als 4 V (z. B. die Zelle befindet sich im gelöschten Zustand oder im unteren programmierten Zustand), wird die Speicherzelle schwach programmiert, so dass sich ihre Vth erhöht. Wenn die Vth der Speicherzelle mehr als 4 V beträgt (z. B. weil sich die Zelle in einem höher programmierten Zustand befindet), wird die Speicherzelle schwach gelöscht, so dass ihre Vth sinkt. Der Kondensator 1048 stellt eine Speicherzelle dar, nachdem eine beträchtliche Zeitspanne vergangen ist, z. B. eine Stunde oder mehr, so dass sich die Wortleitung in den ersten Lesezustand entladen hat.
  • Wenn die Spannung einer Datenwortleitung schwebt, ist die Anzahl der Löcher, die zum Aufladen des Kanals benötigt werden, relativ gering. Dadurch kann die gewählte Wortleitung relativ schnell zum Beispiel auf etwa 4 V hochgekoppelt werden. Das Potenzial auf der ausgewählten Wortleitung bleibt eine Zeit lang bei etwa 4 V, wodurch Elektronen angezogen werden, die in den Tunnel-Oxid-Nitrid-Oxid-Schichten (ONO) gefangen sind, und eine Vth-Aufwärtsverschiebung verursacht wird. Wenn die Wartezeit bis zum nächsten Lesevorgang lang genug ist, entlädt sich das hochgekoppelte Potential der Wortleitung, und die eingefangenen Elektronen werden entladen. Die erste Lesebedingung wird erneut auftreten.
  • 11B zeigt einen Abschnitt der Speicherzelle MC aus 6, der die Elektroneninjektion in einen Ladungseinfangbereich während einer schwachen Programmierung zeigt. Die Speicherzelle schließt ein Steuergate 694, eine Metallbarriere 661 a, ein Sperroxid 660a, eine Ladungseinfangschicht 663, eine Tunnelschicht 664, einen Kanal 665 und einen dielektrischen Kern 666 ein. Durch die erhöhte Wortleitungsspannung wird ein elektrisches Feld (E) erzeugt, das Elektronen (siehe Beispiel Elektron 1050) in die Ladungseinfangschicht anzieht und die Vth erhöht. Diese schwache Programmierung kann durch den Poole-Frenkel-Effekt verursacht werden, bei dem ein elektrischer Isolator Strom leiten kann. Dies ist eine Art von Elektronentunneln durch Fallen. Beim schwachen Löschen wird ebenfalls ein elektrisches Feld angelegt, das Elektronen aus der Ladungseinfangschicht abstößt, wodurch die Vth sinkt.
  • Wie beschrieben, kann die Struktur der Speichereinrichtung (z. B. BiCS) dazu führen, dass sich ein Block direkt nach einer Leseoperation im zweiten Lesezustand befindet (die Wortleitungen haben ein Restpotential von ~4 V). Die Dauer, die der Baustein im zweiten Lesezustand verbleibt, bevor sich das Potenzial der Wortleitung entlädt bzw. auf 0 V abfällt, ist abhängig von der Umgebungstemperatur. Zum Beispiel kann die Entladezeit bei 85 Grad Celsius etwa 2 Minuten, bei 55 Grad Celsius 2-3 Stunden und bei 25 Grad Celsius -15 Stunden betragen. Der Datenerhaltung nach Schreib-/Löschzyklen (WE) ist ein kritischer Grenzwert, der die Zuverlässigkeit beeinflusst, da die Skalierung des ON-Pitches bei Speichervorrichtungen, wie beispielsweise bei NAND, die Kosten weiter senkt. Dieses Problem betrifft die Zellen mit vier Niveaus (QLC) viel stärker, die von Natur aus niedrigere Toleranzen und höhere programmierte Zustände aufweisen. Der Datenerhaltung ist während des Backens (d. h. bei hohen Temperaturen) besser, wenn der Block im zweiten Lesezustand gehalten wird. Das Wortleitungspotential verhindert den Elektronenverlust durch das Tunneloxid bei hohen Schwellenspannungen Vt-Zuständen. Für niedrigere Zustände mit weniger Elektronen in der Ladungseinfangschicht (CTL) wird erwartet, dass im zweiten Lesezustand die Schwellenspannung Vth aufgrund der ansteigenden Wortleitungsspannung (~4V), die Elektronen an der Tunnelungsschicht (TNL) und der Poly-Si-Grenzfläche anzieht, höher ist. Andererseits werden bei höheren Zuständen die im CTL gefangenen Elektronen an der Grenzfläche zwischen CTL und Blk Ox eingefangen, was dann zu einer niedrigeren Schwellenspannung Vth führt. Die effektiven Schwellenspannungen Vth verschieben sich, wie zum Beispiel in 8A dargestellt. Da die Verifizierung durchgeführt wird, während sich die Speicherzellen im zweiten Lesezustand befinden, werden die Lesepegel für diesen Zustand optimiert.
  • Folglich wird hierin eine Speichereinrichtung (z. B. Speichervorrichtung 100 in 1A) beschrieben, die eine Vielzahl von Speicherzellen (z. B. Speicherzelle 200 in 1B) einschließt. Jede der Vielzahl von Speicherzellen ist mit einer von einer Vielzahl von Wortleitungen (z. B. WLL0-WLL10 in 4) verbunden und in einem von einer Vielzahl von Blöcken (z. B. BLK0, BLK1, BLK2 und BLK3 in 7B) und so konfiguriert, dass sie eine Schwellenspannung Vth entsprechend einem von einer Vielzahl von Datenzuständen (z. B. „Er“, „A“, „B“, „C“, „D“, „E“, „F“ und „G“ in 8A) beibehält. Wie vorstehend erörtert, ist die Vielzahl von Speicherzellen in einem von einem ersten Lesezustand, in dem eine Wortleitungsspannung der Vielzahl von Wortleitungen entladen ist, und einem zweiten Lesezustand, in dem die Wortleitungsspannung der Vielzahl von Wortleitungen auf ein restliches Spannungsniveau (z. B. Vwl_coupled_up) hochgekoppelt ist (z. B. Darstellung 1012 von 10A), betriebsfähig. Die Einrichtung schließt auch eine Steuerschaltung ein (z. B. die Steuerschaltung 110, die Steuerung 122, den Zeilendecoder 124, die Abtastschaltungen 127, die Lese-/Schreibschaltungen 128, die Erfassungsblöcke 51, 52, 53 und den Spaltendecoder 132 in 1A), die mit der Vielzahl von Wortleitungen gekoppelt und so konfiguriert ist, dass sie ein Einschaltungsereignis der Einrichtung bestimmt, bei dem sich die Vielzahl von Speicherzellen im ersten Lesezustand befindet (ein Power-On-Reset (POR) versetzt die Blöcke in den ersten Lesezustand). Die Steuerschaltung ist zusätzlich konfiguriert, um periodisch eine vorbestimmte Aktualisierungslesespannung an eine ausgewählte der Vielzahl von Wortleitungen für eine vorbestimmte Zeitspanne (d. h. eine Leseaktualisierung) für jeden der Vielzahl von Blöcken in einem von einer Vielzahl von festgelegten Intervallen auf der Grundlage von mindestens einem Datenerhaltungsfaktor anzulegen, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand in Antwort auf die Bestimmung des Einschaltungsereignisses der Einrichtung zu halten. Anders ausgedrückt, die feste Spannung (d. h. die vorgegebene Aktualisierungslesespannung) wird an alle Wortleitungen für die vorgegebene Zeitspanne (z. B. ~1 Millisekunde) bei einer großen Gruppe von Blöcken (1 bis 128) angelegt, um die Blöcke im zweiten Lesezustand zu halten. Dieser Vorgang durchläuft alle Gruppen von Blöcken, um den gesamten Chip abzudecken. Eine solche Aktualisierung des Lesevorgangs kann die Leistung bei der Datenerhaltung verbessern.
  • Gemäß einem Gesichtspunkt schließt der mindestens eine Datenerhaltungsfaktor eine Chiptemperatur der Vielzahl von Speicherzellen ein, da die Temperatur die Zeitspanne beeinflussen kann, die für die Entladung des Restpotentials der Wortleitungen benötigt wird. Wie vorstehend beschrieben, schließt die Einrichtung einen Temperatursensor 115 (1A) ein, der mit der Steuerschaltung in Verbindung steht und so konfiguriert ist, dass er die Chiptemperatur der Vielzahl von Speicherzellen misst. Wie am besten in 12 dargestellt, schließt die Einrichtung auch eine Aktualisierungsfrequenz und eine Temperaturnachschlagetabelle ein, die eine Vielzahl festgelegter Intervalle enthält, die jeweils einer von mehreren Größen der Chiptemperatur entsprechen. Da die Datenerhaltung bei höherer Temperatur schlechter ist als bei niedriger Temperatur und die Entladung des Wortleitungspotentials bis zum ersten Lesezustand dem gleichen Trend folgt, ist die Aktualisierung bei 85 Grad Celsius (z. B. alle 2 Minuten) häufiger, verglichen mit 55 Grad Celsius (z. B. alle 2 Stunden) oder 25 Grad Celsius (z. B. alle 10 Stunden), gemäß einem Gesichtspunkt. Die Steuerschaltung ist also weiterhin so konfiguriert, dass sie die Chiptemperatur der Vielzahl von Speicherzellen mit Hilfe des Temperatursensors bestimmt. Alternativ kann ein Temp-Code-Merkmal im NAND verwendet werden, um die Temperatur zu erkennen und die Aktualisierungsfrequenz (kürzeres der mehreren festgelegten Intervalle) bei höheren Temperaturen zu erhöhen. Die Steuerschaltung ist dann so konfiguriert, dass sie eines der Vielzahl festgelegter Intervalle basierend auf der Aktualisierungsfrequenz und der Temperaturnachschlagetabelle bestimmt und verwendet. So kann für die Aktualisierung des Lesevorgangs die Frequenz der Aktualisierung im NAND oder durch Firmware auf der Einrichtung gesteuert werden und von Kriterien wie der Umgebungstemperatur abhängig gemacht werden.
  • Alternativ, gemäß einem Gesichtspunkt, schließt der mindestens eine Datenerhaltungsfaktor eine Fehlerbitanzahl ein, die mit dem Lesen mindestens eines Untersatzes der Vielzahl von Speicherzellen verbunden ist. Die Steuerschaltung schließt weiterhin eine Fehlerkorrekturcodemaschine 245 (1A) ein, die so konfiguriert ist, dass sie Fehler beim Lesen der Vielzahl von Speicherzellen bestimmt und korrigiert. Die Steuerungschaltung ist also weiterhin so konfiguriert, dass sie mindestens den Untersatz der Vielzahl von Speicherzellen liest und die Fehlerbitanzahl für den mindestens einen Untersatz der Vielzahl von Speicherzellen unter Verwendung der Fehlerkorrekturcodemaschine 245 bestimmt. Die Steuerschaltung ist außerdem so konfiguriert, dass sie bestimmt, ob die Anzahl der Fehlerbits einen vorgegebenen Schwellenwert für die Anzahl der Fehlerbits überschreitet. Die Steuerschaltung ist dann so konfiguriert, dass sie die vorbestimmte Aktualisierungslesespannung an die ausgewählte Wortleitung aus der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken als Antwort darauf anlegt, dass die Fehlerbitanzahl den vorbestimmten Schwellenwert der Fehlerbitanzahl überschreitet. So kann der Ausfallbit- oder Fehlerzähler das Anlegen der vorbestimmten Aktualisierungslesespannung auslösen, um die Vielzahl der Speicherzellen der Vielzahl der Blöcke im zweiten Lesezustand zu halten.
  • Bezogen auf 13A und 13B überspannt die für jede der Vielzahl von Speicherzellen mögliche Schwellenspannung Vth ein Schwellenfenster 1200, und jede der Vielzahl von Speicherzellen kann zum Speichern einer Vielzahl von Bits konfiguriert werden. Gemäß einem Gesichtspunkt und wie dargestellt kann die Vielzahl von Bits vier Bits einschließen (d. h. Quad-Level-Cell (QLC)), so dass die Vielzahl von Datenzuständen einen gelöschten Zustand an einem ersten Ende 1202 des Schwellwertfensters (z. B. S0-Zustand von 13A) und eine Vielzahl von programmierten Datenzuständen einschließt, die jeweils der Schwellwertspannung Vth entsprechen, die höher ist als die Schwellwertspannung, die dem gelöschten Zustand S0 zugeordnet ist. Die Vielzahl der programmierten Datenzustände schließt einen oder mehrere höhere Datenzustände an einem zweiten Ende 1204 des Schwellenfensters gegenüber dem ersten Ende 1202 ein (z. B. S14- und S15-Zustände von 13A) und ist mit der Schwellenspannung Vth verbunden, die höher ist als die Schwellenspannung, die mit dem gelöschten Zustand und mindestens einem anderen der Vielzahl der programmierten Datenzustände verbunden ist (z. B. S1-S13-Zustände von 13A). Wie oben erörtert und unter Bezugnahme auf 13B können die in der Vielzahl von Speicherzellen gespeicherten Daten in einer Vielzahl von Seiten gespeichert werden, die jeweils der Vielzahl von Bits zugeordnet sind, die von jeder der Vielzahl von Speicherzellen gespeichert werden, und gemäß einem Codierschema der Vielzahl von Datenzuständen codiert werden. Dementsprechend schließt mindestens der Untersatz der Vielzahl von Speicherzellen mindestens eine der Vielzahl von Seiten ein. Die Steuerungschaltung ist also weiterhin so konfiguriert, dass sie die mindestens eine der Vielzahl von Seiten basierend darauf auswählt, welche der mindestens einen der Vielzahl von Seiten mit dem einen oder mehreren höheren Datenzuständen verbunden ist. Die Steuerschaltung ist außerdem so konfiguriert, dass sie die Daten liest, die in mindestens einer der Vielzahl von Seiten gespeichert sind. Darüber hinaus ist die Steuerschaltung so konfiguriert, dass sie die Fehlerbitanzahl für mindestens eine der Vielzahl von Seiten unter Verwendung der Fehlerkorrekturcodemaschine 245 bestimmt. Während die hierin beschriebene Aktualisierung in erster Linie für Zellen mit dreifachem Niveau (TLC) oder drei Bits pro Speicherzelle und QLC-Chip diskutiert wird, sollte beachtet werden, dass die Vielzahl der Speicherzellen so konfiguriert werden kann, dass sie eine beliebige Anzahl von Bits speichern.
  • Wie in den 13A und 13B dargestellt, schließt die Vielzahl der programmierten Datenzustände anstelle der in 8A dargestellten Datenzustände in der Reihenfolge der ansteigenden Schwellenspannung Vth, einen ersten Datenzustand S1 und einen zweiten Datenzustand S2 und einen dritten Datenzustand S3 und einen vierten Datenzustand S4 und einen fünften Datenzustand S5 und einen sechsten Datenzustand S6 und einen siebten Datenzustand S7 und einen achten Datenzustand S8 und einen neunten Datenzustand S9 und einen zehnten Datenzustand S10 und einen elften Datenzustand S11 und einen zwölften Datenzustand S12 und einen dreizehnten Datenzustand S13 und einen vierzehnten Datenzustand S14 und einen fünfzehnten Datenzustand S15 ein. Die Vielzahl von Seiten schließt eine Oberseite, eine obere Seite, eine mittlere Seite und eine untere Seite ein, die jeweils den vier Bits zugeordnet sind, die von jeder der Vielzahl von Speicherzellen gespeichert und gemäß dem Kodierungsschema der Vielzahl von Datenzuständen kodiert werden. Gemäß einem Gesichtspunkt ist die Steuerschaltung weiterhin so konfiguriert, dass sie eine Folge von Lesespannungen, die dem fünften Datenzustand S5, dem zehnten Datenzustand S10, dem zwölften Datenzustand S12 und dem fünfzehnten Datenzustand S15 entsprechen, an die ausgewählte aus der Vielzahl von Wortleitungen anlegt, um die Daten der obersten Seite zu lesen. Es ist zu verstehen, dass abhängig von der Anzahl der in jeder der mehreren Speicherzellen gespeicherten Bits und der Kodierung stattdessen auch andere Datenzustände gelesen werden können. Die Steuerschaltung ist auch so konfiguriert, dass sie die Anzahl der Fehlerbits für die auf der Oberseite gespeicherten Daten unter Verwendung der Fehlerkorrekturcodemaschine 245 bestimmt. Anders ausgedrückt, die Steuerschaltung kann die Anzahl der Fehlerbits für die Oberseite verfolgen und Aktualisierungsvorgänge auslösen, wenn die Anzahl der Fehlerbits größer ist als eine eingestellte Schwellenbitanzahl. Daher kann die Degradierung der Fehlerbitanzahl auf Seiten mit höheren Zuständen (S15, S14 usw.) verwendet werden, um die Datenerhaltung zu verfolgen. Im dargestellten Beispiel schließt das Lesen der Daten der Oberseite das Lesen des fünfzehnten Datenzustands S15 (S14-S15-Tal) ein.
  • Alternativ zur Verwendung der Fehlerbitanzahl für die in einer der Vielzahl von Seiten gespeicherten Daten, um das Anlegen der vorbestimmten Aktualisierungslesespannung auszulösen, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken im zweiten Lesezustand zu halten, kann der mindestens eine Datenerhaltungsfaktor eine Delta-Bitanzahlmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen einschließen, der die Schwellenspannung zwischen dem einen oder mehreren höheren Datenzuständen aufweist. Somit ist die Steuerschaltung weiterhin so konfiguriert, dass sie mindestens den Untersatz der mehreren Speicherzellen unter Verwendung einer Standardlesespannung, die dem einen oder den mehreren höheren Datenzuständen zugeordnet ist, und unter Verwendung einer angepassten Lesespannung, die um eine vorbestimmte Delta-Steuerungsgatespannung geringer ist als die Standardlesespannung, liest. Die Steuerschaltung ist außerdem so konfiguriert, dass sie die Delta-Bit-Zählmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen bestimmt, dessen Schwellenspannung größer als die eingestellte Lesespannung und kleiner als die Standardlesespannung ist. Die Steuerschaltung ist so konfiguriert, dass sie bestimmt, ob die Delta-Bit-Zählmenge einen vorgegebenen Delta-Bit-Zählmengen-Schwellenwert überschreitet. Die Steuerschaltung legt dann die vorbestimmte Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne (d. h. Aktualisierungslesung) für jeden der Vielzahl von Blöcken als Antwort darauf an, dass die Delta-Bitzählmenge den vorbestimmten Delta-Bitzählmengen-Schwellenwert überschreitet. Wenn also die Bitanzahl zwischen den beiden Leseebenen (Standardlesespannung und eingestellte Lesespannung) größer ist als die vorgegebene Delta-Bitanzahl-Mengenschwelle, kann dies als Hinweis auf eine Datenerhaltungsverschiebung verwendet werden.
  • Eine Technik, die für die Verfolgung einer Datenerhaltungsmenge in NAND verwendet werden kann, ist die Durchführung von Lesevorgängen des fünfzehnten Datenzustands S15 bei zwei verschiedenen Spannungen (z. B. Standardlesespannung und Standardlesespannung abzüglich einer vorbestimmten Delta-Steuerungsgatespannung) und das Zählen der Anzahl von Bits zwischen den beiden Niveaus. Gemäß einem Gesichtspunkt kann eine solche Verfolgung der Datenspeicherung ohne die Steuerung erfolgen. Die Anzahl wird nach der Datenerhaltung groß sein, und ein Wert, der größer ist als eine bestimmte Bitanzahl oder ein vorgegebener Schwellenwert für die Delta-Bitanzahl, kann verwendet werden, um Aktualisierungslesungen auszulösen. Auch hier kann die Vielzahl der Bits vier Bits einschließen und die Vielzahl der programmierten Datenzustände kann in der Reihenfolge der ansteigenden Schwellenspannung Folgendes einschließen: den ersten Datenzustand S1 und den zweiten Datenzustand S2 und den dritten Datenzustand S3 und den vierten Datenzustand S4 und den fünften Datenzustand S5 und den sechsten Datenzustand S6 und den siebten Datenzustand S7 und den achten Datenzustand S8 und den neunten Datenzustand S9 und den zehnten Datenzustand S10 und den elften Datenzustand S11 und den zwölften Datenzustand S12 und den dreizehnten Datenzustand S13 und den vierzehnten Datenzustand S14 und den fünfzehnten Datenzustand S15. 14 zeigt Verteilungen der Schwellenspannung Vth des vierzehnten Datenzustands und eines fünfzehnten Datenzustands vor und nach einer Überprüfung der Datenerhaltung.
  • Die Steuerschaltung ist also weiterhin so konfiguriert, dass sie mindestens den Untersatz der Vielzahl von Speicherzellen unter Verwendung der Standardlesespannung (angegeben als Leseniveau in 14), die dem fünfzehnten Datenzustand zugeordnet ist, und unter Verwendung der eingestellten Lesespannung (angegeben als Leseniveau - DVCG in 14), die um die vorgegebene Delta-Steuerungsgatespannung (d. h. DVCG) geringer ist als die Standardlesespannung, liest, um die Delta-Bitzählmenge (in 14 als Bit-Zählmenge bezeichnet) des mindestens einen Untersatzes der Vielzahl von Speicherzellen zu bestimmen, der die Schwellenspannung größer als die eingestellte Lesespannung und kleiner als die Standardlesespannung hat. Wie in 14 dargestellt, beträgt die Delta-Bit-Zählmenge vor der Datenspeicherung nur eine geringe Anzahl von Bits. Nach der Datenspeicherung ist die Delta-Bitanzahl jedoch eine große Anzahl von Bits. Gemäß einem Gesichtspunkt ist mindestens der Untersatz der Vielzahl von Speicherzellen eine der Vielzahl von Speicherzellen, die mit einer ausgewählten der Vielzahl von Wortleitungen verbunden sind. Zusätzlich kann die vorgegebene Delta-Steuertorspannung DVCG etwa 100 Millivolt betragen.
  • Die Steuerschaltung ist weiterhin so konfiguriert, dass sie bestimmt, ob eine Bedienung der Einrichtung durch einen Benutzer eingeleitet wurde. Die Steuerschaltung ist so konfiguriert, dass sie das periodische Anlegen der vorbestimmten Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitdauer für jeden der Vielzahl von Blöcken in dem einen der Vielzahl von festgelegten Intervallen auf der Grundlage des mindestens einen Datenerhaltungsfaktors unterbricht, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand zu halten, und zwar als Antwort auf die Bestimmung, dass der Betrieb der Einrichtung durch den Benutzer eingeleitet wurde.
  • In 15 wird nun ein Verfahren zum Betrieb einer Speichereinrichtung bereitgestellt. Wie oben beschrieben, schließt die Speichereinrichtung eine Vielzahl von Speicherzellen ein. Jede der Vielzahl von Speicherzellen ist mit einer von einer Vielzahl von Wortleitungen verbunden und in einem von einer Vielzahl von Blöcken angeordnet und so konfiguriert, dass sie eine Schwellenspannung entsprechend einem von einer Vielzahl von Datenzuständen beibehält. Die Vielzahl von Speicherzellen ist in einem von einem ersten Lesezustand, in dem eine Wortleitungsspannung der Vielzahl von Wortleitungen entladen ist, und einem zweiten Lesezustand, in dem die Wortleitungsspannung der Vielzahl von Wortleitungen bis zu einem Restspannungsniveau hochgekoppelt ist, betreibbar. Das Verfahren schließt also den Schritt 1300 ein, ein Einschaltungsereignis der Speichereinrichtung zu bestimmen, bei dem sich die Vielzahl von Speicherzellen im ersten Lesezustand befindet (POR (Power on reset) bewirkt, dass der Block in den ersten Lesezustand geht). Das Verfahren fährt fort mit dem Schritt 1302 des periodischen Anlegens einer vorbestimmten Aktualisierungslesespannung an eine ausgewählte der Vielzahl von Wortleitungen für eine vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken in einem von einer Vielzahl von festgelegten Intervallen auf der Basis von mindestens einem Datenerhaltungsfaktor, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand in Antwort auf das Bestimmen des Einschaltungsereignisses der Speichereinrichtung zu halten. Anders ausgedrückt, wird nach dem Einschalt-Reset eine Aktualisierung des gesamten Chips durchgeführt, um die zweite Lesebedingung zu setzen. Der Aktualisierungsvorgang wird voraussichtlich einige zehn Millisekunden für den gesamten Chip dauern.
  • Auch hier schließt der mindestens eine Datenerhaltungsfaktor eine Chiptemperatur der Vielzahl von Speicherzellen ein, und die Speichereinrichtung schließt weiterhin einen Temperatursensor ein, der zum Messen der Chiptemperatur der Vielzahl von Speicherzellen konfiguriert ist. Die Einrichtung schließt auch eine Aktualisierungsfrequenz- und Temperaturnachschlagetabelle ein, die eine Vielzahl festgelegter Intervalle enthält, die jeweils einer von mehreren Größen der Chiptemperatur entsprechen (12). So kann der Schritt 1302 des periodischen Anlegens einer vorbestimmten Aktualisierungslesespannung an eine ausgewählte der Vielzahl von Wortleitungen für eine vorbestimmte Zeitdauer für jeden der Vielzahl von Blöcken in einem von einer Vielzahl von festgelegten Intervallen auf der Grundlage von mindestens einem Datenerhaltungsfaktor, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand in Antwort auf das Bestimmen des Einschaltungsereignisses der Speichereinrichtung zu halten, den Schritt 1304 des Durchführens einer anfänglichen Aktualisierungslesung einschließen. Das Verfahren schließt weiterhin den Schritt 1306 ein, bei dem die Chiptemperatur der Vielzahl von Speicherzellen unter Verwendung des Temperatursensors bestimmt wird. Alternativ kann das Verfahren auch das Lesen des Temp-Codes einschließen, um die Chiptemperatur zu bestimmen. Der nächste Schritt des Verfahrens ist 1308 das Bestimmen und Verwenden eines der Vielzahl festgelegter Intervalle basierend auf der Aktualisierungsfrequenz und der Temperaturnachschlagetabelle. So kann eine Aktualisierungshäufigkeit auf der Basis der Nachschlagetabelle bestimmt werden (z. B. 2 Min. bis 10 Std.).
  • Alternativ, gemäß einem Gesichtspunkt, schließt der mindestens eine Datenerhaltungsfaktor die Fehlerbitanzahl ein, die mit dem Lesen des mindestens einen Untersatzes der Vielzahl von Speicherzellen verbunden ist. So kann der Schritt 1302 des periodischen Anlegens einer vorbestimmten Aktualisierungslesespannung an eine ausgewählte der Vielzahl von Wortleitungen für eine vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken in einem von einer Vielzahl von festgelegten Intervallen auf der Grundlage von mindestens einem Datenerhaltungsfaktor, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand als Antwort auf das Bestimmen des Einschaltungsereignisses der Speichereinrichtung zu halten, den Schritt 1310 des Lesens des mindestens einen Untersatzes der Vielzahl von Speicherzellen einschließen. Das Verfahren kann mit dem Schritt 1312 fortgesetzt werden, bei dem die Fehlerkorrekturcodemaschine die Anzahl der Fehlerbits für mindestens den Untersatz der Vielzahl von Speicherzellen bestimmt. Als nächstes wird 1314 bestimmt, ob die Anzahl der Fehlerbits einen vorgegebenen Schwellenwert für die Anzahl der Fehlerbits überschreitet. Das Verfahren schließt dann den Schritt 1316 ein, bei dem die vorbestimmte Aktualisierungslesespannung an die ausgewählte Wortleitung aus der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken als Antwort darauf angelegt wird, dass die Fehlerbitanzahl den vorbestimmten Schwellenwert der Fehlerbitanzahl überschreitet.
  • Wie oben beschrieben, überspannt die für jede der Vielzahl von Speicherzellen mögliche Schwellenspannung Vth ein Schwellenfenster 1200 (13A), und jede der Vielzahl von Speicherzellen kann zum Speichern einer Vielzahl von Bits konfiguriert werden. Gemäß einem Gesichtspunkt und wie dargestellt kann die Vielzahl von Bits vier Bits einschließen, so dass die Vielzahl von Datenzuständen einen gelöschten Zustand an einem ersten Ende 1202 (13A) des Schwellenwertfensters (z. B. S0-Zustand von 13A) und eine Vielzahl von programmierten Datenzuständen einschließt, die jeweils der Schwellenspannung entsprechen, die höher ist als die Schwellenspannung, die dem gelöschten Zustand S0 zugeordnet ist (13A). Die Vielzahl der programmierten Datenzustände schließt einen oder mehrere höhere Datenzustände an einem zweiten Ende 1204 des Schwellenfensters gegenüber dem ersten Ende 1202 ein (z. B. S14- und S15-Zustände von 13A) und ist mit der Schwellenspannung verbunden, die höher ist als die Schwellenspannung, die mit dem gelöschten Zustand und mindestens einem anderen der Vielzahl der programmierten Datenzustände verbunden ist (z. B. S1-S13-Zustände von 13A). Auch hier werden die in der Vielzahl von Speicherzellen gespeicherten Daten in einer Vielzahl von Seiten gespeichert, die jeweils der Vielzahl von Bits zugeordnet sind, die von jeder der Vielzahl von Speicherzellen gespeichert werden, und gemäß einem Kodierungsschema der Vielzahl von Datenzuständen kodiert. Der mindestens eine Untersatz der Vielzahl von Speicherzellen schließt mindestens eine der Vielzahl von Seiten ein. Das Verfahren schließt also weiterhin den Schritt des Auswählens der mindestens einen der Vielzahl von Seiten basierend darauf ein, welche der mindestens einen der Vielzahl von Seiten mit dem einen oder mehreren höheren Datenzuständen verbunden ist. Der nächste Schritt des Verfahrens ist das Lesen der Daten, die in der mindestens einen der Vielzahl von Seiten gespeichert sind. Das Verfahren fährt fort mit dem Schritt des Bestimmens der Fehlerbitanzahl für die mindestens eine der Vielzahl von Seiten unter Verwendung der Fehlerkorrekturcodemaschine.
  • Die Vielzahl der Bits schließt vier Bits ein, wobei die Vielzahl der programmierten Datenzustände in der Reihenfolge der ansteigenden Schwellenspannung einen ersten Datenzustand S1 und einen zweiten Datenzustand S2 und einen dritten Datenzustand S3 und einen vierten Datenzustand S4 und einen fünften Datenzustand S5 und einen sechsten Datenzustand S6 und einen siebten Datenzustand S7 und einen achten Datenzustand S8 und einen neunten Datenzustand S9 und einen zehnten Datenzustand S10 und einen elften Datenzustand S11 und einen zwölften Datenzustand S12 und einen dreizehnten Datenzustand S13 und einen vierzehnten Datenzustand S14 und einen fünfzehnten Datenzustand S15. einschließt. Die Vielzahl von Seiten schließt eine Oberseite, eine obere Seite, eine mittlere Seite und eine untere Seite ein, die jeweils den vier Bits zugeordnet sind, die von jeder der Vielzahl von Speicherzellen gespeichert und gemäß dem Kodierungsschema der Vielzahl von Datenzuständen kodiert werden. Das Verfahren schließt also weiterhin den Schritt des Anlegens einer Folge von Lesespannungen, die dem fünften Datenzustand S5, dem zehnten Datenzustand S10, dem zwölften Datenzustand S12 und dem fünfzehnten Datenzustand S15 entsprechen, an die ausgewählte der Vielzahl von Wortleitungen ein, um die Daten der obersten Seite zu lesen. Der nächste Schritt des Verfahrens ist das Bestimmen der Anzahl der Fehlerbits für die in der oberen Seite gespeicherten Daten unter Verwendung der Fehlerkorrekturcodemaschine.
  • Auch hier kann eine Delta-Bit-Zählmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen mit der Schwellenspannung zwischen dem einen oder mehreren höheren Datenzuständen verwendet werden, um das Anlegen der vorbestimmten Aktualisierungslesespannung auszulösen, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand zu halten. Somit schließt das Verfahren weiterhin den Schritt des Lesens des mindestens einen Untersatzes der Vielzahl von Speicherzellen unter Verwendung einer Standardlesespannung ein, die dem einen oder mehreren höheren Datenzuständen zugeordnet ist, und unter Verwendung einer angepassten Lesespannung, die um eine vorbestimmte Delta-Steuerungsgatespannung geringer ist als die Standardlesespannung. Das Verfahren fährt fort mit dem Schritt des Bestimmens der Delta-Bitzählmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen, die die Schwellenspannung größer als die eingestellte Lesespannung und kleiner als die Standardlesespannung haben. Anschließend wird bestimmt, ob die Delta-Bit-Zählmenge einen vorgegebenen Delta-Bit-Zählmengen-Schwellenwert überschreitet. Das Verfahren schließt auch den Schritt des Anlegens der vorbestimmten Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitdauer für jeden der Vielzahl von Blöcken als Antwort darauf ein, dass die Delta-Bitzählmenge den vorbestimmten Delta-Bitzählmengen-Schwellenwert überschreitet.
  • Wie oben beschrieben, besteht eine Technik, die zum Verfolgen einer Datenerhaltungsmenge in NAND verwendet werden kann, darin, Lesevorgänge des fünfzehnten Datenzustands S15 bei zwei verschiedenen Spannungen (z. B. Standardlesespannung und Standardlesespannung minus einer vorbestimmten Delta-Steuertorspannung) durchzuführen und die Anzahl der Bits zwischen den beiden Niveaus zu zählen. Somit schließt das Verfahren weiterhin den Schritt des Lesens des mindestens einen Untersatzes der Vielzahl von Speicherzellen unter Verwendung der Standardlesespannung, die dem fünfzehnten Datenzustand zugeordnet ist, und unter Verwendung der eingestellten Lesespannung, die um die vorbestimmte Delta-Steuerungsgatespannung kleiner als die Standardlesespannung ist, ein, um die Delta-Bitzählmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen zu bestimmen, der die Schwellenspannung größer als die eingestellte Lesespannung und kleiner als die Standardlesespannung hat.
  • Weiterhin schließt das Verfahren den Schritt 1318 ein, in dem bestimmt wird, ob ein Benutzerbetrieb der Speichereinrichtung eingeleitet wurde. Der nächste Schritt des Verfahrens ist 1320 die Unterbrechung des periodischen Anlegens der vorbestimmten Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitdauer für jeden der Vielzahl von Blöcken in dem einen der Vielzahl von festgelegten Intervallen auf der Grundlage des mindestens einen Datenerhaltungsfaktors, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand zu halten, als Antwort auf das Bestimmen, dass der Benutzerbetrieb der Speichereinrichtung eingeleitet wurde. Die Aktualisierung kann also jederzeit für Benutzervorgänge (z. B. Lesen, Schreiben, etc.) unterbrochen werden.
  • 16A-16B zeigen die Sektor-Fehlerrate (SFR) in Abhängigkeit von der Anzahl der Fehlerbits (FBC)/Sektor für unterschiedliche Datenerhaltungszeiträume mit einer Aktualisierung oder einem Dummy-Lesevorgang (16B) und ohne den Aktualisierungslesevorgang ( 16A) für eine beispielhafte Speichereinrichtung. Für die in 16B dargestellten Daten wird die Aktualisierung oder das Dummy-Lesen am WL95-Kette 0 LP alle 60 Sekunden abgeschlossen. Wie dargestellt, wurden die Datenerhaltungsdaten mit dem Chip im eingeschalteten Zustand und bei 85 Grad Celsius gebacken erfasst. Die Anzahl der Fehlerbits nach der Datenerhaltung ist um -10 % besser, wenn die Blöcke im zweiten Lesezustand gehalten werden (d. h. Wortleitungen bei ~4 V). Folglich kann die Datenerhaltungskapazität und -ausdauer durch die hierin offenbarte Leseaktualisierung verlängert werden.
  • 17 zeigt die Verteilungen der Schwellenspannung Vth für eine beispielhafte Speichereinrichtung nach 80 Stunden Datenerhaltung bei Backen mit 85 Grad Celsius mit 2000 Schreib-/Löschzyklen mit und ohne Aktualisierung bzw. Dummy-Read. Wie dargestellt, ist das untere Ende für den zwölften Datenzustand S12, den dreizehnten Datenzustand S13, den vierzehnten Datenzustand S14 und den fünfzehnten Datenzustand S15 mit der Aktualisierung deutlich besser zu lesen.
  • 18 zeigt eine Verbesserung der Schwellenspannungstoleranz für die Datenerhaltung beim Aktualisierungslesen für eine beispielhafte Speichereinrichtung. Insbesondere speichern die Speicherzellen der beispielhaften Speichereinrichtung jeweils vier Bits (d. h. QLC) und die Schwellenwerttoleranz wird nach einer Stunde Datenerhaltung bei Backen mit 85 Grad Celsius für 1, 100, 500, 1000 und 2000 Schreib-/Löschzyklen gemessen. Die Schwellenspannungstoleranz Vth verbessert sich um -750 mv für 2000 Schreib-/Löschzyklen nach dem 80-stündigen Datenerhalt bei Backen mit 85 Grad Celsius.
  • 19 zeigt Schwellenspannungsverteilungen für eine beispielhafte Speichereinrichtung nach 80 Stunden Datenerhaltung bei Backen mit 85 Grad Celsius mit verschiedenen Schreib-/Löschzyklen mit und ohne Aktualisierung oder Dummy-Read. Wie dargestellt, ist der untere Schwanz für den zwölften Datenzustand S12, den dreizehnten Datenzustand S13, den vierzehnten Datenzustand S14 und den fünfzehnten Datenzustand S15 mit der Aktualisierung beim Lesen deutlich besser. Das höhere Potenzial der Wortleitung, das aus der hierin offenbarten Aktualisierung des Lesevorgangs resultiert, verhindert Elektronenverluste durch Tunneloxid (insbesondere nach Schreib-/Löschzyklen) und verbessert die Datenerhaltung im unteren Bereich der Wortleitung.
  • Natürlich können Änderungen an dem vorgenommen werden, was hierin beschrieben und veranschaulicht ist, ohne jedoch von dem Schutzumfang abzuweichen, der in den beigefügten Ansprüchen definiert ist. Die vorstehende Beschreibung der Ausführungsformen dient den Zwecken der Veranschaulichung und Beschreibung. Sie soll nicht erschöpfend sein oder die Offenbarung beschränken. Individuelle Elemente oder Merkmale einer speziellen Ausführungsform sind im Allgemeinen nicht auf diese spezielle Ausführungsform beschränkt, sondern gegebenenfalls austauschbar und können in einer ausgewählten Ausführungsform verwendet werden, auch wenn dies nicht speziell gezeigt oder beschrieben wird. Selbige können auch auf vielfältige Weise variiert werden. Solche Variationen sind nicht als Abweichung von der Offenbarung anzusehen, und alle derartigen Modifikationen sollen innerhalb des Schutzumfangs der Offenbarung eingeschlossen sein.
  • Die hierin verwendete Terminologie dient lediglich der Beschreibung spezieller beispielhafter Ausführungsformen und soll nicht beschränkend sein. Wie hierin verwendet, sollen die Singularformen „ein“, „eine“, „eines“ und „der“, „die“, „das“ auch die Pluralformen einschließen, sofern durch den Kontext nicht eindeutig anderes angezeigt ist. Die Begriffe „umfasst“, „umfassend“, „einschließen“ und „aufweisen“ sind inklusiv und spezifizieren daher das Vorhandensein von angegebenen Merkmalen, Zahlen, Schritten, Vorgängen, Elementen und/oder Komponenten, schließen aber nicht das Vorhandensein oder die Hinzufügung eines/einer oder mehrerer anderer Merkmale, Zahlen, Schritte, Vorgänge, Elemente, Komponenten und/oder Gruppen davon aus. Die hierin beschriebenen Verfahrensschritte, Prozesse und Operationen sind nicht dahin gehend auszulegen, dass sie notwendigerweise ihre Durchführung in der speziellen beschriebenen oder veranschaulichten Reihenfolge erfordern, es sei denn, sofern nicht speziell als eine Durchführungsreihenfolge gekennzeichnet. Es versteht sich außerdem, dass zusätzliche oder alternative Schritte angewendet werden können.
  • Wenn ein Element oder eine Schicht als „auf“ einem anderen Element oder einer anderen Schicht befindlich, mit diesen „in Eingriff befindlich“ oder mit diesen „verbunden“ oder „gekoppelt“ bezeichnet wird, kann es sich direkt auf dem anderen Element oder der anderen Schicht befinden, sich direkt mit diesen in Eingriff befinden oder direkt mit diesen verbunden oder gekoppelt sein, oder es können dazwischen liegende Elemente oder Schichten vorhanden sein. Im Gegensatz dazu können, wenn ein Element als sich „direkt auf“ einem anderen Element oder einer anderen Schicht befindlich, „direkt mit diesen in Eingriff“ befindlich oder mit diesen „direkt verbunden“ oder „direkt gekoppelt“ bezeichnet wird, keine dazwischen liegenden Elemente oder Schichten vorhanden sein. Andere Wörter, die zum Beschreiben der Beziehung zwischen Elementen verwendet werden, sollten in gleicher Weise interpretiert werden (z. B. „zwischen“ gegenüber „direkt zwischen“, „benachbart“ gegenüber „direkt benachbart“ usw.). Wie hierin verwendet, schließt der Begriff „und/oder“ beliebige und alle Kombinationen von einem oder mehreren der zugeordneten aufgeführten Positionen ein.
  • Obwohl die Begriffe „erster“, „zweiter“, „dritter“ usw. hierin zum Beschreiben verschiedener Elemente, Komponenten, Bereiche, Schichten und/oder Abschnitte verwendet werden können, sollten diese Elemente, Komponenten, Bereiche, Schichten und/oder Abschnitte nicht durch diese Begriffe beschränkt werden. Diese Begriffe werden nur verwendet, um ein Element, eine Komponente, einen Bereich, eine Schicht oder einen Abschnitt von einem anderen Bereich, einer anderen Schicht oder einem anderen Abschnitt zu unterscheiden. Begriffe wie „erster“, „zweiter“ und andere numerische Begriffe implizieren, wenn sie hierin verwendet werden, keine Sequenz oder Reihenfolge, sofern dies nicht eindeutig durch den Kontext angezeigt ist. Somit könnte ein erstes Element, eine erste Komponente, ein erster Bereich, eine erste Schicht oder ein erster Abschnitt, wie nachstehend beschrieben, als ein zweites Element, eine zweite Komponente, ein zweiter Bereich, eine zweite Schicht oder ein zweiter Abschnitt bezeichnet werden, ohne von den Lehren der beispielhaften Ausführungsformen abzuweichen.
  • Begriffe der räumlichen Beziehung, wie etwa „innerer“, „äußerer“, „unterhalb“, „unter“, „unterer“, „oberhalb/über“, „oberer“, „oben“, „unten“ und dergleichen, können hierin zur Vereinfachung der Beschreibung verwendet werden, um die Beziehung eines Elements oder Merkmals zu einem oder mehreren anderen Elementen oder Merkmalen zu beschreiben, wie in den Figuren veranschaulicht. Es kann vorgesehen sein, dass Begriffe der räumlichen Beziehung andere Ausrichtung der im Gebrauch oder Betrieb befindlichen Vorrichtung neben der in den Figuren dargestellten Ausrichtung umfassen. Wenn zum Beispiel die Vorrichtung in den Figuren umgedreht wird, sind Elemente, die als „unter“ anderen Elementen oder Merkmalen oder „unterhalb“ anderer Elemente oder Merkmale beschrieben werden, dann „oberhalb“ der anderen Elemente oder Merkmale ausgerichtet. Somit kann zum Beispiel der Begriff „unterhalb“ eine Ausrichtung sowohl von oberhalb als auch von unterhalb umfassen. Die Vorrichtung kann anders ausgerichtet sein (um 90 Grad gedreht sein oder andere Ausrichtungen aufweisen), und die hierin verwendeten Beschreibungen der räumlichen Beziehung können entsprechend interpretiert werden.

Claims (20)

  1. Einrichtung, aufweisend: eine Vielzahl von Speicherzellen, wobei jede der Vielzahl von Speicherzellen mit einer von einer Vielzahl von Wortleitungen verbunden und in einem von einer Vielzahl von Blöcken angeordnet ist und konfiguriert ist, um eine Schwellenspannung zu halten, die einem von einer Vielzahl von Datenzuständen entspricht, wobei die Vielzahl von Speicherzellen in einem von einem ersten Lesezustand, in dem eine Wortleitungsspannung der Vielzahl von Wortleitungen entladen ist, und einem zweiten Lesezustand, in dem die Wortleitungsspannung der Vielzahl von Wortleitungen auf ein Restspannungsniveau hochgekoppelt ist, betriebsfähig ist; und eine Steuerschaltung, die mit der Vielzahl von Wortleitungen gekoppelt und so konfiguriert ist, dass sie: ein Einschaltungsereignis der Einrichtung bestimmen, bei dem sich die Vielzahl der Speicherzellen im ersten Lesezustand befindet, und periodisch eine vorbestimmte Aktualisierungslesespannung an eine ausgewählte der Vielzahl von Wortleitungen für eine vorbestimmte Zeitdauer für jeden der Vielzahl von Blöcken in einem von einer Vielzahl von festgelegten Intervallen auf der Basis von mindestens einem Datenerhaltungsfaktor anlegt, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand in Antwort auf das Bestimmen des Einschaltungsereignisses der Einrichtung zu halten.
  2. Einrichtung nach Anspruch 1, wobei der mindestens eine Datenerhaltungsfaktor eine Chiptemperatur der Vielzahl von Speicherzellen einschließt, wobei die Einrichtung weiterhin einen Temperatursensor einschließt, der mit der Steuerschaltung in Verbindung steht und so konfiguriert ist, dass er die Chiptemperatur der Vielzahl von Speicherzellen und eine Aktualisierungsfrequenz- und Temperaturnachschlagetabelle misst, die die Vielzahl festgelegter Intervalle einschließt, die jeweils einer aus einer Vielzahl von Größen der Chiptemperatur entsprechen, und wobei die Steuerschaltung weiterhin so konfiguriert ist, dass sie: die Chiptemperatur der Vielzahl von Speicherzellen mit Hilfe des Temperatursensors bestimmt; und eines der Vielzahl festgelegter Intervalle basierend auf der Aktualisierungsfrequenz und der Temperaturnachschlagetabelle bestimmt und verwendet.
  3. Einrichtung nach Anspruch 1, wobei die Steuerschaltung weiterhin eine Fehlerkorrekturcodemaschine einschließt, die so konfiguriert ist, dass sie Fehler beim Lesen der Vielzahl von Speicherzellen bestimmt und korrigiert, wobei der mindestens eine Datenerhaltungsfaktor eine Fehlerbitanzahl einschließt, die dem Lesen mindestens eines Untersatzes der Vielzahl von Speicherzellen zugeordnet ist, und wobei die Steuerschaltung weiterhin so konfiguriert ist, dass sie: mindestens den Untersatz der Vielzahl von Speicherzellen liest; die Fehlerbitanzahl für den mindestens einen Untersatz der Vielzahl von Speicherzellen unter Verwendung der Fehlerkorrekturcodemaschine bestimmt; bestimmt, ob die Fehlerbitanzahl einen vorbestimmten Schwellenwert für die Fehlerbitanzahl überschreitet; und die vorbestimmte Aktualisierungslesespannung an die ausgewählte Wortleitung aus der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne für jeden aus der Vielzahl von Blöcken als Antwort auf die Fehlerbitanzahl, die den vorbestimmten Schwellenwert für die Fehlerbitanzahl überschreitet, anlegt.
  4. Einrichtung nach Anspruch 3, wobei die für jede der Vielzahl von Speicherzellen mögliche Schwellenspannung ein Schwellenfenster überspannt, wobei jede der Vielzahl von Speicherzellen so konfiguriert ist, dass sie eine Vielzahl von Bits speichert, wobei die Vielzahl von Datenzuständen einen gelöschten Zustand an einem ersten Ende des Schwellenfensters und eine Vielzahl von programmierten Datenzuständen einschließt, die jeweils der Schwellenspannung entsprechen, die höher ist als die dem gelöschten Zustand zugeordnete Schwellenspannung, wobei die Vielzahl der programmierten Datenzustände einen oder mehrere höhere Datenzustände an einem zweiten Ende des Schwellenwertfensters gegenüber dem ersten Ende einschließt, die mit der Schwellenspannung verbunden sind, die höher ist als die Schwellenspannung, die mit dem gelöschten Zustand und mindestens einem anderen der Vielzahl der programmierten Datenzustände verbunden ist, wobei die in der Vielzahl von Speicherzellen gespeicherten Daten in einer Vielzahl von Seiten gespeichert werden, die jeweils der Vielzahl von Bits zugeordnet sind, die von jeder der Vielzahl von Speicherzellen gespeichert werden, und gemäß einem Kodierungsschema der Vielzahl von Datenzuständen kodiert werden, wobei mindestens der Untersatz der Vielzahl von Speicherzellen mindestens eine der Vielzahl von Seiten einschließt, und wobei die Steuerschaltung weiterhin konfiguriert ist, um: die mindestens eine der Vielzahl von Seiten auszuwählen, basierend darauf, welche der mindestens einen der Vielzahl von Seiten mit dem einen oder mehreren höheren Datenzuständen verbunden ist; die Daten zu lesen, die in der mindestens einen der Vielzahl von Seiten gespeichert sind; und die Fehlerbitanzahl für die mindestens eine der Vielzahl von Seiten unter Verwendung der Fehlerkorrekturcodemaschine zu bestimmen.
  5. Einrichtung nach Anspruch 4, wobei die Vielzahl der Bits vier Bits einschließt, die Vielzahl der programmierten Datenzustände in der Reihenfolge der ansteigenden Schwellenspannung einen ersten Datenzustand und einen zweiten Datenzustand und einen dritten Datenzustand und einen vierten Datenzustand und einen fünften Datenzustand und einen sechsten Datenzustand und einen siebten Datenzustand und einen achten Datenzustand und einen neunten Datenzustand und einen zehnten Datenzustand und einen elften Datenzustand und einen zwölften Datenzustand und einen dreizehnten Datenzustand und einen vierzehnten Datenzustand und einen fünfzehnten Datenzustand einschließt, wobei die Vielzahl von Seiten eine Oberseite, eine obere Seite, eine mittlere Seite und eine untere Seite einschließt, die jeweils den vier Bits zugeordnet sind, die von jeder der Vielzahl von Speicherzellen gespeichert und gemäß dem Kodierungsschema der Vielzahl von Datenzuständen kodiert sind, und wobei die Steuerschaltung weiterhin konfiguriert ist, um: eine Folge von Lesespannungen, die dem fünften Datenzustand, dem zehnten Datenzustand, dem zwölften Datenzustand und dem fünfzehnten Datenzustand entsprechen, an die ausgewählte aus der Vielzahl von Wortleitungen anzulegen, um die Daten der obersten Seite zu lesen; und die Anzahl der Fehlerbits für die in der Oberseite gespeicherten Daten unter Verwendung der Fehlerkorrekturcodemaschine zu bestimmen.
  6. Einrichtung nach Anspruch 3, wobei die für jede der Vielzahl von Speicherzellen mögliche Schwellenspannung ein Schwellenfenster überspannt, wobei jede der Vielzahl von Speicherzellen so konfiguriert ist, dass sie eine Vielzahl von Bits speichert, wobei die Vielzahl von Datenzuständen einen gelöschten Zustand an einem ersten Ende des Schwellenfensters und eine Vielzahl von programmierten Datenzuständen einschließt, die jeweils der Schwellenspannung entsprechen, die höher ist als die dem gelöschten Zustand zugeordnete Schwellenspannung, wobei die Vielzahl von programmierten Datenzuständen einen oder mehrere höhere Datenzustände an einem zweiten Ende des Schwellenfensters gegenüber dem ersten Ende einschließt und mit der Schwellenspannung verbunden ist, die höher ist als die Schwellenspannung, die mit dem gelöschten Zustand und mindestens einem anderen der Vielzahl von programmierten Datenzuständen verbunden ist, wobei der mindestens eine Datenerhaltungsfaktor eine Delta-Bit-Zählmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen einschließt, die die Schwellenspannung zwischen dem einen oder den mehreren höheren Datenzuständen haben, und wobei die Steuerschaltung weiterhin konfiguriert ist, um: mindestens den Untersatz der Vielzahl von Speicherzellen unter Verwendung einer Standardlesespannung, die dem einen oder den mehreren höheren Datenzuständen zugeordnet ist, und unter Verwendung einer eingestellten Lesespannung, die um eine vorbestimmte Delta-Steuerungsgatespannung kleiner als die Standardlesespannung ist, zu lesen; die Delta-Bitzählmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen zu bestimmen, der die Schwellenspannung größer als die eingestellte Lesespannung und kleiner als die Standardlesespannung hat; zu bestimmen, ob die Delta-Bitzählmenge einen vorgegebenen Delta-Bitzählmengen-Schwellenwert überschreitet; und die vorbestimmte Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken als Antwort darauf anzulegen, dass die Delta-Bitzählmenge den vorbestimmten Delta-Bitzählmengen-Schwellenwert überschreitet.
  7. Einrichtung nach Anspruch 6, wobei die Vielzahl der Bits vier Bits einschließt, die Vielzahl der programmierten Datenzustände in der Reihenfolge der ansteigenden Schwellenspannung einen ersten Datenzustand und einen zweiten Datenzustand und einen dritten Datenzustand und einen vierten Datenzustand und einen fünften Datenzustand und einen sechsten Datenzustand und einen siebten Datenzustand und einen achten Datenzustand und einen neunten Datenzustand und einen zehnten Datenzustand und einen elften Datenzustand und einen zwölften Datenzustand und einen dreizehnten Datenzustand und einen vierzehnten Datenzustand und einen fünfzehnten Datenzustand einschließt, und wobei die Steuerschaltung weiterhin so konfiguriert ist, dass sie zumindest den Untersatz der Vielzahl von Speicherzellen unter Verwendung der Standardlesespannung, die dem fünfzehnten Datenzustand zugeordnet ist, und unter Verwendung der angepassten Lesespannung, die um die vorbestimmte Delta-Steuerungsgatespannung kleiner als die Standardlesespannung ist, liest, um die Delta-Bitzählmenge des zumindest einen Untersatzes der Vielzahl von Speicherzellen zu bestimmen, der die Schwellenspannung größer als die angepasste Lesespannung und kleiner als die Standardlesespannung hat.
  8. Vorrichtung nach Anspruch 1, wobei die Steuerschaltung weiterhin eingerichtet ist zum: Bestimmen, ob eine Benutzer-Bedienung der Einrichtung eingeleitet wurde, und Unterbrechen des periodischen Anlegens der vorbestimmten Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken in dem einen der Vielzahl von festgelegten Intervallen auf der Grundlage des mindestens einen Datenerhaltungsfaktors, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand zu halten, als Antwort auf das Bestimmen, dass der Benutzerbetrieb der Einrichtung eingeleitet wurde.
  9. Steuerung in Kommunikation mit einer Speichereinrichtung, die eine Vielzahl von Speicherzellen einschließt, wobei jede der Vielzahl von Speicherzellen mit einer von einer Vielzahl von Wortleitungen verbunden und in einem von einer Vielzahl von Blöcken angeordnet ist und konfiguriert ist, um eine Schwellenspannung zu halten, die einem von einer Vielzahl von Datenzuständen entspricht, wobei die Vielzahl von Speicherzellen in einem von einem ersten Lesezustand, in dem eine Wortleitungsspannung der Vielzahl von Wortleitungen entladen ist, und einem zweiten Lesezustand, in dem die Wortleitungsspannung der Vielzahl von Wortleitungen auf ein Restspannungsniveau hochgekoppelt ist, betriebsfähig ist, wobei die Steuerung konfiguriert ist zum: Bestimmen eines Einschaltungsereignisses der Speichereinrichtung, bei dem sich die Vielzahl der Speicherzellen im ersten Lesezustand befindet; und Anweisen der Speichereinrichtung, periodisch eine vorbestimmte Aktualisierungslesespannung an eine ausgewählte der Vielzahl von Wortleitungen für eine vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken in einem von einer Vielzahl von festgelegten Intervallen auf der Basis von mindestens einem Datenerhaltungsfaktor anzulegen, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand in Antwort auf das Bestimmen des Einschaltungsereignisses der Speichereinrichtung zu halten.
  10. Steuerung nach Anspruch 9, wobei der mindestens eine Datenerhaltungsfaktor eine Chiptemperatur der Vielzahl von Speicherzellen einschließt, die Speichereinrichtung weiterhin einen Temperatursensor einschließt, der mit der Steuerung in Verbindung steht und so konfiguriert ist, dass er die Chiptemperatur der Vielzahl von Speicherzellen und eine Aktualisierungsfrequenz- und Temperaturnachschlagetabelle misst, die die Vielzahl festgelegter Intervalle einschließt, die jeweils einer aus einer Vielzahl von Größen der Chiptemperatur entsprechen, und die Steuerung weiterhin so konfiguriert ist, dass sie: die Chiptemperatur der Vielzahl von Speicherzellen mit Hilfe des Temperatursensors bestimmt; und die Speichereinrichtung bestimmt und anweist, eines der Vielzahl festgelegter Intervalle zu verwenden, basierend auf der Aktualisierungsfrequenz und der Temperaturnachschlagetabelle.
  11. Steuerung nach Anspruch 9, wobei die Speichereinrichtung weiterhin eine Fehlerkorrekturcodemaschine einschließt, die so konfiguriert ist, dass sie Fehler beim Lesen der Vielzahl von Speicherzellen bestimmt und korrigiert, wobei der mindestens eine Datenerhaltungsfaktor eine Fehlerbitanzahl einschließt, die dem Lesen mindestens eines Untersatzes der Vielzahl von Speicherzellen zugeordnet ist, und wobei die Steuerung weiterhin so konfiguriert ist, dass sie: die Speichereinrichtung anweist, den mindestens einen Untersatz der Vielzahl von Speicherzellen zu lesen; die Fehlerbitanzahl für den mindestens einen Untersatz der Vielzahl von Speicherzellen unter Verwendung der Fehlerkorrekturcodemaschine bestimmt; bestimmt, ob die Fehlerbitanzahl einen vorbestimmten Schwellenwert für die Fehlerbitanzahl überschreitet; und die Speichereinrichtung anweist, die vorbestimmte Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken als Antwort darauf anzulegen, dass die Fehlerbitanzahl die vorbestimmte Fehlerbitanzahlschwelle überschreitet.
  12. Steuerung nach Anspruch 11, wobei die für jede der Vielzahl von Speicherzellen mögliche Schwellenspannung ein Schwellenfenster überspannt, wobei jede der Vielzahl von Speicherzellen so konfiguriert ist, dass sie eine Vielzahl von Bits speichert, wobei die Vielzahl von Datenzuständen einen gelöschten Zustand an einem ersten Ende des Schwellenfensters und eine Vielzahl von programmierten Datenzuständen einschließt, die jeweils der Schwellenspannung entsprechen, die höher ist als die dem gelöschten Zustand zugeordnete Schwellenspannung, wobei die Vielzahl von programmierten Datenzuständen einen oder mehrere höhere Datenzustände an einem zweiten Ende des Schwellenfensters gegenüber dem ersten Ende einschließt und mit der Schwellenspannung verbunden ist, die höher ist als die Schwellenspannung, die mit dem gelöschten Zustand und einem oder mehreren anderen der Vielzahl von programmierten Datenzuständen verbunden ist, wobei der mindestens eine Datenerhaltungsfaktor eine Delta-Bit-Zählmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen einschließt, die die Schwellenspannung zwischen dem einen oder den mehreren höheren Datenzuständen haben, und wobei die Steuerung weiterhin konfiguriert ist, um: die Speichereinrichtung anzuweisen, mindestens den Untersatz der Vielzahl von Speicherzellen unter Verwendung einer Standardlesespannung zu lesen, die dem einen oder mehreren höheren Datenzuständen zugeordnet ist, und unter Verwendung einer angepassten Lesespannung, die um eine vorbestimmte Delta-Steuergatespannung kleiner als die Standardlesespannung ist; die Delta-Bitzählmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen zu bestimmen, der die Schwellenspannung größer als die eingestellte Lesespannung und kleiner als die Standardlesespannung hat; zu bestimmen, ob die Delta-Bitzählmenge einen vorgegebenen Delta-Bitzählmengen-Schwellenwert überschreitet; und die Speichereinrichtung anzuweisen, die vorbestimmte Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken als Antwort auf die Delta-Bitzählmenge anzulegen, die den vorbestimmten Delta-Bitzählmengen-Schwellenwert überschreitet.
  13. Verfahren zum Betreiben einer Speichereinrichtung, die eine Vielzahl von Speicherzellen aufweist, wobei jede der Vielzahl von Speicherzellen mit einer von einer Vielzahl von Wortleitungen verbunden und in einem von einer Vielzahl von Blöcken angeordnet ist und so konfiguriert ist, dass sie eine Schwellenspannung beibehält, die einem von einer Vielzahl von Datenzuständen entspricht, wobei die Vielzahl von Speicherzellen in einem von einem ersten Lesezustand, in dem eine Wortleitungsspannung der Vielzahl von Wortleitungen entladen ist, und einem zweiten Lesezustand, in dem die Wortleitungsspannung der Vielzahl von Wortleitungen bis zu einem Restspannungsniveau gekoppelt ist, betrieben werden kann, wobei das Verfahren die folgenden Schritte aufweist: Bestimmen eines Einschaltungsereignisses der Speichereinrichtung, bei dem sich die Vielzahl von Speicherzellen im ersten Lesezustand befindet; und periodisches Anlegen einer vorbestimmten Aktualisierungslesespannung an eine ausgewählte der Vielzahl von Wortleitungen für eine vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken in einem von einer Vielzahl von festgelegten Intervallen auf der Basis von mindestens einem Datenerhaltungsfaktor, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand in Antwort auf das Bestimmen des Einschaltungsereignisses der Speichereinrichtung zu halten.
  14. Verfahren nach Anspruch 13, wobei der mindestens eine Datenerhaltungsfaktor eine Chiptemperatur der Vielzahl von Speicherzellen einschließt, wobei die Speichereinrichtung weiterhin einen Temperatursensor, der zum Messen der Chiptemperatur der Vielzahl von Speicherzellen konfiguriert ist, und eine Aktualisierungsfrequenz- und Temperaturnachschlagetabelle einschließt, die die Vielzahl festgelegter Intervalle einschließt, die jeweils einer von einer Vielzahl von Größen der Chiptemperatur entsprechen, und wobei das Verfahren weiterhin die folgenden Schritte einschließt: Bestimmen der Chiptemperatur der Vielzahl von Speicherzellen mit Hilfe des Temperatursensors; und Bestimmen und Verwenden eines der Vielzahl festgelegter Intervalle basierend auf der Aktualisierungsfrequenz und der Temperaturnachschlagetabelle.
  15. Verfahren nach Anspruch 13, wobei die Speichereinrichtung weiterhin eine Fehlerkorrekturcodemaschine einschließt, die so konfiguriert ist, dass sie Fehler beim Lesen der Vielzahl von Speicherzellen bestimmt und korrigiert, wobei der mindestens eine Datenerhaltungsfaktor eine Fehlerbitanzahl einschließt, die dem Lesen mindestens eines Untersatzes der Vielzahl von Speicherzellen zugeordnet ist, und wobei das Verfahren weiterhin die folgenden Schritte einschließt: Lesen des mindestens einen Untersatzes der Vielzahl von Speicherzellen; Bestimmen der Fehlerbitanzahl für den mindestens einen Untersatz der Vielzahl von Speicherzellen unter Verwendung der Fehlerkorrekturcodemaschine; Bestimmen, ob die Fehlerbitanzahl einen vorbestimmten Schwellenwert für die Fehlerbitanzahl überschreitet; und Anlegen der vorbestimmten Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken als Antwort auf die Fehlerbitanzahl, die den vorbestimmten Fehlerbitanzahl-Schwellenwert überschreitet.
  16. Verfahren nach Anspruch 15, wobei die für jede der Vielzahl von Speicherzellen mögliche Schwellenspannung ein Schwellenfenster überspannt, wobei jede der Vielzahl von Speicherzellen so konfiguriert ist, dass sie eine Vielzahl von Bits speichert, wobei die Vielzahl von Datenzuständen einen gelöschten Zustand an einem ersten Ende des Schwellenfensters und eine Vielzahl von programmierten Datenzuständen einschließt, die jeweils der Schwellenspannung entsprechen, die höher ist als die dem gelöschten Zustand zugeordnete Schwellenspannung, wobei die Vielzahl der programmierten Datenzustände einen oder mehrere höhere Datenzustände an einem zweiten Ende des Schwellenwertfensters gegenüber dem ersten Ende einschließt, die mit der Schwellenspannung verbunden sind, die höher ist als die Schwellenspannung, die mit dem gelöschten Zustand und mindestens einem anderen der Vielzahl der programmierten Datenzustände verbunden ist, wobei die in der Vielzahl von Speicherzellen gespeicherten Daten in einer Vielzahl von Seiten gespeichert werden, die jeweils der Vielzahl von Bits zugeordnet sind, die von jeder der Vielzahl von Speicherzellen gespeichert werden, und gemäß einem Kodierungsschema der Vielzahl von Datenzuständen kodiert werden, wobei mindestens der Untersatz der Vielzahl von Speicherzellen mindestens eine der Vielzahl von Seiten einschließt, und wobei das Verfahren weiterhin die folgenden Schritte einschließt: Auswählen der mindestens einen der Vielzahl von Seiten basierend darauf, welche der mindestens einen der Vielzahl von Seiten mit dem einen oder mehreren höheren Datenzuständen verbunden ist; Lesen der Daten, die in mindestens einer der Vielzahl von Seiten gespeichert sind; und Bestimmen der Fehlerbitanzahl für die mindestens eine der Vielzahl von Seiten unter Verwendung der Fehlerkorrekturcodemaschine.
  17. Verfahren nach Anspruch 16, wobei die Vielzahl der Bits vier Bits einschließt, die Vielzahl der programmierten Datenzustände in der Reihenfolge der ansteigenden Schwellenspannung einen ersten Datenzustand und einen zweiten Datenzustand und einen dritten Datenzustand und einen vierten Datenzustand und einen fünften Datenzustand und einen sechsten Datenzustand und einen siebten Datenzustand und einen achten Datenzustand und einen neunten Datenzustand und einen zehnten Datenzustand und einen elften Datenzustand und einen zwölften Datenzustand und einen dreizehnten Datenzustand und einen vierzehnten Datenzustand und einen fünfzehnten Datenzustand einschließt, wobei die Vielzahl von Seiten eine Oberseite, eine obere Seite, eine mittlere Seite und eine untere Seite einschließt, die jeweils den vier Bits zugeordnet sind, die von jeder der Vielzahl von Speicherzellen gespeichert und gemäß dem Kodierungsschema der Vielzahl von Datenzuständen kodiert sind, und wobei das Verfahren weiterhin die folgenden Schritte einschließt: Anlegen einer Folge von Lesespannungen, die dem fünften Datenzustand, dem zehnten Datenzustand, dem zwölften Datenzustand und dem fünfzehnten Datenzustand entsprechen, an die ausgewählte Wortleitung aus der Vielzahl von Wortleitungen, um die Daten der obersten Seite zu lesen; und Bestimmen der Fehlerbitanzahl für die in der Oberseite gespeicherten Daten unter Verwendung der Fehlerkorrekturcodemaschine.
  18. Verfahren nach Anspruch 13, wobei die für jede der Vielzahl von Speicherzellen mögliche Schwellenspannung ein Schwellenfenster überspannt, wobei jede der Vielzahl von Speicherzellen so konfiguriert ist, dass sie eine Vielzahl von Bits speichert, wobei die Vielzahl von Datenzuständen einen gelöschten Zustand an einem ersten Ende des Schwellenfensters und eine Vielzahl von programmierten Datenzuständen einschließt, die jeweils der Schwellenspannung entsprechen, die höher ist als die dem gelöschten Zustand zugeordnete Schwellenspannung, wobei die Vielzahl von programmierten Datenzuständen einen oder mehrere höhere Datenzustände an einem zweiten Ende des Schwellenfensters gegenüber dem ersten Ende einschließt und mit der Schwellenspannung verbunden ist, die höher ist als die Schwellenspannung, die mit dem gelöschten Zustand und mindestens einem anderen der Vielzahl von programmierten Datenzuständen verbunden ist, wobei der mindestens eine Datenerhaltungsfaktor eine Delta-Bit-Zählmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen einschließt, die die Schwellenspannung zwischen dem einen oder den mehreren höheren Datenzuständen haben, und wobei das Verfahren weiterhin die folgenden Schritte einschließt: Lesen des mindestens einen Untersatzes der Vielzahl von Speicherzellen unter Verwendung einer Standardlesespannung, die dem einen oder den mehreren höheren Datenzuständen zugeordnet ist, und unter Verwendung einer eingestellten Lesespannung, die um eine vorbestimmte Delta-Steuerungsgatespannung geringer ist als die Standardlesespannung; Bestimmen der Delta-Bit-Zählmenge des mindestens einen Untersatzes der Vielzahl von Speicherzellen, die die Schwellenspannung größer als die eingestellte Lesespannung und kleiner als die Standardlesespannung haben; Bestimmen, ob die Delta-Bitzählmenge einen vorbestimmten Delta-Bitzählmengen-Schwellenwert überschreitet; und Anlegen der vorbestimmten Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken als Antwort darauf, dass die Delta-Bitzählmenge den vorbestimmten Delta-Bitzählmengen-Schwellenwert überschreitet.
  19. Verfahren nach Anspruch 18, wobei die Vielzahl der Bits vier Bits einschließt, die Vielzahl der programmierten Datenzustände in der Reihenfolge der ansteigenden Schwellenspannung einen ersten Datenzustand und einen zweiten Datenzustand und einen dritten Datenzustand und einen vierten Datenzustand und einen fünften Datenzustand und einen sechsten Datenzustand und einen siebten Datenzustand und einen achten Datenzustand und einen neunten Datenzustand und einen zehnten Datenzustand und einen elften Datenzustand und einen zwölften Datenzustand und einen dreizehnten Datenzustand und einen vierzehnten Datenzustand und einen fünfzehnten Datenzustand einschließt, und wobei das Verfahren weiterhin den Schritt des Lesens des mindestens eines Untersatz der Vielzahl von Speicherzellen unter Verwendung der Standardlesespannung einschließt, die dem fünfzehnten Datenzustand zugeordnet ist, und unter Verwendung der angepassten Lesespannung, die um die vorbestimmte Delta-Steuerungsgatespannung kleiner als die Standardlesespannung ist, liest, um die Delta-Bitzählmenge des zumindest einen Untersatzes der Vielzahl von Speicherzellen zu bestimmen, der die Schwellenspannung größer als die angepasste Lesespannung und kleiner als die Standardlesespannung hat.
  20. Verfahren nach Anspruch 13, das weiterhin die folgenden Schritte einschließt: Bestimmen, ob eine Benutzer-Bedienung der Speichereinrichtung eingeleitet wurde, und Unterbrechen des periodischen Anlegens der vorbestimmten Aktualisierungslesespannung an die ausgewählte der Vielzahl von Wortleitungen für die vorbestimmte Zeitspanne für jeden der Vielzahl von Blöcken in dem einen der Vielzahl von festgelegten Intervallen auf der Grundlage des mindestens einen Datenerhaltungsfaktors, um die Vielzahl von Speicherzellen der Vielzahl von Blöcken in dem zweiten Lesezustand zu halten, als Antwort auf das Bestimmen, dass der Benutzerbetrieb der Einrichtung eingeleitet wurde.
DE102021115501.0A 2021-02-11 2021-06-15 Leseaktualisierung zur verbesserung der leistung bei datenerhaltung für nichtflüchtigen speicher Pending DE102021115501A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/173,852 US11404127B1 (en) 2021-02-11 2021-02-11 Read refresh to improve power on data retention for a non-volatile memory
US17/173852 2021-02-11

Publications (1)

Publication Number Publication Date
DE102021115501A1 true DE102021115501A1 (de) 2022-08-11

Family

ID=82493393

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021115501.0A Pending DE102021115501A1 (de) 2021-02-11 2021-06-15 Leseaktualisierung zur verbesserung der leistung bei datenerhaltung für nichtflüchtigen speicher

Country Status (3)

Country Link
US (1) US11404127B1 (de)
CN (1) CN114927153A (de)
DE (1) DE102021115501A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220049650A (ko) * 2020-10-14 2022-04-22 삼성전자주식회사 메모리 장치
US20220300374A1 (en) * 2021-03-17 2022-09-22 Micron Technology, Inc. Redundant array management techniques
CN115810388A (zh) * 2021-09-16 2023-03-17 长鑫存储技术有限公司 存储器的检测方法及检测装置
JP2023119953A (ja) * 2022-02-17 2023-08-29 キオクシア株式会社 メモリシステム
US11894080B2 (en) * 2022-04-29 2024-02-06 Sandisk Technologies Llc Time-tagging read levels of multiple wordlines for open block data retention
CN115295054B (zh) * 2022-09-30 2022-12-13 芯天下技术股份有限公司 一种存储芯片的读取方法、装置、电子设备及存储介质

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6504766B1 (en) * 2001-06-29 2003-01-07 International Business Machines Corporation System and method for early write to memory by injecting small voltage signal
US6400629B1 (en) * 2001-06-29 2002-06-04 International Business Machines Corporation System and method for early write to memory by holding bitline at fixed potential
US7320100B2 (en) * 2003-05-20 2008-01-15 Cray Inc. Apparatus and method for memory with bit swapping on the fly and testing
US8276043B2 (en) * 2008-03-01 2012-09-25 Kabushiki Kaisha Toshiba Memory system
EP2359371A1 (de) 2008-11-11 2011-08-24 Nokia Corporation Verfahren und einrichtung zum datenauffrischen auf temperaturbasis in nichtflüchtigen speichern
US8243525B1 (en) 2009-09-30 2012-08-14 Western Digital Technologies, Inc. Refreshing non-volatile semiconductor memory by reading without rewriting
KR101666941B1 (ko) * 2010-07-06 2016-10-17 삼성전자주식회사 비휘발성 메모리 장치와 이를 포함하는 반도체 시스템
JP5740296B2 (ja) * 2011-12-16 2015-06-24 株式会社東芝 半導体記憶装置、半導体記憶装置の制御方法、制御プログラム
US8923054B1 (en) 2013-06-14 2014-12-30 Sandisk Technologies Inc. Pseudo block operation mode in 3D NAND
US10353598B2 (en) 2014-10-06 2019-07-16 Sandisk Technologies Llc System and method for refreshing data in a memory device
US10121553B2 (en) * 2015-09-30 2018-11-06 Sunrise Memory Corporation Capacitive-coupled non-volatile thin-film transistor NOR strings in three-dimensional arrays
JP6084318B1 (ja) * 2016-02-22 2017-02-22 力晶科技股▲ふん▼有限公司 揮発性半導体記憶装置のリフレッシュ制御回路及び方法、並びに揮発性半導体記憶装置
KR102644275B1 (ko) 2016-05-19 2024-03-06 삼성전자주식회사 리프레쉬 리드 동작을 수행하는 불휘발성 메모리 장치를 제어하는 메모리 콘트롤러의 동작 방법
US9824767B1 (en) * 2016-06-29 2017-11-21 Intel Corporation Methods and apparatus to reduce threshold voltage drift
US9613676B1 (en) * 2016-06-29 2017-04-04 Micron Technology, Inc. Writing to cross-point non-volatile memory
US9952944B1 (en) 2016-10-25 2018-04-24 Sandisk Technologies Llc First read solution for memory
US10262743B2 (en) 2016-10-25 2019-04-16 Sandisk Technologies Llc Command sequence for first read solution for memory
US10026486B1 (en) 2017-03-06 2018-07-17 Sandisk Technologies Llc First read countermeasures in memory
US10347315B2 (en) 2017-10-31 2019-07-09 Sandisk Technologies Llc Group read refresh
US10839886B2 (en) 2018-06-11 2020-11-17 Western Digital Technologies, Inc. Method and apparatus for adaptive data retention management in non-volatile memory
US10726891B1 (en) * 2019-02-13 2020-07-28 Western Digital Technologies, Inc. Reducing post-read disturb in a nonvolatile memory device
US10996862B2 (en) * 2019-06-17 2021-05-04 Western Digital Technologies, Inc. Adaptive read trim for second read data retention

Also Published As

Publication number Publication date
CN114927153A (zh) 2022-08-19
US20220254416A1 (en) 2022-08-11
US11404127B1 (en) 2022-08-02

Similar Documents

Publication Publication Date Title
DE102021115501A1 (de) Leseaktualisierung zur verbesserung der leistung bei datenerhaltung für nichtflüchtigen speicher
DE112017004208B4 (de) 3d-nand mit teilblocklöschen
DE112017003298T5 (de) Schema für das Herunterfahren von Wortleitungen zum Entfernen von Restelektronen
DE102017104265A1 (de) Dummy-Spannung zum Verringern des Erst-Lese-Effekts in einem Speicher
DE112019000164T5 (de) Speichervorrichtung mit verbundenen wortleitungen zur schnellen programmierung
DE112017001761B4 (de) NAND-Struktur mit Stufenauswahl-Gate-Transistoren
DE102018114250B4 (de) Reduzieren eines heißen Elektroneninjektionstypen von Lesestörungen in einer 3D-Speichervorrichtung während Signal-schaltenden Störsignalen
DE112016003636T5 (de) Unter-Block-Modus für nichtflüchtigen Speicher
DE112019000157T5 (de) Speichervorrichtung mit von nand-ketten getrennten bitleitungen zur schnellen programmierung
DE102018105685A1 (de) Multi-Zustands-Programm, das gesteuertes schwaches Boosten für einen nichtflüchtigen Speicher verwendet
DE102018123918A1 (de) Zustandsabhängige Abtastschaltungen und Vorladevorgänge für Speichervorrichtungen
DE112018003426T5 (de) Reduzieren der lesestörung der art durch injektion heisser elektronen in 3d-speichervorrichtung mit verbundenen sourceendauswahlgates
CN106796817B (zh) 对漏极侧字线进行编程以减少编程干扰和电荷损失
DE102019124668A1 (de) Transistorschwellenspannungshaltung in 3d-speicher
DE112019000159T5 (de) Ramp-down-abtastung zwischen programmspannung und prüfspannung in einer speichervorrichtung
DE102022102591A1 (de) Systeme und verfahren zum einstellen der schwellenspannungsverteilung aufgrund von halbkreis-sgd
DE112019005518T5 (de) Mehrzustandsprogrammierung in einer speichervorrichtung mit schleifenabhängiger bitleitungsspannung während der verifizierung
DE102020105991A1 (de) SUBBLOCK-GRÖßENREDUKTION FÜR NICHTFLÜCHTIGE 3D-SPEICHER
DE102018106111A1 (de) Selektives Boosting von Strom in Speicherkanälen basierend auf einem Datenmuster oder physischen Nicht-Uniformitäten
DE102022113174A1 (de) Proaktive aktualisierung der randdatenwortleitung für halbkreis-drain-side-select-gate
DE102022102593A1 (de) Speicherprogrammierung mit selektiv übersprungenen verifizierungsimpulsen zur leistungsverbesserung
DE102021106907A1 (de) Lochvorladeschema mit gate-induzierter drain-leckstromerzeugung
DE112023000257T5 (de) Zeit-tagging von lesepegeln mehrerer wortleitungen für die aufbewahrung von daten in offenen blöcken
DE102020116034B4 (de) Spitzen- und mittelwert-stromreduktion für unterblock-speicherbetrieb
DE102022102624A1 (de) Speichereinrichtung und verfahren zum betrieb unter verwendung des programmierens mit dreifacher kette während des löschens

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: DEHNSGERMANY PARTNERSCHAFT VON PATENTANWAELTEN, DE

Representative=s name: DEHNS GERMANY PARTNERSCHAFT MBB, DE

R012 Request for examination validly filed
R082 Change of representative

Representative=s name: DEHNSGERMANY PARTNERSCHAFT VON PATENTANWAELTEN, DE

Representative=s name: DEHNS GERMANY PARTNERSCHAFT MBB, DE