DE10037037A1 - Erfassungszeit-Steuervorrichtung und -Verfahren - Google Patents

Erfassungszeit-Steuervorrichtung und -Verfahren

Info

Publication number
DE10037037A1
DE10037037A1 DE10037037A DE10037037A DE10037037A1 DE 10037037 A1 DE10037037 A1 DE 10037037A1 DE 10037037 A DE10037037 A DE 10037037A DE 10037037 A DE10037037 A DE 10037037A DE 10037037 A1 DE10037037 A1 DE 10037037A1
Authority
DE
Germany
Prior art keywords
memory cell
content
programming
setting signal
page buffer
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.)
Granted
Application number
DE10037037A
Other languages
English (en)
Other versions
DE10037037B4 (de
Inventor
Masaru Yano
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.)
Socionext Inc
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of DE10037037A1 publication Critical patent/DE10037037A1/de
Application granted granted Critical
Publication of DE10037037B4 publication Critical patent/DE10037037B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • 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/344Arrangements for verifying correct erasure or for detecting overerased cells
    • G11C16/3445Circuits or methods to verify correct erasure 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • 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

Abstract

Eine NAND-Typ-Flash-Speichervorrichtung hat eine Referenzbitleitung und einen Referenzseitenpuffer, um eine Erfassungszeit während Programmierungs- und Löschungsverifikationsoperationen zu steuern. Jede Referenzspeicherzelle in der Referenzbitleitung ist mit einem Referenzbit vorprogrammiert. Ein Einstelliniierungssignal löst eine Detektion und Verriegelung oder Speicherung des Referenzbits durch den Referenzseitenpuffer aus. Wenn das Referenzbit verriegelt oder gespeichert ist, wird eine Ausgabe des Referenzseitenpuffers als ein Einstellsignal verwendet, um die Programmierungs- und Löschungsverifikationsoperationen von entsprechenden Speicherzellen auszulösen.

Description

HINTERGRUND DER ERFINDUNG
Diese Erfindung betrifft allgemein Halbleitervorrich­ tungen und genauer eine Flash-Speichervorrichtung, insbeson­ dere eine Flash-Speichervorrichtung des NAND-Typs mit Sei­ tenpuffern.
Flash-Speichervorrichtungen des NAND-Typs enthalten allgemein eine Speicherzellenanordnung, einen X-Decoder, einen Y-Decoder, eine Hochspannungsschaltung, eine Zustands­ maschinenschaltung, ein Adressenregister, eine Datenregi­ ster- und Erfassungsverstärkerschaltung und ein(en) Einga­ be/Ausgabe-Register und -Puffer.
In der Speicherzellenanordnung einer typischen Flash- Speichervorrichtung des NAND-Typs sind Speicherzellen in Speicherzellenfolgen organisiert. Jede Speicherzellenfolge enthält eine Anzahl von Speicherzellen, die in Serie gekop­ pelt sind. Üblicherweise enthält jede Speicherzellenfolge eine gleiche Anzahl von Speicherzellen für jegliche gegebene Speicherzellenanordnung. Somit dienen die Speicherzellenfolgen als Basisaufbaublöcke der Speicherzellenanordnungen bei einer typischen Flash-Speichervorrichtung des NAND-Typs.
Eine Anzahl von Speicherzellenfolgen ist in Serie ge­ koppelt, um eine Spalte zu bilden. In jeder Spalte sind die Speicherzellen miteinander an einer Bitleitung gekoppelt. Jede Bitleitung ist an die Datenregister- und Erfassungsver­ stärkerschaltung gekoppelt. Die Datenregister- und Erfas­ sungsverstärkerschaltung enthält eine Anzahl von Seitenpuf­ fern. Ein Seitenpuffer ist an jede Bitleitung gekoppelt und wird während Lese-, Programmier- und Verifikationsoperatio­ nen der Speicherzellen verwendet, die an die Bitleitung ge­ koppelt sind.
Die Speicherzellenanordnung ist auch in einer Anzahl von Reihen organisiert, die auch Seiten genannt werden. Jede Seite von Speicherzellen enthält eine gleiche Anzahl von Speicherzellen. Die Speicherzellen auf jeder Seite sind an einer Wortleitung miteinander gekoppelt. Eine Anzahl von benachbarten Seiten ist in einem Speicherzellenblock organi­ siert. Jeder Speicherzellenblock enthält so viele Seiten, wie es Speicherzellen in der Speicherzellenfolge gibt. Somit enthält jeder Speicherzellenblock eine Anzahl von benachbar­ ten Speicherzellenfolgen.
An einem Kern jeder Speicherzelle ist ein Floating- Gate, das mit Elektronen negativ geladen werden kann. Ein Ladezustand des Floating-Gates gibt an, ob die entsprechende Speicherzelle ein logisches Hoch oder ein logisches Niedrig repräsentiert. Zum Beispiel repräsentiert die Speicherzelle, wenn das Floating-Gate in einem negativ geladenen Zustand ist, ein logisches Niedrig. Wenn das Floating-Gate in einem ungeladenen Zustand ist, repräsentiert die Speicherzelle ein logisches Hoch. Während einer Programmieroperation werden Elektronen in die Floating-Gates von Speicherzellen inji­ ziert, die gegenwärtig in einem ungeladenen Zustand sind, von denen aber gewünscht ist, dass sie in einem negativ ge­ ladenen Zustand sind. Während einer Löschoperation werden Elektronen von den Floating-Gates von Speicherzellen ent­ fernt, die in einem negativ geladenen Zustand sind. Somit repräsentiert eine programmierte Speicherzelle ein logisches Niedrig, während eine gelöschte Speicherzelle ein logisches Hoch repräsentiert. Allgemein werden Speicherzellen in einem Speicherzellenblock während jeder Löschoperation gleichzei­ tig gelöscht, während Speicherzellen in jeder Seite während jeder Programmieroperation gleichzeitig programmiert werden.
Nachdem die Speicherzellen programmiert oder gelöscht wurden, werden sie verifiziert, um sicherzustellen, dass ein Programmieren bzw. Löschen richtig ausgeführt wurde. Anders ausgedrückt werden, im Fall einer Programmieroperation, die Speicherzellen während einer Programmierungsverifikations­ operation geprüft, um zu bestimmen, ob eine adäquate Anzahl von Elektronen in die Floating-Gates der programmierten Speicherzellen injiziert wurde. Im Fall der Löschoperation werden die Speicherzellen während einer Löschungsverifikati­ onsoperation geprüft, um zu bestimmen, ob Elektronen erfolg­ reich von den Floating-Gates der gelöschten Speicherzellen entfernt wurden.
Während der Programmierungs- und Löschungsverifikations­ operationen werden die Seitenpuffer in der Datenregister- und Erfassungsverstärkerschaltung verwendet, um die Inhalte von Speicherzellen zu lesen und zu speichern. Da ein Seitenpuffer mit jeder Bitleitung verbunden ist, wird während ei­ ner Programmierungsverifikationsoperation eine gesamte Seite auf einmal verifiziert. Eine Verifikation wird für einen gesamten gelöschten Speicherzellenblock während einer Lö­ schungsverifikationsoperation ausgeführt, da Speicherzellen eines Speicherzellenblocks, der mehrere Seiten enthält, gleichzeitig gelöscht werden.
Während der Programmierungsverifikationsoperation wird eine Spannung an einem Schwellenwertspannungsknoten in jedem Seitenpuffer geprüft. Die Spannung an dem Schwellenwertspan­ nungsknoten variiert in Abhängigkeit von dem Ladezustand der Speicherzelle, deren Inhalt verifiziert wird. Wenn die Spei­ cherzelle richtig programmiert wurde, d. h., wenn das Floa­ ting-Gate der Speicherzelle richtig negativ geladen wurde, wird eine Schwellenwertspannung an dem Schwellenwertspan­ nungsknoten erreicht. Wenn die Speicherzelle nicht richtig programmiert wurde, wird die Schwellenwertspannung nicht erreicht.
Auf Grund des Widerstandes der Speicherzellen, Bitlei­ tungen und Seitenpuffer wird die Schwellenwertspannung nicht sofort erreicht, selbst wenn die Speicherzelle richtig pro­ grammiert wurde. Somit kann, wenn eine Programmierungsveri­ fikationsoperation zu bald auf eine Programmieroperation folgend ausgeführt wird, eine falsche Schlussfolgerung, dass die Speicherzelle nicht richtig programmiert wurde, erhalten werden. Somit wird ein Einstellsignal, das nach einer vor­ programmierten Verzögerung aktiviert wird, üblicherweise verwendet, um die Programmierungsverifikationsoperation zu initiieren. Das Einstellsignal mit der programmierten Verzögerung wird typischerweise durch eine Zeitsteuersequenz in der Zustandsmaschinenschaltung erzeugt.
Das Verwenden eines Einstellsignals mit einer vorpro­ grammierten Verzögerung, um die Programmierungsverifikation­ soperation zu initiieren, wirft einige Schwierigkeiten auf. Da Speicherzellen in verschiedenen Seiten verschiedene Wi­ derstände vom Seitenpuffer zur Speicherzelle und von der Speicherzelle zu einer Vss-Spannung haben, kann eine Verwen­ dung einer einheitlichen Verzögerung, die für alle Speicher­ zellen vorprogrammiert wurde, Probleme aufwerfen. Ferner hängt eine Zeit für den Schwellenwertknoten, um die Schwel­ lenwertspannung zu erreichen, auch von der Temperatur ab, und es ist nicht immer möglich, eine vorprogrammierte Dauer der vorprogrammierten Verzögerung richtig abzuschätzen.
Wenn die vorprogrammierte Verzögerung zu lang ist, wird die Geschwindigkeit der Flash-Speichervorrichtung wegen ei­ ner unnötigen zusätzlich Warteperiode ungünstig beeinflusst. Wenn die vorprogrammierte Verzögerung zu kurz ist, kann die Programmierungsverifikationsoperation versucht werden, bevor die Schwellenwertspannung erreicht wird, selbst wenn die Speicherzelle, die verifiziert wird, richtig programmiert wurde. Anders ausgedrückt kann, wenn die Programmierungsve­ rifikationsoperation zu früh ausgeführt wird, die Verifika­ tion fälschlicherweise versagen. Wenn sie zu spät ausgeführt wird, kann eine unnötige zusätzliche Verzögerung die Ge­ schwindigkeit der Flash-Speichervorrichtung abbremsen.
ÜBERBLICK ÜBER DIE ERFINDUNG
Entsprechend ist es ein allgemeines Ziel der vorliegen­ den Erfindung, die Sicherheit der Verifikation einer Pro­ grammierung einer Halbleitervorrichtung ohne Geschwindig­ keitseinbußen zu erhöhen.
Dieses Ziel wird jeweils durch die Gegenstände der selbständigen Ansprüche erreicht.
Zur Erreichung dieses Ziels werden durch die vorlie­ gende Erfindung eine Erfassungszeit-Steuervorrichtung und ein Erfassungszeit-Steuerverfahren geschaffen, die eine Mes­ sung einer vorprogrammierten Referenzspeicherzelle verwen­ den, um die Zeit sicherzustellen, die ein Schwellenwertspan­ nungsknoten benötigt, eine Schwellenwertspannung zu errei­ chen.
Eine Ausführung der vorliegenden Erfindung ist ein Ver­ fahren, eine Programmierungsverifikationsoperation auszufüh­ ren. Eine Referenzspeicherzelle und eine Speicherzelle wer­ den programmiert. Ein Einstellsignal wird unter Verwendung eines Inhalts der Referenzspeicherzelle erzeugt. Die Pro­ grammierungsverifikationsoperation für die Speicherzelle wird unter Verwendung des Einstellwertes initiiert.
Eine andere Ausführung der vorliegenden Erfindung ist ein Verfahren, eine Programmierungsverifikationsoperation auszuführen, wobei die Referenzspeicherzelle an einen Refe­ renzseitenpuffer gekoppelt ist und die Speicherzelle an ei­ nen Datenseitenpuffer gekoppelt ist. Der Referenzseitenpuf­ fer wird verwendet, um einen Inhalt der Referenzspeicherzel­ le zu lesen und zu speichern, und der Datenseitenpuffer wird verwendet, um den Inhalt der Speicherzelle zu lesen und zu speichern.
Noch eine andere Ausführung der vorliegenden Erfindung ist ein Verfahren, eine Programmierungsverifikationsoperati­ on auszuführen, wenn eine erste Programmierungsverifikation­ soperation versagt. Die Speicherzelle wird neu programmiert und das Einstellsignal wird neu erzeugt mit dem Inhalt der Referenzspeicherzelle. Das Einstellsignal wird verwendet, um eine weitere Programmierungsverifikationsoperation der Spei­ cherzelle zu initiieren.
Noch eine weitere Ausführung der vorliegenden Erfindung ist ein Verfahren, eine Löschungsverifikationsoperation aus­ zuführen. Eine Referenzspeicherzelle wird programmiert und eine Speicherzelle wird gelöscht. Ein Einstellsignal wird erzeugt unter Verwendung eines Inhalts der Referenzspeicher­ zelle. Die Löschungsverifikationsoperation für die Speicher­ zelle wird initiiert unter Verwendung des Einstellsignals.
Noch eine andere Ausführung der vorliegenden Erfindung ist ein Verfahren, eine Löschungsverifikationsoperation aus­ zuführen, wenn eine erste Löschungsverifikationsoperation versagt. Die Speicherzelle wird neu gelöscht und das Ein­ stellsignal wird neu erzeugt mit dem Inhalt der Referenz­ speicherzelle. Das Einstellsignal wird verwendet, um eine weitere Löschungsverifikationsoperation der Speicherzelle zu initiieren.
Noch eine weitere Ausführung der vorliegenden Erfindung ist ein Verfahren, eine Programmierungsverifikationsoperation auszuführen, wobei eine Mehrzahl von Speicherzellen pro­ grammiert wird.
Noch eine andere Ausführung der vorliegenden Erfindung ist ein Verfahren, eine Löschungsverifikationsoperation aus­ zuführen, wobei eine Mehrzahl von Speicherzellen gelöscht wird.
Noch eine weitere Ausführung der vorliegenden Erfindung ist ein Verfahren, einen Inhalt einer Speicherzelle zu veri­ fizieren, enthaltend das Programmieren einer Referenzspei­ cherzelle, Erfassen eines Inhalts der Referenzspeicherzelle und Verifizieren des Inhalts der Speicherzelle, wenn der Inhalt der Referenzspeicherzelle erfasst wurde.
Noch eine andere Ausführung der vorliegenden Erfindung ist ein Verfahren, einem Seitenpuffer, der mit einer Spei­ cherzelle verbunden ist, ein Einstellsignal bereitzustellen. Eine Referenzspeicherzelle, die an einen Referenzseitenpuf­ fer gekoppelt ist, wird programmiert. Eine Spannung eines Knotens indem Referenzseitenpuffer wird basierend auf dem Inhalt der Referenzspeicherzelle eingestellt. Die Spannung an dem Knoten wird dem Seitenpuffer als das Einstellsignal bereitgestellt.
Noch eine weitere Ausführung der vorliegenden Erfindung ist eine Einstellzeit-Steuerschaltung, enthaltend einen Re­ ferenzseitenpuffer und eine Mehrzahl von Datenseitenpuffern. Der Referenzseitenpuffer erhält ein Einstellinitiierungs­ signal und erzeugt ein Einstellsignal. Die Mehrzahl von Da­ tenseitenpuffern erhält das Einstellsignal und Speicherin­ halte einer Mehrzahl von Speicherzellen. Jeder der Mehrzahl von Datenseitenpuffern speichert einen Inhalt einer zugehö­ rigen der Mehrzahl von Speicherzellen.
Noch eine andere Ausführung der vorliegenden Erfindung ist eine NAND-Typ-Flash-Speichervorrichtung, die eine Spei­ cherzellenanordnung mit einer Mehrzahl von Reihen und einer Mehrzahl von Spalten von Speicherzellen sowie die nachfol­ genden Komponenten enthält. Ein X-Decoder wählt die Mehrzahl von Reihen von Speicherzellen, und ein Y-Decoder wählt die Mehrzahl von Spalten von Speicherzellen. Eine Datenregister- und Erfassungsverstärkerschaltung liest und programmiert die Mehrzahl von Reihen und die Mehrzahl von Spalten der Spei­ cherzellen. Ein Eingabe/Ausgabe- oder I/O-Register und -Puffer ist an die Datenregister- und Erfassungsverstärker­ schaltung gekoppelt. Der I/O-Register und -Puffer stellt eine externe Schnittstelle der NAND-Typ-Flash-Speichervor­ richtung bereit. Eine Hochspannungsschaltung stellt dem X- Decoder Programmier-, Lese- und Löschspannungen bereit. Eine Zustandsmaschinenschaltung stellt der Datenregister- und Erfassungsverstärkerschaltung Steuersignale bereit. Ein Adressenregister stellt dem X-Decoder und dem Y-Decoder eine Adresse bereit, die decodiert werden soll.
Weitere vorteilhafte und/oder bevorzugte Ausgestaltun­ gen der Erfindung ergeben sich aus den abhängigen Ansprüchen und deren Kombinationen sowie den übrigen Unterlagen.
Viele der zugehörigen Merkmale dieser Erfindung werden leichter gewürdigt werden, wenn die letztere durch Bezugnah­ me auf die nachfolgende genaue Beschreibung besser verstan­ den wird, die im Zusammenhang mit den begleitenden Zeichnun­ gen heranzuziehen ist.
BESCHREIBUNG DER ZEICHNUNGEN
Fig. 1 ist ein Blockdiagramm einer Flash-Speichervor­ richtung, die die Erfassungszeit-Steuervorrichtung und das Erfassungszeit-Steuerverfahren der vorliegenden Erfindung verwendet,
Fig. 2 ist ein Blockdiagramm einer Speicherzellenanord­ nung und einer Datenregister- und Erfassungsverstärkerschal­ tung,
Fig. 3 ist ein Blockdiagramm einer Schnittstelle zwi­ schen einem Referenzseitenpuffer und einem i-ten Seitenpuf­ fer,
Fig. 4 ist ein Seitenpuffer, der mit einer i-ten Bit­ leitung der Datenregister- und Erfassungsverstärkerschaltung verbunden ist,
Fig. 5 ist ein Seitenpuffer, der mit einer Referenzbit­ leitung der Datenregister- und Erfassungsverstärkerschaltung verbunden ist,
Fig. 6 ist ein Zeitsteuerdiagramm, das Spannungspegel, die von verschiedenen Signalen gezeichnet sind, bezüglich einander während einer Programmierungsverifikationsoperation zeigt, und
Fig. 7 ist ein Flussdiagramm eines Prozesses, eine Pro­ grammierungsverifikationsoperation auszuführen.
GENAUE BESCHREIBUNG DER ERFINDUNG
Die Fig. 1 ist ein Blockdiagramm einer Flash-Speicher­ vorrichtung, die eine Erfassungszeit-Steuervorrichtung und ein Erfassungszeit-Steuerverfahren der vorliegenden Erfin­ dung verwendet. Eine Speicherzellenanordnung 1 besteht aus Reihen und Spalten von Speicherzellen. Die Reihen von Spei­ cherzellen werden allgemein als Wortleitungen bezeichnet, und die Spalten von Speicherzellen werden allgemein als Bit­ leitungen bezeichnet. Die Speicherzellen in der Speicherzel­ lenanordnung sind mit ersten und zweiten X-Decodern 11 und 13 und ersten und zweiten Y-Decodern 7 und 9 adressierbar.
Die Speicherzellenanordnung enthält eine Mehrzahl von Speicherzellenblöcken, von denen jeder eine Anzahl von Rei­ hen von Speicherzellen enthält. Der erste X-Decoder wird verwendet, um eine erste Gruppe von Speicherzellenblöcken auszuwählen, während der zweite X-Decoder verwendet wird, um eine zweite Gruppe von Speicherzellenblöcken auszuwählen. Zum Beispiel wird der erste X-Decoder verwendet, um gerad­ zahlig nummerierte Speicherzellenblöcke auszuwählen, d. h. Speicherzellenblöcke 0, 2, 4, etc. Der zweite X-Decoder wird verwendet, um ungeradzahlig nummerierte Speicherzellenblöcke auszuwählen, d. h. Speicherzellenblöcke 1, 3, 5, etc.
Ähnlich wird der erste Y-Decoder verwendet, um eine er­ ste Gruppe von Spalten von Speicherzellen auszuwählen, wäh­ rend der zweite Y-Decoder verwendet wird, um eine zweite Gruppe von Spalten von Speicherzellen auszuwählen. Zum Bei­ spiel wird, wenn n die Anzahl von Spalten von Speicherzellen in einer Speicherzellenanordnung ist, der erste Y-Decoder verwendet, um die erste Gruppe von n/2 Spalten von Speicher­ zellen auszuwählen, während der zweite Y-Decoder verwendet wird, um die zweite Gruppe von n/2 Spalten von Speicherzel­ len auszuwählen.
Die ersten und zweiten X-Decoder und die ersten und zweiten Y-Decoder erhalten Speicheradressen von einem Adres­ senregister 21. Die Speicheradressen sind durch die ersten und zweiten X-Decoder decodiert, um Reihen von Speicherzel­ len für Lese-, Programmier-, Lösch- und Verifikationsopera­ tionen auszuwählen. Die Speicheradressen werden auch von den ersten und zweiten Y-Decoder decodiert, um Spalten von Spei­ cherzellen für Lese-, Programmier-, Lösch- und Verifikations­ operationen auszuwählen.
Eine Hochspannungsschaltung 17 stellt den ersten und zweiten X-Decodern 11 und 13 Spannungen bereit, um sie an ausgewählte Speicherzellen anzulegen. Verschiedene Span­ nungspegel werden den Speicherzellen für verschiedene Opera­ tionen bereitgestellt. Die Spannungspegel, die den Speicher­ zellen während verschiedener Operationen bereitgestellt wer­ den sollten, sind in der Technik gut bekannt.
Ähnlich zu den ersten und zweiten Y-Decodern 7 und 9 sind erste und zweite Datenregister- und Erfassungsverstär­ kerschaltungen 3, 5 entsprechend mit ersten und zweiten Gruppen von Spalten von Speicherzellen in Kontakt. Während einer Leseoperation lesen und speichern die ersten und zwei­ ten Datenregister- und Erfassungsverstärkerschaltungen Daten von ausgewählten Speicherzellen. Die Daten werden von den ersten und zweiten Datenregister- und Erfassungsverstärker­ schaltungen zu einem I/O-Register und -Puffer 15 übertragen, um aus der Flash-Speichervorrichtung heraus übertragen zu werden. Während einer Programmieroperation erhalten die er­ sten und zweiten Datenregister- und Erfassungsverstärker­ schaltungen Daten, die zu ausgewählten Speicherzellen ge­ schrieben werden sollen, von dem I/O-Register und -Puffer 15. Eine Zustandsmaschinenschaltung 19 führt Steuersignale zu den Datenregister- und Erfassungsverstärkerschaltungen 3 und 5 zu. Die Zustandsmaschinenschaltung steuert die Zeitsteuerung von Signalen, die während der Programmierungs­ verifikations- und der Löschungsverifikationsoperationen verwendet werden.
Die Fig. 2 ist ein Blockdiagramm einer Speicherzellen­ anordnung 33, die 4096 Spalten von Speicherzellen hat, und eine Wiedergabe einer Datenregister- und Erfassungsverstär­ kerschaltung 31, die Seitenpuffer enthält. Jede Spalte von Speicherzellen ist mit einer entsprechenden Bitleitung ver­ bunden. Jede Bitleitung ist an einen entsprechenden Seiten­ puffer gekoppelt. Die Speicherzellenanordnung 33 enthält auch eine Spalte von Referenzspeicherzellen. Die Spalte von Referenzspeicherzellen ist mit einer Referenzbitleitung ver­ bunden, welche an einem Referenzseitenpuffer 35d gekoppelt ist. Die Speicherzellenanordnung 33 kann ferner zusätzliche Spalten von Speicherzellen enthalten. Die Datenregister- und Erfassungsverstärkerschaltung 31 kann ferner zusätzliche Seitenpuffer enthalten, die mit den zusätzlichen Spalten von Speicherzellen verbunden sind.
Bei der beschriebenen Ausführung gibt es, wie in der Fig. 1 gezeigt ist, tatsächlich zwei Datenregister- und Er­ fassungsverstärkerschaltungen 3 und 5. Die erste Datenregi­ ster- und Erfassungsverstärkerschaltung 3 enthält Seitenpuffer, die mit der ersten Gruppe von 2048 Spalten von Spei­ cherzellen verbunden sind, und die zweite Datenregister- und Erfassungsverstärkerschaltung 5 enthält Seitenpuffer, die mit der zweiten Gruppe von 2048 Spalten von Speicherzellen verbunden sind. Zur Klarheit der Beschreibung repräsentiert die Datenregister- und Erfassungsverstärkerschaltung 31 eine Kombination von beiden der ersten und zweiten Datenregister- und Erfassungsverstärkerschaltungen 3 und 5. Somit enthält die Datenregister- und Erfassungsverstärkerschaltung 31 der Fig. 2 alle 4096 Seitenpuffer, wobei jeder Seitenpuffer mit einer der 4096 Spalten von Speicherzellen von sowohl der ersten, als auch der zweiten Datenregister- und Erfassungs­ verstärkerschaltung verbunden ist.
Die Speicherzellen in der Speicherzellenanordnung sind in Speicherzellenfolgen 37a-c und 39a-c organisiert. Bei einer Ausführung der vorliegenden Erfindung enthält jede Speicherzellenfolge sechszehn Speicherzellen, einen ersten Auswahl-Gate-Transistor und einen zweiten Auswahl-Gate-Tran­ sistor. In jeder Speicherzellenfolge sind die Speicherzellen und die ersten und zweiten Auswahl-Gate-Transistoren in Rei­ he gekoppelt.
Die ersten und zweiten Auswahl-Gate-Transistoren sind jeweils am Anfang und am Ende jeder Speicherzellenfolge. Der erste Auswahl-Gate-Transistor erhält ein erstes Auswahl- Gate-Signal SG 1, und schaltet sich nach Aufstellung des ersten Auswahl-Gate-Signals SG 1 ein. Wenn der erste Aus­ wahl-Gate-Transistor einer bestimmten Speicherzellenfolge eingeschaltet ist, wird jene spezielle Speicherzellenfolge zur Kommunikation mit dem zugehörigen Seitenpuffer ausge­ wählt.
Der zweite Auswahl-Gate-Transistor erhält ein zweites Auswahl-Gate-Signal SG 2, und schaltet sich nach Aufstellung des zweiten Auswahl-Gate-Signals SG 2 ein. Eine Quelle des zweiten Auswahl-Gate-Transistors ist an eine Vss-Spannung gekoppelt. Somit wird, wenn der zweite Auswahl-Gate-Tran­ sistor einer speziellen Speicherzellenfolge eingeschaltet ist, jene spezielle Speicherzellenfolge mit der Vss-Spannung versorgt.
Wie in der Ausführung von Fig. 2 gezeigt ist, enthält die Speicherzellenanordnung 33 4096 Bitleitungen und eine Referenzbitleitung. Eine Drain jedes der ersten Auswahl- Gate-Transistoren ist an die Bitleitung gekoppelt, die mit der Speicherzellenfolge verbunden ist, die den ersten Aus­ wahl-Gate-Transistor enthält. Die Speicherzellenfolgen 37a-c repräsentieren einen ersten Speicherzellenblock, der aus 4096 benachbarten Seicherzellenfolgen besteht. Da es 1024 Speicherzellenblöcke in der Flash-Speichervorrichtung der vorliegenden Erfindung gibt, repräsentieren die Speicherzel­ lenfolgen 39a-c einen 1024-ten Speicherzellenblock, der aus 4096 benachbarten Speicherzellenfolgen besteht. Somit ist jede der 4096 benachbarten Speicherzellenfolgen in jedem Speicherzellenblock an die zugehörige der 4096 Bitleitungen gekoppelt.
Während Lese- und Programmieroperationen werden 4096 Speicherbits gleichzeitig gelesen oder programmiert. Eine Reihe von Speicherzellen, die mit einer Wortleitung verbun­ den ist, kann gleichzeitig gelesen oder programmiert werden. Die Reihe von Speicherzellen, die mit einer Wortleitung ver­ bunden ist, wird auch eine Seite genannt. Somit gibt es 16 Seiten in jedem Speicherzellenblock, da es 16 Reihen von Speicherzellen gibt. Die ersten und zweiten X-Decoder (ge­ zeigt in der Fig. 1) wählen jeden Speicherzellenblock durch Bereitstellen des Auswahl-Gate-Signals SG 1 und SG 2 aus, die an die ersten bzw. zweiten Auswahl-Gate-Transistoren angelegt werden. Ferner wählen die ersten und zweiten X- Decoder jede Seite in dem ausgewählten Speicherzellenblock durch Bereitstellen geeigneter Spannungen an Wortleitungen 1 bis 16 aus, wobei jede Wortleitung mit einer Seite verbun­ den ist. Der erste X-Decoder wählt geradzahlige Speicherzel­ lenblöcke 0, 2, 4 . . . 1022 aus. Der zweite X-Decoder wählt ungeradzahlige Speicherzellenblöcke 1, 3, 5 . . . 1023 aus.
Die ersten und zweiten Y-Decoder (gezeigt in der Fig. 1) wählen Spalten aus, von welchen jede 1024 Speicherzellen­ folgen enthält, die zusammen an eine Bitleitung gekoppelt sind. Der erste Y-Decoder wählt Bitleitungen 0-255, 512-767, 1024-1279, 1536-1791, 2048-2303, 2560-2815, 3072-3327 und 3584-3839 aus. Der zweite Y-Decoder wählt Bitleitungen 256- 511, 768-1023, 1280-1535, 1792-2047, 2304-2559, 2816-3071, 3328-3583 und 3840-4095 aus.
Die Datenregister- und Erfassungsverstärkerschaltung 31 erhält ein Programmiersignal PGM, ein Bitleitungssteuersi­ gnal BL_CTRL, ein Einstellinitiierungssignal SET_INIT und ein Biassignal BIAS von der Zustandsmaschinenschaltung (ge­ zeigt in der Fig. 1). Diese Steuersignale werden von der Zustandsmaschinenschaltung bereitgestellt und werden von den Seitenpuffern und dem Referenzseitenpuffer während Lese-, Programmier- und Verifikationsoperationen verwendet. Der Referenzseitenpuffer 35d erhält das Einstellinitiierungs­ signal SET_INIT von der Zustandsmaschinenschaltung und stellt ein Einstellsignal an jeden der Seitenpuffer 35a-c bereit.
Die Fig. 3 ist ein Blockdiagramm, das eine Schnittstel­ le zwischen einem i-ten Seitenpuffer 32 und dem Referenzsei­ tenpuffer 34 illustriert. Beide, der i-te Seitenpuffer und der Referenzseitenpuffer, erhalten das Programmiersignal PGM, das Bitleitungssteuersignal BL_CTRL und das Biassignal BIAS. Der Referenzseitenpuffer erhält auch das Einstelli­ nitiierungssignal SET_INIT. Der Referenzseitenpuffer erzeugt ein Einstellsignal SET, das dem i-ten Seitenpuffer bereitge­ stellt wird. Der i-te Seitenpuffer und der Referenzseiten­ puffer sind an eine i-te Bitleitung bzw. die Referenzbitlei­ tung gekoppelt. Der i-te Seitenpuffer dient als eine Schnittstelle zwischen der i-ten Bitleitung und den I/O- Register und -Puffer über die Daten-I/O-Schnittstelle. Ähn­ lich dient der Referenzseitenpuffer als eine Schnittstelle zwischen der Referenzbitleitung und den I/O-Register und -Puffer über die Referenzdaten-I/O-Schnittstelle.
Die Fig. 4 ist ein Seitenpuffer, der mit einer i-ten Bitleitung BL i verbunden ist. Eine Drain eines Biastransi­ stors 41 ist an Vcc gekoppelt. Ein Gate des Biastransistors 41 ist an das Biassignal BIAS gekoppelt. Eine Quelle des Biastransistors ist an die i-te Bitleitung BL i gekoppelt. Entsprechend steuert das Biassignal BIAS eine Größe eines Stroms, der durch die i-te Bitleitung BL i fließt. Wenn das Biassignal BIAS nicht aufgestellt ist, fließt annähernd kein Strom durch die i-te Bitleitung BL i, da der Biastransistor dann ausgeschaltet ist und annähernd kein Strom durch den Biastransistor fließen wird, ungeachtet des Programmiersta­ tus einer ausgewählten Speicherzelle. Bei der beschriebenen Ausführung ist das Biassignal BIAS auf Niedrig eingestellt, wenn es aufgestellt wird, da der Biastransistor 41 ein p-Typ-Transistor ist.
Jede Bitleitung einer NAND-Typ-Flash-Speichervorrich­ tung ist allgemein an einen Bitleitungssteuertransistor ge­ koppelt, der zwischen der Bitleitung und einem zugehörigen Seitenpuffer liegt. Somit wird ein Bitleitungssteuertransi­ stor, der an eine spezielle Bitleitung gekoppelt ist, für die Lese- und Programmieroperationen von Speicherzellen an der speziellen Bitleitung eingeschaltet. Andernfalls ist, wenn der Bitleitungssteuertransistor ausgeschaltet ist, der zugehörige Seitenpuffer allgemein nicht in der Lage, die Leseoperation oder die Programmieroperation auszuführen.
In der Fig. 4 liegt ein Bitleitungssteuertransistor 53 zwischen der i-ten Bitleitung BL i und dem Seitenpuffer, wobei eine Quelle des Bitleitungssteuertransistors 53 an die i-te Bitleitung BL i gekoppelt ist und eine Drain des Bit­ leitungssteuertransistors 53 an die Quelle des Biastransi­ stors 41 gekoppelt ist. Somit steuert der Bitleitungssteuer­ transistor 53, ob es der i-ten Bitleitung BL i gestattet ist, Strom zu leiten. Für Lese- und Programmieroperationen wird das Bitleitungssteuersignal BL_CTRL aufgestellt, um den Bitleitungssteuertransistor 53 einzuschalten.
Die Kopplung der Quelle des Biastransistors 41 und der Drain des Bitleitungssteuertransistors 53 bildet einen Kno­ ten A. Eine Daten-I/O-Leitung ist an den Knoten A gekoppelt über einen Programmiertransistor 43. Genauer ist eine Quelle des Programmiertransistors 43 an die Quelle des Biastransi­ stors 41 am Knoten A gekoppelt, und ist eine Drain des Progammiertransistors 43 an die Daten-I/O-Leitung gekoppelt. Das Programmiersignal PGM wird an einem Gate des Program­ miertransistors 43 bereitgestellt.
Während einer Programmieroperation wird das Program­ miersignal PGM aufgestellt und schaltet den Programmiertran­ sistor 43 ein. Bei der beschriebenen Ausführung geht das Programmiersignal PGM hoch, wenn es aufgestellt wird. Mit geeigneten Spannungen, die an eine ausgewählte Reihe von Speicherzellen, d. h. eine Seite, angelegt werden, werden Daten vom I/O-Register und -Puffer über eine Daten-I/O- Leitung auf die i-te Bitleitung BL i durch den Programmier­ transistor 43 und den Steuertransistor 53 angewandt und zu der ausgewählten Speicherzelle der i-ten Bitleitung BL i auf der ausgewählten Seite geschrieben. Die geeigneten Spannun­ gen, die während Programmieroperationen an die Speicherzel­ len angelegt werden sollten, sind in der Technik gut be­ kannt.
Wenn die Programmieroperation einmal abgeschlossen ist, werden die Daten, die geschrieben wurden, verifiziert, um die Zuverlässigkeit während einer Programmierungsverifikati­ onsoperation zu erhöhen. Während der Programmierungsverifi­ kationsoperation wird das Programmiersignal PGM nicht aufge­ stellt. Bei der beschriebenen Ausführung bleibt das Program­ miersignal PGM auf Niedrig, wenn es nicht aufgestellt ist.
Ein Einstelltransistor 51, ein Schwellenwerttransistor 49 und Inverter 45, 47 werden während der Programmierungsve­ rifikationsoperation und der Löschungsverifikationsoperation verwendet, um zu prüfen, ob das Programmieren bzw. Löschen befriedigend ausgeführt wurde. Eine Quelle des Einstelltransistors 51 ist an eine Vss-Spannung gekoppelt, und ein Gate des Einstelltransistors erhält das Einstellsignal SET. Wenn das Einstellsignal SET aufgestellt ist, wird der Einstell­ transistor 51 eingeschaltet und wird die Vss-Spannung an eine Quelle des Schwellenwerttransistors 49 angelegt, wel­ cher an eine Drain des Einstelltransistors 51 gekoppelt ist. Bei der beschriebenen Ausführung bleibt das Einstellsignal SET auf Hoch, wenn es aufgestellt ist.
Eine Drain des Schwellenwerttransistors 49, welcher ei­ nen Knoten B bildet, ist an einen Eingang es Inverters 47 und einen Ausgang des Inverters 45 gekoppelt. Ein Ausgang des Inverters 47 ist an einen Eingang des Inverters 45 ge­ koppelt. Somit bilden die Inverter 45 und 47 eine Kipp- oder Speicherschaltung (Latch). Vor der Programmierungsverifika­ tionsoperation oder der Löschungsverifikationsoperation wird die Kipp- oder Speicherschaltung (Latch) auf ein logisches Hoch am Knoten B voreingestellt, indem eine Logisch-Hoch- Voreinstellspannung PRESET angelegt wird. Somit hat die Da­ ten-I/O-Leitung eine Ausgabe von logisch Niedrig. Tatsäch­ lich ist die Daten-I/O-Leitung an einen Inverter (nicht ge­ zeigt) gekoppelt, und daher werden die Daten, die von dem I/O-Register und -Puffer erhalten werden, ein logisches Hoch, wenn der Knoten B auf einem logischen Hoch ist.
Durch Bereitstellen des Inverters an der Daten-I/O- Leitung werden nichtinvertierte Daten dem I/O-Register und -Puffer bereitgestellt. Zum Beispiel wird angenommen, dass eine bestimmte Speicherzelle nicht programmiert ist, d. h. die bestimmte Speicherzelle ein logisches Hoch enthält. Wie im einzelnen unten erklärt ist, wird der Knoten B des Sei­ tenpuffers ein logisches Hoch, wenn der Seitenpuffer die bestimmte Speicherzelle liest. Somit wird eine Ausgabe einer Kipp- oder Speicherschaltung (Latch), die an einen Eingang zum Knoten B gekoppelt ist, ein logisches Niedrig. Der In­ verter ist daher am Ausgang der Kipp- oder Speicherschaltung (Latch) vorgesehen, um die invertierten Daten von der be­ stimmten Speicherzelle zurückzuinvertieren. Somit werden die nichtinvertierten Daten von der bestimmten Speicherzelle dem I/O-Register und -Puffer bereitgestellt.
Beide, der Biastransistor 41 und der Bitleitungssteuer­ transistor 53, werden während der Programmierungs- und Lö­ schungsverifikationsoperationen eingeschaltet. Wenn eine ausgewählte Speicherzelle während der Programmierungsverifi­ kationsoperation keinerlei Ladung enthält, d. h. die Spei­ cherzelle gelöscht oder nicht programmiert ist, fließt ein Strom durch die i-te Bitleitung BL i. Ähnlich fließt während der Löschungsverifikationsoperation, wenn alle der Speicher­ zellen eines ausgewählten Speicherzellenblockes an der i-ten Bitleitung BL i erfolgreich gelöscht wurden, d. h. von Elek­ tronen entladen wurden, ein Strom durch die i-te Bitleitung BL i.
In jenen Fällen wird ein Schwellenwertspannungsknoten A zwischen der Quelle des Biastransistors 41 und der Drain des Bitleitungssteuertransistors 53 auf niedrig gezogen, da es einen Spannungsabfall über den Biastransistor 41 gibt. Somit wird die Spannung an dem Schwellenwertspannungsknoten A un­ ausreichend sein, um den Schwellenwerttransistor 49 einzu­ schalten. Wenn der Schwellenwerttransistor 49 nicht einge­ schaltet wird, wird die Vss-Spannung von dem Einstelltransi­ stor 51 nicht am Knoten B angelegt. Daher bleibt während der Programmierungsverifikationsoperation, wenn die ausgewählte Speicherzelle nicht programmiert wurde, ein Inhalt der Kipp- oder Speicherschaltung (Latch) am Knoten B derselbe, und die Daten-I/O-Leitung stellt ein logisches Hoch zum I/O-Register und -Puffer durch einen Inverter (nicht gezeigt) bereit. Ähnlich stellt während der Löschungsverifikationsoperation wenn alle der Speicherzellen einer Bitleitung in einem Spei­ cherzellenblock gelöscht wurden, die Daten-I/O-Leitung ein logisches Hoch zum I/O-Register und -Puffer durch einen In­ verter (nicht gezeigt) bereit.
Wenn die ausgewählte Speicherzelle programmiert ist, fließt kein Strom durch die i-te Bitleitung BL i während der Programmierungsverifikationsoperation. Ähnlich fließt, wenn eine oder mehrere Speicherzellen eines ausgewählten Spei­ cherzellenblockes an der i-ten Bitleitung BL i nicht erfolg­ reich gelöscht wurde, kein Strom durch die i-te Bitleitung BL i während der Löschungsverifikationsoperation.
In jenen Fällen wird der Schwellenwertspannungsknoten A zwischen der Quelle des Biastransistors 41 und der Drain des Bitleitungssteuertransistors 53 hochgezogen, da es keinen Spannungsabfall über dem Biastransistor 41 gibt. Somit wird die Spannung am Schwellenwertspannungsknoten A ausreichend sein, um den Schwellenwerttransistor 49 einzuschalten. Wenn der Schwellenwerttransistor 49 eingeschaltet ist, wird die Vss-Spannung von dem Einstelltransistor 51 am Knoten B ange­ legt. Daher ändert sich, wenn die ausgewählte Speicherzelle programmiert wurde, der Inhalt der Kipp- oder Speicherschal­ tung (Latch) am Knoten B auf ein logisches Niedrig, und die Daten-I/O-Leitung stellt ein logisches Niedrig zum I/O- Register und -Puffer durch den Inverter (nicht gezeigt) be­ reit.
Wenn eine korrekt programmierte Speicherzelle zur Veri­ fikation ausgewählt wurde, erreicht, nachdem eine ausrei­ chende Zeit auf das Einschalten des Biastransistors 41 und des Bitleitungssteuertransistors 53 vergangen ist, die Span­ nung am Schwellenwertknoten A einen Schwellenwertspan­ nungspegel, der ausreicht, um den Schwellenwerttransistor 49 einzuschalten. Die ausreichende Zeit, die für den Schwellen­ wertknoten A erforderlich ist, um den Schwellenwertspan­ nungspegel zu erreichen, hängt von solchen Faktoren, wie Temperatur und eine relative Position der ausgewählten Spei­ cherzelle innerhalb der Speicherzellenanordnung ab.
Daher wird bei der vorliegenden Erfindung das Einstell­ signal SET aufgestellt, wenn eine vorprogrammierte Speicher­ zelle, die ähnlich zur ausgewählten Speicherzelle positio­ niert ist, genau gemessen wurde. In anderen Worten wird bei der vorliegenden Erfindung das Einstellsignal SET dem Ein­ stelltransistor 51 bereitgestellt, nachdem eine ausreichende Zeit für eine genaue Messung der vorprogrammierten Speicher­ zelle zugelassen wurde, die ähnlich positioniert ist, wie die ausgewählte Speicherzelle.
Bei einer Ausführung der vorliegenden Erfindung wird das Einstellsignal SET durch einen Referenzseitenpuffer be­ reitgestellt, der mit einer Referenzbitleitung REF BL ver­ bunden ist. Der Referenzseitenpuffer ist in der Fig. 5 ge­ zeigt. Eine Struktur des Referenzseitenpuffers ist ähnlich einer Struktur des Seitenpuffers, der mit der i-ten Bitlei­ tung BL i verbunden ist. Der Referenzseitenpuffer enthält einen Biastransistor 61, einen Programmiertransistor 63, Inverter 65, 67, einen Schwellenwerttransistor 69, einen Einstellinitiierungstransistor 71 und den Bitleitungssteuer­ transistor 73.
Anders als der Einstelltransistor des Seitenpuffers, der mit der i-ten Bitleitung verbunden ist, erhält der Ein­ stellinitiierungstransistor 71 ein Einstellungsinitiierungs­ signal SET_INIT von der Zustandsmaschinenschaltung (in der Fig. 1 gezeigt). Das Einstellinitiierungssignal SET_INIT wird von der Zustandsmaschinenschaltung und dem Einstelli­ nitiierungstransistor kurz nach dem Ende der Programmierope­ ration bereitgestellt. Die Zustandsmaschinenschaltung er­ zeugt das Einstellinitiierungssignal SET_INIT, wenn eine Programmieroperation abgeschlossen ist, und eine Program­ mierspannung, die an eine Wortleitung angelegt ist, wird auf eine Programmierungsverifikationsspannung verringert. Ähn­ lich zu dem Fall der i-ten Bitleitung wird die Kipp- oder Speicherschaltung (Latch), die die Inverter 65 und 67 ent­ hält, auf ein logisches Hoch voreingestellt unter Verwendung eines Voreinstellsignals PRESET an einem Knoten B zwischen einem Ausgang des Inverters 65 und einer Drain des Schwel­ lenwerttransistors 69.
Das Einstellsignal SET wird daher auf ein logisches Niedrig voreingestellt, da die Logisch-Hoch-Spannung am Kno­ ten B durch den Inverter 67 invertiert wird, bevor sie als das Einstellsignal SET bereitgestellt wird. Eine Referenz­ speicherzelle an der Wortleitung an der Referenzbitleitung wird auf ein logisches Niedrig vorprogrammiert, d. h. das Floating-Gate der Referenzspeicherzelle wurde negativ mit Elektronen geladen. Somit geben ein Spannungspegel am Schwellenwertspannungsknoten A zwischen einer Quelle eines Biastransistors 61 und einer Drain eines Bitleitungssteuertransistors 73 den Zustand einer programmierten Speicherzel­ le wieder. In anderen Worten wird, da ein Floating-Gate der Referenzspeicherzelle negativ geladen wurde, kein Strom auf der Referenzbitleitung fließen. Wenn auf der Referenzbitlei­ tung kein Strom fließt, gibt es annähernd keinen Spannungs­ abfall über dem Biastransistor 61. Ohne einen Spannungsab­ fall über dem Biastransistor 61 nähert sich der Spannungspe­ gel des Schwellenwertspannungsknotens A Vcc. Somit erhält ein Schwellenwerttransistor 69 eine Spannung am Gate, die ausreicht, um den Schwellenwerttransistor 69 einzuschalten.
Daher wird, wenn das Einstellinitiierungssignal SET_INIT an das Gate des Einstellinitiierungstransistors 71 angelegt wird und die ausreichend hohe Spannung an das Gate des Schwellenwerttransistors 69 angelegt wird, die Vss- Spannung am Knoten B angelegt, und die Ausgabe des Inverters 77 wird ein logisches Hoch sein. Diese Ausgabe des Inverters 67 ist das Einstellsignal SET, das dem Einstelltransistor 51 (gezeigt in der Fig. 4) bereitgestellt wird, um eine Pro­ grammierungs- oder Löschungsverifikationsoperation zu initi­ ieren. Somit wird die Zeitsteuerung einer Programmierungsve­ rifikationsoperation oder Löschungsverifikationsoperation durch das Einstellinitiierungssignal gesteuert, das dem Re­ ferenzseitenpuffer bereitgestellt wird, und noch wichtiger durch eine programmierte Referenzspeicherzelle, die die Zeit des Referenzseitenpuffers erfasst.
Die Fig. 6 ist ein Zeitablaufdiagramm, das einen rela­ tiven Zeitablauf von Spannungsübergängen zwischen verschie­ denen Signalen zeigt, die während einer Programmierungsveri­ fikationsoperation verwendet werden. Während einer Program­ mieroperation bleibt das Programmiersignal PGM auf einem logischen Hoch. Nach Abschluss der Programmieroperation zu einer Zeit ta senkt die Zustandsmaschinenschaltung den Pegel des Programmiersignals auf ein logisches Niedrig. Mit dem logischen Niedrig angelegt an das Gate des Programmiertran­ sistors hängt der Spannungspegel an dem Schwellenwertspan­ nungsknoten A von Zuständen des Biassignals BIAS, des Bit­ leitungs-Steuersignals BL_CTRL und dem Floating-Gate der Speicherzelle an der Bitleitung der ausgewählten Wortleitung ab.
Wenn das Programmiersignal PGM zur Zeit ta auf ein lo­ gisches Niedrig geht, erreicht auch das Biassignal BIAS ein logisches Niedrig. Da der Biastransistor eines Seitenpuffers ein p-Typ-Transistor ist, schaltet das logisch niedrige Bi­ assignal BIAS, das an das Gate des Biastransistors angelegt ist, den Biastransistor ein, was ihn bereit macht, damit ein Strom hindurchfließt. Wenn kein Strom durch den Biastransi­ stor fließt, wenn er eingeschaltet ist, nähert sich die Spannung an der Quelle des Biastransistors und daher am Schwellenwertspannungsknoten A dem Pegel der Spannung Vcc, die an das Gate des Biastransistors angelegt ist. Jedoch hindert, wenn ein Strom durch den Biastransistor fließt, ein Spannungsabfall über ihn die Spannung an dem Schwellenwert­ spannungsknoten A, sich Vcc anzunähern.
Wenn sich der Biastransistor zur Zeit ta einschaltet, geht das Bitleitungs-Steuersignal BL_CTRL auf hoch und schaltet den Bitleitungssteuertransistor ein. Wenn die ent­ sprechende Speicherzelle programmiert wurde, fließt kein Strom durch die Bitleitung und nähert sich der Spannungspe­ gel an dem Schwellenwertspannungsknoten A Vcc. Wenn die ent­ sprechende Speicherzelle nicht programmiert wurde, fließt ein Strom durch die Bitleitung und nähert sich der Span­ nungspegel an dem Schwellenwertspannungsknoten A nicht Vcc.
Beide, das Biassignal BIAS und das Bitleitungs-Steuer­ signal BL_CTRL, werden an sowohl die Datenbegleitungen als auch die Referenzbitleitung im wesentlichen gleichzeitig angelegt. Daher würde die Schwellenwertspannung an dem Schwellenwertspannungsknoten A für sowohl die Datenbeglei­ tungen als auch die Referenzbegleitungen gleichzeitig einge­ stellt. Das Einstellinitiierungssignal SET_INIT wird an dem Einstelltransistor des Referenzseitenpuffers zur Zeit tb angelegt. Das Einstellinitiierungssignal SET_INIT ist ein Impuls von ungefähr 1,0 µs Dauer, wie in der Fig. 6 gezeigt ist. Mit dem auf Hoch gehaltenen Impuls wird, wenn die Schwellenwertspannung an den Schwellenwertspannungsknoten A einen ausreichenden Pegel erreicht, um den Schwellenwert­ transistor des Referenzseitenpuffers einzuschalten, das Ein­ stellsignal SET von dem Referenzseitenpuffer zur Zeit tb erzeugt.
Mit dem Aufstellen des Einstellsignals SET am Gate des Einstelltransistors des Seitenpuffers, der mit einer Bitlei­ tung verbunden ist, wird, wenn die entsprechende Speicher­ zelle programmiert wurde, die Schwellenwertspannung an den Schwellenwertspannungsknoten A erreicht, und wird die Daten- I/O-Leitung, die mit dem Seitenpuffer verbunden ist, auf ein logisches Hoch geschaltet. Wenn jedoch die entsprechende Speicherzelle nicht programmiert wurde, schaltet sich der Schwellenwerttransistor nicht ein und werden die Kipp- oder Speicherschaltungen (Latches) auf dem voreingestellten Wert bleiben, wo er am Knoten B auf ein logisches Hoch und daher ein logisches Niedrig an der Daten-I/O-Leitung eingestellt wurde.
Somit wird während der Programmierungsverifikationsope­ ration der Inhalt einer entsprechenden Speicherzelle in der Kipp- oder Speicherschaltung (Latch) gespeichert, die die Inverter 45 und 47 enthält. Der Inhalt der Kipp- oder Spei­ cherschaltung (Latch) am Knoten B (gezeigt in der Fig. 4) in jedem Seitenpuffer wird dann mit den Daten in dem I/O- Register und -Puffer verglichen. Wenn die Inhalte der Kipp- oder Speicherschaltungen (Latches) in der Datenregister- und Erfassungsverstärkerschaltung übereinstimmen mit den Inhal­ ten des I/O-Registers und -Puffers, wurde die Program­ mieroperation erfolgreich abgeschlossen und ist kein weite­ res Programmieren erforderlich. Andernfalls wird die Seite, die versagte, die Programmierungsverifikationsoperation zu bestehen, neu programmiert.
Ähnlich werden während der Löschungsverifikationsopera­ tion Inhalte der Kipp- oder Speicherschaltungen (Latches) am Knoten B verifiziert, um in einem logischen Hoch-Zustand zu sein. Wenn der Knoten B von jeglichem der Seitenpuffer in einem logischen Niedrig-Zustand ist, hat eine Löschoperation für eine oder mehrere Speicherzellen versagt, die mit dem Seitenpuffer verbunden sind, und die Löschungsverifikation­ soperation versagt. Entsprechend wird eine Löschoperation für jenen Speicherzellenblock nochmals ausgeführt.
Die Fig. 7 ist ein Flussdiagramm eines Prozesses zum Programmieren und Verifizieren einer Seite von Speicherzel­ len. Der Prozess programmiert im Schritt 81 eine Referenz­ speicherzelle in einen aufgeladenen Zustand. Der Prozess programmiert im Schritt 83 eine Seite während einer Program­ mieroperation. Der Prozess verriegelt oder speichert im Schritt 85 einen Inhalt der Referenzspeicherzelle, die im Schritt 81 programmiert wurde, und gibt den Inhalt als das Einstellsignal aus. Das Einstellsignal, das im Schritt 85 erzeugt wurde, wird von dem Prozess im Schritt 87 verwendet, um die Inhalte der Speicherzellen in der Seite, die im Schritt 83 programmiert wurde, zu verriegeln oder zu spei­ chern.
Der Prozess vergleicht im Schritt 89 die Inhalte der Kipp- oder Speicherschaltungen (Latches) der Seitenpuffer gegenüber entsprechenden Daten, die in dem I/O-Register und -Puffer gespeichert sind, zur Verifikation der Programmie­ rung. Wenn die Inhalte der Seitenpuffer mit den entsprechen­ den Daten übereinstimmen, kehrt der Prozess zurück. Wenn der Inhalt irgend eines Seitenpuffers nicht mit den entsprechen­ den Daten übereinstimmt, führt der Prozess die Program­ mieroperation der Seite beim Schritt 83 und die Schritte zur Programmierungsverifikation nochmals aus.
Entsprechend schafft die vorliegende Erfindung eine Er­ fassungszeit-Steuervorrichtung und -verfahren zum Verringern einer Datenerfassungslatenz und Verbessern einer Datenerfas­ sungszuverlässigkeit. Obwohl diese Erfindung in bestimmten spezifischen Ausführungen beschrieben wurde, sind viele zu­ sätzliche Modifikationen und Variationen für Fachleute of­ fensichtlich. Es ist daher zu verstehen, dass diese Erfin­ dung anders als es spezifisch Beschrieben wurde, ausgeführt werden kann. Somit sind die vorliegenden Ausführungen der Erfindung in jeglicher Hinsicht als illustrativ und nicht beschränkend zu betrachten und ist der Umfang der Erfindung durch die angefügten Ansprüche und ihre Äquivalente, statt durch die vorangehende Beschreibung, bestimmt.

Claims (36)

1. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation, enthaltend:
Programmieren einer Referenzspeicherzelle,
Programmieren einer Speicherzelle,
Erzeugen eines Einstellsignals unter Verwendung eines Inhalts der Referenzspeicherzelle und
Verwenden des Einstellsignals, um die Programmierungs­ verifikationsoperation für die Speicherzelle zu initiieren.
2. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 1, dadurch gekennzeichnet, dass die Referenzspeicherzelle in einen negativ geladenen Zustand programmiert wird.
3. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 1 oder 2, dadurch gekenn­ zeichnet, dass ein Referenzseitenpuffer an die Referenzspei­ cherzelle gekoppelt ist und ein Datenspeicherpuffer an die Speicherzelle gekoppelt ist, welcher Referenzseitenpuffer verwendet wird, um einen Inhalt der Referenzspeicherzelle zu lesen und zu speichern, und welcher Datenseitenpuffer ver­ wendet wird, um einen Inhalt der Speicherzelle zu lesen und zu speichern.
4. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 3, dadurch gekennzeichnet, dass das Erzeugen des Einstellsignals mit dem Inhalt der Referenzspeicherzelle ein Bereitstellen eines Einstellinitiierungssignals zum Referenzseitenpuffer, um den Inhalt der Referenzspeicherzelle als einen Inhalt des Referenzseiten­ puffers zu speichern, und ein Ausgeben des Inhalts des Refe­ renzseitenpuffers als das Einstellsignal enthält.
5. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 3, dadurch gekennzeichnet, dass das Verwenden des Einstellsignals zum Initiieren der Programmierungsverifikationsoperation der Speicherzelle ein Bereitstellen des Einstellsignals zum Datenseitenpuffer ent­ hält, um den Inhalt der Speicherzelle als einen Inhalt des Datenseitenpuffers zu speichern.
6. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 5, dadurch gekennzeichnet, dass ferner ein Vergleichen des Inhalts des Datenseitenpuf­ fes mit einem entsprechenden Inhalt eines I/O-Registers und -Puffers enthalten ist.
7. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 6, dadurch gekennzeichnet, dass ferner eine Neuprogrammieren der Speicherzelle, Neuer­ zeugen des Einstellsignals mit dem Inhalt der Referenzspei­ cherzelle und Verwenden des Einstellsignals zum Initiieren einer weiteren Programmierungsverifikationsoperation der Speicherzelle enthalten sind, wenn der Inhalt des Datensei­ tenpuffers nicht mit dem entsprechenden Inhalt des I/O- Registers und -Puffers übereinstimmt.
8. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ferner ein Programmieren einer Mehrzahl von Speicherzellen und Verwenden des Einstellsi­ gnals zum Initiieren der Programmierungsverifikationsopera­ tion für die Mehrzahl von Speicherzellen enthalten sind.
9. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 8, dadurch gekennzeichnet, dass die Referenzspeicherzelle in einen negativ geladenen Zustand programmiert wird.
10. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 8 oder 9, dadurch gekenn­ zeichnet, dass die Referenzspeicherzelle an einen Referenz­ seitenpuffer gekoppelt ist und jede der Mehrzahl von Spei­ cherzellen an einen entsprechenden einer Mehrzahl von Datenseitenpuffern gekoppelt ist, welcher Referenzseitenpuf­ fer verwendet wird, um einen Inhalt er Referenzspeicherzelle zu lesen und zu speichern, und jeder der Mehrzahl von Daten­ seitenpuffern verwendet wird, um einen Inhalt der entspre­ chenden der Mehrzahl von Speicherzellen zu lesen und zu speichern.
11. Verfahren zur Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 10, dadurch gekennzeichnet, dass das Erzeugen des Einstellsignals mit dem Inhalt der Referenzspeicherzelle ein Bereitstellen eines Einstelliniti­ ierungssignals zum Referenzseitenpuffer, um den Inhalt der Referenzspeicherzelle als einen Inhalt des Referenzseiten­ puffers zu speichern, und ein Ausgeben des Inhalts des Refe­ renzseitenpuffers als das Einstellsignal enthält.
12. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 10, dadurch gekennzeichnet, dass ein Verwenden des Einstellsignals zum Initiieren der Programmierungsverifikationsoperation der Mehrzahl von Spei­ cherzellen ein Bereitstellen des Einstellsignals zu jedem der Mehrzahl von Datenseitenpuffern enthält, um den Inhalt der entsprechenden der Mehrzahl von Speicherzellen als einen Inhalt jedes der Mehrzahl von Datenseitenpuffern zu spei­ chern.
13. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 12, dadurch gekennzeichnet, dass ferner ein Vergleichen der Inhalte der Mehrzahl von Datenseitenpuffern mit entsprechenden Inhalten eines I/O- Registers und -Puffers enthalten ist.
14. Verfahren zum Ausführen einer Programmierungsveri­ fikationsoperation nach Anspruch 13, dadurch gekennzeichnet, dass ferner ein Neuprogrammieren der Mehrzahl von Speicher­ zellen, Neuerzeugen des Einstellsignals mit dem Inhalt der Referenzspeicherzelle und Verwenden des Einstellsignals ent­ halten sind, um eine weitere Programmierungsverifikation­ soperation der Mehrzahl von Speicherzellen zu initiieren, wenn wenigstens einer der Inhalte der Mehrzahl von Datensei­ tenpuffern nicht mit dem entsprechenden Inhalt des I/O- Registers und -Puffers übereinstimmt.
15. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation, enthaltend:
Programmieren einer Referenzspeicherzelle,
Löschen einer Speicherzelle,
Erzeugen eines Einstellsignals unter Verwendung eines Inhalts der Referenzspeicherzelle, und
Verwenden des Einstellsignals, um die Löschungsverifi­ kationsoperation für die Mehrzahl von Speicherzellen zu in­ itiieren.
16. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 15, dadurch gekennzeichnet, dass die Referenzspeicherzelle in einen negativ geladenen Zustand programmiert wird.
17. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 15 oder 16, dadurch gekennzeich­ net, dass ein Referenzseitenpuffer an die Referenzspeicher­ zelle gekoppelt ist und ein Datenseitenpuffer an die Spei­ cherzelle gekoppelt ist, welcher Referenzseitenpuffer verwendet wird, um einen Inhalt der Referenzspeicherzelle zu lesen und zu speichern, und welcher Datenseitenpuffer ver­ wendet wird, um einen Inhalt der Speicherzelle zu lesen und zu speichern.
18. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 17, dadurch gekennzeichnet, dass das Erzeugen des Einstellsignals mit dem Inhalt der Refe­ renzspeicherzelle ein Bereitstellen eines Einstellinitiie­ rungssignals zum Referenzseitenpuffer, um den Inhalt der Referenzspeicherzelle als einen Inhalt des Referenzseiten­ puffers zu speichern, und ein Ausgeben des Inhalts des Refe­ renzseitenpuffers als das Einstellsignal enthält.
19. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 17, dadurch gekennzeichnet, dass ein Verwenden des Einstellsignals zum Initiieren der Lö­ schungsverifikationsoperation der Speicherzelle ein Bereitstellen des Einstellsignals zum Datenseitenpuffer enthält, um den Inhalt der Speicherzelle als einen Inhalt des Daten­ speicherpuffers zu speichern.
20. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 19, dadurch gekennzeichnet, dass ferner ein Überprüfen des Inhalts des Datenseitenpuffers enthalten ist, um zu bestimmen, ob die Speicherzelle in ei­ nem entladenen Zustand ist oder nicht.
21. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 20, dadurch gekennzeichnet, dass ferner ein erneutes Löschen der Speicherzelle, Neuerzeugen des Einstellsignals mit dem Inhalt der Referenzspeicherzelle und Verwenden des Einstellsignals zum Initiieren einer wei­ teren Löschungsverifikationsoperation der Speicherzelle ent­ halten sind, wenn der Inhalt des Datenseitenpuffers angibt, dass die Speicherzelle in einem negativ geladenen Zustand ist.
22. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach einem der Ansprüche 15 bis 21, dadurch gekennzeichnet, dass ferner ein Löschen einer Mehrzahl von Speicherzellen und Verwenden des Einstellsignals zum Initi­ ieren der Löschungsverifikationsoperation für die Mehrzahl von Speicherzellen enthalten sind.
23. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 22, dadurch gekennzeichnet, dass die Referenzspeicherzelle in einen negativ geladenen Zustand programmiert wird.
24. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 22 oder 23, dadurch gekennzeich­ net, dass die Referenzspeicherzelle an einen Referenzseiten­ puffer gekoppelt ist und jede der Mehrzahl von Speicherzel­ len an einen entsprechenden einer Mehrzahl von Datenseitenpuffern gekoppelt ist, welcher Referenzseitenpuf­ fer verwendet wird, um einen Inhalt der Referenzspeicherzel­ le zu lesen und zu speichern, und jeder der Mehrzahl von Datenseitenpuffern verwendet wird, um einen Inhalt einer entsprechenden der Mehrzahl von Speicherzellen zu lesen und zu speichern.
25. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 24, dadurch gekennzeichnet, dass das Erzeugen des Einstellsignals mit dem Inhalt der Refe­ renzspeicherzelle ein Bereitstellen eines Einstellinitiie­ rungssignals zum Referenzseitenpuffer, um den Inhalt der Referenzspeicherzelle als einen Inhalt des Referenzseiten­ puffers zu speichern, und ein Ausgeben des Inhalts des Refe­ renzseitenpuffers als das Einstellsignal enthält.
26. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 24, dadurch gekennzeichnet, dass ein Verwenden des Einstellsignals zum Initiieren der Lö­ schungsverifikationsoperation der Mehrzahl von Speicherzel­ len ein Bereitstellen des Einstellsignals zu jeder der Mehr­ zahl von Datenseitenpuffern enthält, um den Inhalt der ent­ sprechenden der Mehrzahl von Speicherzellen als einen Inhalt jedes der Mehrzahl von Datenseitenpuffern zu speichern.
27. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 26, dadurch gekennzeichnet, dass ferner ein Überprüfen des Inhaltes jedes der Mehrzahl von Datenseitenpuffern enthalten ist, um zu bestimmen, ob die entsprechende der Mehrzahl von Speicherzellen in einem ent­ ladenen Zustand ist oder nicht.
28. Verfahren zum Ausführen einer Löschungsverifikati­ onsoperation nach Anspruch 27, dadurch gekennzeichnet, dass ferner ein erneutes Löschen der Mehrzahl von Speicherzellen, Neuerzeugen des Einstellsignals mit dem Inhalt der Referenz­ speicherzelle und Verwenden des Einstellsignals zum Initiie­ ren einer weiteren Löschungsverifikationsoperation der Mehr­ zahl von Speicherzellen enthalten sind, wenn die Inhalte der Mehrzahl von Datenseitenpuffern angeben, dass wenigstens eine der Mehrzahl von Speicherzellen in einem negativ gela­ denen Zustand ist.
29. Verfahren zum Verifizieren eines Inhalts einer Speicherzelle, enthaltend:
Programmieren einer Referenzspeicherzelle,
Erfassen eines Inhalts der Referenzspeicherzelle, und
Verifizieren des Inhaltes der Speicherzelle, wenn der Inhalt der Referenzspeicherzelle erfasst wurde.
30. Verfahren zum Bereitstellen eines Einstellsignals zu einem Seitenpuffer, der mit einer Speicherzelle verbunden ist, welches Verfahren enthält:
Programmieren einer Referenzspeicherzelle, die an einen Referenzseitenpuffer gekoppelt ist,
Einstellen einer Spannung eines Knotens in dem Refe­ renzseitenpuffer basierend auf dem Inhalt der Referenzspei­ cherzelle,
und Bereitstellen der Spannung an dem Knoten zu dem Puffer als das Einstellsignal.
31. Verfahren zum Bereitstellen eines Einstellsignals zu einem Seitenpuffer, der mit einer Speicherzelle verbunden ist, nach Anspruch 30, dadurch gekennzeichnet, dass ferner enthalten ist:
Voreinstellen der Spannung an dem Knoten auf ein logi­ sches Hoch,
wobei der Schritt des Einstellens der Spannung des Kno­ tens ein Einstellen der Spannung an dem Knoten auf ein logi­ sches Niedrig enthält.
32. Verfahren zum Bereitstellen eines Einstellsignals zu einem Seitenpuffer, der mit einer Speicherzelle verbunden ist, nach Anspruch 30, dadurch gekennzeichnet, dass der Schritt des Bereitstellens der Spannung an dem Knoten zu dem Seitenpuffer als das Einstellsignal die Schritte des Inver­ tierens der Spannung an dem Knoten und des Bereitstellens der invertierten Spannung zu dem Seitenpuffer als das Ein­ stellsignal enthält.
33. Erfassungszeit-Steuerschaltung, enthaltend:
einen Referenzseitenpuffer, der ein Einstellinitiie­ rungssignal erhält und ein Einstellsignal erzeugt, und
eine Mehrzahl von Datenseitenpuffern, die das Einstell­ signal erhalten und Inhalte einer Mehrzahl von Speicherzel­ len speichern, wobei jeder der Mehrzahl der Datenseitenpuf­ fer einen Inhalt einer zugehörigen der Mehrzahl der Spei­ cherzellen speichert.
34. Erfassungszeit-Steuerschaltung nach Anspruch 33, dadurch gekennzeichnet, dass der Referenzseitenpuffer einen Einstellinitiierungstransistor, der das Einstellinitiie­ rungssignal erhält und sich nach dem Erhalt des Einstelli­ nitiierungssignals einschaltet, und eine Speicherschaltung enthält, die an den Einstellinitiierungstransistor gekoppelt ist, welche Speicherschaltung das Einstellsignal bereit­ stellt.
35. Erfassungszeit-Steuerschaltung nach Anspruch 33, dadurch gekennzeichnet, dass jeder der Mehrzahl von Refe­ renzseitenpuffern einen Einstelltransistor, der das Ein­ stellsignal erhält und sich nach dem Erhalt des Einstellsi­ gnals einschaltet, und eine Speicherschaltung enthält, die an den Einstelltransistor gekoppelt ist, welche Speicher­ schaltung einen Inhalt zu einer zugehörigen Speicherzelle bereitstellt.
36. NAND-Typ-Flash-Speichervorrichtung, enthaltend:
eine Speicherzellenanordnung, die eine Mehrzahl von Reihen und eine Mehrzahl von Spalten von Speicherzellen ent­ hält,
einen X-Decoder, der die Mehrzahl von Reihen von Spei­ cherzellen auswählt,
einen Y-Decoder, der die Mehrzahl von Spalten von Spei­ cherzellen auswählt,
eine Datenregister- und Erfassungsverstärkerschaltung, die die Mehrzahl von Reihen und die Mehrzahl von Spalten von Speicherzellen liest und programmiert,
einen I/O-Register und -Puffer, der an die Datenregi­ ster- und Erfassungsverstärkerschaltung gekoppelt ist, welcher I/O-Register und -Puffer eine externe Schnittstelle der NAND-Typ-Flash-Speichervorrichtung bereitstellt,
eine Hochspannungsschaltung, die Programmier-, Lese- und Löschspannungen zum X-Decoder bereitstellt,
eine Zustandsmaschinenschaltung, die Steuersignale zu der Datenregister- und Erfassungsverstärkerschaltung bereit­ stellt, und
ein Adressenregister, das eine zu decodierende Adresse zum X-Decoder und zum Y-Decoder bereitstellt.
DE10037037A 1999-12-20 2000-07-27 Erfassungszeit-Steuervorrichtung und -Verfahren Expired - Fee Related DE10037037B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US468422 1999-12-20
US09/468,422 US6304486B1 (en) 1999-12-20 1999-12-20 Sensing time control device and method

Publications (2)

Publication Number Publication Date
DE10037037A1 true DE10037037A1 (de) 2001-06-21
DE10037037B4 DE10037037B4 (de) 2008-04-03

Family

ID=23859752

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10037037A Expired - Fee Related DE10037037B4 (de) 1999-12-20 2000-07-27 Erfassungszeit-Steuervorrichtung und -Verfahren

Country Status (5)

Country Link
US (1) US6304486B1 (de)
JP (2) JP2001176276A (de)
KR (1) KR100609669B1 (de)
DE (1) DE10037037B4 (de)
TW (1) TW499679B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004105042A1 (de) * 2003-05-20 2004-12-02 Infineon Technologies Ag Vorrichtung und verfahren zum behandeln eines zustands eines speichers

Families Citing this family (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6731538B2 (en) * 2000-03-10 2004-05-04 Kabushiki Kaisha Toshiba Semiconductor memory device including page latch circuit
TW200302966A (en) * 2002-01-29 2003-08-16 Matsushita Electric Ind Co Ltd Memory device, data processing method and data processing program
US6621741B2 (en) * 2002-01-30 2003-09-16 Fujitsu Limited System for programming verification
KR100471167B1 (ko) * 2002-05-13 2005-03-08 삼성전자주식회사 프로그램된 메모리 셀들을 검증하기 위한 페이지 버퍼를구비한 반도체 메모리 장치
US6735114B1 (en) * 2003-02-04 2004-05-11 Advanced Micro Devices, Inc. Method of improving dynamic reference tracking for flash memory unit
KR100550638B1 (ko) * 2003-04-30 2006-02-10 주식회사 하이닉스반도체 비트라인 센싱마진시간의 조절을 위한 테스트모드를 갖는메모리장치
DE602004010239T2 (de) * 2004-05-20 2008-09-25 Stmicroelectronics S.R.L., Agrate Brianza Verbesserter Seitenspeicher für eine programmierbare Speichervorrichtung
DE102004063641B4 (de) * 2004-12-27 2011-12-08 Infineon Technologies Ag Nichtflüchtige Speichereinrichtung zum Speichern von Daten und Verfahren zum Löschen oder Programmieren derselben
KR100694967B1 (ko) * 2005-06-29 2007-03-14 주식회사 하이닉스반도체 프로그램 동작시 에러 발생 비율을 감소시키는 플래시메모리 장치 및 그 프로그램 동작 제어 방법
DE602005006274T2 (de) * 2005-07-28 2009-05-07 Stmicroelectronics S.R.L., Agrate Brianza NAND Flash Speicher mit Löschprüfung basierend auf einer kürzeren Verzögerung vor dem Sensing
US7336538B2 (en) * 2005-07-28 2008-02-26 Stmicroelectronics S.R.L. Page buffer circuit and method for multi-level NAND programmable memories
US7263004B2 (en) * 2005-12-08 2007-08-28 Elite Semiconductor Memory Technology Inc. Method and apparatus for determining sensing timing of flash memory
US7263006B2 (en) * 2006-01-26 2007-08-28 Micron Technology, Inc. Memory block erasing in a flash memory device
CN101042924B (zh) * 2006-03-24 2010-05-12 晶豪科技股份有限公司 决定闪存元件感测时间的方法和装置
KR100769782B1 (ko) * 2006-04-20 2007-10-24 주식회사 하이닉스반도체 플래시 메모리 소자
WO2007132457A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
CN103258572B (zh) 2006-05-12 2016-12-07 苹果公司 存储设备中的失真估计和消除
WO2007132452A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Reducing programming error in memory devices
WO2007132456A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device with adaptive capacity
US8060806B2 (en) 2006-08-27 2011-11-15 Anobit Technologies Ltd. Estimation of non-linear distortion in memory devices
CN101601094B (zh) 2006-10-30 2013-03-27 苹果公司 使用多个门限读取存储单元的方法
WO2008053472A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US7924648B2 (en) 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
US8151163B2 (en) 2006-12-03 2012-04-03 Anobit Technologies Ltd. Automatic defect management in memory devices
US7593263B2 (en) 2006-12-17 2009-09-22 Anobit Technologies Ltd. Memory device with reduced reading latency
US7900102B2 (en) 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
KR100885912B1 (ko) * 2007-01-23 2009-02-26 삼성전자주식회사 기입된 데이터 값에 기초하여 데이터를 선택적으로검증하는 데이터 검증 방법 및 반도체 메모리 장치
US7751240B2 (en) 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
KR100850516B1 (ko) 2007-01-25 2008-08-05 삼성전자주식회사 플래시 메모리 장치 및 그것의 프로그램 방법
CN101715595A (zh) 2007-03-12 2010-05-26 爱诺彼得技术有限责任公司 存储器单元读取阈的自适应估计
JP4911508B2 (ja) * 2007-03-30 2012-04-04 ルネサスエレクトロニクス株式会社 不揮発性半導体記憶装置及びその動作方法
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
WO2008139441A2 (en) 2007-05-12 2008-11-20 Anobit Technologies Ltd. Memory device with internal signal processing unit
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US7773413B2 (en) 2007-10-08 2010-08-10 Anobit Technologies Ltd. Reliable data storage in analog memory cells in the presence of temperature variations
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
WO2009050703A2 (en) 2007-10-19 2009-04-23 Anobit Technologies Data storage in analog memory cell arrays having erase failures
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
WO2009063450A2 (en) 2007-11-13 2009-05-22 Anobit Technologies Optimized selection of memory units in multi-unit memory devices
KR100908562B1 (ko) * 2007-11-29 2009-07-21 주식회사 하이닉스반도체 불휘발성 메모리 소자의 소거 방법
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US7924587B2 (en) 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US7864573B2 (en) 2008-02-24 2011-01-04 Anobit Technologies Ltd. Programming analog memory cells for reduced variance after retention
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US7995388B1 (en) 2008-08-05 2011-08-09 Anobit Technologies Ltd. Data storage using modified voltages
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
KR101448915B1 (ko) * 2008-10-17 2014-10-14 삼성전자주식회사 프로그램 및 검증 동작을 수행하는 가변 저항 메모리 장치
US8261159B1 (en) 2008-10-30 2012-09-04 Apple, Inc. Data scrambling schemes for memory devices
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8397131B1 (en) 2008-12-31 2013-03-12 Apple Inc. Efficient readout schemes for analog memory cell devices
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
JP5537366B2 (ja) * 2009-10-01 2014-07-02 株式会社半導体エネルギー研究所 半導体装置の駆動方法
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8572311B1 (en) 2010-01-11 2013-10-29 Apple Inc. Redundant data storage in multi-die memory systems
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8856614B2 (en) * 2010-07-29 2014-10-07 Kabushiki Kaisha Toshiba Semiconductor memory device detecting error
US8767459B1 (en) 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US8804424B2 (en) 2011-08-25 2014-08-12 Micron Technology, Inc. Memory with three transistor memory cell device
KR101525907B1 (ko) 2011-09-05 2015-06-04 니폰덴신뎅와 가부시키가이샤 질화물 반도체 구조 및 그 제작방법
KR20130092174A (ko) * 2012-02-10 2013-08-20 에스케이하이닉스 주식회사 불휘발성 반도체 메모리 장치 및 이 장치의 데이터 센싱 방법
JP2019215945A (ja) 2018-06-14 2019-12-19 富士通株式会社 メモリ制御装置、情報処理装置、及びメモリ制御方法
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8923037D0 (en) * 1989-10-12 1989-11-29 Inmos Ltd Timing control for a memory
JPH0652695A (ja) * 1992-07-31 1994-02-25 Fujitsu Ltd 半導体記憶装置
JPH06176568A (ja) * 1992-12-07 1994-06-24 Fujitsu Ltd 半導体記憶装置
JPH08190796A (ja) * 1995-01-09 1996-07-23 Mitsubishi Denki Semiconductor Software Kk データリフレッシュ機能を有するフラッシュメモリ及びフラッシュメモリのデータリフレッシュ方法
JP3542225B2 (ja) * 1996-03-19 2004-07-14 株式会社日立製作所 半導体装置
JPH09320286A (ja) * 1996-05-24 1997-12-12 Nec Corp 半導体記憶装置
DE69702256T2 (de) * 1996-06-24 2001-01-18 Advanced Micro Devices Inc Verfahren für einen merhfachen, bits pro zelle flash eeprom, speicher mit seitenprogrammierungsmodus und leseverfahren
US5675537A (en) * 1996-08-22 1997-10-07 Advanced Micro Devices, Inc. Erase method for page mode multiple bits-per-cell flash EEPROM
KR100255957B1 (ko) * 1997-07-29 2000-05-01 윤종용 전기적으로 소거 및 프로그램 가능한 메모리 셀들을 구비한반도체 메모리 장치
US6046934A (en) * 1999-01-12 2000-04-04 Macronix International Co., Ltd. Method and device for multi-level programming of a memory cell

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004105042A1 (de) * 2003-05-20 2004-12-02 Infineon Technologies Ag Vorrichtung und verfahren zum behandeln eines zustands eines speichers
US7328302B2 (en) 2003-05-20 2008-02-05 Infineon Technologies Ag Device and method for treating a state of a memory

Also Published As

Publication number Publication date
JP2001176276A (ja) 2001-06-29
US6304486B1 (en) 2001-10-16
TW499679B (en) 2002-08-21
JP2009170098A (ja) 2009-07-30
KR20010069992A (ko) 2001-07-25
KR100609669B1 (ko) 2006-08-09
DE10037037B4 (de) 2008-04-03

Similar Documents

Publication Publication Date Title
DE10037037A1 (de) Erfassungszeit-Steuervorrichtung und -Verfahren
DE4433098C2 (de) Halbleiter-Permanentspeichervorrichtung
DE3900798C2 (de) Verfahren zum Programmieren eines elektrisch löschbaren und programmierbaren Nur-Lese-Speichers
DE102006020180B3 (de) Verfahren zum Programmieren eines Blocks von Speicherzellen, nicht-flüchtiger Speicher und Speicherkarte
DE60125932T2 (de) Nichtflüchtige Halbleiterspeicher
DE102004033443B4 (de) Flashspeicherbauelement mit Mehrpegelzelle
DE60220590T2 (de) Verfahren zur Reduzierung von Kopplungseffekten zwischen multi-level Speicherelementen eines nicht flüchtigen Speichers
DE60130437T2 (de) Simultane mehrbankoperation für flash-speicher
DE69533429T2 (de) Automatischer progammier-algorithmus für flash-speicher im seitenmodus mit variabler programmierimpulshöhe und -breite
DE60127651T2 (de) Bitleitungs-Vorladungs- und -Entladungsschaltung zum Programmieren eines nichtflüchtigen Speichers
DE60121865T2 (de) Nichtflüchtige Halbleiterspeicheranordnung
DE60212982T2 (de) Dynamische spaltenblockauswahl
DE3740361C2 (de)
DE102007021613A1 (de) Nand-Flash-Speicherbauelement und Verfahren zum Verbessern der Charakteristik einer Zelle in demselben
DE4040492C2 (de)
DE4309814A1 (de) Nichtflüchtige Halbleiterspeichervorrichtung
DE4213731A1 (de) Nichtfluechtiges halbleiterspeicherbauelement und programmierverfahren hierfuer
DE4207934A1 (de) Elektrisch loesch- und programmierbares, nichtfluechtiges speichersystem mit schreib-pruef-einsteller unter verwendung zweier bezugspegel
DE102005017012A1 (de) NOR-Flashspeicherbauelement, zugehöriges Speichersystem und Programmierverfahren
DE102005057112A1 (de) Nichtflüchtiges Speicherbauelement und Programmierverfahren
DE69828131T2 (de) Nicht-flüchtige Halbleiterspeicheranordnung und Schreibverfahren dafür
DE112015003651T5 (de) Adaptives selektives bitleitungsvorladen für stromeinsparungen und schnelles programmieren
DE19615660A1 (de) Schaltung zur Aufbringung einer Belastungsspannung in eine Blockeinheit für die Verwendung in einer Halbleiterspeichervorrichtung
DE69731255T2 (de) Verfahren zum Löschen eines nichtflüchtigen Speichers
DE60218009T2 (de) Halbleiterspeichervorrichtung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: FUJITSU MICROELECTRONICS LTD., TOKYO, JP

8327 Change in the person/name/address of the patent owner

Owner name: FUJITSU SEMICONDUCTOR LTD., YOKOHAMA, KANAGAWA, JP

8328 Change in the person/name/address of the agent

Representative=s name: SEEGER SEEGER LINDNER PARTNERSCHAFT PATENTANWAELTE

R082 Change of representative

Representative=s name: REICHERT & LINDNER PARTNERSCHAFT PATENTANWAELT, DE

R081 Change of applicant/patentee

Owner name: SOCIONEXT INC., YOKOHAMA-SHI, JP

Free format text: FORMER OWNER: FUJITSU SEMICONDUCTOR LTD., YOKOHAMA, KANAGAWA, JP

Effective date: 20150512

R082 Change of representative

Representative=s name: REICHERT & LINDNER PARTNERSCHAFT PATENTANWAELT, DE

Effective date: 20150512

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee