DE112016003636T5 - Unter-Block-Modus für nichtflüchtigen Speicher - Google Patents

Unter-Block-Modus für nichtflüchtigen Speicher Download PDF

Info

Publication number
DE112016003636T5
DE112016003636T5 DE112016003636.1T DE112016003636T DE112016003636T5 DE 112016003636 T5 DE112016003636 T5 DE 112016003636T5 DE 112016003636 T DE112016003636 T DE 112016003636T DE 112016003636 T5 DE112016003636 T5 DE 112016003636T5
Authority
DE
Germany
Prior art keywords
memory cell
memory
memory cells
state
nand chain
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
DE112016003636.1T
Other languages
English (en)
Inventor
Xiang Yang
Huai-Yuan Tseng
Xiaochang Miao
Deepanshu Dutta
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SanDisk Technologies LLC
Original Assignee
SanDisk Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SanDisk Technologies LLC filed Critical SanDisk Technologies LLC
Publication of DE112016003636T5 publication Critical patent/DE112016003636T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3427Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
    • 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
    • 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
    • G11C11/5635Erasing 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/5642Sensing or reading circuits; Data output 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/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5648Multilevel memory programming, reading or erasing operations wherein the order or sequence of the operations is relevant

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)
  • Non-Volatile Memory (AREA)
  • Semiconductor Memories (AREA)

Abstract

Systeme und Verfahren zum Reduzieren restlicher Elektronen innerhalb einer NAND-Kette nachfolgend zum Durchführen einer Erfassungsoperation unter Verwendung der NAND-Kette oder während der Erfassungsoperation. Eine Middle-out-Programmier-Sequenz kann durchgeführt werden, in der Speicherzellentransistoren in der Mitte der NAND-Kette programmiert und programmverifiziert werden, bevor andere Speicherzellentransistoren hin zu dem Drain-Seiten-Ende der NAND-Kette und/oder dem Source-Seiten-Ende der NAND-Kette programmiert und verifiziert werden. In einem Beispiel kann für eine NAND-Kette mit 32 Speicherzellentransistoren, die den Wortleitungen WL0 bis WL31 von dem Source-Seiten-Ende der NAND-Kette zu dem Drain-Seiten-Ende der NAND-Kette entsprechen, der Speicherzellentransistor, der der Wortleitung WL16 entspricht, programmiert und programmverifiziert werden, bevor die Speicherzellentransistoren, die den Wortleitungen WL15 und WL17 entsprechen, programmiert werden.

Description

  • Hintergrund
  • Halbleiterspeicher wird häufig in vielfältigen elektronischen Vorrichtungen wie z.B. Mobiltelephonen, Digitalkameras, Personal Digital Assistants, medizinischer Elektronik, mobilen Berechnungsvorrichtungen und nichtmobilen Berechnungsvorrichtungen verwendet. Halbleiterspeicher kann nichtflüchtigen Speicher oder flüchtigen Speicher aufweisen. Ein nichtflüchtiger Speicher erlaubt, dass eine Information gespeichert und beibehalten bzw. behalten wird, auch wenn der nichtflüchtige Speicher nicht mit einer Energiequelle (z.B. einer Batterie) verbunden ist. Beispiele von nichtflüchtigem Speicher umfassen Flash-Speicher (z.B. NAND-Typ- und NOR-Typ- Flash Speicher), Electrically Erasable Programmable Read-Only-Memory (EEPROM), ferroelektrischen Speicher (z.B. FeRAM), magnetoresistiven Speicher (z.B. MRAM) und Phasenänderungsspeicher (z.B. PRAM oder PCM). Ein nichtflüchtiger Speicher kann Floating-Gate-Transistoren oder Ladungseinfangtransistoren bzw. Charge-Trap-Transistoren verwenden. Die Fähigkeit, die Schwellwertspannung eines Floating-Gate-Transistors oder eines Ladungseinfangtransistors anzupassen, erlaubt dem Transistor, als ein nichtflüchtiges Speicherelement oder eine Speicherzelle zu agieren. In einigen Fällen kann mehr als ein Datenbit pro Speicherzelle (z.B. eine Multi-Niveau- oder Multi-Zustands-Speicherzelle) bereitgestellt werden durch Programmieren und Lesen mehrerer Schwellwertspannungen oder Schwellwertspannungsbereiche.
  • NAND-Flash-Speicher-Strukturen ordnen typischerweise mehrere Floating-Gate-Transistoren oder mehrere Ladungseinfangtransistoren in Serie mit und zwischen zwei Auswahl-Gates an. Die Speicherzellentransistoren in Serie und die Auswahl-Gates können als NAND-Kette bezeichnet werden. In den letzten Jahren ist der NAND-Flash-Speicher skaliert worden um die Kosten pro Bit zu senken. Jedoch, da die Prozessgeometrien kleiner werden, werden viele Design- und Prozess-Herausforderungen präsentiert. Diese Herausforderungen schließen eine erhöhte Variabilität in Transistorcharakteristika über Prozess-, Spannungs- und Temperaturvariationen ein.
  • Figurenliste
    • 1 stellt eine Ausführungsform einer NAND-Kette dar.
    • 2 stellt eine Ausführungsform der NAND-Kette aus 1 unter Verwendung eines entsprechenden Schaltkreisdiagramms dar.
    • 3A stellt eine Ausführungsform eines Speicherblocks mit einer Mehrzahl von NAND-Ketten dar.
    • 3B stellt eine Ausführungsform von möglichen Schwellwertspannungsverteilungen für eine Drei-Bit-Pro-Zelle-Speicherzelle dar.
    • 3C stellt eine Ausführungsform einer NAND-Kette während einer Programmieroperation dar.
    • 4A stellt eine Ausführungsform einer vertikalen NAND-Struktur dar.
    • 4B stellt eine Ausführungsform einer Querschnittsansicht dar, die entlang der Linie X-X aus 4A aufgenommen ist.
    • 5 stellt eine Ausführungsform eines nichtflüchtigen Speichersystems dar.
    • 6 stellt eine Ausführungsform eines Erfassungsblocks dar.
    • 7A stellt eine Ausführungsform eines Satzes von Schwellwertspannungsverteilungen für eine Vier-Zustands-Speicher-Vorrichtung dar, in der jedes Speicherelement zwei Datenbits speichert.
    • 7B stellt eine Ausführungsform eines ersten Durchgangs einer Zwei-Durchgänge-Programmier-Technik dar.
    • 7C stellt eine Ausführungsform eines zweiten Durchgangs der Zwei-Durchgänge-Programmier-Technik dar, auf die sich in 7B bezogen wurde.
    • 7D stellt eine Ausführungsform eines ersten Durchgangs einer anderen Zwei-Durchgänge-Programmier-Technik dar.
    • 7E stellt eine Ausführungsform eines zweiten Durchgangs der Zwei-Durchgänge-Programmier-Technik dar, auf die sich in 7D bezogen wurde.
    • 7F stellt eine Ausführungsform einer Serie von Programmier- und Verifikationspulsen dar, die auf eine ausgewählte Wortleitung während einer Programmieroperation angewandt werden.
    • 8A stellt eine Ausführungsform von vier NAND-Ketten dar.
    • 8B stellt eine Ausführungsform einer NAND-Struktur dar, die vier Gruppen von Speicherketten aufweist.
    • 8C stellt eine Ausführungsform von Vorspann-Bedingungen dar, die auf Wortleitungen einer NAND-Struktur angewandt werden, die einen oder mehrere Reihen-Auswahl-Gate-Transistoren aufweist.
    • 8D stellt eine Ausführungsform von Spannungswellenformen dar, die auf eine NAND-Kette während einer Programmverifikationsoperation angewandt werden.
    • 8E stellt eine andere Ausführungsform von Spannungswellenformen dar, die auf eine NAND-Kette während einer Programmverifikationsoperation angewandt werden.
    • 9A ist ein Flussdiagramm, das eine Ausführungsform eines Prozesses zum Programmieren und Verifizieren von Speicherzellen innerhalb eines Speicher-Arrays beschreibt.
    • 9B ist ein Flussdiagramm, das eine alternative Ausführungsform eines Prozesses zum Programmieren und Verifizieren von Speicherzellen innerhalb eines Speicher-Arrays beschreibt.
  • Detaillierte Beschreibung
  • Es wird eine Technologie zum Eliminieren oder Reduzieren von restlichen Elektronen bzw. Restelektronen innerhalb einer NAND-Kette nachfolgend zum Durchführen einer Erfassungsoperation unter Verwendung der NAND-Kette (z.B. eine Leseoperation oder eine Programmverifikationsoperation) oder während einer Erfassungsoperation beschrieben. In manchen Fällen kann eine Middle-out-Programmier-Sequenz durchgeführt werden, in der Speicherzellentransistoren in der Mitte der NAND-Kette programmiert und programmverifiziert werden, bevor andere Speicherzellentransistoren hin zu dem Drain-Seiten-Ende der NAND-Kette und/oder dem Source-Seiten-Ende der NAND-Kette programmiert und verifiziert werden. In einem Beispiel kann für eine NAND-Kette mit 32 Speicherzellentransistoren, die Wortleitungen WL0 bis einschließlich WL31 von dem Source-Seiten-Ende der NAND-Kette zu dem Drain-Seiten-Ende der NAND-Kette entsprechen, der Speicherzellentransistor, der der Wortleitung WL16 entspricht, programmiert und programmverifiziert werden, bevor der Speicherzellentransistor programmiert wird, der der Wortleitung WL15 entspricht. In einem anderen Beispiel kann der Speicherzellentransistor, der der Wortleitung WL16 entspricht, programmiert und programmverifiziert werden, bevor der Speicherzellentransistor, der der Wortleitung WL15 entspricht programmiert wird, und bevor der Speicherzellentransistor, der der Wortleitung WL17 entspricht, programmiert wird. In einem anderen Beispiel kann der Speicherzellentransistor, der der Wortleitung WL16 entspricht, programmiert und programmverifiziert werden, bevor das Programmieren des Speicherzellentransistors, der der Wortleitung WL15 entspricht, begonnen wird und der Speicherzellentransistor, der der Wortleitung WL15 entspricht, kann programmiert und programmverifiziert werden, bevor das Programmieren des Speicherzellentransistors, der der Wortleitung WL14 entspricht, begonnen wird.
  • In einigen Fällen kann die Middle-out-Programmier-Sequenz, in der Speicherzellentransistoren in der Mitte einer NAND-Kette programmiert und verifiziert werden, bevor andere Speicherzellentransistoren hin zu den Enden der NAND-Kette programmiert und verifiziert werden, als „Unter-Block-Modus-„, „Xiang-Modus-„ oder X-Modus-„ Programmieren bezeichnet werden, da das Programmieren und Verifizieren symmetrisch von der Mitte oder dem Zentrum der NAND-Kette hin zu dem Drain-Seiten- und Source-Seiten-Ende der NAND-Kette durchgeführt werden kann. In einigen Fällen kann eine Middle-out-Lösch-Sequenz, in der Speicherzellentransistoren in der Mitte einer NAND-Kette gelöscht werden, bevor anderen Speicherzellentransistoren hin zu den Enden der NAND-Kette gelöscht werden, als „Unter-Block-Modus-„ „Xian-Modus-„ oder „X-Modus-„ Löschung bezeichnet werden, da die Löschoperationen symmetrisch von der Mitte oder dem Zentrum der NAND-Kette hin zu dem Drain-Seiten- und Source-Seiten-Ende der NAND-Kette durchgeführt werden können.
  • In einigen Fällen, nachdem eine Programmverifikationsoperation für einen Speicherzellentransistor innerhalb einer NAND-Kette durchgeführt worden ist, können freie Elektronen innerhalb eines invertierten Polysilizium-Kanals der NAND-Kette, der während der Programmverifikationsoperation erzeugt wird, an Polysilizium-Korngrenzen eingefangen werden und eine zusätzliche Zeit benötigen um zu rekombinieren. Diese restlichen freien Elektronen können die Kanalverstärkung während einer nachfolgenden Programmieroperation, nachdem die Programmverifikationsoperation zu einer Programmstörung führt, schwächen. Während der nachfolgenden Programmieroperation können Speicherzellen, die ihre endgültigen Programmierzustände erreicht haben, am Programmieren gehindert werden durch Verstärken der Kanalbereiche der programmverhinderten Speicherzellen, Kanalbereiche, die nicht genügend verstärkt werden, werden unbeabsichtigtes Programmieren der entsprechenden programmverhinderten Speicherzellen bewirken. Ein Nutzen des Durchführens einer Middle-out-Programmier-Sequenz ist, dass die Anzahl von restlichen Elektronen, die innerhalb des Polysiliziumkanals der NAND-Kette bleiben, durch Anregen von restlichen Elektronen (oder Restelektronen), durch den Source-Seiten-Auswahltransistor und/oder Drain-Seiten-Auswahl-Transistor während oder bei dem Ende der Programmverifikationsoperation zu passieren, reduziert werden kann. Ferner kann eine Steuerschaltung oder Speicher-Array-Vorspann-Schaltung Vorspannbedingungen bereitstellen, um restliche Elektronen aus dem Polysiliziumkanal der NAND-Kette an dem Ende der Programmverifikationsoperation zu entfernen, was das Laden des Polysiliziumkanals oder eines Abschnittes des Polysiliziumkanals auf eine Spannung größer als Masse, größer als die Source-Leitungs-Spannung, die auf das Source-Seiten-Ende der NAND-Kette während der Programmverifikationsoperation angewandt wird oder größer als die Bitleitungsspannung, die auf das Drain-Seiten-Ende der NAND-Kette während der Programmverifikationsoperation angewandt wird, umfasst. Das Laden des Polysiliziumkanals auf eine Spannung größer als Masse wird eine größere Anzahl von restlichen Elektronen hinausziehen. Die Spannung, die auf den Polysiliziumkanal angewandt wird, kann von entweder dem Source-Seiten-Ende der NAND-Kette (z.B. durch Vorspannen der Source-Leitung) oder dem Drain-Seiten-Ende der NAND-Kette (z.B. durch Vorspannen der Bitleitung) bereitgestellt werden.
  • Eine NAND-Kette kann einen Reihen-Auswahl-Gate-Transistor aufweisen, der zwischen und in Serie mit einem ersten Satz von Speicherzellentransistoren und einem zweiten Satz von Speicherzellentransistoren angeordnet ist. In einer Ausführungsform kann die Anzahl von Transistoren in dem ersten Satz von Speicherzellentransistoren dieselbe oder eine andere sein wie die Anzahl von Transistoren in dem zweiten Satz von Speicherzellentransistoren. Zum Beispiel kann der erste Satz von Speicherzellentransistoren 16 Gesamttransistoren aufweisen und der zweite Satz von Speicherzellentransistoren kann 32 Gesamttransistoren, 16 Gesamttransistoren oder 8 Gesamttransistoren aufweisen. Ein Ende des ersten Satzes von Speicherzellentransistoren kann sich mit einer Bitleitung verbinden, während das andere Ende des ersten Satzes von Speicherzellentransistoren mit dem Reihen-Auswahl-Gate-Transistor verbunden werden kann. In diesem Fall kann der Reihen-Auswahl-Gate-Transistor den ersten Satz von Speicherzellentransistoren von dem zweiten Satz von Speicherzellentransistoren isolieren, wenn der Reihen-Auswahl-Gate-Transistor in einen nichtleitenden Zustand eingestellt wird. Der Reihen-Auswahl-Gate-Transistor kann eine erste Transistorkanallänge aufweisen, die anders ist als die Transistorkanallängen, die für den ersten Satz von Speicherzellentransistoren und/oder den zweiten Satz von Speicherzellentransistoren verwendet werden. Die erste Kanallänge kann größer sein als jede der Transistorkanallängen, die für den ersten Satz von Speicherzellentransistoren und den zweiten Satz von Speicherzellentransistoren verwendet werden. Zum Beispiel kann die erste Kanallänge dreimal größer sein als die Transistorkanallängen, die für den ersten Satz von Speicherzellentransistoren und den zweiten Satz von Speicherzellentransistoren verwendet werden.
  • In einer Ausführungsform kann an dem Ende einer Programmverifikationsoperation ein Reihen-Auswahl-Gate-Transistor in einen nichtleitenden Zustand eingestellt werden um einen leitenden Pfad zwischen einer Bitleitung an dem Drain-Seiten-Ende der NAND-Kette und einer Source-Leitung an dem Source-Seiten-Ende der NAND-Kette zu verhindern. Nachfolgend kann ein leitender Pfad für sämtliche restliche Elektronen von einer Source des Reihen-Auswahl-Gate-Transistors zu der Source-Leitung und/oder von einem Drain des Auswahl-Gate-Transistors zu der Bitleitung bereitgestellt werden. In einem Beispiel wird an dem Ende einer Programm-Verifikations-Operation ein Reihen-Auswahl-Gate-Transistor in einen nichtleitenden Zustand eingestellt, während sämtliche Transistoren, die zwischen dem Reihen-Auswahl-Gate-Transistor und der Source-Leitung an dem Source-Seiten-Ende der NAND-Kette angeordnet sind, in leitende Zustände eingestellt werden und sämtliche Transistoren, die zwischen dem Reihen-Auswahl-Gate-Transistor und der Bitleitung an dem Drain-Seiten-Ende der NAND-Kette angeordnet sind, werden in leitende Zustände eingestellt.
  • In einer anderen Ausführungsform kann an dem Ende einer Programmverifikationsoperation, anstatt einen Reihen-Auswahl-Gate-Transistor zu verwenden, um einen leitenden Pfad zwischen einer Bitleitung an dem Drain-Seiten-Ende einer NAND-Kette und einer Source-Leitung an dem Source-Seiten-Ende der NAND-Kette zu verhindern, ein Speicherzellentransistor oder ein Dummy-Transistor innerhalb der NAND-Kette (z.B. in der Mitte der NAND-Kette) in einen nichtleitenden Zustand gesetzt bzw. eingestellt werden (z.B. durch Vorspannen des Gates des Transistors auf Masse oder 0V). Danach kann ein Pfad für sämtliche restlichen Elektronen von einer Source des nichtleitenden Transistors zu der Source-Leitung und/oder von einem Drain des nichtleitenden Transistors zu der Bitleitung bereitgestellt werden.
  • In einer Ausführungsform kann ein nichtflüchtiges Speichersystem einen oder mehrere zweidimensionale Arrays von nichtflüchtigen Speicherzellen aufweisen. Die Speicherzellen innerhalb eines zweidimensionalen Speicher-Arrays können eine einzelne Schicht von Speicherzellen bilden und können über Steuerleitungen (z.B. Wortleitungen und Bitleitungen) in der X- und Y-Richtung ausgewählt werden. In einer anderen Ausführungsform kann ein nichtflüchtiges Speichersystem einen oder mehrere monolithische dreidimensionale Speicher-Arrays aufweisen, in denen zwei oder mehrere Schichten von Speicherzellen auf einem einzelnen Substrat gebildet werden können ohne dazwischenkommende Substrate. In manchen Fällen kann ein dreidimensionaler Speicher-Array eine oder mehrere vertikale Spalten von Speicherzellen aufweisen, die auf und orthogonal zu einem Substrat oder im Wesentlichen orthogonal zu dem Substrat (z.B. innerhalb von 2-5 Grad zu einem normalen Vektor, der orthogonal zu dem Substrat ist) angeordnet sind. In einem Beispiel kann ein nichtflüchtiges Speichersystem einen Speicher-Array mit vertikalen Bitleitungen oder Bitleitungen, die orthogonal zu einem Halbleitersubstrat angeordnet sind, aufweisen. Das Substrat kann ein Siliziumsubstrat aufweisen. Der Speicher-Array kann verschiedene Speicherstrukturen einschließlich ebenen NAND-Strukturen, vertikalen NAND-Strukturen, Bit-Cost-Scalable- (BiCS) NAND-Strukturen, 3D-NAND-Strukturen oder 3D-ReRAM-Strukturen aufweisen.
  • 3D-NAND (z.B. BiCS) eröffnete einen neuen Zugang für weiteres Herunterskalieren von NAND und Erweitern der Speicherdichte. Jedoch hat die Blockgröße über mehrere Generationen zugenommen, primär aufgrund des aggressiven Wachstums der Anzahl von Wortleitungen. Dieser Trend sagt eine negative Auswirkung von einer Systemperspektive aus voraus, einschließlich langsamer interner Daten-Verlagerung, ineffizienter Medienpartitionierung und geschwächter Nutzerlebensdauer. Um dabei zu helfen, das weitere Skalieren im Lichte der Erhöhung in der Blockgröße zu ermöglichen, können partielle Block-Programmier- und Löschoperationen durchgeführt werden, in denen Speicheroperationen auf einem Abschnitt eines Speicherblock durchgeführt werden (z.B. kann eine Programmier- oder Löschoperation auf Speicherzellen durchgeführt werden, die mit einem Untersatz von Wortleitungen innerhalb eines Speicherblocks, die weniger als alle Wortleitungen in dem Speicherblock sind, verbunden sind). In einigen Ausführungsformen können zweiseitige partielle Block-Lösch-Operationen auf einer NAND-Kette durchgeführt werden, in der eine Source-Seiten-Löschoperation zum Löschen eines zweiten Satzes von Speicherzellentransistoren von der Source-Seite der NAND-Kette Löcher von einer p-Quelle einspeist und eine Drain-Seiten-Löschoperation zum Löschen eines ersten Satzes von Speicherzellentransistoren von der Drain-Seite der NAND-Kette Gate-induzierten Drain-Kriechstrom (GIDL) verwendet.
  • In einigen Ausführungsformen kann ein nichtflüchtiges Speichersystem einen nichtflüchtigen Speicher aufweisen, der monolithisch in einem oder mehreren physikalischen Niveaus von Arrays von Speicherzellen gebildet ist, die einen aktiven Bereich aufweisen, der auf einem Siliziumsubstrat angeordnet ist. Das nichtflüchtige Speichersystem kann auch eine Schaltung aufweisen, die mit dem Betrieb der Speicherzellen (z.B. Dekoder, Zustandsmaschinen, Seitenregister oder einer Steuerschaltung zum Steuern des Lesens oder Programmierens der Speicherzellen) assoziiert ist. Die Schaltung, die mit dem Betrieb der Speicherzellen assoziiert ist, kann auf dem Substrat angeordnet sein oder innerhalb des Substrates angeordnet sein.
  • In einigen Ausführungsformen kann ein nichtflüchtiges Speichersystem einen monolithischen dreidimensionalen Speicher-Array aufweisen. Das monolithische dreidimensionale Speicher-Array kann ein oder mehrere Niveaus von Speicherzellen aufweisen. Jede Speicherzelle innerhalb eines ersten Niveaus des einen oder der mehreren Niveaus von Speicherzellen kann einen aktiven Bereich aufweisen, der auf einem Substrat angeordnet ist (z.B. auf einem Einzel-Kristall-Substrat oder einem kristallinen Siliziumsubstrat). In einem Beispiel kann der aktive Bereich einen Halbleiterknotenpunkt (z.B. einen P-N-Knotenpunkt) aufweisen. Der aktive Bereich kann einen Abschnitt eines Source- oder Drain-Bereiches eines Transistors aufweisen. In einem anderen Beispiel kann der aktive Bereich einen Kanalbereich eines Transistors aufweisen.
  • 1 stellt eine Ausführungsform einer NAND-Kette 90 dar. 2 stellt eine Ausführungsform der NAND-Kette aus 1 unter Verwendung eines entsprechenden Schaltkreisdiagramms dar. Wie dargestellt, weist die NAND-Kette 90 vier Transistoren 100, 102, 104 und 106 in Serie zwischen einem ersten Auswahl-Gate 120 (d.h. eine Drain-Seiten-Auswahl-Gate) und einem zweiten Auswahl-Gate 122 (d.h. einem Source-Seiten-Auswahl-Gate) auf. Das Auswahl-Gate 120 verbindet die NAND-Kette 90 mit einer Bitleitung 126. Das Auswahl-Gate 120 wird durch Anwenden der angemessenen Spannung auf das Steuer-Gate 120CG (d.h. über die Auswahl-Leitung SGD von 2) gesteuert. Das Auswahl-Gate 122 wird durch Anwenden der angemessenen Spannung auf das Steuer-Gate 122CG (d.h. über die Auswahl-Leitung SGS von 2) gesteuert. Jeder der Transistoren 100, 102, 104 und 106 weist ein Steuer-Gate und ein Floating-Gate auf. Zum Beispiel weist der Transistor 100 das Steuer-Gate 100CG und das Floating-Gate 100FG auf, weist der Transistor 102 das Steuer-gate 102CG und das Floating-Gate 102FG auf, weist der Transistor 104 das Steuer-Gate 104CG und das Floating-Gate 104FG auf und weist der Transistor 106 das Steuer-Gate 106CG und das Floating-Gate 106FG auf. Die Steuer-Gates 100CG, 102CG, 104CG und 106CG sind mit den Wortleitungen WL3, WL2, WL1 und WL0 verbunden.
  • Es wird bemerkt, dass obwohl die 1 und 2 vier Floating-Gate-Transistoren in der NAND-Kette zeigen, die Verwendung von vier Floating-Gate-Transistoren nur als ein Beispiel bereitgestellt wird. Eine NAND-Kette kann weniger oder mehr als vier Floating-Gate-Transistoren (oder Speicherzellen) aufweisen. Zum Beispiel können einige NAND-Ketten 16 Speicherzellen, 32 Speicherzellen, 64 Speicherzellen, 128 Speicherzellen usw. aufweisen. Die Diskussion hierin ist nicht auf irgendeine besondere Anzahl von Speicherzellen in einer NAND-Kette beschränkt. Eine Ausführungsform verwendet NAND-Ketten mit 66 Speicherzellen, wobei 64 Speicherzellen verwendet werden, um Daten zu speichern und auf zwei der Speicherzellen wird als Dummy-Speicherzellen Bezug genommen, weil sie keine Daten speichern.
  • Eine typische Architektur für ein Flash-Speichersystem, das eine NAND-Flash-Speicher-Struktur verwendet, weist eine Mehrzahl von NAND-Ketten innerhalb eines Speicherblocks auf. Ein Speicherblock kann eine Einheit zur Löschung aufweisen. In einigen Fällen können die NAND-Ketten innerhalb eines Speicherblocks eine gemeinsame Quelle (z.B. eine P-Quelle) teilen. Jede NAND-Kette kann mit einer gemeinsamen Source-Leitung durch ihr Source-Seiten-Auswahl-Gate (z.B. gesteuert durch Auswahl-Leitung SGS) verbunden sein und mit ihrer assoziierten Bitleitung durch ihr Drain-Seiten-Auswahl-Gate (z.B. gesteuert durch Auswahl-Leitung SGD) verbunden sein. Typischerweise läuft jede Bitleitung oberhalb (oder über) ihrer assoziierten NAND-Kette in einer Richtung, die senkrecht zu den Wortleitungen ist und ist mit einem Erfassungsverstärker verbunden.
  • In einigen Ausführungsform können während einer Programmieroperation Speicherelemente, die nicht programmiert werden sollen (z.B. Speicherelemente, die vorher das Programmieren in einen Target-Datenzustand beendet haben) am Programmieren gehindert oder ausgeschlossen werden durch Verstärken von assoziierten Kanalbereichen (z.B. Selbstverstärken der Kanalbereiche über Wortleitungskopplung). Ein nicht ausgewähltes Speicherelement (oder eine nicht ausgewählte NAND-Kette) kann als gehindertes oder ausgeschlossenes Speicherelement (oder gehinderte NAND-Kette) bezeichnet werden, da es am Programmieren während eines gegebenen ProgrammierSchrittes einer Programmieroperation gehindert oder ausgeschlossen wird.
  • Obwohl eine Technologie, die NAND-Typ-Flash-Speicher verwendet, hierin beschrieben ist, kann die Technologie, die hierin offenbart ist, auch auf andere Typen von nichtflüchtigen Speichervorrichtungen und -architekturen angewandt werden. Darüber hinaus, obwohl eine Technologie, die Floating-Gate-Transistoren verwendet, hierin beschrieben ist, kann die Technologie, die hierin beschrieben ist, auch auf andere Speichertechnologien angewandt oder damit verwendet werden einschließlich jener Technologien, die Ladungseinfang-, Phasenänderungs- (z.B. Chalkogenid-Materialien) oder Zustands-Änderungsmaterialien benutzen.
  • 3A stellt eine Ausführungsform eines Speicherblockes dar, der eine Mehrzahl von NAND-Ketten aufweist. Wie dargestellt, weist jede NAND-Kette (Y+1) Speicherzellen auf. Jede NAND-Kette ist mit einer Bitleitung von (X+1) Bitleitungen auf der Drain-Seite (d.h. eine Bitleitung der Bitleitungen BL0-BLX) über ein Drain-Seiten-Auswahl-Gate verbunden, das durch das Drain-Seiten Auswahl-Signal SGD gesteuert wird. Jede NAND-Kette ist mit einer Source-Leitung (Source) über ein Source-Seiten-Auswahl-Gate verbunden, das durch das Source-Seiten-Auswahl-Signal SGS gesteuert wird. In einer Ausführungsform können das Source-Seiten-Auswahl-Gate, das durch das Source-Seiten-Auswahl-Signal SGS gesteuert wird und das Drain-Seiten-Auswahl Gate, das durch das Drain-Seiten-Auswahl-Signal SGD gesteuert wird, Transistoren ohne Floating-Gates oder Transistoren, die eine Floating-Gate-Struktur aufweisen, aufweisen.
  • In einer Ausführungsform kann während einer Programmier-Operation, wenn eine Speicherzelle programmiert wird, wie z.B. eine NAND-Flash-Speicherzelle, eine Programmspannung auf das Steuer-Gate der Speicherzelle angewandt werden und die entsprechende Bitleitung kann geerdet werden. Diese Programmier-Vorspann-Bedingungen können bewirken, dass Elektronen in das Floating-Gate über Feld-assistiertes Elektronentunneln eingespeist werden, wodurch die Schwellwertspannung der Speicherzelle erhöht wird. Die Programmspannung, die auf das Steuer-Gate während einer Programmoperation angewandt wird, kann als eine Serie von Pulsen angewandt werden. In manchen Fällen kann die Größe der Programmier-Pulse mit jedem nachfolgenden Puls um eine vorbestimmte Schrittgröße erhöht werden. Zwischen den Programmier-Pulsen können eine oder mehrere Verifikationsoperationen durchgeführt werden. Während der Programmieroperation können Speicherzellen, die ihre beabsichtigten ProgrammierZustände erreicht haben, am Programmieren ausgeschlossen oder gehindert werden durch Verstärken der Kanalbereiche der programmverhinderten Speicherzellen.
  • In einer Ausführungsform können Speicherzellen durch Erhöhen der p-Quelle zu einer Löschspannung (z.B. 20 V) für eine ausreichende Zeitdauer und durch Erden der Wortleitungen eines ausgewählten Block von Speicherzellen gelöscht werden, während die Source-und Bitleitungen floaten. Diese Lösch-Vorspann-Bedingungen können bewirken, dass Elektronen von dem Floating-Gate zu dem Tunnel-Oxid transferiert werden, wodurch die Schwellwertspannung der Speicherzellen innerhalb des ausgewählten Block gesenkt wird. In einigen Fällen kann eine Löschoperation auf einer gesamten Speicherebene durchgeführt werden auf individuellen Blöcken innerhalb einer Speicherebene oder einer anderen Einheit von Speicherzellen.
  • In einigen Ausführungsformen kann während der Verifikationsoperationen und/oder Leseoperationen eine ausgewählte Wortleitung mit einer Spannung verbunden (oder vorgespannt) werden, von der ein Niveau für jede Lese- und Verifikationsoperation spezifiziert ist, um zu bestimmen, ob eine Schwellwertspannung einer besonderen Speicherzelle solch ein Niveau erreicht hat. Nach dem Anwenden der Wortleitungsspannung kann der Leitungsstrom der Speicherzelle gemessen (oder erfasst) werden um zu bestimmen, ob die Speicherzelle einen ausreichenden Betrag von Strom leitete in Reaktion auf die Spannung, die auf die Wortleitung angewandt wird. Wenn der Leitungsstrom gemessen wird, größer zu sein als ein bestimmter Wert, dann wird angenommen, dass die Speicherzelle eingeschaltet wurde und die Spannung, die auf die Wortleitung angewandt wird, größer ist als die Schwellwertspannung der Speicherzelle. Wenn der Leitungsstrom nicht gemessen wird, größer als der bestimmte Wert zu sein, dann wird angenommen, dass die Speicherzelle nicht eingeschaltet wurde und die Spannung, die auf die Wortleitung angewandt wurde, nicht größer ist als die Schwellwertspannung der Speicherzelle. In einigen Fällen kann während einer Verifikationsoperation die Source-Leitung auf 0V, 1V oder irgendeine Spannung größer als oder niedriger als Masse eingestellt werden. In einem Beispiel kann während einer Verifikationsoperation die Source-Leitung auf 1 V eingestellt und die ausgewählte Wortleitung auf 5 V eingestellt werden. In einem anderen Beispiel kann während einer Verifikationsoperation die Source-Leitung auf 3 V eingestellt werden und die ausgewählte Wortleitung kann auf 2 V eingestellt werden.
  • Es gibt viele Möglichkeiten, den Leitungsstrom einer Speicherzelle während einer Lese- oder Verifikationsoperation zu messen. In einem Beispiel kann der Leitungsstrom einer Speicherzelle durch die Rate bzw. Geschwindigkeit gemessen werden, mit der sie einen gewidmeten Kondensator in einem Erfassungsverstärker lädt oder entlädt. In einem anderen Beispiel erlaubt der Leitungsstrom der ausgewählten Speicherzelle (oder versagt zu erlauben) der NAND-Kette, die die Speicherzelle aufwies, eine Spannung auf der entsprechenden Bitleitung zu entladen. Die Spannung der Bitleitung (oder die Spannung über einem gewidmeten Kondensator in einem Erfassungsverstärker) kann nach einer Zeitdauer gemessen werden, um zu bestimmen, ob die Bitleitung um einen besonderen Betrag entladen worden ist oder nicht.
  • 3B stellt eine Ausführungsform von möglichen Schwellwertspannungsverteilungen (oder Datenzuständen) für eine Drei-Bit-pro-Zelle-Speicherzelle (d.h. die Speicherzelle kann drei Daten-Bits speichern) dar. Andere Ausführungsformen können jedoch mehr als oder weniger als drei Daten-Bits pro Speicherzelle verwenden (z.B. wie z.B. vier oder mehr Daten-Bits pro Speicherzelle). An dem Ende eines erfolgreichen Programmier-Prozesses (mit Verifizierung) sollten die Schwellwertspannungen innerhalb einer Speicherseite oder eines Speicherblocks innerhalb einer oder mehrerer Schwellwert-Spannungs-Verteilungen für programmierte Speicherzellen oder innerhalb einer Verteilung von Schwellwert-Spannung für gelöschte Speicherzellen sein, wie es geeignet ist.
  • Wie dargestellt, kann jede Speicherzelle drei Daten-Bits speichern, daher gibt es acht gültige Datenzustände S0-S7. In einer Ausführungsform ist der Datenzustand S0 unter 0 Volt und die Datenzustände S1-S7 sind über 0 Volt. In anderen Ausführungsformen sine sämtliche acht Datenzustände über 0 Volt oder andere Anordnungen können implementiert werden. In einer Ausführungsform ist die Schwellwertspannungs-Verteilung S0 breiter als die Verteilungen S1-S7.
  • Jeder Datenzustand S0-S7 entspricht einem einzigen bzw. einzigartigen Wert für die drei Bits, die in der Speicherzelle gespeichert sind. In einer Ausführungsform S0=111, S1=110, S2=101, S3=100, S4=011; S5=010; S6= 001 und S7=000. Andere Zuordnungen von Daten zu den Zuständen S0-S7 können auch verwendet werden. In einer Ausführungsform werden sämtliche der Datenbits, die in einer Speicherzelle gespeichert sind, in derselben logischen Seite gespeichert. In anderen Ausführungsformen entspricht jedes Datenbit, das in einer Speicherzelle gespeichert ist, unterschiedlichen Seiten. Daher würde eine Speicherzelle, die drei Datenbits speichert, Daten in einer ersten Seite, einer zweiten Seite und einer dritten Seite aufweisen. In einigen Ausführungsformen würden sämtliche der Speicherzellen, die mit derselben Wortleitung verbunden sind, Daten in denselben drei Seiten von Daten speichern. In manchen Ausführungsformen können die Speicherzellen, die mit einer Wortleitung verbunden sind, in drei verschiedenen Sätzen von Seiten (z.B. als ungerade und gerade Bitleitungen) gruppiert werden.
  • In einigen Beispielimplementierungen werden die Speicherzellen zum bzw. auf den Zustand S0 gelöscht. Vom Zustand S0 können die Speicherzellen in jeden der Zustände S1-S7 programmiert werden. Das Programmieren kann durch Anwenden eines Satzes von Pulsen mit ansteigenden Größen auf die Steuer-Gates der Speicherzellen durchgeführt werden. Zwischen den Pulsen kann ein Satz von Verifikationsoperationen durchgeführt werden, um zu bestimmen, ob die Speicherzellen, die programmiert werden, ihre Target-Schwellwert-Spannung erreicht haben (z.B. unter Verwendung von Verifikations-Niveaus Vv1, Vv2, Vv3, Vv4, Vv5, Vv6 und Vv7). Die Speicherzellen, die zum Zustand S1 programmiert werden, werden getestet, um zu sehen, ob ihre Schwellwertspannung Vv1 erreicht hat. Die Speicherzellen, die auf Zustand S2 programmiert werden, werden getestet, um zu sehen, ob ihre Schwellwertspannung Vv2 erreicht hat. Die Speicherzellen, die auf Zustand S3 programmiert werden, werden getestet um zu sehen, ob ihre Schwellwertspannung Vv3 erreicht hat. Die Speicherzellen, die auf Zustand S4 programmiert werden, werden getestet, um zu sehen, ob ihre Schwellwertspannung Vv4 erreicht hat. Die Speicherzellen, die auf den Zustand S5 programmiert werden, werden getestet, um zu sehen, ob ihre Schwellwertspannung Vv5 erreicht hat. Die Speicherzellen, die auf Zustand S6 programmiert werden, werden getestet, um zu sehen, ob ihre Schwellwertspannung Vv6 erreicht hat. Die Speicherzellen, die auf Zustand S7 programmiert werden, werden getestet, um zu sehen, ob ihre Schwellwertspannung Vv7 erreicht hat.
  • Wenn Speicherzellen gelesen werden, die drei Datenbits speichern, werden mehrere Lesevorgänge bei den Lesevergleichspunkten Vr1, Vr2, Vr3, Vr4, Vr5, Vr6 und Vr7 durchgeführt, um zu bestimmen, in welchem Zustand die Speicherzellen sind. Wenn eine Speicherzelle in Reaktion auf Vr1 angeht, dann ist sie in dem Zustand S0. Wenn eine Speicherzelle in Reaktion auf Vr2 angeht, aber in Reaktion auf Vr1 nicht angeht, dann ist sie in Zustand S1. Wenn eine Speicherzelle in Reaktion auf Vr3 angeht, aber in Reaktion auf Vr2 nicht angeht, dann ist sie in Zustand S2. Wenn eine Speicherzelle in Reaktion in Reaktion auf Vr4 angeht, aber in Reaktion auf Vr3 nicht angeht, dann ist sie in Zustand S3. Wenn eine Speicherzelle in Reaktion auf Vr5 angeht, aber in Reaktion auf Vr4 nicht angeht, dann ist sie in Zustand S4. Wenn eine Speicherzelle in Reaktion auf Vr6 angeht, aber in Reaktion auf Vr5 nicht angeht, dann ist sie in Zustand S5. Wenn eine Speicherzelle in Reaktion in Reaktion auf Vr7 angeht, aber in Reaktion auf Vr6 nicht angeht, dann ist sie in Zustand S6. Wenn eine Speicherzelle in Reaktion auf Vr7 nicht angeht, dann ist sie in Zustand S7.
  • 3C stellt eine Ausführungsform einer NAND-Kette 300 während einer Programmieroperation dar. Wenn ein Speicherelement (z.B. Speicherelement 316, das mit WL5 assoziiert ist) der NAND-Kette 300 programmiert wird, kann eine Programmierspannung auf die ausgewählte Wortleitung angewandt werden, die mit dem Speicherelement assoziiert ist, und eine niedrige Spannung (z.B. Masse) kann auf die Bitleitung angewandt werden, die mit dem Speicherelement assoziiert ist. Wie dargestellt, weist die NAND-Kette 300 ein Source-Seiten-Auswahl-Gate 306, ein Drain-Seiten-Auswahl-Gate 308 und acht Wortleitungen WL0-WL7, die über einem Substrat 310 ausgebildet sind, auf. VSGS kann auf das Source-Seiten-Auswahl-Gate 306 angewandt werden und VSGD kann auf das Drain-Seiten-Auswahl-Gate 308 angewandt werden. Die Bitleitung 302 kann auf VBL vorgespannt werden und die Source-Leitung 304 kann auf VSOURCE vorgespannt werden. Während einer Programmieroperation kann eine Programmierspannung VPGM auf eine ausgewählte Wortleitung WL5 angewandt werden, die mit einem ausgewählten Speicherelement 316 assoziiert ist.
  • In einem Beispiel eines Verstärkungs-Modus, wenn das Speicherelement 316 das ausgewählte Speicherelement ist, kann eine relativ niedrige Spannung, VLOW (z.B. 2-6V) auf eine Source-Seiten-Wortleitung (WL3) angewandt werden, während eine Isolationsspannung VISO (z.B. 0-4V) auf eine andere Source-Seiten-Wortleitung (WL2) angewandt werden kann, die als Isolations-Wortleitung bezeichnet wird und eine Passierspannung VPASS kann auf die verbleibenden Wortleitungen angewandt werden, die mit der NAND-Kette 300 (in diesem Fall Wortleitungen WL0, WL1, WL4, WL6 und WL7) assoziiert sind. Während die absoluten Werte von VISO und VLOW über einen relativ großen und zum Teil überlappenden Bereich variieren können, kann VISO kleiner als VLOW sein. In einigen Fällen kann VISO niedriger als VLOW sein, was niedriger als VPASS ist, was niedriger als VPGM ist.
  • In manchen Fällen kann eine vertikale NAND-Struktur eine vertikale NAND-Kette oder eine vertikale invertierte NAND-Kette aufweisen. Eine NAND-Kette kann eine Kette von Floating-Gate-Transistoren aufweisen. Eine invertierte NAND-Kette kann eine Kette von invertierten Floating-Gate-Transistoren aufweisen.
  • 4A stellt eine Ausführungsform einer vertikalen NAND-Struktur dar. Die vertikale NAND-Struktur weist eine invertierte NAND-Kette auf, die auf dem Substrat 424 gebildet ist und derart ausgerichtet ist, dass die invertierte NAND-Kette orthogonal zu dem Substrat 424 ist. Eine invertierte NAND-Kette kann eine NAND-Kette aufweisen, die einen invertierten Floating-Gate-Transistor mit einem Tunneloxid zwischen einem Floating-Gate des invertierten Floating-Gate-Transistors und einem Steuer-Gate des invertierten Floating-Gate-Transistors aufweist. Die Anordnung des Tunneloxids zwischen dem Floating-Gate und dem Steuer-Gate erlaubt dem Mechanismus (z.B. F-N-Tunneln als dem Transportmechanismus) zum Programmieren und/oder Löschen des invertierten Floating-Gate-Transistors, zwischen dem Floating-Gate und dem Steuer-Gate anstatt zwischen dem Floating-Gate und dem Kanal des invertierten Floating-Gate-Transistors aufzutreten. Die invertierte NAND-Kette kann innerhalb eines vertikalen Speicherloches angeordnet werden, das durch alternierende Schichten des Steuer-Gate-Materials (z.B. Wolfram, Nitrid oder Polysilizium) und Zwischen-Gate-Isolator-Materials (z.B. Oxid oder Siliziumdioxid) geätzt wird. Wie dargestellt, weisen die Schichten aus Steuer-Gate-Material Schicht 417 und Schichten 414-416 auf und die Schichten aus Zwischen-Gate-Isolator-Material weisen die Schichten 418-420 auf. Die Zwischen-Gate-Isolator-Materialschicht 420 kann über einer Source-Leitungs-Schicht 422 (z.B. dotiertem Polysilizium) angeordnet sein, die ober einem Substrat 424 (z.B. einem Siliziumsubstrat) angeordnet sein kann. In manchen Fällen kann eine erste Wortleitung (WL1) der Steuer-Gate-Schicht 414 entsprechen, eine zweite Wortleitung (WL0) kann der Steuer-Gate-Schicht 415 entsprechen und eine Source-Seiten-Auswahl-Gate-Leitung (SGS) kann der Steuer-Gate-Schicht 416 entsprechen.
  • In einer Ausführungsform können innerhalb des Speicherloches ein Tunnelschichtmaterial 408 (z.B. ein dünnes Oxid aufweisend), ein Floating-Gate-Material 410 (z.B. Polysilizium), eine dielektrische Schicht 412 (z.B. Oxid) und ein Kanalschichtenmaterial 406 (z.B. undotiertes Polysilizium) innerhalb des Speicherloches aufgetragen und angeordnet werden, um die invertierte NAND-Kette zu bilden. Wie in 4A dargestellt, ist das Tunnel-Schicht-Material 408 innerhalb des Speicherloches angeordnet. Das Tunnelschichtenmaterial 408 kann einen Abschnitt eins Multi-Schichtendielektrischen Stapels wie z.B. eines ONO-dielektrischen Stapels aufweisen, der alternierende Schichten aus Siliziumdioxid („O“) und Siliziumnitrid („N“) aufweist. In manchen Fällen kann das Tunnelschichtenmaterial 408 ein Hoch-K-dielektrisches Material (z.B. Hafnium-basierte Hoch-K-Dielektrika oder Hafniumoxid) aufweisen, das eine dielektrische Konstante aufweist, die größer als die von Siliziumdioxid ist. In manchen Fällen kann eine Kernmaterialschicht 404 (z.B. Oxid) innerhalb des Speicherloches gebildet werden. In anderen Fällen kann die Kernmaterialschicht 404 ausgelassen werden. Eine Bitleitungskontaktschicht 402 kann auf der Oberseite des Speicherloches gebildet werden und sich mit dem Kanalschichtenmaterial 406 verbinden oder direkt daran angrenzen. Das Kanalschichtenmaterial 406 kann sich mit der Source-Leitungs-Schicht 422 an der Unterseite des Speicherloches verbinden. Daher verbindet sich in diesem Fall die Bitleitungskontaktschicht 402 mit der invertierten NAND-Kette an der Oberseite des Speicherloches und die Source-Leitungs-Kontaktschicht 422 verbindet sich mit der invertierten NAND-Kette an der Unterseite des Speicherloches.
  • In einer Ausführungsform kann die Bitleitungskontaktschicht 402 ein Material eines ersten Leitfähigkeits-Typs (z.B. n-Typ) aufweisen und die Source-Leitungs-Kontaktschicht 422 kann ein Material eines zweiten Leitfähigkeits-Typs aufweisen, der sich von dem ersten Leitfähigkeits-Typ unterschiedet (z.B. p-Typ). In einem Beispiel kann die Bitleitungskontaktschicht 402 ein n-Typ-Material (z.B. n-Typ-Polysilizium) aufweisen und die Source-Leitungs-Kontakt-Schicht 422 kann ein p-Typ-Material (z.B. p-Typ-Polysilizium) aufweisen. In einem anderen Beispiel kann die Bitleitungskontaktschicht 402 ein p-Typ-Material aufweisen und die Source-Leitungs-Kontaktschicht 422 kann ein n-Typ-Material (z.B. n-Typ-Polysilizium) aufweisen. Daher kann in manchen Fällen die invertierte NAND-Kette eine asymmetrische Source und einen asymmetrischen Drain aufweisen, die verwendet werden können, um sowohl eine Elektronenversorgung (über das n-Typ-Material) als auch eine Löcherversorgung (über das p-Typ-Material) für Speicheroperationen (z.B. Programmier-, Lösch- und Leseoperationen) bereitzustellen, die unter Verwendung der invertierten NAND-Kette durchgeführt werden. Die Speicheroperationen können n-Kanal-Operationen und/oder p-Kanal-Operationen aufweisen, abhängig von den Vorspann-Bedingungen, die auf die invertierte NAND-Kette angewandt werden.
  • In einer Ausführungsform kann eine invertierte NAND-Kette unter Verwendung einer Kernmaterialschicht (z.B. einer Oxidschicht oder einer anderen dielektrischen Schicht) gebildet werden, die angrenzend zu einer Kanalschicht (z.B. einer undotierten Polysiliziumkanalschicht) angeordnet ist, die angrenzend zu einer Blockierschicht (z.B. eine Oxidschicht oder andere dielektrische Schicht) die angrenzend zu einer Floating-Gate-Schicht (oder Ladungseinfangschicht) angeordnet ist, die angrenzend zu einer Tunnelschicht (z.B. einem dünnen Oxid) angeordnet ist, die angrenzend zu einer Steuer-Gate-Schicht (z.B. Wolfram) angeordnet ist. Die Tunnelschicht kann eine Dicke aufweisen, die kleiner als die Dicke der Blockierschicht ist.
  • 4B stellt eine Ausführungsform einer Querschnittsansicht dar, die entlang der Linie X-X aus 4A aufgenommen ist. Wie dargestellt, weist die invertierte NAND-Kette eine innere Kernmaterialschicht 404 auf, die von dem Kanalschichtenmaterial 406 umgeben ist, das von der dielektrischen Schicht 412 umgeben ist, die von dem Floating-Gate-Material 410 umgeben ist, das von dem Tunnelschichtenmaterial 408 umgeben ist, das von der Steuer-Gate-Material-Schicht 417 umgeben ist. In einer Ausführungsform kann 4A eine Querschnittsansicht darstellen, die entlang der Linie Y-Y von 4B aufgenommen ist. In einer Ausführungsform kann die invertierte NAND-Kette unter Verwendung einer vertikalen zylindrischen Struktur oder einer vertikalen verjüngten zylindrischen Struktur gebildet werden. In diesem können das dielektrische Material 412, das Floating-Gate-Material 410, das Tunnel-Schichten-Material 408 und das Kanalschichtenmaterial 406 der invertierten NAND-Kette vertikale ringförmige Strukturen aufweisen, die die Kernmaterialschicht 404 umgeben. In anderen Ausführungsformen kann die invertierte NAND-Kette unter Verwendung einer vertikalen Säulenstruktur oder einer vertikalen rechteckigen Prismenstruktur gebildet werden.
  • In manchen Ausführungsformen kann eine vertikale NAND-Struktur eine vertikale NAND-Kette aufweisen, die oberhalb eines Substrats gebildet ist und derart ausgerichtet ist, dass die vertikale NAND-Kette orthogonal zu dem Substrat ist. Die vertikale NAND-Kette kann innerhalb eines vertikalen Speicherloches angeordnet sein, das durch alternierende Schichten des Steuer-Gate-Materials (z.B. Wolfram oder Polysilizium) und des Zwischen-Gate-Isolator-Materials (z.B. Oxid oder Siliziumoxid) geätzt ist.
  • 5 stellt eine Ausführungsform eines nichtflüchtigen Speichersystems 596 dar, das Lese-/Schreib-Schaltkreise zum parallelen Lesen und Programmieren einer Seite (oder einer anderen Einheit) von Speicherzellen (z.B. NAND-Multi-Niveau-Zellen) aufweist. Wie dargestellt, weist das nichtflüchtige Speichersystem 596 einen Speicherchip 598 und eine Steuereinheit 550 auf. Der Speicherchip 598 weist einen Speicher-Array 501 (z.B. einen NAND-Flash-Speicher-Array), eine Steuer-Schaltung 510, einen Reihendekoder 530, einen Spaltendekoder 560 und Lese-/Schreib-Schaltkreise 565 auf. In einer Ausführungsform ist der Zugriff auf den Speicher-Array 501 durch die verschiedenen peripheren Schaltkreise (z.B. Reihendekoder oder Spaltendekoder) auf eine symmetrische Weise implementiert, auf gegenüberliegenden Seiten des Arrays, so dass die Dichten der Zugriffsleitungen und der Schaltung auf jeder Seite um die Hälfte reduziert werden. Der Speicher-Array 501 ist durch Wortleitungen über einen Reihendekoder 530 und durch Bitleitungen über einen Spaltendekoder 560 adressierbar. Wortleitungen und Bitleitungen sind Beispiele von Speicher-Array-Steuer-Leitungen. Die Lese-/Schreib-Schaltkreise 565 weisen mehrere Erfassungsblöcke 500 auf, die einer Seite von Speicherelementen erlauben, parallel gelesen oder programmiert zu werden. In einigen Fällen kann die Steuereinheit 550 auf dem Speicherchip 598 integriert werden. Befehle und Daten werden zwischen dem Host und der Steuereinheit 550 über Leitungen 520 und zwischen der Steuereinheit 550 und dem Speicherchip 5598 über Leitungen 518 transferiert.
  • Die Steuerschaltung 510 kooperiert mit den Lese-/Schreib-Schaltkreisen 565, um Speicheroperationen auf dem Speicher-Array 501 durchzuführen. Die Steuerschaltung 510 weist eine Zustandsmaschine 512, einen auf dem Chip befindlichen Adressdekoder 514 und ein Leistungs- bzw. Energie-Steuer-Modul 516 auf. Die Zustandsmaschine 512 stellt eine Chip-Niveau-Steuerung der Speicheroperationen bereit. Der auf dem Chip befindliche Adressdekoder 514 stellt eine Adress-Schnittstelle zwischen den Adressen bereit, die von dem Host verwendet werden und den Hardware-Adressen,, die von den Dekodern 530 und 560 verwendet werden. Das Energie-Steuer-Modul 516 steuert die Energie und Spannungen, die an die Wortleitungen und Bitleitungen während der Speicheroperationen geliefert werden. In einer Ausführungsform weist ein Energie-Steuermodul 516 eine oder mehrere Ladungspumpen auf, die Spannungen erzeugen können, die größer als die Versorgungsspannung sind.
  • In manchen Ausführungsformen können eine oder mehrere der Komponenten (alleine oder in Kombination), die nicht der Speicher-Array 501 sind, als Verwaltungs- oder Steuerschaltkreis bezeichnet werden. Zum Beispiel können ein oder mehrere Verwaltungs- oder Steuerschaltkreise jedes von oder eine Kombination von Steuerschaltung 510, Zustandsmaschine 512, Dekoder 530/560, Energiesteuerung 516, Erfassungsblöcken 500, Lese-/Schreib-Schaltkreisen 565, Steuereinheit 550 und so weiter aufweisen. Der eine oder die mehreren Verwaltungsschaltkreise oder der eine oder die mehreren Steuerschaltkreise können eine oder mehrere Speicher-Array-Operationen einschließlich Lösch-, Programmier- oder Leseoperationen durchführen oder vereinfachen.
  • In manchen Ausführungsformen können ein oder mehrere Verwaltungs- oder Steuerschaltkreise verwendet werden zum Steuern des Betriebs eines Speicher-Arrays wie z.B. Speicher-Array 501. Der eine oder die mehreren Verwaltungs- oder Steuerschaltkreise können Steuersignale an den Speicher-Array bereitstellen, um eine Leseoperation und/oder eine Schreiboperation auf dem Speicher-Array durchzuführen. In einem Beispiel können der eine oder die mehreren Verwaltungs- oder Steuer-Schaltkreise jedes oder eine Kombination von Steuerschaltung, Zustandsmaschine, Dekodern, Erfassungsverstärkern, Lese-/Schreib-Schaltkreisen und/oder anderen Steuereinheiten aufweisen. Der eine oder die mehreren Steuer-Schaltkreise können eine oder mehrere Speicher-Array-Operationen einschließlich Lösch- Programmier-, oder Leseoperationen ermöglichen oder vereinfachen, um auf dem Speicher-Array durchgeführt zu werden. In einem Beispiel können der eine oder die mehreren Steuer-Schaltkreise eine auf dem Chip befindliche Speichersteuereinheit aufweisen zum Bestimmen von Reihen- und Spaltenadressen, Wortleitungs- und Bitleitungsadressen, Speicher-Array-Ermöglichungs-Signalen und/oder Daten-Latch- (bzw. Speicher-)-Signalen.
  • In einer Ausführungsform kann der Speicher-Array 501 in eine große Anzahl von Blöcken (z.B. Blöcke 0-1023, oder ein anderer Betrag) von Speicherzellen aufgeteilt werden. Wie es für Flash-Speicher-Systeme üblich ist, kann der Block die Einheit der Löschung sein. Das heißt, jeder Block kann die minimale Anzahl von Speicherzellen enthalten, die zusammen gelöscht werden. Andere Einheiten der Löschung können auch verwendet werden. Ein Block enthält einen Satz von NAND-Ketten, auf die über Bitleitungen und Wortleitungen zugegriffen wird. Typischerweise teilen sämtliche der NAND-Ketten in einem Block einen gemeinsamen Satz von Wortleitungen.
  • Jeder Block kann in eine besondere bzw. bestimmte Anzahl von Seiten geteilt werden. In einer Ausführungsform kann eine Seite die Einheit des Programmierens sein. Andere Einheiten des Programmierens können auch verwendet werden. Eine oder mehrere Seiten von Daten werden typischerweise in einer Reihe von Speicherzellen gespeichert. Zum Beispiel können eine oder mehrere Seiten von Daten in Speicherzellen gespeichert werden, die mit einer gemeinsamen Wortleitung verbunden sind. In einer Ausführungsform wird der Satz von Speicherzellen, die mit einer gemeinsamen Wortleitung verbunden sind, gleichzeitig programmiert. Eine Seite kann einen oder mehrere Sektoren speichern. Ein Sektor kann Nutzerdaten und Overhead-Daten (auch Systemdaten genannt) aufweisen. Overhead-Daten weisen typischerweise Header-Information und Fehler-Korrektur-Codes (ECC) auf, die von den Nutzerdaten des Detektors berechnet worden sind. Die Steuereinheit (oder andere Komponenten) berechnet die ECC, wenn Daten in dem Array programmiert werden und überprüft sie, wenn Daten von dem Array gelesen werden. Alternativ können die ECC und/oder andere Overhead-Daten in verschiedenen Seiten oder sogar verschiedenen Blöcken als die Nutzerdaten, die sie betreffen, gespeichert werden. Ein Sektor von Nutzerdaten ist typischerweise 512 Bytes, die der Größe eines Sektors in magnetischen Plattenlaufwerken entsprechen. Eine große Anzahl von Seiten bildet einen Block irgendwo von 8 Seiten, zum Beispiel bis zu 32, 64, 128 oder mehr Seiten. Verschieden große Blöcke, Seiten und Sektoren können auch verwendet werden.
  • 6 stellt eine Ausführungsform eines Erfassungsblockes 500 wie z.B. einem Erfassungsblock 500 in 5 dar. Ein individueller Erfassungsblock 500 kann in einen Kernabschnitt, bezeichnet als ein Erfassungsmodul 580 und einen gemeinsamen Abschnitt 590 partitioniert werden. In einer Ausführungsform gibt es ein separates Erfassungsmodul 580 für jede Bitleitung und einen gemeinsamen Abschnitt 590 für einen Satz von mehreren Erfassungsmodulen 580. In einem Beispiel wird ein Erfassungsblock einen gemeinsamen Abschnitt 590 und acht Erfassungsmodule aufweisen. Jeder der Erfassungsmodule in einer Gruppe wird mit dem assoziierten gemeinsamen Abschnitt über einen Datenbus 572 kommunizieren.
  • Das Erfassungsmodul 580 weist eine Erfassungsschaltung 570 auf, die bestimmt, ob ein Leitungsstrom in einer verbundenen Bitleitung oberhalb oder unter einem vorbestimmten Schwellwertniveau ist. Das Erfassungsmodul 580 weist auch einen Bitleitungs-Latch 582 auf, der verwendet wird, um eine Spannungsbedingung auf der verbundenen Bitleitung einzustellen. Zum Beispiel kann ein vorbestimmter Zustand, der in dem Bitleitungs-Latch 582 gelatcht bzw. gespeichert ist, darin resultieren, dass die verbundene Bitleitung zu einer zustandsbestimmenden Programmverhinderungsspannung (z.B. 1,5-3 V) gezogen wird.
  • Der gemeinsame Abschnitt 590 weist einen Prozessor 592, einen Satz von Daten-Latches 594 und eine I-/O-Schnittstelle 596, die zwischen dem Satz von Daten-Latches 594 und dem Datenbus 520 gekoppelt ist. Der Prozessor 592 führt Berechnungen durch. Zum Beispiel kann der Prozessor 592 die Daten bestimmen, die in dem erfassten Speicherelement gespeichert sind und die bestimmten Daten in dem Satz von Daten-Latches speichern. Der Satz von Daten-Latches 594 kann verwendet werden, um Datenbits zu speichern, die von dem Prozessor 592 während einer Leseoperation bestimmt werden oder Datenbits zu speichern, die von dem Datenbus 520 während einer Programmoperation importiert werden. Die importierten Datenbits repräsentieren Schreibdaten, die beabsichtigt sind, in einen Speicher-Array programmiert zu werden, wie z.B. Speicher-Array 501 in 5. Die I-/O-Schnittstelle 596 stellt eine Schnittstelle zwischen den Daten-Latches 594 und dem Datenbus 520 bereit.
  • Während einer Leseoperation oder einer anderen Speicherelement-ErfassungsOperation steuert eine Zustandsmaschine wie z.B. die Zustandsmaschine 512 in 5 die Versorgung von verschiedenen Steuer-Gate-Spannungen an adressierte Speicherelemente. Während es durch die verschiedenen vordefinierten Steuer-Gate-Spannungen schreitet, die den verschiedenen Speicherzuständen entsprechen, die von dem Speicher unterstützt werden, kann das Erfassungsmodul 580 eine dieser Spannungen auslösen und eine Ausgabe wird von dem Erfassungsmodul 580 zu dem Prozessor 592 über den Bus 572 bereitgestellt. An dem Punkt bestimmt der Prozessor 592 den resultierenden Speicherzustand durch Berücksichtigung der Auslöseergeignis(se) des Erfassungsmoduls und die Information über die angewandte Steuer-Gate-Spannung von der Zustandsmaschine über die Eingabeleitungen 593. Dann berechnet er eine binäre Kodierung für den Speicherzustand und speichert die resultierenden Datenbits in Daten-Latches 594. In einer anderen Ausführungsform des Kernabschnitts, dient der Bitleitungs-Latch 582 sowohl als ein Latch zum Latchen bzw. Speichern der Ausgabe des Erfassungsmoduls 580 als auch als Bitleitungs-Latch wie oben beschrieben.
  • Während einer Programmieroperation werden die Daten, die programmiert werden sollen, in dem Satz von Daten-Latches 594 gespeichert. Die Programmieroperation umfasst unter der Steuerung der Zustandsmaschine 512 eine Serie von Programmier-Spannungs-Pulsen, die auf die Steuer-Gates der adressierten Speicherelemente angewandt werden. Jeder Programmpuls wird von einem Zurücklesevorgang (oder Verifikationsprozess) gefolgt um zu bestimmen, ob das Speicherelement in den gewünschten Speicherzustand programmiert worden ist. Der Prozessor 592 beobachtet den Zurücklesespeicherzustand relativ zu dem gewünschten Speicherzustand. Wenn die beiden in Übereinstimmung sind, stellt der Prozessor 592 den Bitleitungs-Latch 582 ein, um zu bewirken, dass die Bitleitung zu einer zustandsbestimmenden Programmhinderungsspannung gezogen wird. Dies hindert das Speicherelement, das mit der Bitleitung gekoppelt ist, am weiteren Programmieren, auch wenn Programmpulse auf ihrem Steuer-Gate erscheinen. In anderen Ausführungsformen lädt der Prozessor ursprünglich den Bitleitungs-Latch 582 und die Erfassungsschaltung stellt ihn auf einen Hinderungswert während des Verifikationsprozesses ein.
  • Der Daten-Latch-Stapel 594 enthält einen Stapel von Daten-Latches, die dem Erfassungsmodul entsprechen. In einer Ausführungsform gibt es drei Daten-Latches pro Erfassungsmodul 580. Die Daten-Latches können als ein Schieberegister implementiert sein, so dass die parallelen Daten, die darin gespeichert sind, in serielle Daten für den Datenbus 520 konvertiert werden und umgekehrt. Sämtliche der Daten-Latches, die einem Lese-/Schreib-Block entsprechen, können miteinander verbunden werden, um ein Blockschieberegister zu bilden, so dass ein Block von Daten durch seriellen Transfer eingegeben oder ausgegeben werden kann. Insbesondere kann die Bank von Lese-/Schreib-Modulen derart konfiguriert werden, dass jeder ihres Satzes von Daten-Latches Daten in den Datenbus oder aus dem Datenbus heraus schieben wird in einer Sequenz, als ob sie Teil von einem Schieberegister für den gesamten Lese-/Schreib-Block sind.
  • 7a stellt eine Ausführungsform eines Satzes von Schwellwert-Spannungsverteilungen für eine Vier-Zustands-Speichervorrichtung dar, in der jedes Speicherelement zwei Datenbits speichert. Eine erste Schwellwertspannung-- (Vth) Verteilung 700 wird für gelöschte (E-Zustands-) Speicherelemente bereitgestellt. Drei Vth-Verteilungen 702, 704 und 706 repräsentieren programmierte Zustände A, B und C. In einer Ausführungsform sind die Schwellwert-Spannungen in dem E-Zustand und die Schwellwertspannungen in den A-, B- und C- Verteilungen positiv. In einer anderen Ausführungsform ist die Schwellwertspannungsverteilung für den E-Zustand negativ, während die Schwellwertspannungsverteilungen für die A-Zustands-, B-Zustands- und C-Zustands-Verteilungen positiv sind.
  • Drei Lesereferenzspannungen Vra, Vrb und Vrc werden auch zum Lesen von Daten von Speicherelementen bereitgestellt. Durch Testen, ob die Schwellwertspannung eines gegebenen Speicherelements oberhalb oder unterhalb Vra, Vrb und Vrc ist, kann das System den Zustand, z.B. die Programmierbedingung bestimmen, in dem das Speicherelement ist.
  • Ferner werden drei Verifikationsspannungen Vva, Vvb und Vvc bereitgestellt. Wenn Speicherelemente in dem A-Zustand- B-Zustand oder C-Zustand programmiert werden, wird das System testen, ob jene Speicherelemente eine Schwellwertspannung aufweisen, die größer als oder gleich zu Vva, Vvb oder Vvc ist.
  • In einer Ausführungsform, die bekannt ist als Voll-Sequenz-Programmieren, können Speicherelemente von dem E-Zustand direkt zu irgendeinem der programmierten Zustände A, B oder C programmiert werden. Zum Beispiel kann eine Population von Speicherelementen, die programmiert werden sollen, zuerst gelöscht werden, so das sämtliche Speicherelemente in der Population in dem E-Zustand sind. Eine Serie von Programmpulsen, wie z.B. in 7F dargestellt, kann dann verwendet werden, um Speicherelemente direkt in Zustände A, B oder C zu programmieren. Während manche Speicherelemente von dem E-Zustand in den A-Zustand programmiert werden, werden andere Speicherelemente von dem E-Zustand zu dem B-Zustand und/oder von dem E-Zustand in den C-Zustand programmiert.
  • Eine andere Option ist, niedrige und hohe Verifikations-Niveaus für einen oder mehrere Datenzustände zu verwenden. Zum Beispiel sind VvaL und Vva niedrigere und höhere Verifikationsniveaus für den A-Zustand, VvbL und Vvb sind niedrigere und höhere Verifikations-Niveaus für den B-Zustand und VvcL und Vvc sind niedrigere und höhere Verifikationsniveaus für den C-Zustand. In manchen Fällen wird VvcL nicht verwendet, da eine reduzierte Programmierpräzision für den höchsten Zustand akzeptabel sein kann. Während dem Programmieren, wenn die Vth eines Speicherelements, das zu dem A-Zustand als einem Target-Zustand programmiert wird, VvaL überschreitet, wird die Programmiergeschwindigkeit des Speicherelements verlangsamt in einen langsamen Programmier-Modus wie z.B. durch Anheben der assoziierten Bitleitungsspannung auf ein Niveau, z.B. 0,6-0,8 V, das zwischen einem nominalen Programmier- oder Nicht-Hinderungs-Niveau, z.B. 0V und einem vollen Hinderungs-Niveau, z.B. 4-6V ist. Dies stellt eine größere Genauigkeit bereit durch Vermeiden von großen Schritterhöhungen in der Schwellwertspannung. Wenn die Vth Vva erreicht, wird das Speicherelement von weiterem Programmieren ausgeschlossen. Ähnlich, wenn die Vth eines Speicherelements, das in den B-Zustand als einem Target-Zustand programmiert wird, VvbL überschreitet, wird die Programmiergeschwindigkeit des Speicherelements verlangsamt und wenn die Vth Vvb erreicht, wird das Speicherelement von weiterem Programmieren ausgeschlossen. Optional, wenn die Vth einer Speicherelements, das zu dem C-Zustand als einem Target-Zustand programmiert wird, VvcL überschreitet, wird die Programmiergeschwindigkeit des Speicherelements verlangsamt und wenn die Vth Vvc erreicht, wird das Speicherelement von weiterem Programmieren ausgeschlossen. Diese Programmiertechnik ist als eine Schnell-Passier-Schreib- oder duale Verifikations-Technik bezeichnet worden. Es wird bemerkt, dass in einem Zugang duale Verifikations-Niveaus nicht für den höchsten Zustand verwendet werden, da eine Überschreitung typischerweise für den Zustand akzeptabel ist. Anstelle dessen können die dualen Verifikations-Niveaus für die Programmierzustände oberhalb des gelöschten Zustands und unterhalb des höchsten Zustands verwendet werden.
  • 7B stellt eine Ausführungsform eines ersten Durchgangs einer Zwei-Durchgänge-Programmier-Technik dar. In diesem Beispiel speichert ein Multi-Zustands-Speicherelement Daten für zwei verschiedene Seiten: eine untere Seite und eine obere Seite. Vier Zustände werden dargestellt durch Wiederholen der Schwellwertspannungsverteilungen 700, 702, 704 und 706 aus 7A. Diese Zustände und die Bits, die sie repräsentieren, sind: E-Zustand (11), A-Zustand (01), B-Zustand (00) und C-Zustand (10). Für den E-Zustand speichern beide Seiten eine „1“. Für den A-Zustand speichert die untere Seite eine „1“ und die obere Seite speichert eine „0“. Für den B-Zustand speichern beide Seiten eine „0“. Für den C-Zustand speichert die untere Seite eine „0“ und die obere Seite speichert eine „1“. Es wird bemerkt, dass obwohl spezifische Bitmuster jedem der Zustände zugeteilt worden sind, verschiedene Bitmuster auch zugeteilt werden können.
  • In dem ersten Programmierdurchgang wird die untere Seite für eine ausgewählte Wortleitung WLn programmiert. Wenn die untere Seite Daten 1 bleiben soll, dann bleibt der Speicherelementzustand bei Zustand E (Verteilung 700). Wenn die Daten auf 0 programmiert werden sollen, dann wird die Schwellwertspannung der Speicherelemente auf WLn derart erhöht, dass das Speicherelement auf einen Zwischen-(LM oder untere-Mitte) Zustand (Verteilung 705) programmiert wird.
  • In einer Ausführungsform, nachdem ein Speicherelement von dem E-Zustand zu dem LM-Zustand programmiert wird, wird sein Nachbarspeicherelement auf einer angrenzenden Wortleitung WLn+1 in der NAND-Kette dann bezüglich seiner unteren Seite in einem jeweiligen ersten Programmierdurchgang der angrenzenden Wortleitung programmiert.
  • 7C stellt eine Ausführungsform eines zweiten Durchgangs der Zwei-Durchgänge-Programmiertechnik dar, auf die in 7B Bezug genommen worden ist. Die A-Zustands-Speicherelemente werden von der E-Zustands-Verteilung 700 zu der A-Zustands-Verteilung 702 programmiert, die B-Zustands-Speicherelemente werden von der LM-Zustands-Verteilung 705 zu der B-Zustands-Verteilung 704 programmiert und die C-Zustands-Speicherelemente werden von der LM-Zustands-Verteilung 705 zu der C-Zustands-Verteilung 706 programmiert.
  • 7D stellt eine Ausführungsform eines ersten Durchgangs von einer anderen Zwei-Durchgänge-Programmier-Technik dar. In diesem Beispiel, bezeichnet als neblig-feine (oder kurs-feine) Programmierung, werden die A-Zustands-, B-Zustands- und C-Zustands-Speicherelemente von dem E-Zustand zu Verteilungen 712, 714 und 716 unter Verwendung von unteren Verifikationsniveaus VvaL, VvbL und VvcL programmiert. Dies ist der neblige (oder Kurs-) Programmierdurchgang. Eine relativ große Programmspannungsschrittgröße kann zum Beispiel verwendet werden, um schnell die Speicherelemente auf die jeweiligen unteren Verifikationsniveaus zu programmieren.
  • 7E stellt eine Ausführungsform eines zweiten Durchgangs der Zwei-Durchgänge-Programmiertechnik dar, auf die in 7D Bezug genommen worden ist. Die A-Zustands-, B-Zustands- und C-Zustands-Speicherelemente werden von den jeweiligen unteren Verteilungen auf jeweilige endgültige Verteilungen 702, 704 und 706 programmiert, unter Verwendung der nominalen höheren Verifikationsniveaus Vva, Vvb und Vvc. Die ist der feine Programmierdurchgang. Eine relativ kleine Programmspannungsschrittgröße kann verwendet werden, zum Beispiel, um langsam die Speicherelemente auf die jeweiligen endgültigen Verifikationsniveaus zu programmieren, während eine große Überschreitung vermieden wird. Die programmierten Datenzustände, die den endgültigen Verteilungen 702, 704 und 706 entsprechen, können als endgültige programmierte Datenzustände bezeichnet werden. Der endgültiger programmierte Datenzustand für eine Speicherzelle kann der angezielten Schwellwertspannung oder der angezielten Schwellwertspannungsverteilung für die Speicherzelle entsprechen. In manchen Fällen können die programmierten Datenzustände, die den endgültigen Verteilungen 702, 704 und 706 entsprechen, als Targetdatenzustände oder beabsichtigte Programmierdatenzustände bezeichnet werden.
  • Obwohl die Programmierbeispiele vier Datenzustände und zwei Datenseiten darstellen, können die Konzepte, die hierin beschrieben sind, auf andere Implementierungen mit mehr oder weniger als vier Zuständen und mehr oder weniger als zwei Seiten angewandt werden. Zum Beispiel können die Speichervorrichtungen acht oder sechzehn Zustände pro Speicherelement verwenden. Darüber hinaus kann in den Beispielprogrammiertechniken, die hierin diskutiert werden, die Vth eines Speicherelements allmählich erhöht werden, da sie in einen Targetdatenzustand programmiert wird. Jedoch können Programmiertechniken verwendet werden, in denen die Vth eines Speicherelements allmählich gesenkt werden kann, da sie in einen Targetdatenzustand programmiert wird. Programmtechniken, die den Speicherelementstrom messen, können genauso gut verwendet werden. Die Konzepte, die hierin beschrieben sind, können auf verschiedene Programmiertechniken übertragen werden.
  • 7F stellt eine Ausführungsform einer Serie von Programm- und Verifikationspulsen dar, die auf eine ausgewählte Wortleitung während einer Programmieroperation angewandt werden. Eine Programmieroperation kann mehrere Programm-Verifikations-Schritte umfassen, in denen jeder Schritt eine oder mehrere Programmierspannungen anwendet, gefolgt von einer oder mehreren Verifikationsspannungen auf die ausgewählte Wortleitung. In einer Ausführungsform können die Programmierspannungen, die in einem vorhergehenden Schritt angewandt werden, in nachfolgenden Schritten gesteigert werden. Darüber hinaus können die eine oder die mehreren Programmierspannungen, die während eines Programmierschrittes angewandt werden, einen ersten Abschnitt aufweisen, der ein Passierspannungs- (Vpass) Niveau, z.B. 6-8 V, aufweist, gefolgt von einem zweiten, höchsten Amplitudenabschnitt bei einem Programmniveau, z.B. 12-25 V. Zum Beispiel weisen ein erster, zweiter, dritter und vierter Programmierpuls 790, 792, 794 und 796 Programmniveaus von Vpgm1, Vpgm2, Vpgm3 und Vpgm4 auf. Ein oder mehrere Verifikationspulse 798, die mit Verifikationsspannungen Vva, Vvb und Vvc assoziiert sind, können nach jedem Programmierpuls bereitgestellt werden. In manchen Fällen werden ein oder mehrere ursprüngliche Programmierpulse nicht von Verifikationspulsen gefolgt, weil es nicht erwartet wird, dass irgendwelche Speicherelemente den untersten Programmzustand (z.B. A-Zustand) erreicht haben. Nachfolgend können Programmschritte in manchen Fällen Verifikationspulse für den A-Zustand verwenden, gefolgt von Programmschritten, die Verifikationspulse für die A-Zustände und B-Zustände verwenden, gefolgt von Programmschritten, die Verifikationspulse für die B-Zustände und C-Zustände verwenden.
  • In einer Ausführungsform kann ein Programmierpuls einer Spannung entsprechen, die auf eine ausgewählte Wortleitung angewandt wird, die mit einer ausgewählten Speicherzelle innerhalb eines Speicher-Arrays während einer Programmieroperation verbunden ist, die von einer ersten Spannung (z.B. 0 V) zu einer Zwischenspannung (z.B. Vpass) übergeht und dann von der Zwischenspannung zu einer Programmierspannung (z.B. Vpgm1 oder 15V) übergeht. Ein Programmverifikationspuls kann einer Spannung entsprechen, die auf eine ausgewählte Wortleitung angewandt wird, die mit einer ausgewählten Speicherzelle innerhalb eines Speicher-Arrays während einer Programm-Verifikations-Operation verbunden ist, die von einer ersten Spannung (z.B. 0 V) zu einer ersten Verifikationsspannung (z.B. Vva) übergeht und dann von der ersten Verifikationsspannung zu einer zweiten Verifikationsspannung (z.B. Vvb) übergeht.
  • 8A stellt eine Ausführungsform von vier NAND-Ketten 805-808 dar. Jede der NAND-Ketten weist einen ersten Abschnitt der NAND-Kette (z.B. entsprechend einer ersten Reihe von Speicherzellentransistoren 804), einen zweiten Abschnitt der NAND-Kette (z.B. entsprechend einer zweiten Reihe von Speicherzellentransistoren 802) und einen Reihen-Auswahl-Gate-Transistor 803, der zwischen dem ersten Abschnitt der NAND-Kette und dem zweiten Abschnitt der NAND-Kette angeordnet ist, auf. Der erste Abschnitt der NAND-Kette weist Speicherzellentransistoren, die Wortleitungen WL0-WL47 entsprechen, einen Speicherzellentransistor, der mit der Dummy-Wortleitung DWL0 verbunden und zwischen dem Reihen-Auswahl-Gate-Transistor 803 und dem Speicherzellentransistor, der mit der Wortleitung WL47 verbunden ist, angeordnet ist und Speicherzellentransistoren, die mit den Dummy-Wortleitungen WLDS1 und WLDS0 verbunden und zwischen dem Speicherzellentransistor, der mit der Wortleitung WL0 verbunden ist und dem Source-Seiten-Auswahl-Gate, das mit SGS verbunden ist, auf.
  • In einer Ausführungsform kann während einer Programmieroperation für Speicherzellen innerhalb der ersten Reihe 804 der Reihen-Auswahl-Gate-Transistor 803 in einen leitenden Zustand versetzt werden, während die Speicherzellen innerhalb der ersten Reihe 804 programmiert werden. Während einer nachfolgenden Programmieroperation für Speicherzellen innerhalb der zweiten Reihe 802 kann der Reihen-Auswahl-Gate-Transistor 803 in einen nichtleitenden Zustand versetzt werden, während die Speicherzellen 801 innerhalb der zweiten Reihe 802 programmiert werden. In diesem Fall kann der Kanal unter den Speicherzellen innerhalb der ersten Reihe 804 gefloatet werden. Der Reihen-Auswahl-Gate-Transistor 803 kann einen NMOS-Transistor ohne eine Ladungseinfangschicht zwischen dem Kanal des NMOS-Transistors und dem Gate des NMOS-Transistors aufweisen. In einer anderen Ausführungsform kann während einer Löschoperation für Speicherzellen innerhalb der zweiten Reihe 802 der Reihen-Auswahl-Gate-Transistor 803 in einen nichtleitenden Zustand versetzt werden, während die Speicherzellen innerhalb der zweiten Reihe 802 gelöscht werden.
  • 8B stellt eine Ausführungsform einer NAND-Struktur dar, die vier Gruppen von Speicherketten (einschließlich einer ersten Gruppe 875 mit vier NAND-Ketten und einer zweiten Gruppe 876 mit vier NAND-Ketten) aufweist. Jede Speicher-Kette weist einen Reihen-Auswahl-Gate-Transistor (oder Speicherloch-verbundenen Transistor) auf, der verwendet werden kann, um einen ersten Satz von Speicherzellentransistoren innerhalb der Speicherkette (z.B. entsprechend den unteren Reihen-Wortleitungen WL00-WL47) elektrisch von einem zweiten Satz von Speicherzellentransistoren innerhalb der Speicherkette (z.B. entsprechend den oberen Reihen-Wortleitungen WL48-WL95) während einer Speicheroperation (z.B. einer Löschoperation oder einer Programmieroperation) zu isolieren. Die Reihen-Auswahl-Gate-Transistoren 873 können programmierbare Transistoren aufweisen wie z.B. Floating-Gate-Transistoren oder Ladungseinfangtransistoren oder nicht-programmierbare Transistoren wie z.B. einen NMOS-Transistor oder einen PMOS-Transistor. Wenn ein Reihen-Auswahl-Gate-Transistor in einen leitenden Zustand eingestellt wird, dann kann eine Bitleitung, die mit einer Drain-Seite einer NAND-Kette verbunden ist, elektrisch mit einem Kanal verbunden werden, der unter Speicherzellentransistoren der unteren Reihe gebildet wird. Jede Speicherkette innerhalb der vier Gruppen von Speicherketten kann mit einer anderen Bitleitung verbunden werden.
  • 8C stellt eine Ausführungsform von Vorspann-Bedingungen dar, die auf Wortleitungen einer NAND-Struktur angewandt werden, die einen oder mehrere Reihen-Auswahl-Gate-Transistoren aufweist. Wie dargestellt, wenn eine Speicherzelle innerhalb einer ersten Reihe, die mit der Wortleitung WL0 assoziiert ist, programmiert wird, wird VPGM (z.B. 15 V) auf WL0 angewandt, während der Reihen-Auswahl-Gate-Transistor in einen leitenden Zustand (z.B. VSG_M von 7 V) eingestellt wird und Passierspannungen werden auf die nicht ausgewählten Wortleitungen WL1 bis WL95 angewandt. Wenn eine Speicherzelle innerhalb einer zweiten Reihe programmiert 882 wird, die mit Wortleitung WL48 assoziiert ist, wird VPGM auf WL48 angewandt, während der Reihen-Auswahl-Gate-Transistor in einen nichtleitenden Zustand (z.B. wird das Gate des Reihen-Auswahl-Gate-Transistors auf 0V angesteuert) eingestellt wird und Passierspannungen werden auf die nicht ausgewählten Wortleitungen WL49 bis WL95 innerhalb der zweiten Reihe angewandt. In diesem Fall können die Transistoren innerhalb der ersten Reihe elektrisch von den Transistoren innerhalb der zweiten Reihe getrennt werden und die Speicherzellentransistoren innerhalb der ersten Reihe können gefloatet werden.
  • In manchen Ausführungsformen kann die Reihenfolge des Programmierens und Verifizierens von Speicherzellentransistoren innerhalb der ersten Reihe von Wortleitung WL47 bis Wortleitung WL0 (z.B. von dem Speicherzellentransistor, der am nächsten zu dem Reihen-Auswahl-Gate-Transistor auf der Source-Seite ist, hin zu dem Source-Seiten-Auswahl-Gate-Transistor) sein. In diesem Fall kann der Speicherzellentransistor, der mit der Wortleitung WL47 verbunden ist, programmiert und verifiziert werden, bevor der Speicherzellentransistor, der mit der Wortleitung WL46 verbunden ist, programmiert und verifiziert wird; nachfolgend kann der Speicherzellentransistor, der mit Wortleitung WL46 verbunden ist, programmiert und verifiziert werden, bevor der Speicherzellentransistor, der mit Wortleitung WL45 verbunden ist, programmiert und verifiziert wird.
  • In manchen Ausführungsformen kann die Reihenfolge des Programmierens und Verifizierens von Speicherzellentransistoren innerhalb der zweiten Reihe von Wortleitung WL48 zu Wortleitung WL95 sein (z.B. von dem Speicherzellentransistor, der am nächsten zu dem Reihen-Auswahl-Transistor auf der Drain-Seite ist hin zu dem Drain-Seiten-Auswahl-Gate-Transistor). In diesem Fall kann der Speicherzellentransistor, der mit Wortleitung WL48 verbunden ist, programmiert und verifiziert werden, bevor der Speicherzellentransistor, der mit Wortleitung WL49 verbunden ist, programmiert und verifiziert wird; nachfolgend kann der Speicherzellentransistor, der mit Wortleitung WL49 verbunden ist, programmiert und verifiziert werden, bevor der Speicherzellentransistor, der mit Wortleitung WL50 verbunden ist, programmiert und verifiziert wird.
  • In manchen Fällen kann jede NAND-Kette einen Reihen-Auswahl-Gate- Transistor aufweisen, der einen obersten Unter-Block-Abschnitt der NAND-Kette von einem untersten Unter-Block-Abschnitt der NAND-Kette trennt. In diesem Fall kann für den obersten Unter-Block eine Programmiersequenz, die die Anwendung von Programmier- und Programmverifikationspulsen umfasst, von der Unterseite des obersten Unter-Blocks bis zu der Oberseite des obersten Unter-Blocks sein (z.B. von einem Speicherzellentransistor angrenzend zu dem Reihen-Auswahl-Gate-Transistor auf der Drain-Seite hin zu dem Drain-Seiten-Auswahl-Gate für die NAND-Kette). Für den unteren Unterblock kann die Programmiersequenz von der Oberseite des untersten Unterblockes zu der Unterseite des untersten Unterblocks (z.B. von einem Speicherzellentransistor angrenzend zu dem Reihen-Auswahl-Gate auf der Source-Seite hin zu dem Source-Seiten-Auswahl-Gate für die NAND-Kette) sein.
  • 8D stellt eine Ausführungsform von Spannungswellenformen dar, die auf eine NAND-Kette während einer Programmverifikationsoperation angewandt werden. Zum Beispiel, Bezug nehmend auf 8A, kann die Wellenform CG_DD 821 auf den DD0-Knoten angewandt werden, die Wellenform MJT 820 kann auf den MJT-Knoten angewandt werden, die Wellenform CG_sel 823 kann auf das Gate des Auswahl-Speicherzellentransistors (z.B. WL47) angewandt werden, die Wellenform CG_unsel_S 824 kann auf die Gates von einem oder mehreren nicht ausgewählten Speicherzellentransistoren auf der Source-Seite des ausgewählten Speicherzellentransistors (z.B. WL46 und/oder WL45) angewandt werden, die Wellenform CG_DS kann auf den WLDS1-Knoten angewandt werden, die Wellenform SGS_sel 825 kann auf den SGS-Knoten angewandt werden, die Wellenform SGSB 826 kann auf den SGSB-Knoten angewandt werden und die Wellenform SL 827 kann auf die Source-Leitung einer NAND-Kette angewandt werden. Wie dargestellt, wird zum Zeitpunkt T1 ein Reihen-Auswahl-Gate-Transistor, der einen obersten Unter-Block-Abschnitt einer NAND-Kette von einem untersten Unter-Block-Abschnitt der NAND-Kette trennt, in einen leitenden Zustand eingestellt durch Anwenden von VREAD (z.B. 8V) auf das Gate des Reihen-Auswahl-Gate-Transistors. Zwischen den Zeitpunkten T1 und T2 wird die Spannung, die auf das Gate des ausgewählten Speicherzellentransistors angewandt wird, angepasst, um verschiedene Spannungsniveaus (z.B. VCG_A, VCG_B, VCG_C und VCG_D) zu verifizieren. Zum Zeitpunkt T2, nachdem die verschiedenen Spannungsniveaus verifiziert worden sind, kann der Reihen-Auswahl-Gate-Transistor in einen nichtleitenden Zustand eingestellt werden und das Gate des ausgewählten Speicherzellentransistors kann auf eine Spannung eingestellt werden, die größer als jedes der Spannungsniveaus ist, die zwischen den Zeitpunkten T1 und T2 verwendet worden sind (z.B. Einstellen des Gates des ausgewählten Speicherzellengtransistors auf eine VREAD-Spannung oberhalb des höchsten Verifikationsspannungsniveaus VCG_D). Zwischen den Zeitpunkten T3 und T4 können sämtliche Transistoren zwischen dem ausgewählten Speicherzellentransistor und der Source-Leitung in leitende Zustände eingestellt werden, während der Reihen-Auswahl-Gate-Transistor in einem nichtleitenden Zustand ist. In diesem Fall, anstatt den ausgewählten Speicherzellentransistor bei T2 zu deselektieren, nachdem die verschiedenen Spanungsniveaus verifiziert worden sind, kann der Kanal unter den Transistoren zwischen dem ausgewählten Speicherzellentransistor und der Source-Leitung auf VDDSA (z.B. 2,7 V oder 3,3 V) vorgespannt oder eingestellt werden durch Anwenden des Spannungsniveaus VDDSA auf die Source-Leitung SL. Das Spannungsniveau VDDSA (z.B. 3V) kann größer als sämtliche der Spannungen (z.B. VCELSRC von 0,8 V oder 1,0 V) sein, die auf die Source-Leitung SL zwischen den Zeitpunkten T1 und T2 angewandt werden.
  • 8E stellt eine andere Ausführungsform von Spannungswellenformen dar, die auf eine NAND-Kette während einer Programmverifikationsoperation angewandt werden. Zum Beispiel, Bezug nehmend auf 8A, kann die Wellenform CG_DD 821 auf den DD0-Knoten angewandt werden, die Wellenform CG_unsel_D 822 kann auf die Gates von einem oder mehreren nicht ausgewählten Speicherzellentransistoren auf der Drain-Seite des ausgewählten Speicherzellentransistors (z.B. WL94 und/oder WL95) angewandt werden, Wellenform CG_sel 823 kann auf das Gate des Auswahl-Speicherzellentransistors (z.B. WL47) angewandt werden, Wellenform CG_unsel_S 824 kann auf die Gates von einem oder mehreren nicht ausgewählten Speicherzellentransistoren auf der Source-Seite des ausgewählten Speicherzellentransistors (z.B. WL1 und/oder WL0) angewandt werden, Wellenform CG_DS kann auf den WLDS1-Knoten angewandt werden, Wellenform SGS_sel 825 kann auf den SGS-Knoten angewandt werden, Wellenform SGSB 826 kann auf den SGSB-Knoten angewandt werden und Wellenform SL 827 kann auf eine Source-Leiten einer NAND-Kette angewandt werden. Wie dargestellt, wird zum Zeitpunkt T1 eine Programmverifikationsoperation eingeleitet durch Anwenden von VREAD (z.B. 8V) auf die Gates von dem einen oder den mehreren nicht ausgewählten Speicherzellentransistoren auf der Drain-Seite des ausgewählten Speicherzellentransistors, von VREAD auf die Gates von dem einen oder den mehreren nicht ausgewählten Speicherzellentransistoren auf der Source-Seite des ausgewählten Speicherzellentransistors und VCG_A oder ein anderes Verifikationsspannungsniveau auf das Gate des Auswahl-Speicherzellentransistors. Zwischen den Zeitpunkten T1 und T2 wird die Spannung, die auf das Gate des ausgewählten Speicherzellentransistors angewandt wird, angepasst, um verschiedene Spannungsniveaus (z.B. VCG_A, VCG_B, VCG_C und VCG_D) zu verifizieren. Zu dem Zeitpunkt T2, nachdem verschiedene Spannungsniveaus verifiziert werden sind, werden der eine oder die mehreren nicht ausgewählten Speicherzellentransistoren auf der Drain-Seite des ausgewählten Speicherzellentransistors in nichtleitende Zustände eingestellt (z.B. kann CG_unsel_D 822 auf 0 V eingestellt werden) und das Gate des ausgewählten Speicherzellentransistors kann auf eine Spannung eingestellt werden, die größer als sämtliche der Spannungsniveaus ist, die zwischen den Zeitpunkten T1 und T2 verwendet worden sind (z.B. Einstellen des Gates des ausgewählten Speicherzellentransistors auf VREAD). Zwischen den Zeitpunkten T3 und T4 können sämtliche Transistoren zwischen dem ausgewählten Speicherzellentransistor und der Source-Leitung (einschließlich dem einen oder den mehreren nicht ausgewählten Speicherzellentransistoren auf der Source-Seite des ausgewählten Speicherzellentransistors und den Source-Seiten-Auswahl-Gates) in leitende Zustände eingestellt werden, während der eine oder die mehreren nicht ausgewählten Speicherzellentransistoren auf der Drain-Seite des ausgewählten Speicherzellentransistors in nichtleitende Zustände eingestellt werden. In diesem Fall, anstatt den ausgewählten Speicherzellentransistor bei T2 zu deselektieren, nachdem verschiedene Spannungsniveaus verifiziert worden sind, kann der Kanal unter den Transistoren zwischen dem ausgewählten Speicherzellentransistor und der Source-Leitung vorgespannt oder auf VDDSA (z.B. 2,7 V oder 3,3 V) eingestellt werden durch Anwenden des Spannungsniveaus VDDSA auf die Source-Leitung SL. Das Spannungsniveau VDDSA kann größer sein als sämtliche der Spannungen, die auf die Source-Leitung SL zwischen den Zeitpunkten T1 und T2 angewandt werden.
  • In einer alternativen Ausführungsform, nachdem die verschiedenen Spannungsniveaus verifiziert worden sind, können der eine oder die mehreren nicht ausgewählten Speicherzellentransistoren auf der Source-Seite des ausgewählten Speicherzellentransistors in nichtleitende Zustände (z.B. CG_unsel_S 824 kann auf 0 V eingestellt werden) eingestellt werden und das Gate des ausgewählten Speicherzellentransistors kann auf eine Spannung eingestellt werden, die größer als sämtliche der Spannungsniveaus ist, die zwischen den Zeitpunkten T1 und T2 verwendet werden (z.B. Einstellen des Gates des ausgewählten Speicherzellentransistors auf VREAD). Der Kanal unter den Transistoren zwischen dem ausgewählten Speicherzellentransistor und einer Bitleitung kann vorgespannt oder auf VDDSA (z.B. 2,7 V oder 3,3 V) eingestellt werden durch Anwenden des Spannungsniveaus VDDSA auf die Bitleitung BL. Das Spannungsniveau VDDSA (z.B. 3,0 V) kann größer sein als sämtliche der Spannungen, die auf die Bitleitung BL zwischen den Zeiten T1 und T2 angewandt werden (z.B. kann die Bitleitung auf 1,5 V oder VCELSRC+0,5V zwischen den Zeitpunkten T1 und T2 eingestellt werden).
  • 9A ist ein Flussdiagramm, das eine Ausführungsform eines Prozesses zum Programmieren und Verifizieren von Speicherzellen innerhalb eines Speicher-Arrays beschreibt. In einer Ausführungsform kann der Prozess von 9A durch ein nichtflüchtiges Speichersystem wie z.B. das nichtflüchtige Speichersystem 596 in 5A durchgeführt werden.
  • In Schritt 902 wird ein erster Satz von Speicherzellentransistoren einer NAND-Kette gelöscht und ein zweiter Satz von Speicherzellentransistoren der NAND-Kette wird gelöscht. In diesem Fall können die Speicherzellen, die dem ersten Satz von Speicherzellentransistoren und dem zweiten Satz von Speicherzellentransistoren entsprechen, in gelöschte Datenzustände oder innerhalb einer Schwellwertspannungsverteilung eingestellt werden, die mit dem gelöschten Datenzustand assoziiert ist wie z.B. die Schwellwertspannungsverteilung 700 in 7A. Der erste Satz von Speicherzellentransistoren wird zwischen einer Bitleitung, die mit der NAND-Kette verbunden ist und dem zweiten Satz von Speicherzellentransistoren angeordnet. Der zweite Satz von Speicherzellentransistoren wird zwischen dem ersten Satz von Speicherzellentransistoren und einer Source-Leitung, die mit der NAND-Kette verbunden ist, angeordnet. In einem Beispiel, Bezug nehmend auf 8A, kann der erste Satz von Speicherzellentransistoren den Speicherzellentransistoren entsprechen, die mit den Wortleitungen WL48-WL95 verbunden sind, und der zweite Satz von Speicherzellentransistoren kann den Speicherzellentransistoren entsprechen, die mit Wortleitungen WL0-WL47 verbunden sind. Der zweite Satz von Speicherzellentransistoren kann sich mit der Source-Leitung über einen Source-Seiten-Auswahl-Transistor verbinden. Der erste Satz von Speicherzellentransistoren kann sich mit der Bitleitung über einen Drain-Seiten-Auswahl-Transistor verbinden.
  • In Schritt 904 wird ein erster Speicherzellentransistor des zweiten Satzes von Speicherzellentransistoren, der am nächsten zu dem ersten Satz von Speicherzellentransistoren ist, programmiert. Der erste Speicherzellentransistor kann einen Floating-Gate-Transistor oder einen Ladungseinfangtransistor aufweisen. Der erste Speicherzellentransistor kann während einer Programmieroperation programmiert werden, die eine Serie von einem oder mehreren Programmierpulsen und einen oder mehrere Verifikationspulse aufweist, die auf eine ausgewählte Wortleitung angewandt werden, die mit dem ersten Speicherzellentransistor verbunden ist. In einem Beispiel, Bezug nehmend auf 8A, kann der Speicherzellentransistor, der mit der Wortleitung WL47 verbunden ist, den Speicherzellentransistor aus dem Satz von Speicherzellentransistoren aufweisen, der mit den Wortleitungen WL0-WL47 verbunden ist, die am nächsten zu dem Satz von Speicherzellentransistoren sind, die mit Wortleitungen WL48-WL95 verbunden sind. In manchen Fällen kann der erste Speicherzellentransistor angrenzend zu einem Speicherzellentransistor des ersten Satzes von Speicherzellentransistoren sein (z.B. wenn keine Reihen-Auswahl-Gate-Transistoren und internen Dummy-Transistoren innerhalb einer NAND-Kette verwendet werden). In Schritt 906 wird verifiziert, dass jeder Speicherzellentransistor des zweiten Satzes von Speicherzellentransistoren einen endgültigen programmierten Datenzustand in einer sequentiellen Reihenfolge erreicht hat, der bei dem ersten Speicherzellentransistor startet und mit einem zweiten Speicherzellentransistor des zweiten Satzes von Speicherzellentransistoren endet, der am nächsten zu der Source-Leitung ist. In einem Beispiel, Bezug nehmend auf 8A, kann der Speicherzellentransistor, der mit Wortleitung WL47 verbunden ist, programmverifiziert werden, bevor der Speicherzellentransistor, der mit Wortleitung WL46 verbunden ist, programmverifiziert wird und der Speicherzellentransistor, der mit Wortleitung WL46 verbunden ist, kann programmverifiziert werden, bevor der Speicherzellentransistor, der mit Wortleitung WL45 verbunden ist, programmverifiziert wird; nachfolgend kann der Speicherzellentransistor, der mit Wortleitung WL1 verbunden ist, programmverifiziert werden, bevor der Speicherzellentransistor, der mit Wortleitung WL0 verbunden ist, programmverifiziert wird.
  • In Schritt 908 kann ein Kanal der NAND-Kette, die dem zweiten Satz von Speicherzellentransistoren entspricht, auf eine bestimmte Spannung eingestellt werden, nachfolgend zum Verifizieren des ersten Speicherzellentransistors des zweitens Satzes von Speicherzellentransistoren. Die bestimmte Spannung kann größer sein als die Source-Leitungs-Spannung, die auf die Source-Leitung angewandt wird, während der erste Speicherzellentransistor verifiziert wird. Die bestimmte Spannung kann angewandt werden, nachfolgend zur Verifizierung des ersten Speicherzellentransistors und vor der Deselektion des ersten Speicherzellentransistors und/oder bevor die Source-Leitung unter die Source-Leitungs-Spannung fällt, die auf die Source-Leitung angewandt wird, während der erste Speicherzellentransistor verifiziert wird. In einem Beispiel, Bezug nehmend auf 8D und 8A, kann der Kanal unter den Speicherzellentransistoren, die mit den Wortleitungen WL0-W47 verbunden sind, angepasst werden nach dem Programmverifizieren des ersten Speicherzellentransistors von VCELSRC (z.B. 0,8 V) zwischen den Zeitpunkten T1 und T2 zu VDDSA (z.B. 3,0 V) zwischen den Zeitpunkten T3 und T4.
  • In manchen Ausführungsformen kann während einer Programmieroperation eine erste Speicherzelle programmiert und dann programmverifiziert werden gefolgt von einer zweiten Speicherzelle, die programmiert und dann programmverifiziert wird. Die Programmieroperation kann die Anwendung von einem oder mehreren Programmierpulsen auf die erste Speicherzelle umfassen, gefolgt von der Anwendung von einem oder mehreren Programmverifikationspulsen auf die erste Speicherzelle. Die Anwendung von einem oder mehreren Programmverifikationspulsen auf die erste Speicherzelle kann verwendet werden um zu bestätigen, dass die erste Speicherzelle programmiert oder in einen Target-Daten-Zustand oder in den endgültigen programmierten Datenzustand für die erste Speicherzelle eingestellt worden ist.
  • In manchen Ausführungsformen kann eine NAND-Kette 32 Speicherzellentransistoren aufweisen. Jeder der 32 Speicherzellentransistoren kann in einen gelöschten Datenzustand während einer Löschoperation eingestellt werden. Nachfolgend kann ein erster Speicherzellentransistor (z.B. entsprechend der Wortleitung 12) programmiert und programmverifiziert werden, während sämtliche der anderen 31 Speicherzellentransistoren in dem gelöschten Datenzustand bleiben. Nachdem der erste Speicherzellentransistor in seinen beabsichtigten Datenzustand oder Target-Datenzustand eingestellt worden ist, kann dann ein zweiter Speicherzellentransistor (z.B. entsprechend Wortleitung 11) programmiert und programmverifiziert werden, während sämtliche der anderen 30 Speicherzellentransistoren in dem gelöschten Datenzustand bleiben. Nachfolgend kann ein dritter Speicherzellentransistor (z.B. entsprechend Wortleitung 8) programmiert und programmverifiziert werden, während sämtliche der anderen 29 Speicherzellentransistoren in dem gelöschten Datenzustand bleiben. Nachfolgend kann ein vierter Speicherzellentransistor (z.B. entsprechend Wortleitung 7) programmiert und programmverifiziert werden, während sämtliche der anderen 28 Speicherzellentransistoren in dem gelöschten Datenzustand bleiben.
  • 9B ist ein Flussdiagramm, das eine andere Ausführungsform eines Prozesses zum Programmieren und Verifizieren von Speicherzellen innerhalb eines Speicher-Arrays beschreibt. In einer Ausführungsform kann der Prozess von 9B durch ein nichtflüchtiges Speichersystem durchgeführt werden, wie z.B. das nichtflüchtige Speichersystem 596 in 5A.
  • In Schritt 932 wird ein erster Satz von Speicherzellentransistoren einer NAND-Kette gelöscht und ein zweiter Satz von Speicherzellentransistoren der NAND-Kette wird gelöscht. In diesem Fall können die Speicherzellen, die dem ersten Satz von Speicherzellentransistoren und dem zweiten Satz von Speicherzellentransistoren entsprechen, in gelöschte Datenzustände oder innerhalb einer Schwellwertspannungsverteilung, die mit dem gelöschten Datenzustand assoziiert ist wie z.B. die Schwellwertspannungsverteilung 700 in 7A eingestellt werden. Der erste Satz von Speicherzellentransistoren wird zwischen einer Bitleitung, die mit der NAND-Kette verbunden ist und dem zweiten Satz von Speicherzellentransistoren angeordnet. Der zweite Satz von Speicherzellentransistoren wird zwischen dem ersten Satz von Speicherzellentransistoren und einer Source-Leitung, die mit der NAND-Kette verbunden ist, angeordnet. In einem Beispiel, Bezug nehmend auf 8A, kann der erste Satz von Speicherzellentransistoren den Speicherzellentransistoren entsprechen, die mit den Wortleitungen WL48-WL95 verbunden sind und der zweite Satz von Speicherzellentransistoren kann den Speicherzellentransistoren entsprechen, die mit Wortleitungen WL0-WL47 verbunden sind. Der zweite Satz von Speicherzellentransistoren kann sich mit der Source-Leitung über einen Source-Seiten-Auswahl-Gate-Transistor verbinden. Der erste Satz von Speicherzellentransistoren kann sich mit der Bitleitung über einen Drain-Seiten-Auswahl-Gate-Transistor verbinden.
  • In Schritt 934 wird ein erster Speicherzellentransistor des ersten Satzes von Speicherzellentransistoren, der am nächsten zu dem zweiten Satz von Speicherzellentransistoren ist, programmiert. Der erste Speicherzellentransistor kann einen Floating-Gate-Transistor oder einen Ladungseinfangtransistor aufweisen. In einem Beispiel, Bezug nehmend auf 8A, kann der Speicherzellentransistor, der mit Wortleitung WL48 verbunden ist, den Speicherzellentransistor aus dem Satz von Speicherzellentransistoren aufweisen, die mit den Wortleitungen WL48-WL95 verbunden sind, der am nächsten zu dem Satz von Speicherzellentransistoren ist, die mit den Wortleitungen WL0-WL47 verbunden sind. In manchen Fällen kann der erste Speicherzellentransistor angrenzend zu einem Speicherzellentransistor des zweiten Satzes von Speicherzellentransistoren sein (z.B. wenn keine Reihen-Auswahl-Gate-Transistoren oder interne Dummy-Transistoren innerhalb einer NAND-Kette verwendet werden). In Schritt 936 wird verifiziert, dass jeder Speicherzellentransistor des ersten Satzes von Speicherzellentransistoren einen endgültigen programminerten Datenzustand erreicht hat, in einer sequentiellen Reihenfolge beginnend von dem ersten Speicherzellentransistor und endend mit einem zweiten Speicherzellentransistor des ersten Satzes von Speicherzellentransistoren, der am nächsten zu einer Bitleitung ist.
  • In einem Beispiel, Bezug nehmend auf 8A, kann der Speicherzellentransistor, der mit der Wortleitung WL48 verbunden ist, programmverifiziert werden, bevor der Speicherzellentransistor, der mit der Wortleitung WL49 verbunden ist, programmverifiziert wird und der Speicherzellentransistor, der mit Wortleitung WL49 verbunden ist, kann programmverifiziert werden, bevor der Speicherzellentransistor, der mit Wortleitung WL50 verbunden ist, programmverifiziert wird; nachfolgend kann der Speicherzellentransistor, der mit Wortleitung WL94 verbunden ist, programmverifiziert werden, bevor der Speicherzellentransistor, der mit Wortleitung WL95 verbunden ist, programmverifiziert wird. In Schritt 938 kann ein Kanal der NAND-Kette, der dem ersten Satz von Speicherzellentransistoren entspricht, auf eine bestimmte Spannung eingestellt werden nachfolgend zum Verifizieren des ersten Speicherzellentransistors des ersten Satzes von Speicherzellentransistoren. Die bestimmte Spannung kann größer als die Bitleitungsspannung sein, die auf die Bitleitung angewandt wird, während der erste Speicherzellentransistor verifiziert wird. Die bestimmte Spannung kann angewandt werden, nachfolgend zur Verifizierung des ersten Speicherzellentransistors und vor der Deselektion des ersten Speicherzellentransistors und/oder bevor die Bitleitung unter die Bitleitungsspannung fällt, die auf die Bitleitung angewandt wird, während der erste Speicherzellentransistor verifiziert wird.
  • In manchen Ausführungsformen kann eine Middle-out-Löschsequenz durchgeführt werden, in der Speicherzellentransistoren in der Mitte der NAND-Kette gelöscht und löschverifiziert werden, bevor andere Speicherzellentransistoren hin zu dem Drain-Seiten-Ende der NAND-Kette und/oder dem Source-Seiten-Ende der NAND-Kette gelöscht und verifiziert werden. In einem Beispiel kann für eine NAND-Kette mit 32 Speicherzellentransistoren, die den Wortleitungen WL0 bis WL31 von dem Source-Seiten-Ende der NAND-Kette zu dem Drain-Seiten-Ende der NAND-Kette entsprechen, der Speicherzellentransistor, der der Wortleitung WL16 entspricht, gelöscht und löschverifiziert werden, bevor der Speicherzellentransistor, der der Wortleitung WL15 entspricht, gelöscht wird. In einem anderen Beispiel kann der Speicherzellentransistor, der der Wortleitung WL16 entspricht, gelöscht und löschverifiziert werden, bevor der Speicherzellentransistor, der der Wortleitung WL15 entspricht gelöscht wird und bevor der Speicherzellentransistor, der der Wortleitung WL17 entspricht, gelöscht wird. In einem anderen Beispiel kann der Speicherzellentransistor, der der Wortleitung WL16 entspricht, gelöscht und löschverifiziert werden, bevor das Programmieren des Speicherzellentransistors, der der Wortleitung WL15 entspricht, begonnen wird und der Speicherzellentransistor, der der Wortleitung WL15 entspricht, kann gelöscht und löschverifiziert werden, bevor das Löschen des Speicherzellentransistors begonnen wird, der der Wortleitung WL14 entspricht.
  • Eine Ausführungsform der offenbarten Technologie weist eine NAND-Kette und einen Steuerschaltkreis auf. Die NAND-Kette kann einen ersten Satz von Speicherzellen und einen zweiten Satz von Speicherzellen aufweisen. Der erste Satz von Speicherzellen kann Floating-Gate-Transistoren, Ladungseinfangtransistoren, ReRAM-Speicherzellen, MRAM-Speicherzellen oder Phasenänderungsspeicherzellen aufweisen. Der erste Satz von Speicherzellen kann zwischen einer ersten Steuerleitung (z.B. einer Source-Leitung) und dem zweiten Satz von Speicherzellen angeordnet werden. Der zweite Satz von Speicherzellen kann zwischen dem ersten Satz von Speicherzellen und einer zweiten Steuerleitung (z.B. einer Bitleitung) angeordnet werden. Der Steuerschaltkreis kann konfiguriert werden, um zu verifizieren, dass jede Speicherzelle des ersten Satzes von Speicherzellen in einem endgültigen programmierten Datenzustand ist, in einer sequentiellen Reihenfolge beginnend von einer erste Speicherzelle des ersten Satzes von Speicherzellen, die am nächsten zu dem zweiten Satz von Speicherzellen ist und endend mit einer zweiten Speicherzelle von dem ersten Satz von Speicherzellen, die am nächsten zu der ersten Steuerleitung ist. Der Steuerschaltkreis kann konfiguriert werden, um einen programmierten Datenzustand der ersten Speicherzelle zu verifizieren, während jede des zweiten Satzes von Speicherzellen in einem gelöschten Datenzustand ist.
  • Eine Ausführungsform der offenbarten Technologie weist eine NAND-Kette und einen Steuerschaltkreis auf. Die NAND-Kette weist einen ersten Satz von Speicherzellentransistoren und einen zweiten Satz von Speicherzellentransistoren auf. Der erste Satz von Speicherzellentransistoren ist zwischen einer Bitleitung und dem zweiten Satz von Speicherzellentransistoren angeordnet. Der zweite Satz von Speicherzellentransistoren ist zwischen dem ersten Satz von Speicherzellentransistoren und einer Source-Leitung angeordnet. Der Steuerschaltkreis ist der konfiguriert, um zu verifizieren, dass jeder Speicherzellentransistor des zweiten Satzes von Speicherzellentransistoren einen endgültigen programmierten Datenzustand erreicht hat, in einer sequentiellen Reihenfolge, startend von einem ersten Speicherzellentransistor des zweiten Satzes von Speicherzellentransistoren, der am nächsten zu dem ersten Satz von Speicherzellentransistoren ist und endend mit einem zweiten Speicherzellentransistor des zweiten Satzes von Speicherzellentransistoren, der am nächsten zu der Source-Leitung ist. Der Steuer-Schaltkreis ist konfiguriert, um einen programmierten Datenzustand des ersten Speicherzellentransistors zu verifizieren, während jede des ersten Satzes von Speicherzellentransistoren in einem gelöschten Datenzustand ist.
  • Eine Ausführungsform der offenbarten Technologie weist eine NAND-Kette und einen Steuerschaltkreis auf. Die NAND-Kette weist einen ersten Satz von Speicherzellentransistoren und einen zweiten Satz von Speicherzellentransistoren auf. Der erste Satz von Speicherzellentransistoren ist zwischen eine Bitleitung und dem zweiten Satz von Speicherzellentransistoren angeordnet. Der zweite Satz von Speicherzellentransistoren ist zwischen dem ersten Satz von Speicherzellentransistoren und einer Source-Leitung angeordnet. Der Steuerschaltkreis ist konfiguriert, um zu verifizieren, dass jeder Speicherzellentransistor des ersten Satzes von Speicherzellentransistoren einen endgültigen programmierten Datenzustand erreicht hat, in einer sequentiellen Reihenfolge, startend von einem ersten Speicherzellentransistor des ersten Satzes von Speicherzellentransistoren, der am nächsten zu dem zweiten Satz von Speicherzellentransistoren ist und endend mit einem zweiten Speicherzellentransistor des ersten Satzes von Speicherzellentransistoren, der am nächsten zu der Bitleitung ist. Der Steuerschaltkreis ist konfiguriert um einen programmierten Datenzustand des ersten Speicherzellentransistors zu verifizieren, während jeder des zweiten Satzes von Speicherzellentransistoren in einem gelöschten Datenzustand ist.
  • Eine Ausführungsform der offenbarten Technologie weist eine NAND-Kette und einen Steuerschaltkreis auf. Die NAND-Kette weist einen ersten Satz von Transistoren und einen zweiten Satz von Transistoren auf. Der erste Satz von Transistoren ist zwischen einer Bitleitung und dem zweiten Satz von Transistoren angeordnet. Der zweite Satz von Transistoren ist zwischen dem ersten Satz von Transistoren und einer Source-Leitung angeordnet. Der Steuer-Schaltkreis ist konfiguriert um einen programmierten Datenzustand eines ersten Speicherzellentransistors des zweiten Satzes von Transistoren zu verifizieren und eine Source-Leitungs-Spannung auf die Source-Leitung während der Verifikation des programmierten Datenzustands des ersten Speicherzellentransistors anzuwenden. Der Steuerschaltkreis ist konfiguriert, um einen Kanal der NAND-Kette, der dem zweiten Satz von Speicherzellentransistoren entspricht, auf eine bestimmte Spannung größer als die Source-Leitungs-Spannung einzustellen nachfolgend zu der Verifikation des programmierten Datenzustands des ersten Speicherzellentransistors.
  • Für die Zwecke dieses Dokuments sollte bemerkt werden, dass die Dimensionen der verschiedenen Merkmale, die in den Figuren dargestellt sind, gegebenenfalls nicht notwendigerweise maßstabsgetreu gezeichnet sind.
  • Für die Zwecke dieses Dokuments kann eine Bezugnahme in der Beschreibung auf „eine Ausführungsform“, „irgendeine Ausführungsform“ oder „eine andere Ausführungsform“ verwendet werden, um verschiedene Ausführungsformen zu beschreiben und bezieht sich nicht notwendigerweise auf dieselbe Ausführungsform.
  • Für die Zwecke dieses Dokuments kann eine Verbindung eine direkte Verbindung oder eine indirekte Verbindung (z.B. über einen anderen Bestandteil) sein. In manchen Fällen, wenn ein Element bezeichnet wird als dass es mit einem anderen Element verbunden wird oder zu einem anderen Element gekoppelt wird, kann das Element direkt mit dem anderen Element verbunden werden oder indirekt mit dem anderen Element über dazwischenliegende Elemente verbunden werden. Wenn ein Element bezeichnet wird, als dass es direkt mit einem anderen Element verbunden wird, dann gibt es keine dazwischenliegenden Elemente zwischen dem Element und dem anderen Element.
  • Für die Zwecke dieses Dokuments kann der Ausdruck „basierend auf“ als „basierend zumindest teilweise auf“ gelesen werden.
  • Für die Zwecke dieses Dokuments kann die Verwendung von numerischen Ausdrücken wie z.B. ein „erstes“ Objekt, ein „zweites“ Objekt und ein „drittes“ Objekt ohne zusätzlichen Kontext gegebenenfalls nicht eine Reihenfolge von Objekten implizieren, sondern anstelle dessen für Identifikationszwecke verwendet werden, um verschiedene Objekte zu identifizieren.
  • Für die Zwecke dieses Dokuments kann sich der Ausdruck „Satz“ von Objekten auf einen „Satz“ von einem oder mehreren Objekten beziehen.
  • Obwohl der Gegenstand in eine Sprache beschrieben worden ist, die spezifisch für die strukturellen Merkmale und/oder methodologischen Handlungen ist, sollte verstanden werden, dass der Gegenstand, der in den angehängten Ansprüchen definiert wird, nicht notwendigerweise auf die spezifischen Merkmale oder Handlungen beschränkt ist, die oben beschrieben sind. Anstelle dessen sind die spezifischen Merkmale und Handlungen, die oben beschrieben sind, als Beispielformen offenbart, um die Ansprüche zu implementieren.

Claims (15)

  1. Vorrichtung, die Folgendes aufweist: eine NAND-Kette (501), die einen ersten Satz von Speicherzellen und einen zweiten Satz von Speicherzellen aufweist, wobei der erste Satz von Speicherzellen zwischen einer ersten Steuerleitung und dem zweiten Satz von Speicherzellen angeordnet ist, wobei der zweite Satz von Speicherzellen zwischen dem ersten Satz von Speicherzellen und einer zweiten Steuerleitung angeordnet ist; und einen Steuerschaltkreis (510), der konfiguriert ist, um zu bestimmen, dass jede Speicherzelle des ersten Satzes von Speicherzellen in einem endgültigen programmierten Datenzustand ist, in einer Reihenfolge, die bei einer ersten Speicherzelle des ersten Satzes von Speicherzellen, die am nächsten zu dem zweiten Satz von Speicherzellen ist, beginnt, und mit einer zweiten Speicherzelle des ersten Satzes von Speicherzellen, die am nächsten zu der ersten Steuerleitung ist, endet, wobei der Steuerschaltkreis konfiguriert ist, um einen programmierten Datenzustand der ersten Speicherzelle zu verifizieren, während jede des zweiten Satzes von Speicherzellen in einem gelöschten Datenzustand ist.
  2. Vorrichtung nach Anspruch 1, wobei: die erste Steuerleitung eine Source-Leitung aufweist; die zweite Steuerleitung eine Bitleitung aufweist; und der Steuerschaltkreis konfiguriert ist, um zu verifizieren, dass jede Speicherzelle des ersten Satzes von Speicherzellen in einem endgültigen programmierten Datenzustand ist, in einer sequentiellen Reihenfolge, die bei einer ersten Speicherzelle des ersten Satzes von Speicherzellen, die am nächsten zu dem zweiten Satz von Speicherzellen ist, beginnt, und mit einer zweiten Speicherzelle des ersten Satzes von Speicherzellen, die am nächsten zu der Source-Leitung ist, endet.
  3. Vorrichtung nach Anspruch 2, wobei: der Steuerschaltkreis konfiguriert ist, um eine Bitleitungsspannung auf die Bitleitung während der Verifikation des programmierten Datenzustands der ersten Speicherzelle anzuwenden, und einen Kanal der NAND-Kette, der dem ersten Satz von Speicherzellen entspricht, auf eine bestimmte Spannung größer als die Bitleitungsspannung einzustellen, nachfolgend zur Verifikation des programmierten Datenzustands der ersten Speicherzelle.
  4. Vorrichtung nach einem der Ansprüche 1-3, wobei: der Steuerschaltkreis konfiguriert ist, um zumindest eine des zweiten Satzes von Speicherzellen in einen nichtleitenden Zustand einzustellen, während jede des ersten Satzes von Speicherzellen in einem leitenden Zustand bleibt nachfolgend zur Verifikation des programmierten Datenzustands der ersten Speicherzelle.
  5. Vorrichtung nach einem der Ansprüche 1-3, wobei: der Steuerschaltkreis konfiguriert ist, um zumindest eine des ersten Satzes von Speicherzellen in einen nichtleitenden Zustand einzustellen, während jede des zweiten Satzes von Speicherzellen in einem leitenden Zustand bleibt nachfolgend zur Verifikation des programmierten Datenzustands der ersten Speicherzelle.
  6. Vorrichtung nach einem der Ansprüche 1-5, wobei: der Steuerschaltkreis konfiguriert ist, um einen oder mehrere Programmierpulse auf die erste Speicherzelle anzuwenden vor der Verifikation des programmierten Datenzustands der ersten Speicherzelle.
  7. Vorrichtung nach einem der Ansprüche 1-6, wobei: die NAND-Kette eine vertikale NAND-Kette aufweist.
  8. Verfahren, das Folgendes umfasst: Programmieren (904) einer NAND-Kette, die einen ersten Satz von Speicherzellen und einen zweiten Satz von Speicherzellen aufweist, wobei der erste Satz von Speicherzellen zwischen einer ersten Steuerleitung und dem zweiten Satz von Speicherzellen angeordnet ist, wobei der zweite Satz von Speicherzellen zwischen dem ersten Satz von Speicherzellen und einer zweiten Steuerleitung angeordnet ist; und Verifizieren (906), dass jede Speicherzelle des ersten Satzes von Speicherzellen in einem endgültigen programmierten Datenzustand ist, in einer Reihenfolge, die bei einer ersten Speicherzelle des ersten Satzes von Speicherzellen, die am nächsten zu dem zweiten Satz von Speicherzellen ist, beginnt und mit einer zweiten Speicherzelle des ersten Satzes von Speicherzellen, die am nächsten zu der ersten Steuerleitung ist, endet, während jede des zweiten Satzes von Speicherzellen in einem gelöschten Datenzustand ist.
  9. Verfahren nach Anspruch 8, wobei: Die erste Steuerleitung eine Source-Leitung aufweist.
  10. Verfahren nach einem der Ansprüche 8-9, wobei: die zweite Steuerleitung eine Bitleitung aufweist.
  11. Verfahren nach einem der Ansprüche 8-10, wobei: das Verifizieren das Verifizieren umfasst, dass jede Speicherzelle des ersten Satzes von Speicherzellen in dem endgültigen programmierten Datenzustand ist, in einer sequentiellen Reihenfolge, die bei der ersten Speicherzelle des ersten Satzes von Speicherzellen, die am nächsten zu dem zweiten Satz von Speicherzellen ist, beginnt und mit der zweiten Speicherzelle des ersten Satzes von Speicherzellen, die am nächsten zu der ersten Steuerleitung ist, endet.
  12. Verfahren nach Anspruch 10, das ferner Folgendes umfasst: Anwenden einer Bitleitungsspannung auf die Bitleitung während der Verifikation des programmierten Datenzustands der ersten Speicherzelle und Einstellen eines Kanals der NAND-Kette, der dem ersten Satz von Speicherzellen entspricht, auf eine bestimmte Spannung, die größer als die Bitleitungsspannung ist, nachfolgend zur Verifikation des programmierten Datenzustands der ersten Speicherzelle.
  13. Verfahren nach Anspruch 8, das ferner Folgendes umfasst: Einstellen zumindest einer des zweiten Satzes von Speicherzellen in einen nichtleitenden Zustand, während jede des ersten Satzes von Speicherzellen in einem leitenden Zustand bleibt, nachfolgend zur Verifikation des programmierten Datenzustands der ersten Speicherzelle.
  14. Verfahren nach Anspruch 8, das ferner Folgendes umfasst: Einstellen zumindest einer des ersten Satzes von Speicherzellen in einen nichtleitenden Zustand, während jede des zweiten Satzes von Speicherzellen in einem leitenden Zustand bleibt, nachfolgend zur Verifikation des programmierten Datenzustands der ersten Speicherzelle.
  15. Verfahren nach Anspruch 8, wobei: die NAND-Kette eine vertikale NAND-Kette aufweist.
DE112016003636.1T 2015-12-22 2016-12-21 Unter-Block-Modus für nichtflüchtigen Speicher Pending DE112016003636T5 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562271155P 2015-12-22 2015-12-22
US62/271,155 2015-12-22
US15/385,454 2016-12-20
US15/385,454 US10157680B2 (en) 2015-12-22 2016-12-20 Sub-block mode for non-volatile memory
PCT/US2016/068128 WO2017112817A1 (en) 2015-12-22 2016-12-21 Sub-block mode for non-volatile memory

Publications (1)

Publication Number Publication Date
DE112016003636T5 true DE112016003636T5 (de) 2019-03-28

Family

ID=59066593

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112016003636.1T Pending DE112016003636T5 (de) 2015-12-22 2016-12-21 Unter-Block-Modus für nichtflüchtigen Speicher

Country Status (5)

Country Link
US (1) US10157680B2 (de)
KR (1) KR102095137B1 (de)
CN (1) CN108292519B (de)
DE (1) DE112016003636T5 (de)
WO (1) WO2017112817A1 (de)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102565888B1 (ko) * 2016-09-12 2023-08-11 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그것의 동작 방법
KR102289598B1 (ko) * 2017-06-26 2021-08-18 삼성전자주식회사 불휘발성 메모리 장치 및 그것을 포함하는 메모리 시스템 그리고 그것의 프로그램 방법
US11232841B2 (en) * 2017-09-05 2022-01-25 Samsung Electronics Co., Ltd. Methods of operating memory devices based on sub-block positions and related memory system
US10276248B1 (en) * 2017-12-20 2019-04-30 Sandisk Technologies Llc Early ramp down of dummy word line voltage during read to suppress select gate transistor downshift
JP2019160380A (ja) 2018-03-16 2019-09-19 東芝メモリ株式会社 半導体記憶装置
US10468111B1 (en) 2018-04-30 2019-11-05 Sandisk Technologies Llc Asymmetric voltage ramp rate control
US10839922B2 (en) 2018-05-26 2020-11-17 Sandisk Technologies Llc Memory disturb detection
US10643721B2 (en) 2018-06-21 2020-05-05 Sandisk Technologies Llc Interleaved program and verify in non-volatile memory
US10438671B1 (en) * 2018-06-22 2019-10-08 Sandisk Technologies Llc Reducing program disturb by modifying word line voltages at interface in two-tier stack during programming
US11037631B2 (en) * 2018-07-06 2021-06-15 Sandisk Technologies Llc Column erasing in non-volatile memory strings
US10726920B2 (en) 2018-11-26 2020-07-28 Sandisk Technologies Llc Pre-charge voltage for inhibiting unselected NAND memory cell programming
US10691372B1 (en) 2018-12-07 2020-06-23 Western Digital Technologies, Inc. Transistor threshold voltage maintenance in 3D memory
US11257552B2 (en) * 2019-02-21 2022-02-22 Macronix International Co., Ltd. Programming a memory device
US10636498B1 (en) 2019-02-22 2020-04-28 Sandisk Technologies Llc Managing bit-line settling time in non-volatile memory
JP7302008B2 (ja) 2019-05-17 2023-07-03 長江存儲科技有限責任公司 スタティックランダムアクセスメモリを有する3次元メモリデバイスのデータバッファリング動作
CN111402942B (zh) * 2019-08-08 2021-03-19 长江存储科技有限责任公司 非易失性存储器及其制造方法
KR20210025249A (ko) * 2019-08-27 2021-03-09 삼성전자주식회사 메모리 시스템 및 그 동작 방법
JP2021044032A (ja) * 2019-09-06 2021-03-18 キオクシア株式会社 半導体記憶装置
US11287989B2 (en) 2020-03-24 2022-03-29 Western Digital Technologies, Inc. Dynamic allocation of sub blocks
US11189351B2 (en) * 2020-03-27 2021-11-30 Sandisk Technologies Llc Peak and average current reduction for sub block memory operation
US11074975B1 (en) * 2020-04-07 2021-07-27 Macronix International Co., Ltd. Non-volatile register and implementation of non-volatile register
US11587619B2 (en) 2021-06-28 2023-02-21 Sandisk Technologies Llc Block configuration for memory device with separate sub-blocks
CN113488469B (zh) * 2021-07-08 2023-10-17 长鑫存储技术有限公司 半导体存储装置及其制作方法
US11798625B2 (en) 2021-09-08 2023-10-24 Sandisk Technologies Llc Program dependent biasing of unselected sub-blocks
US11894064B2 (en) 2022-01-25 2024-02-06 Sandisk Technologies Llc Sub-block mode for non-volatile memory
US11990185B2 (en) 2022-08-15 2024-05-21 Sandisk Technologies Llc Dynamic word line reconfiguration for NAND structure
US11972820B2 (en) 2022-08-30 2024-04-30 Sandisk Technologies Llc Non-volatile memory with tier-wise ramp down after program-verify

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6034897A (en) * 1999-04-01 2000-03-07 Lexar Media, Inc. Space management for managing high capacity nonvolatile memory
US20050128807A1 (en) * 2003-12-05 2005-06-16 En-Hsing Chen Nand memory array incorporating multiple series selection devices and method for operation of same
KR100687424B1 (ko) * 2005-08-29 2007-02-26 주식회사 하이닉스반도체 비휘발성 메모리 장치
US7170788B1 (en) 2005-09-09 2007-01-30 Sandisk Corporation Last-first mode and apparatus for programming of non-volatile memory with reduced program disturb
JP4751163B2 (ja) * 2005-09-29 2011-08-17 株式会社東芝 メモリシステム
KR101402230B1 (ko) * 2008-04-18 2014-06-03 삼성전자주식회사 더미 셀을 포함하는 불휘발성 메모리 장치 및 그것의프로그램 방법
US7848144B2 (en) * 2008-06-16 2010-12-07 Sandisk Corporation Reverse order page writing in flash memories
KR20110120467A (ko) * 2010-04-29 2011-11-04 주식회사 하이닉스반도체 반도체 메모리 장치 및 이의 동작방법
KR20120107336A (ko) * 2011-03-21 2012-10-02 삼성전자주식회사 메모리 시스템 및 그것의 어드레싱 방법
US8897070B2 (en) 2011-11-02 2014-11-25 Sandisk Technologies Inc. Selective word line erase in 3D non-volatile memory
US8488382B1 (en) * 2011-12-21 2013-07-16 Sandisk Technologies Inc. Erase inhibit for 3D non-volatile memory
KR101916718B1 (ko) * 2012-02-28 2018-11-09 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 메모리 관리 방법
KR20140020628A (ko) * 2012-08-10 2014-02-19 에스케이하이닉스 주식회사 반도체 메모리 장치
KR101988434B1 (ko) 2012-08-31 2019-06-12 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 서브-블록 관리 방법
US9029822B2 (en) 2012-11-17 2015-05-12 Avalanche Technology, Inc. High density resistive memory having a vertical dual channel transistor
JP5781109B2 (ja) 2013-03-01 2015-09-16 株式会社東芝 不揮発性半導体記憶装置
US8923054B1 (en) 2013-06-14 2014-12-30 Sandisk Technologies Inc. Pseudo block operation mode in 3D NAND
KR20150002000A (ko) * 2013-06-28 2015-01-07 에스케이하이닉스 주식회사 반도체 장치 및 이의 동작 방법
TWI573148B (zh) * 2013-08-02 2017-03-01 東芝股份有限公司 A controller, a memory system, and a memory device
US9036428B1 (en) 2014-06-13 2015-05-19 Sandisk Technologies Inc. Partial block erase for a three dimensional (3D) memory
US9361991B1 (en) * 2014-12-23 2016-06-07 Sandisk Technologies Inc. Efficient scanning of nonvolatile memory blocks
KR20160095448A (ko) * 2015-02-03 2016-08-11 에스케이하이닉스 주식회사 반도체 장치 및 이의 동작 방법
US9412463B1 (en) 2015-06-02 2016-08-09 Sandisk Technologies Llc Reducing hot electron injection type of read disturb in 3D non-volatile memory for edge word lines

Also Published As

Publication number Publication date
CN108292519A (zh) 2018-07-17
KR102095137B1 (ko) 2020-03-30
KR20180048709A (ko) 2018-05-10
US20170178736A1 (en) 2017-06-22
CN108292519B (zh) 2021-10-22
WO2017112817A1 (en) 2017-06-29
US10157680B2 (en) 2018-12-18

Similar Documents

Publication Publication Date Title
DE112016003636T5 (de) Unter-Block-Modus für nichtflüchtigen Speicher
DE112017004208B4 (de) 3d-nand mit teilblocklöschen
CN111630599B (zh) 在第一编程遍次中省略验证测试的用于存储器设备的多遍编程过程
DE112015003761T5 (de) Teilblocklöschung zur datenaktualisierung
DE112017001761B4 (de) NAND-Struktur mit Stufenauswahl-Gate-Transistoren
DE112015003834B4 (de) Abtasten mehrerer referenzpegel in nichtflüchtigen speicherelementen
DE112019000164T5 (de) Speichervorrichtung mit verbundenen wortleitungen zur schnellen programmierung
US9721672B1 (en) Multi-die programming with die-jumping induced periodic delays
WO2016081064A1 (en) Nand boosting using dynamic ramping of word line voltages
CN108428466B (zh) 用于抑制第一读取问题的字线的顺序取消选择
DE102018114250A1 (de) Reduzieren eines heißen Elektroneninjektionstypen von Lesestörungen in einer 3D-Speichervorrichtung während Signal-schaltenden Störsignalen
WO2016089467A1 (en) Operation modes for an inverted nand architecture
US8804433B2 (en) Semiconductor memory device and operating method thereof
DE102018105685A1 (de) Multi-Zustands-Programm, das gesteuertes schwaches Boosten für einen nichtflüchtigen Speicher verwendet
JP2013532881A (ja) 不揮発性メモリにおける自然閾値電圧分布の圧縮
DE102018123918A1 (de) Zustandsabhängige Abtastschaltungen und Vorladevorgänge für Speichervorrichtungen
US11309030B2 (en) Word line discharge skip for faster read time
DE112019000157T5 (de) Speichervorrichtung mit von nand-ketten getrennten bitleitungen zur schnellen programmierung
DE102018105623A1 (de) Zustandsabhängige Abtastschaltungen und Abtastoperationen für Speichervorrichtungen
CN113196401B (zh) 对由于块氧化物减薄引起的编程速度变化进行补偿的存储器设备
DE112015003651T5 (de) Adaptives selektives bitleitungsvorladen für stromeinsparungen und schnelles programmieren
EP2656349B1 (de) Alternierende bitleitungsvormagnetisierung während der programmierung zur reduzierung von channel-to-floating-gate-kopplung n einem speicher
DE102020105991A1 (de) SUBBLOCK-GRÖßENREDUKTION FÜR NICHTFLÜCHTIGE 3D-SPEICHER
KR20130072519A (ko) 반도체 메모리 장치 및 이의 동작 방법
DE112019000159T5 (de) Ramp-down-abtastung zwischen programmspannung und prüfspannung in einer speichervorrichtung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: DEHNSGERMANY PARTNERSCHAFT VON PATENTANWAELTEN, DE

Representative=s name: DEHNS GERMANY PARTNERSCHAFT MBB, DE