DE102012109612A1 - Nichtflüchtige Speichervorrichtung, Programmierungsverfahren für nichtflüchtige Speichervorrichtungen und Speichersystem, das eine nichtflüchtiger Speichervorrichtung umfasst - Google Patents

Nichtflüchtige Speichervorrichtung, Programmierungsverfahren für nichtflüchtige Speichervorrichtungen und Speichersystem, das eine nichtflüchtiger Speichervorrichtung umfasst Download PDF

Info

Publication number
DE102012109612A1
DE102012109612A1 DE102012109612A DE102012109612A DE102012109612A1 DE 102012109612 A1 DE102012109612 A1 DE 102012109612A1 DE 102012109612 A DE102012109612 A DE 102012109612A DE 102012109612 A DE102012109612 A DE 102012109612A DE 102012109612 A1 DE102012109612 A1 DE 102012109612A1
Authority
DE
Germany
Prior art keywords
memory cells
voltage
data
program
memory cell
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
DE102012109612A
Other languages
English (en)
Other versions
DE102012109612A8 (de
Inventor
Donghun Kwak
Sang-Won Park
Won-Taeck JUNG
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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
Priority claimed from KR1020110104753A external-priority patent/KR101855169B1/ko
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102012109612A1 publication Critical patent/DE102012109612A1/de
Publication of DE102012109612A8 publication Critical patent/DE102012109612A8/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/10Programming or data input circuits
    • G11C16/12Programming voltage switching circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • 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
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B41/00Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates
    • H10B41/20Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates characterised by three-dimensional arrangements, e.g. with cells on different height levels
    • H10B41/23Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates characterised by three-dimensional arrangements, e.g. with cells on different height levels with source and drain on different levels, e.g. with sloping channels
    • H10B41/27Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates characterised by three-dimensional arrangements, e.g. with cells on different height levels with source and drain on different levels, e.g. with sloping channels the channels comprising vertical portions, e.g. U-shaped channels
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B43/00EEPROM devices comprising charge-trapping gate insulators
    • H10B43/20EEPROM devices comprising charge-trapping gate insulators characterised by three-dimensional arrangements, e.g. with cells on different height levels
    • H10B43/23EEPROM devices comprising charge-trapping gate insulators characterised by three-dimensional arrangements, e.g. with cells on different height levels with source and drain on different levels, e.g. with sloping channels
    • H10B43/27EEPROM devices comprising charge-trapping gate insulators characterised by three-dimensional arrangements, e.g. with cells on different height levels with source and drain on different levels, e.g. with sloping channels the channels comprising vertical portions, e.g. U-shaped channels

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

Offenbart werden ein Programmverfahren und eine nichtflüchtige Speichervorrichtung. Das Verfahren umfasst ein Empfangen von Programmdaten, die in Speicherzellen programmiert werden sollen; ein Auslesen der Speicherzellen, um einen Löschungszustand und wenigstens einen Programmzustand zu beurteilen; ein Durchführen eines Zustandlesevorgangs, bei dem der wenigstens ein Programmzustand unter Verwendung einer Mehrzahl von Zustandlesespannungen ausgelesen wird; und ein Programmieren der Programmdaten in den Speicherzellen unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die übereinstimmend mit einem Ergebnis des Zustandlesevorgangs verschiedene Pegel aufweisen. Ebenso werden Verfahren offenbart, die eine Mehrzahl von Überprüfungsspannungen verwenden, die basierend auf Faktoren ausgewählt werden, die eine Veränderung einer Schwellwertspannung beeinflussen können, oder einer anderen Charakteristik, welche die Daten einer Speicherzelle nach einer Programmierung darstellt.

Description

  • Querverweis auf verwandte Anmeldungen
  • Diese Anmeldung beansprucht unter 35 U.S.C § 119 die Priorität der koreanischen Patentanmeldung Nr. 10-2011-0104753 , die am 13. Oktober 2011 eingereicht wurde und deren Gesamtheit unter Bezugnahme hierin miteingebunden ist.
  • Hintergrund der Erfindung
  • Das hier beschriebene erfindungsgemäße Konzept betrifft eine Halbleiterspeichervorrichtung und betrifft insbesondere ein Programmierungsverfahren einer nichtflüchtigen Speichervorrichtung und ein Speichersystem, das die nichtflüchtige Speichervorrichtung umfasst.
  • Eine Halbleiterspeichervorrichtung kann unter Verwendung eines Halbleiters wie beispielsweise Silizium (Si), Germanium (Ge), Galliumarsenid (GaAs), Indiumphosphid (InP) und dergleichen hergestellt werden. Halbleiterspeichervorrichtungen werden in flüchtige Speichervorrichtungen und nichtflüchtige Speichervorrichtungen klassifiziert.
  • Flüchtige Speichervorrichtungen können gespeicherte Daten verlieren, wenn sie ausgeschaltet werden oder auf andere Weise keine Leistung vorliegt. Flüchtige Speichervorrichtungen umfassen statische RAM (SRAM), dynamische RAM (DRAM), synchrone DRAM (SDRAM) und dergleichen. Nichtflüchtige Speichervorrichtungen können gespeicherte Inhalte behalten, selbst wenn sie ausgeschaltet werden oder auf andere Weise keine Leistung vorliegt. Nichtflüchtige Speichervorrichtungen umfassen Festspeicher bzw. Lesespeicher (ROM), programmierbare ROM (PROM), elektrisch programmierbare ROM (EPROM), elektrisch löschbare und programmierbare ROM (EEPROM), Flash-Speicher, Phasenänderungs-RAM (PRAM), magnetische RAM (MRAM), Widerstands-RAM (RRAM), ferroelektrische RAM (FRAM) und dergleichen. Die Flash-Speichervorrichtung umfasst NOR-Typ Flash-Speicher und NAND-Typ Flash-Speicher.
  • In letzter Zeit ist eine Halbleiterspeichervorrichtung mit einer dreidimensionalen Speicher-Array-Struktur entwickelt worden.
  • Kurzfassung der Erfindung
  • Beispielgebende Ausführungsformen sehen ein Programmierungsverfahren für nichtflüchtige Speichervorrichtungen vor, aufweisend ein Empfangen von Programmdaten, die in Speicherzellen programmiert werden sollen; ein Auslesen der Speicherzellen zum Beurteilen eines Löschungszustands und wenigstens eines Programmzustands; ein Durchführen eines Zustandlesevorgangs, bei dem unter Verwendung einer Mehrzahl von Zustandlesespannungen der wenigstens eine Programmzustand ausgelesen wird; und ein Programmieren der Programmdaten in den Speicherzellen unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die übereinstimmend mit einem Ergebnis des Zustandlesevorgangs verschiedene Pegel aufweisen.
  • In beispielgebenden Ausführungsformen weist ein Programmieren der Programmdaten in den Speicherzellen ein Programmieren von Speicherzellen auf, die unter Verwendung von wenigstens zwei Überprüfungsspannungen, die übereinstimmend mit dem Ergebnis des Zustandlesevorgangs verschiedene Pegel aufweisen, in einen Programmzustand programmiert werden.
  • In beispielgebenden Ausführungsformen wird bei dem Zustandlesevorgang der wenigstens eine Programmzustand unter Verwendung einer ersten Zustandlesespannung und einer zweiten Zustandlesespannung, die höher als die erste Zustandlesespannung ist, ausgelesen.
  • In beispielgebenden Ausführungsformen weist die erste Zustandlesespannung denselben Pegel wie eine Überprüfungsspannung auf, die verwendet wird, wenn der wenigstens eine Programmzustand programmiert wird.
  • In beispielgebenden Ausführungsformen werden unter den Speicherzellen, die in denselben Programmzustand programmiert werden, erste Speicherzellen, die beim Zustandlesevorgang als Speicherzellen ausgelesen werden, die jeweils eine Schwellwertspannung aufweisen, die höher als die zweite Zustandlesespannung ist, unter Verwendung einer ersten Überprüfungsspannung programmiert, zweite Speicherzellen, die als Speichezellen ausgelesen werden, die jeweils eine Schwellwertspannung aufweisen, die höher als die erste Zustandlesespannung und niedriger als die zweite Zustandlesespannung ist, werden unter Verwendung einer zweiten Überprüfungsspannung programmiert, die höher als die erste Überprüfngsspannung ist, und dritte Speicherzellen, die als Speicherzellen ausgelesen werden, die jeweils eine Schwellwertspannung aufweisen, die niedriger als die erste Zustandlesespannung ist, werden unter Verwendung einer dritten Überprüfungsspannung programmiert, die höher als die zweite Überprüfungsspannung ist.
  • Wenn in beispielgebenden Ausführungsformen die Speicherzellen mit den Programmdaten programmiert werden, wird eine erste Überprüfungsspannung, eine zweite Überprüfungsspannung, und eine dritte Überprüfungsspannung aufeinanderfolgend an einer Wortleitung, die mit den Speicherzellen verbunden ist, angelegt, nachdem eine Programmierspannung an der Wortleitung angelegt ist.
  • In beispielgebenden Ausführungsformen weist das Programmierverfahren ferner ein Programmieren des Ergebnisses des Zustandlesevorgangs in Speicherzellen eines ergänzenden Speicherbereichs auf.
  • In beispielgebenden Ausführungsformen weist das Programmierverfahren ferner auf ein Empfangen von zweiten Programmdaten, die in den Speicherzellen programmiert werden sollen; ein Auslesen des Ergebnisses des Zustandlesevorgangs, das in den Speicherzellen des ergänzenden Speicherbereichs programmiert ist; und ein Programmieren der Speicherzellen mit den zweiten Programmdaten unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die übereinstimmend mit dem Ergebnis des Zustandlesevorgangs, das aus den Speicherzellen des ergänzenden Speicherbereichs ausgelesen wird, verschieden Pegel aufweisen.
  • In beispielgebenden Ausführungsformen weist das Programmierverfahren ferner ein Ausgeben des Ergebnisses des Zustandlesevorgangs nach außen auf.
  • Beispielgebende Ausführungsformen sehen ebenso ein Programmierverfahren einer nichtflüchtigen Speichervorrichtung vor, aufweisend ein Empfangen von Programmdaten, die in den Speicherzellen programmiert werden sollen; ein Auslesen der Speicherzellen zum Beurteilen eines Löschungszustands und wenigstens eines Programmzustands; ein Durchführen eines Zustandlesevorgangs, bei dem unter Verwendung eine Mehrzahl von ersten Zustandlesespannungen der wenigstens eine Programmzustand ausgelesen wird und der Löschungszustand unter Verwendung einer Mehrzahl von zweiten Zustandlesespannungen ausgelesen wird; und ein Programmieren der Speicherzellen mit den Programmdaten unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die übereinstimmend mit einem Ergebnis des Zustandlesevorgangs verschiedene Pegel aufweisen.
  • Beispielgebende Ausführungsformen sehen ebenso ein Programmierverfahren einer nichtflüchtigen Speichervorrichtung vor, aufweisend ein Empfangen von Programmdaten, die in den Speicherzellen programmiert werden sollen; ein Beurteilen, ob die Programmdaten einem MSB-Programmiervorgang entsprechen; und wenn die Programmdaten einem MSB-Programmiervorgang entsprechen, ein Auslesen der Speicherzellen zum Beurteilen eines Löschungszustands und wenigstens einem Programmzustand, ein Durchführen eines Zustandlesevorgangs, bei dem wenigstens ein Programmzustand unter Verwendung einer Mehrzahl von Lesespannungen ausgelesen wird, und ein Programmieren der Speicherzellen mit den Programmdaten unter Verwendung einer Mehrzahl von Überwachungsspannungen, die übereinstimmend mit einem Ergebnis des Zustandlesevorgangs verschiedene Pegel aufweisen, wobei bei dem Zustandlesevorgang jeder Programmzustand unter Verwendung von wenigstens zwei Zustandlesespannungen, die verschiedene Pegel aufweisen, ausgelesen wird.
  • Beispielgebenden Ausführungsformen sehen ebenso ein Programmierverfahren einer nichtflüchtigen Speichervorrichtung vor, aufweisend eine Mehrzahl von Zellenreihen (cell strings), die auf einem Substrat bereitgestellt sind, wobei jede Zellenreihe eine Mehrzahl von Zellentransistoren umfasst, die in einer Richtung senkrecht zu dem Substrat gestapelt sind, und wobei jeder Zellentransistor einen Informationsspeicherfilm aufweist, der ein Isolator ist, wobei das Programmierverfahren aufweist ein Empfangen von Programmdaten, die in den Speicherzellen programmiert werden sollen; ein Auslesen der Speicherzellen zum Beurteilen eines Löschungszustands und wenigstens eines Programmzustands; ein Durchführen eines Zustandlesevorgangs, bei dem der wenigstens eine Programmzustand unter Verwendung einer Mehrzahl von Zustandlesespannungen ausgelesen wird; und ein Programmieren der Programmdaten in den Speicherzellen unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die übereinstimmend mit einem Ergebnis des Zustandlesevorgangs verschiedene Pegel aufweisen.
  • Beispielgebende Ausführungsformen sehen ebenso ein Programmierverfahren einer nichtflüchtigen Speichervorrichtung vor, die eine Mehrzahl von Zellenreihen (cell strings) umfasst, die auf einem Substrat bereitgestellt sind, wobei jede Zellenreihe eine Mehrzahl von Zellentransistoren umfasst, die in einer Richtung senkrecht zu dem Substrat gestapelt sind, und wobei jeder Zellentransistor einen Informationsspeicherfilm aufweist, der ein Isolator ist, wobei das Programmierverfahren aufweist ein Empfangen von Programmdaten, die in den Speicherzellen gespeichert werden sollen; ein Auslesen von Daten aus zweiten Speicherzellen, die mit wenigstens einer Wortleitung verbunden sind, die unmittelbar mit einer Wortleitung benachbart ist, die mit den ersten Speicherzellen verbunden ist; und ein Programmieren der ersten Speicherzellen mit den Programmdaten unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die übereinstimmend mit den ausgelesenen Daten aus den zweiten Speicherzellen verschiedene Pegel aufweisen, wobei Speicherzellen, die in einen Programmzustand programmiert werden, unter Verwendung von Überprüfungsspannungen programmiert werden, die übereinstimmend mit den ausgelesenen Daten verschiedene Pegel aufweisen.
  • In beispielgebenden Ausführungsformen weist das Programmierverfahren ferner ein Empfangen von zweiten Programmdaten auf, die in den Speicherzellen programmiert werden sollen, die mit wenigstens einer anderen Wortleitung verbunden sind, die unmittelbar mit einer Wortleitung benachbart ist, die mit den Speicherzellen verbunden ist, wobei Speicherzellen, die in den Programmzustand programmiert werden, unter Verwendung der Überprüfungsspannungen programmiert werden, die übereinstimmend mit den ausgelesenen Daten und den zweiten Programmdaten verschiedene Pegel aufweisen.
  • Beispielgebende Ausführungsformen sehen ebenso eine nichtflüchtige Speichervorrichtung vor, aufweisend ein Speicherzellenfeld, das eine Mehrzahl von Speicherzellen umfasst, die mit Bitleitungen und Wortleitungen verbunden sind; eine Adressendecodiereinheit, die dazu ausgestaltet ist, an einer ausgewählten Wortleitung Lesespannungen anzulegen, Zustandlesespannungen anzulegen, und eine Programmierspannung und Überprüfungsspannungen bei einem Programmiervorgang anzulegen; sowie eine Seitenpuffereinheit, die eine Mehrzahl von Seitenpuffern (bzw. Page buffers) umfasst, von denen jeder Seitenpuffer ein Daten-Flipflop (bzw. data latch) und ein Neuordnungs-Flipflop (bzw. rearrangement latch) umfasst, wobei das Daten-Flipflop Programmdaten speichert, die programmiert werden sollen, und ein Ausleseergebnis speichert, wenn die Lesespannungen an die ausgewählte Wortleitung angelegt werden, und das Neuordnungs-Flipflop ein Zustandleseergebnis speichert, wenn die Zustandlesespannungen angelegt werden; und wobei jeder Seitenpuffer übereinstimmend mit Daten, die in dem Daten-Flipflop gespeichert sind sowie Daten, die in dem Neuordnungs-Flipflop gespeichert sind, eine Bitleitung einnimmt, wenn die Programmierspannung und die Überprüfungsspannungen angelegt werden.
  • In beispielgebenden Ausführungsformen weisen wenigstens zwei Zustandlesespannungen der Zustandlesespannungen Pegel auf, die zwischen den Pegeln von zwei Lesespannungen liegen, die unter den Lesespannungen unmittelbar benachbart sind.
  • In beispielgebenden Ausführungsformen nimmt jeder Seitenpuffer die Bitleitung mit einer Leistungszufuhrspannung oder einer Massespannung übereinstimmend mit Daten ein, die in dem Daten-Flipflop gespeichert sind bevor die Programmierspannung angelegt wird.
  • Wenn in beispielgebenden Ausführungsformen die Überprüfungsspannungen angelegt werden, ist jeder Seitenpuffer dazu ausgestaltet, eine gültige Überprüfungsspannung übereinstimmend mit Daten auszuwählen, die indem Neuordnungs-Flipflop gespeichert sind.
  • In beispielgebenden Ausführungsformen ist das Speicherzellenfeld in einen Nutzerdatenbereich und in einen ergänzenden Gereicht aufgeteilt, wobei das Zustandleseergebnis, das in dem Neuordnungs-Flipflop gespeichert ist, in den ergänzenden Bereich programmiert wird.
  • In beispielgebenden Ausführungsformen legt die Adressdecodiereinheit zweite Lesespannungen an der ausgewählten Wortleitung des Nutzerdatenbereichs, dritte Lesespannungen an einer ausgewählten Wortleitung des ergänzenden Bereichs, sowie ein zweite Programmierspannung und zweite Überprüfungsspannungen an der ausgewählten Wortleitung des Nutzerdatenbereichs an, wenn zweite Programmdaten der gleichen Adresse entsprechen, mit der die Programmdaten programmiert sind; wobei das Daten-Flipflop die zweiten Programmdaten speichert und ein zweites Ausleseergebnis speichert, wenn die zweiten Lesespannungen angelegt werden; das Neuordnungs-Flipflop ein drittes Ausleseergebnis speichert, wenn die dritten Lesespannungen angelegt werden; und wenn die zweite Programmierspannung und die zweiten Überprüfungsspannungen angelegt werden, wobei jeder Seitenpuffer die Bitleitung übereinstimmend mit Daten einnimmt, die in dem Daten-Flipflop gespeichert sind, sowie Daten, die in dem Neuordnungs-Flipflop gespeichert sind.
  • Beispielgebende Ausführungsformen sehen ebenso eine nichtflüchtige Speichervorrichtung vor, aufweisend ein Speicherzellenfeld, das eine Mehrzahl von Speicherzellen umfasst, die mit Bitleitungen und Wortleitungen verbunden sind; eine Adressendecodiereinheit, die dazu ausgestaltet ist, Lesespannungen, Zustandlesespannungen, und eine Programmierspannung und Überprüfungsspannungen bei einem Programmiervorgang von MSB-Daten an einer ausgewählten Wortleitung anzulegen; und eine Seitenpuffereinheit, die eine Mehrzahl von Seitenpuffern umfasst, von denen jeder Seitepuffer ein Daten-Flipflop und ein Neuordnungs-Flipflop umfasst, die mit einer Bitleitung verbunden sind; wobei das Daten-Flipflop Daten speichert, die programmiert werden sollen, und ein Ausleseergebnis speichert, wenn die Lesespannungen an einer ausgewählten Wortleitung angelegt werden, und das Neuordnungs-Flipflop ein Zustandleseergebnis speichert, wenn die Zustandlesespannungen angelegt werden; und wobei bei einem Programmiervorgang der MSB-Daten jeder Seitenpuffer die Bitleitung übereinstimmend mit Daten einnimmt, die in dem Daten-Flipflop und dem Neuordnungs-Flipflop gespeichert sind, wenn die Programmierspannung und die Überprüfungsspannungen angelegt werden.
  • Beispielgebende Ausführungsformen sehen ebenso eine nichtflüchtige Speichervorrichtung vor, aufweisend ein Speicherzellenfeld, das eine Mehrzahl von Speicherzellen umfasst, die mit Bitleitungen und Wortleitungen verbunden sind; eine Adressendecodiereinheit, die dazu ausgestaltet ist, erste Lesespannungen an einer ausgewählten Wortleitung anzulegen, zweite Lesespannungen an wenigstens einer Wortleitung anzulegen, die zu der ausgewählten Wortleitung unmittelbar benachbart ist, und bei einem Programmiervorgang eine Programmierspannung und Überprüfungsspannungen an der ausgewählten Wortleitung anzulegen; sowie eine Seitenpuffereinheit, die eine Mehrzahl von Seitenpuffern umfasst, von denen jeder Seitenpuffer ein Daten-Flipflop und ein Neuordnungs-Flipflop umfasst, wobei das Daten-Flipflop Programmdaten speichert, die programmiert werden sollen, und ein erstes Leseergebnis speichert, wenn die ersten Lesespannungen an der ausgewählten Wortleitung angelegt werden, und das Neuordnungs-Flipflop ein zweites Ausleseergebnis speichert, wenn die zweiten Lesespannungen an der wenigstens einen Wortleitung angelegt werden; und wobei jeder Seitenpuffer eine Bitleitung übereinstimmend mit Daten einnimmt, die in dem Daten-Flipflop gespeichert sind, sowie Daten, die in dem Neuordnungs-Flipflop gespeichert sind, wenn die Programmierspannung und die Überprüfungsspannungen angelegt werden.
  • Beispielgebende Ausführungsformen sehen ebenso ein Speichersystem vor, aufweisend eine nichtflüchtige Speichervorrichtung; und einen Controller, der dazu ausgestaltet, die nichtflüchtige Speichervorrichtung zu steuern, wobei die nichtflüchtige Speichervorrichtung ein Speicherzellenfeld aufweist, das eine Mehrzahl von Speicherzellen umfasst, die mit Bitleitungen und Wortleitungen verbunden sind; eine Adressendecodiereinheit, die dazu ausgestaltet ist, Lesespannungen an einer ausgewählten Wortleitung anzulegen, Zustandlesespannungen anzulegen, und bei einem Programmiervorgang eine Programmierspannung und Überprüfungsspannungen anzulegen; sowie eine Seitepuffereinheit, die eine Mehrzahl von Seitenpuffern umfasst, von denen jeder Seitenpuffer ein Daten-Flipflop und ein Neuordnungs-Flipflop umfasst, wobei das Daten-Flipflop Programmdaten speichert, die programmiert werden sollen, und ein Ausleseergebnis speichert, wenn die Lesespannungen an der ausgewählten Wortleitung angelegt werden, und das Neuordnungs-Flipflop ein Zustandleseergebnis speichert, wenn die Zustandlesespannungen angelegt werden; und wobei jeder Seitenpuffer eine Bitleitung übereinstimmend mit Daten einnimmt, die in dem Daten-Flipflop gespeichert sind, sowie Daten, die in dem Neuordnungs-Flipflop gespeichert sind, wenn die Programmierspannung und die Überprüfungsspannungen angelegt werden.
  • In beispielgebenden Ausführungsformen speichert der Controller das Zustandleseergebnis, das von der nichtflüchtigen Speichervorrichtung ausgegeben wird, um einen Programm-, einen Lese- oder Löschvorgang der nichtflüchtigen Speichervorrichtung übereinstimmend mit dem gespeicherten Zustandleseergebnis zu steuern.
  • In beispielgebenden Ausführungsformen bilden die nichtflüchtige Speichervorrichtung und der Controller eine Speicherkarte.
  • In beispielgebenden Ausführungsformen bildet die nichtflüchtige Speichervorrichtung und der Controller ein Solid State-Laufwerk (SSD).
  • Beispielgebende Ausführungsformen sehen ebenso Programmierverfahren einer nichtflüchtigen Speichervorrichtung vor, aufweisend ein Auslesen von Daten, die in Speicherzellen eines Pufferbereichs gespeichert sind, um einen Löschzustand und wenigstens einen Programmzustand von Speicherzellen des Nutzerdatenbereichs zu beurteilen, die den Speicherzellen des Pufferbereichs entsprechen; ein Beurteilen, ob ein feiner Programmiervorgang auf Speicherzellen des Nutzerdatenbereichs durchgeführt worden ist; und, falls beurteilt wird, dass der feine Programmiervorgang durchgeführt worden ist, ein Durchführen eines Zustandlesevorgangs an dem wenigstens einen Programmzustand der Speicherzellen des Nutzerdatenbereichs unter Verwendung einer Mehrzahl von Zustandlesespannungen, um den feinen Programmiervorgang unter Verwendung einer Mehrzahl von Überprüfungsspannungen durchzuführen, die übereinstimmend mit einem Ergebnis des Zustandlesevorgangs verschieden Pegel aufweisen, wobei bei dem Zustandlesevorgang jeder Programmzustand unter Verwendung einer Mehrzahl von Zustandlesespannungen, die verschiedene Pegel aufweisen, ausgelesen wird.
  • Beispielgebende Ausführungsformen sehen ebenso Programmierverfahren einer nichtflüchtigen Speichervorrichtung vor, aufweisend ein Empfangen von Programmdaten, die in den Speicherzellen programmiert werden sollen; ein Auslesen der Speicherzellen, um einen Löschungszustand und wenigstens einen Programmzustand zu beurteilen; ein Auslesen von Speicherzellen eines Testdatenbereichs, der den Speicherzellen entspricht; und ein Programmieren der Speicherzellen mit den Programmdaten unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die übereinstimmend mit einem Ausleseergebnis der Speicherzellen des Testdatenbereichs verschiedene Pegel aufweisen, wobei ein Programmieren der Speicherzellen mit dem Programmdaten ein Programmieren von Speicherzellen umfasst, die unter Verwendung von Überprüfungsspannungen, die übereinstimmen mit einem Ausleseergebnis von Speicherzellen des Testdatenbereichs verschiedene Spannungen aufweisen, in einen Programmzustand programmiert werden.
  • Beispielgebende Ausführungsformen sehen ebenso Programmierverfahren einer nichtflüchtigen Speichervorrichtung vor, aufweisend ein Empfangen von Programmdaten, die in Speicherzellen programmiert werden sollen; ein Annähern einer ersten Programmschleife, in der eine Programmierspannung und eine Überprüfungsspannung jeweils einmalig an den Speicherzellen angelegt wird, bis eine Schwellwertbedingung erfüll ist, und falls die Schwellwertbedingung erfüllt ist, ein Durchführen eines Zustandlesevorgangs an Speicherzellen, die einen mittleren Zustand aufweisen, der höher als ein Löschungszustand ist, unter Verwendung von wenigstens zwei Zustandlesespannungen, die verschieden Pegel aufweisen; und ein Durchführen einer zweiten Programmschleife, bei der eine Programmierspannung und wenigstens zwei Überprüfungsspannungen, die verschieden Pegel aufweisen, an den Speicherzellen angelegt werden, unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die übereinstimmend mit einem Ergebnis des Zustandlesevorgangs verschiedene Pegel aufweisen.
  • In beispielgebenden Ausführungsformen umfasst die Schwellwertbedingung eine Bedingung, die angibt, dass Speicherzellen erfasst werden, die von den Speicherzellen als erstes ein Programm durchlaufen haben.
  • In beispielgebenden Ausführungsformen umfasst die Schwellbedingung eine Bedingung, die angibt, dass die Anzahl der Speicherzellen, die von den Speicherzellen als erstes das Programm durchlaufen haben, über einem bestimmten Wert liegt.
  • In beispielgebenden Ausführungsformen umfasst die Schwellbedingung eine Bedingung, die angibt, dass eine angenäherte Anzahl der ersten Programmschleife über einem bestimmten Wert liegt.
  • Beispielgebende Ausführungsformen sehen ebenso ein Verfahren zum Programmieren einer nichtflüchtigen Speichervorrichtung vor, aufweisend: ein Bestimmen einer Tendenz einer Schwellwertspannung eines ersten Speicherzellentransistors dazu, sich von einem programmierten Zustand zu verändern, und ein Auswählen einer ersten Überprüfungsspannung aus einer Mehrzahl von Überprüfungsspannungen in Reaktion auf die Bestimmung, und ein Programmieren des ersten Speicherzellentransistors, um die Schwellwertspannung des ersten Speicherzellentransistors umzuändern, wobei das Programmieren ein Überprüfen umfasst, dass die Schwellwertspannung des ersten Speicherzellentransistors unter Verwendung der ersten Überprüfungsspannung ausreichend umgeändert worden ist.
  • Beispielgebende Ausführungsformen umfassen ebenso ein Verfahren zum Programmieren einer Reihe von Speicherzellen, aufweisend ein Auswählen einer ersten Reihe von Speicherzellen aus einer Mehrzahl von Reihen, ein Auswählen einer ersten Untermenge der Speicherzellen der ersten Reihe, um innerhalb eines ersten Programmzustandumfangs eine erfassbare Eigenschaft der ersten Untermenge der Speicherzellen zu ändern, wobei der erste Programmzustandumfang einen Wert von wenigstens einem ersten Bit der Daten darstellt, ein Programmieren der ersten Untermenge der Speicherzellen, um die Eigenschaft von jeder aus der ersten Untermenge der Speicherzellen zu ändern, was ein Überprüfen der Änderung der Eigenschaft von einigen der ersten Untermenge der Speicherzellen mit einem ersten Überprüfungspegel, und ein Überprüfen von anderen der ersten Untermenge der Speicherzellen mit einem zweiten Überprüfungspegel, der sich von dem ersten Überprüfungspegel unterscheidet, umfasst.
  • Beispielgebende Ausführungsformen umfassen ebenso ein Verfahren zum Programmieren einer Speicherzellenvorrichtung, aufweisend ein Programmieren einer ersten Mehrzahl von Speicherzellen in einen ersten Programmzustand aus einer Mehrzahl von Programmzuständen, von denen jeder Programmzustand eine einmalige Menge von Werten aus mehreren Datenbits darstellt, wobei die erste Mehrzahl von Speicherzellen mit einer ersten Wortleitung verbunden ist, wobei das Programmieren eine Mehrzahl von Programmschleifen aufweist, von denen jede Programmschleife aufweist: (a) ein Anlegen einer Programmierspannung an der Wortleitung; (b) ein Anlegen einer ersten Überprüfungsspannung an der Wortleitung, um zu überprüfen, dass eine erste Untermenge der ersten Mehrzahl von Speicherzellen wenigstens eine erste Schwellwertspannung aufweist; und (c) ein Anlegen einer zweiten Überprüfungsspannung, die sich von der ersten Überprüfungsspannung unterscheidet, an der Wortleitung, um zu Überprüfen, dass eine zweite Untermenge der ersten Mehrzahl von Speicherzellen wenigstens eine zweite Schwellwertspannung aufweist.
  • Beispielgebende Ausführungsformen umfassen ebenso ein Verfahren zum Programmieren einer nichtflüchtigen Multi-Bit-Speicherzelle, aufweisend ein Programmieren eines ersten Bits der Daten in die Speicherzelle, so dass die Speicherzelle eine erste Eigenschaft innerhalb eines ersten Umfangs aufzeigt, wobei die gezeigte Eigenschaft das erste Bit der Daten darstellt; ein Auslesen des ersten Bits des Datums aus der Speicherzelle; ein Bestimmen einer Veränderung der Eigenschaft, die durch der Speicherzelle aufgezeigt wird; und ein Programmieren der Speicherzelle, um das erste Bit der Daten und ein zweites Bit der Daten zu speichern, so dass die Speicherzelle innerhalb eines zweiten Umfangs eine Eigenschaft aufzeigt, wobei der zweite Umfang basierend auf der bestimmten Veränderung gewählt wird.
  • Beispielgebende Ausführungsformen umfassen ebenso ein Verfahren zum Programmieren einer nichtflüchtigen Speicherzelle, aufweisend ein Umändern einer Schwellwertspannung eines Speicherzellentransistors innerhalb eines ersten Umfangs; ein Bestimmen einer Veränderung der Schwellwertspannung der Speicherzelle in Bezug auf den ersten Umfang; ein Umändern der Schwellwertspannung des Speicherzellentransistors zu einem zweiten Umfang, wobei der zweite Umfang in Reaktion auf den Bestimmungsschritt ausgewählt wird.
  • Beispielgebende Ausführungsformen umfassen ebenso eine nichtflüchtige Speichervorrichtung, aufweisend ein Feld von Speicherzellen, die der Reihe nach in Spalten angeordnet sind, wobei Reihen von Speicherzellen mit entsprechenden Wortleitungen verbunden sind, und Spalten von Speicherzellen mit entsprechenden Bitleitungen verbunden sind; einen Seitenpuffer, der Daten-Flipflops und zweite Flipflops umfasst, die mit entsprechenden Bitleitungen verbunden sind, wobei Daten-Flipflops dazu ausgestaltet sind, Daten zu speichern; einen Spannungserzeuger, der dazu ausgestaltet ist, eine Programmierspannung zu erzeugen; einen Reihendecoder, der dazu ausgestaltet ist, eine Adresse zu decodieren und eine Wortleitung auszuwählen; eine Steuereinheit, die dazu ausgestaltet ist, einen Programmierungsvorgang zu steuern, der eine Durchführung einer Mehrzahl von Programmschleifen umfasst, von denen jede Programmschleife eine Anwendung eines Programmimpulses auf eine Wortleitung, die durch den Reihendecoder ausgewählt wird, sowie eine Mehrzahl von sequenziellen Überprüfungsvorgängen aufweist, um jeweilige Programmpegel von einer ersten Reihe von Speicherzellen, die mit der ausgewählten Wortleitung verbunden sind, zu überprüfen, wobei die Daten-Flipflops des Seitenpuffers dazu ausgestaltet sind, einen Programmierungsvorgang an jeweiligen Speicherzellen der ersten Reihe, die mit Bitleitungen verbunden sind, die den Daten-Flipflops entsprechen, zu sperren oder zuzulassen, und wobei die zweiten Flipflops dazu ausgestaltet sind, aus einer Mehrzahl von Überprüfungsergebnissen, die jeweils der Mehrzahl von Überprüfungsvorgängen einer Programmschleife entsprechen, eines auszuwählen.
  • Beispielgebende Ausführungsformen umfassen ebenso eine nichtflüchtige Speichervorrichtung, aufweisend ein Feld von Speicherzellen, die der Reihe nach in Spalten angeordnet sind, wobei Reihen der Speicherzellen mit entsprechenden Wortleitungen verbunden sind, und Spalten der Speicherzellen mit entsprechenden Bitleitungen verbunden sind; einen Spannungserzeuger, der dazu ausgestaltet ist, eine Programmierspannung zu erzeugen; einen Seitenpuffer, der Daten-Flipflops und zweite Flipflops umfasst, die mit entsprechenden Bitleitungen verbunden sind, wobei Daten-Flipflops dazu ausgestaltet sind, zeitweise Daten zu speichern, die in einer Reihe der Speicherzellen, die programmiert werden sollen, gespeichert werden sollen; einen Reihendecoder, der dazu ausgestaltet ist, eine Adresse zu decodieren und eine Wortleitung auszuwählen; eine Steuereinheit, die dazu ausgestaltet ist, einen Programmierungsvorgang zu steuern, der eine Durchführung einer Mehrzahl von Programmschleifen umfasst, von denen jede Programmschleife ein Anlegen eines Programmimpulses an einer Wortleitung, die durch den Reihendecoder ausgewählt wird, sowie eine Mehrzahl von sequenziellen Überprüfungsvorgängen aufweist, um jeweilige Spannungsschwellwertpegel einer ersten Reihe der Speicherzellen, die mit der ausgewählten Wortleitung verbunden sind, zu überprüfen; wobei die Daten-Flipflops des Seitenpuffers dazu ausgestaltet sind, einen Programmierungsvorgang an jeweiligen Speicherzellen der erste Reihe, die mit Bitleitungen verbunden sind, die den Daten-Flipflops entsprechen, zu sperren oder zuzulassen; wobei die Steuereinheit dazu ausgestaltet ist, einen groben Programmierungsvorgang zu steuern, um die erste Reihe der Speicherzellen zu einer Mehrzahl von groben Programmzuständen zu programmieren, von denen jeder aus der Mehrzahl von groben Programmzuständen einem feinen Programmzustand entspricht, wobei die Steuereinheit dazu ausgestaltet ist, eine Zustandsauslesung der ersten Reihe der Speicherzellen während einem groben Programmzustand durchzuführen, um eine Tendenz zur Veränderung einer Schwellwertspannung von jeder Speicherzelle zu bestimmen, und wobei die zweiten Flipflops dazu ausgestaltet sind, Information des Ergebnisses der Zustandsauslesung zu speichern und dazu ausgestaltet sind, in Reaktion auf die Information, die in den zweiten Flipflops gespeichert ist, aus einer Mehrzahl von Überprüfungsergebnissen, die jedem aus der Mehrzahl von Überprüfungsvorgängen einer Programmschleife entsprechen, eines auszusuchen.
  • Beispielgebende Ausführungsformen ziehen ebenso Vorrichtungen in Betracht, an welchen sowohl die offenbarten Verfahren, die hier beschrieben sind, als auch Betriebsverfahren zu den hier beschriebenen Vorrichtungen umgesetzt sind.
  • Kurzbeschreibung der Zeichnungen
  • Das oben genannte sowie andere Gegenstände und Merkmale werden aus der nachfolgenden Beschreibung mit Bezug auf die begleitenden Figuren besser verständlich, wobei sich durch die verschiedenen Figuren hindurch gleiche Bezugszeichen auf gleiche Teile beziehen, so lange dies nicht anders bestimmt ist, und wobei gilt:
  • 1 ist ein Blockdiagramm, das eine nichtflüchtige Speichervorrichtung gemäß einer Ausführungsform schematisch darstellt.
  • 2 ist ein Diagramm, das ein Speicherzellenfeld in 1 gemäß einer Ausführungsform darstellt.
  • 3 ist eine Draufsicht auf einen Teil eines Speicherblocks in 1 gemäß einer Ausführungsform.
  • 4 ist eine perspektivische Ansicht entlang einer Linie IV-IV' in 3 gemäß einer Ausführungsform.
  • 5 ist eine Querschnittsansicht entlang einer Linie IV-IV' in 3 gemäß einer Ausführungsform.
  • 6 ist ein vergrößertes Diagramm, das einen der Zellentransistoren in 5 darstellt.
  • 7 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer Ausführungsform darstellt.
  • 8A bis 8D stellen beispielgebende Ladungs-Neuordnungs-Phänomene dar.
  • 9 ist ein Flussdiagramm zum Beschreiben eines Programmierverfahrens gemäß einer Ausführungsform.
  • 10 ist ein Diagramm, das Schwellwertspannungsverteilungen einer Speicherzelle darstellt, wenn LSB-Daten in einer Speicherzelle programmiert werden.
  • 11 ist ein Flussdiagramm zur vollständigen Beschreibung eines Vorgangs S150 zur Durchführung eines Zustandlesevorgangs in 9.
  • 12 ist ein Diagramm, das ein Verfahren zur Durchführung eines Zustandlesevorgangs in 11 darstellt.
  • 13 ist ein Flussdiagramm zur vollständigen Beschreibung eines Vorgangs S160 der Programmierung von Speicherzellen mit Programmdaten in 9.
  • 14 ist ein Diagramm, das eine Schwellwertspannungsverteilung der Speicherzellen darstellt, die gemäß einem Programmierverfahren in 13 programmiert sind.
  • 15 ist ein Diagramm, das eine Schwellwertspannungsabweichung aufgrund einer Ladungs-Neuordnung darstellt, die an Speicherzellen erzeugt wird, die gemäß einem in 14 beschriebenen Verfahren programmiert sind.
  • 16 ist ein Zeitablaufsdiagramm, das Spannungen darstellt, die gemäß einem in 14 beschriebenen Programmierverfahren an ausgewählten Wortleitungen angelegt werden.
  • 17 ist ein Zeitablaufsdiagramm, das Spannungen darstellt, die gemäß einem in den 13 und 14 beschriebenen Programmierverfahren an ausgewählten Wortleitungen angelegt werden.
  • 18 ist ein Diagramm, das eine Anwendung von Schwellwertspannungsverteilungen der Speicherzellen darstellt, die gemäß einem Programmierverfahren in 13 programmiert sind.
  • 19 ist ein Diagramm, das eine andere Anwendung von Schwellwertspannungsverteilungen der Speicherzellen darstellt, die gemäß einem Programmierverfahren in 13 programmiert sind.
  • 20 ist ein Blockdiagramm, das eine nichtflüchtige Speichervorrichtung gemäß einer wiederum anderen Ausführungsform darstellt.
  • 21 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer anderen Ausführungsform darstellt.
  • 22A ist ein Diagramm, das eine Schwellwertspannungsverteilung der Speicherzellen gemäß einem Programmierverfahren in 21 darstellt.
  • 22B stellt eine Alternative dar, die an der Ausführungsform aus 22A angewendet werden kann.
  • 23 ist ein Blockdiagramm, das eine nichtflüchtige Speichervorrichtung gemäß einer wiederum anderen Ausführungsform darstellt.
  • 24 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer wiederum anderen Ausführungsform darstellt.
  • 25 ist ein Blockdiagramm, das eine nichtflüchtige Speichervorrichtung gemäß einer wiederum anderen Ausführungsform darstellt.
  • 26 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer wiederum anderen Ausführungsform darstellt.
  • 27 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer wiederum anderen Ausführungsform darstellt.
  • 28 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer wiederum anderen Ausführungsform darstellt.
  • 29 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer wiederum anderen Ausführungsform darstellt.
  • 30A ist Zeitablaufsdiagramm, das Spannungen darstellt, die gemäß einem Programmierverfahren in 29 an einer ausgewählten Wortleitung angelegt werden.
  • 30B ist ein Graph, der eine Abweichung der Schwellwertspannungsverteilung der Speicherzellen gemäß einem Programmfahren in 29 sowie eine Art der. Spannungsanlegung aus 30A darstellt.
  • 31 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer wiederum anderen Ausführungsform darstellt.
  • 32 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer wiederum anderen Ausführungsform darstellt.
  • 33 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer wiederum anderen Ausführungsform darstellt.
  • 34 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer wiederum anderen Ausführungsform darstellt.
  • 35 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer wiederum anderen Ausführungsform darstellt.
  • 36 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer wiederum anderen Ausführungsform darstellt.
  • 37 ist eine perspektivische Darstellung entlang einer Linie IV-IV' in 3 gemäß einer anderen Ausführungsform.
  • 38 ist eine Querschnittsansicht entlang einer Linie IV-IV' in 3 gemäß einer anderen Ausführungsform.
  • 39 ist eine perspektivische Darstellung entlang einer Linie IV-IV' in 3 gemäß einer wiederum anderen Ausführungsform.
  • 40 ist eine Querschnittsansicht entlang einer Linie IV-IV' in 3 gemäß einer wiederum anderen Ausführungsform.
  • 41 ist eine perspektivische Ansicht entlang einer Linie IV-IV' in 3 gemäß einer wiederum anderen Ausführungsform.
  • 42 ist eine Querschnittsansicht entlang einer Linie IV-IV' in 3 gemäß einer wiederum anderen Ausführungsform.
  • 43 ist eine Draufsicht, die einen Speicherblock in 2 gemäß einer anderen beispielgebenden Ausführungsform darstellt.
  • 44 ist eine perspektivische Ansicht entlang einer Linie XXXXIV-XXXXIV' in 43.
  • 45 ist eine Querschnittsansicht entlang einer Linie XXXXIV-XXXXIV' in 43.
  • 46 ist eine Draufsicht, die einen Teil eines Speicherblocks in 2 gemäß einer wiederum anderen Ausführungsform darstellt.
  • 47 ist eine perspektivische Ansicht entlang einer Linie XXXXVII-XXXXVII' in 46.
  • 48 ist eine Querschnittsansicht entlang einer Linie XXXXVII-XXXXVII' in 46.
  • 49 ist eine Draufsicht, die einen Teil eines Speicherblocks in 2 gemäß einer wiederum anderen Ausführungsform darstellt.
  • 50 ist eine perspektivische Ansicht entlang einer Linie XXXXX-XXXXX' in 49.
  • 51 ist eine Draufsicht, die einen Teil eines Speicherblocks in 2 gemäß einer wiederum anderen Ausführungsform darstellt.
  • 52 ist eine perspektivische Ansicht entlang einer Linie XXXXXII-XXXXXII' in 51.
  • 53 ist eine Querschnittsansicht entlang einer Linie XXXXXII-XXXXXII' in 51.
  • 54 ist eine ebene Ansicht, die einen Teil eines Speicherblocks in 2 gemäß einer wiederum anderen Ausführungsform darstellt.
  • 55 ist eine perspektivische Ansicht entlang einer Linie XXXXXIV-XXXXXIV' in 54.
  • 56 ist eine Querschnittsansicht entlang einer Linie XXXXXIV-XXXXXIV' in 54.
  • 57 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 54 gemäß einer Ausführungsform darstellt.
  • 58 ist eine perspektivische Ansicht entlang einer Linie XXXXXV-XXXXXV' in 54.
  • 59 ist eine Querschnittsansicht entlang einer Linie XXXXXV-XXXXXV' in 54.
  • 60 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 54 gemäß einer anderen Ausführungsform darstellt.
  • 61 ist ein Blockdiagramm, das ein Speichersystem gemäß einer Ausführungsform darstellt.
  • 62 ist ein Flussdiagramm zur Beschreibung eines Programmierverfahrens eines Speichersystems gemäß einer Ausführungsform.
  • 63 ist ein Flussdiagramm zur Beschreibung eines Zustandleseverfahrens eines Speichersystems gemäß einer Ausführungsform.
  • 64 ist ein Blockdiagramm, das eine Anwendung eines Speichersystems in 61 darstellt.
  • 65 ist ein Diagramm, das eine Speicherkarte gemäß einer Ausführungsform darstellt.
  • 66 ist ein Diagramm, das ein Solid State-Laufwerk gemäß einer Ausführungsform darstellt.
  • 67 ist ein Blockdiagramm, das ein Rechnersystem gemäß einer Ausführungsform darstellt.
  • Ausführliche Beschreibung
  • Nachstehend werden verschiedene beispielgebende Ausfürungsformen mit Bezug auf die begleitenden Zeichnungen, in denen einige beispielgebende Ausführungsformen gezeigt sind, ausführlicher beschrieben. Die vorliegende Erfindung kann jedoch in vielen unterschiedlichen Formen umgesetzt werden und sollte nicht dahingehend verstanden werden, dass sie auf die hier vorangestellten beispielgebenden Ausführungsformen beschränkt ist. Diese beispielgebenden Ausführungsformen sind eben nur – Beispiele – und es sind viele Realisierungen und Abweichungen möglich, welche die hier vorgesehenen Einzelheiten nicht erfordern. Es soll ebenso betont werden, dass die Offenbarung Einzelheiten von alternativen Beispielen vorsieht, jedoch ist eine Aufzählung von Alternativen nicht abschließend. Ferner sollten wirkliche Übereinstimmungen von Einzelheiten zwischen verschiedenen Beispielen nicht dahingehend interpretiert werden, dass diese erforderliche Einzelheiten sind – es wäre nicht praktikabel, jede mögliche Abweichung für jedes hier beschriebene Merkmal aufzuzählen. Die Ausdrucksweise der Ansprüche sollte unter Bestimmung der Erfordernisse der Erfindung referenziert werden. In den Zeichnungen können Größe und relative Größe von Schichten und Bereichen deutlichkeitshalber übersteigert sein. Gleiche Bezugszeichen beziehen sich durchwegs auf gleiche Elemente.
  • Es ist verständlich, dass obwohl die Ausdrücke erstes, zweites, drittes usw. hier verwendet werden, um verschiedene Elemente, Bauteile, Bereiche, Schichten und/oder Abschnitte zu beschreiben, diese Elemente, Bauteile, Bereiche, Schichten und/oder Abschnitte nicht auf diese Ausdrücke beschränkt sein sollen. Diese Ausdrücke werden lediglich verwendet, um ein Element, ein Bauteil, einen Bereich, eine Schicht oder einen Abschnitt von einem anderen Bereich, Schicht oder Abschnitt zu unterscheiden. Somit könnte ein nachstehend diskutiertes erstes Element, Bauteil, Bereich, Schicht oder Abschnitt ebenso als ein zweites Element, Bauteil, Bereich, Schicht oder Abschnitt bezeichnet werden, ohne von der Lehre abzuweichen.
  • Räumlich relative Begriffe, wie zum Beispiel „unterhalb”, „unter”, „unterer”, „über”, „oberer und dergleichen” werden hier zur Vereinfachung der Beschreibung verwendet werden, um ein Element oder das Verhältnis eines Merkmals zu einem anderen Element (Elementen) oder Merkmal (Merkmale) zu beschreiben, wie in den Figuren dargestellt ist. Es ist verständlich, dass die räumlich relativen Ausdrücke so gedacht sind, dass sie verschiedene Ausrichtungen der Vorrichtung bei der Verwendung oder im Betrieb zusätzlich zu der in den Figuren abgebildeten Ausrichtung umfassen. Falls die Vorrichtung in den Figuren beispielsweise umgedreht wird, wären die Elemente, die als „unten” oder „unterhalb” oder „unter” anderen Elementen oder Merkmalen beschrieben sind, danach „über” den anderen Elementen oder Merkmalen ausgerichtet sein. Somit können die beispielgebenden Ausdrücke „unterhalb” und „unter” sowohl eine Ausrichtung oberhalb und unterhalb einschließen. Die Vorrichtung kann anders herum ausgerichtet sein (um 90° gedreht oder in anderen Ausrichtungen) und die hier verwendeten räumlich bezogenen Beschreibugen sind entsprechend auszulegen. Zu dem ist es ebenso verständlich, dass, wenn eine Schicht als „zwischen” zwei Schichten liegend bezeichnet ist, diese die einzige Schicht zwischen den zwei Schichten sein kann, oder eine oder mehrere dazwischen liegende Schichten ebenso vorhanden sein können.
  • Die hier verwendeten Begriffe werden lediglich zum Zweck der Beschreibung bestimmter Ausführungsformen verwendet und sind nicht beschränkend zu verstehen. So wie hier verwendet, sind die Formen der Einzahl „auf ein (es)” und „der (die das)” so zu verstehen, dass sie ebenso die Mehrzahlform umfassen, solange es der Kontext nicht klar anderes anzeigt. Es ist ferner verständlich, dass die Ausdrücke „aufweisen”, „aufweisen”, „umfassen”, „umfassend”, „mit”, usw., wenn sie hier verwendet werden, das Vorhandensein der angegebenen Merkmale, Zahlen, Schritte, Vorgänge, Elemente und/oder Komponenten spezifizieren, aber nicht das Vorhandensein oder das Hinzufügen einer oder mehrer andere Merkmale, Zahlen, Schritte, Vorgänge, Elemente, Komponenten und/oder Gruppen davon ausschließen. So wie hier verwendet, umfasst der Ausdruck „und/oder” beliebige und alle Kombinationen von einem oder mehrerer der in Zuordnung aufgezählten Gegenstände.
  • Es ist verständlich, dass, wenn ein Element oder eine Schicht als „auf”, „verbunden mit”, „gekoppelt mit”, oder „benachbart zu” einem anderen Element oder Schicht bezeichnet ist, diese direkt auf dem anderen Element oder der Schicht, mit dieser verbunden, gekoppelt oder zu dieser benachbart sein kann, oder dazwischenliegende Elemente oder Schichten vorhanden sein können. Wenn im Gegensatz hierzu ein Element als „direkt auf”, „direkt verbunden mit”, „direkt gekoppelt mit”, oder „unmittelbar benachbart zu” einem anderen Element oder Schicht bezeichnet ist, sind keine dazwischenliegenden Elemente oder Schichten vorhanden.
  • Solange nicht anders definiert, besitzen alle hier verwendeten Ausdrücke (einschließlich technischer und wissenschaftlicher Ausdrücke) die gleiche Bedeutung, wie sie allgemein von einem gewöhnlichen Durchschnittsfachmann auf dem Gebiet verstanden werden, zudem das erfinderische Konzept gehört. Es ist ebenso verständlich, dass solche Ausdrücke, wie zum Beispiel solche, die in üblicher Weise verwendeten Wörterbüchern definiert sind, so ausgelegt werden sollen, dass sie eine Bedeutung besitzen, die konsistent mit der Bedeutung in dem Kontext der verwandten Technik und/oder der vorliegenden Beschreibung und nicht in einer idealisierten oder übermäßig formalen Art und Weise ausgelegt werden sollen, außer es ist hier ausdrücklich so definiert.
  • Der Ausdruck „ausgewählter Speicherblock” kann verwendet werden, um einen Speicherblock anzuzeigen, der für einen Vorgang, wie beispielsweise eine Programmierung, Löschung oder Auslesen unter einer Mehrzahl von Speicherblöcken ausgewählt ist. Der Ausdruck „ausgewählter Unterblock” kann dazu verwendet werden, einen Unterblock anzuzeigen, der für einen Vorgang wie beispielsweise eine Programmierung, Löschung oder Auslösung unter einer Mehrzahl von Unterblöcken in einem Speicherblock ausgewählt ist. Der Ausdruck „ausgewählte Bitleitung” oder „ausgewählte Bitleitungen” kann verwendet werden, um unter einer Mehrzahl von Bitleitungen eine Bitleitung oder Bitleitungen anzuzeigen, die mit einem Zellentransistor verbunden sind, um programmiert oder ausgelesen zu werden. Der Ausdruck „nicht ausgewählte Bitleitung” oder „nicht ausgewählte Bitleitungen” kann verwendet werden, um unter einer Mehrzahl von Bitleitungen eine Bitleitung oder Bitleitungen anzuzeigen, die mit einem Zellentransistor verbunden sind, um programmierungsgesperrt oder lesegesperrt zu werden.
  • Der Ausdruck „ausgewählte Zeilenauswahlleitung” kann dazu verwendet, um unter eines Mehrzahl von Zeilenauswahlleitungen eine Zeilenauswahlleitung anzuzeigen, die mit einer Zellenzeile verbunden ist, die einen Zellentransistor umfasst, der programmiert oder gelesen werden soll. Der Ausdruck „nicht ausgewählte Zeilenauswahlleitung” oder „nicht ausgewählte Zeilenauswahlleitungen” kann verwendet werden, um unter eine Mehrzahl von Zeilenauswahlleitungen eine verbleibende Zeilenauswahlleitung oder verbleibende Zeilenauswahlleitungen anzuzeigen, welche andere als die ausgewählte Zeilenauswahlleitung sind. Der Ausdruck „ausgewählte Zeilenauswahltransistoren” kann verwendet werden, um Zeilenauswahltransistoren anzuzeigen, die mit einer ausgewählten Zeilenauswahlleitung verbunden sind. Der Ausdruck „nicht ausgewählte Zeilenauswahltransistoren” kann verwendet werden, um Zeilenauswahltransistoren anzuzeigen, die mit einer nicht ausgewählten Zeilenauswahlleitung oder nicht ausgewählten Zeilenauswahlleitungen verbunden sind.
  • Der Ausdruck „ausgewählte Masseauswahlleitung” kann dazu verwendet werden, um unter einer Mehrzahl von Masseauswahlleitungen eine Masseauswahlleitung anzuzeigen, die mit einer Zellenreihe verbunden ist, die einen Zellentransistor umfasst, um programmiert oder gelesen zu werden. Der Ausdruck „nicht ausgewählte Masseauswahlleitung” kann dazu verwendet werden, um unter eine Mehrzahl von Masseauswahlleitungen eine verbleibende Masseauswahlleitung oder verbleibende Masseauswahlleitungen anzuzeigen, welche andere als die ausgewählte Masseauswahlleitung sind. Der Ausdruck „ausgewählte Masseauswahltransistoren” kann verwendet werden, um ausgewählte Masseauswahltransistoren anzuzeigen, die mit einer ausgewählten Masseauswahlleitung verbunden sind. Der Ausdruck „nicht ausgewählte Masseauswahltransistoren” kann verwendet werden, um Masseauswahltransistoren anzuzeigen, die mit einer nicht ausgewählten Masseauswahlleitung oder nicht ausgewählten Masseauswahlleitungen verbunden sind.
  • Der Ausdruck „nicht ausgewählte Wortleitung” kann dazu verwendet werden, um unter einer Mehrzahl von Wortleitungen eine Wortleitung anzuzeigen, die mit einem Zellentransistor verbunden ist, um programmiert oder gelesen zu werden. Der Ausdruck „nicht ausgewählte Wortleitung” oder „nicht ausgewählte Wortleitungen” kann verwendet werden, um unter einer Mehrzahl von Wortleitungen eine verbleibende Wortleitung oder verbleibende Wortleitungen anzuzeigen, welche andere als eine ausgewählte Wortleitungen sind.
  • Der Ausdruck „ausgewählte Speicherzelle” oder „ausgewählte Speicherzellen” kann verwendet werden, um Speicherzellen, die programmiert oder gelesen werden sollen, aus einer Mehrzahl von Speicherzellen zu bestimmen. Der Ausdruck „nicht ausgewählte Speicherzelle” oder „nicht ausgewählte Speicherzellen” kann dazu verwendet werden, um aus eine Mehrzahl von Speicherzellen eine verbleibende Speicherzelle oder verbleibende Speicherzellen anzuzeigen, welche andere als eine ausgewählte Speicherzelle oder ausgewählte Speicherzellen sind.
  • Ausführungsformen werden mit Bezug auf einen NAND-Flashspeicher beschrieben. Allerdings ist das erfinderische Konzept nicht darauf beschränkt. Das erfinderische Konzept kann auf andere nichtflüchtige und flüchtige Speichertypen, wie zum Beispiel elektrisch löschbare und programmierbare ROM (EEPROM), NOR-Flashspeicher, Phasenänderungs-RAM (PRAM), magnetische RAM (MRAM), Widerstands-RAM (RRAM), ferroelektrische RAM (FRAM) und dergleichen angewendet werden.
  • 1 ist ein Blockdiagramm, das einen nichtflüchtigen Speichertyp gemäß einer Ausführungsform schematisch darstellt. Mit Bezug auf 1 kann eine nichtflüchtige Speichervorrichtung 100 ein Speicherzellenfeld 110, eine Adressendecodiereinheit 120, eine Seitenpuffereinheit 130, eine Dateneingabe-Ausgabeeinheit 140, eine Spannungserzeugungseinheit 150 und eine Steuereinheit 160 umfassen.
  • Das Speicherzellenfeld 100 kann eine Mehrzahl von Zellenzeilen umfassen, die auf einem Substrat in der Art eines Felds angeordnet sind, wobei sich das Feld in der Richtung einer Reihe und der Richtung einer Spalte erstreckt. Jede Zellenzeile kann eine Mehrzahl von Speicherzellen umfassen, die entlang einer Richtung senkrecht zu dem Substrat gestapelt sind. Das heißt Speicherzellen können innerhalb Feldern in Reihen und Spalten auf einem Substrat vorgesehen sein, und sie können in einer Richtung senkrecht zu dem Substrat gestapelt sein, um eine dreidimensionale Speicherzellenfeldstruktur zu bilden. Das Speicherzellenfeld 110 kann eine Mehrzahl von Speicherzellen umfassen, die jeweils ein oder mehrere Bits der Daten umfassen. Anderenfalls sind ebenso Strukturen wie zum Beispiel zweidimensionale Speicherzellenfelder möglich.
  • Die Adressendecodiereinheit 120 kann mit dem Speicherzellenfeld 110 über Wortleitungen WL, Zeilenauswahlleitungen SSL und Masseauswahlleitungen GSL verbunden sein. Die Adressendecodiereinheit 120 kann dazu ausgestaltet sein, in Reaktion auf die Steuerung der Steuereinheit 160 betrieben zu werden. Die Adressendecodiereinheit 120 kann eine Adresse ADDR von einer externen Vorrichtung empfangen.
  • Die Adressendecodiereinheit 120 kann dazu ausgestaltet sein, eine Reihe von Adressen der Eingangsadressen ADDR zu decodieren. Die Adressendecodiereinheit 120 kann dazu ausgestaltet sein, eine Wortleitung, die der decodierten Reihenadresse entspricht, unter der Mehrzahl von Wortleitungen WL auszuwählen. Die Adressendcodiereinheit 120 kann dazu ausgestaltet sein, eine Zeilenauswahlleitung und eine Masseauswahlleitung, die der decodierten Reihenadresse entsprechen, unter den Zeilenauswahlleitungen SSL und den Masseauswahlleitungen GSL auszuwählen.
  • Die Adressendecodiereinheit 120 kann in Reaktion auf die decodierte Reihenadresse und die Steuerung der Steuerungseinheit 160 an den Wortleitungen WL Spannungen zuführen, die von der Spannungserzeugungseineit 150 übertragen werden. Die Adressendecodiereinheit 120 kann an den Wortleitungen WL gezielt eine obere Überprüfungsspannung VFYU, eine normale Überprüfungsspannung VFYN, eine untere Überprüfungsspannung VFYL, eine normale Zustandlesespannung VSRN, eine obere Zustandlesespannung VSRU, eine Durchgangsspannung VPASS, eine Programmierspannung VPGM, eine Überprüfungsspannung VFY, eine Lesespannung Vrd und eine nicht ausgewählte Lesespannung Vread zuführen.
  • Die Adressendecodiereinheit 120 kann dazu ausgestaltet sein, eine Spaltenadresse unter den Eingangsadressen ADDR zu decodieren. Die Adressendecodiereinheit 120 kann die decodierte Spaltenadresse DCA an die Seitenpuffereinheit 130 übertragen.
  • Die Seitenpuffereinheit 130 kann über die Bitleitungen BL mit den Speicherzellenfeld 110 gekoppelt sein. Die Seitenpuffereinheit 130 kann in Reaktion auf die Steuerung der Steuereinheit 160 betrieben werden. Die Seitenpuffereinheit 130 kann die decodierte Spaltenadresse DCA von der Adressendecodiereinheit 120 empfangen. Die Seitenpuffereinheit 130 kann die Bitleitungen BL in Reaktion auf die decodierte Spaltenadresse DCA auswählen.
  • Die Seitenpuffereinheit 130 kann eine Mehrzahl von Seitenpuffern PB umfassen. Jeder Seitenpuffer PB kann mit einer Bitleitung BL gekoppelt sein. Jeder Seitenpuffer PB kann ein Daten-Flipflop DL und ein Neuordnungs-Flipflop RL umfassen.
  • Daten, die in Speicherzellen programmiert werden sollen und Daten, die in Speicherzellen programmiert sind, können in den Daten-Flipflops DL gespeichert werden. Beispielsweise können Daten, die zuvor in Speicherzellen programmiert wurden, und Daten, die in den Speicherzellen programmiert werden sollen, in den Daten-Flipflops DL gespeichert werden.
  • Informationen, die mit einer Ladungsneuordnung der Speicherzellen zusammenhängen, können in den Neuordnungs-Flipflops RL gespeichert werden. Beispielsweise kann ein Zustandleseergebnis von Speicherzellen in den Neuordnungs-Flipflops RL gespeichert werden. Dies wird später ausführlicher beschrieben.
  • Die Adressendecodiereinheit 120 und die Seitenpuffereinheit 130 können Programm- und Auslesevorgänge gemäß der Steuerung der Steuereinheit 160 durchführen. Ein Auslesen und Programmieren kann an den Speicherzellenfeldern 110 durch Steuerung der Zeilenauswahlleitungen SSL der Wortleitungen WL und der Masseauswahlleitungen GSL über die Adressendecodiereinheit 120 und eine Steuerung der Bitleitungen BL über die Seitenpuffereinheit 130 vorgenommen werden. Beim Programmieren kann ein Überprüfungslesevorgang ausgeführt werden. Die Lesespeichereinheit 130 kann an die Steuereinheit 160 ein Ergebnis des Überprüfungslesevorgangs ausgeben.
  • Die Seitenpuffereinheit 130 kann über die Datenleitungen DL Daten empfangen. Die eingegebenen Daten in der Seitenpuffereinheit 130 können in das Speicherzellenfeld 110 eingeschrieben werden. Die Seitenpuffereinheit 130 kann Daten aus dem Speicherzellenfeld 110 auslesen, um diese über die Datenleitungen DL auszugeben. Die Seitenpuffereinheit 130 kann Daten speichern, die aus einem ersten Speicherbereich des Speicherzellenfelds 110 ausgelesen werden. Die Daten, die in der Seitenpuffereinheit 130 gespeichert sind, können in einen zweiten Speicherbereich derselben eingeschrieben werden. Das heißt, es kann ein Rückkopierungsvorgang vorgenommen werden.
  • Die Adressendecodiereinheit 120 und die Seitenpuffereinheit 130 können übereinstimmend mit der Steuerung der Steuerungseinheit 160 einen Zustandlesevorgang durchführen. Dies wird später ausführlicher beschrieben. Die Adressendecodiereinheit 120 und die Seitenpuffereinheit 130 können unter der Steuerung der Steuereinheit 160 einen Programmiervorgang unter Berücksichtigung einer Neuordnung durchführen. Dies wird später ausführlicher beschrieben.
  • Die Dateneingabe/ausgabeeinheit 140 kann über die Datenleitungen DL mit der Seitepuffereinheit 130 verbunden sein. Die Dateneingabe/ausgabeeinheit 140 kann dazu ausgestaltet sein, Daten mit einer externen Vorrichtung auszutauschen. Die Dateneingabe/ausgabeeinheit 140 kann Daten, die von der Seitenpuffereinheit 130 übertragen werden, über die Datenleitungen DL an die externe Vorrichtung ausgeben. Die Dateneingabe/ausgabeeinheit 140 kann Daten, die von der externen Vorrichtung eingegeben werden, über die Datenleitungen DL an die Seitenpuffereinheit 130 übertragen.
  • Die Spannungserzeugungseinheit 150 kann verschiedene Spannungen übereinstimmend mit der Steuerung der Steuereinheit 160 erzeugen. Die Spannungserzeugungseinheit 150 kann eine obere Überprüfungsspannung VFYU, eine normale Überprüfungsspannung VFYN, eine untere Überprüfungsspannung VFYL, eine normale Zustandlesespannung VSRN, eine obere Zustandlesespannung VSRU, eine Durchgangsspannung VPASS, eine Programmierspannung VPGM, eine Überprüfungsspannung VFY, eine Lesespannung Vrd, eine nicht ausgewählte Lesespannung Vread erzeugen. Jede dieser Spannungen kann an der Adressendecodiereinheit 120 zugeführt.
  • Die obere Überprüfungsspannung VFYU, die normale Überprüfungsspannung VFYN und die untere Überprüfungsspannung VFYL können Überprüfungsspannungen sein, die zum Programmieren der Speicherzellen in einen Programmzustand unter Berücksichtigung einer Ladungsneuordnung verwendet werden.
  • Die normale Zustandlesespannung VSRN und die obere Zustandlesespannung VSRU können Lesespannungen sein, die bei einem Zustandlesevorgang zum Erfassen der Ladungsneuordnung verwendet werden.
  • Jede von der oberen Überprüfungsspannung VFYU, der normalen Überprüfungsspannung VFYN, der unteren Überprüfungsspannung VFYL, der normalen Zustandlesespannung VSRN und der oberen Zustandlesespannung VSRU kann als ein Satz von Spannungen gebildet sein. Beispielsweise kann die obere Überprüfungsspannung VFYU einen Satz von Spannungen mit verschiedenen Pegeln anzeigen, die jeweils einem Bit niedrigster Wertigkeit (LLSB), einem Bit mittlerer Wertigkeit (CSB), und einem Bit höchster Wertigkeit (MSB) entsprechen. Diese Bits können ebenso mit unterschiedlichen Namen, wie z. B. Bit mit zweithöchster Wertigkeit (2SB) bezeichnet werden. Im Allgemeinen wird die Begrifflichkeit mit diesen „Bit mit Wertigkeit” in dieser Anmeldung verwendet, um einer Programmierung von verschiedenen Bits der Informationen in einer mehrstufigen Zelle zu unterscheiden. Üblicherweise ist bei einer Flashspeicherprogrammierung ein erstes Bit, das in einer mehrstufigen Zelle (aus dem gelöschten Zustand) programmiert werden soll, als ein Bit mit niedrigster Wertigkeit ausgewiesen und das letzte Bit der Information, das in einer mehrstufigen Zelle programmiert werden soll, als Bit mit höchster Wertigkeit (MSB). Wenn die mehrstufige Zelle mehr als zwei Bits aufweist, können dazwischen liegende Bits als Bit mittlerer Wertigkeit (CSB), Bit mit zweiter Wertigkeit (2SB), usw. bezeichnet werden. Zur Vereinfach der Erklärung beschreibt diese Anmeldung eine Programmierung in der gleichen Weise. Es sollte jedoch herausgestellt werden, dass die Wertigkeit der Bits der Information in Bezug auf andere Bits nicht von der Reihenfolge der Speicherung in den mehrstufigen Zellen abhängt. Die Wertigkeit der Bits im Bezug zueinander kann, falls vorhanden, durch ihre Verwendung von einem Nutzer, durch spätere Datenbearbeitung durch die Speichervorrichtung (z. B. durch eine Eingangs-/Ausgangsschaltung der Speichervorrichtung) oder eine externe Vorrichtung (z. B. ein Speichercontroller) bestimmt werden. Somit können Daten, die als LSB-Daten bezeichnet sind, tatsächlich nachgeordnet als MSB-Daten behandelt werden, und MSB-Daten können tatsächlich LSB-Daten sein. Jede von der normalen Überprüfungsspannung VFYN, der unteren Überprüfungsspannung VFYL, der normalen Zustandlesespannung VSRN und der oberen Zustandlesespannung VSRU kann einen Satz von Spannungen mit verschiedenen Pegeln anzeigen. Eine bestimmte Spannung eines Satzes von Spannungen kann durch eine Bezugsziffer gekennzeichnet sein, die einem Bezugssymbol folgt.
  • Die Durchgangsspannung VPASS, die Programmierspannung VPGM, die Überprüfungsspannung VFY, die Lesespannung Vrd und die nicht ausgewählte Lesespannung Vread können Spannungen sein, die beim Programmieren und Auslesen verwendet werden.
  • Die Steuereinheit 160 kann dazu ausgestaltet sein, einen Gesamtvorgang der nichtflüchtigen Speichervorrichtung 100 zu steuern. Die Steuereinheit 160 kann in Reaktion auf Steuersignale CTRL und einen Befehl CMD, die von der externen Vorrichtung vorgesehen sind, betrieben werden. Die Steuereinheit 160 kann einen Programmdurchgang oder einen Programmfehler basierend auf einem Überprüfungsleseergebnis beurteilen, das von der Seitenpuffereinheit 130 bereitgestellt wird. Die Steuereinheit 160 kann die nichtflüchtige Speichervorrichtung 100 derart steuern, dass sie ein Programm, eine Auslesung, eine Löschung, eine Zustandsauslesung und Neuordnungsprogrammvorgänge durchführt.
  • Die Steuereinheit 160 kann eine Neuordnungssteuerung 161 umfassen. Die Neuordnungssteuerung 161 kann einen Zustandlesevorgang zum Erfassen (oder Prognostizieren) einer Ladungsneuordnungseigenschaft einer programmierten Speicherzelle und einen Programmiervorgang unter Berücksichtigung einer Neuordnung gemäß dem Zustandleseergebnis steuern.
  • 2 ist ein Diagramm, das ein Speicherzellenfeld in 1 gemäß einer Ausführungsform zeigt. Mit Bezug auf die 1 und 2, umfasst ein Speicherzellenfeld 110 eine Mehrzahl von Speicherblöcken BLK1 bis BLKz. Bei diesem Beispiel kann jeder der Speicherblöcke BLK1 bis BLKz eine dreidimensionale Speicherzellenfeldstruktur (oder eine vertikale Speicherzellenfeldstruktur) aufweisen. Beispielsweise kann jeder Speicherblock BLK1 bis BLKz ein Speicherzellenfeld umfassen, das sich in der ersten, zweiten und der dritten Richtung erstreckt. Obwohl nicht in 2 gezeigt, kann jeder der Speicherblöcke BLK1 bis BLKz eine Mehrzahl von Zellenreihen umfassen, die sich entlang der zweiten Richtung erstrecken. Obwohl nicht in 2 dargestellt, kann eine Mehrzahl von Zellenreihen entlang der ersten und dritten Richtung voneinander beabstandet sein.
  • Zellenreihen (nicht dargestellt) innerhalb eines Speicherblocks können mit einer Mehrzahl von Bitleitungen BL, einer Mehrzahl von Reihenauswahlleitungen SSL, einer Mehrzahl von Wortleitungen WL, einer oder mehreren Masseauswahlleitungen GSL und einer gemeinsamen Sourceleitung gekoppelt sein. Zellenreihen in der Mehrzahl von Speicherblöcken BLK1 bis BLKz können sich eine Mehrzahl von Bitleitungen teilen. Beispielsweise kann sich die Mehrzahl der Bitleitungen entlang der zweiten Richtung derart erstrecken, dass sie von der Mehrzahl der Zellenblöcke BLK1 bis BLKz geteilt werden.
  • Die Mehrzahl der Speicherblöcke BLK1 bis BLKz kann durch eine Adressendecodiereinheit 120 in 1 ausgewählt werden. Beispielsweise kann die Adressendecodiereinheit 120 dazu ausgestaltet sein, unter der Mehrzahl von Speicherblöcken BLK1 bis BLKz eine Speicherblock auszuwählen, der einer eingegebenen Adresse ADDR entspricht. Es kann ein Löschen, Programmieren und Auslesen an einem ausgewählten Speicherblock vorgenommen werden. Die Mehrzahl der Speicherblöcke BLK1 bis BLKz wird mit Bezug auf die 3 bis 6 ausführlicher beschrieben.
  • 3 ist eine Draufsicht auf einen Teil eines Speicherblocks in 1 gemäß einer Ausführungsform. 4 ist eine perspektivische Ansicht entlang einer Linie IV-IV' in 3 gemäß einer Ausführungsform. 5 ist einer Querschnittsansicht entlang einer Linie IV-IV' in 3 gemäß einer Ausführungsform.
  • Mit Bezug auf die 3 bis 5 können dreidimensionale Speicherzellenfelder vorgesehen sein, die sich entlang einer ersten bis dritten Richtung erstrecken.
  • Es kann ein Substrat 111 vorgesehen sein. Das Substrat 111 kann zum Beispiel eine Senke sein, die einen ersten leitfähigen Typ aufweist. Das Substrat 111 kann eine p-dotierte Senke sein, in die das Gruppe III-Element wie zum Beispiel Bor eingespritzt wird. Das Substrat 111 kann eine p-dotierte Taschensenke sein, die innerhalb einer n-dotierten Senke vorgesehen ist. Nachstehend ist davon auszugehen, dass das Substrat 111 eine p-dotierte Senke (oder eine p-dotierte Taschensenke) ist. Allerdings ist das Substrat 111 nicht auf einen p-dotierten Typ beschränkt.
  • Eine Mehrzahl von gemeinsamen Sourceabschnitten CSR, die sich entlang der ersten Richtung erstrecken, können in dem Substrat 111 vorgesehen sein. Die gemeinsamen Sourceabschnitte CSR können entlang der zweiten Richtung voneinander beabstandet sein. Die gemeinsamen Sourceabschnitte CSR können gemeinsam verbunden sein, um eine gemeinsame Sourceleitung zu bilden.
  • Die gemeinsamen Sourceabschnitte CSR können einen zweiten leitfähigen Typ aufweisen, der sich von dem Substrat 111 unterscheidet. Beispielsweise können die gemeinsamen Sourceabschnitte CSR ein n-dotierter Typ sein. Nachstehend ist davon auszugehen, dass die gemeinsamen Sourceabschnitte CSR vom n-dotierte Typ sind. Allerdings sind die gemeinsamen Sourceabschnitte CSR nicht auf den n-dotierten Typ beschränkt.
  • Zwischen zwei benachbarten Abschnitten der gemeinsamen Sourceabschnitte CSR kann eine Mehrzahl von Isolationsmaterialien 112 und 112a auf dem Substrat 111 hintereinander entlang der dritten Richtung (d. h. einer Richtung senkrecht zu dem Substrat 111) vorgesehen sein. Die Isolationsmaterialien 112 und 112a können entlang der dritten Richtung voneinander beabstandet sein. Die Isolationsmaterialien 112 und 112a können sich entlang der ersten Richtung erstrecken. Beispielsweise können die Isolationsmaterialien 112 und 112a ein Isolationsmaterial wie beispielweise einen Halbleiteroxidfilm umfassen. Das Isolationsmaterial 112a, das mit dem Substrat 111 in Kontakt steht, kann in der Dicke dünner als andere Isolationsmaterialien 112 sein.
  • Zwischen zwei benachbarten Abschnitten der gemeinsamen Sourceabschnitte CSR können eine Mehrzahl von Stützen PL miteinander entlang der ersten Richtung derart angeordnet sein, dass diese die Mehrzahl der Isolationsmaterialien 112 und 112a entlang der zweiten Richtung durchdringen. Beispielsweise können die Stützen PL mit dem Substrat 111 durch die Isolationsmaterialien 112 und 112a in Kontakt stehen.
  • Bei einer Ausführungsform können die Stützen PL zwischen zwei benachbarten gemeinsamen Sourceabschnitten CSR entlang der ersten Richtung voneinander beabstandet sein. Die Stützen PL können entlang der ersten Richtung in einer Linie angeordnet sein.
  • Bei einer Ausführungsform können die Stützen PL jeweils aus einer Mehrzahl von Materialien gebildet sein. Jede der Stützen PL kann eine Kanalschicht 114 und ein inneres Material 115, das innerhalb der Kanalschicht 114 vorgesehen ist, umfassen.
  • Die Kanalschicht 114 kann ein Halbleitermaterial (z. B. Silizium) umfassen, das einen ersten leitfähigen Typ aufweist. Beispielsweise kann die Kanalschicht 114 ein Halbleitermaterial (z. B. Silizium) umfassen, das denselben Typ wie das Substrat 111 aufweist. Die Kanalschicht 114 kann einen Eigenhalbleiter (intrinsic semiconductor), der ein Nichtleiter ist, umfassen.
  • Die inneren Materialien 115 können ein Isolationsmaterial aufweisen. Beispielsweise können die inneren Materialien 150 ein Isolationsmaterial wie beispielsweise Siliziumoxid umfassen. Anderenfalls können die inneren Materialien 115 Luftspalte umfassen.
  • Zwischen zwei benachbarten Abschnitten der gemeinsamen Sourceabschnitte CSR können an freigelegten Oberflächen der Isolationsmaterialien 112 und 112a und den Stützen PL Informationsspeicherfilme 116 vorgesehen sein. Die Informationsspeicherfilme 116 können durch Einfangen oder Abgeben von Ladungen Informationen speichern.
  • Zwischen zwei benachbarten gemeinsamen Sourceabschnitten CSR und zwischen den Isolationsmaterialien 112 und 112a können auf freiliegenden Oberflächen der Informationsspeicherfilme 116 leitfähige Materialien CM1 bis CM8 vorgesehen sein. Die leitfähigen Materialien CM1 bis CM8 können sich entlang der ersten Richtung erstrecken. Die leitfähigen Materialien CM1 bis CM8 auf den gemeinsamen Sourceabschnitten CSR können durch Wortleitungsausschnitte getrennt sein. Die gemeinsamen Sourceabschnitte CSR können durch die Wortleitungsausschnitte freigelegt sein. Die Wortleitungsausschnitte können sich entlang der ersten Richtung erstrecken.
  • Bei einer Ausführungsform können die leitfähigen Materialien CM1 bis CM8 ein metallisches leitfähiges Material umfassen. Die leitfähigen Materialien CM1 bis CM8 können ein nicht metallisches leitfähiges Material wie Polysilizium umfassen.
  • Bei einer Ausführungsform kann ein Informationsspeicherfilm 116, der auf einer oberen Oberfläche eines Isolationsmaterials bereitgestellt ist, das an der obersten Schicht von den Isolationsschichten 112 und 112a positioniert ist, entfernt werden. Beispielsweise können Informationsspeicherfilme, die an gegenüber liegenden Seiten der Stützen PL von den Seiten der Isolationsmaterialien 112 und 112a vorgesehen sind, entfernt werden.
  • Eine Mehrzahl von Schächten 320 kann jeweils an der Mehrzahl von Stützen PL vorgesehen sein. Die Schächte 320 können ein Halbleitermaterial (z. B. Silizium) umfassen, das einen zweiten Leitfähigkeitstyp aufweist. Die Schächte 320 können ein Halbleitermaterial vom n-dotierten Typ (z. B. Silizium) umfassen. Nachstehend ist davon auszugehen, dass der Schacht 320 ein n-Typ Silizium umfasst. Allerdings ist die vorliegende Erfindung nicht hierauf beschränkt. Die Schächte 320 können sich zu der Oberseite der Kanalschichten 114 der Stützen PL erstrecken.
  • Die Bitleitungen BL, die sich in der zweiten Richtung erstrecken, können derart auf den Schächten 320 vorgesehen sein, dass sie entlang der ersten Richtung voneinander beabstandet sind. Die Bitleitungen BL können mit den Schächten 320 gekoppelt sein. Bei dieser Ausführungsform können die Schächte 320 und die Bitleitungen BL über Kontaktstecker (nicht dargestellt) verbunden sein. Die Bitleitungen BL können ein metallisch leitfähiges Material umfassen. Teilweise können die Bitleitungen BL ein nicht metallisches leitfähiges Material wie beispielsweise Polysilizium umfassen.
  • Unterhalb können die leitfähigen Materialien CM1 bis CM8 in Übereinstimmung mit einem Abstand von dem Substrat 111 eine erste Höhe bis zu einer achten Höhe aufweisen.
  • Die Mehrzahl von Stützen PL kann zusammen mit den Informationsspeicherfilmen 116 und der Mehrzahl der leitfähigen Materialien CM1 bis CM8 eine Mehrzahl von Zellenreihen bilden. Jede der Stützen PL kann eine Zellenreihe mit Informationsspeicherfilmen 116 und benachbarten leitfähigen Materialien CM1 bis CM8 bilden.
  • Die Stützen PL können auf dem Substrat 111 entlang von Reihen- und Spaltenrichtungen vorgesehen sein. Das achte leitfähige Material CM8 kann Reihen bilden. Stützen, die mit demselben achten leitfähigen Material CM8 verbunden sind, können eine Reihe bilden. Die Bitleitungen BL können Spalten bilden. Stützen, die mit derselben Bitleitung BL verbunden sind, können eine Spalte bilden. Die Stützen PL können eine Mehrzahl von Zeilen bilden, die zusammen mit den Informationsspeicherfilmen 116 und der Mehrzahl von leitfähigen Materialien CM1 bis CM8 in Reihen- und Spaltenrichtungen erstrecken. Jede Zellenreihe kann eine Mehrzahl von Zellentransistoren CT umfassen, die in einer Richtung senkrecht zu dem Substrat 111 gestapelt sind.
  • 6 ist ein vergrößertes Diagramm, das einen der Zellentransistoren in 5 darstellt. Mit Bezug auf die 3 bis 6, können Zellentransistoren CT aus leitfähigen Materialien CM1 bis CM8, Stützen PL und Informationsspeicherfilme 116, die zwischen den leitfähigen Materialien CM1 bis CM8 und den Stützen PL vorgesehen sind, gebildet werden.
  • Die Informationsspeicherfilme 116 können sich zu den oberen Oberflächen und unteren Oberflächen der leitfähigen Materialien CM1 bis CM8 von Bereichen zwischen den leitfähigen Materialien CM1 bis CM8 und den Stützen PL erstrecken. Jeder der Informationsspeicherfilme 116 kann erste bis dritte Unterisolationsfilme 117, 118 und 119 umfassen.
  • Die Zellentransistoren CT und die Kanalschichten 114 der Stützen PL können dasselbe Silizium vom p-dotierten Typ wie das Substrat umfassen. Die Kanalschichten 114 können als Körper der Zellentransistoren CT dienen. Die Kanalschichte 114 können in einer Richtung senkrecht zu dem Substrat 111 ausgebildet sein. Die Kanalschichten 114 der Stützen PL können als vertikale Körper dienen. An den Kanalschichten 114 können vertikale Kanäle ausgebildet sein.
  • Die ersten Unterisolationsfilme 117, die zu den Stützen PL benachbart sind, können als Tunnelisolationsfilme der Zellentransistoren CT dienen. Beispielsweise können die ersten Unterisolationsfilme 117 jeweils einen thermischen Oxidfilm umfassen. Die ersten Unterisolationsfilme 117 können jeweils eine Siliziumoxidfilm umfassen.
  • Die zweiten Unterisolationsfilme 118 können als Ladungsspeicherfilme der Zellentransistoren CT dienen. Beispielsweise können die zweiten Unterisolationsfilme 118 jeweils als Ladungseinfangfilm dienen. Beispielsweise können die zweiten Unterisolationsfilme 118 jeweils einen Nitridfilm oder eine Metalloxidfilm umfassen.
  • Die dritten Unterisolationsfilme 119, die zu dem leitfähigen Materialien CM1 bis CM8 benachbart sind, können als blockierender Isolationsfilm der Zellentransistoren CT dienen. Bei dieser Ausführungsform können die dritten Unterisolationsfilme 119 aus einer einzelnen Schicht oder mehreren Schichten ausgebildet sein, der dritte Unterisolationsfilm 119 kann ein hoch dielektrischer Film sein (z. B. ein Aluminiumoxidfilm, ein Hafniumoxidfilm, usw.), der eine dielektrische Konstante aufweist, die größer als diejenigen der ersten und zweiten Unterisolationsfilm 117 und 118 ist. Die dritten Unterisolationsfilme 119 können jeweils einen Siliziumoxidfilm umfassen.
  • Bei dieser Ausführungsform können die ersten bis dritten Unterisolationsfilme 117 bis 119 als ONA (Oxid-Nitrid-Aluminium-Oxid) oder als ONO (Oxid-Nitrid-Oxid) bilden. Die Mehrzahl von leitfähigen Materialien CM1 bis CM8 können jeweils als Gitter (oder Steuergitter) dienen.
  • Das heißt, die Mehrzahl von leitfähigen Materialien CM1 bis CM8, die als Gitter (Steuergitter) dienen, die dritten unter Isolationsfilmen 119, die als Blockisolationsfilme dienen, die zweiten unter Isolationsfilme 118, die als Ladungsspeicherfilme dienen, die ersten unter Isolationsfilmen 117, die als Tunnelisolationsfilme dienen, und die Kanalschichten 114, die als vertikale Körper dienen, können eine Mehrzahl von Zellentransistoren CT bilden, die in einer Richtung senkrecht zu dem Substrat gestapelt sind. Beispielsweise können die Zellentransistoren CT Zellentransistoren von Ladungseinfangtyp sein.
  • Die Zellentransistoren CT können für verschiedene Zwecke gemäß der Höhe verwendet werden. Beispielsweise können unter den Zellentransistoren CT, solche Zellentransistoren, die wenigstens eine Höhe aufweisen und an einem oberen Teil angeordnet sind, als Zeilenauswahltransistoren verwendet werden. Die Zeilenauswahltransistoren verwendet werden. Die Zeilenauswahltransistoren können dazu ausgestaltet sein, Schaltvorgänge zwischen Zellenreihen und Bitleitungen durchzuführen. Unter den Zellentransistoren CT können solche Zellentransistoren, die wenigstens eine Höhe aufweisen und an einem unteren Teil angeordnet sind, als Masseauswahltransistoren verwendet werden. Die Masseauswahltransistoren können dazu ausgestaltet sein, Schaltvorgänge zwischen Zellenreihen und einer gemeinsamen Sourceleitung, die aus gemeinsamen Sourceabschnitten CSR gebildet wird, durchzuführen. Zellentransistoren zwischen Zellentransistoren, die als Reihe verwendet werden, und Masseauswahltransistoren können als Speicherzellen und Blindspeicherzellen (Dummy) verwendet werden.
  • Die leitfähigen Materialien CM1 bis CM8 können sich entlang der ersten Richtung erstrecken und mit der Mehrzahl der Stützen PL verbunden sein. Die leitfähigen Materialien CM1 bis CM8 können leitfähige Leitungen bilden, welche die Zellentransistoren CT der Stützen PL miteinander verbinden. Bei dieser Ausführungsform können die leitfähigen Materialien CM1 bis CM8 gemäß der Höhe als Reihenauswahlleitung, Masseauswahlleitung, Wortleitung oder eine Blindwortleitung (Dummy) verwendet werden.
  • Leitfähige Leitungen, die Zellentransistoren verbinden und als Zeilenauswahltransistoren verwendet werden, können als Zeilenauswahlleitungen verwendet werden. Leitfähige Leitungen, die Zellentransistoren verbinden und als Masseauswahltransistoren verwendet werden, können als Masseauswahlleitungen verwendet werden. Leitfähige Leitungen, die Zellentransistoren verbinden und als Speicherzellen verwendet werden, können als Wortleitungen verwendet werden. Leitfähige Leitungen, die Zellentransistoren verbinden und als Blindspeicheruzellen verwendet werden, können als Blindwortleitungen verwendet werden.
  • 7 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer Ausführungsform darstellt. Mit Bezug auf 3 bis 7, können Zellenreihen CS11, CS12, C21 und CS22 zwischen Bitleitungen BL1 und BL2 und einer gemeinsamen Sourceleitung CSL vorgesehen sein. Zellenreihen CS11 und CS21 können zwischen der ersten Bitleitung BL1 und der gemeinsamen Sourceleitung CL verbunden sein, und Zellenreihen CS12 und CS22 können zwischen der Bitleitung BL2 und der gemeinsamen Sourceleitung CSL verbunden sein.
  • Gemeinsame Sourceabschnitte CSR können gemeinsam verbunden sein, um eine gemeinsame Sourceleitung CSL zu binden.
  • Die Zellenreihen CS11, CS12, CS21 und CS22 können vier Stützen eines Teils EC einer Draufsicht in 3 entsprechen. Die vier Stützen können zusammen mit leitfähigen Materialien CM1 bis CM8 und Informationsspeicherfilmen 116 vier Zellenreihen CS11, CS12, CS21 und CS22 bilden.
  • Bei dieser Ausführungsform kann das erste leitfähige Material CM1 mit den Informationsspeicherfilmen 116 und Stützen PL Masseauswahltransistoren GST bilden. Das erste leitfähige Material CM1 kann eine Masseauswahlleitung GSL bilden. Die ersten leitfähigen Materialien CM1 können miteinander verbunden sein, um eine Masseauswahlleitung GSL zu bilden.
  • Die zweiten bis siebten leitfähigen Materialien CM2 bis CM7 können mit den Informationsspeicherfilmen 116 und den Stützen PL eine erste bis sechste Speicherzelle MC1 bis MC6 bilden. Das zweite bis siebte leitfähige Material CM2 bis CM7 kann als zweite bis sechste Wortleitung WL2 bis WL6 verwendet werden.
  • Das zweite leitfähige Material CM2 kann miteinander verbunden sein, um die erste Wortleitung WL1 zu bilden. Das dritte leitfähige Material CM3 kann miteinander verbunden sein, um die zweite Wortleitung WL2 zu bilden. Das vierte leitfähige Material CM4 kann miteinander verbunden sein, um die dritte Wortleitung WL3 zu bilden. Das fünfte leitfähige Material CM5 kann miteinander verbunden sein, um die vierte Wortleitung WL4 zu bilden. Das sechste leitfähige Material CM6 kann miteinander verbunden sein, um die fünfte Wortleitung WL5 zu bilden. Das siebte leitfähige Material CM7 kann miteinander verbunden sein, um die sechste Wortleitung WL6 zu bilden.
  • Das achte leitfähige Material CM8 kann mit den Informationsspeicherfilmen 116 und den Stützen PL Zeilenauswahltransistoren SST bilden. Das achte leitfähige Material CM8 kann Zeilenauswahlleitungen SSL1 und SSL2 bilden.
  • Speicherzellen derselben Höhe können mit einer Wortleitung gemeinsam verbunden sein. Wenn eine Spannung an einer Wortleitung einer bestimmten Höhe angelegt ist, kann sie demzufolge an allen Zellenzeilen CS11, CS12, CS21 und CS22 angelegt werden.
  • Zellenzeilen in verschiedenen Reihen können jeweils mit verschiedenen Zeilenauswahlleitungen SSL1 und SSL2 verbunden sein. Die Zellenzeilen CS11, CS12, CS21 und CS22 können durch Auswählen oder Nichtauswählen der Zeilenauswahlleitungen SSL1 und SSL2 durch die Reihe ausgewählt oder nicht ausgewählt werden. Beispielsweise können Zellenzeilen (CS11 und CS12) oder (CS21 und CS22), die mit einer nicht ausgewählten Zeilenauswahlleitung SSL1 oder SSL2 verbunden sind, von den Bitleitungen BL1 und BL2 elektrisch getrennt werden. Zellenzeilen (CS21 und CS22) oder (CS11 und CS12), die mit einer ausgewählten Zeilenauswahlleitung SSL2 oder SSL1 verbunden sind, können mit den Bitleitungen BL1 und BL2 elektrisch verbunden werden.
  • Die Zellenzeilen CS11, CS12, CS21 und CS22 können durch die Spalte mit den Bitleitungen BL1 und BL2 verbunden sein. Die Zellenzeilen CS11 und CS21 können mit der Bitleitung BL1 verbunden sein, und die Zellenzeilen CS12 und CS22 können mit der Bitleitung BL2 verbunden sein. Die Zellenzeilen CS11, CS12, CS21 und CS22 können durch Auswählen oder Nichtauswählen der Bitleitungen BL1 und BL2 durch die Spalte ausgewählt oder nicht ausgewählt werden.
  • 8A ist ein Diagramm eines beispielgebenden Speicherzellentransistors, das eine Mehrzahl von Elektronen e zeigt, die in einer Elektroneneinfangschicht 118' unter dem Gitter des Speicherzellentransistors eingefangen sind. Die Ladungseinfangschicht 118' kann ein Nitridfilm oder ein Metalloxidfilm sein. Die Ladungseinfangschicht 118' ist zwischen Isolationsfilmen 119' und 117', die zum Beispiel Siliziumoxidfilme sein können, eingefügt. Ein Kanal eines Speicherzellentransistors kann in einer Schicht 114' ausgebildet sein, die in oder aus einem Halbleitersubstrat wie zum Beispiel ein Siliziumgermanium, Galliumarsenid oder einem Indiumphosphidkristallin Waver, gebildet ist.
  • 8B stellt einen beispielgebenden Vth(Spannungsschwellwert)-Verteilungsumfang R einer Mehrzahl von Speicherzellentransistoren unmittelbar nach einem Programmieren der Mehrzahl von Speicherzellentransistoren dar. Die Mehrzahl von Speicherzellentransistoren kann mit derselben Wortleitung verbunden sein und kann zeitgleich programmiert werden. Der Vth-Verteilungsumfang R kann einen Wert eines Bits in SSLC Speicherzellentransistoren (z. B. eine „0”) oder Werte von Bits, die in MLC Speicherzellentransistoren gespeichert sind (z. B. „0/1”) darstellen. Anderenfalls können Vth-Verteilungsumfänge (nicht gezeigt) andere Werte eines Bits (für SSLC Speicherzellentransistoren) oder Bits (für MLC Speicherzellentransistoren) darstellen. Der Vth-Umfang der 8B kann sich von einer Programmüberprüfungsspannung VFY zu einem zweiten Spannungswert VFY + Δ erstrecken.
  • 8C stellt eine beispielgebende Vth-Verteilung der Mehrzahl von Speicherzellentransistoren nach einer Ladungsneuordnung innerhalb von jedem Speicherzellentransistor aus der Mehrzahl von Speicherzellentransistoren dar. Wie durch die Pfeile in 8A gezeigt ist, können sich Elektronen innerhalb einer Ladungseinfangschicht 118' während einem Programmieren bewegen, nachdem sie anfänglich in der Ladungseinfangschicht 118' eingefangen worden sind. Elektronen, die weg von dem Gitter zu dem Kanal hin nach unten migrieren (in Schicht 114') können dazu beitragen, den Spannungsschwellwert Vth des Speicherzellentransistors zu erhöhen, und Elektronen, die horizontal (links nach rechts in 8A) migrieren, können dazu beitragen, den Spannungsschwellwert Vth des Speicherzellentransistors zu senken. Somit kann ein Spannungsschwellwert Vth eines Speicherzellentransistors nach einer Zeitdauer nach einem Programmieren über den Spannungsschwellwertumfang R hinaus auf natürliche Weise zunehmen oder abnehmen, obwohl er anfänglich innerhalb des Umfangs R programmiert war. Ein beispielgebender Spannungsumfang nach einer Ladungsneuordnung ist in 8C für die Mehrzahl der Speicherzellentransistoren, die oben mit Bezug auf 8B diskutiert sind, gezeigt. Wie in 8C ersichtlich, ist der Spannungsschwellwertumfang nach einer Ladungsneuordnung größer als ein Umfang R aus 8B, einschließlich Speicherzellentransistoren mit Spannungsschwellwerten, die größer als der Umfang R (bei C – ein Beispiel von Speicherzellentransistoren des „oberen Endes” oder „Überschussendes”) und Speicherzellentransistore mit Spannungsschwellwerten, die kleiner als der Umfang R sind (bei A – ein Beispiel für Speicherzellentransistoren des „unteren Endes”). Falls eine Spanne zwischen benachbarten Vth-Umfängen, die verschiedene Werte eines Bits (oder Bits) darstellen, klein ist, können solche Ladungsneuordnungen zu falschen Interpretationen (oder einer Unfähigkeit zur Interpretation) eines Schwellwerts eines Speicherzellentransistors führen. Beispielsweise können Speicherzellentransistoren bei A oder C Spannungsschwellwerte in einem Umfang aufweisen, der mit einem unterschiedlichen Datenbitwert (oder unterschiedlichen Werten von Bits) zusammenhängt.
  • 8D ist ein vergrößertes Diagramm eines rechten Teilbereichs eines Zellentransistors in 6. Mit Bezug auf 8D ist ein Informationsspeicherfilm 116 abgebildet, der erste bis dritte Unterisolationsfilme 117 bis 119, ein fünftes leitfähiges Material CM5 und eine Kanalschicht 114 umfasst.
  • Wenn ein Zellentransistor CT in den 6 und 8D programmiert wird, können Ladungen der Kanalschicht 114 den ersten Unterisolationsfilm 117 durchlaufen, und durch den zweiten Unterisolationsfilm 118 eingefangen werden. Wenn Ladungen durch den zweiten Unterisolationsfilm 118 eingefangen werden, kann eine Schwellwertspannung des Zellentransistors CT angepasst werden.
  • Ladungen, die durch den zweiten Isolationsfilm 118 eingefangen werden, können sich in einem unstabilen Zustand befinden. Eine Ladungsneuordnung kann auftreten, wenn sich eingefangene Ladungen innerhalb des zweiten Unterisolationsfilms 118 verändern können, um einen stabilen Zustand zu erreichen.
  • Elektrische Felder unter dem fünften leitfähigen Material CM5, die eingefangenen Ladungen und die Kanalschicht 114 können vor und nach einer Ladungsneuordnung variiert werden. Das heißt, eine Schwellwertspannung des Zellentransistors CT kann vor und nach einer Ladungsneuordnung variiert werden. Obwohl der Zellentransistor CT programmiert wird, um eine Zielschwellwertspannung aufzuweisen, kann die Schwellwertspannung aufgrund der Ladungsneuordnung höher oder niedriger als die Zielschwellwertspannung werden.
  • Ein Programmieren kann unter Berücksichtigung der Ladungsneuordnung vorgenommen werden, um das oben beschriebene Problem zu verringern oder zu vermeiden.
  • 9 ist ein Flussdiagramm zur Beschreibung eines Programmierverfahrens gemäß einer Ausführungsform. Mit Bezug auf die 1, 7 und 9 können bei Vorgang S110 Programmdaten, die in Speicherzellen gespeichert werden sollen, empfangen werden. Beispielsweise können Programmdaten empfangen werden. Die empfangenen Programmdaten können entsprechend einer ausgewählten Zeilenauswahlleitung und einer ausgewählten Wortleitung dazu bestimmt sein, in Speicherzellen gespeichert zu werden. Die Programmdaten können zunächst in Daten-Flipflops DL gespeichert werden, bevor sie in Speicherzellen gespeichert werden.
  • Bei Vorgang S120 kann bestimmt werden, ob die Programmdaten einer MSB-Programmierung entsprechen. Falls bestimmt wird, dass die Programmdaten nicht einer MSB-Programmierung entsprechen, können die Programmdaten bei Vorgang S140 in herkömmlicher Weise in den Speicherzellen gespeichert werden. Beispielsweise können die Programmdaten unter der Bedingung gespeichert werden, dass eine Ladungsneuordnung nicht berücksichtigt wird.
  • Falls bestimmt wird, dass die Programmdaten einer MSB-Programmierung entsprechen, können vor der MSB-Programmierung in Schritt S160 Lesevorgänge S130 und Si 50 durchgeführt werden. Bei Vorgang S130 kann an den Speicherzellen ein Lesevorgang durchgeführt werden, um einen Löschungszustand und zumindest einen Programmzustand zu bestimmen. Falls beispielsweise die MSB-Programmierung eine Wortleitung von Speicherzellen programmieren soll, die zuvor mit LSB-Daten programmiert wurden, kann an den Speicherzellen ein Lesevorgang von dieser Wortleitung durchgeführt werden, um die LSB-Daten der Wortleitung zu bestimmen. Die LSB-Daten der Speicherzellen können als Löschungszustand (z. B. LSB-Daten von „1”) und einem Programmzustand (z. B. LSB-Daten von „0”) bezeichnend sein. Ein Ausleseergebnis kann in den Daten-Flipflops DL gespeichert werden.
  • Bei Vorgang S150 kann unter Verwendung einer Mehrzahl von Zustandlesespannungen ein Zustandlesevorgang an wenigstens einem Programmzustand durchgeführt werden. Beispielsweise kann ein Zustandlesevorgang an wenigstens einem Programmzustand für jede Speicherzelle ausgeführt werden. In dem Beispiel einer MSB-Programmierung einer Wortleitung von Speicherzellen und einem Auslesen von LSB-Daten von dieser Wortleitung in Schritt S130, kann der Zustandlesevorgang von S150 eine oder mehrere Zustandsauslesungen von Speicherzellen mit LSB-Daten von „0” durchführen, d. h., an solchen Speicherzellen der Wortleitung, die zuvor während dem LSB-Programmierungsvorgang programmiert worden sind. Ein Zustandleseergebnis kann in Neuordnungs-Flipflops RL gespeichert werden.
  • Bei Vorgang S160 können MSB-Programmdaten gemäß dem Zustandleseergebnis unter Verwendung einer Mehrzahl von Überprüfungsspannungen mit unterschiedlichen Pegeln in den Speicherzellen programmiert werden. Beispielsweise können bei der MSB-Programmierung einige der Speicherzellen einer Wortleitung darauf ausgerichtet werden, sich von einem Vth-Pegel der Speicherzellen zu einem bestimmten Vth-Umfang zu verändern, um bestimmte MSB/LSB-Daten anzuzeigen (z. B. ein Vth-Umfang, der „0/0”-Daten für LSB-Daten und MSB-Daten anzeigt). Diese „0/0”-Daten-Speicherzellen können unter Verwendung verschiedener Überprüfungsspannungen programmiert werden.
  • Der Zustandlesevorgang und der Programmiervorgang in Reaktion auf das Zustandleseergebnis müssen zur Programmierung der MSB-Daten begrenzt werden. Der Zustandlesevorgang und der Programmzustand in Reaktion auf das Zustandleseergebnis können ebenso auf Programmdaten angewendet werden, die nicht MSB-Daten sind.
  • 10 ist ein Diagramm, das eine Schwellwertspannungsverteilung von Speicherzellen darstellt, wenn LSB-Daten in bestimmten Speicherzellen, wie beispielsweise bestimmte EEPROM-Speicherzellen, NOR-Flashspeicherzellen und NAND-Flashspeicherzellen programmiert werden. In 10 zeigt eine horizontale Achse eine Schwellwertspannung an, und eine vertikale Achse zeigt die Anzahl der Speicherzellen an. Die dargestellten Speicherzellen können Speicherzellen sein, die mit einer Wortleitung des Speicherfelds, wie beispielsweise einer physikalischen Seite von Speicherzellen in einem NAND-Flashspeicher verbunden sind.
  • Bevor LSB-Daten programmiert werden, können sich Speicherzellen in einem Löschungszustand E befinden. In dieser Ausführungsform und in anderen hier beschriebenen Ausführungsformen wird ein Löschungsvorgang nicht beschrieben, er kann jedoch ein beliebiger bekannter Vorgang sein. Falls die Speichervorrichtung eine Flashspeichervorrichtung ist, kann der Löschungsvorgang einen Block von Speicherzellen durch Herabsetzen ihrer Schwellwertspannungen auf einen Löschungszustand E zeitgleich löschen. Falls Speicherzellen mit dem Löschungszustand E danach mit LSB-Daten programmiert werden, können sie danach in Abhängigkeit davon, ob die LSB-Daten der Speicherzelle zum Speichern bestimmt sind, jeweils entweder einen Löschungszustand oder einen LSB-Programmzustand LP aufweisen (z. B. kann ein Löschungszustand „1”-LSB-Daten darstellen und der LSB-Programmzustand LP kann „0”-LSB-Daten darstellen). Die Speicherzellen, die in den LSB-Programmzustand LP programmiert sind, können derart programmiert sein, dass sie eine Schwellwertspannung aufweisen, die höher als eine Überprüfungsspannung VFY1.
  • Speicherzellen, die in den LSB-Programmzustand LP programmiert sind, können einer Ladungsneuordnung unterliegen. Die Ladungsneuordnung kann Schwellwertspannungen der Speicherzellen zu Abweichungen bringen. Die Schwellwertspannungen der Speicherzellen können durch andere Mechanismen als eine Ladungsneuordnung variiert werden, wie beispielsweise durch eine Ladungsableitung, Lesestörung (z. B. Ladungseinbringung aufgrund einer Auslesung) oder durch Ladungsverkupplung mit benachbarten Speicherzellen. Dies kann bedeuten, dass sich eine Schwellwertspannungsverteilung von Speicherzellen, die den LSB-Programmzustand LP aufweisen, ausweitet.
  • 11 ist ein Flussdiagramm, in dem beispielgebende Einzelheiten des Vorgangs S150 zur Durchführung eines Zustandlesevorgangs in 9 vorgesehen sind. Mit Bezug auf die 1, 9 und 11, können beim Vorgang S151 Programmzustände der Speicherzellen unter Verwendung einer normalen Zustandlesespannung ausgelesen werden, um Speicherzellen des unteren Endes zu bestimmen. Beispielsweise können Speicherzellen, die in den LSB-Programmzustand LP programmiert sind, und die als Speicherzellen ausgelesen werden, die eine Schwellwertspannung aufweisen, die niedriger als die normale Zustandlesespannung ist, als Speicherzellen des unteren Endes beurteilt werden.
  • Bei Vorgang S153 können Programmzustände der Speicherzellen unter Verwendung einer oberen Zustandlesespannung ausgelesen werden, um Speicherzellen des oberen Endes zu bestimmen. Beispielsweise können Speicherzellen, die in den LSB-Programmzustand LP programmiert sind, und die als Speicherzellen ausgelesen werden, die eine Schwellwertspannung aufweisen, die höher als die normale Zustandlesespannung ist, als Speicherzellen des oberen Endes beurteilt werden. Die obere Zustandlesespannung kann einen höheren Pegel als die normale Zustandlesespannung aufweisen.
  • Bei Vorgang S155 kann ein Zustandleseergebnis in Neuordnungs-Flipflops RL gespeichert werden. Das Zustandleseergebnis kann anzeigen, welche der Speicherzellen, die in den LSB-Programmzustand LP programmiert sind, die Speicherzellen des unteren Endes, die Speicherzellen des oberen Endes und welche weder Speicherzellen des unteren Endes noch des oberen Endes (z. B. normale Speicherzellen) sind.
  • 12 ist ein Diagramm, das ein beispielgebendes Verfahren zum Durchführen eines Zustandlesevorgangs aus 11 zeigt. Mit Bezug auf die 1, 11 und 12 kann ein Zustandlesevorgang für jeden Programmzustand (z. B. jeder Vth-Umfang, der Daten darstellt, die zuvor in die Speicherzellen programmiert wurden) durchgeführt werden. In 12 liegt lediglich ein Programmzustand, ein LSB-Programmzustand LP vor, und somit beschreibt dieses Beispiel den Zustandlesevorgang in Bezug auf den LSB-Programmzustand LP.
  • Eine Lesespannung Vrd1 kann eine Spannung sein, die verwendet wird, um solche Speicherzellen, die einen Löschungszustand E aufweisen, von solchen Speicherzellen, die einen LSB-Programmzustand LP aufweisen, zu unterscheiden. Beispielsweise kann die Lesespannung Vrd1 an einer ausgewählten Wortleitung angelegt werden, während an nicht ausgewählten Wortleitungen eine Durchgangsspannung angelegt wird (um sicher zu stellen, dass Speicherzellentransistoren, die mit den nicht ausgewählten Wortleitung verbunden sind, eingeschaltet sind). Nach oder während einem Anlegen von Ladungen an Bitleitungen, die jeweils mit den ausgewählten Speicherzellen verbunden sind, ermöglicht das Anlegen der Lesespannung Vrd1 an der ausgewählten Wortleitung, bei solchen Speicherzellen der ausgewählten Wortleitung, die einer Schwellwertspannung aufweisen, die niedriger als Vrd1 ist (solche Speicherzellen, die eingeschaltet sind), dass die Ladung (Spannung) an einer entsprechenden Bitleitung zur Masse (Erdung) abgeleitet wird, wohingegen solche Speicherzellen der ausgewählten Wortleitung, die eine Schwellwertspannung aufweisen, die höher als Vrd1 ist, ausgeschaltet bleiben, und eine Ladung an entsprechenden Bitleitungen behalten. Daher kann eine Erfassung der Ladung oder Spannung an einer Bitleitung dazu verwendet werden, einen Spannungsschwellwert (Vth) Pegel einer entsprechenden Speicherzelle, die mit der ausgewählten Wortleitung verbunden ist, zu bestimmen, und somit dazu verwendet werden, entsprechende Daten darzustellen.
  • Ein Zustandlesevorgang kann unter Verwendung einer normalen Zustandlesespannung VSRN1 durchgeführt werden. Solche Speicherzellen, die einen LSB-Programmzustand LP aufweisen und eine Schwellwertspannung aufweisen, die niedriger als die normale Zustandlesespannung VSRN1 ist, können als Speicherzellen des unteren Endes LP L beurteilt werden.
  • Ein Zustandlesevorgang kann unter Verwendung einer oberen Zustandlesespannung VSRU1 durchgeführt werden. Solche Speicherzellen, die einen LSB-Programmzustand LP aufweisen und eine Schwellwertspannung aufweisen, die höher als die obere Zustandlesespannung VSRU1, können als Speicherzellen des oberen Endes LP_U beurteilt werden. Falls kein Programmzustand vorliegt, der höher als ein LSB-Programmzustand LP ist, der zuvor in den Speicherzellen programmiert wurde (z. B. die Seite oder Wortleitung der Speicherzellen), kann jeder Speicherzelle der Speicherzellen (z. B. die Seite oder Wortleitung der Speicherzellen), die eine Schwellwertspannung aufweist, die höher als die obere Zustandlesespannung VSRU1 ist, als Speicherzelle des oberen Endes LP_U beurteilt werden.
  • Speicherzellen, die eine Schwellwertspannung aufweisen, die höher als die normale Zustandlesespannung VSRN1 ist und niedriger als die obere Zustandlesespannung VSRU1 ist, können als normale Speicherzellen LP_N beurteilt werden.
  • Wenn keine Ladungsneuordnung erzeugt wird, kann in einer Ausführungsform die normale Zustandlesespannung VSRN1 und die obere Zustandlesespannung VSRNU1 einen Pegel aufweisen, der einem Umfang einer Schwellwertspannungsverteilung der Speicherzellen mit dem LSB-Programmzustand LP entspricht. Die normale Zustandlesespannung VSRN1 kann denselben Pegel wie eine Überprüfungsspannung VFY1 aufweisen (vgl. 10), die verwendet wird, wenn Speicherzellen dazu programmiert werden, dass sie den LSB-Programmzustand LP aufweisen. Die obere Zustandlesespannung VSRU1 kann einen Pegel aufweisen, der gleich groß wie das obere Ende des Umfangs des LSB-Programmzustands LP ist, der während der Konstruktion der Speichervorrichtung eingeschätzt wird, wobei eine Einschätzung auf einem Testen von ähnlichen Speichervorrichtungen oder durch Testen der Speichervorrichtung während einem Vorgang, welcher der Herstellung nachgelagert, basiert, oder regelmäßig bestimmt wird und während einer Lebensdauer der Speichervorrichtung durch Durchführen einer Serie von schrittweisen Lesevorgängen an Daten des LSB-Programmzustands LP kurz nach einer Programmierung angepasst wird (z. B. entsprechend der höchsten Vth der Speicherzellen, die in den LSB-Programmzustand LP programmiert sind, unmittelbar oder kurz nach einem Programmieren dieser Speicherzellen).
  • Die Speicherzellen des unteren Endes LP_L können einen Schwellwertspannungspegel aufweisen, der niedriger als die normale Zustandlesespannung VSRN1 ist. Das heißt, die Speicherzellen des unteren Endes LP_L können Speicherzellen sein, deren Schwellwertspannungen aufgrund der Ladungsneuordnung oder anderen Faktoren niedriger sind.
  • Die Speicherzellen des oberen Endes LP_U können einen Schwellwertspannungspegel aufweisen, der höher als die obere Zustandlesespannung VSRU1 ist. Das heißt, die Speicherzellen des oberen Endes LP_U können Speicherzellen sein, deren Schwellwertspannungen aufgrund der Ladungsneuordnung oder anderer Faktoren höher werden. Wenn der Zustandlesevorgang ausgeführt wird, ist es möglich, die Speicherzellen des unteren Endes LP_L, deren Schwellwertspannungen aufgrund der Ladungsneuordnung niedriger sind, und die Spannungszellen des oberen Endes LP_U, deren Schwellwertspannungen aufgrund der Ladungsneuordnung höher werden, zu bestimmen. Das heißt es ist möglich, Eigenschaften der Schwellwertspannungen der Speicherzellen, die aufgrund der Ladungsneuordnung oder anderer Faktoren variieren, zu unterscheiden.
  • 13 ist ein Flussdiagramm zur Beschreibung beispielgebender Einzelheiten des Vorgangs S160 eines Programmierens von Speicherzellen mit Programmdaten in 9. Mit Bezug auf die 1, 9 und 13 können bei Vorgang S161 Bitleitungen BL eingenommen werden. Beispielsweise können die Bitleitungen BL übereinstimmend mit Daten, die in den Daten-Flipflops DL gespeichert sind, eingenommen werden. Beispielsweise können die Bitleitungen BL übereinstimmend mit Programmdaten und Daten, die vorab in Speicherzellen gespeichert sind, eingenommen werden. In Reaktion auf einen Pegel einer Einnehmungsspannung, die an den Bitleitungen angelegt wird (z. B. eine logisch hohe oder logisch niedrige Spannung), können Speicherzellen, die mit der Bitleitung verbunden sind, ausgewählt werden, um programmiert zu werden oder an einer Programmierung gehindert zu werden. Siehe z. B. US Patent Nr. 5,473,563 für ein beispielgebendes Einnehmen von Bitleitungen zum Verhindern oder Zulassen, dass Speicherzellen in einem Programmierschritt programmiert werden. Das US Patent Nr. 5,473,563 ist durch Bezugnahme auf dessen Lehre von Programmierungsvorgängen an Flashspeichern und verwandte Strukturen, sowie zur Bereitstellung beispielgebender Einzelheiten hinsichtlich Struktur, Gestalt und Vorgänge eines zweidimensionalen NAND-Flashspeichers hier miteingebunden.
  • Bei Vorgang S162 kann eine Programmierspannung VPGM an der ausgewählten Wortleitung zugeführt werden, und eine Durchgangsspannung VPASS kann an den nicht ausgewählten Wortleitungen zugeführt werden. Die Programmierspannung VPGM kann eine Spannung sein, die ausreichend ist, um zu ermöglichen, dass an den Speicherzellen der ausgewählten Wortleitung, die zur Programmierung ausgewählt sind (z. B. in Reaktion auf die Einnehmungsspannung, die an den Bitleitungen angelegt ist) ein Fowler-Nordheim-Tunneln erzeugt wird. Die Durchgangsspannung VPASS kann eine Spannung sein, die ausreichend ist, um solche Speicherzellen, die mit nicht ausgewählten Wortleitungen verbunden sind, eingeschaltet werden (z. B. Speicherzellen einer Speicherzellenzeile, die nicht mit der ausgewählten Wortleitung verbunden sind), um in diesen Speicherzellen Kanäle zu bilden.
  • Bei den Vorgängen S163, S164, S165, S166, S167 und S168 wird eine Überprüfung der Programmierung der Speicherzellen der ausgewählten Wortleitung mit verschiedenen Überprüfungsspannungen durchgeführt. Die Überprüfungsspannung, die verwendet wird, um eine Programmierung zu Überprüfen, hängt davon ab, ob die Speicherzelle zuvor als eine Speicherzelle des oberen Endes LP_U, eine normale Speicherzelle LP_N oder eine Speicherzelle des unteren Endes LP_L bestimmt wurde. Bei Vorgang S163 kann eine untere Überprüfungsspannung an der ausgewählten Wortleitung angelegt werden, und eine nicht ausgewählte Lesespannung kann an den nicht ausgewählten Wortleitungen angelegt werden. Der Pegel der unteren Überprüfungsspannung kann niedriger als eine normale Überprüfungsspannung sein. Die nicht ausgewählte Lesespannung kann eine Spannung sein, die ausreichend ist, um solche Speicherzellen, die mit den nicht ausgewählten Wortleitungen verbunden sind, einzuschalten (z. B. Speicherzellen einer Speicherzellenzeile, die nicht mit der ausgewählten Wortleitung verbunden sind), um in diesen Speicherzellen Kanäle zu bilden.
  • Bei Vorgang S164 kann ein Überprüfungsergebnis in Daten-Flipflops DL gespeichert werden, die Speicherzellen eines oberen Endes LP_U entsprechen. Eine untere Überprüfungsspannung kann an der ausgewählten Wortleitung angelegt werden, um eine Programmierung der Speicherzellen des oberen Endes LP_U zu überprüfen. Bei diesem Beispiel kann eine untere Überprüfungsspannung verwendet werden, um normale Speicherzellen LP_N und Speicherzellen des unteren Endes LP_L zu überprüfen.
  • Bei Vorgang S165 kann eine normale Überprüfungsspannung an der ausgewählten Wortleitung vorgesehen sein, um eine Programmierung der normalen Speicherzellen LP_N zu überprüfen, und eine nicht ausgewählte Lesespannung kann an den nicht ausgewählten Wortleitungen vorgesehen sein. Die normale Überprüfungsspannung kann höher als die normale Überprüfungsspannung sein und niedriger als eine obere Überprüfungsspannung. Bei Vorgang 166 kann ein Überprüfungsergebnis in Daten-Flipflops DL gespeichert werden, die den normalen Speicherzellen entsprechen. In diesem Beispiel kann die normale Überprüfungsspannung verwendet werden, um die normalen Speicherzellen LP_N zu überprüfen, wohingegen sie nicht dazu genutzt werden kann, um Speicherzellen des oberen Endes LP_U und Speicherzellen des unteren Endes LP_L zu überprüfen.
  • Bei Vorgang S167 kann eine obere Überprüfungsspannung an der ausgewählten Wortleitung angelegt werden, und eine nicht ausgewählte Lesespannung kann an den nicht ausgewählten Wortleitungen angelegt werden. Der Pegel der oberen Überprüfungsspannung kann höher als die normale Überprüfungsspannung sein. Bei Vorgang Si 68 kann ein Überprüfungsergebnis in Daten-Flipflops DL gespeichert werden, die den Speicherzellen des unteren Endes LP_L entsprechen. D. h., die obere Überprüfungsspannung kann dazu verwendet, um die Speicherzellen des unteren Endes LP_L zu überprüfen, wohingegen sie nicht dazu verwendet werden kann, um normale Speicherzellen LP_N und Speicherzellen des oberen Endes LP_U zu überprüfen.
  • Bei Vorgang S169 kann ein Programmdurchlauf beurteilt werden. Der Programmiervorgang kann enden, wenn bestimmt wird, dass alle Speicherzellen, die programmiert werden sollen, dahingehend überprüft worden sind, das sie nach ihrer entsprechenden Überprüfungsspannung auf einen Vth Pegel programmiert wurden (wie oben mit Bezug auf die Schritte S163, S165 und S167 beschrieben ist) und wie durch die Ergebnisse, die in den entsprechenden Daten-Flipflops gespeichert sind, wiedergegeben wird (wie oben mit Bezug auf die Schritte S164, S166 und S168 beschrieben ist). Die Programmierung der Wortleitung kann somit bei Schritt S169 entweder vollständig für diese Daten oder für diesen Datensatz (z. B. „0/1”) enden und bei dem nächsten Datensatz (z. B. „0/0”) fortsetzen. Falls bestimmt wird, dass einige der Speicherzellen nach ihrem entsprechenden Überprüfungspegel nicht auf den Vth Pegel programmiert worden sind, kann das Verfahren zu dem Beginn zurückkehren und die Programmierung und Überprüfung wiederholen. Die Schritte S161 bis S169 können wiederholt werden, bis eine Programmierung von allen ausgewählten Speicherzellen durch Schritt S169 (Durchlauf) bestätigt ist, oder mit einer bestimmten (z. B. vorbestimmten) Anzahl von Wiederholungen (was einen Fehler beim Programmieren der Wortleitung anzeigen kann, und einen fehlerhaften Satz von Speicherzellen oder einen „schlechten Block” von Speicherzellen anzeigen kann, die einen Austausch benötigen).
  • 14 ist ein Diagramm, das eine Schwellwertspannungsverteilung von Speicherzellen darstellt, die übereinstimmend mit einem Programmierverfahren in 13 programmiert sind. Bei diesem Beispiel sollen Speicherzellen einer ausgewählten Wortleitung mit einem Bit zweiter Wertigkeit 2SB programmiert werden. Vor einer Programmierung der Speicherzellen der ausgewählten Wortleitung mit einem Bit zweiter Wertigkeit 2SB sind die Speicherzellen der ausgewählten Wortleitung mit Bitdaten der niedrigsten Wertigkeit LSB programmiert worden und weisen entweder einen Löschungszustand E Vth (stellt einen binären logischen Wert von LSB-Daten, wie beispielsweise „1” dar) auf, oder sie sind von dem Löschungszustand E in den LSB-Programmzustand LP programmiert worden (sie stellen den anderen binären logischen Wert der LSB-Daten, wie z. B. „0” dar).
  • Mit Bezug auf die 1, 9 und 14 können Speicherzellen mit einem LSB-Programmzustand LP in einen zweiten Programmzustand P2 oder in einen dritten Programmzustand P3 programmiert werden. Speicherzellen mit einem Löschungszustand E können den Löschungszustand E aufrechterhalten oder können in einen ersten Programmzustand P1 programmiert werden. Die resultierenden Zustände (Löschungszustand und Programmzustände P1, P2 und P3) können jeweils zwei Bits der Daten (LSB-Daten und 2SB-Daten) darstellen. Beispielsweise können der Löschungszustand und die Programmzustände P1, P2 und P3 jeweils 2SB/LSB-Datenbits wie „1/1”, „0/1”, „1/0” und „0/0” darstellen.
  • Wenn Speicherzellen, die zuvor in den LSB-Programmzustand LP programmiert wurden, durch Erhöhen eines Schwellwertspannungswerts der Speicherzellen auf entweder dem P2-Programmzustand oder den P3-Programmzustand mit 2SB-Daten programmiert werden, können Speicherzellen LP_N mit dem LSB-Programmzustand LP unter Verwendung einer normalen Überprüfungsspannung VFYN1 oder VFYN2 in einen zweiten normalen Programmzustand P2_N oder einen dritten normalen Programmzustand P3_N programmiert werden. Speicherzellen des oberen Endes LP_U mit dem LSB-Programmzustand LP können unter Verwendung einer unteren Überprüfungsspannung VFYN1 oder VFYN2 in einen zweiten unteren Programmzustand P2_L oder einen dritten unteren Programmzustand P3_L programmiert werden. Speicherzellen des unteren Endes LP_L mit dem LSB-Programmzustand LP können unter Verwendung einer oberen Überprüfungsspannung VFYU1 oder VFYU2 in einen zweiten oberen Programmzustand P2_U oder einem dritten oberen Programmzustand P3_U programmiert werden. Für jede dieser Speicherzellen in dem LSB-Programmzustand (LP_L, LP und LP_U) kann das 2SB-Datenbit, das in die Speicherzelle programmiert werden soll, bestimmen, ob die Speicherzelle in den zweiten normalen Programmzustand P2 (jeweils P2_U, P2_N oder P2_L) programmiert wird, oder in den dritten normalen Programmzustand P3 (jeweils P3_U, P3_N oder P3_L) programmiert wird.
  • Der zweite untere Programmzustand P2_L, der zweite normale Programmzustand P2_N und der zweite obere Programmzustand P2_U können den zweiten Programmzustand P2 gestalten. Der dritte untere Programmzustand P3_L, der dritte normale Programmzustand P3_N und der dritte obere Programmzustand P3_U können den dritten Programmzustand P3 gestalten.
  • Die untere Überprüfungsspannung VFYL1 oder VFYL2 kann jeweils einen niedrigeren Pegel als die normale Überprüfungsspannung VFYN1 oder VFYN2 aufweisen, und die obere Überprüfungsspannung VFYU1 oder VFYU2 kann jeweils einen höheren Pegel als die normale Überprüfungsspannung VFYN1 oder VFYN2 aufweisen.
  • 15 ist ein Diagramm, das eine Schwellwertspannungsabweichung aufgrund einer Ladungsneuordnung darstellt, die an Speicherzellen erzeugt wird, die gemäß einem in 14 beschriebenen Verfahren programmiert sind. Mit Bezug auf die 1, 9 und 15 kann eine Ladungsneuordnung an Speicherzellen erzeugt werden, die in den ersten bis dritten Programmzustand P1 bis P3 programmiert sind.
  • Speicherzellen des oberen Endes LP_U, deren Schwellwertspannungen durch die Ladungsneuordnung höher werden, können in einem zweiten oder dritten unteren Programmzustand P2_L oder P3_L programmiert werden. Für Speicherzellen des oberen Endes LP_U war zuvor bestimmt worden, dass sie Ladungsneuordnungseigenschaften aufweisen, die zu einer höheren Schwellwertspannung (Vth) der Speicherzelle nach einer Ladungsneuordnung führen (z. B. hier beschriebene Zustandlesevorgänge wie diejenigen, die mit Bezug auf die 9 bis 12 beschrieben sind). Durch ein Programmierung der Speicherzellen des oberen Endes LP_U zu einem unteren Umfang des zweiten oder dritten Programmzustands P2 oder P3 (d. h. P2_L oder P3_L) können Schwellwertspannungen der Speicherzellen mit dem zweite oder dritten unteren Programmzustand P2_L oder P3_L während einer zukünftigen Ladungsneuordnung in Bezug auf diese Speicherzellen erhöht werden, sodass eine Schwellwertspannungsverteilung zu einem zweiten oder dritten normalen Programmzustand P2_N oder P3_N hin variiert.
  • Für Speicherzellen des unteren Endes LP_L, deren Schwellwertspannungen durch die Ladungsneuordnung gesenkt werden, können in einen zweiten oder dritten oberen Programmzustand P2_U oder P3_U programmiert werden. Für Speicherzellen des unteren Endes LP_L war zuvor bestimmt worden, dass sie Ladungsneuordnungseigenschaften aufweisen, die zu einer unteren Schwellwertspannung (Vth) der Speicherzelle nach einer Ladungsneuordnung führen (z. B. hier beschriebene Zustandlesevorgänge wie diejenigen, die mit Bezug auf die 9 bis 12 beschrieben sind). Durch ein Programmieren der Speicherzellen des unteren Endes LP-L zu einen höheren Umfang des zweiten oder dritten Programmzustands P2 oder P3 (d. h. P2_H oder P3_H) können die Schwellwertspannungen dieser Speicherzellen mit dem zweiten oder dritten oberen Programmzustand P2_U oder P3_U während einer zukünftigen Ladungsneuordnung in Bezug auf diese Speicherzellen gesenkt werden, sodass eine Schwellwertspannungsverteilung zu dem zweiten oder dritten normalen Programmzustand P2_N oder P3_N hin variiert.
  • Bei diesem Beispiel können Speicherzellen, deren Schwellwertspannungen aufgrund der Ladungsneuordnung erhöht werden, unter Verwendung einer Überprüfungsspannung programmiert werden, die niedriger als eine normale Überprüfungsspannung ist. Speicherzellen, deren Schwellwertspannungen aufgrund der Ladungsneuordnung gesenkt werden, können unter Verwendung einer Überprüfungsspannung programmiert werden, die höher als die normale Überprüfungsspannung ist. Falls ein Programmieren unter Verwendung von Überprüfungsspannungen vorgenommen wird, die unter Berücksichtigung einer Ladungsneuordnung bestimmt werden, kann eine Schwellwertspannungsverteilung der Speicherzellen aufgrund der Ladungsneuordnung schmaler werden, wodurch eine Datenzuverlässigkeit verbessert werden kann, womit kleinere Spannen zwischen den Programmzuständen und/oder einer erhöhten Anzahl von Programmzuständen (oder Bits/Zelle) der Speicherzellen ermöglicht werden.
  • Wenn Speicherzellen mit Multi-Bit-Daten programmiert werden, kann ein Auslesen durchgeführt werden, um die Daten zu bestimmen, die zuvor in den Speicherzellen gespeichert sind. Die 14 und 15 zeigen Lesespannungen von Vrd1, Vrd2, Vrd3, die angelegt werden können, um eine Wortleitung in einem Lesevorgang auszuwählen, um den Programmzustand (E, P1, P2 oder P3) der Speicherzellen, die mit der ausgewählten Wortleitung verbunden sind, zu bestimmen und somit die Daten der Speicherzellen auszulesen. In Abhängigkeit der Daten, die ausgelesen werden sollen (z. B. LSB oder MSB), können eine oder mehrere Auslesungen mit einer oder mehreren Lesespannungen Vrd1, Vrd2, Vrd3 erforderlich sein. Zusätzlich zu dem Auslesen zum Bestimmen der gespeicherten Daten können Zustandlesevorgänge zum Bestimmen einer Ladungsneuordnung, einer Vth-Veränderung und/oder Speicherzellen des oberen und unteren Endes von jedem Programmzustand durchgeführt werden.
  • Es wird ein Fall beschrieben, dass ein Zustandlesevorgang für jeden Programmzustand unter Verwendung von zwei Zustandlesespannungen durchgeführt wird. Allerdings ist das erfinderische Konzept nicht darauf beschränkt. Beispielsweise kann eine Auflösung beim Bestimmen der Tendenz einer Veränderung der Vth der Speicherzelle gewünscht sein. In einem solchen Fall können vier Zustandlesespannungen verwendet werden, um große Speicherzellen des oberen Endes, kleine Speicherzellen des oberen Endes, normale Speicherzellen, kleine Speicherzellen des unteren Endes und große Speicherzellen des unteren Endes zu bestimmen (die jeweils Speicherzellen mit einer Tendenz zu einer großen Vth-Zunahme, einer relativ kleinen Vth-Zunahme, einer kleinen oder keinen Vth-Veränderung, einer kleinen Vth-Abnahme und einer relativ großen Vth-Abnahme, darstellen). In diesem Fall können fünf Überprüfungsspannungen während einem Programmieren verwendet werden, die dieser Speicherzellenklassifizierung entsprechen. Andere Modifikationen sind ebenso vorgesehen. Falls beispielsweise bestimmt wird, dass sich eine Vth in eine Richtung (höher oder niedriger) verändert, die dahin tendieren kann, größer als in einer anderen Richtung zu sein, können mehr Zustandlesespannungen in dieser Richtung als in der anderen Richtung verwendet werden, um die Speicherzellen zu klassifizieren. Anderenfalls können Zustandlesespannungen verwendet werden, um lediglich Speicherzellen des oberen Endes zu bestimmen, und es kann keine Unterscheidung zwischen Speicherzellen des unteren Endes und normalen Speicherzellen vorgenommen werden. Anderenfalls können Zustandlesespannungen verwendet werden, um lediglich Speicherzellen des oberen Endes zu bestimmen, und es kann keine Unterscheidung zwischen Speicherzellen des unteren Endes und normalen Speicherzellen vorgenommen werden.
  • 16 ist ein Zeitablaufdiagramm, das Spannungen darstellt, die gemäß einem in 14 beschriebenen Programmierverfahren an einer ausgewählten Wortleitung angelegt werden. In einer Ausführungsform sind in 16 Spannungen dargestellt, die verwendet werden, um Speicherzellen in einen zweiten Programmzustand P2 zu programmieren. Mit Bezug auf die 13, 14 und 16 kann eine Programmierspannung VPGM angelegt werden, um eine Wortleitung auszuwählen. Danach können aufeinander folgend eine untere Überprüfungsspannung VFYL1, eine normale Überprüfungsspannung VFYN1 und eine obere Überprüfungsspannung VFYU1 an der ausgewählten Wortleitung angelegt werden. Das Anlegen der Programmierspannung VPGM und der Überprüfungsspannungen VFYL1, VFYN1 und VFYU1 kann eine Programmschleife bilden.
  • Nachdem eine Programmschleife ausgeführt ist, kann eine Steuereinheit 160 einer nichtflüchtigen Speichervorrichtung 100 (vergleiche 1) einen Programmdurchlauf oder einen Programmfehler beurteilen. Eine Programmierung kann bei einem Programmdurchlauf beendet werden. Falls ein Programmfehler bestimmt wird, kann eine nächste Programmsschleife durchgeführt werden.
  • In der nächsten Programmschleife kann eine Programmierspannung VPGM mit einem erhöhten Pegel angelegt werden. Danach können aufeinander folgend die Überprüfungsspannungen VFYL1, VFYN1 und VFYU1 angelegt werden. Die Programmierspannung VPGM kann bei jeder Wiederholung der Programmschleifen erhöht werden. Anderenfalls oder zusätzlich kann bei jeder Wiederholung der Programmschleifen die Länge des Anlegens der Programmierspannung VPGM erhöht werden.
  • Seitenpuffer PB können übereinstimmend mit Daten, die in Neuordnungs-Flipflops RL gespeichert sind (vergleiche 1) eine gültige Überprüfungsspannung der Überprüfungsspannungen VFYL1, VFYN1 und VFYU1 auswählen. Wenn beispielsweise Daten, die in einem Neuordnungs-Flipflop RL gespeichert sind, eine Speicherzelle des oberen Endes anzeigen, kann der Seitenpuffer PB die untere Überprüfungsspannung VFYL1 als gültige Überprüfungsspannung auswählen, und er kann andere Überprüfungsspannungen VFYN1 und VFYU1 ignorieren. Beispielsweise kann der Seitenpuffer PB für Speicherzellen des oberen Endes eine Bitleitung derart einnehmen, dass ein Wert eines Daten-Flipflops nicht verändert wird, wenn die Überprüfungsspannungen VFYN1 und VFYU1 angelegt werden.
  • Wenn in gleicher Weise Daten in einem Neuordnungs-Flipflop RL gespeichert sind, die eine normale Speicherzelle anzeigen, kann der Seitenpuffer PB die normale Überprüfungsspannung VFYN1 als gültige Überprüfungsspannung auswählen, und Lesevorgänge unter Verwendung anderer Überprüfungsspannungen VFYL1 und VFYU1 können ignoriert (nicht durchgeführt) werden. Wenn Daten in einem Neuordnungs-Flipflop RL gespeichert sind, die eine Speicherzelle des oberen Endes anzeigen, kann der Seitenpuffer PB die untere Überprüfungsspannung VFYL1 als gültige Überprüfungsspannung auswählen, und er kann Lesevorgänge unter Verwendung anderer Überprüfungsspannungen VFYN1 und VFYU1 ignorieren.
  • 17 ist ein Zeitablaufsdiagramm, das Spannungen darstellt, die gemäß einem Programmierverfahren, das die in den 13 und 14 beschriebenen Einzelheiten umfassen kann, an einer ausgewählten Wortleitung angelegt werden. Bei einer Ausführungsform bestehen abgebildete Spannungen, die zum Programmieren von Speicherzellen in zweite und dritte Programmzustände P2 und P3 verwendet werden. In Bezug auf die 13, 14 und 17 kann eine Programmierspannung VPGM an einer ausgewählten Wortleitung angelegt werden. Danach kann eine untere Überprüfungsspannung VFYL1, eine normale Überprüfungsspannung VFYN1 und eine obere Überprüfungsspannung VFYU1, eine untere Überprüfungsspannung VFYL2, eine normale Überprüfungsspannung VFYN2 und eine obere Überprüfungsspannung VFYU2 an der ausgewählten Wortleitung aufeinander folgend angelegt werden. Das Anlegen der Programmierspannung VPGM und der Überprüfungsspannungen VFYL1, VFYN1, VFYU1, VFYL2, VFYN2 und VFYU2 kann eine Programmschleife bilden.
  • Nachdem die Programmschleife ausgeführt ist, kann eine Steuereinheit 160 einer nichtflüchtigen Speichervorrichtung 100 (vergleiche 1) einen Programmdurchlauf oder einen Programmfehler bestimmen. Im Falle eines Programmdurchlaufs kann eine Programmierung abgeschlossen werden. Im Falle eines Programmfehlers kann eine zusätzliche Programmschleife ausgeführt werden. In einer nächsten Programmschleife kann eine Programmierspannung VPGM, die einen erhöhten Pegel aufweist, an der ausgewählten Wortleitung angelegt werden. Danach können aufeinander folgend die Überprüfungsspannungen VFYL1, VFYN1, VFYU1, VFYL2, VFYN2 und VFYU2 an der ausgewählten Wortleitung angelegt werden, um eine Programmierung von entsprechenden Speicherzellen der Wortleitung zu überprüfen. Ein Pegel der Programmierspannung VPGM kann in jeder aufeinander folgenden Wiederholung der Programmschleifen erhöht werden.
  • Seitenpuffer PB können eine gültige Überprüfungsspannung übereinstimmend mit Datenauswählen, die in Daten-Flipflops DL (vergleiche 1) und Neuordnungs-Flipflops RL gespeichert sind. Wenn zum Beispiel Daten, die in einem Daten-Flipflop DL gespeichert sind, einen zweiten Programmzustand P2 anzeigen, kann der Seitenpuffer PB eine Überprüfung von Lesevorgängen unter Verwendung der Überprüfungsspannungen VFYL2, VFYN2 und VFYU2 ignorieren. Falls Daten, die in einem Neuordnungs-Flipflop RL gespeichert sind, auf eine Speicherzelle des unteren Endes hinweisen, kann der Seitenpuffer PB die obere Überprüfungsspannung VFYU1 als gültige Überprüfungsspannung auswählen und Überprüfungslesevorgänge unter Verwendung der Überprüfungsspannungen VFYN1 und VFYU1 ignorieren. Wenn eine nichtausgewählte Überprüfungsspannung angelegt wird, kann der Seitenpuffer PB eine Bitleitung BL derart einnehmen, dass Daten des Daten-Flipflops DL nicht abweichen.
  • Falls Daten, die in dem Daten-Flipflop DL gespeichert sind, den zweiten Programmzustand P2 anzeigen und Daten, die in dem Neuordnungs-Flipflop RL gespeichert sind, auf eine normale Speicherzelle hinweisen, kann der Seitenpuffer BP die normale Überprüfungsspannung VFYN1 als gültige Spannung auswählen und er kann Überprüfungslesevorgänge unter Verwendung der Überprüfungsspannungen VFYL1, VFYU1, VFYL2, VFYN2 und VFYU2 ignorieren.
  • Falls Daten, die in dem Daten-Flipflop DL gespeichert sind, den zweiten Programmzustand P2 anzeigen und Daten, die in dem Neuordnungs-Flipflop RL gespeichert sind, auf eine Speicherzelle des oberen Endes hinweisen, kann der Seitenpuffer BP die untere Überprüfungsspannung VFYL1 als gültige Spannung auswählen und er kann Überprüfungslesevorgänge unter Verwendung der Überprüfungsspannungen VFYN1, VFYU1, VFYL2, VFYN2 und VFYU2 ignorieren.
  • Falls Daten, die in dem Daten-Flipflop DL gespeichert sind, einen dritten Programmzustand P3 anzeigen, und Daten, die in dem Neuordnungs-Flipflop RL gespeichert sind, auf eine Speicherzelle des unteren Endes sind hinweisen, kann der Seitenpuffer BP die obere Überprüfungsspannung VFYU2 als gültige Spannung auswählen, und er kann Überprüfungslesevorgänge unter Verwendung der Überprüfungsspannungen VFYL1, VFYN1, VFYU1, VFYL2 und VFYN ignorieren.
  • Falls Daten, die in den Daten-Flipflop DL gespeichert sind, den dritten Programmzustand P3 anzeigen und Daten, die in dem Neuordnungs-Flipflop RL gespeichert sind, auf eine normale Speicherzelle hinweisen, kann der Seitenpuffer BP die normale Überprüfungsspannung VFYN2 als gültige Spannung auswählen, und er kann Überprüfungslesevorgänge unter Verwendung der Überprüfungsspannungen VFYL1, VFYN1, VFYU1, VFYL2 und VFYU2 ignorieren.
  • Falls Daten, die in den Daten-Flipflop DL gespeichert sind, den dritten Programmzustand P3 anzeigen und Daten, die in dem Neuordnungs-Flipflop RL gespeichert sind auf eine Speicherzelle des oberen Endes hinweisen, kann der Seitenpuffer BP die untere Überprüfungsspannung VFYL2 als gültige Spannung auswählen und Überprüfungslesevorgänge unter Verwendung der Überprüfungsspannungen VFYL1, VFYN1, VFYU1, VFYN2 und VFYU2 ignorieren.
  • 18 ist ein Diagramm, das ein Anlegen einer Schwellwertspannungsverteilung der Speicherzellen darstellt, die gemäß einem Programmierverfahren in 13 programmiert sind. Im Vergleich mit Schwellwertspannungsverteilungen in 14 kann ein Zustandlesevorgang in Bezug auf Speicherzellen durchgeführt werden, die einen Löschungszustand E aufweisen, und Speicherzellen des unteren Endes, normale Speicherzellen und Speicherzellen des oberen Endes in dem Löschungszustand E können bestimmt werden.
  • Speicherzellen des unteren Endes, die einen Löschungszustand E aufweisen, können während einem Programmieren eines zweiten Bits 2SB in einen ersten oberen Programmzustand P1_U programmiert werden. Normale Speicherzellen, die den Löschungszustand E aufweisen, können in einen ersten normalen Programmzustand P1_N programmiert werden, und Speicherzellen des unteren Endes, die den Löschungszustand E aufweisen, können in einen ersten unteren Programmzustand P1_L programmiert werden. Der erste untere Programmzustand P1_L, der erste normale Programmzustand P1_N und der erste obere Programmzustand P1_U können einen ersten Programmzustand P1 bilden.
  • Ein Zustandlesevorgang kann zusätzlich in Bezug auf einen Löschungszustand E durchgeführt werden, und ein Programmiervorgang kann unter Berücksichtigung einer Ladungsneuordnung, die aus dem Zustandlesevorgang bestimmt wird, ausgeführt werden. Für eine zukünftige Ladungsneuordnung können Schwellwertverteilungen der ersten bis dritten Programmzustände P1 bis P3 verschmälert werden.
  • 19 ist ein Diagramm, das eine andere Anwendung der Schwellwertspannungsverteilung der Speicherzellen darstellt, die gemäß einem Programmierverfahren in den 10 und 13 programmiert sind. Ein Zustandlesevorgang kann vor der Durchführung einer LSB-Programmierung in Bezug auf die Speicherzellen durchgeführt werden, die einen Löschungszustand E aufweisen, und Speicherzellen des unteren Endes, normale Speicherzellen und Speicherzellen des oberen Endes können bestimmt werden.
  • Speicherzellen, die einen Löschungszustand E aufweisen, können den Löschungszustand aufrecht erhalten oder durch Programmierung eines Bits mit niedrigster Wertigkeit in einen LSB-Programmzustand LP programmiert werden. Bei denjenigen Speicherzellen, die in den LSB-Programmzustand LP programmiert werden sollen, können Speicherzellen des unteren Endes, die den Löschungszustand E aufweisen, in einen ersten oberen Programmzustand LP1_U programmiert werden; normale Speicherzellen, die den Löschungszustand E aufweisen, können in einen ersten normalen Programmzustand LP1_N programmiert werden; und Speicherzellen des oberen Endes, die den Löschungszustand E aufweisen, können in einen ersten unteren Programmzustand LP1_L programmiert werden. Der erste Programmzustand LP1_L, der erste normale Programmzustand LP1_N und der obere Programmzustand LP1_U können einen LSB-Programmzustand LP bilden. Es können verschieden Überprüfungsspannungen verwendet werden, um eine Programmierung in die verschiedenen LSB-Programmunterzustände (den ersten unteren Programmzustand LP1_L in normalen Programmzustand LP1_N und den ersten oberen Programmzustand LP1_U) zu bestätigen.
  • Ein Zustandlesevorgang kann zusätzlich in Bezug auf einen Löschungszustand E durchgeführt werden, bevor eine LSB-Programmierung durchgeführt wird, und ein Programmiervorgang kann unter Berücksichtigung einer Neuordnung ausgeführt werden.
  • Ein Zustandlesevorgang und ein Programmiervorgang, der eine Ladungsneuordnung zum Programmieren eines zweiten Bits 2SB in den Speicherzellen berücksichtigt, ist mit Bezug auf die 14 bis 19 beschrieben worden. Allerdings ist das erfinderische Konzept nicht hierauf beschränkt. Beispielsweise kann ein Zustandlesevorgang und ein Programmiervorgang unter Berücksichtigung einer Neuordnung erneut durchgeführt werden, um ein drittes Bit, ein viertes Bit, usw. (welches ein Bit höchster Wertigkeit sein kann) zu programmieren. Dies kann zusätzlich zu einer Berücksichtigung einer Ladungsneuordnung geschehen, wenn das zweite Bit 2SB programmiert wird, oder das zweite Bit 2SB (oder andere Bits) kann ohne Berücksichtigung einer Ladungsneuordnung programmiert werden.
  • 20 ist ein Blockdiagramm, das eine nichtflüchtige Speichervorrichtung gemäß einer wiederum anderen Ausführungsform schematisch darstellt. Mit Bezug auf 20 kann eine nichtflüchtige Speichervorrichtung 200, ein Speicherzellenfeld 210, eine Adressendecodiereinheit 220, eine Seitenpuffereinheit 230, eine Dateneingangs/ausgangseinheit 240, eine Spannungserzeugungseinheit 250 und eine Steuereinheit 260 umfassen. Wie bei allen Ausführungsformen kann die Speichervorrichtung 200 ein Halbleiterchip oder eine Gruppe von Chips (wie z. B. ein Stapel von Chips) innerhalb eines Halbleiterchips sein.
  • Das Speicherzellenfeld 210 umfasst einen Nutzerdatenbereich 211 und einen Pufferbreich 213. Die nichtflüchtige Speichervorrichtung 200 kann mit derjenigen in 1 im Wesentlichen identisch sein, außer dass eine Programmierung mit drei Schritten unter Verwendung des Pufferbereichs 213 durchgeführt wird. Der Pufferbereich 213 kann mit dem Speicherzellenfeld einteilig ausgebildet sein. Falls die Speichervorrichtung 200 beispielsweise ein Halbleiterspeicherchip ist, kann der Speicherbereich 213 als ein Teil des Halbleiterchips ausgebildet sein, und er kann aus denselben Speicherzellentypen wie die Speicherzellen des Nutzerdatenbereichs 211 gebildet sein. Der Speicherbereich 213 kann an einer vorbestimmten physikalischen Position des Speicherzellengfelds 210 ausgebildet sein, oder durch ein Blockmanagementsystem (das eine Modifikation der Blöcke des Speichers, welche den Pufferbereich 213 und den Nutzerdatenbereich 211 bilden, ermöglicht).
  • 21 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer anderen Ausführungsform darstellt. Mit Bezug auf die 20 und 21 kann bei Vorgang S210 ein Löschungszustand und zumindest ein Programmzustand der Speicherzellen des Nutzerdatenbereichs 311 durch ein Auslesen von Speicherzellen eines Pufferbereichs 213 bestimmt werden. Der Pufferbereich 213 kann die derzeit gespeicherten Daten (z. B. LSB- und 2SB-Daten) der Speicherzellen (z. B. eine Wortleitung), die mit einem zusätzlichen Bit von Daten (z. B. MSB-Daten) programmiert werden sollen, speichern. Daten (z. B. LSB- und 2SB-Daten) können entweder durch Auslesen der Speicherzellen (z. B. eine Wortleitung) bevor diese mit einem nachfolgenden Bit programmiert werden (z. B. vor einer groben Programmierung, die ein MSB-Datenbit hinzufügt) vorab in dem Pufferbereich gespeichert werden. Anderenfalls können Daten (z. B. LSB- und 2SB-Daten) vorab in dem Pufferbereich 213 gespeichert werden, während der Programmierung der Wortleitung mit diesen Daten (z. B. den LSB- und 2SB-Daten) vor einer Programmierung des darauffolgenden Bits (z. B. MSB-Daten). Anderenfalls kann der Pufferbereich 213 alle Daten speichern, die in die Speicherzelle (z. B. LSB-, 2SB- und MSB-Daten) gespeichert werden sollen.
  • Bei Vorgang S220 kann beurteilt werden, ob ein feiner Programmiervorgang durchgeführt werden soll. Falls nicht, setzt das Verfahren bei Vorgang S230 fort, bei dem eine Programmierung mit einem Schritt oder eine grobe Programmierung vorgenommen wird. Eine 1-Schritt und eine grobe Programmierung kann eine Programmierung bei hoher Programmierspannung VPGM oder für eine längere Impulsdauer der Programmierspannung VPGM im Vergleich zu einer feinen Programmierung umfassen. Der grobe Programmzustand (z. B. CP1 bis CP7 aus 22A) kann einen Vth-Verteilungsumfang aufweisen, der größer als die Programmzustände sind, die aus der feinen Programmierung resultieren. Die 1-Schrittprogrammierung kann lediglich einen einzelnen Programmierungszyklus oder mehrere Programmierungszyklen umfassen.
  • Falls der feine Programmiervorgang durchgeführt werden soll, setzt das Verfahren bei Vorgang S240 fort, bei dem ein Zustandlesevorgang unter Verwendung einer Mehrzahl von Zustandlesespannungen in einer Weise, wie sie an anderer Stelle in dieser Offenbarung beschrieben sind, an wenigstens einem Programmzustand durchgeführt wird (einer oder mehrere der groben Programmzustände CP1 bis CP7 aus 22A). Danach kann bei Vorgang S240 ein feiner Programmiervorgang unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die verschiedene Pegel aufweisen, gemäß dem Zustandleseergebnis durchgeführt werden. Die US Patent Offenlegungsschrift Nr. 2011/0222342 ist durch Bezugnahme auf ihre Lehre der 1-Schrittprogrammierung, der groben Programmierung und der feinen Programmierung sowie der Verwendung eines Pufferbereichs in Verbindung mit einer Speicherzellenprogrammierung hierin miteingebunden.
  • 22A ist ein Diagramm, das eine Schwellwertspannungsverteilung von Speicherzellen gemäß einem Programmierverfahren in 21 darstellt. Mit Bezug auf die 20 bis 22A kann eine 1-Schrittprogrammierung in Bezug auf die Speicherzellen vorgenommen werden. Die 1-Schrittprogrammierung kann ohne einen Zustandlesevorgang und einen Programmiervorgang unter Verwendung eines Zustandleseergebnisses durchgeführt werden. 1-Bit oder 2-Bit Daten können in eine Speicherzelle eines Nutzerdatenbereichs 211 durch die 1-Schrittprogrammierung programmiert werden. Auf eine Durchführung der 1-Schrittprogrammierung hin können Programmdaten ferner in einen Pufferbereich 213 gespeichert werden. Beispielsweise können die Programmdaten in Einzelpegelzellen (SSLC) des Pufferbereichs 213 gespeichert werden.
  • Falls die 1-Schrittprogrammierung durchgeführt wird, können Speicherzellen des Nutzerdatenbereichs 211, die einen Löschungszustand E aufweisen, einen Löschungszustand E aufrechterhalten, oder sie können in einen des ersten bis dritten Programmzustands OP1 bis OP3 programmiert werden. Wenn die 1-Schrittprogrammierung in vier Zuständen (z. B. Löschungszustand E und den ersten bis dritten Programmzustand OP1 bis OP3) resultiert, kann die 1-Schrittprogrammierung die Speicherzellen basierend auf Zwei-Bitdaten (oder zwei Datenseiten für eine physikalische Seite des Speichers) wie zum Beispiel ein LSB und ein 2SB-Bit programmieren (und somit jede der Speicherzellen für einen dieser vier Zustände auswählen).
  • Eine Ladungsneuordnung kann auftreten nachdem die 1-Schrittprogrammierung ausgeführt ist. Falls eine Ladungsneuordnung auftritt, kann eine Schwellwertspannungsverteilung des ersten bis dritten Programmzustands OP1 bis OP3 ausgeweitet werden.
  • Eine grobe Programmierung kann nach der 1-Schrittprogrammierung an 1-Schritt programmierten Speicherzellen durchgeführt werden. Eine grobe Programmierung kann zu jeder Speicherzelle ein zusätzliches Bit von Informationen (z. B. ein MSB-Bit) hinzufügen. Eine grobe Programmierung kann ein Auslesen des Zustands der Speicherzelle in dem Nutzerdatenbereich 211 umfassen, um die existierenden Daten (z. B. Zwei-Bitdaten), zu denen das zusätzliche Bit von Informationen hinzugefügt werden soll, zu bestimmen, oder die Zwei-Bitdaten können durch ein Auslesen von Speicherzellen des Pufferbereichs 213 (die mit einem Speichern der Zwei-Bitdaten fortfahren, bis eine Programmierung abgeschlossen ist) bestimmt werden. Anderenfalls können die zuvor gespeicherten Daten (z. B. Zwei-Bitdaten) von einer anderen Quelle als dem Pufferbereich 213 erlangt werden, wie zum Beispiel einem Pufferspeicher in einem Speichercontroller, der die Vorgänge der Speichervorrichtung 300 steuert. Die grobe Programmierung kann gemäß der Bestimmung der Zwei-Bitdaten, die zuvor gespeichert wurden, und Programmdaten (z. B. das zusätzliche Bit von Daten für jede Speicherzelle), die programmiert werden sollen, durchgeführt werden. Falls die grobe Programmierung durchgeführt wird, können Speicherzellen einen Löschungszustand E aufrechterhalten oder sie können in einen ersten bis siebten groben Programmzustand CP1 bis CP7 programmiert werden. Wenn die grobe Programmierung durchgeführt wird, können die Programmdaten ferner in Speicherzellen des Pufferbereichs 213 gespeichert werden. Beispielsweise können die Programmdaten in Einzelpegelzellen (SLC) des Pufferbereichs 213 gespeichert werden.
  • Nachdem die grobe Programmierung durchgerührt ist, kann eine Ladungsneuordnung auftreten. Dies kann zu einer Aufweitung von Schwellwertspannungsverteilungen des ersten bis siebten groben Programmzustands CP1 bis CP7 führen. In einigen Beispielen können sich die Schwellwertspannungsverteilungen des ersten bis siebten groben Programmzustands CP1 bis CP7 teilweise gegenseitig überschneiden.
  • Eine feine Programmierung kann in Bezug auf grob programmierte Speicherzellen durchgeführt werden. Wie in 21 dargestellt ist, kann die feine Programmierung einen Zustandlesevorgang und einen Programmiervorgang unter Verwendung eines Zustandleseergebnisses begleiten.
  • Ein Löschungszustand und wenigstens ein Programmzustand der Speicherzellen des Nutzerdatenbereichs 211 können durch Auslesen von Speicherzellen des Pufferbereichs 213 bestimmt werden. Der Pufferbereich 213 kann alle Daten (z. B. drei Datenseiten) der Speicherzellen, die programmiert werden, speichern, und diese Daten können verwendet werden, um den Löschungs- und Programmzustand von jeder der Speicherzellen, die programmiert werden, zu bestimmen. Ein Zustandlesevorgang kann in Bezug auf den wenigsten einen Programmzustand (oder einen Löschungszustand) durchgeführt werden. Falls der Zustandlesevorgang durchgeführt wird, können Speicherzellen des unteren Endes, normale Speicherzellen und Speicherzellen des oberen Endes von jedem Programmzustand (oder einem Löschungszustand) bestimmt werden. Beispielsweise können Speicherzellen dadurch bestimmt werden, dass sie in einem groben Programmierungszustand CP1 programmiert worden sind, indem Informationen in dem Speicherbereich 213 referenziert werden. Wenn sich einer oder mehrere benachbarte grobe Programmzustände CP1 bis CP7 überschneiden, kann es unpraktisch sein, den groben Programmzustand, in den eine Speicherzelle zuvor programmiert worden ist, durch Auslesen der Speicherzelle zu bestimmen. Wenn beispielsweise eine Speicherzelle einen Vth-Wert in einem Vth-Verteilungsbereich aufweist, der von groben Programmzuständen CP1 und CP2 geteilt wird (nach einer Ladungsneuordnug), kann es unpraktisch sein, zu bestimmen, ob die Speicherzelle zuvor in den groben Programmzustand CP1 oder den groben Programmzustand CP2 programmiert worden ist. Eine Bezugnahme auf Informationen (z. B. die originalen Drei-Bitdaten der Speicherzelle) kann referenziert werden, um den groben Programmzustand zu bestimmen, in den die Speicherzelle zuvor programmiert wurde.
  • Speicherzellen können gemäß einem Zustandleseergebnis unter Verwendung einer Mehrzahl von Überprüfungsspannungen programmiert werden. Die Speicherzellen des unteren Endes können unter Verwendung einer oberen Überprüfungsspannung programmiert werden, die normalen Speicherzellen können unter Verwendung einer normalen Überprüfungsspannung programmiert werden, und die Speicherzellen des oberen Endes können unter Verwendung einer unteren Überprüfungsspannung programmiert werden. Speicherzellen können in einen ersten bis siebten Programmzustand P1 bis P7 programmiert werden. In einer alternativen Ausführungsform können die Speicherzellen des oberen Endes nicht in den feinen Programmiervorgang programmiert werden. Der feiner Programmiervorgang kann an Speicherzellen des unteren Endes und an normalen Speicherzellen durchgeführt werden, und die Vth-Pegel der Speicherzellen des oberen Endes können auf den Pegeln bleiben, die aus dem groben Programmierungsvorgang resultieren (obwohl eine zusätzliche Ladungsneuordnung, eine Kupplung mit anderen Speicherzellen usw. deren Vth-Pegel ändern kann). 22B stellt ein Beispiel dieser Alternative mit Bezug auf die feine Programmierung des groben Programmierungszustands CP1 dar, sie stellt Speicherzellen des oberen Endes UT in einem groben Programmzustand CP1 dar, die in ihrem groben Programmzustand bleiben, sowie normale Speicherzellen N, die in dem feinen Programmiervorgang mit einer niedrigen Überprüfungsspannung von VFYN verifiziert werden, und Speicherzellen des unteren Endes LT, die in dem feinen Programmiervorgang mit einer oberen Überprüfungsspannung VFYU verifiziert werden. In diesem Beispiel sind die Schwellwertspannungsumfänge nach einer feinen Programmierung der Speicherzellen des unteren Endes, der normalen sowie des oberen Endes aus einem groben Programmierungszustand getrennt gezeigt, allerdings können sich diese überschneiden, wie in 22A gezeigt ist. Obwohl zudem die Alternative aus 22B die Verwendung einer Überprüfungsspannung für Speicherzellen des oberen Endes in Verbindung mit einer Modifikation der Ausführungsform aus 22A weglässt, ist es vorgesehen, dass diese Alternative ebenso auf andere hier beschriebenen Ausführungsformen anwendbar ist.
  • Nachdem die feine Programmierung durchgeführt ist, kann eine Ladungsneuordnung erzeugt werden. In diesem Fall können Schwellwertladungsverteilungen des ersten bis siebten Programmzustands P1 bis P7 schmaler werden. D. h. die Datenzuverlässigkeit der nichtflüchtigen Speichervorrichtung 200 kann verbessert werden. Lesespannungen von Vrd1, Vrd2, ... Vrd7 können auf eine ausgewählte Wortleitung in einem Auslesezustand angelegt werden, um den Programmzustand (E, P1, P2,... P7) der Speicherzellen, die mit der ausgewählten Wortleitung verbunden sind, zu bestimmen und somit die Daten der Speicherzellen zu lesen. In Abhängigkeit der Daten, die gelesen werden sollen (z. B. LSB oder MSB), können eine oder mehrere Auslesungen mit einer oder mehreren Lesespannungen Vrd1, Vrd2, ... Vrd7 erforderlich sein. Lesespannungen Vrd1, Vrd2, ... Vrd7 können so ausgelegt sein, dass sie mittig zwischen benachbarten Schwellwertumfangen liegen, welche die Programmzustände (E, P1, P2, ... P7) darstellen. Die Lesespannungen von dieser und anderen Ausführungsformen, die gezeigt werden, liegen außerhalb des Umfangs der Mehrzahl der Überprüfungsspannungen, die mit einem einzelnen Programmzustand zusammenhängen (z. B. sind sie nicht in die Überprüfungsspannungen eingeschoben, die mit einem einzelnen Programmzustand, wie z. B. einer von E, P1, P2, ... P7 zusammenhängen). Allerdings kann es angebracht sein, zuzulassen, dass die Lesespannungen Werte innerhalb des Umfangs der Überprüfungsspannungen aufweisen, die mit einem einzelnen Programmzustand zusammenhängen.
  • 23 ist ein Blockdiagramm, das eine nichtflüchtige Speichervorrichtung gemäß einer wiederum anderen Ausführungsform darstellt. Mit Bezug auf 23 kann eine nichtflüchtige Speichervorrichtung 300 ein Speicherzellenfeld 310, eine Adressendekodiereinheit 320, eine Seitenpuffereinheit 330, eine Dateneingangs/Ausgangseinheit 340, eine Spannungserzeugungseinheit 350 und eine Steuereinheit 360 umfassen.
  • Das Speicherzellenfeld 310 kann einen Nutzerdatenbereich 311 und einen ergänzenden Bereich 313 umfassen. Die nichtflüchtige Speichervorrichtung 300 kann mit derjenigen in 1 im Wesentlichen identisch sein, außer dass ein Zustandleseergebnis in dem ergänzenden Bereich 313 programmiert wird. Der ergänzende Bereich 313 kann mit dem Speicherzellenfeld einteilig ausgebildet sein. Falls die Speichervorrichtung 300 z. B. ein Halbleiterspeicherchip ist, kann ein ergänzender Bereich 313 als ein Teil des Halbleiterchips ausgebildet sein, und er kann von demselben Speicherzellentypen wie die Speicherzellen des Nutzerdatenbereichs 311 ausgebildet sein. Der ergänzende Bereich 313 kann an einer vorbestimmten physikalischen Position des Speicherzellenfelds 310 ausgebildet sein oder durch ein Blockmanagementsystem bestimmt werden.
  • 24 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer wiederum anderen Ausführungsform darstellt. Mit Bezug auf 24 können bei Vorgang S310 die ersten Programmdaten in Speicherzellen programmiert werden. Beispielsweise können die ersten Programmdaten empfangen werden, Daten, die zuvor in Speicherzellen programmiert sind, können gelesen werden, ein Zustandlesevorgang kann durchgeführt werden, und erste Programmdaten können gemäß den ersten Programmdaten, dem Ausleseergebnis und dem Zustandleseergebnis gespeichert werden.
  • Bei Vorgang S320 kann das Zustandleseergebnis in einem ergänzenden Bereich 313 gespeichert werden.
  • Bei Vorgang S330 können zweite Programmdaten, die in den Speicherzellen programmiert werden sollen, empfangen werden. Beispielsweise können die zweiten Programmdaten obere Bitdaten sein, die nachfolgend auf die ersten Programmdaten programmiert werden sollen. Anderenfalls können zweite Programmdaten niedrige Bitdaten sein, die programmiert werden sollen, nachdem Speicherzellen gelöscht sind.
  • Bei Vorgang S340 kann ein Löschungszustand und wenigstens ein Programmzustand durch Auslesen von Speicherzellen beurteilt werden. Der Vorgang S340 kann dem Vorgang S120 in 9 entsprechen.
  • Bei Vorgang S350 kann aus dem ergänzenden Bereich 313 ein Zustandleseergebnis ausgelesen werden. Ein Zustandleseergebnis, das bei Vorgang S320 in den ergänzenden Bereich 313 programmiert ist, kann bei Vorgang S350 ausgelesen werden. Das Zustandleseergebnis, das somit ausgelesen wird, kann in Neuordnungs-Flipflops RL gespeichert werden.
  • Bei Vorgang S360 können die zweiten Programmdaten unter Verwendung von einer Mehrzahl von Überprüfungsspannungen, welche übereinstimmend mit dem Zustandleseergebnis verschiedene Pegel aufweisen, in Speicherzellen gespeichert werden. Der Vorgang S360 kann dem Vorgang S150 in 9 entsprechen.
  • Wie oben stehend beschrieben, kann eine Neuordnungs-Charakteristik von Speicherzellen über einen Zustandlesevorgang beurteilt werden und ein Zustandleseergebnis kann in dem ergänzenden Bereich 313 eines Speicherzellenfeldes 310 programmiert werden. Wenn danach die Daten in den entsprechenden Speicherzellen programmiert sind, kann eine Neuordnungs-Charakteristik gemäß einem Zustandleseergebnis, das in den ergänzenden Bereich 313 programmiert ist, bestimmt werden, und es kann ein Programmiervorgang durchgeführt werden. Die Verwendung von Zustandleseergebnissen, die in einem ergänzenden Bereich 313 gespeichert sind, kann bei einer Vielzahl von Programmierungsvorgängen eine Nutzung von Zustandsergebnissen ermöglichen, ohne dass es erforderlich wird, eine Mehrzahl von Zustandlesevorgängen durchzuführen (z. B. für jede Speicherzelle einer physikalischen Seite der Speicherzellen kann eine Mehrzahl von Programmierungsvorgängen an der Speicherzelle ein Zustandleseergebnis verwenden, das in dem ergänzenden Bereich 313 gespeichert ist, und das durch einen einzelnen Zustandlesevorgang der Speicherzelle erlangt wird). Es kann ebenso möglich sein, die Zustandleseergebnisse, die in dem ergänzenden Bereich programmiert sind, mit zukünftigen Zustandleseergebnissen zu modifizieren. Somit ist es möglich, eine nichtflüchtige Speichervorrichtung 300 mit einer verbesserten Datenzuverlässigkeit sowie ein Programmierverfahren hierfür zu schaffen.
  • 25 ist ein Blockdiagramm, das eine nichtflüchtige Speichervorrichtung gemäß einer wiederum anderen Ausführungsform schematisch darstellt. Mit Bezug auf 25 kann eine nichtflüchtige Speichervorrichtung 400 ein Speicherzellenfeld 410, eine Adressendekodiereinheit 420, eine Seitenpuffereinheit 430, eine Dateneingangs/Ausgangseinheit 440, eine Spannungserzeugungseinheit 450 und einen Steuereinheit 460 umfassen.
  • Das Speicherzellenfeld 410 kann einen Nutzerdatenbereich 411 und einen Testdatenbereich 413 umfassen. Die nichtflüchtige Speichervorrichtung 400 kann mit derjenigen in 1 im Wesentlichen identisch sein, außer dass eine Auslesung in Bezug auf den Testdatenbereich 413 ohne Durchführung eines Zustandlesevorgangs vorgenommen wird.
  • Der Testdatenbereich 413 kann Informationen speichern, die mit einer Neuordnungs-Charakteristik von Speicherzellen in dem Nutzerdatenbereich 411 zusammenhängen. In einer anderen Ausführungsform können Speicherzellen des Nutzerdatenbereichs 411 in der nichtflüchtigen Speichervorrichtung 400 getestet werden, und ein Testergebnis kann in den Testdatenbereich 413 programmiert werden.
  • 26 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer wiederum anderen Ausführungsform darstellt. Mit Bezug auf die 25 und 26 werden bei Vorgang S410 Daten empfangen, die in Speicherzellen eines Nutzerdatenbereichs 411 gespeichert werden sollen. Der Vorgang S410 kann dem Vorgang S110 in 9 entsprechen.
  • In Vorgang S420 können Speicherzellen in dem Nutzerdatenbereich ausgelesen werden, sodass ein Löschungszustand und wenigstens ein Programmzustand beurteilt werden kann. Der Vorgang S420 kann dem Vorgang S120 in 9 entsprechen.
  • Bei Vorgang S430 kann ein Lesevorgang in Bezug auf Speicherzellen eines Testdatenbereichs 413, die Speicherzellen des Nutzerdatenbereichs 411 entsprechen ausgeführt werden. Z. B. kann ein Lesevorgang in Bezug auf Speicherzellen durchgeführt werden, die Informationen speichern, die mit einer Neuordnungs-Charakteristik von Speicherzellen des Nutzendatenbereichs 411 zusammenhängen.
  • Bei Vorgang S440 können Programmdaten unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die basierend auf einem Ausleseergebnis von Speicherzellen des Testdatenbereichs 413 verschiedene Pegel aufweisen, in Speicherzellen des Nutzendatenbereichs 411 gespeichert werden.
  • Wie Bezug auf die 25 und 26 beschrieben ist, kann eine Neuordnungs-Charakteristik von Speicherzellen durch ein Testen erfasst werden, und Informationen, welche die Neuordnungs-Charakteristik anzeigen, können in den Testdatenbereich 413 programmiert werden. Ein Testen kann als Teil eines Herstellungsprozesses auftreten (z. B. vor einem Verpacken der Speichervorrichtung oder nach einem Verpacken der Speichervorrichtung jedoch vor Bestimmung einer Verpackungsbeschädigung oder vor einem Verschicken an eine dritte Partei nach dem Verpacken). Anderenfalls oder zusätzlich kann ein Testen als ein Hintergrundvorgang durchgeführt werden, z. B. wenn auf die Speichervorrichtung nicht zugegriffen wird. Z. B. können Blöcke in einer NAND-Flashspeichervorrichtung (z. B. freie Blöcke) Testdaten aufweisen, die in physikalische Seiten der Blöcke eingeschrieben sind, die dann anschließend mit Zustandlesevorgängen ausgelesen werden, um Neuordnungs-Charakteristiken von Speicherzellen der physikalischen Seiten zu bestimmen. Testdaten können für jede Speicherzelle gespeichert sein, oder sie können für eine Gruppe von Speicherzellen gespeichert sein (z. B. für alle Speicherzellen innerhalb eines bestimmten physikalischen Bereichs). Ein Programmiervorgang auf dem Nutzerdatenbereich 411 kann hinsichtlich einer Neuordnung basierend auf Informationen durchgeführt werden, die mit der Neuordnungs-Charakteristik, die in dem Testdatenbereich 413 programmiert ist, zusammenhängen.
  • 27 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer wiederum anderen Ausführungsform darstellt. Mit Bezug auf die 25 und 27 können bei Vorgang S510 erste Daten empfangen und in erste Speicherzellen, die mit einer ersten Wortleitung verbunden sind, programmiert werden.
  • Bei Vorgang S520 können zweite Daten empfangen und in zweite Speicherzellen, die mit einer zweiten Wortleitung verbunden sind, die mit der ersten Wortleitung, die mit den ersten Speicherzellen verbunden ist, benachbart ist, programmiert werden.
  • Der Vorgang S530 kann eine Zustandsauslesung an Programmzuständen von den Daten, die in den ersten Speicherzellen programmiert sind, unter Verwendung einer Mehrzahl von Zustandlesespannungen durchgeführt werden. Die Zustandsauslesung kann in ähnlicher Weise mit derjenigen, die in Bezug auf 12, 22A beschrieben ist, oder in Bezug auf andere hier beschriebene, durchgeführt werden.
  • Bei Vorgang S540 können dritte Daten empfangen werden und unter Verwendung einer Mehrzahl von Überprüfungsspannungen für jeden Programmzustand (oder für einen oder weniger als alle Programmzustände) in den ersten Speicherzellen, die mit der ersten Wortleitung verbunden sind, programmiert werden. Die resultierenden Programmzustände können die Kombination von ersten und dritten Daten darstellen. Z. B. können die ersten Daten LSB-Daten und 2SB-Daten sein und zu Programmzuständen E, OP1, OP2 und OP3 führen, wie in 22A nach der Programmierung bei Vorgang S510 gezeigt ist. Die dritten Daten können MSB-Daten sein und die Programmierung bei Vorgang S540 kann zu Programmzuständen E und P1 bis P7 führen, wie in 22A gezeigt ist (grobe Programmierung, die in Bezug auf 22A beschrieben ist, kann ebenso durchgeführt oder nicht durchgeführt werden). Bei Vorgang S540 kann bei der Auswahl der Überprüfungsspannung für jede Speicherzelle sowohl das Ergebnis des Zustandlesevorgangs bei Vorgang S530 als auch die zweiten Daten, die in den zweiten Speicherzellen programmiert sind, berücksichtigt werden. Die zweiten Daten können entweder vor dem Schritt S540 aus der zweiten Wortleitung ausgelesen werden, oder sie können nach der Programmierung der zweiten Daten in den zweiten Speicherzellen bei Vorgang S520 in Seitenpuffer-Flipflops wie den Neuordnungs-Flipflops RL verbleiben. Zweite Daten der zweiten Wortleitung können verwendet werden, wenn eine Überprüfungsspannung bestimmt wird, die zum Programmieren der dritten Daten in den Speicherzellen der ersten Wortleitung verwendet wird. Z. B. kann eine Überprüfungsspannung zum Programmieren einer bestimmten Speicherzelle der ersten Speicherzellen mit dritten Daten bei Schritt S540 gemäß einer Differenz entschieden werden, zwischen der Schwellwertspannung der bestimmten Speicherzelle nach einem Programmieren von ersten Daten in die bestimmte Speicherzelle und Schwellwertspannungen von einer oder mehreren zweiten Speicherzellen, die zu der bestimmten Speicherzelle benachbart sind. Anderenfalls oder zusätzlich kann eine Überprüfungsspannung zum Programmieren einer bestimmten Speicherzelle der ersten Speicherzellen mit dritten Daten bei Schritt S540 gemäß einer Zunahme der Schwellwertspannung einer benachbarten zweiten Speicherzelle entschieden werden (oder Zunahme von Schwellwertspannungen von mehreren benachbarten Speicherzellen), die nach einer Programmierung der ersten Daten in die ersten Speicherzellen bei Vorgang S510 durch eine Programmierung der zweiten Daten in die zweiten Speicherzellen bei Vorgang S520 verursacht wird.
  • Ladungen können bei Informationsspeicherfilmen der bestimmten Speicherzelle eingefangen werden, wenn die ersten Programmdaten programmiert werden. Ladungen, die an bestimmten Speicherzellen eingefangen werden, können durch ein elektrisches Feld von Ladungen, die an benachbarten Speicherzellen eingefangen sind, beeinflusst werden. Eine Neuordnung von Ladungen, die an der bestimmten Speicherzelle eingefangen sind, kann durch das elektrische Feld beeinflusst werden. Wenn ein Unterschied zwischen einer Schwellwertspannung der bestimmten Speicherzelle und Schwellwertspannungen der benachbarten Speicherzellen groß wird, kann die Stärke des elektrischen Feldes stark werden. Das heißt, ein Einfluss auf die benachbarte zweite Speicherzelle der Neuordnung kann zunehmen. Zudem kann die benachbarte zweite Speicherzelle einen Vth-Pegel der bestimmten Speicherzelle durch andere Mechanismen beeinflussen, wie beispielsweise eine parasitäre Kopplung aufgrund einer Zunahme der Vth der zweiten Speicherzelle aus der Programmierung der zweiten Speicherzelle bei Schritt S520. Somit kann eine Vth-Veränderung der bestimmten Speicherzelle (z. B. einer ersten Speicherzelle der ersten Wortleitung) als eine Vth-Veränderung aufgrund von Neuordnungs-Charakteristiken der bestimmten Speicherzelle und als eine Vth-Veränderung aufgrund verschiedener Einflüsse von (einer) benachbarten Speicherzelle(n) bewertet werden (wie z. B. ein Vth-Unterschied und/oder einer Vth-Änderung der zweiten Speicherzelle aufgrund einer nachfolgenden Programmierung nach einer Programmierung der ersten Daten bei Vorgang 510). Durch Analyse einer Vth-Änderung und/oder eines Vth-Unterschieds einer benachbarten zweiten Speicherzelle (oder von mehreren benachbarten zweiten Speicherzellen) mit der bestimmten Speicherzelle, kann eine Einschätzung zu dem Einfluss der zweiten Speicherzelle auf die Vth-Veränderung der bestimmten Speicherzelle nach einer Programmierung der ersten Daten vorgenommen werden, und als Faktor von Ergebnissen der Zustandsauslesung bei Vorgang S530 entfernt werden, um Neuordnungs-Charakteristiken der bestimmten Speicherzelle zu bestimmen. Falls die eingeschätzte Veränderung des Einflusses der benachbarten Speicherzellen mit einer Vth-Veränderung konsistent ist, die aus der Zustandsauslesung bei Vorgang S530 bestimmt wird, kann die bestimmte Speicherzelle als normale Speicherzelle bestimmt werden, und in dem nachfolgenden Programmiervorgang S540 kann eine normale Überprüfungsspannung verwendet werden (in dem Überprüfungsunterschritt von einem oder mehreren Programmschleifen). Falls die eingeschätzte Veränderung von der Beeinflussung der benachbarten Speicherzellen nicht eine Vth-Veränderung nachweist, die aus der Zustandsauslesung in Vorgang S530 bestimmt ist (z. B. eine Vth eines Bereichs des oberen Endes oder eines Bereichs des unteren Endes eines Programmzustands), kann in dem nachfolgenden Programmiervorgang S540 eine andere Überprüfungsspannung als die normale Überprüfungsspannung verwendet werden (z. B. eine obere Überprüfungsspannung für Speicherzellen des unteren Endes und eine untere Überprüfungsspannung für Speicherzellen des oberen Endes in dem Überprüfungsunterschritt von einem oder mehreren Programmschleifen). Zudem kann eine eingeschätzte Veränderung des Einflusses der benachbarten Speicherzellen bestimmt werden, um einer Vth-Veränderung der Neuordnung entgegenzuwirken. In diesem Fall kann die bestimmte Vth-Veränderung der Neuordnung verwendet werden, um eine Überprüfungsspannung zur Verwendung in zukünftigen Programmierungen auszuwählen, selbst wenn keine oder keine erhebliche Vth-Veränderung ab einer Ausführung der Zustandsauslesung bei Schritt S530 offensichtlich erscheint. Eine Programmierung der dritten Daten bei Vorgang S540 kann unter Berücksichtigung einer Neuordnung gemäß den bestimmten (oder vorhergesagten) Neuordnungs-Charakteristiken vorgenommen werden, wie in Bezug auf die 13 und 14 beschrieben ist.
  • Bei einer Ausführungsform kann eine untere Zustandlesespannung VSRL, eine normale Zustandlesespannung VSRN und eine obere Zustandlesespannung VSRU erzeugt werden und von einer nichtflüchtigen Speichervorrichtung 400 in 25 verwendet werden, wenn ein Programmierverfahren aus 27 ausgeführt wird.
  • 28 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer wiederum anderen Ausführungsform darstellt. Mit Bezug auf die 25 und 28 können bei Vorgang S610 erste Programmdaten, die in erste Speicherzellen einer ersten Wortleitung programmiert werden sollen, empfangen werden. Die ersten Programmdaten können in Daten-Flip-Flops DL gespeichert werden.
  • Bei Vorgang S620 können zweite Programmdaten empfangen werden, die in zweiten Speicherzellen gespeichert werden sollen, die mit einer zweiten Wortleitung verbunden sind, die zu einer Wortleitung benachbart ist, die mit den ersten Speicherzellen verbunden ist. Die zweiten Programmdaten können zusätzlich zu der zweiten Wortleitung ebenso Daten aus einer oder mehreren anderen Wortleitungen, die zu der ersten Wortleitung benachbart sind, umfassen. Die zweiten Programmdaten können Daten sein, die programmiert werden sollen, nachdem die ersten Programmdaten in der ersten Wortleitung programmiert sind. Die zweiten Daten können in Daten-Flip-Flops DL oder in Neuordnungs-Flip-Flops RL gespeichert werden.
  • Bei Vorgang S630 können die ersten Programmdaten unter Verwendung einer Mehrzahl von Überprüfungsspannungen, die basierend auf den zweiten Programmdaten unterschiedliche Pegel aufweisen, in den ersten Speicherzellen programmiert werden. Speicherzellen, die mit den ersten Programmdaten programmiert sind, können einer Schwellwertspannungsveränderung unterliegen, die durch eine Ladungsneuordnung verursacht werden kann, oder durch andere parasitäre Einflüsse verursacht werden kann, durch Einflüsse eines elektrischen Feldes und/oder andere Faktoren verursacht werden kann, wenn die zweiten Programmdaten programmiert werden. Somit ist es möglich, die Datenzuverlässigkeit der nichtflüchtigen Speichervorrichtung 400 unter Berücksichtigung eines Effekts auf eine Vth, der durch Daten verursacht wird, die nachfolgend in benachbarten Speicherzellen programmiert werden sollen, zu verbessern. Wie hier verständlich wird, kann ein Vorhersagen des Effekts von nachfolgend programmierten benachbarten Speicherzellen auf eine Vth-Veränderung der ersten Speicherzellen der einzige Faktor zur Auswahl einer der mehreren Überprüfungsspannungen für jeden Programmzustand sein, oder es kann einer von mehreren Faktoren sein. Zum Beispiel können ebenso andere Faktoren verwendet werden, um eine von mehreren Überprüfungsspannungen auszuwählen, wie z. B. ein Durchführen einer Zustandsauslesung eines vorherigen Programms und/oder Löschungszuständen (z. B. wie in Bezug auf die 12 und 22A beschrieben ist), und/oder vor einer Programmierung von benachbarten Speicherzellen (z. B. wie in Bezug auf 27 beschrieben ist).
  • Bei einer Ausführungsform können eine untere Zustandsleerspannung VSRL und eine normale Zustandlesespannung VSRN und eine obere Zustandlesespannung VSRU erzeugt werden und von einer nichtflüchtigen Speichervorrichtung 400 aus 25 verwendet werden, wenn ein Programmierverfahren aus 28 ausgeführt wird.
  • 29 ist ein Flussdiagramm, das ein Programmierverfahren gemäß einer wiederum anderen Ausführungsform darstellt. Mit Bezug auf 29 können bei Vorgang S810 Programmdaten, die in Speicherzellen programmiert werden sollen, empfangen werden. Zum Beispiel können LSB-Daten als Programmdaten empfangen werden, zwei SB-Daten können als Programmdaten empfangen werden, MSB-Daten können als Programmdaten empfangen werden, usw.
  • Bei Vorgang S820 können die Daten auf Daten-Flip-Flops DL geladen werden (vgl. 1). Bitleitungen BL können gemäß den Programmdaten in den Daten-Flip-Flops DL eingenommen werden.
  • Bei Vorgang S830 kann eine Programmschleife ausgeführt werden, in der eine Programmierspannung und eine Überprüfungsspannung angelegt wird. Zum Beispiel kann bei Vorgang S830 eine Programmierspannung einmalig an einer ausgewählten Wortleitung angelegt werden und danach kann eine Überprüfungsspannung einmalig an der ausgewählten Wortleitung angelegt werden. Jedes Mal, wenn Vorgang 830 durchgeführt wird, kann lediglich eine Überprüfungsspannung (mit einer Überprüfungsspannung) durchgeführt werden.
  • Bei Vorgang S840 kann beurteilt werden, ob eine Schwellwertbedingung erfüllt ist. Eine Schwellwertbedingung kann z. B. eine Anzahl von Programmschleifen sein, in denen der Vorgang S830 durchgeführt wird. Wenn eine Programmschleifenanzahl über einem bestimmten Wert liegt, kann die Schwellwertbedingung erfüllt sein. Zusätzlich oder anderenfalls kann eine Schwellwertbedingung einen ersten Programmdurchlauf umfassen. Wenn das erste Mal erfasst wird, dass beliebige der Speicherzellen eine Programmierung durchlaufen (wie durch den Überprüfungsvorgang des Vorgangs S830 bestimmt wird), kann die Schwellwertbestimmung erfüllt sein. Die Schwellwertbestimmung kann durch eine bestimmte Anzahl von Programmdurchläufen der Speicherzellen erfüllt sein. Wenn die Anzahl der Speicherzellen, für die erfasst worden ist, dass sie eine Programmierung durchlaufen haben (wie durch den Überprüfungsvorgang von S830 bestimmt wird) über einem bestimmten Wert liegt, kann die Schwellwertbestimmung erfüllt sein. Es können verschiedene andere Bedingungen als Schwellwertbedingung verwendet werden. Wenn die Schwellwertbedingung erfüllt ist, setzt das Verfahren bei Vorgang S850 fort. Falls die Schwellwertbedingung nicht erfüllt ist, kehrt das Verfahren zurück und wiederholt Vorgang S830. In diesem Fall kann eine Programmierspannung erhöht werden.
  • Wenn die Schwellwertbedingung erfüllt ist, setzt das Verfahren bei Vorgang S850 fort. Bei Vorgang S850 kann ein Zustandlesevorgang an Speicherzellen, die programmiert wurden, (Speicherzellen, deren Schwellwertspannungen angepasst sind) unter Verwendung einer Mehrzahl von Zustandlesespannungen durchgeführt werden. Zwischen den Schritten S830 und S850 kann eine Verzögerungszeit vorgesehen sein, um ausreichend Zeit für eine Ladungsneuordnung vorzusehen. Siehe beispielsweise US-Patent Nr. 7,813,183 hinsichtlich einem Vorsehen einer beispielgebenden Verzögerungszeit zwischen Anlegen eines Programmierungsimpulses (oder Löschungsspannung) und einem nachfolgenden Auslese- oder Überprüfungsvorgangs, deren Inhalte durch Bezugnahme hiermit eingebunden sind. Wenn eine Programmschleife ausgeführt wird, kann bei Vorgang S860 eine Programmierspannung einmalig angelegt werden, während eine Mehrzahl von Überprüfungsspannungen, die jeweils unterschiedliche Pegel aufweisen, angelegt werden kann, um eine Programmierung von verschiedenen Speicherzellen mit unterschiedlichen Überprüfungspegeln zu überprüfen (z. B. wie es in Bezug auf andere hier beschriebene Ausführungsformen vorgenommen wird). Welche Speicherzellen durch welche der Mehrzahl von Überprüfungsspannungen überprüft werden, kann übereinstimmend mit einem Zustandleseergebnis bestimmt werden, wie hier an anderer Stelle diskutiert ist. Anderenfalls können andere hier beschriebene Faktoren, wie z. B. benachbarte Speicherzellen, wie in Bezug auf die 27 und 28 beschrieben ist, zusätzlich oder anstelle des Zustandlesevorgangs von S850 verwendet werden, um zu bestimmen, welche von der Mehrzahl von Überprüfungsspannungen für eine bestimmte Speicherzelle der Speicherzellen, die programmiert werden sollen, verwendet werden sollte. Die Programmierspannung, die über den Speicherzellen, die bei Vorgang S860 programmiert werden sollen, angelegt ist, kann im Einklang mit den Programmierspannungen stehen, die an den Speicherzellen angelegt wird, die bei Vorgang S830 programmiert werden sollen (z. B. dieselbe Programmierspannung, oder eine neue Programmierspannung, die in derselben Weise wie zwischen nachfolgenden Programmierspannungen von Vorgang S830 erhöht ist). Anderenfalls kann die Programmierspannung, die über den Speicherzellen, die bei Vorgang S860 programmiert werden sollen, angelegt wird, eine weiche Programmierspannung sein, die geringer ist als eine, die anderenfalls in einem nachfolgenden Vorgang S830 angelegt werden hätte können. Siehe z. B. US-Patent-Offenlegungsschrift 2012/010374 , die hinsichtlich beispielgebender weicher Programmierungen der Speicherzellen sowie anderer beispielgebender Programmierungsmerkmale durch Bezugnahme auf ihre Gesamtheit hiermit eingebunden ist. Beispielsweise diskutiert die US-Patent-Offenlegungsschrift 2012/010374 ebenso eine erneute Überprüfung einer Zelle, die bereits als programmiert bestimmt wurde, sowie ein Anlegen von (einer) Programmierungsspannung(en) an dieser Zelle, falls eine solche Überprüfung fehlschlägt, was ebenso durch das hier beschriebene Verfahren und die Vorrichtung genutzt werden kann.
  • Bei Vorgang S870 kann ein Programmdurchlauf beurteilt werden. Das Verfahren kann mit einem Programmdurchlauf beendet werden. Bei einem Programmfehler kehrt das Verfahren zurück und wiederholt den Vorgang S860. Zu diesem Zeitpunkt kann eine Programmierspannung angehoben werden. Obwohl nicht in 29 gezeigt, kann das Verfahren nach einer bestimmten Anzahl von Programmfehlern enden, und es kann bestimmt werden, dass ein Fehler, wie z. B. ein defekter Speicher, vorliegt. Das Verfahren von 29 kann ohne Unterbrechung von anderen nebenherlaufenden Programmierungen solcher Speicherzellen, die bei Vorgang S810 Programmierungsdaten empfangen, durchgeführt werden. Falls das Verfahren aus 29 an einer Wortleitung angewendet wird (d. h. die Programmdaten, die bei Vorgang S810 empfangen werden, sind für einen ausgewählte Wortleitung), kann das Verfahren aus 29 ohne Unterbrechung einer Programmierung von benachbarten Wortleitungen durchgeführt werden.
  • 30A ist ein Zeitablaufdiagramm, das Spannungen darstellt, die an ausgewählten Wortleitungen gemäß einem Programmierverfahren in 29 angelegt werden. 30B ist ein Graph, der eine Abweichung einer Schwellwertspannungsverteilung von Speicherzellen gemäß einem Programmierverfahren in 29 sowie eine Art und Weise zum Anlegen einer Spannung in 30A darstellt.
  • Mit Bezug auf die 30A und 30B kann während der Ausführung von jeder der mehreren Programmschleifen eine Programmierspannung VPGM einmalig an der Wortleitung angelegt werden, mit der die Speicherzellen verbunden sind, und eine Überprüfungsspannung VFY1 kann einmalig angelegt werden, um die Programmierung der Speicherzellen zu überprüfen. Die Programmierspannung VPGM kann bei jeder Wiederholung dieser Programmschleifen erhöht werden. Wenn die Programmschleife wiederholt wird, können Schwellwertspannungen von programmierten Speicherzellen von einem Löschungszustand E oder von einem Programmzustand aus, der aus einem vorhergehenden Programmiervorgang resultiert, erhöht werden (in den 29 und 30A nicht dargestellt). Speicherzellen mit erhöhten Schwellwertspannungen (oder Speicherzellen, die programmiert worden sind), können einen mittleren Zustand IS aufweisen.
  • Falls eine Schwellwertbestimmung erfüllt ist, kann ein Zustandlesevorgang ausgeführt werden. Ein Zustandlesevorgang kann in Bezug auf Speicherzellen durchgeführt werden, die einen mittleren Zustand IS aufweisen. Der Zustandlesevorgang kann durch Anlegen einer normalen Zustandlesespannung VSRN und einer oberen Zustandlesespannung VSRU an den Speicherzellen, die den mittleren Zustand aufweisen, durchgeführt werden. Die normale Zustandlesespannung VSRN kann einen höheren Pegel als die obere Zustandlesespannung VSRU aufweisen. Die obere Zustandlesespannung VSRU kann einen Pegel aufweisen, der gleich groß mit der Überprüfungsspannung VFY1 ist. Der Zustandlesevorgang kann, wie hier in Bezug auf andere Ausführungsformen beschrieben ist, durchgeführt werden.
  • Falls der Zustandlesevorgang durchgeführt wird, können Speicherzellen des oberen Endes LP_U, normale Speicherzellen LP_N und Speicherzellen des unteren Endes LP_L unterschieden werden. Bei bestimmten Speichervorrichtungen (z. B. solchen mit sehr kleinen Speicherzellen), kann in einer kurzen Zeitdauer eine Ladungsneuordnung oder andere Faktoren, die eine Schwellwertveränderung verursachen, auftreten. Somit kann eine Neuordnung auftreten und/oder Neuordnungs-Charakteristiken der Speicherzelle zwischen Programmschleifen während einer Programmierung im Wesentlichen reflektieren. Falls ein Zustandlesevorgang ausgeführt wird wenn eine Schwellwertbedingung erfüllt ist, können Speicherzellen des oberen Endes LP_U, normale Speicherzellen LP_N und Speicherzellen des unteren Endes LP_L unterschieden werden. Hierbei können Schwellwertspannungen der Speicherzellen des oberen Endes LP_U aufgrund der Neuordnung erhöht werden, Schwellwertspannungen der normalen Speicherzellen LP_N können nicht erheblich abweichen, obwohl die Neuordnung erzeugt wird, und Schwellwertspannungen des Speicherzellen des unteren Endes LP_L können aufgrund der Neuordnung gesenkt werden.
  • Danach kann eine Programmschleife durchgeführt werden, die festgestellte Neuordnungs-Charakteristiken der Speicherzellen berücksichtigt. Die Speicherzellen des oberen Endes LP_U können unter Verwendung einer niedrigen Überprüfungsspannung VFYL programmiert werden, die normalen Speicherzellen LP_N können unter Verwendung einer normalen Überprüfungsspannung VFYN programmiert werden, und die Speicherzellen des unteren Endes LP_L können unter Verwendung einer oberen Überprüfungsspannung VFYU programmiert werden. Speicherzellen, die den mittleren Zustand IS aufweisen, können durch Programmierung in einen Programmzustand LP programmiert werden. Wenn ein Programmiervorgang hinsichtlich der Neuordnung durchgeführt wird, kann eine Schwellwertspannungsverteilung der Speicherzellen schmal werden, wenn die Neuordnung erzeugt wird.
  • Bei einer alternativen Ausführungsform kann ein Zustandleseergebnis in einem ergänzenden Bereich eines Speicherzellenfelds gespeichert werden, so dass dieses ausgelesen werden kann, falls es erforderlich ist. Ein Zustandleseergebnis kann an eine externe Vorrichtung ausgegeben werden. Falls eine Neuordnungs-Charakteristik der Speicherzellen vorab in einem Testbereich oder einem ergänzenden Bereich eines Speicherzellenfelds gespeichert wird, kann ein Programmiervorgang basierend auf der Neuordnungs-Charakteristik durchgeführt werden, die ohne den Zustandlesevorgang von Vorgang S850 aus dem Testbereich ausgelesen wird.
  • 31 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer anderen Ausführungsform darstellt. Eine äquivalente Schaltung, BLKa2 in 31 kann sich von derjenigen in 7 darin unterscheiden, dass in jeder Zellenzeile Lateraltransistoren hinzugefügt sind.
  • Mit Bezug auf die 3 bis 6 und 31 können zwischen einem Masseauswahltransistor GST und einer gemeinsamen Sourceleitung CSL in jeder Zellenzeile Lateraltransistoren LTR verbunden sein. Die Gates der Lateraltransistoren LTR in jeder Zellenzeile können dabei zusammen mit einem Gate (oder Steuer-Gate) eines Masseauswahltransistors GST mit einer Masseauswahlleitung GSL verbunden sein.
  • Kanalschichten 114 können als vertikale Körper eines ersten leitfähigen Materials CM 1 dienen. Das heißt, die ersten leitfähigen Materialien CM1 können zusammen mit den Kanalschichten 114 vertikale Transistoren bilden. Die ersten leitfähigen Materialien CM1 können zusammen mit den Kanalschichten 114 vertikal zu einem Substrat 111 verlaufende Masseauswahltransistoren GST bilden.
  • Informationsspeicherfilme 116 können zwischen dem Substrat 111 und den ersten leitfähigen Materialien CM1 vorgesehen sein. Das Substrat 111 kann als horizontaler Körper der ersten leitfähigen Materialien CM1 dienen. Das heißt, die ersten leitfähigen Materialien CM1 können zusammen mit dem Substrat 111 die Lateraltransistoren LTR bilden.
  • Wenn eine Spannung an den ersten leitfähigen Materialien CM1 angelegt wird, kann ein elektrisches Feld zwischen den ersten leitfähigen Materialien CM1 und den Kanalschichten 114 gebildet werden. Das elektrische Feld kann ermöglichen, dass an den Kanalschichten 114 Kanäle gebildet werden. Wenn eine Spannung an den ersten leitfähigen Materialien CM1 angelegt wird, kann zwischen den ersten leitfähigen Materialien CM1 und dem Substrat 111 ein elektrisches Feld gebildet werden. Das elektrische Feld kann ermöglichen, dass an dem Substrat 111 Kanäle gebildet werden. Kanäle, die an dem Substrat 111 gebildet werden, können mit gemeinsamen Sourceabschnitten CSR und den Kanalschichten 114 verbunden sein. Wenn eine Spannung an der Masseauswahlleitung GSL angelegt wird, können die Masseauswahltransistoren GST und die Lateraltransistoren LTR eingeschaltet werden. Dies kann ermöglichen, dass die Zellenzeilen CS11, CS12, CS21 und CS22 mit einer gemeinsamen Sourceleitung CSL verbunden werden.
  • 32 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht einer in 3 gemäß einer wiederum anderen Ausführungsform darstellt. Eine äquivalente Schaltung BLKa3 in 32 kann sich von derjenigen in 7 darin unterscheiden, dass Masseauswahltransistoren GST mit ersten und zweiten Masseauswahlleitungen GSL1 und GSL2 verbunden sind. Mit Bezug auf die 3 bis 6 und 32 können erste leitfähige Materialien CM1 erste und zweite Masseauswahlleitungen GSL1 und GSL2 bilden.
  • Wie in Bezug auf die 1 bis 28 beschrieben ist, können Neuordnungs-Charakteristiken der Speicherzellen MC1 bis MC6 durch Auslesen (oder Vorhersagen) erfasst werden. Wie in Bezug auf die 1 bis 28 beschrieben ist, können die Speicherzellen MC1 bis MC8 im Hinblick auf die erfassten (oder vorhergesagten) Neuordnungs-Charakteristiken programmiert werden.
  • Wie in Bezug auf 31 beschrieben ist, können Lateraltransistoren LTR an der äquivalenten Schaltung BLKa3 vorgesehen sein.
  • 33 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer wiederum anderen Ausführungsform darstellt. Mit Bezug auf die 3 bis 6 und 33 ist eine Mehrzahl von Unterblöcken vorgesehen. In dieser Ausführungsform können zweite und dritte leitfähige Materialien CM2 und CM3 erste und zweite Speicherzellen MC1 und MC2 bilden, die als ein erster Unterblock verwendet werden. Sechste und siebte leitfähige Materialien CM6 und CM7 können dritte und vierte Speicherzellen MC3 und MC4 bilden, die als zweiter Unterblock verwendet werden. Vierte und fünfte leitfähige Materialien CM4 und CM5 können erste und zweite Blind-Speicherzellen (Dummies) DMC1 und DMC2 bilden, die zwischen den ersten und zweiten Unterblöcken vorgesehen sind. Die ersten und zweiten Unterblöcke können voneinander unabhängig programmiert, ausgelesen und gelöscht werden.
  • Wie in Bezug auf die 1 bis 28 beschrieben ist, können Neuordnungs-Charakteristiken der Speicherzellen MC1 bis MC4 durch Auslesen erfasst (oder vorhergesagt) werden. Wie in Bezug auf die 1 bis 28 beschrieben ist, können die Speicherzellen MC1 bis MC4 im Hinblick auf die erfassten (oder vorhergesagten) Neuordnungs-Charakteristiken programmiert werden.
  • Wie mit Bezug auf 31 beschrieben ist, können Lateraltransistoren LTR an der äquivalenten Schaltung BLKa3 vorgesehen sein.
  • 34 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer wiederum anderen Ausführungsform darstellt. Mit Bezug auf die 3 bis 6 und 34 können erste und zweite leitfähige Materialien CM1 und CM2 Masseauswahltransistoren GSTa und GSTb bilden, die jeweils eine erste und zweite Höhe aufweisen. Siebte und achte leitfähige Materialien CM7 und CM8 können Zeilenauswahltransistoren SSTa und SSTb bilden, die jeweils eine siebte und eine achte Höhe aufweisen. Dritte bis sechste leitfähige Materialien CM3 bis CM6 können erste bis vierte Speicherzellen MC1 bis MC4 bilden.
  • Die ersten und zweiten leitfähigen Materialien CM1 und CM2 können gemeinsam verbunden sein, um eine Masseausleitung GSL zu bilden. Zellenzeilen CS11, CS12, CS21 und CS22 können mit einer Zeilenauswahlleitung GSL gemeinsam verbunden sein.
  • Die Zellenzeilen CS11 und CS12 können mit zwei Zeilenauswahlleitungen SSL1a und SSL1b verbunden sein, die jeweils eine siebte und achte Höhe aufweisen und durch siebte und achte leitfähige Materialien CM7 und CM8 gebildet werden. Die Zellenzeilen CS21 und CS22 können mit zwei Zeilenauswahlleitungen SSL2a und SSL2b verbunden sein, welche jeweils die siebte und achte Höhe aufweisen und durch die siebten und achten leitfähigen Materialien CM7 und CM8 gebildet werden.
  • Leitfähige Materialien, die jeweils wenigstens drei Höhen entsprechen, können Zeilenauswahltransistoren bilden. Leitfähige Materialien, die jeweils wenigstens drei Höhen entsprechen, können Zeilenauswahltransistoren bilden.
  • Wie in Bezug auf die 1 bis 28 beschrieben ist, können Neuordnungs-Charakteristiken der Speicherzellen MC1 bis MC4 durch Auslesen (oder Vorhersagen) erfasst werden. Wie in Bezug auf die 1 bis 28 beschrieben ist, können die Speicherzellen MC1 bis MC4 im Hinblick auf die erfassten (oder vorhergesagten) Neuordnungs-Charakteristiken programmiert werden.
  • Wie bei einer äquivalenten Schaltung BLKa2, die in Bezug auf 31 beschrieben ist, können Lateraltransistoren LTR an der äquivalenten Schaltung BLKa5 vorgesehen sein. Wie bei einer äquivalenten Schaltung BLKa3 in Bezug auf 32 beschrieben ist, können Zellenzeilen CS11 und CS12 mit einer Masseauswahlleitung (nicht dargestellt) verbunden sein, und Zellenzeilen CS21 und CS22 können mit einer anderen Masseauswahlleitung (nicht dargestellt) verbunden sein. Wie bei einer äquivalenten Schaltung BLKa4 in Bezug auf 33 beschrieben ist, können Speicherzellen MC1 bis MC4 eine Mehrzahl von Unterblöcken bilden.
  • 35 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer wiederum anderen Ausführungsform darstellt. Eine äquivalente Schaltung BLKa6 in 35 kann sich von derjenigen in 34 darin unterscheiden, dass sich Zeilenauswahltransistoren SSTa und SSTb in Zellenzeilen derselben Reihe eine Zeilenauswahlleitung teilen. Zeilenauswahltransistoren SSTa und SSTb in den Zellenzeilen CS11 und CS12 können gemeinsam mit einer ersten Zeilenauswahlleitung SSL1 verbunden sein und Zeilenauswahltransistoren SSTa und SSTb in den Zellenzeilen CS21 und CS22 können gemeinsam mit einer zweiten Zeilenauswahlleitung SSL2 verbunden sein.
  • Wie in Bezug auf die 1 bis 28 beschrieben ist, können Neuordnungs-Charakteristiken der Speicherzellen MC1 bis MC4 durch Auslesen (oder Vorhersagen) erfasst werden. Wie in Bezug auf die 1 bis 28 beschrieben ist, können die Speicherzellen MC1 bis MC4 im Hinblick auf die erfassten (oder vorhergesagten) Neuordnungs-Charakteristiken programmiert werden.
  • Wie bei einer äquivalenten Schaltung BLKa2 in Bezug auf 31 beschrieben ist, können Lateraltransistoren LTR an der äquivalenten Schaltung BLKa6 vorgesehen sein. Wie bei einer äquivalenten Schaltung BLKa3 in Bezug auf 32 beschrieben ist, können Zellenzeilen CS11 und CS12 mit einer Masseauswahlleitung (nicht dargestellt) verbunden sein, und Zellenzeilen CS21 und CS22 können mit einer anderen Masseauswahlleitung (nicht dargestellt) verbunden sein. Wie bei einer äquivalenten Schaltung BLKa4 in Bezug auf 33 beschrieben ist, können Speicherzellen MC1 bis MC4 eine Mehrzahl von Unterblöcken bilden.
  • 36 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 3 gemäß einer wiederum anderen Ausführungsform darstellt. In Bezug auf die 3 bis 6 und 36 können zweite leitfähige Materialien CM2 erste Blind-Speicherzellen DMC1 bilden, und siebte leitfähige Materialien CM7 können zweite Blind-Speicherzellen DMC2 bilden.
  • Bei einer Ausführungsform können leitfähige Materialien, die zwei oder mehr Höhen entsprechen, Blind-Speiherzellen (nicht dargstellt) bilden, die zwischen Speicherzellen und Masseauswahltransistoren GST angeordnet sind. Leitfähige Materialien, die zwei oder mehr Höhen entsprechen, können Blind-Speicherzellen (nicht dargstellt) bilden, die zwischen Speicherzellen und Zeilenauswahltransistoren SST angeordnet sind. Blind-Speicherzellen (nicht dargestellt) können zu einem beliebigen der Masse- und Zeilenauswahltransistoren GST und SST benachbart angeordnet sein, Wie in Bezug auf die 1 bis 28 beschrieben ist, können Neuordnungs-Charakteristiken von Speicherzellen MC1 bis MC4 durch Auslesen erfasst (oder vorhergesagt) werden. Wie in Bezug auf die 1 bis 28 beschrieben ist, können die Speicherzellen MC1 bis MC4 im Hinblick auf die erfassten (oder vorhergesagten) Neuordnungs-Charakteristiken programmiert werden.
  • Ähnlich wie bei einer äquivalenten BLKa2 in Bezug auf 31 beschrieben ist, können Lateraltransistoren LTR an der äquivalenten Schaltung BLKa7 vorgesehen sein. Wie bei einer äquivalenten Schaltung wie BLKa3 in Bezug auf 32 beschrieben ist, können Zellenzeilen CS11 und CS12 mit einer Masseauswahlleitung (nicht dargestellt) verbunden sein, und Zellenzeilen CS21 und CS22 können mit einer anderen Masseauswahlleitung (nicht dargestellt) verbunden sein. Wie bei einer äquivalenten Schaltung BLKa4 in Bezug auf 33 beschrieben ist, können Speicherzellen MC1 bis MC4 eine Mehrzahl von Unterblöcken bilden.
  • Wie in Bezug auf 34 beschrieben ist, können leitfähige Materialien von zwei oder mehr Höhen Zeilenauswahltransistoren SSTa und SSTb bilden. Leitfähige Materialien von zwei oder mehr Höhen können Masseauswahltransistoren GSTa und GSTb bilden. Wie in Bezug auf 35 beschrieben ist, können Zeilenauswahltransistoren SSTa und SSTb derselben Reihe mit einer Zeilenauswahlleitung SSL1 oder SSL2 verbunden sein.
  • 37 ist eine perspektivische Ansicht entlang einer Linie IV-IV' an 3 gemäß einer anderen Ausführungsform. 38 ist eine Querschnittsansicht entlang einer Linie IV-IV' in 3 gemäß einer anderen Ausführungsform. In Bezug auf die 3, 37 und 38 können erste Informationsspeicherfilme 116a unter den leitfähigen Materialien CM1 bis CM8 vorgesehen sein und Isolationsmaterialien 112 und 112a, und Stützen PL und zweite Informationsspeicherfilme 116b können an der Innenseite der Stützen PL vorgesehen sein.
  • Die ersten Informationsspeicherfilme 116a können blockierende Isolationsfilme wie zum Beispiel dritte Unterisolationsfilme 119 umfassen (vergleiche 4 und 5). Die ersten Informationsspeicherfilme 116 können an derselben Position wie Informationsspeicherfilme 116, die in den 4 und 5 dargestellt sind, ausgebildet werden. Die zweiten Informationsspeicherfilme 116b können Ladungseinfangfilme und Tunnelisolationsfilme wie zum Beispiel erste und zweite Unterisolationsfilme 117 und 118 umfassen.
  • Eine äquivalente Schaltung eines Speicherblocks, der in Bezug auf die 3, 37 und 38 beschrieben ist, kann eine der oben beschriebenen äquivalenten Schaltungen BLKa1 bis BLKa7 sein.
  • 39 ist eine perspektivische Ansicht entlang einer Linie IV-IV' in 3 gemäß einer wiederum Ausführungsform. 40 ist eine Querschnittsansicht entlang einer Linie IV-IV' in 3 gemäß einer wiederum anderen Ausführungsform. In Bezug auf die 3, 39 und 40 können untere Stützten PLa und obere Stützen PLb vorgesehen sein, um in einer Richtung senkrecht zu einem Substrat 111 aufeinander gestapelt zu werden.
  • Die unteren Stützten PLa können die Isolationsfilme 112 und 112a entlang einer dritten Richtung durchdringen, um mit dem Substrat 111 in Kontakt zu stehen. Jede der unteren Stützen PLa kann eine untere Kanalschicht 114a und ein unteres inneres Material 115a umfassen. Die unteren Kanalschichten 114a können ein Halbleitermaterial umfassen, das denselben leitfähigen Typ wie das Substrat 111 oder einen Eigenhalbleiter (bzw. intrinsischen Halbleiter) umfasst. Die unteren Kanalschichten 114 können jeweils als vertikale Körper aus den ersten bis vierten leitfähigen Materialien CM1 und CM4 dienen. Die unteren inneren Materialien 115a können ein Isolationsmaterial umfassen.
  • Die oberen Stützen PLb können jeweils auf den unteren Stützen PLa vorgesehen sein. Die oberen Stützten PLb können die Isolationsfilme 112 entlang einer dritten Richtung durchdringen, um mit einer oberen Oberfläche der unteren Stützten PLa in Kontakt zu stehen. Jeder der oberen Stützen PLb kann eine obere Kanalschicht 114b und ein oberes inneres Material 115b umfassen. Die oberen Kanalschichten 114b können ein Halbleitermaterial umfassen, das denselben leitfähigen Typ wie die unteren Kanalschichten 114a oder einen Eigenhalbleiter (bzw. intrinsischen Halbleiter) umfasst.
  • Die oberen Kanalschichten 114b können jeweils als vertikale Körper aus den fünften bis achten leitfähigen Materialien CM5 und CM8 dienen. Die oberen inneren Materialien 115b können ein Isolationsmaterial umfassen.
  • Die unteren Kanalschichten 114a und die oberen Kanalschichten 114b können miteinander verbunden sein, um als ein vertikaler Körper zu dienen. Auf den unteren Stützen PLa können jeweils zum Beispiel Halbleiter-Pads SP vorgesehen sein. Die Halbleiter-Pads SP können ein Halbleitermaterial umfassen, das denselben leitfähigen Typ wie die unteren Kanalschichten 114a oder einen Eigenhalbleiter (bzw. intrinsischen Halbleiter) umfasst. Die unteren Kanalschichten 114a und die oberen Kanalschichten 114b können über die Halbleiter-Pads SP zwischen verbunden sein.
  • Bei dieser Ausführungsform können leitfähige Materialien unter den ersten bis achten leitfähigen Materialien CM1 bis CM8, die zu den Halbleiter-Pads SP benachbart sind, Blind-Wortleitungen und Blind-Speicherzellen (Dummies) bilden. Zum Beispiel kann das vierte leitfähige Material CM4 benachbart zu den Halbleiter-Pads SP, das fünfte leitfähige Material CM5 oder die vierten und fünften leitfähige Materialien CM4 und CM5 Blind-Wortleitungen und Blind-Speicherzellen bilden.
  • Eine äquivalente Schaltung eines Speicherblocks, der in Bezug auf die 3, 39 und 40 beschrieben ist, kann zu den oben beschriebenen äquivalenten Schaltungen BLKa1 bis BLKa7 identisch sein.
  • 41 ist eine perspektivische Ansicht entlang einer Linie IV-IV' in 3 gemäß einer wiederum anderen Ausführungsform. 42 ist eine Querschnittsansicht entlang einer Linie IV-IV' in 3 gemäß einer wiederum anderen Ausführungsform. In Bezug auf die 3, 41 und 42 können untere Stützen PLa und obere Stützen PLb vorgesehen sein (vergleiche 39 und 40). Erste Informationsspeicherfilme 116a können unter den leitfähigen Materialien CM1 bis CM8 vorgesehen sein, und Isolationsmaterialien 112 und 112a, Stützen PLa und PLb und zweite Informationsspeicherfilme 116 können an inneren Seiten der Stützten PLa und PLb vorgesehen sein (vergleiche 37 und 38).
  • Eine äquivalente Schaltung eines Speicherblocks, der in Bezug auf die 3, 41 und 42 beschrieben ist, kann zu einer der oben beschriebenen äquivalenten Schaltungen BLKa1 bis BLKa7 identisch sein.
  • 43 ist eine Draufsicht, die einen Speicherblock in 2 gemäß einer anderen Ausführungsform darstellt. 44 ist eine perspektivische Ansicht entlang einer Linie XXXXIV-XXXXIV' in 43. 45 ist eine Querschnittsansicht entlang einer Linie XXXXIV-XXXXIV' in 43.
  • Im Vergleich mit einem Speicherblock BLKa, der in Bezug auf die 3 bis 6 beschrieben ist, kann ein Zeilenauswahlleitungsausschnitt SSL Cut und ein Wortleitungsausschnitt WL Cut, die sich entlang einer ersten Richtung erstrecken, der Reihe nach in einer zweiten Richtung vorgesehen sein. Der Wortleitungsausschnitt WL Cut kann durch die leitfähigen Materialien CM bis CM8 und Isolationsmaterial 112 und 112a durchdringen, um Teilbereiche der gemeinsamen Sourceabschnitte CSR freizulegen. Der Zeilenauswahlleitungsausschnitt SSL Cut kann durch ein oder mehrere leitfähige Materialien (z. B.) CM8) und Isolationsmaterialien 112 durchdringen. Der Zeilenauswahlleitungsausschnitt SSL Cut kann eine achte leitfähige Leitung CM8 trennen, die Zeilenauswahltransistoren SST ausgestaltet. Wenn leitfähige Leitungen der zwei oder mehr Höhen Zeilenauswahltransistoren SST bilden, kann der Zeilenauswahlausschnitt SSL Cut leitfähige Materialien der zwei oder mehr Höhen trennen.
  • Ein Teil EC einer Draufsicht aus 43 kann mit einer der oben beschriebenen äquivalenten Schaltungen BLKa1 bis BLKa7 identisch sein.
  • Bei dieser Ausführungsform können Stützen PL aus unteren Stützen und oberen Stützen ausgebildet sein, wie in den 39 und 40 beschrieben ist.
  • Bei einer Ausführungsform können erste Informationsspeicherfilme 116a und zweite Informationsspeicherfilme 116b vorgesehen sein, wie in Bezug auf die 37 und 38 beschrieben ist.
  • 46 ist eine Draufsicht, die einen Teil eines Speicherblocks in 2 gemäß einer wiederum anderen Ausführungsform darstellt. 47 ist eine perspektivische Ansicht entlang einer Linie XXXXVII-XXXXVII' in 46. 48 ist eine Querschnittsansicht entlang einer Linie XXXXVII-XXXXVII' in 46.
  • Im Vergleich mit einem Speicherblock BLKa, der in den 3 bis 6 beschrieben ist, können Stützen, die zwischen benachbarten gemeinsamen Sourceabschnitten vorgesehen sind, in einer Zickzackform entlang einer ersten Richtung angeordnet sein.
  • Wie in den 39 und 40 beschrieben ist, können Stützen PL aus unteren Stützten und oberen Stützen gebildet sein. Wie in den 37 bis 38 beschrieben ist, können erste Informationsspeicherfilme 116a und zweite Informationsspeicherfilme 116b vorgesehen sein. Wie in Bezug auf die 43 bis 45 beschrieben ist, kann ein Zeilenauswahlleitungsausschnitt SSL Cut vorgesehen sein. Eine Linie der Spalten, die in einer Zickzackform entlang der ersten Richtung angeordnet ist, kann zwischen einer Wortleitung, Zeilenauswahlleitungsausschnitten WL Cut und einem SSL Cut, die zueinander benachbart sind, vorgesehen sein.
  • Ein Teil EC einer Draufsicht in 46 kann einer der oben beschriebenen äquivalenten Schaltungen BLKa1 bis BLKa7 entsprechen.
  • 49 ist eine Draufsicht, die einen Teil eines Speicherblocks in 2 gemäß einer wiederum anderen Ausführungsform darstellt. 50 ist eine perspektivische Ansicht entlang einer Linie XXXXX-XXXXX' in 49. Eine Querschnittsansicht entlang einer Linie XXXXX-XXXXX' in 49 kann mit derjenigen in 5 identisch sein und eine Beschreibung derselben wird ausgelassen.
  • Im Vergleich mit einem Speicherblock BLKa, der in den 3 bis 6 beschrieben ist, kann ein Speicherblock BLKd viereckige Stützen PL umfassen. Isolationsmaterialien IM können zwischen den Stützen PL vorgesehen sein. Die Stützen PL können entlang einer ersten Richtung ausgerichtet zwischen benachbarten gemeinsamen Sourceabschnitten CSR angeordnet sein. Die Isolationsmaterialien IM können sich entlang der dritten Richtung erstrecken, so dass sie mit einem Substrat 111 in Kontakt stehen.
  • Jede der Stützen PL kann eine Kanalschicht 114 und ein inneres Material 115 umfassen. Beispielsweise kann die Kanalschicht 114 unter vier Seiten einer entsprechenden Stütze auf zwei Seiten, die zu leitfähigen Material CM1 bis CM8 benachbart sind, vorgesehen sein, ohne die entsprechende Stütze zu umgeben.
  • Eine Kanalschicht auf einer Seite von jeder Stütze kann zusammen mit leitfähigen Materialien CM1 bis CM8 und Informationsspeicherfilmen 116 eine Zellenzeile bilden. Eine Kanalschicht auf der anderen Seite von jeder Stütze kann zusammen mit leitfähigen Materialien CM1 bis CM8 und Informationsspeicherfilmen 116 eine andere Zellenreihe bilden. Das heißt, eine Stütze kann dazu verwendet werden, zwei Zellenzeilen zu bilden.
  • Bei einer Ausführungsform können Stützen PL aus unteren Stützen und oberen Stützen gebildet sein, wie in den 39 und 40 beschrieben ist. Wie in den 37 und 38 beschrieben ist, können erste Informationsspeicherfilme 116a und zweite Informationsspeicherfilme 116b vorgesehen sein. Wie in Bezug auf die 43 bis 45 beschrieben ist, kann ein Zeilenauswahlleitungsausschnitt SSL Cut vorgesehen sein. Eine der Stützen PL, die in einer Zickzackform entlang einer ersten Richtung angeordnet sind, kann zwischen einem Wortleitungsausschnitt WL Cut und einem Zeilenauswahlleitungsausschnitt SSL Cut, die benachbart zueinander angeordnet sind, vorgesehen sein.
  • Ein Teil EC einer Draufsicht in 49 entspricht einer der obenbeschriebenen äquivalenten Schaltungen BLKa1 bis BLKa7.
  • 51 ist eine Draufsicht, die einen Teil eines Speicherblocks in 2 gemäß einer wiederum anderen Ausführungsform darstellt. 52 ist eine perspektivische Ansicht entlang einer Linie XXXXXII-XXXXXII' in 51. 53 ist eine Querschnittsansicht entlang einer Linie XXXXXII-XXXXXII' in 51.
  • In Bezug auf die 51 bis 53 können die ersten bis achten leitfähigen Materialien CMU1 bis CMU8, die sich entlang einer ersten Richtung erstrecken, auf einem Substrat 111 vorgesehen sein. Die ersten bis vierten oberen leitfähigen Materialien CMU1 bis CMU4 können in einer Richtung senkrecht zu dem Substrat 111 gestapelt sein und in einer Richtung senkrecht zu dem Substrat voneinander beabstandet sein. Die fünften bis achten leitfähigen Materialien CMU5 bis CMU8 können in einer Richtung senkrecht zu dem Substrat 111 gestapelt sein und in einer Richtung senkrecht zu dem Substrat 111 voneinander beabstandet sein. Eine Gruppe der ersten bis vierten oberen leitfähigen Materialien CMU1 bis CMU4 kann von einer Gruppe der fünften bis achten oberen leitfähigen Materialien CMU5 bis CMU8 entlang einer zweiten Richtung voneinander beabstandet sein.
  • Untere leitfähige Materialien CMD1a, CMD1b und CMD2 bis CMD4, die sich entlang der ersten Richtung erstrecken, können zwischen den ersten bis vierten oberen leitfähigen Materialien CMU1 bis CMU4 und den fünften bis achten leitfähigen Materialien CMU5 bis CMU8 vorgesehen sein. Die unteren leitfähigen Materialien CMD2 bis CMD4 können in einer Richtung senkrecht zu dem Substrat gestapelt sein und in einer Richtung senkrecht zu dem Substrat voneinander beabstandet sein. Die unteren leitfähigen Materialien CMD1a und CMD1b können auf dem unteren leitfähigen Material CMD2 vorgesehen sein. Die unteren leitfähigen Materialien CMD1a und CMD1b können entlang der zweiten Richtung voneinander beabstandet sein.
  • Eine Mehrzahl von oberen Stützen PLU kann dazu ausgestaltet sein, die ersten bis vierten oberen leitfähigen Materialien CMU1 bis CMU4 oder die fünften bis achten oberen leitfähigen Materialien CMU5 bis CMU8 in einer Richtung senkrecht zu dem Substrat 111 zu durchdringen. Die oberen Stützen PLU können mit dem Substrat 111 in Kontakt stehen. Bei dem ersten oberen leitfähigen Material CMU1 können die oberen Stützen in einer Linie entlang der ersten Richtung angeordnet sein und entlang der ersten Richtung voneinander beabstandet sein. Bei dem achten oberen leitfähigen Material CMU8 können die oberen Stützen in einer Linie entlang der ersten Richtung angeordnet sein und entlang der ersten Linie voneinander beabstandet sein.
  • Jede der oberen Stützen PLU umfasst einen Informationsspeicherfilm 116 und eine Kanalschicht 114. Der Informationsspeicherfilm 116 kann Informationen durch Einfangen oder Abstoßen von Ladungen speichern. Der Informationsspeicherfilm 116 kann einen Tunnelisolationsfilm, einen Ladungseinfangfilm und einen blockierenden Isolationsfilm umfassen.
  • Die Kanalschichten 114 können als vertikale Körper der oberen Stützen PLU dienen. Die Kanalschichten 114 können jeweils einen Eigenhalbleiter umfassen. Die Kanalschichten 114 können Halbleiter mit demselben leitfähigen Typ (z. B. p-Typ) wie das Substrat 111 umfassen.
  • Eine Mehrzahl von unteren Stützen PLD kann ausgebildet sein. Die Mehrzahl von unteren Stützen PLD kann die unteren leitfähigen Materialien CMD2 bis CMD4 und die unteren leitfähigen Materialien CMD1a oder CMD1b in einer Richtung senkrecht zu dem Substrat 111 durchdringen, sodass sie mit dem Substrat 111 in Kontakt stehen. Bei dem unteren leitfähigen Materialien CMD1a können untere Stützen in einer Linie entlang der ersten Richtung angeordnet sein und entlang der ersten Richtung voneinander beabstandet sein. Bei den unteren leitfähigen Materialien CMD1b können untere Stützen in einer Linie entlang der ersten Richtung angeordnet sein und entlang der ersten Richtung voneinander beabstandet sein.
  • Jede der unteren Stützen PLD kann einen Informationsspeicherfilm 116 und eine Kanalschicht 114 umfassen. Der Informationsspeicherfilm 116 kann Informationen durch Einfangen oder Abstoßen von Ladungen speichern. Der Informationsspeicherfilm 116 kann einen Tunnelisolationsfilm, einen Ladungseinfangfilm und einen blockierenden Isolationsfilm umfassen.
  • Die Kanalschichten 114 können als vertikale Körper der unteren Stützen PLD dienen. Die Kanalschichten 114 können jeweils einen eigenen Halbleiter umfassen. Die Kanalschichten 114 können Halbleiter mit demselben leitfähigen Typ (z. B. p-Typ) wie das Substrat 111 umfassen.
  • Auf dem Substrat kann eine Mehrzahl von Rohrleitungskontakten PC vorgesehen sein. Die Rohrleitungskontakte PC können sich in einer Bitleitungsrichtung erstrecken, sodass sie untere Oberflächen von oberen Stützen PLU, die an dem ersten oberen leitfähigen Material CMU1 ausgebildet sind, mit unteren Oberflächen der unteren Stützen PLD, die an den unteren leitfähigen Material CMD1a ausgebildet sind, verbinden. Die Rohrleitungskontakte PC können sich in einer Bitleitungsrichtung erstrecken, sodass sie untere Oberflächen von oberen Stützen PLU, die an dem achten oberen leitfähigen Material CMU8 ausgebildet sind, mit unteren Oberflächen der unteren Stützen PLD, die an dem unteren leitfähigen Material CMD1b ausgebildet sind, verbinden.
  • Bei dieser Ausführungsform kann jeder der Rohrleitungskontakte PC eine Kanalschicht 114 und einen Informationsspeicherfilm 116 umfassen. Die Kanalschichten 114 der Rohrleitungskontakte PC können die Kanalschichten 114 der oberen Stützen PLU und Kanalschichten der unteren Stützen PLD zwischenverbinden. Die Informationsspeicherfilme 116 der Rohrleitungskontakte PC können die Informationsspeicherfilme 116 der oberen Stützen PLU und die Informationsspeicherfilme 116 der unteren Stütze PLD zwischenverbinden.
  • Ein gemeinsamer Sourceabschnitt CSR, der sich entlang der ersten Richtung erstreckt, kann an den unteren Stützen PLD vorgesehen sein. Der gemeinsame Sourceabschnitt kann sich entlang einer ersten Richtung erstrecken, sodass er mit der Mehrzahl von unteren Stützen PLD verbunden ist. Der gemeinsame Sourceabschnitt CSR kann eine gemeinsame Sourceleitung CSL ausbilden. Der gemeinsame Sourceabschnitt CSR kann ein metallisches Material umfassen. Der gemeinsame Sourceabschnitt CSR kann einen leitfähigen Typ aufweisen, der sich von dem Substrat 111 unterscheidet.
  • Die Schächte 320 können an den oberen Stützen PLU vorgesehen sein. Die Schächte 320 können ein Halbleitermaterial mit einem leitfähigen Typ (z. B. n-Typ) umfassen, der sich von dem Substrat 111 unterscheidet. An den Schächten 320 können Bitleitungen BL ausgebildet sein. Die Bitleitungen BL können entlang der ersten Richtung voneinander beabstandet sein. Die Bitleitungen BL können sich entlang der zweiten Richtung erstrecken, sodass sie mit den Schächten 320 verbunden sind.
  • Bei dieser Ausführungsform können die Bitleitungen BL und die Schächte 320 über Kontaktstecker verbunden sein, und der gemeinsame Sourceabschnitt CSR und die unteren Stützen PLD können über Kontaktstecker miteinander verbunden sein.
  • Eine Zellenzeile kann aus einer unteren Stütze und einer oberen Stütze ausgebildet sein, die über einen Rohrleitungskontakt miteinander verbunden sind.
  • Bei einer beispielgebenden Ausführungsform, die in den 43 und 45 beschrieben ist, können die oberen Stützen PLU und die unteren Stützen PLD in einer Zickzackform entlang der ersten Richtung angeordnet sein.
  • Ein Teil EC einer Draufsicht in 51 kann einer der oben beschriebenen äquivalenten Schaltungen BLKa1 bis BLKa7 entsprechen.
  • 54 ist eine Draufsicht, die einen Teil eines Speicherblocks in 2 gemäß einer wiederum anderen Ausführungsform darstellt. 55 ist eine perspektivische Ansicht entlang einer Linie XXXXXV-XXXXXV' in 54. 56 ist eine Querschnittsansicht entlang einer Linie XXXXXV-XXXXXV' in 54.
  • In Bezug auf die 54 bis 56 kann ein gemeinsamer Sourceabschnitt CSR an einem Substrat 111 ausgebildet sein. Der gemeinsame Sourceabschnitt CSR kann beispielsweise an einem Dotierungsabschnitt ausgebildet sein. Der gemeinsame Sourceabschnitt CSR kann eine gemeinsame Sourceleitung CSL bilden.
  • Erste bis achte leitfähige Materialien CM1 bis CM8 können an den gemeinsamen Sourceabschnitten CSR ausgebildet sein. Die ersten bis achten leitfähigen Materialien CM1 bis CM8 können in einer Richtung senkrecht zu dem Substrat 111 gestapelt sein und in einer Richtung senkrecht zu dem Substrat 111 voneinander beabstandet sein. Unter den ersten bis achten leitfähigen Materialien CM1 bis CM8 können leitfähige Materialien, die Zeilenauswahltransistoren SST bilden, durch Zeilenauswahlleitungsausschnitte SSL Cut getrennt sein. Die Zeilenauswahlleitungsausschnitte SSL Cut können sich entlang einer ersten Richtung erstrecken und entlang einer zweiten Richtung beabstandet sein. Die übrigen leitfähigen Materialien (welche nicht für die Zeilenauswahltransistoren verwendet werden) können auf dem gemeinsamen Sourceabschnitt CSR so ausgebildet sein, dass sie eine Plattenform aufweisen, die sich entlang der ersten und zweiten Richtung erstreckt.
  • Beispielsweise können die ersten bis siebten leitfähigen Leitungen CM1 bis CM7 eine Plattenform aufweisen, und die achten leitfähigen Materialien CM8 können durch die Zeilenauswahlleitungsausschnitte SSL Cut getrennt sein. Die achten leitfähigen Materialien CM8 können sich entlang der ersten Richtung erstrecken und entlang der zweiten Richtung beabstandet sein.
  • Eine Mehrzahl von Stützen PL können so vorgesehen sein, dass sie die ersten bis achten leitfähigen Materialien CM1 bis CM8 in einer Richtung senkrecht zu dem Substrat 111 durchdringen und mit dem Substrat 111 in Kontakt stehen. Bei einem der achten leitfähigen Materialien CM8 können Stützen PL in einer Linie entlang der ersten Richtung vorgesehen sein. Jede der Stützen PL kann einen Informationsspeicherfilm 116, eine Kanalschicht 114 und ein inneres Material 115 umfassen.
  • Die Informationsspeicherfilme 116 können Informationen durch Einfangen oder Abstoßen von Ladungen speichern. Die Informationsspeicherfilme 116 können einen Tunnelisolationsfilm einen Ladungseinfangfilm und einen blockierenden Isolationsfilm umfassen. Die Kanalschichten 114 können als vertikale Körper der Stützen PL dienen. Die Kanalschichten 114 können Eigenhalbleiter umfassen. Die Kanalschichten 114 können ein Halbleitermaterial mit demselben Typ (z. B. p-Typ) wie das Substrat 111 umfassen. Die inneren Materialien 115 können ein Isolationsmaterial oder einen Luftspalt umfassen.
  • Bei einer Ausführungsform können Stützen PL aus oberen Stützen und unteren Stützen gebildet sein, wie in den 39 und 40 beschrieben ist. Wie in den 43 bis 45 beschrieben ist, können die Stützen PL in einer Zickzackform entlang der ersten Richtung angeordnet sein.
  • 57 ist ein Schaltdiagramm, das eine äquivalente Schaltung eines Teils EC aus einer Draufsicht in 54 gemäß einer Ausführungsform darstellt. In Bezug auf die 54 bis 57 kann ein gemeinsamer Sourceabschnitt CSR zwischen Stützen PL und einem Substrat 111 ausgebildet sein.
  • Kanalschichten 114 können von einem p-Typ sein, und der gemeinsame Sourceabschnitt CSR kann ein n-Typ sein. Ein Teilbereich unter den Kanalschichten 114, der Masseauswahltransistoren GST entspricht, kann vom p-Typ sein, und der gemeinsame Sourceabschnitt CSR kann ein n-Typ sein. D. h., die Kanalschicht 114 und der gemeinsame Sourceabschnitt CSR können einen PN-Übergang bilden. Demzufolge können zwischen den Zellenzeilen CS11, CS12, CS21 und CS22 Dioden D ausgebildet sein, die aus Stützen PL und einer gemeinsamen Sourceleitung, die aus dem gemeinsamen Sourcenabschnitt CSR gebildet wird, ausgebildet werden. Eine äquivalente Schaltung BLKf1 in 57 kann mit derjenigen aus 7 bis auf die darin vorgesehenen Dioden D identisch sein.
  • Die äquivalente Schaltung BLKf1 kann ebenso wie die oben beschriebenen äquivalenten Schaltungen BLKa2 bis BLKa7 angewendet werden.
  • 58 ist eine perspektivische Ansicht entlang einer Linie XXXXXV-XXXXXV' in 54. 59 ist eine Querschnittsansicht entlang einer Linie XXXXXV-XXXXXV' in 54.
  • In Bezug auf die 54, 58 und 59 können sich leitfähige Materialien unter den ersten bis achten leitfähigen Materialien CM1 bis CM8, die Masseauswahltransistoren GST bilden, entlang einer ersten Richtung erstrecken, und entlang einer zweiten Richtung voneinander beabstandet sein. Die leitfähigen Materialien, die Masseauswahltransistoren GST bilden, können dieselbe Struktur aufweisen wie leitfähige Materialien, die Zeilenauswahltransistoren SST bilden. Beispielsweise können die ersten leitfähigen Materialien CM1 dieselbe Struktur aufweisen wie die achten leitfähigen Materialien CM8.
  • Bei einer Ausführungsform, die in 39 und 40 beschrieben ist, können Stützen PL aus oberen Stützen und unteren Stützen gebildet sein. Wie in den 43 bis 45 beschrieben ist, können Stützen PL in einer Zickzackform entlang der ersten Richtung angeordnet sein.
  • 60 ist ein Schaltungsdiagramm, das eine äquivalente Schaltung eines Teils EC einer Draufsicht in 54 gemäß einer anderen Ausführungsform darstellt.
  • In Bezug auf die 54 und 58 bis 60 können Dioden D zwischen Zellenzeilen CS11, CS12, CS21 und CS22 und einer gemeinsamen Sourceleitung CSL ausgebildet sein. Die Masseauswahltransistoren GST können mit einer Mehrzahl von Masseauswahlleitungen GSL1 und GSL2 verbunden sein. Beispielsweise können die Masseauswahltransistoren der Zellenzeilen CS11 und CS12 mit einer ersten Masseauswahlleitung GSL1 verbunden sein, und Masseauswahltransistoren der Zellenzeilen CS21 und CS22 können mit einer zweiten Masseauswahlleitung GSL2 verbunden sein.
  • Die äquivalente Schaltung BLKf2 kann ebenso angewendet werden wie die oben beschriebenen äquivalenten Schaltungen BLKa2 bis BLKa7.
  • 61 ist ein Blockdiagramm, das ein Speichersystem gemäß einer Ausführungsform darstellt. Mit Bezug auf 61 kann ein Speichersystem 1000 eine nichtflüchtige Speichervorrichtung 1100 und einen Controller 1200 umfassen.
  • Die nichtflüchtige Speichervorrichtung 1100 kann im Wesentlichen identisch mit derjenigen der nichtflüchtigen Speichervorrichtungen 100 bis 500 gemäß der Ausführungsformen sein. D. h. die nichtflüchtige Speichervorrichtung 1100 kann eine Mehrzahl von Zellenzeilen CS11, CS12, CS21 und CS22 umfassen, die auf einem Substrat 111 vorgesehen sind, wobei jede eine Mehrzahl von Zellentransistoren CT umfasst, die in einer Richtung senkrecht zu dem Substrat 111 gestapelt sind. Die nichtflüchtige Speichervorrichtung 1100 kann einen Programmiervorgang gemäß dem oben beschriebenen Programmierverfahren vornehmen. Die nichtflüchtige Speichervorrichtung 1100 kann einen Zustandlesevorgang durchführen, um einen Programmiervorgang hinsichtlich einer Ladungsneuordnung gemäß einem Zustandleseergebnis durchzuführen.
  • Der Controller 1200 kann mit einem Host und der nichtflüchtigen Speichervorrichtung 1100 verbunden sein. In Reaktion auf eine Anfrage des Hosts, kann der Controller 1200 dazu ausgestaltet sein, auf die nichtflüchtige Speichervorrichtung 1100 zuzugreifen. Beispielsweise kann der Controller 1200 dazu ausgestaltet sein, einen Lesevorgang, einen Schreibvorgang, einen Löschungsvorgang, einen Zustandlesevorgang, einen Programmiervorgang unter Berücksichtigung einer Neuordnung und einen Hintergrundvorgang der nichtflüchtigen Speichervorrichtung 1100 zu steuern. Der Controller 1200 kann dazu ausgestaltet sein, eine Schnittstelle zwischen der nichtflüchtigen Speichervorrichtung 1100 und dem Host bereitzustellen. Der Controller 1200 kann dazu ausgestaltet sein, eine Firmware zum Steuern der nichtflüchtigen Speichervorrichtung 1100 zu treiben.
  • Der Controller 1200 kann dazu ausgestaltet sein, für die nichtflüchtige Speichervorrichtung 1100 ein Steuersignal CTRL, einen Befehl CMD und eine Adresse ADDR bereitzustellen. In Reaktion auf das Steuersignal CTRL des Befehls CMD und der Adresse ADDR, die von dem Controller 1200 bereitgestellt werden, kann die nichtflüchtige Speichervorrichtung 1100 einen Lesevorgang, einen Schreibvorgang, einen Zustandlesevorgang, einen Löschungsvorgang und einen Programmiervorgang unter Berücksichtigung einer Ladungsneuordnung durchführen.
  • Bei einer Ausführungsform kann der Controller 1200 ferner Bestandteile wie eine Verarbeitungseinheit, eine Hostschnittstelle und eine Speicherschnittstelle umfassen. Die Verarbeitungseinheit kann einen Gesamtvorgang des Controllers 1200 steuern.
  • Die Hostschnittstelle kann das Protokoll zum Ausführen eines Datenaustauschs zwischen dem Host und dem Controller 1200 umfassen. Beispielsweise kann die Hostschnittstelle mit einer externen Vorrichtung (z. B. den Host) über zumindest eines von verschiedenen Protokollen z. B. einem USB (Universal Serial Bus) Protokoll, einem MMC (Multimedia Card) Protokoll, einem PCI (Peripheral Component Interconnection) Protokoll, einem PCI-E (PCI-Express) Protokoll, einem ATA (Advanced Technology Attachment) Protokoll, einem Serial-ATA Protokoll, einem Parallel-ATA Protokoll, einem SCSI (Small Computer Small Interface) Protokoll, einem ESDI (Enhanced Small Disk Interface) Protokoll und einem IDE (Integrated Drive Electronics) Protokoll kommunizieren. Die Speicherschnittstelle kann eine Schnittstelle zu der nichtflüchtigen Speichervorrichtung 1100 sein. Die Speicherschnittstelle kann eine NAND-Schnittstelle oder eine NOR-Schnittstelle umfassen.
  • Das Speichersystem 1000 kann als ein Computer, ein tragbarer Computer, ein Ultra Mobile PC (UMPC), eine Workstation, ein Netbook, ein PDA, ein Webtablet, ein schnurloses Telefon, ein Mobiltelefon, ein Smartphone, ein E-Book, ein PMP (portabler Multimediaplayer), eine Digitalkamera, ein digitaler Audiorekorder/Player, ein digitaler Bilder/Video-Rekorder/Player, eine portable Spielekonsole, ein Navigationssystem, eine Blackbox, ein dreidimensionaler Fernseher, eine Vorrichtung, die dazu fähig ist, Informationen unter drahtlosen Gegebenheiten zu übertragen und zu empfangen, eine von verschiedenen elektronischen Vorrichtungen, die ein Heimnetzwerk bilden, eine von verschiednen elektronischen Vorrichtungen, die ein Computernetzwerk bilden, eine von verschiedenen elektronischen Vorrichtungen, die ein telematisches Netzwerk ausbilden, RFID, oder eine von verschiedenen elektronischen Vorrichtungen, die ein Computersystem ausbilden, sein.
  • Eine nicht flüchtige Speichervorrichtung 1100 oder ein Speichersystem 1000 können in verschiedenen Typen von Paketen verpackt sein, wie z. B. PoP (Package an Package), Ball Grid Arrays (BGAs), Chip Scale Packages (CSPs), Plastic Leaded Chip Carrier (PLCC), Plastic Dual In-Line Package (PDI2P), Die in Waffle Pack, Die in Wafer Form, Chip On Board (COB), Ceramic Dual In-Line Package (CERDIP), Plastic Metric Quad Flat Pack (MQFP), Thin Quad Flatpack (TQFP), Small Outline (SOIC), Shrink Small Outline Package (SSOP), Thin Small Outline (TSOP), System In Package (SIP), Multi Chip Package (MCP), Wafer-Level Fabricated Package (WFP), Wafer-Level Processed Stack Package (WSP), und dergleichen.
  • 62 ist ein Flussdiagramm zur Beschreibung eines Programmierverfahrens eines Speichersystems gemäß einer Ausführungsform. In Bezug auf die 61 und 62 kann ein Controller 1200 bei einem Vorgang S1110 einen Programmbefehl und Programmdaten an eine nichtflüchtige Speichervorrichtung 1100 senden. Zu dieser Zeit können Adressen von Speicherzellen versendet werden, in welchen die Programmdaten gespeichert werden sollen.
  • Bei Vorgang S1120 können die nichtflüchtigen Speichervorrichtungen 1100 einen Programmiervorgang gemäß einem der Programmierverfahren gemäß der Ausführungsformen durchführen. Beispielsweise kann die nichtflüchtige Speichervorrichtung 1100 einen Zustandlesevorgang durchführen und sie kann einen Programmiervorgang gemäß einem Zustandleseergebnis ausführen. Die nichtflüchtige Speichervorrichtung 1100 kann einen Zustandlesevorgang durchführen, wenn Programmdaten MSB-Daten sind, und sie kann ein Programmiervorgang gemäß einem Zustandleseergebnis ausführen. Die nichtflüchtige Speichervorrichtung 1100 kann einen Zustandlesevorgang durchführen, wenn Programmdaten feine Programmdaten sind, und sie kann einen Programmiervorgang gemäß einem Zustandleseergebnis ausführen. Die nichtflüchtige Speichervorrichtung 1100 kann ein Zustandleseergebnis in einem ergänzenden Bereich speichern, und sie kann, falls benötigt, das gespeicherte Zustandleseergebnis verwenden. Die nichtflüchtige Speichervorrichtung 1100 kann ein Zustandleseergebnis von einem Testdatenabschnitt auslesen und verwenden, falls benötigt. Die nichtflüchtige Speichervorrichtung 1100 kann eine Neuordnungs-Charakteristik gemäß zuvor programmierten Daten erfassen (oder vorhersagen), und sie kann Daten programmieren, um einen Programmiervorgang gemäß einem erfassten (oder vorhergesagten) Ergebnis durchzuführen. Die nichtflüchtige Speichervorrichtung 1100 kann eine Neuordnungs-Charakteristik gemäß zuvor programmierten Daten, Programmdaten und Daten, die als Nächstes programmiert werden sollen, erfassen (oder vorhersagen), um einen Programmiervorgang gemäß einem erfassten (oder vorhergesagten) Ergebnis durchzuführen.
  • 63 ist ein Flussdiagramm zum Beschreiben eines Zustandleseverfahrens eines Speichersystems gemäß einer Ausführungsform. Mit Bezug auf die 61 und 63 kann ein Controller 1200 bei Vorgang S1210 einen Zustandlesebefehl an eine nichtflüchtige Speichervorrichtung 1100 senden. Zu dieser Zeit können Adressen von Speicherzellen, an denen ein Zustandlesevorgang ausgeführt werden soll, gesendet werden.
  • Bei Vorgang S1220 kann die nichtflüchtige Speichervorrichtung 1100 einen Zustandlesevorgang gemäß einer Ausführungsform durchführen (Vorgänge S151 bis S155).
  • Bei Vorgang S1230 kann die nichtflüchtige Speichervorrichtung 1100 ein Zustandleseergebnis an den Controller 1200 senden.
  • Der Controller 1200 kann verschiedene Vorgänge der nichtflüchtigen Speichervorrichtung 1100 wie z. B. eine Programmierung, ein Auslesen und eine Löschung basierend auf dem übertragenen Zustandleseergebnis steuern.
  • Der Controller 1200 kann zuvor gespeicherte Daten aus der nichtflüchtigen Speichervorrichtung 1100 und Programmdaten und Daten, die als nächstes programmiert werden sollen, von einer externen Vorrichtung empfangen, und er kann über Pegel von Überprüfungsspannungen entscheiden, die bei einer Programmierung der Programmdaten verwendet werden, um diese mit den Programmdaten zu der nichtflüchtigen Speichervorrichtung zu senden.
  • 64 ist ein Blockdiagramm, das eine Anwendung eines Speichersystems in 61 darstellt. In Bezug auf 64 kann ein Speichersystem 2000 eine nichtflüchtige Speichervorrichtung 2100 und einen Controller 2200 umfassen. Die nichtflüchtige Speichervorrichtung 2100 kann eine Mehrzahl von nichtflüchtigen Speicherchips umfassen, die eine Mehrzahl von Gruppen bilden. Nichtflüchtige Speicherchips in jeder Gruppe können dazu ausgestaltet sein, mit dem Controller 2200 über einen gemeinsamen Kanal zu kommunizieren. Bei einer Ausführungsform kann die Mehrzahl von nichtflüchtigen Speicherchips über eine Mehrzahl von Kanälen CH1 bis CHk kommunizieren.
  • Jeder der nichtflüchtigen Speicherchips kann mit denjenigen der nichtflüchtigen Speichervorrichtungen 100 bis 500 gemäß den Ausführungsformen im Wesentlichen identisch sein, d. h. die nichtflüchtige Speichervorrichtung 2100 kann eine Mehrzahl von Zellenzeilen CS11, CS12, CS21 und CS22 umfassen, die auf einem Substrat 111 vorgesehen sind, von denen jede eine Mehrzahl von Zellentransistoren CT umfasst, die in einer Richtung senkrecht zu dem Substrat 111 gestapelt sind. Die nichtflüchtige Speichervorrichtung 2100 kann einen Zustandlesevorgang gemäß den Ausführungsformen durchführen, und sie kann einen Programmiervorgang unter Berücksichtigung einer Neuordnung gemäß einem Zustandleseergebnis durchführen. Der Controller 2100 kann die nichtflüchtige Speichervorrichtung 2100 derart steuern, dass ein Zustandlesevorgang und ein Programmiervorgang gemäß den Ausführungsformen durchgeführt wird. Die Steuervorrichtung 2200 kann die nichtflüchtige Speichervorrichtung 2100 derart steuern, dass ein Zustandlesevorgang gemäß den Ausführungsformen durchgeführt wird, und sie kann Vorgänge der nichtflüchtigen Speichervorrichtung 3100 gemäß einem Zustandleseergebnis steuern.
  • In 64 ist der Fall beschrieben, dass ein Kanal mit einer Mehrzahl von nichtflüchtigen Speicherchips verbunden ist. Allerdings kann das Speichersystem 2000 modifiziert sein, so dass ein Kanal mit einem nichtflüchtigen Speicherchip verbunden ist.
  • 65 ist ein Diagramm, das eine Speicherkarte gemäß einer Ausführungsform darstellt. Mit Bezug auf 65 kann die Speicherkarte 3000 eine nichtflüchtige Speichervorrichtung 3100, einen Controller 3200 und einen Verbinder 3300 umfassen.
  • Die nichtflüchtige Speichervorrichtung 3100 kann mit derjenigen von einer der nichtflüchtigen Speichervorrichtungen 100 bis 500 gemäß den beispielgebenden Ausführungsformen im Wesentlichen identisch sein. Das heißt die nichtflüchtige Speichervorrichtung 3100 kann eine Mehrzahl von Zellenzeilen CS11, CS12, CS21 und CS22 umfassen, die auf einem Substrat 111 vorgesehen sind, von denen jede einen Mehrzahl von Zellentransistoren CT umfasst, die in einer Richtung senkrecht zu dem Substrat 111 gestapelt sind. Die nichtflüchtige Speichervorrichtung 3100 kann einen Zustandlesevorgang gemäß den Ausführungsformen durchführen und sie kann einen Programmiervorgang unter Berücksichtigung einer Neuordnung gemäß einem Zustandleseergebnis durchführen. Der Controller 3200 kann die nichtflüchtige Speichervorrichtung 3100 derart steuern, dass ein Zustandlesevorgang und ein Programmiervorgang gemäß den Ausführungsformen durchgeführt wird. Der Controller 3200 kann die nichtflüchtige Speichervorrichtung 3100 derart steuern, dass ein Zustandlesevorgang gemäß den Ausführungsformen durchgeführt wird, und er kann Steuervorgänge der nichtflüchtigen Speichervorrichtung 3100 gemäß einem Zustandleseergebnis steuern.
  • Der Verbinder 3300 kann die Speicherkarte 3000 mit einem Host elektrisch verbinden.
  • Die Speicherkarte 3000 kann aus Speicherkarten gebildet sein, wie z. B. einer PC (PCMCIA) Karte, einer CF Karte, einer SM (oder SMC) Karte, einen Speicherstick, einer Multimediakarte (MMC, RS-MMC, MMCmicro), einer Security Card (SD, miniSD, microSD, SDHC), einem Universal Flash Storage (UFS) Vorrichtung, und dergleichen.
  • 66 ist ein Diagramm, das ein Solid State Laufwerk gemäß einer Ausführungsform zeigt. In Bezug auf 66 kann ein Solid State Laufwerk 4000 eine Mehrzahl von nichtflüchtigen Speichervorrichtungen 4100, einen Controller 4200 und einen Verbinder 4300 umfassen.
  • Jede der nichtflüchtigen Speichervorrichtungen 4100 kann mit derjenigen von einer der nichtflüchtigen Speichervorrichtungen 100 bis 500 gemäß den beispielgebenden Ausführungsformen im Wesentlichen identisch sein. D. h., jede der nichtflüchtigen Speichervorrichtungen 4100 kann eine Mehrzahl von Zellenzeilen CS11, CS12, CS21 und CS22 umfassen, die auf einem Substrat 111 vorgesehen sind, von denen jede eine Mehrzahl von Zellentransistoren C umfasst, die in einer Richtung senkrecht zu dem Substrat 111 gestapelt sind. Die nichtflüchtige Speichervorrichtung 4100 kann einen Zustandlesevorgang gemäß den Ausführungsformen durchführen, und sie kann einen Programmiervorgang unter Berücksichtigung einer Neuordnung gemäß einem Zustandleseergebnis durchführen. Der Controller 4200 kann die nichtflüchtige Speichervorrichtung 4100 derart steuern, dass ein Zustandlesevorgang und ein Programmiervorgang gemäß den Ausführungsformen durchgeführt wird. Der Controller 4200 kann die nichtflüchtige Speichervorrichtung 4100 derart steuern, dass ein Zustandlesevorgang gemäß den Ausführungsformen durchgeführt wird, und er kann Vorgänge der nichtflüchtigen Speichervorrichtung 4100 gemäß einem Zustandleseergebnis steuern.
  • Der Verbinder 4300 kann das Solid State Laufwerk 4000 mit einem Host elektrisch verbinden.
  • 67 ist ein Blockdiagramm, das ein Berechnungssystem gemäß einer Ausführungsform darstellt. In Bezug auf 67 kann ein Berechnungssystem 5000 eine zentrale Verarbeitungseinheit 5100, ein RAM 5200, eine Nutzerschnittstelle 5300, ein Modem 5400, ein Modem 5400 und ein Speichersystem 5600 umfassen.
  • Das Speichersystem 5600 kann mit den Elementen 5100 bis 5400 über einen Systembus 5500 elektrisch verbunden sein. Daten, die über die Nutzerschnittstelle 5300 bereit gestellt werden oder durch die zentrale Verarbeitungseinheit 5100 verarbeitet werden, können in dem Speichersystem 5600 gespeichert werden.
  • Das Speichersystem 5600 kann eine nichtflüchtige Speichervorrichtung 5610 und einen Controller 5620 umfassen. Das Speichersystem 5600 kann aus einem der Speichersysteme 1000 und 2000, einer Speicherkarte 3000 oder einem Solid State Laufwerk 4000 gemäß den Ausführungsformen gebildet werden.
  • Der oben genannte Gegenstand ist zur Veranschaulichung und nicht beschränkend gedacht. Es ist vorgesehen, dass viele alternative Ausführungsformen innerhalb des Umfangs der Erfindung fallen. Während beispielsweise die oben genannten Ausführungsformen auf eine Speicherzelle fokussiert sind, die Daten als eine Schwellwertspannung in einem Speicherzellentransistor speichert, ist die Anwendung ebenso auf andere Speicherzellentypen anwendbar, und die Charakteristiken können Daten darstellen, die unterschiedlich sind. Beispielsweise kann ein Umfang von Widerstandswerten einen Programmzustand in einer PRAM-Speichervorrichtung darstellen, wobei mehrere Umfänge mehrere Programmzustände darstellen. Andere Faktoren neben denjenigen, die hier beschrieben sind, können die Veränderung der Speichervorrichtungscharakteristik, die Daten darstellt, beeinflussen (z. B. eine Veränderung des Spannungsschwellwerts oder Widerstandswerts). Die angefügten Ansprüche sind dazu gedacht, alle solche Modifikationen, Verbesserungen oder Ausführungsformen abzudecken, die in den wirklichen Kern und Umfang fallen. Somit ist der Umfang durch die breiteste zulässige Interpretation der folgenden Ansprüche und deren Äquivalente nach dem maximalen, durch das Gesetz erlaubten Ausmaß zu bestimmen, und er sollte nicht durch die vorhergegangene ausführliche Beschreibung beschränkt oder begrenzt werden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • KR 1020110104753 [0001]
    • US 5473563 [0221, 0221]
    • US 2011/0222342 [0263]
    • US 7813183 [0304]
    • US 2012/010374 [0304, 0304]

Claims (20)

  1. Verfahren zum Programmieren eines nichtflüchtigen Speichers (100, 200, 300, 400, 1100, 2100, 3100, 4100) aufweisend: (a) Bestimmen einer Tendenz zur Veränderung einer Schwellwertspannung eines ersten Speicherzellentransistors aus einem Programmierungszustand; (b) Auswählen einer ersten Überprüfungsspannung aus einer Mehrzahl von Überprüfungsspannungen in Reaktion auf die Bestimmung; und (c) Programmieren des ersten Speicherzellentransistors, um die Schwellwertspannung des ersten Speicherzellentransistors umzuändern, wobei das Programmieren ein Überprüfen, dass die Schwellwertspannung des ersten Speicherzellentransistors ausreichend umgeändert worden ist, unter Verwendung der ersten Überprüfungsspannung umfasst, wobei der Schritt (a) des Bestimmens einer Tendenz zur Veränderung der Schwellwertspannung des ersten Speicherzellentransistors ein Bestimmen einer Veränderung der Schwellwertspannung des ersten Speicherzellentransistors über einen ersten Umfang hinaus aufweist.
  2. Verfahren nach Anspruch 1, ferner aufweisend: (d) Programmieren des ersten Speicherzellentransistors, um die Schwellwertspannung des ersten Speicherzellentransistors innerhalb des ersten Umfangs zu ändern.
  3. Verfahren nach Anspruch 2, wobei Schritt (c) des Programmierens ein Umändern der Schwellwertspannung des ersten Speicherzellentransistors in einen zweiten Umfang aufweist, um wenigstens ein erstes Bit der Daten und ein zweites Bit der Daten darzustellen.
  4. Verfahren nach Anspruch 3, wobei der erste Speicherzellentransistor einer aus einer Mehrzahl von Speichertransistoren ist, die in Serie geschaltet verbunden sind, um eine NAND-Zeile von Speicherzellentransistoren zu bilden, und wobei der Schritt des Überprüfens des Schwellwerts des ersten Speicherzellentransistors ein Anlegen der ersten Überprüfungsspannung an einer Wortleitung, die mit dem ersten Speicherzellentransistor verbunden ist, aufweist.
  5. Verfahren nach Anspruch 3, wobei die Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100) eine Wortleitung und einen zweiten Speicherzellentransistor aufweist, wobei der erste Speicherzellentransistor und der zweite Speicherzellentransistor mit der Wortleitung verbunden sind, und das Verfahren ferner aufweist: (e) Bestimmen einer Tendenz zur Veränderung einer Schwellwertspannung des zweiten Speicherzellentransistors aus einem programmierten Zustand; und (f) Auswählen einer zweiten Überprüfungsspannung, die sich von der ersten Überprüfungsspannung unterscheidet, aus einer Mehrzahl von Überprüfungsspannungen in Reaktion auf die Bestimmung, wobei Schritt (c) ein Programmieren des zweiten Speicherzellentransistors zum Umändern der Schwellwertspannung des zweiten Speicherzellentransistors in einen zweiten Umfang umfasst, um wenigstens ein anderes erstes Bit der Daten und ein anderes zweites Bit der Daten darzustellen, wobei das Programmieren ein Überprüfen, dass die Schwellwertspannung der zweiten Speicherzelle ausreichend umgeändert worden ist, unter Verwendung der zweiten Überprüfungsspannung umfasst, und wobei der Schritt (e) des Bestimmens einer Tendenz zur Veränderung der Schwellwertspannung des zweiten Speicherzellentransistors ein Bestimmen einer Veränderung der Schwellwertspannung des zweiten Speicherzellentransistors über den ersten Umfang hinaus aufweist.
  6. Verfahren nach Anspruch 5, wobei Schritt (d) ein Programmieren des zweiten Speicherzellentransistors aufweist, um die Schwellwertspannung des zweiten Speicherzellentransistors innerhalb des ersten Umfangs umzuändern.
  7. Verfahren nach Anspruch 6, wobei Schritt (c) aufweist: (i) Anlegen eines Programmimpulses an der Wortleitung, um die Schwellwertspannungen des ersten und zweiten Speicherzellentransistors umzuändern; (ii) Anlegen der ersten Überprüfungsspannung an der Wortleitung, um zu Überprüfen, dass die Schwellwertspannung des ersten Speicherzellentransistors ausreichend umgeändert worden ist; und (iii) Anlegen der zweiten Überprüfungsspannung an der Wortleitung, um zu Überprüfen, dass die Schwellwertspannung des zweiten Speicherzellentransistors ausreichend umgeändert worden ist.
  8. Verfahren nach Anspruch 7, wobei die Schritte (i), (ii) und (iii) zumindest mit einer Anzahl von Wiederholungen wiederholt werden, falls bestimmt wird, dass die Schwellwertspannung von zumindest einem der ersten und zweiten Speicherzellentransistoren nicht ausreichend geändert worden ist.
  9. Verfahren nach Anspruch 3, wobei der erste Umfang ein Umfang von Schwellwerten ist, die das erste Bit der Daten in einem Zustand vor einer Programmierung der ersten Speicherzelle mit Informationen des zweiten Bits der Daten darstellen.
  10. Verfahren nach Anspruch 3, wobei Schritt (c) aufweist: (i) Anlegen eines Programmimpulses an der Wortleitung, um die Schwellwertspannung des ersten Speicherzellentransistors umzuändern; (ii) Anlegen einer mittleren Überprüfungsspannung an der Wortleitung, um zu Überprüfen, dass die Schwellwertspannung des ersten Speicherzellentransistors auf zumindest einen mittleren Pegel erhöht worden ist; und nach einem Bestimmen der Veränderung der Schwellwertspannung des ersten Speicherzellentransistors über den ersten Umfang hinaus bei Schritt (a): (iii) Anlegen eines Programmimpulses an der Wortleitung, um die Schwellwertspannung des ersten Speicherzellentransistors umzuändern; und (iv) Anlegen der ersten Überprüfungsspannung an der Wortleitung, um zu Überprüfen, dass die Schwellwertspannung des ersten Speicherzellentransistors ausreichend umgeändert worden ist.
  11. Nichtflüchtige Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100), aufweisend: Bitleitungen; Wortleitungen; ein dreidimensionales Feld von Speicherzellen (110, 210, 310, 410), das eine Mehrzahl von Speicherzellenzeilen aufweist, von denen jede Speicherzellenzeile einen vertikalen Stapel von Speicherzellen umfasst, die mit einer jeweiligen Bitleitung verbunden sind, und Speicherzellen von unterschiedlichen Speicherzellenzeilen mit einer jeweiligen Wortleitung verbunden sind; einen Seitenpuffer (130, 230, 330, 430), der Daten-Flipflops und zweite Flipflops, die mit entsprechenden Bitleitungen verbunden sind, umfasst, wobei Daten-Flipflops dazu ausgestaltet sind, Daten zu speichern; einen Spannungsgenerator (150, 250, 350, 450), der dazu ausgestaltet ist, eine Programmierspannung zu erzeugen; einen Reihendekoder (120, 220, 320, 420), der dazu ausgestaltet ist, eine Adresse zu decodieren und eine Wortleitung auszuwählen; eine Steuereinheit (160, 260, 360, 460), die dazu ausgestaltet ist, einen Programmierungsvorgang zu steuern, der ein Programmieren einer Mehrzahl von Programmschleifen umfasst, von denen jede Programmschleife ein Anlegen eines Programmimpulses an einer Wortleitung, die durch den Reihendekoder (120, 220, 320, 420) ausgewählt wird, und eine Mehrzahl von aufeinanderfolgenden Prüfungsvorgängen zum Überprüfen der jeweiligen Programmpegel einer ersten Reihe von Speicherzellen, die mit der ausgewählten Wortleitung verbunden sind, aufweist, wobei die Daten-Flipflops des Seitenpuffers (130, 230, 330, 430) dazu ausgestaltet sind, einen Programmierungsvorgang an jeweiligen Speicherzellen der ersten Reihe, die mit Bitleitungen der entsprechenden Daten-Flipflops verbunden sind, zu unterdrücken oder zu zulassen, und wobei die zweiten Flipflops dazu ausgestaltet sind, eine Mehrzahl von Überprüfungsergebnissen, die jedem aus der Mehrzahl von Überprüfungsvorgängen der Programmschleifen entsprechen, auszuwählen.
  12. Nichtflüchtige Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100) nach Anspruch 11, wobei die Steuereinheit (160, 260, 360, 460) dazu ausgestaltet ist, einen Programmierungsvorgang zu steuern, um eine Speicherzellencharakteristik von jeder der Speicherzellen der ersten Reihe in einen aus einer Mehrzahl von Programmzuständen zu modifizieren, wobei jeder Programmzustand einen unterschiedlichen Datensatz aus einem oder mehreren Bits der Daten darstellt.
  13. Nichtflüchtige Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100) nach Anspruch 12, wobei die Steuereinheit (160, 260, 360, 460) dazu ausgestaltet ist, eine Mehrzahl von Programmschleifen durchzuführen, von denen jede Programmschleife eine Mehrzahl von Überprüfungsvorgängen für zumindest einen der Programmzustände aufweist.
  14. Nichtflüchtige Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100) nach Anspruch 13, wobei die zweiten Flipflops Neuordnungs-Flipflops sind und dazu ausgestaltet sind, Neuordnungsdaten zu speichern, die eine Ladungsneuordnungs-Charakteristik der ersten Reihe der Speicherzellen anzeigen, und Bitleitungen zu entsprechen, die mit dem Neuordnungs-Flipflops verbunden sind, wobei eines aus der Mehrzahl von Überprüfungsergebnissen basierend auf den Neuordnungsdaten der entsprechenden Neuordnungs-Flipflops ausgewählt wird.
  15. Nichtflüchtige Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100) nach Anspruch 14, wobei die Steuereinheit (160, 260, 360, 460) dazu ausgestaltet ist, einen Zustandlesevorgang an einem Programmzustand eines Bits niedrigster Wertigkeit an der ersten Reihe von Speicherzellen durchzuführen, zum effektiven Erzeugen und Speichern von entsprechenden Neuordnungsdaten in entsprechenden Neuordnungs-Flipflops, um aus der Mehrzahl von Überprüfungsergebnissen eines auszuwählen, wenn Bits niedrigster Wertigkeit und zusätzliche Bits in die erste Reihe der Speicherzellen programmiert werden.
  16. Nichtflüchtige Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100) nach Anspruch 14, wobei die Steuereinheit (160, 260, 360, 460) dazu ausgestaltet ist, einen Zustandlesevorgang eines ersten Programmzustands durchzuführen, der einen ersten Lesevorgang mit einer ersten Lesespannung, die an der ausgewählten Wortleitung angelegt wird, sowie einen zweiten Lesevorgang mit einer zweiten Lesespannung, die höher als die erste Lesespannung ist und an der ausgewählten Wortleitung angelegt wird, umfasst, wobei die erste Lesespannung und zweite Lesespannung eine Größe innerhalb eines Schwellwertumfangs aufweisen, der den ersten Programmzustand darstellt, wobei die Neuordnungsdaten der Neuordnungs-Flipflops Informationen eines Ergebnisses des Zustandlesevorgangs umfassen.
  17. Nichtflüchtige Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100) nach Anspruch 16, wobei die Steuereinheit (160, 260, 360, 460) bestimmt, dass diejenigen Speicherzellen der ersten Reihe von Speicherzellen, die einen zunehmenden Schwellwert einer Ladungsneuordnungs-Charakteristik aufweisen, solche Speicherzellen der ersten Reihe sind, die eine Schwellwertspannung aufweisen, die höher als die zweite Lesespannung ist, und diejenigen Speicherzellen der ersten Reihe der Speicherzellen, die einen abnehmenden Schwellwert einer Ladungsneuordnungs-Charakteristik aufweisen, solche Speicherzellen der ersten Reihe sind, die eine Schwellwertspannung aufweisen, die niedriger als die erste Lesespannung ist.
  18. Nichtflüchtige Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100) nach Anspruch 17, wobei die Steuereinheit (160, 260, 360, 460) dazu ausgestaltet ist, Daten in den Neuordnungs-Flipflops derart zu speichern, dass Speicherzellen, zu denen bestimmt wurde, dass sie einen zunehmenden Schwellwert einer Ladungsneuordnungs-Charakteristik aufweisen, Prüfungsergebnisse einer ersten Überprüfungsspannung von Speicherzellen auswählen, die in einem zweiten Programmzustand programmiert werden sollen, und dass Speicherzellen, zu denen bestimmt wurde, dass sie einen abnehmenden Schwellwert einer Ladungsneuordnungs-Charakteristik aufweisen, Überprüfungsergebnisse einer zweiten Überprüfungsspannung auswählen, die höher als die erste Überprüfungsspannung von Speicherzellen ist, die in einen zweiten Programmzustand programmiert werden sollen.
  19. Nichtflüchtige Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100) nach Anspruch 16, wobei die Steuereinheit (160, 260, 360, 460) dazu ausgestaltet ist, die Neuordnungsdaten, die in den Neuordnungs-Flipflops gespeichert sind, als eine Funktion des Ergebnisses des Zustandlesevorgangs und als eine Funktion eines Programmierungsvorgangs von Speicherzellen einer Wortleitung, die zu der ausgewählten Wortleitung benachbart ist, zu erzeugen, nachdem die erste Reihe der Speicherzellen, die mit der ausgewählten Wortleitung verbunden ist, dazu programmiert wurde, den ersten Programmzustand zu umfassen.
  20. Nichtflüchtige Speichervorrichtung (100, 200, 300, 400, 1100, 2100, 3100, 4100) nach Anspruch 19, wobei die Steuereinheit (160, 260, 360, 460) dazu ausgestaltet ist, die Neuordnungsdaten, die in den Neuordnungs-Flipflops gespeichert sind, als eine Funktion des Ergebnisses des Zustandlesevorgangs und als eine Funktion einer Spannungsschwellwertdifferenz zwischen Speicherzellen der ausgewählten Wortleitung und benachbarten Speicherzellen der benachbarten Wortleitung zu erzeugen.
DE102012109612A 2011-10-13 2012-10-10 Nichtflüchtige Speichervorrichtung, Programmierungsverfahren für nichtflüchtige Speichervorrichtungen und Speichersystem, das eine nichtflüchtiger Speichervorrichtung umfasst Pending DE102012109612A1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2011-0104753 2011-10-13
KR1020110104753A KR101855169B1 (ko) 2011-10-13 2011-10-13 불휘발성 메모리 장치, 불휘발성 메모리 장치의 프로그램 방법, 불휘발성 메모리 장치를 포함하는 메모리 시스템
US13/648,290 US8902651B2 (en) 2011-10-13 2012-10-10 Nonvolatile memory device, programming method of nonvolatile memory device and memory system including nonvolatile memory device
US13/648,290 2012-10-10

Publications (2)

Publication Number Publication Date
DE102012109612A1 true DE102012109612A1 (de) 2013-04-18
DE102012109612A8 DE102012109612A8 (de) 2013-08-22

Family

ID=47990829

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012109612A Pending DE102012109612A1 (de) 2011-10-13 2012-10-10 Nichtflüchtige Speichervorrichtung, Programmierungsverfahren für nichtflüchtige Speichervorrichtungen und Speichersystem, das eine nichtflüchtiger Speichervorrichtung umfasst

Country Status (2)

Country Link
CN (1) CN103050149B (de)
DE (1) DE102012109612A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10964402B1 (en) 2020-02-19 2021-03-30 Sandisk Technologies Llc Reprogramming memory cells to tighten threshold voltage distributions and improve data retention

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150094129A (ko) * 2014-02-10 2015-08-19 에스케이하이닉스 주식회사 반도체 장치 및 이의 동작 방법
KR20150098105A (ko) * 2014-02-19 2015-08-27 에스케이하이닉스 주식회사 반도체 장치 및 이의 동작 방법
CN103904083A (zh) * 2014-03-05 2014-07-02 清华大学 W形垂直沟道3dnand闪存及其形成方法
KR20160005264A (ko) * 2014-07-04 2016-01-14 삼성전자주식회사 저장 장치 및 그것의 읽기 방법들
KR102235492B1 (ko) * 2014-08-25 2021-04-05 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 검증 방법
CN111584490A (zh) * 2015-02-26 2020-08-25 杭州海存信息技术有限公司 分离的三维纵向存储器
US9672920B2 (en) * 2015-03-13 2017-06-06 Macronix International Co., Ltd. Electronic device, non-volatile memorty device, and programming method
CN106206587B (zh) * 2015-05-06 2018-10-19 杭州海存信息技术有限公司 地址/数据转换器分离的三维纵向存储器
CN106856102B (zh) * 2015-12-08 2020-11-03 西安格易安创集成电路有限公司 一种Nand Flash的编程方法
CN105529050B (zh) * 2015-12-31 2019-09-03 记忆科技(深圳)有限公司 一种降低对uwl进行读取发生时间超时错误的方法
KR102458918B1 (ko) * 2016-02-24 2022-10-25 삼성전자주식회사 메모리 장치 및 메모리 시스템
US11574691B2 (en) 2016-02-24 2023-02-07 Samsung Electronics Co., Ltd. Memory device and memory system
KR20180085418A (ko) * 2017-01-18 2018-07-27 삼성전자주식회사 불휘발성 메모리 장치 및 그것을 포함하는 메모리 시스템
TWI627711B (zh) * 2017-06-07 2018-06-21 Powerchip Technology Corporation 垂直式記憶體及其製作方法
KR102320045B1 (ko) * 2017-09-20 2021-11-01 삼성전자주식회사 비휘발성 메모리 장치 및 이의 동작 방법
KR102631350B1 (ko) * 2017-10-12 2024-01-31 삼성전자주식회사 메모리 플레인들을 포함하는 비휘발성 메모리 장치 및 상기 비휘발성 메모리 장치의 동작 방법
KR102489551B1 (ko) * 2018-03-23 2023-01-17 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
KR102612891B1 (ko) * 2018-05-31 2023-12-13 에스케이하이닉스 주식회사 메모리 장치, 그것의 동작방법 및 메모리 시스템
KR102461099B1 (ko) * 2018-08-07 2022-11-01 에스케이하이닉스 주식회사 메모리 장치 및 이를 포함하는 저장 장치 및 그 동작 방법
KR102624620B1 (ko) * 2018-11-02 2024-01-15 에스케이하이닉스 주식회사 메모리 장치 및 이를 포함하는 메모리 시스템
KR20200090031A (ko) * 2019-01-18 2020-07-28 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
WO2020232574A1 (en) * 2019-05-17 2020-11-26 Yangtze Memory Technologies Co., Ltd. Data buffering operation of three-dimensional memory device with static random-access memory
EP3891745B1 (de) * 2019-10-12 2023-09-06 Yangtze Memory Technologies Co., Ltd. Verfahren zur programmierung einer speichervorrichtung und zugehörige speichervorrichtung
CN113853654A (zh) * 2021-08-19 2021-12-28 长江先进存储产业创新中心有限责任公司 存储器器件及其控制方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5473563A (en) 1993-01-13 1995-12-05 Samsung Electronics Co., Ltd. Nonvolatile semiconductor memory
US7813183B2 (en) 2007-05-25 2010-10-12 Samsung Electronics Co., Ltd. Program and erase methods for nonvolatile memory
US20110222342A1 (en) 2010-03-09 2011-09-15 Samsung Electronics Co., Ltd. Data storage system having multi-bit memory device and operating method thereof
KR20110104753A (ko) 2010-03-17 2011-09-23 유용환 애완동물용 목줄
US20120010374A1 (en) 2009-02-27 2012-01-12 Basell Polyolefine Gmbh Multistage Process for the Polymerization of Ethylene

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0773685A (ja) * 1993-09-06 1995-03-17 Hitachi Ltd 半導体不揮発性記憶装置
JP2003242787A (ja) * 2002-02-14 2003-08-29 Mitsubishi Electric Corp 不揮発性半導体記憶装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5473563A (en) 1993-01-13 1995-12-05 Samsung Electronics Co., Ltd. Nonvolatile semiconductor memory
US7813183B2 (en) 2007-05-25 2010-10-12 Samsung Electronics Co., Ltd. Program and erase methods for nonvolatile memory
US20120010374A1 (en) 2009-02-27 2012-01-12 Basell Polyolefine Gmbh Multistage Process for the Polymerization of Ethylene
US20110222342A1 (en) 2010-03-09 2011-09-15 Samsung Electronics Co., Ltd. Data storage system having multi-bit memory device and operating method thereof
KR20110104753A (ko) 2010-03-17 2011-09-23 유용환 애완동물용 목줄

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10964402B1 (en) 2020-02-19 2021-03-30 Sandisk Technologies Llc Reprogramming memory cells to tighten threshold voltage distributions and improve data retention
WO2021167638A1 (en) * 2020-02-19 2021-08-26 Sandisk Technologies Llc Reprogramming memory cells to tighten threshold voltage distributions and improve data retention

Also Published As

Publication number Publication date
CN103050149B (zh) 2018-09-25
CN103050149A (zh) 2013-04-17
DE102012109612A8 (de) 2013-08-22

Similar Documents

Publication Publication Date Title
DE102012109612A1 (de) Nichtflüchtige Speichervorrichtung, Programmierungsverfahren für nichtflüchtige Speichervorrichtungen und Speichersystem, das eine nichtflüchtiger Speichervorrichtung umfasst
US9412456B2 (en) Nonvolatile memory device, programming method of nonvolatile memory device and memory system including nonvolatile memory device
CN107025944B (zh) 检测非易失性存储器设备中的擦除失败字线的方法
CN107068182B (zh) 非易失性存储装置、擦除方法及包括该装置的存储***
JP6296696B2 (ja) 3次元不揮発性メモリを含むメモリシステムのプログラム方法
DE112015003834B4 (de) Abtasten mehrerer referenzpegel in nichtflüchtigen speicherelementen
DE102015105858A1 (de) Halbleitervorrichtungen mit Peripherieschaltungsbereich und einem ersten und einem zweiten Speicherbereich, sowie zugehörige Programmierverfahren
DE112017002776T5 (de) Nichtflüchtiger Speicher mit angepasster Steuerung vom Typ der Störinjektion während der Programmüberprüfung für eine verbesserte Programmleistung
DE102012104713A1 (de) Nichtflüchtige Speichervorrichtung und Löschverfahren
DE102013108907A1 (de) Nichtflüchtige Speichervorrichtung mit nahen/fernen Speicherzellengruppierungen und Datenverarbeitungsverfahren
CN107767911A (zh) 非易失性存储器装置以及数据操作方法
DE112019000165T5 (de) Gleichzeitiges programmieren mehrerer zellen für nichtflüchtigespeichervorrichtungen
DE102013108456B4 (de) Nichtflüchtige Speichervorrichtung und Programmierverfahren
DE202014011423U1 (de) Nichtflüchtige Speichervorrichtungen und Speichersysteme
DE102008023819A1 (de) Verfahren zum Betrieb eines Speicherbauelements und elektronisches Bauelement
DE102013108491A1 (de) Nichtflüchtige Speichervorrichtung und Betriebsverfahren mit variablen Speicherzellenzustandsdefinitionen
DE102013100596B4 (de) Nichtflüchtiges Speichersystem mit Programmier- und Löschverfahren und Blockverwaltungsverfahren
DE102018117357A1 (de) Speichervorrichtung mit einer Schaltung zum Erfassen eines Wortleitungsdefektes und Betriebsverfahren derselben
DE102015011991A1 (de) Codierungsschema für vertikale 3D-Flash-Speicher
DE102019124668A1 (de) Transistorschwellenspannungshaltung in 3d-speicher
DE102013200515A1 (de) Halbleiterspeichervorrichtung
DE112019005518T5 (de) Mehrzustandsprogrammierung in einer speichervorrichtung mit schleifenabhängiger bitleitungsspannung während der verifizierung
DE112019000153T5 (de) Auswahl der Untergruppe zur Prüfung
DE102020107504A1 (de) Nichtflüchtiges speicher-array, das zur leistungsverbesserung von beiden seiten angesteuert wird
DE102022102589A1 (de) Auslösen der nächsten zustandsverifizierung in der programmierschleife für nichtflüchtigen speicher

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication