-
HINTERGRUND
DER ERFINDUNG
-
Die
vorliegende Erfindung betrifft einen elektrisch löschbaren
programmierbaren Nurlesespeicher (EEPROM). Insbesondere betrifft
diese Erfindung eine Daten-Neuprogrammier-/Wiedergewinnungs-Schaltung,
die zu programmierende Daten oder wiederzugewinnende Daten für eine Cache-Funktion
oder eine Mehrpegellogikfunktion temporär speichert.
-
In
der Halbleiterindustrie konzentriert man sich auf das Reduzieren
von Kosten pro Bit für
Hochkapazitätsflash-EEPROMs, die verwendet
werden als Datenspeicher durch Miniaturisieren der Zellenstruktur
mit Prozesstechniken und auch durch Mehrpegellogiktechniken für hohe Kapazität.
-
42 ist ein Schaltungsblockdiagramm einer Daten-Neuprogrammier-/Wiedergewinnungs-Schaltung
(die nachstehend Seitenpuffer genannt wird) für eine Mehrpegellogikoperation (Vier-Pegellogikoperation)
zum Speichern eines 2-Bit-Datenwortes
in einer nicht-flüchtigen
Speicherzelle in einem Flash-EEPROM vom NICHT-UND-Typ.
-
Der
Seitenpuffer ist mit einer Verriegelungsschaltung bzw. einem Latch 1 verbunden
an einen Daten-Eingabe-/Ausgabe-Anschluss
I/O über
einen Dateneingabe/Ausgabepuffer 50a und ein Latch 2, das
nicht direkt mit dem Puffer 50 verbunden ist.
-
An
einer Bitleitung BLs, die das Latch 1 und eine Flash-Speicherzelle 5 verbindet,
sind Transfertransistoren 42 und 62 vorgesehen.
An einer Bitleitung BLo, die das Latch 2 und eine andere Flash-Speicherzelle 5 verbindet,
sind Transfertransistoren 30 und 61 vorgesehen.
-
Transfertransistoren 70 und 71 und 80 und 81 sind
an einer Leitung vorgesehen, die Vdd führt bzw. einer Leitung, die
Vss führt.
-
Ferner
sind Transfertransistoren 63 und 64 zum Transferieren
eines Voraufladepotential VA und eines Schutzpotentials VB jeweils
zu den Bitleitungen BLs bzw. BLo.
-
Die
beiden Bitleitungen BLs und BLo werden selektiv mit dem Seitenpuffer
verbunden oder benutzen ihn gemeinsam bzw. teilen ihn.
-
Ein
solcher Seitenpuffer ist in "A
Multipage Cell Architecture for High-Speed Programming Multilevel
NAND Flash Memories",
IEEE J. Solid-State Circuit Circuits, Bd. 33, Seiten 1228 bis 1238,
August 1998, von K. Takeuchi et al., offenbart.
-
Zwei
Bit pro Zelle sind realisiert, wie in 43A dargestellt,
in der ein Zusammenhang zwischen einer Schwellwertpegelverteilung
der Speicherzellen und 2-Bit-Logikdaten
definiert ist für
die Zuordnung der ersten und zweiten Bits zu unterschiedlichen Zeilenadressen,
hierdurch die Programmierung und Wiedergewinnung von Vier-Pegel-Daten
zu und von einer Speicherzelle erreichend. Die ersten und zweiten
Bits sind jeweils Ober- und Unterbits der beiden Bits, wie z.B. "1" bzw. "0" von "10".
-
Beim
Programmieren des zweiten Bitdatums wird ein zu programmierendes
und der zweiten Mehrpegelzeilenadresse entsprechendes Datum in das Latch 1 über den
Dateneingabe/Ausgabepuffer 50 geladen.
-
Wenn
das zu programmierende Datum "0" ist, wird die Programmierung
von einem "11"-Zustand zu einem "10"-Zustand in 43A durchgeführt.
Andererseits, wenn das zu programmierende Datum "1" ist,
wird das Programmieren verhindert, so dass der "11"-Zustand
unverändert
beibehalten wird.
-
Beim
Programmieren des ersten Bitdatums, wie in 44 gezeigt,
wird das zu programmierende und der ersten Mehrpegelzeilenadresse
entsprechende Datum in das Latch 1 über den Dateneingabe/Ausgabepuffer 50 geladen,
während
das zweite Bit-Datum, das in der Speicherzelle 5 gespeichert worden
ist, in das Latch 2 geladen wird.
-
Wenn
das zu programmierende Datum "0" ist, wird die Programmierung
durchgeführt
aus dem "11"-Zustand in einen "01"-Zustand in 43A, wenn das in dem Latch 2 gespeicherte
zweite Bit-Datum "1" ist, wohingegen
vom "10"-Zustand zu einem "00"-Zustand
in 43A, wenn das in dem Latch 2 gespeicherte
zweite Bitdatum "0" ist.
-
Andererseits,
wenn das in dem Latch 1 gespeicherte erste Bitdatum "1" ist, wird die Programmierung verhindert,
so dass der Schwellwertpegel des zweiten Bits beibehalten wird wie
er ist und sowohl der "11"- als auch der "10"-Zustand unverändert beibehalten
werden.
-
In
dieser bekannten Struktur wird ein 2-Bit-Logikdatum in einer nicht-flüchtigen
Speicherzelle gespeichert, in der das erste Bitdatum jeweils als
Datum für
die erste und zweiten Zeilenadresse behandelt werden, oder zwei
Adressen (die erste und die zweiten Zeilenadresse) werden für eine Speicherzelle
zugeordnet.
-
Beim
Wiedergewinnen wird eine Wortleitungsauswahlspannung eingestellt
in der Reihenfolge von Vr00, Vr01 und Vr10, wie in 43A gezeigt.
-
Daten
auf den Spannungen Vr00 und Vr01 werden jeweils in die Latchs 1 und 2 geladen.
Daten auf der Spannung Vr10 werden in das Latch 1 geladen,
so dass, nachdem die Bitleitung entladen worden ist, sie wieder
aufgeladen wird oder wieder entladen mit den Daten in den Latchs 1 und 2 zum
logischen Übereinstimmen.
-
Oben
ist ein Beispiel einer Mehrpegellogikoperation offenbart worden.
Ein Seitenpuffer für
eine solche Operation erfordert jedoch mindestens zwei Latchs.
-
Nicht
nur hohe Kapazität
für Mehrpegellogikoperation
ist erforderlich, sondern auch ein Fortentwickeln der Programmier-
und Wiedergewinnungsgeschwindigkeit für Flash-EEPROMs, wie beispielsweise in 45A dargestellt.
-
In 45A ist eine Speicherzelle 100 aufgeteilt
in Zellen 100a und 100b. Nach dem Datenladen für zwei Seiten,
werden die Daten in die Zellen 100a und 100b simultan
programmiert zum Verbessern der Programmiereinheit für höhere wirksame
Programmiergeschwindigkeit. Die Programmiereinheit wird auf vier
Seiten verbessert, acht Seiten usw. durch Aufteilen der Speicherzellen
in ein 4-geteiltes Array, 8-geteiltes Array für fernere höhere effektive Programmiergeschwindigkeit.
-
Eine
Erhöhung
der Zahl von Zellenarrayaufteilung erfordert jedoch eine lange Zeit
zum Laden von Daten für
jede Erhöhung
in der zu programmierenden Dateneinheit. Beispielsweise dauert das
Laden von 1-Seiten-(512 Bytes) und 4-Seiten-Daten bei 1-Byte-Dateneingangszyklus
von 50 ns etwa 25 μs bzw.
100 μs.
Ein Programmieren erfordert etwa 200 μs.
-
Die
wirksame Programmiergeschwindigkeit wird verbessert mit einer Vierfach-Simultanprogrammiereinheit,
andererseits muss die nächstfolgende 4-Seitenprogrammierung
warten für
etwa 100 μs,
die 4-Seitendatenladen entsprechen.
-
Darüber hinaus
erfordert die Erhöhung
der Zahl von Zellenarrayaufteilung einen großen Chip und verursache hohen
Energieverbrauch.
-
Wie
oben diskutiert, werden höhere
Kapazität
und auch höhere
Programmiergeschwindigkeit für Flash-EEPROMs
erwartet.
-
Eine
Programmierzeit im Mehrpegelbetrieb ist einige Male länger als
die im Zweipegelbetrieb zum Speichern von 1-Bit-Daten in eine nicht-flüchtige Speicherzelle.
Im Mehrpegelbetrieb dauert die Programmierzeit viel länger als
eine Datenladezeit, demnach dient eine Erhöhung der zu programmierenden Datenmenge
auf einmal zur Zellenarrayaufteilung einer Anhebung einer wirksamen
Programmiergeschwindigkeit.
-
Eine
Anhebung der wirksamen Programmiergeschwindigkeit nur durch Zellenarrayaufteilung erfordert
eine lange Datenladezeit im Zwei-Pegelbetrieb und ist demnach ineffizient.
-
US 5,748,536 offenbart einen
nichtflüchtigen Speicher
gemäß dem Oberbegriff
des Anspruchs 1.
-
RESÜMEE DER
ERFINDUNG
-
Die
vorliegende Erfindung stellt eine nicht-flüchtige Halbleitereinrichtung
nach Anspruch 1 bereit.
-
Darüber hinaus
wird eine nicht-flüchtige Speichereinrichtung
beschrieben, die umfasst: ein Speicherzellenarray mit nichtflüchtigen
Speicherzellen, wobei Daten in einer ausgewählten nicht-flüchtigen
Speicherzelle in Übereinstimmung
mit dem Vorliegen eines durch die ausgewählte Zelle fließenden Stroms
oder eines Strompegels gespeichert werden; und eine Leseverstärkerschaltung
zum Wiedergewinnen der Daten auf ausgewählten Bitleitungen, wobei die
Leseverstärkerschaltung
einschließt:
einen mit der ausgewählten
Bitleitung über
einen Klemmtransistor verbundenen Leseknoten; eine Voraufladeschaltung
zum Voraufladen der Bitleitung über
den mit dem Leseknoten verbundenen Klemmtransistor; einen mit einem
Eingangsanschluss an den Leseknoten über einen Transfertransistor
verbundenen Invertierer; und einen Anhebungs- bzw. Boost-Kondensator,
von dem ein Anschluss mit dem Leseknoten verbunden ist, wobei der
Kondensator ein Potential an dem Leseknoten unter Verwendung des
anderen Anschlusses als Antriebsanschluss anhebt.
-
Der
Boost-Kondensator steuert das Potential am Leseknoten, während Daten
auf einer Bitleitung gelesen werden, hierdurch Zwei-Pege-Daten "HIGH" bzw. HOCH-Pegel
und "LOW" bzw. Niedrig-Pegel, die
am Leseknoten wiedergewonnen werden in Bezug auf den Schwellwert
des Leseverstärkers
präzise abstimmend
zum Erreichen eines weiten Lesespielraums.
-
Die
Leseverstärkerschaltung
kann folgendermaßen
Bitleitungsdatenlesen mit Leseknotenpotentialanhebung durch den
Boost-Kondensator durchführen:
(a) Voraufladen der Bitleitung durch die Voraufladungsschaltung
während
der Klemmtransistor EIN-geschaltet ist, (b) kontinuierliches Voraufladen
des Leseknotens während
der Klemmtransistor AUS-geschaltet
ist und die Voraufladeschaltung EIN-geschaltet ist während dem
ein Potential an der voraufgeladenen Bitleitung variiert wird in Übereinstimmung
mit in einer ausgewählten nicht-flüchtigen Speicherzelle
gespeichertem Datenwert, (c) AUS-schalten der Voraufladeschaltung
zum Antreiben des Boost-Kondensators
während
des Anlegens eines ersten Potential an den Antriebsanschluss zum Anheben
des Potentials am Leseknoten, und (d) Anlegen einer Wiedergewinnungsspannung
an ein Gate des Klemmtransistors zum Transferieren der Daten auf
der Bitleitung zum Leseknoten. Nach (d) wird vorgezogen, (e) die
Wiedergewinnungsspannung abzusenken aber höher als ein Schwellwertpegel
des Klemmtransistors und dann das Anheben des Leseknotens durch
Anlegen eines zweiten Potentials zu beenden zum Antreiben des Anschlusses
des Boost-Kondensators, wobei das zweite Potential niedriger ist
als das erste Potential.
-
Diese
sequentiellen Leseoperationen mit Potentialanhebung erzielen genaue
Datenbeurteilung ohne Relation zu Variation im Leseverstärker-Schwellwertpegel
durch Absenken des Datenpegels "LOW", der beim Lesen
wiederhergestellt bzw. wiedergewonnen ist, wenn er nicht ausreichend
niedrig ist bedingt durch hohen Einschaltwiderstand einer ausgewählten Speicherzelle.
Zudem verhindert das Absenken einer Wiedergewinnungsspannung am Klemmtransistor
nach dem Datentransfer, dass das Potential am Leseknoten einen negativen
Pegel erhält
als ein Ergebnis der Potentialanhebung zum Wiedergewinnen eines
ursprünglich
ausreichend niedrigen Pegels "LOW".
-
Darüber hinaus
wird eine nicht-flüchtige Halbleitereinrichtung
beschrieben, die umfasst: ein Speicherzellenarray mit nicht-flüchtigen
Speicherzellen, wobei ein Datenwert in einer ausgewählten nicht-flüchtige Speicherzelle
in Übereinstimmung
mit dem Vorliegen eines durch die ausgewählte Zelle fließenden Stroms
oder eines Strompegels gespeichert werden; und eine Leseverstärkerschaltung
zum Wiedergewinnen bzw. Wiederherstellen der Daten auf ausgewählten Bitleitungen,
wobei die Leseverstärkerschaltung
einschließt:
einen mit der ausgewählten Bitleitung über einen
Klemmtransistor verbundenen Leseknoten; eine Voraufladeschaltung
zum Voraufladen der Bitleitung über
den mit dem Leseknoten verbundenen Klemmtransistor; einen Lesetransistor, dessen
Source-Anschluss mit einem Referenzpotential versorgt wird; ein
Latch mit einem an einem Drain-Anschluss des Lesetransistors über einen Transfertransistor
verbundenen Datenknoten; und einen Boost-Kondensator, von dem ein
Anschluss mit dem Leseknoten verbunden ist, wobei der Kondensator
ein Potential am Leseknoten unter Verwendung des anderen Anschlusses
als Antriebsanschluss anhebt.
-
Die
Leseverstärkerschaltung
mit dem zwischen den Latchs vorgesehenen Lesetransistor und dem
Leseknoten und verbunden zum Leseknoten, ist mit dem Boost-Kondensator
versehen, der auch mit dem Leseknoten verbunden ist. Der Boost-Kondensator
steuert das Potential am Leseknoten während des Bitleitungsdatenlesens,
hierdurch einen weiten Lesespielraum erreichend. Die Leseoperation
kann ausgeführt
werden mit sequentiellen Leseoperationen (a) bis (d) oder (a) bis
(e), wie oben offenbart.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
Es
zeigt:
-
1 ein
Blockdiagramm der ersten bevorzugten Ausführungsform eines EEPROM vom NICHT-UND-Typ
gemäß der vorliegenden
Erfindung;
-
2 ein
Schaltungsdiagramm eines Seitenpuffers (eine Neuprogrammierungs-
und Wiedergewinnungsschaltung) in der ersten Ausführungsform;
-
3 die
Verbindung zwischen dem Seitenpuffer und dem Speicherzellenarray
in der ersten Ausführungsform;
-
4 Datentransfer,
der durch den Seitenpuffer in der ersten Ausführungsform durchgeführt wird;
-
5 Programmieren
und Wiedergewinnen, ausgeführt
durch den Seitenpuffer in der ersten Ausführungsform;
-
6 Wiederaufladen
beim Wiedergewinnen für
Programmierverifizierung, durchgeführt durch den Seitenpuffer
in der ersten Ausführungsform;
-
7 internes
Datenladen im Mehrpegelbetriebsmodus und Bitleitungsvoraufladen
bei Verifizieren00, durchgeführt
durch den Seitenpuffer in der ersten Ausführungsform;
-
8 zweite
Wiedergewinnung im Mehrpegelbetriebsmodus, durchgeführt durch
den Seitenpuffer in der ersten Ausführungsform;
-
9A ein Flussdiagramm der Datenprogrammierung des
zweiten Bits im Mehrpegelbetrieb in der ersten Ausführungsform;
-
9B ein Flussdiagramm der Datenprogrammierung des
ersten Bits im Mehrpegelbetrieb in der ersten Ausführungsform;
-
10A die Zeitabstimmung bzw. Timing des Datentransfers
vom zweiten Latch 2a zum ersten Latch 1a in der
ersten Ausführungsform;
-
10B die Zeitabstimmung bzw. Timing des Datentransfers
vom ersten Latch 1a zum zweiten Latch 2a in der
ersten Ausführungsform;
-
11 das Timing der Programmierimpulsanwendung,
in der die Volllinie "0"-Programmierung in
einer "1"-programmierte Zelle in der ersten Ausführungsform
angibt;
-
12A das Löschen
der Speicherzelle in der ersten Ausführungsform;
-
12B das Programmieren in der Speicherzelle in
der ersten Ausführungsform;
-
13 das Timing der Wiedergewinnung "Verifizieren10" zur Programmierverifikation,
bei der die Volllinie einen Programmierfehler bei der "10"-Programmierung in
einer "11"-programmierte Zelle
in der ersten Ausführungsform
angibt;
-
14 eine Programmierspannungswellenform auf einer
ausgewählten
Wortleitung in der ersten Ausführungsform;
-
15A Datentransfer vom zweiten Latch 2a zum
ersten Latch 1a in der ersten Ausführungsform;
-
15B internes Datenladen in der ersten Ausführungsform;
-
16 Timing des internen Datenladens, bei dem die
Volllinie das Wiedergewinnen von einer "11"-programmierten Zelle
in der ersten Ausführungsform
zeigt;
-
17 das Timing des Wiedergewinnens "Verifizieren00" zur Programmverifikation,
in welcher die Volllinie den Programmierfehler bei "0"-Programmierung des ersten (Ober-)Bit
angibt, bei der eine "00"-programierte Zelle
mit "00" programmiert wird
in der ersten Ausführungsform;
-
18 das Timing der Wiedergewinnung "Verifizieren01" zur Programmierungsverifikation,
in welcher die Volllinie einen Programmierfehler bei der "0"-Programmierung
des ersten (Ober-)Bit anzeigt, bei welcher "11"-gespeicherte
Zellen programmiert werden mit "01" in der ersten Ausführungsform;
-
19A ein Flussdiagramm der Datenwiedergewinnung
des zweiten Bit in dem Mehrpegelbetrieb der ersten Ausführungsform;
-
19B ein Flussdiagramm der Datenwiedergewinnung
des ersten Bit in dem Mehrpegelbetrieb in der ersten Ausführungsform;
-
20 das Timing der Wiedergewinnung "Lesen00", in der die Volllinie
das Wiedergewinnen von "10"- oder "11"-programmierten Zellen
in der ersten Ausführungsform
zeigt;
-
21 das Timing der Wiedergewinnung "Lesen01", in der die Volllinie
das Wiedergewinnen von "00"-, "10"- oder "11"-programmierter
Zelle in der ersten Ausführungsform
zeigt;
-
22 das Timing der Wiedergewinnung "Lesen10", in der die Volllinie
das Wiedergewinnen von "01"- programmierter Zelle in der ersten Ausführungsform
zeigt;
-
23 den Datenwert und den Schwellwertpegel in einer
1-Bit-Zelle im Zwei-Pegel-Betrieb;
-
24A das Wiedergewinnen aus einem Speicherzellenarray
unter Verwendung des Cache-Speichers in der ersten Ausführungsform;
-
24B das Wiedergewinnen aus einem Zwei-Speicherzellen-Array unter Verwendung
des Cache-Speichers in der ersten Ausführungsform;
-
25A das Programmieren unter Verwendung des Cache-Speichers in der
ersten Ausführungsform;
-
25B das Programmieren eines Zwei-Speicherzellen-Arrays
(doppelte Seitenkapazität)
unter Verwendung des Cache-Speichers in der ersten Ausführungsform;
-
25C das Programmieren eines Speicherzellenarrays
unter Verwendung des Cache-Speichers in der ersten Ausführungsform;
-
26 das Timing des Datentransfers mit dem Rücksetzen
des Latch(2a) in der zweiten Ausführungsform;
-
27 das Programmieren unter Verwendung des Cache-Speichers in der
zweiten bevorzugten-Ausführungsform
des Flash-EEPROMs vom NICHT-UND-Typ gemäß der vorliegenden Erfindung;
-
28A den Datentransfer unter Verwendung des Cache-Speichers im Mehrpegelbetrieb;
-
28B den Datentransfer unter Verwendung des Cache-Speichers im Mehrpegelbetrieb;
-
29 die Programmierung unter Verwendung des Cache-Speichers im Mehrpegelbetrieb;
-
30 ein Schaltungsdiagramm eines Seitenpuffers
(einer Neuprogrammierungs- und Wiedergewinnungsschaltung) in der
vierten bevorzugten Ausführungsform
des Flash-EEPROMs vom NICHT-UND-Typ gemäß der vorliegenden Erfindung;
-
31A Signalwellenformen in bekanntem Testmodus;
-
31B Signalwellenformen im Testmodus (Zellenstrommessung
während
des Programmierens) in der fünften
bevorzugten Ausführungsform des
Flash-EEPROM vom NICHT-UND-Typ gemäß der vorliegenden Erfindung;
-
32 eine Potentialänderung bei der "0"-Programmierung bei dem zweiten (Unter-)Bit,
in welcher "11"-gespeicherte Zellen programmiert werden
mit "10", dasselbe für 1-Bit-gespeicherte
Zellen in der ersten Ausführungsform;
-
33 eine Potentialänderung bei der "1"-Programmierung bei dem zweiten (Unter-)Bit,
in welcher "11"-gespeicherte Zellen programmiert werden
mit "11", dasselbe für 1-Bit-gespeicherte
Zellen in der ersten Ausführungsform;
-
34 eine Potentialänderung bei der "0"-Programmierung bei dem ersten (Ober-)Bit,
in welcher "11"- gespeicherte Zellen programmiert werden
mit "01", in der ersten Ausführungsform;
-
35 eine Potentialänderung bei der "0"-Programmierung bei dem ersten (Ober-)Bit,
in welcher "10"-gespeicherte Zellen programmiert werden
mit "00", in der ersten Ausführungsform;
-
36 eine Potentialänderung bei der "1"-Programmierung bei dem ersten (Ober-)Bit,
in welcher "11"-gespeicherte Zellen programmiert werden
mit "11", in der ersten Ausführungsform;
-
37 eine Potentialänderung bei der "1"-Programmierung bei dem ersten (Ober-)Bit,
in welcher "10"-gespeicherte Zellen programmiert werden
mit "10", in der ersten Ausführungsform;
-
38 eine Potentialänderung bei der ersten (Ober-)Bit-Wiedergewinnung im
Mehrpegelbetrieb (in welchem der Pegel einer ausgewählten Wortleitung
Vr0 ist und nicht Vr00 für
Zwei-Pegel-Operation mit dem zweiten Latch 2a als Cache-Speicher)
in der ersten Ausführungsform;
-
39 eine Potentialänderung bei der erstmaligen
2.-(Unter-)Bit-Wiedergewinnung
im Mehrpegelbetrieb in der ersten Ausführungsform;
-
40 eine Potentialänderung bei der zweiten 2.-(Unter-)Bit-Wiedergewinnung,
wenn der Knoten N1 auf "HIGH" bzw. HOCH-Pegel
liegt in der erstmaligen Wiedergewinnung im Mehrpegelbetrieb in der
ersten Ausführungsform;
-
41 eine Potentialänderung bei der zweiten 2.-(Unter-)Bit-Wiedergewinnung,
wenn der Knoten N1 auf "LOW" bzw. NIEDRIG-Pegel
liegt in der erstmaligen Wiedergewinnung im Mehrpegelbetrieb in
der ersten Ausführungsform;
-
42 einen bekannten Flash-Speicher;
-
43A Daten- und Schwellwertpegelverteilung;
-
43B Daten- und Schwellwertpegelverteilung bei
der vorliegenden Erfindung;
-
44 bekanntes Datenladen im Mehrpegelbetrieb;
-
45A einen bekannten Zusammenhang zwischen Speicherzellenarray
und Seitenpuffer;
-
45B den Zusammenhang zwischen Speicherzellenarray
und Seitenpuffer in der vorliegenden Erfindung;
-
46 ein Schaltungsdiagramm eines Seitenpuffers
(einer Neuprogrammierungs- und Wiedergewinnungsschaltung) in der
sechsten Ausführungsform
eines Flash-EEPROM vom NICHT-UND-Typ gemäß der vorliegenden Erfindung;
-
47A ein Flussdiagramm der Zweites-Bit-Daten-Wiedergewinnung im
Mehrpegelbetrieb in der sechsten Ausführungsform;
-
47B ein Flussdiagramm der Erstes-Bit-Daten-Wiedergewinnung im
Mehrpegelbetrieb in der sechsten Ausführungsform;
-
48 eine Potentialänderung bei der "0"-Programmierung zu dem zweiten (Unter-)Bit,
in welchem "11"-gespeicherte Zellen programmiert werden
mit "10" (dasselbe für Ein-Bit-Zelle)
im Mehrpegelbetrieb in der sechsten Ausführungsform;
-
49 eine Potentialänderung in der "1"-Programmierung zu dem zweiten (Unter-)Bit,
in welcher "11"-gespeicherte Zellen programmiert werden
mit "11" (Programmierverhinderung,
dasselbe für 1-Bit-Zelle)
im Mehrpegelbetrieb in der sechsten Ausführungsform;
-
50 eine Potentialänderung im internen Datenladen
im Mehrpegelbetrieb in der sechsten Ausführungsform;
-
51 eine Potentialänderung in der "0"-Programmierung des ersten Bits, in
welcher "11"-gespeicherte Zellen
programmiert werden mit "01" im Mehrpegelbetrieb;
-
52 eine Potentialänderung in der "0"-Programmierung zu dem ersten (Ober-)Bit,
in welcher "10"-gespeicherte Zellen
programmiert werden mit "00" Mehrpegelbetrieb
in der sechsten Ausführungsform,
in welcher das Zeichen "⫾ ¦" anzeigt, das Zellen,
die beim "Verifizieren00" nicht erfolgreich waren
bzw. durchgefallen sind, beim "Verifizieren01" ebenfalls nicht
erfolgreich sein werden;
-
53 eine Potentialänderung in der "1"-Programmierung zu dem ersten (Ober-)Bit,
bei der "11"-gespeicherte Zellen
programmiert werden mit "11" im Mehrpegelbetrieb
in der sechsten Ausführungsform,
in welcher das Zeichen "⫾ ¦" anzeigt, dass eine ausgewählte Bitleitung
entladen werden wird durch die "11"-programmierte Zelle;
-
54 eine Potentialänderung bei der "1"-Programmierung zu dem ersten (Ober-)
Bit, in welcher "10"-gespeicherte Zellen programmiert werden
mit "10" im Mehrpegelbetrieb
in der sechsten Ausführungsform,
in welcher das Zeichen "⫾ ¦" anzeigt, dass eine
ausgewählte
Bitleitung entladen wird durch eine "11"-programmierte
Zelle;
-
55 eine Potentialänderung in der ersten (Ober-)Bit-Wiedergewinnung im
Mehrpegelbetrieb (in welcher der Pegel einer ausgewählten Wortleitung Vr0
und nicht Vr00 ist für
Zwei-Pegel-Betrieb mit dem zweiten Latch 2a als Cache-Speicher)
in der sechsten Ausführungsform;
-
56 eine Potentialänderung in der erstmaligen,
2.-(Unter-)Bit-Wiedergewinnung
im Mehrpegelbetrieb in der sechsten Ausführungsform;
-
57 eine Potentialänderung in der zweiten 2.-(Unter)-Bit-Wiedergewinnung,
wenn der Knoten N1 auf "LOW" bzw. NIEDRIG-Pegel
liegt für "11"-programmierte Zellen
in der erstmaligen Wiedergewinnung im Mehrpegelbetrieb in der sechsten
Ausführungsform;
-
58 eine Potentialänderung in der zweiten zeit-zweiten
(Unter-)Bit-Wiedergewinnung, wenn der Knoten N1 auf "HIGH"- bzw. HOCH-Pegel
liegt für "10", "00"- oder "01"-programmierte Zellen
in der erstmaligen Wiedergewinnung in dem Mehrpegelbetrieb in der
sechsten Ausführungsform;
-
59 Signalwellenformen bei der Daten-Wiedergewinnung;
-
60 ein Schaltungsdiagramm der ersten Modifikation
des Leseverstärkers
gemäß der vorliegenden
Erfindung;
-
61 ein Blockdiagramm eines Flash-EEPROM unter
Verwendung des in 60 gezeigten Verstärkers;
-
62 Signalwellenformen in dem in 60 gezeigten Leseverstärker;
-
63 ein Schaltungsdiagramm der zweiten Modifikation
des Leseverstärkers
gemäß der vorliegenden
Erfindung;
-
64 ein Schaltungsdiagramm der dritten Modifikation
des Leseverstärkers
gemäß der vorliegenden
Erfindung;
-
65 Signalwellenformen im in 64 gezeigten Leseverstärker;
-
66 ein Schaltungsdiagramm der vierten Modifikation
des Leseverstärkers
gemäß der vorliegenden
Erfindung;
-
67 Signalwellenformen im in 66 gezeigten Leseverstärker;
-
68 ein Schaltungsdiagramm der fünften Modifikation
des Leseverstärkers
gemäß der vorliegenden
Erfindung;
-
69 Signalwellenformen in dem in 68 gezeigten Leseverstärker; und
-
70A bis 70C Kondensatoren,
die verwendet werden in den vorangegangenen Modifikationen.
-
DETAILLIERTE
BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
Eines
der Konzepte der vorliegenden Erfindung ist es, eine lange Datenladezeit,
die für
bekannte EEPROMs benötigt
wird, zu maskieren, was durch das Verbessern der wirksamen Programmiergeschwindigkeit
nur durch Zellenarrayaufteilung bewirkt wird, wie diskutiert worden
ist.
-
Beispielsweise
verwendet die vorliegende Erfindung zwei Cache-Speicher, wie in 45B dargestellt, zum Maskieren einer solch langen
Datenladezeit.
-
45B zeigt Cache-Speicher (Datenregister) 140b1 und 140b2,
jeweils mit Seitenpuffern 140a1 und 140a2 verbunden,
zum Laden der nächsten
zu programmierenden Daten während
des Programmierens der vorangegangenen Daten.
-
Die
Cache-Speicher 140b1 und 140b2 können Funktionen
von Datentransfer zu und von dem Ein-/Ausgabeanschluss I/O haben,
während
die Seitenpuffer 140a1 und 140a2 Datenprogrammierung oder
-Wiedergewinnung durchführen,
stabiles Speichern von Daten und auch Datentransfer zu und von dem
Seitenpuffern 140a1 und 140a2.
-
Das
andere Konzept der vorliegenden Erfindung ist, Mehrpegelfunktion
für große Speicherkapazität zu realisieren.
-
Wie
in 42 gezeigt, werden zwei Latchs benötigt für jede Daten-Neuprogrammierungs-
und Wiedergewinnungsschaltung für
Mehrpegelfunktion.
-
Um
die Cache-Funktion als einen der Zwecke der vorliegenden Erfindung
zu realisieren, hat jede Daten-Neuprogrammierungs- und Wiedergewinnungsschaltung,
da ein Cache mit jedem Seitenpuffer verbunden ist, zwei Latchs.
Die vorliegende Erfindung stellt einen nicht-flüchtigen Speicher bereit einschließlich Daten-Neuprogrammierungs-
und Wiedergewinnungsschaltung, von denen jede zwei Latchs hat zum
Realisieren sowohl von Mehrpegel- als auch von Cache-Funktionen und ferner
große Speicherkapazität und Hochgeschwindigkeits-Neuprogrammierungs-
und Wiedergewinnungsperformance.
-
Einige
bevorzugte Ausführungsformen
zum Erhalten der in 45B gezeigten Grundstruktur
gemäß der vorliegenden
Erfindung werden unter Bezugnahme auf die beiliegenden Zeichnungen
beschrieben.
-
(Erste bevorzugte Ausführungsform)
-
1 ist
ein Blockdiagramm der ersten bevorzugten Ausführungsform eines Flash-EEPROM vom
NAND-Typ bzw. NICHT-UND-Typ
gemäß der vorliegenden
Erfindung.
-
Ein
Speicherzellenarray 100 ist mit NICHT-UND-Zelleneinheiten
NU0, NU1, NU2, ..., und NUn versehen, von denen jede eine Vielzahl
von (16 in 3) serienverbundenen elektrisch
löschbaren
programmierbaren nicht-flüchtigen
Speicherzellen MC0 bis MC15 hat mit einer Stapelgate-Struktur.
-
Für jede NICHT-UND-Zelleneinheit
NU ist das Drain mit einer Bitleitung BL über einen Gateauswahltransistor
SG1 verbunden und das Source ist mit einer gemeinsamen Sourceleitung
CELSRC über
einen Gateauswahltransistor SG2 verbunden.
-
Die
Steuergates der Speicherzellen MC, die in der Richtung von Zeilen
ausgerichtet sind, sind alle mit einer Wortleitung WL verbunden.
Die Gateelektroden der Gateauswahltransistoren SG1 und SG2 sind
jeweils mit Gateauswahlleitungen SGD und SGS verbunden, die parallel
zu den Wortleitungen WL vorgesehen sind.
-
Eine
Region von durch eine Wortleitung WL ausgewählten Speicherzellen entspricht
einer Seite, einer Einheit von Datenprogrammierung und -Wiedergewinnung.
Darüber
hinaus entspricht eine Region von NICHT-UND-Zelleinheiten NU einer
Seite oder ein ganzzahliges Vielfaches einer Seite ist ein Block,
eine Einheit des Datenlöschens.
-
Eine
Daten-Neuprogrammierungs- und Wiedergewinnungsschaltung 140 (nachstehend
Seitenpuffer genannt) ist mit einem Leseverstärker (SA) bzw. einem Latch
(DL) für
jede Bitleitung BL versehen zur seitenweisen Daten-Neuprogrammierung und
-Wiedergewinnung.
-
Ein
Speicherzellenarray 100 ist in 3 als einfache
Struktur gezeigt, in der der Datenpuffer geteilt benutzt werden
kann von einer Vielzahl von Bitleitungen BL, für die die Zahl der Bitleitungen
BL, die selektiv mit dem Seitenpuffer verbunden sind, zur Datenprogrammierung
bzw. -Wiedergewinnung, der Einheit einer Seite entsprechend.
-
3 stellt
die Region von Zellenarrays dar zu und von denen Datentransfer durchgeführt wird zwischen
einem Dateneingabe-/Ausgabe-Anschluss I/O.
-
In 1 sind
ein Zeilendekoder 120 und ein Spaltendekoder 150 vorgesehen
zum jeweiligen Auswählen
von Wortleitungen WL und Bitleitungen BL des Speicherzellenarrays 100.
Ein Controller 110 führt
Sequenzsteuerung von Datenprogrammierung, Wiedergewinnung und Löschung durch.
Ein von dem Controller 110 gesteuerter Spannungsbooster
bzw. Spannungsanheber 130 generiert angehobene hohe oder
mittlere Spannungen zur Datenprogrammierung, Wiedergewinnung und
Löschung.
-
Ein
Daten-Eingabe/Ausgabepuffer 50a wird zur Eingabe bzw. Ausgabe
von Daten- und Adresssignalen verwendet. Im Detail wird Datentransfer
zwischen den Eingabe/Ausgabeanschlüssen I/O0 bis I/O7 und der
Daten-Neuprogrammierungs- und Wiedergewinnungsschaltung 140 ausgeführt. Eine Adresssignaleingabe über Anschlüsse I/O
wird einmal gespeichert in einem Adressregister 180 und dann
zu den Zeilen- und Spaltendekodern 120 und 150 zum
Dekodieren gesendet.
-
Ein
Betriebssteuerbefehl wird auch über
die Anschlüsse
I/O eingegeben. Der Befehl wird von dem Daten-Eingabe/Ausgabepuffer 50a dekodiert
und in einem Befehlsregister 170 gespeichert zum Steuern des
Controllers 110.
-
Externe
Befehlssignale wie z.B. ein Chip-Bereitschafts- bzw. Chip-Enable-Schritt
CEB, ein Befehls-Latch-Enable-Signal CLE, ein Adress-Latch-Enable-Signal
AL, ein Programmier-Enable-Signal
WEB und ein Wiedergewinnungs-Enable-Signal REB werden an einen Betriebslogikcontroller 190 gesendet
zum Generieren von internen Steuersignalen entsprechend den Betriebsmodi.
Die internen Steuersignale werden zu dem Eingabe/Ausgabe-Datenpuffer 50a gesendet
zum Latchen von Daten, zum Transfer usw. und auch zu dem Controller 110 zur
Betriebssteuerung.
-
Ein
Bereit/Beschäftigt-Register 210 generiert ein
R/BB Signal, das anzeigt, ob der EEPROM-Chip in einem Bereitschaftszustand
ist oder in einem beschäftigen
Zustand (busy).
-
Der
Seitenpuffer 140 hat eine Mehrpegelfunktion und auch eine
Cache-Funktion, die beide geschaltet werden.
-
Der
Seitenpuffer 140 kann zu der Cache-Funktion geschaltet
werden zum Speichern von Ein-Bit-Zwei-Pegel-Daten zu einem Speicher
oder selbst wenn durch Adressen eingeschränkt. Oder, er wird umgeschaltet
zur Mehrpegelfunktion zum Speichern von Zwei-Bit-Vier-Pegel-Daten
zu einer Speicherzelle.
-
2 zeigt
ein Schaltungsdiagramm des Seitenpuffers 140 für die Mehrpegel-
und Cache-Funktionen.
-
In 2 sind
zwei Bitleitungen BLe und BL0 wahlweise mit dem Seitenpuffer 140 verbunden.
Im Detail schaltet ein Bit-Auswahlsignal
BLTRe oder BLTRo einen NMOS-Transistor 60 oder 61 ein
(Bitleitungsauswahltransistor) zum Verbinden entweder der Bitleitung
BLe oder BL0 mit dem Seitenpuffer 140.
-
Während eine
der Bitleitungen BLe oder BL0 ausgewählt wird, ist die andere Bitleitung
(die nicht ausgewählte)
gegen ein Bezugspotential Masse geschaltet oder an ein Vdd-Potential
geklemmt zum Unterdrücken
von zwischen zueinander benachbarten Bitleitungen generiertem Rauschen.
-
Der
Seitenpuffer 140 ist anwendbar auf EEPROMs, die befähigt sind
zur seriellen Eingabe/Ausgabe von 1-Seiten-Daten entsprechend einer
Zeilenadresse und zu einer Batch-Verarbeitung
für Datenprogrammierung
zu und Wiedergewinnung von Speicherzellen, und nicht nur Flash-Speicher
vom NICHT-UND-Typ
bzw. NAND-Typ. Eine enge Bitleitungsbeabstandung verursacht Schwierigkeiten
beim Schaltungs-Layout solcher EEPROMs, weil diese Speicher eine
feste Layout-Größe für die Datenprogrammierungs-
und Wiedergewinnungsschaltungen haben. Der Seitenpuffer 140,
der von einer Vielzahl von Bitleitungen geteilt wird, überwindet
solche Schwierigkeiten und erhöht die
Flexibilität
im Layout während
des Verringerns des Seitenpuffer-Layout-Bereichs.
-
Der
Seitenpuffer 140, der in 2 gezeigt ist,
wird mit einer Haupt-Neuprogrammierungs- und Wiedergewinnungsschaltung 10 ausgestattet
mit einem ersten Latch 1a. Der Seitenpuffer 140 schließt auch
ein zweites Latch 2a ein. Die Hauptschaltung 10 dient
hauptsächlich
der Datenprogrammierung. Das Latch 2a ist ein sekundäres Latch
für eine
Cache-Funktion im Zwei-Pegel-Betrieb. Wenn nicht als Cache arbeitend,
unterstützt
das Latch 2a die Hauptschaltung 10 beim Mehrpegelbetrieb.
-
Das
erste Latch 1a der Haupt-Neuprogrammierungs- und Wiedergewinnungsschaltung 10 hat CMOS-getaktete
Invertierer CI1 und CI2, wobei die Komponenten jedes Invertierers
in Serie geschaltet sind aber in umgekehrter Reihenfolge über die
beiden Invertierer.
-
Eine
Bitleitung BL für
das Speicherzellenarray ist mit dem Leseknoten N4 über einen NMOS-Transistor 41 (eine
Transferschalteinrichtung) verbunden. Der Leseknoten N4 ist mit
einem Datenlatchknoten N1 des Latchs 1a über einen NMOS-Transistor 42 (eine
Transferschalteinrichtung) verbunden. Auch ein Vor-Auflade-NMOS-Transistor 47 ist
mit dem Leseknoten N4 verbunden.
-
Der
Knoten N1 ist mit einem Knoten N3 verbunden zum temporären Speichern
von Daten beim Knoten N1 über
den NMOS-Transistor 45 (eine Transferschalteinrichtung).
Auch ein Vorauflade-NMOS-Transistor 46 und ein Kondensator 49 zum Klemmen
des Pegels am Knoten N3 sind mit dem Knoten N3 verbunden, wobei
ein Anschluss des Kondensators 49 gegen Masse geschaltet
ist.
-
Eine
gemeinsamen Signalleitung COM wird gemeinsam benutzt von Seitenpuffern 140,
jede für ein
Byte in einer Spalte. Die Leitung COM ist mit dem Leseknoten N4 über einen
NMOS-Transistor 44 (eine Transferschalteinrichtung)
verbunden, der durch ein Potential am Knoten N3 gesteuert wird und
auch einen NMOS-Transistor 43 (eine Transferschalteinrichtung),
der durch ein Steuersignal REG gesteuert wird. Die Leitung COM wird
als Signalleitung zum Führen
einer Versorgungsspannung Vdd zum selektiven Aufladen des Knotens
N4 verwendet und auch für
die Erfüllt/Verfehlt-Beurteilung
(die später
offenbart wird) in einem Programmier-/Lösch-Verifizierbetrieb.
-
Das
zweite Latch 2a hat getaktete Invertierer CI1a und CI2a,
wobei die Komponenten jedes Invertierers in Serie verbunden sind
aber in umgekehrter Reihenfolge über
die beiden Invertierer, ähnlich
dem ersten Latch 1a. Das Latch 2a hat zwei Datenknoten N5
und N6. Der Knoten N45 ist mit einer Datensignalleitung "io" über einen Spalten-Gate-NMOS-Transistor 51 verbunden.
Der Knoten N6 ist mit einer Datenleitung "ion" über einen
Spalten-Gate-NMOS-Transistor 52 verbunden. Die Transistoren 51 und 52 werden
von einem Spaltenauswahlsignal CSL gesteuert.
-
Ein
Vorauflade-PMOS-Transistor 82 ist mit dem Knoten N5 verbunden
zum Laden von Vdd zu dem Knoten N5. Der Knoten N5 ist ferner mit
dem Knoten N4 der Haupt-Neuprogrammierungs- und Wiedergewinnungsschaltung 10 über den NMOS-Transistor 30 (eine
Transferschalteinrichtung) verbunden.
-
In 3 dargestellt
ist die Verbindung zwischen dem Seitenpuffer 140 und dem
Daten-Eingabe/Ausgabepuffer 50a.
-
Das
Programmieren zu und das Wiedergewinnen von dem Flash-EEPROM vom NAND-Typ wird
für jede
512 Bytes für
eine Seite simultan ausgeführt,
die durch eine Zeilenadresse ausgewählt ist.
-
Die
Anzahl von einem der acht Daten-Eingabe/Ausgabe-Anschlüssen I/O zugeordneten Bits
ist 512, was in 3 dargestellt ist.
-
Wenn
das Zellenarray aufgeteilt wird in einige Arrays, wie in 45B (zwei in dieser Figur) gezeigt, entspricht
ein Abschnitt 140a mit dem ersten Latch 1a im
Seitenpuffer 140 einer Vielzahl von Seitenpuffern (zwei
Puffer 140a1 und 140a2 in 45B) und
ein Abschnitt 140b entspricht einer Vielzahl von Cache-Speichern
(zwei Caches 140b1 und 140b2 in 45B).
-
Eine
Programmieroperation erfordert 512 Seitenpuffer zur simultanen Programmierung
von 512-Bit-Daten, wobei jeder Datenwert einer Zeilenadresse entspricht.
Zeilenadressen werden dekodiert, um Signale CSL0 bis CSL511 zu sein
zum Auswählen
eines der 512 Seitenpuffer beim Datentransfer zwischen der Datensignalleitung "io" über den NMOS-Transistor 51 (eine
Spaltenauswahleinrichtung), wie in 2 gezeigt.
-
Die
Grundoperationen des Seitenpuffers 140 sind in 4 bis 8 gezeigt.
In diesen Figuren sind einige der Komponenten der 2 vereinfacht zum
leichteren Verständnis
der Betriebsabläufe.
-
Das
Programmieren von Daten in die Speicherzelle 100 (1)
beginnt mit dem Laden von zu programmierenden Daten zum zweiten
Latch 2a durch die Datenleitungen io und ion.
-
Ein
Programmierbetrieb erfordert die zu programmierenden Daten im ersten
Latch 1a, so dass die im zweiten Latch 2a gespeicherten
Daten zum ersten Latch 1a transferiert werden.
-
Andererseits
erfordert ein Wiedergewinnungsbetrieb einen wiedergewonnenen Datenwert im
zweiten Latch 2a zum Ausgeben zu den Daten-Eingabe/Ausgabe-Anschlüssen I/O,
so dass der in dem ersten Latch 1a gespeicherte Datenwert
zu dem zweiten Latch 2a transferiert wird.
-
Wie
in 4 gezeigt, werden die Schalteinrichtungen 42 und 30 (die
Transfertransistoren 42 und 30 in 2)
eingeschaltet zum Datentransfer zwischen den ersten und zweiten
Latchs 1a und 2a. Eines der Latchs 1a und 2a,
das einen Datenwert ausgenommen hat, wird deaktiviert vor dem Datentransfer
und dann aktiviert, um die Daten zu speichern.
-
In 5 ist
ein Datentransfer dargestellt, in welchem Daten zu der Speicherzelle 100 programmiert
werden und von ihr wiedergewonnen.
-
Mit
der Ausnahme eines Mehrpegelbetriebs führt die Haupt-Reprogrammierungs-
und Wiedergewinnungsschaltung 10 mit dem ersten Latch 1a die Programmierungs-/Wiedergewinnungs-Betriebssteuerung
durch. Im Detail wird die Schalteinrichtung 30 ausgeschaltet
während
die Schalteinrichtungen 41 und 42 eingeschaltet
werden zum Datentransfer zwischen dem ersten Latch 1a und
der Bitleitung BL der Speicherzelle 100.
-
6 zeigt,
dass die Schalteinrichtungen 42 und 43 (der NMOS-Transistor 43 in 2)
nur eingeschaltet werden während
der Wiedergewinnung für eine
Programmierverifizierungsoperation.
-
Dies
ist eine Verifizierungsoperation für jedes Bit in einem Programmierbetrieb.
Das Programmieren von "1" in einer Zelle in
einem "1"-Zustand (gelöschter Zustand)
wird verhindert, unabhängig
davon, wie häufig
das Programmieren ausgeführt wird, in
welchem eine ausgewählte
Bitleitung entladen wird beim Verifizieren zum Wiedergewinnen von
Daten "1", welches ein Programmierfehler
ist.
-
Programmieren
wird erfüllt
durch Entladen der Bitleitung BL und dann Einschalten der Schalteinrichtungen 42 und 43 vor
dem Neuaufladen eines logischen Hochpegels "HIGH" zum
ersten Latch 1a. Hier bedeutet "erfüllt" den Abschluss einer
Datenprogrammierung, während "verfehlt" die Unvollständigkeit
einer Datenprogrammierung bedeutet.
-
7 zeigt
einen Zustand in einem Mehrpegelbetriebsmodus-Programmierbetrieb.
-
Die
ersten und zweiten Latchs 1a und 2a können jeweils
temporär
ein zu programmierendes erstes Bitdatum bzw. ein zu programmierendes
zweites Datum zum Programmieren speichern. Zur Wiedergewinnung des
zweiten Bitdatums aus der Speicherzelle 100 wird die Schalteinrichtung 42 ausgeschaltet,
so dass das erste Latch 1a das erste Bitdatum speichert
und dann werden die Schalteinrichtung 41 und 30 eingeschaltet
zum Wiedergewinnen von Daten aus der Speicherzelle 100 zum
zweiten Latch 2a.
-
Die
Schalteinrichtungen 41 und 30 werden auch eingeschaltet
zum Voraufladen der Bitleitung BL von dem zweiten Latch 2a bei
der Wiedergewinnung zur Programmierverifizierung nach dem Anwenden
des Programmierimpulses während
des Programmierens.
-
8 stellt
einen Zustand in einem Wiedergewinnungsbetrieb dar, wenn die zweite
Mehrpegelzeilenadresse (später
erläutert)
in einem Mehrpegelbetriebsmodus ausgewählt ist. Die Schalteinrichtungen 42 und 43 werden
derart geschaltet, dass die gemeinsame Signalleitung COM gegen Masse
geschaltet ist zum Zwingen der Aktualisierung von Daten, die durch
die Bitleitung BL wiedergewonnen worden sind, wodurch Daten korrekt
wiedergewonnen werden können
in bezug auf den Zusammenhang zwischen einem Schwellwert Vt der
Speicherzelle 100 und 2-Bit-Daten, wie in 43B dargestellt.
-
Eine
Mehrpegellogikoperation in der ersten Ausführungsform wird detailliert
offenbart.
-
Die
erste Ausführungsform
führt eine
Mehrpegellogikoperation unter dem Zusammenhang zwischen einem Schwellwertpegel
Vt und der Speicherzelle 100 und 2-Bit-Daten aus, wie in 43B dargestellt.
-
Der
Vt-Datenzusammenhang in 43B unterscheidet
sich von dem in 43A. Dieselbe Tatsache in 43A und 43B ist,
dass die Oberbitdaten und die Unterbitdaten zu unterschiedlichen
Zeilenadressen korrespondieren. Im Detail werden nur im Mehrpegelbetrieb
zwei Adressen für
dieselbe auszuwählende
Zelle vorbereitet.
-
Zeilenadressen,
die den Ober- und Unterbits zugeordnet sind, werden erste Zeilenadresse
für Mehrpegelbetrieb
bzw. zweite Zeilenadresse für Mehrpegelbetrieb
genannt.
-
In 43B sind das erste (Ober-)Bit und das zweite (Unter-)Bit die jeweiligen
Daten bei Auswahl der ersten Zeilenadresse bzw. der zweiten Zeilenadresse
für Mehrpegelbetrieb.
Beispielsweise setzt sich der Datenwert "10" aus
dem ersten (Ober-)Bit "1" und dem zweiten
(Unter-)Bit "0" zusammen.
-
Zuerst
wird das Programmieren und Wiedergewinnen zur Programmierverifizierung
bei Auswahl der zweiten Zeilenadresse für Mehrpegelbetrieb offenbart.
-
9A ist ein Flussdiagramm eines Programmierbetriebs
bei Auswahl der zweiten Zeilenadresse für Mehrpegelbetrieb.
-
Ein
Datenwert, der bei Auswahl der zweiten Zeilenadresse für Mehrpegelbetrieb
zu programmieren ist, wird in das zweite Latch 2g (2)
geladen durch die Datensignalleitung io/ion (Schritt S11). Ein einer
Spaltenadresse entsprechender Datenwert wird ebenfalls in das zweit
Latch 2a geladen, während
512 Byte-Daten für
eine Seite seriell eingegeben werden.
-
Auf
Abschluss des Einseitendatenladens werden die Daten in dem zweiten
Latch 2a zum ersten Latch 1a transferiert (Schritt
S12), wie in 10A dargestellt.
-
In 2 werden
ein Potential BLCD am Gate des NMOS Schalttransistors 42 und
ein Potential BLCD2 am Gate des NMOS Schalttransistors 30 auf einen
Pegel "HIGH" gelegt zum Tragen
der Spannung Vdd zum Transferieren der Daten vom zweiten Latch 2a zum
ersten Latch 1a. In 10A wird
ein Datenwert "HIGH" im zweiten Latch
gespeichert nach dem Datenladen, wodurch der Knoten N5 auf den Pegel "HIGH" (VDD) gesetzt wird.
-
Ein
Programmierbetrieb beginnt nach dem oben beschriebenen Datentransfer
(Schritt S13).
-
In 11 ist ein Beispiel der Zeitabstimmung bzw. des
Timings in der Programmierimpulsanwendung dargestellt.
-
In 2 wird
ein zu programmierender Datenwert im ersten Latch 1a zu
einer ausgewählten Bitleitung über die
NMOS-Transistoren 42 und 41 transferiert
und den Bitleitungsauswahltransistor 60. Eine Spannung,
die hoch genug ist zum Transferieren von Vdd zur Bitleitung BLe
wird den Gates der Transistoren, die zwischen dem ersten Latch 1a und der
Bitleitung BLe angeordnet sind, zugeführt. In diesem Beispiel ist
die Bitleitung BLe, eine der beiden Bitleitungen BLo und BLe, die
den Einseitenpuffer 140 gemeinsam benutzen, ausgewählt worden,
die dieselbe ist für
die folgende Offenbarung.
-
Der
Pegel "HIGH" am Knoten N1, einem
der Anschlüsse
des ersten Latchs 1a, ermöglicht das Transferieren des
Pegels "HIGH" zur Bitleitung BLe, so
dass eine ausgewählte
Zelle in einen Programmierverhinderungszustand gebracht wird, in
welchem der Datenwert "1" programmiert worden
ist.
-
Andererseits
bringt der niedrige logische Pegel "LOW" am
Knoten N1 die ausgewählte
Zelle in einen Zustand, in dem der Datenwert "0" programmiert worden
ist.
-
In 11 wird der Pegel "LOW" zu
der ausgewählten
Bitleitung BLe transferiert, wie durch die Volllinie angezeigt,
zum Programmieren des Datenwertes "0" in
eine "11"-programmierte Zelle,
so dass "10" in der Zelle programmiert
wird.
-
Das
Flash EEPROM vom NAND-Typ liegt auf einem negativen Schwellwertpegel
Vt, wie im in 43B dargestellten "11"-programmierten Zustand, in einem gelöschten Zustand
vor dem Programmieren.
-
In
einer Löschoperation,
wie in 12A dargestellt, werden Elektronen
aus einem Floating-Gate bzw. schwebenden Gate 511 einer
Speicherzelle bei 0 V gezogen für
alle Wortleitungen 510 eines ausgewählten Blocks und eine positive
hohe Löschspannung
(etwa 20 V) für
eine p-Quelle 513 der Speicherzelle und in einem Zustand,
dass ein Source/Drain 512 der Speicherzelle schwebend ist.
-
In
einem Programmierimpulsanwendebetrieb, wie in 12B dargestellt, wird eine ausgewählte Wortleitung 510 auf
eine positiv hohe Programmierspannung Vpgm (15 bis 20 V) gelegt
während
die P-Quelle 513 gegen Masse auf 0 V geschaltet wird, so
dass Elektronen in das Floating-Gate 511 injiziert werden.
-
Elektronen
werden in das Floating-Gate 511 injiziert während 0
V transferiert wird vom ersten Latch 1a zur Bitleitung
BLe, bedingt durch die Tatsache, dass eine ausreichende Potentialdifferenz
zum Programmieren auftritt zwischen dem Kanal und dem Floating-Gate 511 der
Speicherzelle. Eine solche Potentialdifferenz tritt auf, wenn 0
V zu einer N-Diffusionsschicht 512 über die
Bitleitung, die bitleitungsseitigen Auswahltransistoren und auch
nicht ausgewählte
Zellen in der NAND-Zelleneinheit transferiert wird.
-
Andererseits
werden keine Elektronen injiziert in das Floating-Gate 511,
während
der Pegel "HIGH" transferiert wird
zum Bilden eines ersten Latch 1a zur ausgewählten Bitleitung
BLe bedingt durch eine geringe Potentialdifferenz zwischen dem Kanal
und dem Floating-Gate 511 veranlasst durch ein hohes Kanalpotential
einer ausgewählten
Speicherzelle.
-
Ein
Zwischenpotential Vpass (etwa 8 V) ist den Wortleitungen von nicht
ausgewählten
Speicherzellen zugeführt
worden zum Anheben des Kanalpotentials für einen Zustand, in dem die
nicht ausgewählten
Zellen nicht programmiert werden können. Das Potential Vpass ist
nicht ausgewählten
Wortleitungen der NAND-Zelleneinheit zugeführt worden, in welcher einige
Wortleitungen ausgewählt
worden sind.
-
In 9A wird die Wiedergewinnung zur Programmverifizierung
VERIFIZIEREN10 ausgeführt nach
dem Anlegen des Programmierimpulses (Schritt S14), das Timing ist
in 13 gezeigt. Das Wiedergewinnen VERIFIZIEREN10
wird bei einem Potential Vv10 (43B)
ausgeführt
für ausgewählte Wortleitungen.
Eine "erfüllt"-Spannung Vread wird nicht
ausgewählten
Wortleitungen in derselben NAND-Zelleneinheit zugeführt, um
es nicht ausgewählten
Zellen zu ermöglichen,
nur zur Beurteilung, ob die zu ausgewählten Wortleitungen verbundenen Speicherzellen
eingeschaltet worden sind oder aus, "Erfüllt"-Transistoren zu
sein.
-
Während einer
Bitleitungs-Voraufladeperiode von einem Moment R4 bis R7 (13) werden in 2 die
NMOS-Transistoren 47 und 41 und der Bitauswahltransistor 60 eingeschaltet
zum Voraufladen der Bitleitung BLe. Im Detail wird eine Spannung Vpre
dem Gate des NMOS-Transistors 41 zugeführt, während eine Spannung (Vpre – Vt), die
niedriger ist als Vdd, zur Bitleitung BLe voraufgeladen wird (Vt: eine
Schwellwertspannung).
-
Zu
dem Moment R7 (13) wird ein Source-seitiger
Auswahltransistor SG (3) einer NAND-Zelleneinheit
NU eingeschaltet, um Entladen von der Bitleitung BLE in Übereinstimmung
mit einem Zustand des Schwellwertpegels Vt der ausgewählten Zelle
zu starten.
-
Im
Detail werden ausgewählte
Speicherzellen eingeschaltet, wenn der Schwellwertpegel Vt niedriger
ist als Vv10 zum Entladen des Voraufladepotential (Vpre – Vt) von
der Bitleitung BLe.
-
Andererseits
werden ausgewählte
Speicherzellen nicht eingeschaltet, wenn der Schwellwertpegel Vt
höher ist
als Vv10, zum Klemmen des Voraufladepotential (Vpre – Vt) auf
die Bitleitung BLe.
-
Zu
programmierende Daten werden dann am Knoten N3 gespeichert vor dem
Verstärken
und Lesen des Potentials an der Bitleitung BLe. Im Detail wird eine
Spannung (Vdd + a) am Knoten N3 zu einem schwebenden Zustand geladen
zu einem Moment S1 und dann wird ein Potential DTG am Gate des NMOS-Transistors 45 auf
Vdd gelegt zu einem Moment S2. Ein Kondensator 49 (2)
wird mit dem Knoten N3 verbunden zum Unterdrücken von Rauschen, das bedingt
ist durch Verringern des durch Leckstrom oder Kopplung zwischen
Leitungen veranlassten Potentials, zu unterdrücken, während der Knoten N3 in einen
schwebenden Zustand gebracht wird.
-
In 2 schaltet
der Pegel "HIGH" am Knoten N1, der
zu programmierende Daten gespeichert hat, den NMOS-Transistor 45 aus,
so dass der Knoten N3 auf den Pegel "HIGH" gesetzt
worden ist, wohingegen der Pegel "LOW" am
Knoten N1 den NMOS-Transistor 45 einschaltet,
so dass der Knoten N3 auf den Pegel "LOW" gesetzt
wird.
-
Dann
wird das erste Latch 1a deaktiviert zum Verstärken und
Lesen des Potentials auf der Bitleitung BLe. Im Detail werden die
Potentiale LAT und SEN an den Gates der NMOS-Transistoren 14 und 18 jeweils
auf "LOW" festgelegt, während die
Potentiale LATB und SENB (die jeweils umgekehrten Potentiale von
LAT und SEN) an den Gates der NMOS-Transistoren 13 und 17 jeweils
auf "HIGH" festgelegt werden.
-
Nachdem
das erste Latch 1a deaktiviert worden ist, wird das Potential
BLCD auf den Pegel "HIGH" gelegt zum Einschalten
der Schalteinrichtung 42, um die Knoten N1 und N3 auf dasselbe
Potential zu bringen, wodurch der NMOS-Transistor 47 eingeschaltet
wird, um diese Knoten auf den Pegel "HIGH" festzulegen.
-
Zu
dem Moment S7 wird ein Potential BLCLAMP am Gate des NMOS-Transistors 41 auf ein
Lesepotential Vsen festgelegt. Der NMOS-Transistor 41 schaltet
ein, wenn das Potential an der Bitleitung BLe entladen worden ist
von (Vpre – Vt)
zu (Vsen – Vt),
so dass die Potentiale an den Knoten N1 und N4 von Vdd auf einen
Pegel reduziert worden sind, der in etwa gleich dem Potential auf
der Bitleitung BLe ist. Elektrische Ladungen, die an den Knoten
N1 und N4 gespeichert sind, werden unmittelbar entladen bedingt
durch die Tatsache, dass die Bitleitungskapazität extrem viel größer ist
als die Knotenkapazität.
-
Andererseits
schaltet der NMOS-Transistor 41 nicht ein, wenn das Potential
an der Bitleitung BLe nicht entladen worden ist (Vsen – Vt), so
dass die Potentiale an den Knoten N1 und N4 auf Vdd geklemmt werden.
-
Wenn
das Potential am Knoten N1 reduziert ist, wird es nicht länger auf
das Potential der Bitleitung BLe verringert. Das Klemmen des Potentials
an den Knoten N1 auf Vdd ist gleich einer Verstärkung der Potentials an der
Bitleitung BLe, weil Vdd höher ist
als das Potential (Vpre – Vt),
das auf der Bitleitung BLe voraufgeladen worden ist. In 13 repräsentiert
die Volllinie für
BL (das Potential an der Bitleitung BLe) ein Entladen, welches anzeigt,
dass die Speicherzelle nicht ausreichend programmiert ist oder nicht
programmiert.
-
Zu
dem Moment S9 wird das Steuersignal REG auf den Pegel "HIGH" festgelegt zum Einschalten
des Schalttransistorss 43.
-
Ein
Pegel "LOW" am Knoten N3 oder
ein "0"-programmierter Zustand
in der Programmierimpulsanlegeoperation ermöglicht es dem NMOS-Transistor 44 nicht,
einzuschalten, was zu keiner Änderung
im Potential an dem Knoten N1 und N4 führt, so dass das Potential
an der Bitleitung BLe an dem Knoten N1 erscheint bis zu einem Moment 511.
-
Das
Potential SEN am Gate des NMOS-Transistors 18 und das Potential
SENB am Gate des NMOS-Transistors 17 werden jeweils auf die
Pegel "HIGH" bzw. "LOW" gelegt zum Zeitpunkt S11
zum Aktivieren der getakteten Invertierer in dem ersten Latch 1a zum
Lesen des Potentials am Knoten N1 (der als das Gate des Latchs 1a funktioniert.
-
Zu
einem Moment S2 werden das Potential LAT am Gate des NMOS-Transistors 14 und
das Potential LATB am Gate des NMOS-Transistors 13 auf die Pegel "HIGH" bzw. "LOW" festgelegt zum Aktivieren
des ersten Latchs 1a zum Wiedergewinnen des Potentials
am Knoten N1 als Zwei-Pegel-Datenwert "LOW" oder "HIGH". Der Datenwert "LOW" am Knoten N1 wird
wieder zu einer ausgewählten
Bitleitung übertragen
im nachfolgenden Programmierimpulsanwendebetrieb, so dass die ausgewählte Zelle
in einen "0"-Zustand programmiert
wird.
-
Wenn
das Voraufladepotential an der Bitleitung BLe geklemmt ist, wie
durch eine gestrichelte Linie für
BL in 13 angedeutet, ohne dass ein
Zellenstrom fließt,
wird der Datenwert "HIGH" im ersten Latch 1a nach
dem Lesen gespeichert zum Abschließen der Programmierung der
ausgewählten
Speicherzelle.
-
Der
Datenwert "HIGH", der im ersten Latch 1a gespeichert
ist nach dem Wiedergewinnen zur Programmierungsverifizierung ermöglicht das
Transferieren des "HIGH"-Pegels zu der ausgewählten Bitleitung
Be, so dass die Zelle mit "1" programmiert ist zur
Programmierverhinderung.
-
Andererseits
ermöglicht
ein Pegel "HIGH" am Knoten N3 oder
ein im Programmierimpulsanwendebetrieb programmierter Datenwert "1" es der gemeinsamen Signalleitung COM,
den Pegel "HIGH" zu den Knoten N1
und N4 zu transferieren. Der Pegel "HIGH" wird
wieder am Knoten N1 zu dem Moment S12 gespeichert, hierdurch den
Pegel "HIGH" am Knoten N1 im "1"-Programmierzustand
speichernd ohne Bezug zum Ergebnis der Programmierverifizierung,
um den "1"-programmierten Zustand
zur Programmierverhinderung beizubehalten.
-
32 und 33 geben
die Potentialänderung
an den Knoten an und an den Bit- und Wortleitungen für die bislang
offenbarten Betriebsabläufe.
-
Der
Knoten N1 (2) wird in den "1"-Programmierzustand geändert beim
Pegel "HIGH" in Seitenpuffern,
für welche
Programmierung abgeschlossen ist. Das Erfassen des Zustands am Knoten N1
oder Knoten N3 (umgekehrter Zustand) für alle Seitenpuffer in einer
Seite ermöglicht
die Beurteilung, ob Ein-Seitenprogrammierung abgeschlossen worden
ist oder nicht (Schritt S15 in 9A).
Der Prozess kehrt zu Schritten S13 und S14 zurück, wenn der Knoten N1 für zumindestens
irgendwelchen der Seitenpuffer auf den Pegel "LOW" gewesen
ist zum Durchführen
der Programmierimpulsanwenderoperation und Wiedergewinnung zur Programmierverifizierung.
-
Wie
oben offenbart, werden in dem Flash-EEPROM vom NAND-Typ Seitenpuffer,
die mit Speicherzellen verbunden sind, für welche die Programmierung
abgeschlossen worden ist gemäß der Wiedergewinnung,
geändert
in den "1"-programmierten Zustand,
wodurch Schwellwertpegelverteilung eng gesteuert wird obwohl der
Programmierimpulsanlegebetrieb kontinuierlich durchgeführt wird
bis alle Speicherzellen für
eine Seite programmiert worden sind. Diese Programmiersteuerung
für jeden
Seitenpuffer in einer Seite wird bitweise Verifizierung genannt.
-
Der
Programmierimpulsanlegebetrieb wird durchgeführt zum Erzielen einer höheren Programmiergeschwindigkeit
dadurch, dass eine Programmierspannung Vpgm Schritt für Schritt
angehoben wird für
jede Programmierimpulsanwendeoperation und wiedergewonnen wird zur
Programmierverifizierung. Dies ist in 14 gezeigt,
in der das Potential auf einer ausgewählten Wortleitung WL variiert,
wie durch die Volllinie angezeigt. Als nächstes wird die Programmierung
und Wiedergewinnung für
die Programmierverifizierung bei Auswahl der ersten Adresse für Mehrpegelbetrieb
offenbart.
-
9B ist ein Flussdiagramm eines Programmierbetriebs
für das
obere Bit (bei Auswahl der ersten Zeilenadresse für Mehrpegelbetrieb).
-
Ein
zu programmierender Datenwert bei Auswahl der ersten Zeilenadresse
für Mehrpegelbetrieb
wird in das zweite Latch 2a geladen (2) durch
einen externen Daten-Eingabe/Ausgabeanschluss
(Schritt S21). Der Datenwert in dem Latch 2a wird zum ersten
Latch 1a transferiert (Schritt S22) in Übereinstimmung mit dem in 10A gezeigten Timing. Die Schritte S21 und S22
werden in 15A dargestellt.
-
Als
nächstes,
wie in 15B dargestellt, wird der Unterbit-Datenwert (bei Auswahl
der zweiten Zeilenadresse für
Mehrpegelbetrieb) in dem zweiten Latch 2a gespeichert (Schritt
S23 in 9B). Diese Operation wird internes
Datenladen genannt und wird ausgeführt in Übereinstimmung mit dem in 16 gezeigten Timing. Der Knoten N1 (2) wird
geändert
zu dem Pegel "LOW" nachdem der Datenwert
im Latch 2a gespeichert worden ist, wie durch die Volllinie
in 16 angedeutet.
-
Nachdem
eine ausgewählte
Wortleitung eingestellt worden ist auf Vr10 (43B),
wird Wiedergewinnung durchgeführt,
in der dieselbe Wortleitung ausgewählt wird für sowohl die erste als auch
die zweite Zeilenadresse für
Mehrpegelbetrieb.
-
Für eine Bitleitungs-Voraufladeperiode
von einem Moment R4 zu R7 (16)
werden die NMOS-Transistoren 47 und 41 und auch
der Bitleitungs-Auswahltransistor 60 eingeschaltet zum
Voraufladen der Bitleitung BLe. Im Detail wird ein Potential Pre
dem Gate des NMOS-Transistors 41 zugeführt zum Voraufladen des Potentials
(Vpre – Vt)
zu der Bitleitung BLe.
-
Zum
Moment R7 wird der Source-seitige Auswahltransistor SG2 (3)
in einer NAND-Zelleneinheit NU eingeschaltet zum Starten des Entladens
der Bitleitung BLe in Übereinstimmung
mit dem Zustand der Zellen. In 16 gibt
die Volllinie für
BLe das Entladen davon in den "11"-gespeicherten Zellen an.
Nur in diesen Wiedergewinnungsbetrieb werden wiedergewonnene Daten
im zweiten Latch 2a gespeichert. Vor dem Lesen des Bitleitungspotentials, zu
dem Moment S4, sind Signale CLAT und CSEN an den Gates der NMOS-Transistoren 24 und 28 jeweils festgelegt
worden auf den Pegel "LOW" für Deaktivierung
des Latchs 2a. Signale CLATB und CSENB sind jeweils der
Kehrwert des Signals CLAT und CSEN.
-
Zu
einem Moment S5 wird ein Signal BLCD2 am Gate des NMOS-Transistors 30 auf
den Pegel "HIGH" gelegt zum Einschalten
des Transistors 30, während
die Knoten N4 und N5 voraufgeladen werden auf Vdd über den
NMOS-Transistor 47.
-
Zu
dem Moment S7 wird das Potential BLCLAMP am Gate des NMOS-Transistors 41 auf das
Lesepotential Vsen festgelegt, so dass das Bitleitungspotential
an den Knoten N4 und N5 in Übereinstimmung
mit dem bereits unter Bezugnahme auf 13 offenbarten
Klemmbetrieb erscheint (der Moment S7).
-
Zu
einem Moment S11 werden die Signale CSEN und CSENB an den Gates
der NMOS-Transistoren 28 und 29 jeweils festgelegt
auf die Pegel "HIGH" bzw. "LOW" zum Aktivieren der
getakteten Invertierer im zweiten Latch 2a, für welche
der Knoten N5 als Eingangsgate fuktioniert. Das Potential am Knoten
N5 wird durch die getakteten Invertierer gelesen.
-
Zu
einem Moment S12 werden die Signale CLAT und CLATB an den Gates
von NMOS-Transistoren 24 und 23 jeweils auf die
Pegel "HIGH" bzw. "LOW" festgelegt zum Aktivieren
des zweiten Latchs 2a für
die Daten-Wiedergewinnung (Schritt S23 in 9B).
Das Potential BLCD am Gate des NMOS-Transistors 42 ist
auf dem Pegel "LOW" gewesen während dieses
Betriebsablaufs, so dass der Transistor 42 ausgeschaltet
worden ist, wodurch extern eingegebene zu programmierende Daten
in dem ersten Latch 1a gespeichert worden sind.
-
Wie
offenbart, wird ein zu programmierender Datenwert für die erste
Zeilenadresse für
Mehrpegelbetrieb in dem ersten Latch 1a gespeichert und
der zu programmierende Datenwert für die zweite Zeilenadresse
für Mehrpegelbetrieb
wird wiedergewonnen von der Speicherzelle und in dem zweiten Latch 2a gespeichert
und dann beginnt der Programmierimpulsanlegebetrieb (Schritt S24
in 9B).
-
Der
Programmierimpulsanlegebetrieb wird ausgeführt in Übereinstimmung mit dem in 11 gezeigten Timing wie dem bereits für die Auswahl
der zweiten Adresse für
Mehrpegelbetrieb beschriebene Operation mit dem Transfer von in
dem ersten Latch 1a zu speichernden Daten zu einer ausgewählten Bitleitung.
-
Beim
Programmieren für
die Auswahl der ersten Zeilenadresse für Mehrpegelbetrieb wird die Schwellwertverteilung
Vt variiert, wie in 43B gezeigt.
-
Im
Detail wird eine "11"-programmierte Zelle mit "01" programmiert und
eine "10"-programmierte Zelle
wird mit "00" programmiert, wenn
der Pegel "LOW" an dem Knoten N1
geklemmt worden ist, der mit dem ersten Latch 1a verbunden
ist. Andererseits, wenn der Pegel "HIGH" an
den Knoten N1 geklemmt worden ist, der eine "1"-Programmierung
für Programmierverhinderung
anzeigt, werden "11"- und "10"-programmierte Zellen kontinuierlich
jeweils "11" und "10" speichern.
-
Es
gibt vier Zustände
für die
Speicherzellen, wie oben offenbart, deren Betriebsabläufe in 34 bis 37 angegeben
sind.
-
Das
Programmieren von "11" zu "01" und "10" zu "00" wird simultan durchgeführt durch
Anlegen derselben Programmierspannung zum Auswählen der Wortleitung. Dieser
Betrieb erfordert VERIFIZIEREN00 (Schritt S25 in 9B) zum Wiedergewinnen für "00"-Programmierungsverifizierung und
auch VERIFIZIEREN01 (Schritt S26 in 9 zur Wiedergewinnung
für "01"-Programmierverifizierung nach
einem Programmierimpulsanwendebetrieb.
-
Für diese
Betriebsabläufe
sollte das Programmieren nicht abgeschlossen sein in der "00"-Programmierverifizierung
für die
Speicherzellen, die mit "01" programmiert worden
sind. Dies ist, weil die Wiedergewinnung für die "00"-Programmierverifizierung
(VERIFIZIEREN00) durch das Zuführen von
Vv00 (43B) durchgeführt wird
zum Auswählen
von Wortleitungen, wohingegen für
die Speicherzellen, die mit "01" programmiert worden
sind, ein Schwellwertpegelanstieg auf den Pegel "00" ein
Entladen des Potentials auf der Bitleitung beim VERIFIZIEREN00 nicht
zulässt,
wodurch es scheint, dass die Programmierung abgeschlossen ist für die Speicherzellen,
die bereits mit "01" programmiert worden
sind.
-
Um
solche Probleme auszuräumen,
führt die erste
Ausführungsform
eine Wiedergewinnungssteuerung zur Programmierverifizierung basierend
auf einem Datenwert entsprechend der zweiten Zeilenadresse für Mehrpegelbetrieb
durch, der in dem zweiten Latch 2a gespeichert ist (2).
-
17 zeigt ein Beispiel des Timings für das VERIFIZIEREN00
(Schritt S25 in 9B) zum Wiedergewinnen für die "00"-Programmierverifizierung.
-
In
der Voraufladeperiode von einem Moment R4 bis R7 werden die NMOS-Transistoren 30 und 41 und
der Bit-Auswahltransistor 60 eingeschaltet zum Voraufladen
der Bitleitung BLe von dem Knoten 5 des zweiten Latch 2a.
-
Während des
Programmierens von "01" in der "11"-gespeicherten Zelle
ist der Knoten 5 des zweiten Latch 2a auf den
Pegel "LOW" gesetzt worden nach
dem internen Laden für
das Laden eines Datenwertes entsprechend der zweiten Zeilenadresse
für Mehrpegeloperation.
Dies ist weil das interne Laden die Spannung Vr10 (43B) auf der ausgewählten Wortleitung erfordert,
so dass die "11"-gespeicherten Speicherzellen
eingeschaltet werden zum Entladen der Voraufladespannung auf der
Bitleitung für
das Wiedergewinnen von "LOW" nach dem Lesen.
-
Dies
führt zu
einer "LOW"-Voraufladung in den
Seitenpuffern, für
welche "01"-Programmierung durchgeführt worden
ist. Voraufladung, welche nicht erfüllt ist bzw. abschließend ausgeführt, wird
anfangs für
die Speicherzellen ausgeführt,
die mit "01" zu programmieren
sind, weil diese Zellen einen Fehler erfordern für die Wiedergewinnung der Programmierverifizierung
in VERIFIZIEREN00 (9B).
-
Andererseits
ist in den Seitenpuffern, für
die "00"-Programmierung auszuführen ist
zu den "10"-gespeicherten Speicherzellen,
der Knoten N5 des zweiten Latch 2 auf den Pegel "HIGH" gelegt worden, hierdurch
Bitleitungs-Voraufladen wie andere Wiedergewinnung durchführend. Das
Latch 2a ist in jedem Seitenpuffer enthalten in einer Seite
als eine Programmiereinheit. Demnach wird reguläres Voraufladen zu ausgewählten Bitleitungen
für Seitenpuffer
durchgeführt,
die "00"-Programmierung durchgeführt haben,
wohingegen Voraufladen, welches nicht erfüllt werden wird, durchgeführt wird
für Seitenpuffer,
die "01"-Programmierung durchgeführt haben (selektives
Voraufladen).
-
Das
Einstellen von 0 V auf der Bitleitung vor VERIFIZIEREN00 (9B) dient einem geringen Stromverbrauch, weil
kein unnötiger
Voraufladestrom fließen
wird für
eine Periode des selektiven Voraufladens, das oben beschrieben worden
ist, von dem zweiten Latch 2a nach dem Starten von VERIFIZIEREN00.
-
In 17 repräsentiert
für den
Knoten N5 und die Bitleitung BLe (die in der Figur mit BL gekennzeichnet
ist) eine Wellenform, die durch die Volllinie wiedergegeben ist,
die "00"-Programmierung, während die
gepunktete Linie (auf Massepegel) die "01"-Programmierung
repräsentiert.
-
Nach
dem Moment R7 (17) wird derselbe Prozess wie
die Wiedergewinnung zur Programmierverifizierung, die oben beschrieben
worden ist, ausgeführt.
In den Seitenpuffern zum Durchführen von "00"-Programmierung wird
die Bitleitung BLe voraufgeladen für die Periode bis zu dem Moment
R7, wie durch die Volllinie für
BL angezeigt. Abhängig
von den ausgewählten
Zellen, die ein- oder ausgeschaltet worden sind, wird die Bitleitung
BLe entladen oder nicht. Dann verstärkt und liest nach dem Moment
R7 das Lesepotential Vsen, das am Gate des NMOS-Transistors 41 (2)
angelegt wird, das Potential auf der Bitleitung BLe, wodurch das
Ergebnis des Programmierens in dem ersten Latch 1a gespeichert
wird.
-
Bei
der "1"-Programmierung zum
Klemmen des "10"-Zustandes, in welchen
der Pegel "HIGH" in dem zweiten Latch 2a gespeichert
worden ist, ist der Pegel "HIGH" an den Knoten N1
geklemmt worden, wodurch der Knoten N1 auf den Pegel "HIGH" aufgeladen worden
ist zu einem Zeitpunkt R7 durch die bitweise Verifizierung, die
oben beschrieben worden ist mit dem am Knoten N3 geklemmten Datenwert
zum Klemmen des "1"-programmierten Zustandes.
-
Als
nächstes
wird die Wiedergewinnung VERIFIZIEREN01 (Schritt S26 in 9B) für
die "01"-Programmierverifizierung
unter Bezugnahme auf 18 offenbart, die ein Beispiel
des Timings bzw. der Zeitabstimmung für VERIFIZIEREN01 zeigt.
-
Die
Differenz zwischen VERIFIZIEREN00 und VERIFIZIEREN01 ist, dass beim
letzteren eine ausgewählte
Wortleitung festgelegt wird auf Vv01 (43B)
zum Wiedergewinnen zur Programmierverifizierung.
-
Für Seitenpuffer,
die "01"-Programmierung von "11" ausführen, wird
ein Bitleitungspotential am ausgewählten Wortleitungspotential
Vv01 gelesen, während
für die "1"-Programmierung
zum Klemmen des "11"-Zustandes der Knoten
N1 neu aufgeladen wird zum Klemmen des "1"-programmierten
Zustandes.
-
Andererseits
wird die Programmierung für Seitenpuffer,
die "00"-Programmierung von "11" ausführen, immer
bei VERIFIZIEREN00 "nicht
erfüllt" bzw. "verfehlt" sein. Dies ist,
weil der Schwellwertpegel Vt der Speicherzellen, für welche
die Programmierung bei VERIFIZIEREN00 verfehlt ist, niedriger ist
als Vv00, was dazu führt,
dass häufig
Fehler auftreten für
die Wiedergewinnung bei Vv01 auf der ausgewählten Wortleitung während VERIFIZIEREN01.
-
Für Seitenpuffer
zum Programmieren von "1" zum Klemmen des "00"-programmierten Zustandes wird
das oben beschriebene bitweise Verifizieren durchgeführt zum
Klemmen des "1"-programmierten Zustandes ohne Fehler.
-
Wie
oben offenbart, wird die Programmierverifizierung in VERIFIZIEREN00
und VERIFIZIEREN01 realisiert. Ein Programmierzyklus mit Programmierimpulsanwendeoperation
und dem Wiedergewinnen zur Programmierverifizierung wird wiederholt
bis das Programmieren abgeschlossen ist für alle Seitenpuffer in einer
Seite (Schritt S27 in 9B) zum Ausführen der
Programmierung bei Auswahl der ersten Zeilenadresse für Mehrpegelbetrieb.
-
Als
nächstes
wird unter Bezugnahme auf 19A und 19B eine Wiedergewinnungsoperation offenbart.
-
Wiedergewinnung
hängt von
den Zeilenadressen ab, weil, wie in 43B dargestellt,
ein 2-Bit-Datenwert beim Mehrpegelbetrieb derart angeordnet ist,
dass die oberen und die unteren Bits als Datenwert verwendet werden
auf das jeweilige Auswählen
der ersten und zweiten Zeilenadressen im Mehrpegelbetrieb.
-
Beim
Wiedergewinnen des Ober-Bits, bei dem die erste Zeilenadresse für Mehrpegelbetrieb gespeichert
worden ist, wird eine Wiedergewinnungsoperation READ00 (in 19B gezeigter Schritt S41) nur einmal ausgeführt bei
dem Potential Vr00 (43B) auf der ausgewählten Wortleitung zum
Wiedergewinnen von 2-Bit-Daten von "0" oder "1".
-
Andererseits
werden beim Wiedergewinnen des Unter-Bit, bei dem die zweite Zeilenadresse
für Mehrpegelbetrieb
gespeichert ist, zwei Wiedergewinnungsoperationen READ00 und auch
READ10 (in 19A gezeigte Schritte S31 und
S32) bei den Potentialen Vr01 und Vr10 jeweils ausgeführt (43D) auf der ausgewählten Wortleitung.
-
Zuerst
wird die Wiedergewinnungsoperation READ00 bei Auswahl der ersten
Zeilenadresse für Mehrpegelbetrieb
in Bezug auf ein Beispiel der Zeitabstimmung bzw. des Timing von
READ00 in 20 offenbart.
-
Für eine Voraufladeperiode
bis zu einem Moment R7 werden in 2 die
NMOS-Transistoren 47 und 41 und der Bitleitungsauswahltransistor 60 eingeschaltet.
Das Potential Pre wird dem Gate des NMOS-Transistors 41 zugeführt zum
Voraufladen (Vpre – Vt)
auf der Bitleitung BLe. Der Source-seitige Transistor SG2 (3)
in einer NAND-Zelleneinheit NU wird zu dem Moment R7 eingeschaltet
zum Starten des Entladens von der ausgewählten Bitleitung.
-
Zu
einem Moment S4 werden die Potentiale LAT bzw. SEN an den Gates
der NMOS-Transistoren 14 bzw. 18 auf den Pegel "LOW" gelegt zum Einschalten
des NMOS-Transistors 42 zum Einstellen der Knoten N1 und
N4 auf dasselbe Potential und auch zum Einschalten des NMOS-Transistors 47,
um auf Vdd aufgeladen zu werden.
-
Zu
einem Moment S7 wird das Potential CLAMP am Gate des NMOS-Transistors 41 auf
Vsen gesetzt zum Klemmen des Bitleitungspotentials zur Wiedergewinnung,
wodurch ein kleines Bitleitungspotential (Vpre – Vse) von etwa 0,4 V verstärkt wird und
wiedergewonnen am Knoten N1.
-
Zu
den Momenten S11 und S12 werden die Potentiale LAT und SEN auf den
Pegel "HIGH" in dieser Reihenfolge
gelegt zum aufeinanderfolgenden Aktivieren der getakteten Invertierer
des ersten Latchs 1a zum Wiedergewinnen des Datenwertes am
Knoten N1.
-
Nachdem
der Datenwert im Latch 1a gespeichert worden ist, werden
Datenwerte, die bereits in dem Latch 1a für eine Seite
gespeichert worden sind, simultan zum zweiten Latch 2a übertragen
(Schritt S42 in 19B). Für Seiten, die jeweils 512 Bytes haben,
werden Daten simultan von dem Latch 1a zu dem zweiten Latch 2a in
jedem 512-Byte-Seitenpuffer in Übereinstimmung
mit dem in 10B gezeigten Timing übertragen.
-
Jedes
zweite Latch 2a ist mit dem Daten-Eingabe/Ausgabepuffer 50a über die
Spaltenauswahltransistoren 51 und 52 durch die
Datenleitung io/ion verbunden, wie in 3 gezeigt.
Ein "HIGH"-Pegelspaltendekodersignal
CSL ermöglicht
das Wiedergewinnen eines Datenwertes aus dem Latch 2a über den
Daten-Eingabe/Ausgabepuffer 50a durch die Datenleitungen
io/ion.
-
In
dem in zwei Arrays aufgeteilten Zellenarray, wie in 45B gezeigt, erlaubt das oben beschriebene simultane
Wiedergewinnen auf Auswahl einer Seite der beiden Arrays mit einer
Zeilenadresse den simultanen Datentransfer in einem 2-Seiten-Seitenpuffer
unter der Steuerung des Daten-Eingabe/Ausgabepuffers 50a derart,
dass 1-Seiten-Daten der Zelle 100a ausgegeben werden durch
das zweite Latch 2a nach dem Datentransfer und dann 1-Seiten-Daten
der Zelle 100b ausgegeben werden.
-
Wie
offenbart, können
von der ersten Zeilenadresse für
Mehrpegelbetrieb ausgewählte
Daten mit einer Wiedergewinnungs- und einer Datentransferoperation
ausgegeben werden.
-
Als
nächstes
wird ein Wiedergewinnungsbetrieb bei Auswahl der zweiten Zeilenadresse
für Mehrpegelbetrieb
offenbart.
-
Diese
Wiedergewinnungsoperation wird zweimal ausgeführt als READ01 und READ10 in Schritten
S31 und 32, wie in 19A gezeigt.
-
21 ist ein Beispiel des Timings für READ01.
Der Unterschied zwischen READ00 (19B)
und READ01 ist nur, dass letzteres ein ausgewähltes Wortleitungspotential
Vr01 (43B) hat, weshalb die detaillierte
Beschreibung von READ01 weggelassen wird.
-
Nach
READ01 wird ein wiedergewonnener Datenwert im ersten Latch 1a (2)
gespeichert, gefolgt von READ10, ein Beispiel des Timings für READ10
ist in 22 gezeigt.
-
Die
Wiedergewinnung wird bei dem ausgewählten Wortleitungspotential
Vr10 (43B) ausgeführt. Die Wiedergewinnungsoperation
bei READ10 ist weitgehend dieselbe wie die READ01 vom Bitleitungsvoraufladen
zu dem Moment S9, die Differenz zwischen READ10 und READ00 (und READ01)
ist, dass in der ersteren ein Potential COMRST am Gate des NMOS-Transistors 91 und ein
Potential an einem Knoten COM (die gemeinsame Signalleitung COM)
auf die Pegel "HIGH" bzw. "LOW" eingestellt sind.
-
Bei
dem READ01 folgenden READ10 sind die in READ01 wiedergewonnenen
Daten im ersten Latch 1a gespeichert worden bis zum Moment
S4.
-
Das
Potential am Knoten N3 steht nicht in bezug zu der Wiedergewinnungsoperation
in READ00 und READ01, steht jedoch im Zusammenhang mit READ10. Im
Detail wird der Knoten N3 aufgeladen (Vdd + α), um schwebend zu sein zu einem Moment
S2. Ein Vdd-Pegel DTG am Gate des NMOS-Transistors 45 zum
Moment S2 ermöglicht
es dem Knoten N3, (Vdd + α)
zu klemmen, wenn der mit dem ersten Latch 1a verbundene
Knoten N1 auf dem Pegel "HIGH" geklemmt ist, wohingegen
der Knoten N3 entladen wird auf 0 V, wenn der Knoten N1 auf dem
Pegel "LOW" liegt.
-
Zu
dem Moment S7 wird das Bitleitungspotential verstärkt und
dann wird zu einem Moment S9 das Steuersignal REG eingestellt auf
den Pegel "HIGH", um den NMOS-Transistor 44 einzuschalten, weil
der Knoten N3 auf dem Pegel "HIGH" gewesen ist, wenn
der Knoten N1 auf dem Pegel "HIGH" geklemmt worden
ist in READ01 (19A). Dies führt zu einem
Entladen der Knoten N1 und N3 zu dem Knoten COM und dann zu einem
Moment S12 wird der Knoten N1 auf den Pegel "LOW" geklemmt.
Mit anderen Worten, der Pegel "LOW" als Datenwert "1" ist an dem Knoten N1 gespeichert, wenn
die Speicherzelle in dem "01" Zustand ist, der
in 43B gezeigt ist.
-
Wenn
der Pegel "LOW" bei dem Knoten N1 gespeichert
ist in READ01, wird der NMOS-Transistor 44 eingeschaltet
zu einem Moment S9, wodurch kein Entladen vom Knoten N1 und N3 auftritt
und das Potential am Knoten N1, das das verstärkte Bitleitungspotential ist,
wird gelesen und gespeichert zu Momenten S11 und S12.
-
Nach
Abschluss von READ01 und READ10 wird der für die zweite Zeilenadresse
für Mehrpegelbetrieb
wiedergewonnene und in dem ersten Latch 1a gespeicherte
Datenwert transferiert zu dem zweiten Latch 2a (Schritt
S33 in 19A) in Übereinstimmung mit der in 10B gezeigten Zeitabstimmung, der Prozess (19A) wird abgeschlossen, in welchem das Latch 2a für die Datenausgabe
bereit ist.
-
Die
Potentialänderung
bei der oben offenbarten Wiedergewinnungsoperation ist in 38 bis 41 gezeigt. 38 zeigt die Wiedergewinnung des ersten (Ober-)Bits,
während 39 bis 41 die
Wiedergewinnung des zweiten (Unter-)Bits zeigen. Insbesondere zeigen 40 und 41 die Wiedergewinnung
des Unter-Bits zum zweiten Mal, wenn das Potential am Knoten N1
jeweils "HIGH" bzw. "LOW" gewesen ist als
das Ergebnis der erstmaligen Wiedergewinnung des Unter-Bits.
-
Als
nächstes
wird die Verwendung des zweiten Latch 2a (2)
als Cache-Speicher zum Verbessern der effektiven Programmiergeschwindigkeit offenbart.
-
Der
Zusammenhang zwischen Datenwert und Verteilung des Schwellwertpegels
Vt für 1-Bit-Speicherzellen,
im Zwei-Pegel-Betriebsmodus ist
in 23 dargestellt.
-
Die
Wiedergewinnung mit dem zweiten Latch 2a als Cache-Speicher wird ausgeführt wie READ00
(19B), das bereits beschrieben worden ist, ausgenommen,
dass eine ausgewählte
Wortleitung auf Vr0 gelegt worden ist in 23,
weil diese Wiedergewinnungsoperation nur einmal ausgeführt worden
ist.
-
24A und 24B stellen
Beispiele des Timings zur Wiedergewinnung mit dem zweiten Latch 2a als
Cache-Speicher dar.
-
Im
Detail stellt 24A die Wiedergewinnung dar
unter Verwendung eines Speicherzellenarrays. Auf den Empfang eines
Wiedergewinnungsbefehls "OOH" und dem Eingeben
der ersten Zeilenadresse wird BEREIT/NICHT BESCHÄFTIGT (vom englischsprachigen
Ausdruck READY//BUSY, das nachstehend abgekürzt wird als R/BB) auf den
Pegel "LOW" gesetzt oder ein
Beschäftigt-Zustand
wird ausgegeben zum Durchführen
von SEITENWIEDERGEWINNUNG 1 (dasselbe wie READ00 in 19B).
-
Nach
Abschluss von SEITENWIEDERGEWINNUNG 1 werden 512-Byte-Daten, die der wiedergewonnenen
ersten Zeilenadresse entsprechen und dem ersten Latch 1a (2)
jedes Seitenpuffers gespeichert sind, transferiert zum zweiten Latch 2a genau
wie in Schritt S33 in 19A.
-
Dann
wird R/BB auf den Pegel "HIGH" gelegt (ein Bereitschaftszustand),
um SERIELLE DATENAUSGABE 1 zu ermöglichen mit einem Wiedergewinnungs-Zulassungssignal
READ-ENABLE. Im
Detail wird ein der ersten Zeilenadresse entsprechender Datenwert
ausgegeben vom zweiten Latch 2a zum Daten-Eingabe/Ausgabeanschluss
I/O (3) synchron mit dem Signal READ-ENABLE während die zweite
Zeilenadresse, die zum Ausführen
von SEITENWIEDERGEWINNUNG 2 mit R/BB auf einem Pegel "LOW" gelegt ausgewählt wird
(ein Beschäftigt-Zustand
BUSY).
-
Der
Abschluss von SERIELLE DATENAUSGABE 1 wird erfasst zum Einstellen
von R/BB auf den Pegel "LOW" (BUSY bzw. beschäftigt) zum Durchführen von
Datentransfer vom ersten Latch 1a zum zweiten Latch 2a.
Mit anderen Worten, der im Latch 1a gespeicherte Datenwert
(das Ergebnis von SEITENWIEDERGEWINNUNG 2 kann nicht zu dem Latch 2a transferiert
werden bis SERIELLE DATENAUSGABE 1 vom Latch 2a abgeschlossen
ist.
-
Auf
Abschluss des Datentransfers hin wird R/BB wieder auf den Pegel "HIGH" gelegt (ein Bereitschaftszustand)
zum Starten von SERIELLE DATENAUSGABE 2 während die dritte Zeilenadresse
ausgewählt
wird zum Ausführen
von SEITENWIEDERGEWINNUNG 3.
-
Die
Wiedergewinnungsoperation, wie sie oben beschrieben ist, dient zum
Abkürzen
einer Periode "tdb" zwischen SERIELLE
DATENAUSGABE 1 und 2 für
die Zeilenadressen-Wiedergewinnung während der Datenausgabe entsprechend
der ersten Zeilenadresse.
-
Wenn
eine Seitenkapazität
512 Byte ist, ist eine Seitenwiedergewinnungszeit 10 μs und ein
serieller Datenausgabezyklus ist 50 ns, eine wirksame Wiedergewinnungszeit
ist im allgemeinen 14 Mbytes/s, jedoch in dieser Ausführungsform
erreicht die maximale wirksame Wiedergewinnungszeit 19 Mbytes/s
bei tdb = 1 μs.
-
Hier
ist R/BB ein BEREIT/NICHT BESCHÄFTIGT
Signal für
den Controller 110 (1) zum
Beurteilen der Steuersequenz genau wie in der folgenden Offenbarung.
-
24B zeigt simultane Wiedergewinnung von einer
2-Array-Speicherzelle.
-
Nach
Eingeben eines Wiedergewinnungsbefehls "00H" und
einer Adresse, wird SEITENWIEDERGEWINNUNG 1 ausgeführt für eingegebene erste
Zeilenadresse zum Zellenarray 100a (45B) und
auch SEITENWIEDERGEWINNUNG 2 für
dieselbe eingegebene erste Zeilenadresse zu dem Zellenarray 100b (45B). Mit anderen Worten, zwei Seiten werden für die erste
Zeilenadresse ausgewählt,
welche die doppelte Seitenkapazität zu haben scheinen, wenn von
außerhalb
des EEPROM Chips betrachtet.
-
Wie
in 24A gezeigt, ist R/BB eingestellt worden
auf den Pegel "LOW" (BESCHÄFTIGT) bis jede
Wiedergewinnung dieser Datentransfer abgeschlossen sind.
-
Für die Datenausgabe
werden DATENAUSGABE 1 vom Zellenarray 100a und DATENAUSGABE
2 vom Zellenarray 100b in dieser Reihenfolge ausgeführt. Auf
die Datenausgabe hin wird die zweite Zeilenadresse ausgewählt zum
Ausführen
von SEITENWIEDERGEWINNUNG 3 und 4 von den Zellenarrays 100a bzw. 100b.
-
Die
maximale wirksame Wiedergewinnungsgeschwindigkeit erreicht 20 Mbytes
bei tdb = 1 μs
in dieser Wiedergewinnungsoperation gegenüber 17 Mbytes im allgemeinen.
-
Als
nächstes
werden unter Bezugnahme auf 25A bis 25C Programmieroperationen mit dem zweiten Latch 2a als
Cache-Speicher zur
simultanen Programmierung in Zellenarrays 100a und 100b offenbart.
-
Nach
dem Eingeben eines Daten-Eingabebefehls 80H und einer Adresse
wird ein zu programmierender Datenwert "Dt.1" entsprechend
der ersten Zeilenadresse eingegeben (Laden1) in das Zellenarray 100a.
Dann, nach Eingabe des Daten-Eingabebefehls 80H und
der Adresse wird der zu programmierende Datenwert "Dt.2" entsprechend der
zweiten Zeilenadresse eingegeben (Laden2) in das Zellenarray 100b.
-
Ein
Programmierbefehl "10Hd" ist ein Leer-Befehl
bzw. Dummy-Befehl,
bei dem keine Programmieroperation durchgeführt wird zur simultanen Programmierung
in zwei Zellenarrays.
-
Zum
Zulassen aufeinanderfolgenden Datenladens "Laden 3" und "Laden 4" wird R/BB auf den Pegel "LOW" gelegt (ein beschäftigtes
Signal) und unmittelbar auf den Pegel "HIGH" gelegt
(ein quasi Bereitschaftssignal).
-
Nach
dem Eingeben des Anfangsdateneingabebefehls "80H" werden
die zweiten Latchs 2a, die als Cache-Speicher benutzt werden,
in allen Seitenpuffern zurückgesetzt
(Reset) (C, Rst in 25A bis 25C)
durch Schalten des PMOS-Transistors 82 (2).
-
Ein
Programmierausführbefehl "10Hc" (25A) auf das "Laden2" hin, startet simultan
das Programmieren von zwei Zellenarrays. Datenwerte werden von dem
zweiten Latch 2a zu dem ersten Latch 1a in jedem
Seitenpuffer übertragen,
gefolgt von der Programmierimpulsanlegeoperation und dem Wiedergewinnen
zur Programmierverifizierung, wie bereits beschrieben.
-
Der
Datentransfer wird in Übereinstimmung mit
dem in 10A gezeigten Timing ausgeführt. Der
Programmierimpulsanwendebetrieb wird ausgeführt in Übereinstimmung mit dem in 11 gezeigten Timing. Darüber hinaus wird die Wiedergewinnung
zur Programmierverifizierung in Übereinstimmung
mit dem Timing wie bei VERIFIZIEREN1, das in 13 gezeigt
ist, bei der ausgewählten
Wortleitungsspannung Vv0 ausgeführt.
-
Das
interne R/BB wird auf den Pegel "LOW" gelegt (ein Beschäftigt-Zustand)
während
die Programmierung ausgeführt
wird. Nach dem Datentransfer wird R/BB auf den Pegel "HIGH" gelegt (ein quasi
Bereitschaftszustand), um das Datenladen zu dem zweiten Latch 2a zu
ermöglichen,
weil alle Latchs 2a frei sind von dem Programmierimpulsanwendebetrieb
nach dem Datenladen, wie bereits diskutiert.
-
Nach
dem Datenladen "Laden
4" wird der Programmierausführungsbefehl "10Hc" wieder eingegeben.
Wenn simultanes Programmieren der Daten "Dt.1" und "Dt.2" noch nicht abgeschlossen
worden ist, können
Daten "Dt.3" und "Dt.4", die im zweiten
Latch 2a gespeichert sind, nicht zu dem ersten Latch 1a transferiert
werden. Ein solcher Datentransfer wird ausgeführt nachdem die Programmierung der
Datenwerte "Dt.1" und "Dt.2" abgeschlossen worden
sind und das interne R/BB auf den Pegel "HIGH" (als
Bereitschaftszustand) gelegt worden ist. Dann wird die Programmierung
der Daten "Dt.3" und "Dt.4" ausgeführt und
R/BB wird auf den Pegel "HIGH" (ein Bereitschaftszustand)
gelegt, zum Zulassen des nachfolgenden Datenladens zu dem Latch 2a.
-
Wie
bei der Wiedergewinnungsoperation kann auch in dieser Programmieroperation
das Auswählen
Seite für
Seite in zwei oder mehr Arrays zu einer Zeilenadresse ausgeführt werden,
wie in 25B dargestellt unter Verwendung
des zweiten Latch 2a als Cache-Speicher.
-
Auf
das Datenladen "Laden1" des Zellenarrays 100a (45B) folgend wird das Datenladen "Laden2" für das Zellenarray 100b ausgeführt mit dem
Programmierausführungsbefehl "10Hc", unter dem das Programmieren
der Datenwerte "Dt.1" und "Dt.2" beginnt während des
Zulassens des aufeinanderfolgenden Datenladens.
-
25C stellt das Timing der Programmieroperation
dar unter Verwendung des zweiten Latch 2a als Cache-Speicher
für 1-Zellenarrayspeicher. Der
Programmierausführungsbefehl "10Hc" lässt sowohl
Datenprogrammieroperation als auch Datenladen zu.
-
Dasselbe
für das
in 25A bis 25C gezeigte
Timing ist, dass der Transfer von Daten, die in den Cache-Speicher
geladen sind (das zweite Latch 2a), zum ersten Latch 1a ermöglicht wird, nachdem
das interne R/BB in einen Bereitschaftszustand versetzt worden ist.
-
Das
Folgende sind wirksame Programmiergeschwindigkeiten, die erzielt
werden in dieser Ausführungsform
unter Verwendung des zweiten Latch 2a als Cache-Speicher
bei der Forderung, dass ein serieller Dateneingangszyklus und eine
1-Seiten-Programmierabschlusszeit
50 ns bzw. 200 μs sind
bei 512 Bytes pro Seite.
-
In
2-Speicherzellen-Simultanprogrammierung verglichen zu 4,1 Mbytes
ohne Cache-Speicher, erzielt die Ausführungsform unter Verwendung
eines Cache-Speichers 5,1 Mbytes wirksame Programmiergeschwindigkeit,
weil eine 2-Seiten-Datenladezeit hinter der Programmierzeit maskiert
ist.
-
Darüber hinaus
wird bei einer 4-Array-Speicherzellensimultanprogrammierung
verglichen mit 6,8 Mbytes ohne Cache-Speicher die Ausführungsform
unter Verwendung eines Cache-Speichers 10 Mbytes erreichen.
-
Entsprechend
erreicht die vorliegende Erfindung eine sehr hohe wirksame Programmiergeschwindigkeit
unter Verwendung eines Cache-Speichers sowohl für 2- als auch für 4-Array-Speicherzellensimultanprogrammierung.
-
Wie
offenbart worden ist, bietet der in 2 gezeigte
Seitenpuffer 140 einen Mehrpegelbetrieb und bietet darüber hinaus
im Zwei-Pegel-Betrieb eine Cache-Funktion für höhere wirksame Programmier- und
Wiedergewinnungsgeschwindigkeit.
-
Zudem
funktioniert der Seitenpuffer 140 wie der für die Zwei-Pegel-Operation,
wenn das zweite Latch 2a und der NMOS-Transistor 30 weggelassen werden.
Ein PMOS-Transistor 90 und der NMOS-Transistor 91,
die beide mit dem Knoten COM verbunden sind, können von einer Vielzahl von
Seitenpuffern gemeinsam benutzt werden, beispielsweise einer für alle 8
Seitenpuffer mit derselben Zahl von EIN/AUSGABE.
-
Demnach
bietet der Seitenpuffer 140 sowohl Mehrpegelbetrieb (Funktion)
als auch Cache-Funktion auf einfache Weise, wie oben offenbart.
Beide Funktionen werden durch Ändern
der Programmier- und Wiedergewinnungssteuerung, die von dem Controller 110 ausgeführt werden
(1) geschaltet. Demnach erzielt die vorliegende
Erfindung ein Umschalten des Mehrpegelbetriebs und der Cache-Funktion
im Zwei-Pegel-Betrieb
durch Ändern der
Steuerung und des Adressraums unter Befehlseingabe.
-
(Zweite bevorzugte Ausführungsform)
-
Die
erste Ausführungsform
mit 2-Array-Speicherzelle im Cache-Betrieb hat einige Vorteile, wie oben
diskutiert.
-
Das
zweite Latch 2a (2), das
als Cache-Speicher funktioniert, wird auf Eingabe der Adresse vor
dem Laden von 2-Seitendaten zurückgesetzt,
beispielsweise bei Adresseingabe vor "Laden1" und "Laden 3" in 25A.
Das Latch 2a muss vor dem Datenladen zurückgesetzt
werden, jedoch könnte
das Rücksetzen
nach dem Ausführen des
Datenladebefehls während
des Programmierens nach dem Datentransfer zu irgendeiner Zeit während der
Programmierung ausgeführt
werden bedingt durch unstabile Datenladebefehlszeitabstimmung. Dies
könnte
ferner eine Beeinträchtigung
des Rauschens von der Energieversorgung zum Rücksetzbetrieb für das zweite
Latch 2a verursachen während des
Lesens der Wiedergewinnung zur Programmierverifizierung.
-
Um
solche Probleme auszuräumen,
führt die zweite
Ausführungsform
ein Rücksetzen
des zweiten Latch 2a unmittelbar nach dem Datentransfer
von dem Latch 2a zum ersten Latch 1a durch, wie
in 26 gezeigt, oder führt das Rücksetzen immer vor der Programmieroperation
aus.
-
Das
Rücksetzen
des zweiten Latch 2a ist erforderlich vor dem anfänglichen
Datenladen. Jedoch kann ein Rücksetzen
mit unstabilem Timing zu dem Latch 2a während des Programmierungs eliminiert werden
ohne Rücksetzen
bei der Eingabe von "80H" und der Adresse
während
des Programmierens.
-
27 zeigt eine Programmieroperation unter Verwendung
eines Cache-Speichers zum Eliminieren solchen Rücksetzens zu unstabilem Timing, welches
anwendbar ist auf die Operationen der 25A bis 25C.
-
Im
Detail beginnt die 2-Seiten-Simultanprogrammierung nach dem 2-Seiten-Datenladen "Laden1" und "Laden2" und dann, auf den
Abschluss des Datentransfers vom zweiten Latch 2a zum ersten Latch 1a hin
und das Rücksetzen
des Latchs (2a) (C.Rst), wird R/BB in einen quasi Bereitschaftszustand "HIGH" versetzt.
-
Diese
Folge ermöglicht
das Rücksetzen
des Latchs 2a nur vor dem Programmieren unabhängig davon,
wie das Timing t1 für
eine nachfolgende Datenladebefehlseingabe während der Programmierung des
Datenwertes "Dt.1" und "Dt.2" variiert oder das
folgende Timing t2, hierdurch Rauschen von der Energieversorgung
bei der Programmierung unter Verwendung eines Cache-Speichers unterdrückend.
-
(Dritte bevorzugte Ausführungsform)
-
In
der ersten Ausführungsform
ist das Umschalten zwischen dem Mehrpegelbetrieb für das Speichern
von 2-Bit-Daten in eine nicht-flüchtige Speicherzelle
offenbart und dem Cache-Betrieb im Zwei-Pegel-Betrieb unter Verwendung
des Seitenpuffers 140 (2).
-
Ein
Cache-Betrieb unter Verwendung des zweiten Latch 2a ist
auch möglich
im Mehrpegelbetrieb während
das Latch 2a frei ist, beispielsweise während einer Wiedergewinnungsoperation.
Wie in 28A gezeigt, ist die Datenausgabe
vom Latch 2a ermöglicht
während
der Hauptseitenpuffer mit dem ersten Latch 1a zu einer
ausgewählten
Bitleitung verbunden ist zur Wiedergewinnung.
-
Das
zweite Latch 2a ist auch frei von der Programmierung bei
Auswahl der zweiten Zeilenadresse für Mehrpegelbetrieb. Der nachfolgende
zu programmierende Datenwert kann demnach in das Latch 2a geladen
werden während
des Programmierens, wie in 28B gezeigt.
-
Die
Cache-Funktion ist jedoch beim Programmieren bei Auswahl der ersten
Zeilenadresse für
Mehrpegelbetrieb verboten, weil das Programmieren ausgeführt wird
während
der Datenwert der Auswahl der zweiten Zeilenadresse für Mehrpegelbetrieb
gespeichert worden ist im zweiten Latch 2a durch das bereits
beschriebene interne Datenladen.
-
29 stellt einen Programmierbetrieb in einem Mehrpegelbetriebsmodus
unter Verwendung eines Cache-Speichers dar. In der Zeichnung entsprechen "Unter-Dt." jeweils zu programmierende
Datenwerte für
die zweite Zeilenadresse bzw. die erste Zeilenadresse für Mehrpegelbetrieb.
-
In 29 werden "Unter-Dt.1" und "Ober-Dt.2" für die zweite
Adresse für
Mehrpegelbetrieb nacheinander eingegeben beim Datenladen "Laden1" bzw. "Laden2". Auf Eingabe des
ersten Programmierausführungsbefehls "10Hc" werden Daten simultan
für zwei
Speicherzellenarrays vom zweiten Latch 2a zum ersten Latch 1a transferiert
und Programmierung wird ausgeführt
für die
zweite Zeilenadresse für
Mehrpegelbetrieb während
des darauffolgenden Datenladens "Laden2" und "Laden 4" zur jeweiligen Eingabe
von zu programmierenden Daten "Ober-Dt.1" bzw. "Unter-Dt.2" für die erste
Zeilenadresse für
Mehrpegelbetrieb.
-
Auf
Abschluss des Programmierens für
die zweite Zeilenadresse für
Mehrpegelbetrieb werden die Daten, die für die erste Zeilenadresse für Mehrpegelbetrieb
zu programmieren sind, von dem zweiten Latch 2a zum ersten
Latch 1a transferiert zum Starten der Programmierung.
-
Obwohl
nicht in 29 für die Programmierung für die erste
Zeilenadresse für
Mehrpegelbetrieb angezeigt, sind die Daten entsprechend der zweiten Zeilenadresse
für Mehrpegelbetrieb
von einer ausgewählten
Speicherzelle wiedergewonnen worden und in dem zweiten Latch 2a gespeichert
worden durch das bereits beschriebene interne Datenladen.
-
Dies
verhindert das nachfolgende Datenladen bis zum Abschluss der Ober-Programmierung auf
Auswahl der ersten Zeilenadresse für Mehrpegelbetrieb. Obwohl
es von der Zeilenadresse zur Programmierung abhängt, ob das nachfolgende Programmieren
zugelassen wird oder nicht, kann eine Datenladezeit gekürzt werden
um die Hälfte
durch die Cache-Operation.
-
Die
dritte Ausführungsform
erzielt demnach eine hohe wirksame Programmiergeschwindigkeit, obwohl
das Programmieren im Mehrpegelmodus lange dauert verglichen mit üblichem
Zwei-Pegel-Modus zum
Speichern von 1-Bit-Daten in eine nichtflüchtige Speicherzelle.
-
(Vierte bevorzugte Ausführungsform)
-
Elemente
in dieser Ausführungsform,
die dieselben sind oder analog zu Elementen in der ersten Ausführungsform,
sind mit denselben Bezugszeichen gekennzeichnet und werden nicht
detailliert erläutert.
-
In
einem Seitenpuffer 140a, der in 30 gezeigt
ist, ist ein Schalt-NMOS-Transistor 31 zwischen den Knoten
N1 und N5 für
das erste Latch 1a und das zweite Latch 2a jeweils
vorgesehen.
-
Diese
Schaltungsanordnung erreicht eine oben diskutierte Cache-Funktion
auch ohne Mehrpegelfunktion. Datentransfer zwischen den Latchs 1a und 2a wird
zugelassen, gesteuert durch den NMOS-Transistor 31 zum
Transferieren des Pegels "HIGH" oder "LOW".
-
(Fünfte bevorzugte Ausführungsform)
-
Flash-EEPROMs
vom NAND-Typ wiederholen die Programmierimpulsanwendeoperation und die
Wiedergewinnungsoperation zur Programmierverifizierung bis das Programmieren
für alle 512-Byte-Speicherzellen
in einer Seite abgeschlossen ist.
-
14 zeigt eine Spannungswellenform, die an einer
ausgewählte
Wortleitung bei der Impulsprogrammierung schrittweise aufwärts angelegt
wird, bei der die Programmierspannung Vpgm Schritt für Schritt
angehoben wird während
der Wiederholung des Programmierimpulsanlege- und Programmierverifizierungs-Wiedergewinnungszyklus.
-
Programmierung
mit schrittweise angehobenem Programmierimpuls wird automatisch
durch einen Controller durchgeführt,
jedoch kann die Steuerung unterbrochen werden zur Messung des Zellenstroms
bei einem Seitenpuffer 140, der in 2 gezeigt
ist.
-
Wie
offenbart worden ist, wird die Zwei-Pegel-Programmierverifizierungsoperation durch
die Hauptprogrammierungs- und Wiedergewinnungsschaltung 10 gesteuert
und der wiedergewonnene Datenwert wird nach der Verifizierung im
ersten Latch 1a gespeichert. Demnach ist auf Abschluss
eines Zyklus der Programmierimpulsanwendeoperation und Programmierverifizierungs-Wiedergewinnungsoperation
eine übliche
Programmiersteuerung zum Ausführen
der nachfolgenden Programmierimpulsanwendeoperation in Übereinstimmung
mit dem Verifizierungsergebnis verhindert für eine Messung von Zellenstrom
mit Sicherstellen der in dem Latch 1a unter der Programmierung
gespeicherten Daten.
-
Die
Zellenstrommessung wird auf eine Weise durchgeführt, dass in 2 das
Potential BLCD auf den Pegel "LOW" gesetzt wird zum
Ausschalten des Schalt-NMOS 42 zum Klemmen des Datenwertes
im ersten Latch 1a, während
die Potentiale CLAT und CSEN gleichzeitig auf den Pegel "LOW" gelegt werden, wenn
die Potentiale CLATB und CSENB auf den Pegel "HIGH" gelegt
werden zum Deaktivieren des zweiten Latch 2a zum Einschalten
des Bitleitungs-Auswahltransistors 60, der Transfertransistoren 41 und 30 und
auch des Spaltengatetransistors 51, der zwischen einer
ausgewählten
Bitleitung und der Datenleitung "io" angeordnet ist,
zum Einschalten der Leitung "io" zu den Daten-Eingabe/Ausgabeanschlüssen I/O.
-
Die
Messung von Zellenstrom ist 31A und 31B gezeigt. 31A lehrt
einen bekannten Testmodus mit einem Modus zum Programmierspannungseinstellen
oder Programmieren oder Zellenstrommessmodus, wohingegen 31B den Testmodus gemäß der vorliegenden Erfindung
zeigt.
-
Das
bekannte Verfahren erfordert komplexe Steuerung, bei der ein Verifizierungsergebnis
von einem Latch geholt wird und nach Abschluss des Zellenstromlesens
das Verifizierungsergebnis wieder wiedergewonnen wird für das nachfolgende
Programmieren zur Beurteilung des Zusammenhangs zwischen Zellenstrom
und Verifizierungsergebnis, andernfalls würde der Zellenstrommessmodus
das Verifizierungsergebnis, das in einem Latch gespeichert ist,
zerstören.
-
Zudem,
wie in 31A angedeutet, bewirken die
anhebenden Eigenschaften eines Spannungsanhebers bzw. Spannungs-Boosters
die einer ausgewählten
Wortleitungsspannung und auch ihrer Wellenform.
-
Im
Gegensatz hierzu wird in der 31B gezeigten
vorliegenden Erfindung ein Programmierzyklus einmal für Zellenstrommessung
unterbrochen, während
ein Verifizierungsergebnis beim Programmieren gespeichert wird.
Nach Abschluss der Zellenstrommessung startet der nächstfolgende
Programmierzyklus.
-
(Sechste bevorzugte Ausführungsform)
-
Elemente
in dieser Ausführungsform,
die dieselben oder analog zu Elementen in der ersten Ausführungsform
sind, sind mit denselben Bezugszeichen versehen und werden nicht
im Detail erläutert.
-
46 ist ein Schaltungsdiagramm eines Seitenpuffers 140b für Mehrpegelbetrieb
und Cache-Funktion.
-
Abweichend
von dem Seitenpuffer 140, der in 2 gezeigt
ist, führt
der Seitenpuffer 140b Datentransfer zwischen dem ersten
und zweiten Latch 1a und 2a durch mit Umschalten
von NMOS-Transistoren 203 und 204, die zwischen
den Knoten N2 und N6 der Latchs 1a und 2a jeweils
serienverbunden sind.
-
Der
Seitenpuffer 140b hat einen Klemm-NMOS-Transistor 41b,
der zwischen einer ausgewählten
Bitleitung und einem Leseknoten N4b verbunden ist. Der Knoten N4b
ist mit dem Gate eines NMOS-Transistors 201 zum Lesen verbunden, der
nicht direkt mit dem Knoten N1 verbunden ist (2).
Der Source-Anschluss
des NMOS-Transistors 201 ist gegen Masse geschaltet und
ihr Drain-Anschluss ist mit den Knoten N1 und N2 jeweils über die
NMOS-Transistoren 202 und 203 verbunden.
-
Die
am Leseknoten N4b über
den Klemm-NMOS-Transistor 41b wiedergewonnenen Daten schalten
den NMOS-Transistor 201 ein oder aus. Der Schaltzustand
des NMOS-Transistors 201 wird zu dem Knoten N1 bzw. N2 über den NMOS-Transistor 202 bzw. 203 transferiert,
die selektiv aktiviert sind durch ein Signal BLSEN0 oder BLSEN1,
welches das Speichern der gelesenen Daten im ersten Latch 1a ermöglicht.
-
Datentransfer
zwischen den Latchs 1a und 2a wird zwischen den
Knoten N2 und N6 jeweils über die
NMOS-Transistoren 203 und 204, die durch die Signale
BLSEN1 bzw. BLSEN2 aktiviert werden, durchgeführt.
-
Der
Seitenpuffer 2140b ist auch mit einem NMOS-Transistor 42b zum
Transferieren eines Potentials am Knoten N1 zu einer ausgewählten Wortleitung
versehen.
-
Der
Knoten N5 des zweiten Latchs 2a ist mit dem Leseknoten
N4b über
einen NMOS-Transistor 30b verbunden, der eingeschaltet
wird für
ein Voraufladen einer ausgewählten
Bitleitung in Übereinstimmung
mit einem in dem Latch 2a in einem Mehrpegelmodus gespeicherten
Datenwert.
-
Auch
mit dem Leseknoten N4b ist ein Kondensator 48 verbunden
mit einem Steueranschluss CAPG zum Steuern des Potentials am Knoten
N4b mit kapazitiver Kopplung.
-
Als
nächstes
wird ein Mehrpegelbetrieb unter Verwendung des Seitenpuffers 140b offenbart
mit dem Zusammenhang zwischen Daten und Schwellwertpegel in einer
Speicherzelle für
Mehrpegelbetrieb, wie in 43B gezeigt.
-
Das
Programmieren des ersten (Ober-) und des zweiten (Unter-)Bits wird
in Übereinstimmung
mit dem in 9A und 9B gezeigten
Flussdiagramm ausgeführt.
-
Andererseits
ist eine in 47A gezeigte Wiedergewinnungsoperation
für das
zweite Bit unterschiedlich von 19A.
Im Detail ist der Unterschied, dass "Read 10" zum Anlegen von Vr10 an eine ausgewählte Bitleitung
ausgeführt
wird (Schritt S31'),
bevor "Read 01" zum Anlegen von
Vr01 an eine ausgewählte
Bitleitung ausgeführt
wird (Schritt S32').
-
Der
Programmierbetrieb und der Wiedergewinnungsbetrieb zur Programmierverifizierung
werden unter Bezugnahme auf 9A und 9B offenbart.
-
Für das Unter-(zweite)
Bit wird ein zu programmierender Datenwert in das zweite Latch 2a vom
Daten-Eingabe/Ausgabeanschluss
I/O geladen durch die Signalleitungen "io" und "ion" (Schritt S11). Der
Datenwert wird dann von dem zweiten Latch 2a zum ersten
Latch 1a transferiert (Schritt S12) wie in der vorangegangenen
Ausführungsform.
-
Die
Steuersignale SEN und LAT (46) des
ersten Latch 1a werden auf den Pegel "HIGH" gesetzt
während
die Signale SENB und LATB auf den Pegel "LOW" gesetzt
werden zum Deaktivieren der getakteten Umsetzer CI1 und CI2.
-
Die
Steuersignale BLSEN1 und BLSEN2 werden auf den Pegel "HIGH" gesetzt zum Einschalten
der NMOS-Transistoren 203 und 204. Das Potential
am Knoten N6 des zweiten Latch 2a wird zu dem Knoten N2
des ersten Latch 1a über
die NMOS-Transistoren 203 und 204 transferiert.
Die getakteten Umsetzer CI1 und CI2 werden in dieser Reihenfolge
aktiviert zum Speichern der transferierten Daten.
-
In ähnlicher
Weise wirt der Datentransfer vom ersten Latch 1a zum zweiten
Latch 2a ausgeführt,
nachdem das Latch 2a deaktiviert worden ist.
-
Nach
dem Datentransfer wird die Programmierimpulsanwenderoperation ausgeführt (Schritt S13
in 9A), in der der NMOS-Transistor 42b (46) eingeschaltet wird zum Transferieren der Daten
am Knoten N1 des ersten Latchs 1a zu einer ausgewählten Bitleitung.
Das Steuersignal BLCD, das an das Gate des NMOS-Transistors 42b angelegt
wird, ist vorzugsweise auf ein Potential gelegt, das von Vdd angehoben
bzw. geboostet worden ist zum Transferieren des Pegels "LOW" (0 V) oder "HIGH" (Vdd) an den Knoten
N1 ohne Pegelabfall.
-
Nach
dem Programmieren wird eine Spannung Vv10 (43B)
der ausgewählten
Bitleitung zugeführt
zum Durchführen
von VERIFIZIEREN10 (Schritt S14) als Wiedergewinnung zur Programmierverifizierung. 48 zeigt eine Potentialänderung, wenn der Datenwert "LOW" am Knoten N1 des
ersten Latch 1a geklemmt worden ist.
-
Der
NMOS-Transistor 47b zur Voraufladung wird eingeschaltet
und dann wird der Klemm-NMOS-Transistor 41b eingeschaltete zum Voraufladen
der ausgewählten
Bitleitung zur Wiedergewinnung für
Programmierverifizierung.
-
Das
Bitleitungsdatenlesen wird durchgeführt mit dem NMOS-Transistor 41b wie
in der vorangegangenen Ausführungsform.
-
Die
Rücksetzoperation,
die in 48 gezeigt ist, ist erforderlich
für die
gewöhnliche
Wiedergewinnungsoperation zum Rücksetzen
des Latchs vor dem Laden eines gelesenen Datenwertes in das Latch, wohingegen
sie nicht erforderlich ist für
die Wiedergewinnung zur Programmierverifizierung.
-
Ein
verstärktes
und wiedergewonnenes Datenpotential, das am Knoten N4b erscheint,
wird im ersten Latch 1a als Zwei-Pegel-Daten über den NMOS-Transistor 203 gespeichert,
der eingeschaltet wird durch das Steuersignal BLSEN1, das auf den Pegel "HIGH" gelegt ist. Im Detail,
ein Potential am Knoten N4b nahe bei Vdd schaltet den Lese-NMOS-Transistor 201 ein
und demnach wird das Potential am Knoten N4 reduziert auf den Pegel "LOW" über die NMOS-Transistoren 203 und 201.
-
Andererseits
schaltet ein Niedrigpotential am Knoten N4b nicht den NMOS-Transistor 201 ein
(der einen hohen Einschaltwiderstand zeigen kann), wodurch das Potential
am Knoten N2 in dem ersten Latch 1a geklemmt wird.
-
Der
vorangegangene Betriebsablauf wird durchgeführt, während das erste Latch 1a tief
ist. Zum Sicherstellen solcher Operationen werden die Transistorgrößen derart
bestimmt, dass der Einschaltwiderstand für die NMOS-Transistoren 201 bis 204 spürbar niedriger
ist als der für
die PMOS-Transistoren 11, 13, 15 und 17 des
ersten Latchs 1a.
-
Eine
Wiedergewinnungsoperation wird für eine
ausgewählte
Zelle durchgeführt
und dann werden Programmierimpulse angelegt zum Anheben des Schwellwertes,
wodurch eine Bitleitung nicht entladen wird und an den Pegel "HIGH" geklemmt wird. Dies
ermöglicht
das Laden des Pegels "LOW" am Knoten N2 des
ersten Latchs 1a, wodurch die Programmierung abgeschlossen
ist.
-
Andererseits
wird die Bitleitung entladen, wenn der Schwellwertpegel der Speicherzelle
niedrig ist, selbst nach dem Anwenden des Programmierimpulses, wodurch
der Knoten N3 des ersten Latchs 1a auf den Pegel "HIGH" bei der Wiedergewinnung
zur Programmierverifizierung geklemmt wird. Programmierimpulsanwenden
und das Wiedergewinnen zur Programmierverifizierung werden wiederholt,
bis der Knoten N2 auf den Pegel "LOW" gesetzt wird.
-
Im
Gegensatz zur 48 zeigt 49 eine Potentialänderung, wenn der Datenwert "HIGH" ("1"-Programmierung
oder Nicht-Programmierung) an den Knoten N1 des ersten Latchs 1a geklemmt worden
ist, welches das Ergebnis der Wiedergewinnung zur Programmierverifizierung
vernachlässigt weil
die Programmierimpulse den Schwellwertpegel einer ausgewählten Speicherzelle
nicht ändern.
Der Knoten N2 des Latchs 1a ist anfangs auf den Pegel "LOW" gesetzt worden zum
Laden der gelesenen Daten einer ausgewählten Bitleitung zu dem Latch 1a.
-
Wie
bei der vorangegangenen Ausführungsform
werden das Programmierimpulsanwenden und die Wiedergewinnung zur
Programmierverifizierung wiederholt, bis die Knoten N2 und N1 auf
die Pegel "LOW" bzw. "HIGH" eingestellt sind
für alle
Seitenpuffer bei der simultanen Ein-Seiten-Programmierung. Es wird
bestimmt, ob die Programmierung aller Zellen abgeschlossen worden
ist (Schritt S15 in 9A) und wenn dies der Fall
ist, wird der Programmierablauf beendet.
-
Als
nächstes
wird die Ober-(erstes)Bit-Programmierung offenbart unter Bezugnahme
auf 9B.
-
In
jedem Seitenpuffer wird der Ober-Bit-Datenwert in das zweite Latch 2a (46) geladen durch die Datensignalleitungen "io" und "ion" (Schritt S21) und
dann zu dem ersten Latch 1a transferiert (Schritt S22),
gefolgt von dem internen Datenladen (Schritt S23). Wie bereits offenbart,
wird durch das interne Datenladen der in ausgewählten Speicherzellen gespeicherte
Unter-Bit-Datenwert in das Latch 2a wiedergewonnen.
-
Wie
bei den vorangegangenen Ausführungsformen
entsprechen die in eine Speicherzelle zu programmierenden Erst-
und Zweit-Bit-Datenwerte
jeweils den ersten bzw. den zweiten Zeilenadressen für Mehrpegelbetrieb,
wobei die beiden Adresse dieselbe Wortleitung und Speicherzelle
auswählen.
-
50 zeigt Potentialänderung beim internen Datenladen.
-
Das
zweite Latch 2a wird innerhalb einer Periode von dem Bitleitungsvoraufladen
bis zum Bitleitungspotentiallesen zurückgesetzt. Im Detail wird der Rücksetz-NMOS-Transistor 84 (46) eingeschaltet zum Zurücksetzen der Knoten N5 und
N6 bei den Pegeln "LOW" bzw. "HIGH". Eine Wiedergewinnungsspannung
Vr10 (43B) wird dann angelegt an
eine ausgewählte
Wortleitung zum Wiedergewinnen eines Bitleitungspotential zu dem
Knoten N4b. Das Steuersignal BLSEN2 wird auf den Pegel "HIGH" gesetzt zum Einschalten
des NMOS-Transistors 204, wodurch ein gelesenes Ergebnis
am Knoten N4b in dem zweiten Latch 2a gespeichert wird.
Daten "11" in einer ausgewählten Zelle
führen
zu dem Pegel "LOW" am Knoten N5, wohingegen "10" zu dem Pegel ""HIGH" führen.
-
Nach
dem Programmierimpulsanwendebetrieb (Schritt S24 der 9B), wird Wiedergewinnung "Verifizieren00" zur Programmierungsverifizierung bezüglich "00" (Schritt S25) ausgeführt, gefolgt von
dem Wiedergewinnen "Verifizieren01" zur Programmierungsverifizierung
bezüglich "01" (Schritt S26).
-
51 zeigt eine Potentialänderung bei der "0"-Programmierung
zu dem ersten Bit einer "11"-programmierten Speicherzelle.
-
Der
Knoten N1 des ersten Latchs 1a ist auf den Pegel "LOW" gesetzt worden zum
Starten einer "0"-Programmierung.
Eine ausgewählte
Bitleitung wird vorauf geladen von dem Knoten N5 des zweiten Latchs 2a bei
der Wiedergewinnung "Verifizieren00" über die NMOS-Transistoren 30b und 41b.
Ein angehobenes Potential, das zum Transferieren eines "HIGH"-Pegels Vdd ausreicht, wird an das Gate
des NMOS-Transistors 30b angelegt, um ihn einzuschalten.
Ein Potential Vpre zum Bestimmen eines Bitleitungsvoraufladepotentials
für die
Wiedergewinnung wird an das Gate des NMOS-Transistors 41b angelegt,
um ihn einzuschalten.
-
Der
Pegel "LOW" ist an den Knoten
N5 geklemmt worden, wenn die Daten "11" von
einer ausgewählten
Zelle in dem vorangegangenen internen Datenladen wiedergewonnen
worden sind, wodurch die ausgewählte
Bitleitung vorauf geladen wird auf 0 V. Das Wiedergewinnen "Verifizieren00" führt demnach
zu dem Pegel "LOW", der am Knoten N4b
als ein Ergebnis des Bitleitungspotentiallesens erscheint, ohne
eine Änderung
der in dem ersten Latch 1a gespeicherten Daten, selbst
wenn der NMOS-Transistor eingeschaltet ist.
-
Das
drauffolgende Wiedergewinnen "Verifizieren01" wird durch Voraufladen
der ausgewählten
Bitleitung über
den NMOS- Transistor 47b mit
dem Potential Vdd am Knoten N4b durchgeführt wie das Voraufladen für eine gewöhnliche
Wiedergewinnungsoperation. Das Wiedergewinnen "Verifizieren01" führt
zu einem Bitleitungspotential, das am Knoten N4b erscheint, welches
dem Schwellwertpegel einer ausgewählten Zelle nach dem Anwenden
des Programmierimpulses entspricht. Ein Ergebnis der Wiedergewinnung
wird in das erste Latch 1a geladen.
-
Die "01"-Programmierung zu
der "11"-programmierten Zelle
ist abgeschlossen, wenn der Knoten N1 des ersten Latchs 1a auf
den Pegel "HIGH" bei dem Wiedergewinnen "Verifizieren01" gesetzt worden ist.
-
52 zeigt Potentialänderungen in der "0"-Programmierung zu dem ersten Bit einer "10"-programmierten Speicherzelle.
-
Der
Knoten N1 des ersten Latchs 1a ist auf den Pegel "LOW" gesetzt worden zum
Starten einer "0"-Programmierung.
Eine ausgewählte
Bitleitung wird voraufgeladen von dem Knoten N5 des zweiten Latchs 2a bei
der Wiedergewinnung "Verifizieren00" über die NMOS-Transistoren 30b und 41b.
Wie bei der vorangegangenen Offenbarung wird das Potential Vpre
an das Gate des Transistors 41b angelegt.
-
Abweichend
von der Programmierung zu der "11"-programmierten Zelle
ist der Pegel "HIGH" am Knoten N5 bei
der Programmierung zu der "01"-programmierten Zelle
geklemmt worden zur Bitleitungsvoraufladung wie bei der üblichen
Wiedergewinnungsoperation. Das Bitleitungspotential wird dann am
Knoten N4b in Übereinstimmung
mit dem Schwellwertpegel einer ausgewählten Zelle nach der Programmierimpulsanwendeoperation
geklemmt, wobei die geklemmten Daten in das erste Latch 1a über den
NMOS-Transistor 203 geladen
werden.
-
Die "00"-Programmierung zu
der "10"-programmierten Zelle
ist abgeschlossen, wenn der Knoten N1 des ersten Latchs 1a auf
den Pegel "HIGH" bei der Wiedergewinnung "Verifizieren00" gesetzt worden ist.
-
Das
nachfolgende Wiedergewinnen "Verifizieren01" wird ausgeführt mit
einer hohen Wiedergewinnungsspannung Vv01 (43B)
auf der ausgewählten
Wortleitung. Die "00"-programmierte Zelle wird eingeschaltet
bei der Wiedergewinnung "Verifizieren01", um den Pegel "LOW" auf der Bitleitung
einzustellen, wodurch der gelesene Datenwert "LOW" am
Knoten N4b unverändert
erscheint, selbst wenn der Datenwert im ersten Latch 1a gespeichert ist.
-
Entsprechend
wird bei der Wiedergewinnung "Verifizieren01" der Pegel "HIGH" am Knoten N1 für die Speicherzellen,
zu denen eine Programmierung abgeschlossen worden ist, geklemmt,
wohingegen der Pegel "LOW" geklemmt wird an
den Knoten N1 für
die Speicherzellen, die programmiert werden.
-
53 und 54 zeigen
Potentialänderungen
bei einer "1"-Programmierung zum ersten Bit einer "11"- bzw. "10"-programmierten Zelle.
-
Wie
die "0"-Programmierung werden
die Wiedergewinnung "Verifizieren00" und "Verifizieren01" sequentiell ausgeführt, während jeweils
die Pegel "HIGH" und "LOW" an die Knoten N1 und
N2 des ersten Latch 1a geklemmt werden ohne Änderung
selbst wenn der NMOS-Transistor 203 (46) eingeschaltet ist.
-
Die
Programmierung und Wiedergewinnung zur Programmverifizierung werden
wiederholt bis der Knoten N1 für
alle Seitenpuffer auf den Pegel "HIGH" gesetzt worden ist (Schritt
S27 in 9B) und wenn dies der Fall
ist, endet die Programmierung.
-
Als
nächstes
wird eine gewöhnliche
Mehrdaten-Wiedergewinnungsoperation
unter Verwendung des in der 46 gezeigten
Seitenpuffers 140b unter Bezugnahme auf 55 offenbart, die eine Potentialänderung
bei der Wiedergewinnung des ersten Bits zeigt und 47B, die ein Flussdiagramm zur Wiedergewinnung
des ersten Bits bei Auswahl der ersten Zeilenadresse für Mehrpegelbetrieb
zeigt.
-
Eine
Wiedergewinnungsspannung Vr00 (43B)
wird an eine ausgewählte
Wortleitung für eine
Wiedergewinnungsoperation (Schritt S41) angelegt. Während der
Periode von dem Bitleitungsvoraufladen bis zum Bitleitungspotentiallesen
wird das Steuersignal BLSEN0 auf den Pegel "HIGH" gesetzt zum
Einschalten des NMOS-Transistors 202 während der NMOS-Transistor 201 eingeschaltet
ist über den
Voraufladetransistor 47b, wodurch das erste Latch 1a zurückgesetzt
wird, in welchem die Knoten N1 und N2 auf die Pegel "LOW" bzw. "HIGH" gesetzt sind.
-
Nachdem
des Bit-Potential gelesen worden ist, wird der Knoten N4b auf den
Pegel "HIGH" oder "LOW" gesetzt, welcher
dann in das erste Latch 1a über den NMOS-Transistor 203 geladen
wird, der eingeschaltet wird durch das Steuersignal BLSEN1 auf dem
Pegel "HIGH".
-
Der
Knoten N4b wird auf den Pegel "LOW" gesetzt als ein
Ergebnis des Bitleitungspotentiallesens, wenn ein Datenwert "11" oder "10" in einer ausgewählten Zelle
gespeichert worden ist. Dies führt
zu keinem Entladen des Knotens N2 über die NMOS-Transistoren 201 und 203,
wodurch der Pegel "LOW" an den Knoten N1
des ersten Latch 1a geklemmt wird, welches als Datenwert "1" wiedergewonnen wird.
-
Andererseits
ist der Knoten N4b auf den Pegel "HIGH" gesetzt
worden als ein Ergebnis des Bitleitungspotentiallesens, wenn der
Datenwert "00" oder "01" in einer ausgewählten Zelle
gespeichert worden ist. Dies führt
zu einem Entladen von dem Knoten N2 über die NMOS-Transistoren 201 und 203,
wodurch der Pegel "HIGH" am Knoten N1 geklemmt
wird, welcher als Datenwert "0" wiedergewonnen wird.
-
Datenwiedergewinnung über die
Daten-Ein-/Ausgabeanschlüsse
I/O wird durchgeführt derart,
dass die Daten in dem ersten Latch 1a zum zweiten Latch 2a transferiert
werden (Schritt S42) für Spaltenadressenauswahl über die
Spalten-Gate-Transistoren 51 und 52.
-
56 bis 58 zeigen
eine Potentialänderung
bei der Wiedergewinnung des zweiten Bits in Übereinstimmung mit dem in 47A gezeigten Flussdiagramm.
-
56 zeigt eine Potentialänderung bei der ersten Wiedergewinnung "Read10" bzw. "Lesen10" der beiden Wiedergewinnungsoperationen "Read10" (Schritt S31') und "Read01" (Schritt S32') in 47A für
die Wiedergewinnungsoperation des zweiten Bits bei Auswahl der zweiten
Zeilenadresse für
Mehrpegelbetrieb.
-
Das
erste Wiedergewinnen "Read10" legt eine Wiedergewinnungsspannung
Vr10, die in 43B gezeigt ist, an eine ausgewählte Wortleitung
an. Die Wiedergewinnungsspannung ist der einzige Unterschied zwischen
der Wiedergewinnung "Read10" und der Wiedergewinnung "Read00", die in der 47B gezeigt ist.
-
Die
Wiedergewinnungsoperation führt
zu dem Pegel "LOW" am ersten Latch 1a von "11"-programmierten Zellen,
wohingegen zu dem Pegel "HIGH" von "10"-, "00"- und "10"-programmierten Zellen.
-
Bei
dem nachfolgenden Wiedergewinnen "Read01" wird eine Wiedergewinnungsspannung Vr01,
die in 43B gezeigt ist, angelegt an
die ausgewählte
Wortleitung, welche eine Potentialänderung bewirkt, die in 47 und 48 gezeigt
ist. 47 zeigt eine Potentialänderung,
wenn der Knoten N1 des ersten Latchs 1a auf den Pegel "LOW" gesetzt worden ist
("11") in der ersten Wiedergewinnungsoperation
bei "Read01". Andererseits zeigt 58 eine Potentialänderung, wenn der Knoten N1 auf
den Pegel "HIGH" ("10", "00" oder "10") in der ersten Wiedergewinnungsoperation
bei "Read01" gesetzt ist.
-
Die
zweite Wiedergewinnung "Read01" erfordert keine
Rücksetzoperation
vor dem Lesen des Bitleitungspotentials, wodurch das Ergebnis des
ersten Wiedergewinnens "Read10" in dem ersten Latch 1a gespeichert
worden ist. Das Ergebnis des Bitleitungslesens, das an den Knoten
N4b geklemmt ist, wird in das Latch 1a über den NMOS-Transistor 202 geladen,
der durch das "HIGH"-Pegel-Steuersignal BSSEN0
eingeschaltet ist.
-
Wenn "11"-programmierte Zellen
ausgewählt werden,
ist der Pegel "LOW" am Knoten N1 des
ersten Latchs 1a geklemmt worden (57)
ohne Rücksicht
auf das Potential am Knoten N4b.
-
Wenn "10"- oder "00"-programmierte Zellen ausgewählt werden,
wird ein Potential einer ausgewählten
Wortleitung auf Vr01 festgelegt (43B) zum
Einschalten der ausgewählten
Zelle, wodurch die gelesenen Daten "LOW" an
dem Knoten N4b erscheinen. Dieses führt zu einem Hochimpedanz-Zustand
für den
NMOS-Transistor 201, selbst wenn er eingeschaltet ist (oder
ausgeschaltet), wodurch das Potential am Knoten N1 unverändert bleibt,
selbst wenn der NMOS-Transistor 202 eingeschaltet wird zum
Halten der bei dem vorangegangenen Wiedergewinnen "Read00" wiedergewonnenen
Daten (58).
-
Wenn "01"-programmierte Zellen
ausgewählt
werden, werden sie nicht eingeschaltet bei einer ausgewählten Wortleitungsspannung
Vr01 mit keiner Entladung von der Bitleitung, der Pegel "HIGH" wird an dem Knoten
N4b eingestellt nach dem Bitleitungspotentiallesen. Der NMOS-Transistor 201 wird
dann eingeschaltet, um den Knoten N1 abzusenken auf den Pegel "LOW", wenn der NMOS-Transistor 202 eingeschaltet
ist (58).
-
Wie
oben offenbart, werden die wiedergewonnenen Daten in dem ersten
Latch 1a derart gespeichert, dass der Knoten N1 auf den
Pegel "LOW" eingestellt wird,
wenn das zweite Bit "1" ist, wohingegen
er auf "HIGH" eingestellt wird,
wenn das zweite Bit "0" ist.
-
Der
Datenwert im ersten Latch 1a wird dann zu dem zweiten Latch 2a transferiert
(Schritt S33) und über
die Daten-Ein-/Ausgabeanschlüsse I/O ausgegeben.
-
Der
Mehrpegel-Wiedergewinnungsbetrieb wird erzielt wie offenbart.
-
Der
Zwei-Pegel-Wiedergewinnungsbetrieb wird erzielt mit dem zweiten
Latch 2a als Cache-Speicher. Die Neuprogrammierungs- und Wiedergewinnungsschaltung 10 mit
dem ersten Latch 1a ist ein Hauptpuffer. Der Zwei-Pegel-Betrieb
für Datentransfer
nur durch das zweite Latch 2a durch. Der Wiedergewinnungsbetrieb
legt eine Wiedergewinnungsspannung innerhalb der Zwei-Pegel-Datenschwellwertverteilung
an einer ausgewählten
Wortleitung an zum Durchführen
derselben Operation wie bei der in 47B und 55 gezeigten
Wiedergewinnung "Read00". Die Programmieroperation
wird durchgeführt,
wie in 9A gezeigt.
-
Wie
in der vorangegangenen Ausführungsform
offenbart, bewegt sich die Wiedergewinnungsoperation zur nachfolgenden
Seitenwiedergewinnung unter Verwendung des Hauptseitenpuffers 10 nachdem
ein vorangehend wiedergewonnener Datenwert von dem ersten Latch 1a zu
dem zweiten Latch 2a transferiert worden ist. Die Programmieroperation lädt die an
der nachfolgenden Seitenadresse zu programmierenden Daten zum zweiten
Latch 2a nachdem der vorangehend zu programmierende Datenwert
von dem zweiten Latch 2a zu dem ersten Latch 1a transferiert
worden ist. Diese Wiedergewinnungs- und Programmierungsoperationen
erzielen eine Cache-Funktion.
-
Die
Transistorgröße der NMOS-Transistoren 201 bis 204,
die zum Invertieren von in einem aktiven ersten Latch 1a gespeicherten
Daten verwendet werden, sind einer der wichtigen Faktoren in 46. In 46 wird
abweichend von 2 das Ergebnis des Bitleitungsdatenlesens "HIGH" oder "LOW" dem Gate des NMOS-Transistors 201 zugeführt. Der
Pegel "HIGH" beim Leseknoten
N4b während
des Datenlesens entspricht Vdd, wohingegen "LOW" weitgehend
gleich dem Bitleitungspotential nach dem Entladen ist, wenn eine
ausgewählte
Zelle eingeschaltet wird. Der NMOS-Transistor 201 muss
die Erfordernisse dahingehend erfüllen, dass er eingeschaltet
wird in einem spürbar
niedrigen Impedanzzustand, wenn der Leseknoten N4b auf einen Pegel "HIGH" eingestellt wird
wohingegen er ausgeschaltet wird oder zumindest in einen spürbar hohen
Impedanzzustand versetzt wird, wenn der Knoten N4B auf einen Pegel "LOW" gesetzt wird. Ein
anderes wichtiges Erfordernis ist ein geringer Einschaltwiderstand für die NMOS-Transistoren 201 bis 203 zum
Sicherstellen der Inversion der im ersten Latch 1a gespeicherten
Daten.
-
Ein
ausreichend weiter Lesespielraum ist jedoch schwer zu erreichen
nur durch den Entwurf der Transistorgröße, wie oben diskutiert. Er
wird erreicht durch Potentialsteuerung am Knoten N4b mit kapazitiver
Kopplung unter Verwendung des Kondensators 48, der in 46 gezeigt ist zusätzlich zu dem Design der Transistorgröße. Im Detail
wird nachdem die Bitleitung über
den NMOS-Transistor 47b voraufgeladen worden ist, beispielsweise
ein positives Potential an den Anschluss CAPG angelegt zum Anheben des
Leseknotens N4b, so dass das Kanalwiderstandsverhältnis des
NMOS-Transistors 201 zwischen der "HIGH"-
und der "LOW"-Ausgangsgröße hierdurch
einen weiten Spielraum zum Lesen erzielend.
-
Wie
bereits offenbart, ist in dem Seitenpuffer 140, der in 2 gezeigt
ist, der Hauptpuffer 10 mit einem ersten Latch 1a aus
einem Leseverstärker
erstellt. Flash-Speicher vom NAND-Typ sind leicht zu bauen für Massenspeicher,
wohingegen sie einen geringen Strom für ihre Zellen produzieren und
hierdurch benachteiligt sind gegenüber NOR-Typen bei Hochgeschwindigkeits-Wiedergewinnung. Flash-Speicher
vom NAND-Typ wiedergewinnen demnach üblicher Weise simultan 1-Seitenspeicherzellendaten,
beispielsweise 512 Bytes, die ausgewählt werden durch eine Wortleitung
zum seriellen Transfer und aus den wiedergewonnenen Daten. Diese
Operationen erfordern Leseverstärker
für 512 Bytes
für 512-Byte-Speicherzellen.
-
Der
Leseverstärker
führt Bitleitungspotentialklemmen
und Vorleseoperationen unter Verwendung des Klemmtransistors 41 durch,
der in 2 gezeigt ist zum Erzielen
einer höchstmöglichen
Hochgeschwindigkeitswiedergewinnung. Die Klemmoperation führt jedoch
zu einem engen Spielraum des "0"- oder "1"-Datenlesens.
Je niedriger die Energieversorgungsspannung oder je niedriger der Schwellwertpegel
des ersten Latch 1a, umso enger wird der Lesespielraum.
-
Solch
ein enger Lesespielraum wird detailliert unter Bezugnahme auf 59 diskutiert, die einige Lesewellenformen darstellt.
-
Beim
Wiedergewinnen wird eine Wiedergewinnungsspannung an einer ausgewählte Wortleitung
angelegt, die mit einem Zellenblock vom NAND-Typ verbunden ist,
wohingegen eine Wiedergewinnung-"Erfüllt"-Spannung an die
anderen, nicht ausgewählten
Wortleitungen angelegt wird zum Behandeln der serienverbundenen
Zellen als "Erfüllt"-Transistoren. Hier
bedeutet "Erfüllt" das abschließen einer
Datenprogrammierung, wie bereits erläutert.
-
Eine
Bitleitungsentladung durch die Source-seitige Gate-Auswahlleitung SGS
(3) einer Zelle von NAND-Typ wird folgendermaßen durchgeführt:
Die
Drain-seitige Gateauswahlleitung SGD ist immer Ein wohingegen die
Source-seitige Gateauswahlleitung immer Aus ist zum Durchführen von
Bitleitungsvoraufladen (im Momenten T0 bis T1 in 59). Mit anderen Worten, der Klemmtransistor 41 und
der Voraufladetransistor 47 (2) werden
eingeschaltet zum Durchführen
von Voraufladen.
-
Wie
in 59 gezeigt, wird ein von der Energieversorgungsspannung
Vdd angehobenes bzw. geboostetes Potential BLPRE (Vdd + Vtn) an
das Gate des Voraufladetransistors 47 angelegt zum Anlegen
von Vdd an den Leseknoten N4. Darüber hinaus wird das Potential
BLCAMP am Gate des Klemmtransistors 41 auf Vpre festgelegt
zum Wiederaufladen der Bitleitung auf (Vpre – Vtn). Das Potential Vtn ist
ein Schwellwertpegel von NMOS-Transistoren.
-
Das
Potential BLCLAMP wird dann zurückgeführt auf
0 V zum Einschalten der Source-seitigen Gate-Auswahlleitung SGS,
wodurch die Bitleitung entladen wird oder stattdessen das Voraufladepotential
hält in Übereinstimmung
mit dem Datenwert einer ausgewählten
Zelle.
-
Zu
einem Moment T2 (59) werden die Potentiale SEN
und LAT auf den Pegel "LOW" festgelegt, um die
Aktivierung des ersten Latchs 1a und dann wird der NMOS-Transistor 42 eingeschaltet zum
Verbinden des Leseknotens N4 und des Knotens N1 des ersten Latch 1a,
hierdurch den Knoten N1 auf Vdd voraufladend.
-
Zu
einem Moment T3 wird der voraufgeladene Transistor 47 eingeschaltet,
um den Knoten N1 in einen schwebenden Zustand zu bringen. Das Potential
BLCLAMP an dem Gate des Klemmtransistors 47 wird auf ein
Wiedergewinnungspotential Vsen festgelegt während der Periode der Momente
T4 und T5 während
der Knoten N1 in den schwebenden Zustand versetzt ist.
-
Wenn
ein in einer ausgewählten
Zelle programmierter Datenwert "1" ist, ist das Bitleitungspotential
verringert worden unter (Vsen – Vtn),
wodurch die Knoten N1 und N2 verringert worden sind auf das Bitleitungspotential
während
der Klemmtransistor 41 eingeschaltet worden ist.
-
Andererseits,
wenn ein in einer ausgewählten
Zelle programmierter Datenwert "0" ist, hält die Bitleitung
das Voraufladepotential, die Knoten N1 und N2 halten das Voraufladepotential
Vdd, während der
Klemmtransistor 41 ausgeschaltet wird.
-
Als
ein Ergebnis ist für
eine "1"-programmierte Zelle
die Bitleitungsspannung (Vpre – Vsen)
verstärkt
worden auf Vdd – (Vpre – Vsen)
und wiedergewonnen worden an dem Knoten N1 und N4. Beispielsweise
bei einem 0,7 V-Bitleitungs-Voraufladepotential
und etwa 0,25 V-Bitleitungs-Wiedergewinnungsspannung,
wird das Potential an den Knoten N1 und N4 verstärkt auf etwa 2 V.
-
Nach
dem Klemmoperation wird das Potential am Knoten N1 auf den Pegel "HIGH" oder "LOW" festgelegt und in
dem ersten Latch 1a gespeichert. Eine gewünschte Wiedergewinnungsoperation
aktiviert den getakteten Invertierer CI2 (2) des
ersten Latchs 1a zu einem Moment T7 und aktiviert dann den
getakteten Invertierer CI1 zu einem Moment T8 zur Datenwiedergewinnung.
-
Demgemäss muss
nach der Bitleitungsverstärkung
durch die Klemmoperation das "LOW"-Pegel-Potential
(Wellenform "q" in 59), das an dem Knoten N1 und N4 erscheint, niedriger
sein als der Schwellwertpegel des ersten Latchs 1a. Mit
anderen Worden, der Schwellwertpegel des ersten Latchs 1a muss
höher sein
als das Potential des Pegels "LOW", das an dem Knoten
N1 und N4 erscheint. Daher erfüllen
die Pegel "HIGH" und "LOW" auf der Bitleitung bei
der Wiedergewinnung ein Erfordernis, das einen Schwellwertpegel
der getakteten Invertierer, der bedingt durch eine Energieversorgungsspannungsabnahme
auf den niedrigsten Pegel abgesenkt worden ist, keine Wiedergewinnungsfehler
verursachen wird.
-
Andererseits
gilt, dass je niedriger das Bitleitungs-Voraufladepotential bei der Wiedergewinnung ist,
desto kleiner der Zellenstrom, weil ein Zellenstrom von der Drain-Spannung abhängt, demnach
je länger
die Wiedergewinnungszeit. Eine Erhöhung des Einschaltstroms einer "1"-programmierten Zelle für Hochgeschwindigkeits-Wiedergewinnung
wird beschränkt
sein durch einen Schwellwertpegel des ersten Latchs 1a,
hierdurch eine Leseverstärkerschaltungskonfiguration
erfordernd, bei der der Schwellwertpegel des Leseverstärkers nicht
das Bitleitungs-Voraufladepotential
einschränkt
oder die Spannung.
-
Als
nächstes
werden Modifikationen eines Leseverstärkers offenbart, anwendbar
auf den Hauptseitenpuffer 10 (2) unter
Berücksichtigung der
oben diskutierten Erfordernisse.
-
Die
Modifikationen des nachstehenden offenbarten Leseverstärkers sind
anwendbar auf die vorangegangenen Ausführungsformen zum Erzielen von
Mehrpegeloperation und Cache-Funktion und auch auf gewöhnliche
Zwei-Pegel-Flash-Speicher vom
NAND-Typ.
-
Zudem
sind die Modifikationen anwendbar auf irgendwelche nicht-flüchtigen
Speicher, die Daten speichern in Übereinstimmung mit dem Vorliegen
eines Bitleitungsstroms oder seines Pegels ausführen zusätzlich zum elektrischen Löschen nicht-flüchtiger Speicher.
-
Die
Modifikationen werden offenbart, wie sie in Zwei-Pegel-Daten-Wiedergewinnung
in einem Flash-Speicher vom NAND-Typ verwendet werden.
-
(Erste Modifikation)
-
60 zeigt ein Schaltungsdiagramm der ersten Modifikation
des Leseverstärkers,
welcher anwendbar ist auf einen Seitenpuffer 10, der in 2 gezeigt
ist.
-
Ein
Bitleitungs-Auswahlschalter 141b wählt entweder die Bitleitung
BLo oder BLe, um verbunden zu sein mit einem Leseverstärker 141a.
Das erste Latch 1a mit den getakteten Invertierern CI1
und CI2 speichert einen wiedergewonnenen Ein-Seitenspeicherzellen-Datenwert
bis zum seriellen Transfer der Datenausgabe. Beim Programmieren
speichert das Latch 1a einen zu programmierenden Datenwert
für jede
Seite, bis die Programmierung abgeschlossen ist.
-
61 stellt die Verbindung des Leseverstärkers 141a und
eines Zellenarrays mit zwei NAND-Zellenblöcken 101 und 102 dar.
-
Leseverstärker (P/B) 141a,
jeder für
eine Seite, sind mit der Bitleitung BLo oder BLe über entsprechende
Auswahlschalter (BLS) 141b verbunden. Die Leseverstärker 141a sind
mit dem Daten-Eingabe-/Ausgabepuffer 50a über das
Spaltengate 150 verbunden. Der in dem Leseverstärker 141a gespeicherte
Datenwert wird konvertiert in serielle Daten zur Wiedergewinnung
durch das Spaltengate 150, das durch eine Spaltenadresse
geschaltet wird.
-
Wie
in 2 gezeigt, ist der Leseknoten N4 mit einer ausgewählten Bitleitung über den Klemm-NMOS-Transistor 41 verbunden,
der Vorauflade-NMOS-Transistor 47 ist mit dem Knoten N4
verbunden und der Transfer-NMOS-Transistor 42 ist zwischen
dem Knoten N4 und dem Knoten N1 (dem Eingangsanschluss des getakteten
Invertierers CI2) des ersten Latchs 1a vorgesehen. Eine
Verifizierungsschaltung 20 entspricht den Transistoren 44 bis 46 und
dem Kondensator 49 in 2.
-
Zu
dem Leseknoten N4 ist ein Kondensator 48c mit einem Anschluss
BOOST2 verbunden, der zur Potentialsteuerung des Knotens N4 mit
kapazitiver Kopplung beim Datenlesen verwendet wird.
-
62 zeigt Wellenformen beim Datenlesen durch den
Leseverstärker 141a.
-
Zu
einem Moment T0 wird das Potential BLPRE am Gate des Voraufladetransistors 47 auf (Vdd
+ Vtn) eingestellt und simultan wird das Potential BLCLAMP am Gate
des Klemmtransistors 41 auf Vpre eingestellt zum Voraufladen
einer ausgewählten
Bitleitung vom Leseverstärker 141a,
während
der Transistor 42 ausgeschaltet wird und das erste Latch 1a aktiviert
wird. Diese Voraufladeoperation setzt den Leseknoten N4 im Leseverstärker 141a auf
Vdd und die ausgewählte
Bitleitung (Vpre – Vtn).
-
Zu
einem Moment T2 wird der Klemmtransistor 41 ausgeschaltet
zum Einschalten eines Auswahlgates einer NAND-Zelle zum Entladen
der Bitleitung in Übereinstimmung
mit einem Datenwert der ausgewählten
Zelle. Auch zu dem Moment T2 wird das Potential BLCD am Gate des
NMOS-Transistors 42 eingestellt auf (Vdd + Vtn) zum Einschalten
des Transistors 42 nachdem das Bitleitungsentladen begonnen
hat. Darüber
hinaus werden die Potentiale SEN und LAT an den Gates der NMOS-Transistoren 18 und 14 jeweils
auf den Pegel "LOW" gelegt, um das erste
Latch 1a zu deaktivieren, wodurch der Knoten N1 aufgeladen
wird auf Vdd.
-
Zu
einem Moment T3 wird das Potential BLPRE am Gate des NMOS-Transistors 47 auf
0 V gesetzt zum Ausschalten des Voraufladetransistors 47 während das
erste Potential am Terminal BOOST des Kondensators 48c angehoben
wird auf das zweite Potential, beispielsweise von 0 V auf 1 V.
-
Während der
Knoten N4 in einem schwebenden Zustand gewesen ist, wird das Potential
am Knoten N4 angehoben bedingt durch die kapazitive Kopplung. Diese
Potentialanhebung wird bestimmt in Übereinstimmung mit einem Kapazitätsverhältnis zwischen
dem Kondensator 48c und dem Knoten N4.
-
Andererseits
wird das Potential am Knoten N1 angehoben auf etwa Vdd, weil das
Potential BLCD am Gate des Transistors 42 auf (Vdd + Vtn) eingestellt
worden ist, wodurch das Potential zunimmt bedingt dadurch, dass
kapazitive Kopplung nicht zugelassen ist.
-
Ein
Kondensator, der dem Kondensator 48c entspricht, wird allgemein
verwendet zum Unterdrücken
von Leckstrom oder parasitären
Kapazitäten, wenn
der Knoten N4 im schwebenden Zustand gehalten wird, aber nicht zum
Spannungsanheben wie bei dieser Modifikation.
-
Zu
einem Moment T4 wird das Potential BLCLAMP an dem Gate des Klemmtransistors 41 auf Vsen
eingestellt zum Verbinden einer ausgewählten Bitleitung und des Leseknotens
N4.
-
Die
Potentialänderung
(a) bis (d) am Leseknoten N4 ist in 62 dargestellt,
welche einer Bitleitungspotentialänderung entspricht in Übereinstimmung
mit Daten einer ausgewählten
Zelle.
-
Die Änderung
(a) zeigt eine Potentialänderung
am Knoten N4 zu einem programmierten Datenwert "0" an,
für welchen
die ausgewählte
Zelle einen spürbar
hohen Schwellwertpegel hat, in welchem das Bitleitungspotential
etwa auf ein Voraufladepotential geklemmt ist, wodurch der Klemmtransistor 41 nicht eingeschaltet
wird zum Klemmen des angehobenen Potentials an dem Knoten N4.
-
Die Änderung
(b) zeigt eine Potentialänderung
an dem Knoten N4 zu programmierten Daten "0" an,
für welche
die ausgewählte
Zelle einen Schwellwertpegel nahe bei einem ausgewählten Wortleitungspotential
hat, in welchem ein Sub-Schwellwertstrom
fließt,
wobei das Bitleitungspotential und auch das Potential am Knoten
N4 geringfügig
abgesenkt sind.
-
Die Änderung
(c) zeigt eine Potentialänderung
am Knoten N4 zu programmierten Daten "1" an, für welche
die ausgewählte
Zelle einen hohen Schwellwertpegel hat, in welcher Bitleitungsentladung
verzögert
wird, wobei das Potential am Knoten N4 ein Zwischenpegel ist wie
auf einer ausgewählten Bitleitung.
-
Darüber hinaus
zeigt die Änderung
(d) eine Potentialänderung
am Knoten N4 zu programmierten Daten "1" an,
für welche
die ausgewählte
Zelle einen spürbar
niedrigen Schwellwertpegel hat, in welchem der Knoten N4 mit einer
ausgewählten
Bitleitung verbunden ist, auf der das Potential entladen worden
ist auf etwa 0 V, wodurch der Knoten N4 entladen wird auf etwa 0
V wie die Bitleitung.
-
Die
Operation zu dem Moment T4 ist eines der Merkmale dieser Modifikation,
in welcher Bitleitungspotential verstärkt wird mit einem hohen Potential
am Knoten N4.
-
Zu
einem Moment T5 wird das Potential BLCLAMP am Gate des Klemmtransistors 41 variiert auf
Vsup, das geringfügig
niedriger ist als Vsen, aber höher
als der Schwellwertpegel zum Einschalten des Transistors 41 bei
etwa 0 V. Diese Potentialänderung ermöglicht es
dem Knoten N4 nicht, mit der ausgewählten Bitleitung verbunden
zu sein, ohne dass das Potential auf der Bitleitung niedriger ist
als wenn das Potential Vsen angelegt wird.
-
Zu
einem Moment T6 wird das Potential am Anschluss BOOST2 zurückgeführt auf
0 V. Die Abnahme der Gate-Spannung des Klemmtransistors 41 erschwert
es dem Knoten N4, mit der ausgewählten Bitleitung
verbunden zu sein, wodurch der Knoten N4 leicht in einen schwebenden
Zustand gebracht werden kann.
-
In
den Änderungen
(a) bis (c) wird das Potential am Knoten N4 reduziert in Übereinstimmung mit
einem Potentialabfall am Anschluss BOOST2. Andererseits würde bei
der Änderung
(d), in der das Potential am Knoten N4 auf etwa 0 V festgelegt wird, nach
dem Moment T4, der Knoten N4 auf ein negatives Potential abgesenkt
werden und wenn der Knoten N4 im schwebenden Zustand ist, welcher
jedoch davor geschützt
ist, auf einen negativen Pegel abgesenkt zu werden weil ein Strom
zu dem Knoten N4 von der ausgewählten
Leitung über
den Klemmtransistor 41 fließt. Ein solcher Schutz der
Potentialabnahme wird erreicht durch den Kondensator 48c, dessen
Kapazität
kleiner ist als die Bitleitungskapazität.
-
Wie
oben offenbart, kehrt bei der "0"-Datenwiederherstellung
in Übereinstimmung
mit der Änderung
(a) das Potential am Knoten N1 zu Vdd zurück, d.h. das Potential vor
dem Anheben durch den Kondensator 41. Andererseits wird
bei der "1"-Datenwiedergewinnung in Übereinstimmung
mit der Änderung (c),
für welche
die Bitleitungsentladung langsam ist, das Potential am Knoten N1
ab auf ein Potential unterhalb des Bitleitungspotentials.
-
Demgemäss führt der
Leseverstärker
in dieser Modifikation nicht nur Verstärkung des Potentials am Knoten
N1 höher
als die Bitleitungsspannung aus, sondern auch niedriger, was äquivalent
zur Verstärkung
zum niedrigeren Potential ist, hierdurch eine große Differenz
zwischen den Pegeln "HIGH" und "LOW" am Knoten N1 erzielend.
-
Zu
einem Moment T7 wird das Potential BLCLAMP0 am Gate des Klemmtransistors 41 auf
0 V gesetzt zum vollständigen
Trennen des Knotens N4 von der Bitleitung.
-
Zu
einem Moment T9 wird der getaktete Invertierer CI2 aktiviert und
zu einem Moment T10 wird der getaktete Invertierer CI1 aktiviert
zum Laden von Zwei-Pegel-Daten "HIGH" und "LOW" am Knoten N1 zum
ersten Latch 1a.
-
62 zeigt den Bereich des Schwellwertpegels (invertierter
Schwellwertpegel) der CMOS-getakteten Invertierer CI1 und CI2 des
ersten Latchs 1a unter Berücksichtigung von Variation
in der Energieversorgung Vdd und des Prozesses an.
-
In
dieser Modifikation (60) wird das Potential am Knoten
N4 angehoben über
den Kondensator 48c zum Lesen eine Bitleitungs-Datenwertes durch
eine Klemmoperation und dann wird das Potential am Knoten N4 abgesenkt
dadurch, dass der Pegel "LOW" am Knoten N4 bei
der Wiedergewinnung von "1" programmierter Zelle
abgesenkt wird unter den Bitleitungspotentialpegel.
-
Die
Modifikation erzielt demnach eine korrekte Wiedergewinnung ohne
Fehler selbst wenn der Potentialpegel "LOW" auf
der Bitleitung höher
ist als der Schwellwertpegel der getakteten Invertierer CI1 und
CI2 des ersten Latchs 1a.
-
Ein
höherer
Spannungspegel des Kondensators 48c ermöglicht höher eingestellte Werte für "HIGH"-Pegel-Voraufladungspotential
auf der Bitleitung und das Potential für die "LOW"-Pegel-Wiedergewinnung
etc..
-
In 60 wird das Potential BLCD, das an das Gate des
NMOS-Transistors 42 anzulegen
ist, der zwischen den Knoten N1 und N4 verbunden ist, eingestellt
auf (Vdd + Vtn) zum Anheben des Potentials nur am Knoten N4, weil
der Knoten N1 mit dem Drain des PMOS-Transistors 13 des
ersten Latchs 1a verbunden ist.
-
Dieses
Potentialanlegen ist ein Erfordernis für die erste Modifikation, weil
wenn die Potentiale am Knoten N1 und N4 simultan angehoben werden, es
den pn-Übergang
des PMOS-Transistors 13 in
einen vorwärts
vorgespannten Zustand bringen würden,
so dass das Potential am Knoten N4 nicht angehoben würde.
-
Ein
anderes Erfordernis für
diese Modifikation ist, dass die Spannung BLCD, die am Gate des NMOS-Transistors 42 angelegt
wird, höher
ist als der Schwellwertpegel der getakteten Invertierer CI1 und CI2
des ersten Latchs 1a zum Transferieren einer Spannung,
die niedriger ist als Vdd, mit anderen Worten, nicht erforderlichenfalls
(Vdd + Vtn) ist.
-
Ein
Steuersignal REG, das zu einem Moment T8 in 62 anzulegen
ist, wird verwendet zur Wiedergewinnungsoperation wie z.B. der Wiedergewinnung
für die
Programmierverifizierung. In 60 ist
das Steuersignal REG angelegt an das Gate des NMOS-Transistors 43,
zwischen dem Knoten N4 und der Verifizierungsschaltung 20 verbunden
ist.
-
Im
Detail wird das Steuersignal REG verwendet zur wiederholte Programmierimpulsanlegeoperation
und Wiedergewinnungsoperation zur Programmierverifizierung, um den
Schwellwertbereich von zu programmierenden Daten in einem gegebenen
Bereich zu halten für
eine Datenprogrammierung pro Seite in einem Flash-Speicherzelle
vom NAND-Typ.
-
Für jedes
Bit, bei dem die Programmierung abgeschlossen worden ist, ist ein
Datenwert für
das Verhindern der Programmierung gesetzt worden bei einer nachfolgenden
Programmierimpulsanwendungsoperation.
-
Im
Detail wird bei einer "0"-Datenprogrammierung
eine ausgewählte
Bitleitung voraufgeladen auf den Pegel "LOW" am Knoten
N1. Der Knoten N1 wird auf den Pegel "HIGH" gelegt
bei der Wiedergewinnung zur Programmierverifizierung auf ein "0"-programmiertes
Bit, wenn "0"-Programmierung (Elektroneninjektion
in das schwebende Gate) erfolgreich gewesen ist. Der Pegel "HIGH" am Knoten N1 verhindert
das nachfolgende Programmieren. Unzureichende "0"-Programmierung
wird zu einem Pegel "LOW" am Knoten N1 führen, wodurch "0"-Programmierung
wieder durchgeführt
wird bei einem Bit, bei dem "0"-Programmierung unzureichend
ausgeführt worden
ist.
-
Andererseits
wird bei einer "1"-Datenprogrammierung
(zum Verhindern der Programmierung) eine ausgewählte Bitleitung voraufgeladen
auf den Pegel "HIGH" am Knoten N1 und
auf dem Pegel gehalten. Die Wiedergewinnungsoperation für die Programmierverifizierung
führt zu
einem Pegel "LOW" am Knoten N1. Bitleitungsvoraufladung
bei diesem Pegel für
die nachfolgende Programmierung führt zu einer "0"-Programmierung.
Dies erfordert die Invertierung von Daten am Knoten N4 zu dem Pegel "HIGH" (Programmierverhinderung)
bei der Wiedergewinnungsoperation zur Programmierverifizierung.
-
Diese
Potentialsteuerung an den Knoten N1 und N4 wird durchgeführt durch
die Verifizierenssehaltung 20. Die Schaltung 20 legt
den Pegel "HIGH" an die Knoten N1
und N4 an, wenn der Pegel "HIGH" an das Steuersignal
REG des Gates des NMOS-Transistors 43 angelegt wird nur,
wenn das Potential am Knoten N1 "HIGH" ist zu dem Moment der
Programmierimpulsanwendeoperation.
-
(Zweite Modifikation)
-
63 zeigt ein Schaltungsdiagramm der zweiten Modifikation
des Leseverstärkers.
-
Elemente
in dieser Modifikation, die dieselben sind oder analog zu Elementen
in der ersten Modifikation (60)
werden mit denselben Bezugszeichen versehen und werden nicht detailliert
erläutert.
-
Die
Differenz zwischen der ersten und der zweiten Modifikation ist,
dass letztere mit einem Kondensator 48a versehen ist, von
dem ein Anschluss gegen Masse geschaltet ist zusätzlich zu dem Kondensator 48c zum
Anlegen eines angehobenen Potentials zu dem Leseknoten N4.
-
Die
zweite Modifikation erfordert eine Antriebsspannung, die an den
Anschluss BOOST2 des Kondensators 48c angelegt wird, welche
höher ist
als die für
die erste Modifikation zur Erzielung derselben angehobenen Spannung
am Knoten N4, weil die Kapazität
am Knoten N4 größer ist
als die für
den Kondensator 48a, wenn das Potential am Knoten N4 angehoben
ist.
-
Mit
anderen Worten, in 60 ist eine Zwischenantriebsspannung
erforderlich zum Erzielen einer gewünschten angehobenen Spannung
am Knoten N4, wohingegen in 63 die
Energieversorgungsspannung Vdd verwendet werden kann als Anhebungstreiberspannung,
welche abhängt
von der Auswahl der Kapazität
der Kondensatoren 48a und 48c. Ein Spannungsbereich
von 0 V bis Vdd am Anschluss BOOST2 des Kondensators 48c eröffnet eine
einfache Schaltungskonfiguration.
-
(Dritte Modifikation)
-
64 zeigt ein Schaltungsdiagramm der dritten Modifikation
des Leseverstärkers.
-
Elemente
in dieser Modifikation, die dieselben sind oder analog zu Elementen
in den vorangegangenen Modifikationen werden mit denselben Bezugszeichen
versehen und werden nicht detailliert erläutert.
-
Der
Unterschied zwischen der zweiten und der dritten Modifikation ist,
dass die letztere mit einem PMOS-Transistor 82b (als Voraufladeschaltung) versehen
ist, der von einem Steuersignal PPRE gesteuert wird, welches an
sein Gate angelegt wird, und ein Kondensator 48b, verbunden
mit dem Knoten N1, von dem ein Anschluss gegen Masse geschaltet
ist, zum Klemmen eines Potentials an den Knoten N1.
-
In 60 wird die Spannung (Vdd + Vtn) an das Gate des
NMOS-Transistors 42 angelegt beim Anheben des Potentials
am Knoten N4 unter der Steuerung des Anschlusses BOOST2 des Kondensators 48c,
um das Potential am Knoten N1 nicht anzuheben.
-
Die
Spannung (Vdd + Vtn) muss präzise sein,
andernfalls wird der PN-Übergang
des PMOS-Transistors 13 des ersten Latchs 1a in
einen vorwärts
vorgespannten Zustand gebracht, welcher das Potential am Knoten
N4, das anzuheben ist, abschirmt. Dies erfordert eine gesteuerte
Spannung BLCD, die am Gate des NMOS-Transistors 42 angelegt
wird zum Erzielen des Potentials am Knoten N1, das niedriger ist
als Vdd, aber höher
als der Schwellwertpegel des ersten Latchs 1a.
-
Im
Gegensatz zur ersten Modifikation ermöglicht die dritte Modifikation
(64) das Voraufladen des Knotens N1 ohne Bezug
auf den Knoten N4 zur vereinfachten Steuerung des NMOS-Transistors 42,
wie oben diskutiert. Die Spannung BLCD, die an das Gate des Transistors 42 angelegt
wird, kann eine Spannung zum Transferieren des Potentials am Knoten
N4 sein, welches erscheint, wenn der Knoten N4 mit einer ausgewählten Bitleitung
durch eine Klemmoperation verbunden ist, zum Knoten N1, oder höher als
Vsen, angelegt an das Gate des NMOS-Transistors 41. Die
Energieversorgungsspannung Vdd wird beispielsweise als Spannung
BLCD zu dem Gate des Transistors 42 mit einer vorgegebenen
Zeitabstimmung angelegt.
-
65 zeigt Signalwellenformen in der dritten. Modifikation.
-
Die
Bitleitungs-Voraufladeoperation für die Periode von dem Moment
T0 bis T1 ist dieselbe für die
erste Modifikation in 60. Zu einem Moment T2 wird
das Steuersignal PPRE am Gate des PMOS-Transistors 82b (64) auf "LOW" (Vss) gelegt zum
Voraufladen des Knotens N1 auf Vdd, während das Signal BLCD am Gate
des NMOS-Transistors 42 auf den Pegel "LOW" gelegt
wird, wodurch der Knoten N1 voraufgeladen wird ohne Bezug zu dem
Knoten N4. Zu einem Moment T3 wird das Signal BLCD auf einen Pegel
Vdd festgelegt, etc., höher als
Vsen, das angelegt wird an das Gate des NMOS-Transistors 41.
Der NMOS-Transistor 42 wird ausgeschaltet, wenn das Signal
BLCD und die Potentiale an den Knoten N1 und N4 alle Vdd sind während das
Potential am Knoten N4 angehoben wird über den Anschluss BOOST2 des
Kondensators 48c.
-
In 64 ähnlich
dem in 63 gezeigten, werden zwei Kondensatoren 48a und 48c zum
Anheben des Potentials am Knoten N4 verwendet, jedoch ist nur der
Kondensator 48c wesentlich, wie in 60 gezeigt.
-
Zu
einem Moment T4 in 65 wird das Voraufladesteuersignal
PPRE auf einen Pegel "HIGH" festgelegt zum Stoppen
der Voraufladung zu dem Knoten N1, wodurch der Knoten N1 in einem
schwebenden Zustand versetzt wird. Diese Operation bietet eine scharfe
Abschaltcharakteristik für
den NMOS-Transistor 42 zum stabilen Anheben des Potentials
am Knoten N4.
-
Zu
einem Moment T8 wird das Signal BLCD, das an das Gate des NMOS-Transistors 42 angelegt wird,
angehoben auf (Vdd + Vtn) vor dem Aktivieren des ersten Latchs 1a zum
Voraufladen der Potentiale an dem Knoten N1 und N4 auf den Pegel "HIGH", nachdem sie entladen
worden sind, bei der Wiedergewinnung zur Verifizierung von "0"-Programmierung.
-
(Vierte Modifikation)
-
66 zeigt ein Schaltungsdiagramm der vierten Modifikation
des Leseverstärkers.
-
Elemente
in dieser Modifikation, die dieselben oder analog zu Elementen in
den vorangegangenen Modifikationen sind, sind mit den gleichen Bezugszeichen
versehen und werden nicht detailliert erläutert.
-
Die
vierte Modifikation erfordert keine Potentialanhebung am Knoten
N4. Die Kondensatoren 48a und 48b sind mit den
Knoten N4 und N1 jeweils verbunden. Einer der Anschlüsse jedes
Kondensators ist gegen Masse geschaltet. Auch ist ein Rückstell-NMOS-Transistor 82c mit
dem Knoten N1 verbunden.
-
67 stellt Signalwellenformen in der vierten Modifikation
dar.
-
Bitleitungsdatenlesen
wird durch Bitleitungs-Voraufladen und Klemmoperation in dieser Modifikation
ohne Anhebung des Potentials am Knoten N4 ausgeführt während das Signal BLCD 0 V ist, wodurch
der NMOS-Transistor 42 ausgeschaltet wird. Der Knoten N4
und eine ausgewählte
Bitleitung sind durch die Klemmoperation verbunden.
-
Nachdem
ein Bitleitungspotential am Knoten N4 erscheint, wird die Spannung
(Vdd + Vtn) angelegt wie das Signal BLCD am Gate des NMOS-Transistors 42 zu
einem Moment T5. Vor dem Moment T5 ist ein Rücksetzsignal NRST auf den Pegel "HIGH" festgelegt worden
zum Rücksetzen
des Knotens N1 auf 0 V.
-
Unter
der oben offenbarten Steuerung wird der NMOS-Transistor 42 eingeschaltet
zum Verteilen von Ladungen, die in dem Kondensator 48a und
in dem Kondensator 48b gespeichert sind. Diese Ladungsverteilung
senkt das Potential am Knoten N4 ab, während es das Potential am Knoten
N4 anhebt, wodurch der Pegel "LOW", der Bitleitungsdatenwert, wiedergewonnen
werden kann am Knoten N4 als "LOW", selbst wenn der
Pegel "LOW" höher ist
als der Schwellwertpegel des ersten Latchs 1a.
-
Der
Lesevorrichtung 141d in der vierten Ausführungsform
ist einfach in seinem Betrieb verglichen mit den Leseverstärkern 141a, 141b und 141c in
den 60, 63 bzw. 64.
-
Andererseits
führt ein
Pegel "HIGH" am Knoten N4, der
zu dem Moment T5 in 67 durch Ladungsverteilung
vom Knoten N4 zu niedrig bestimmt worden ist oder niedriger als
der Schwellwertpegel des ersten Latchs 1a bei einem Fehler
bei der "0"-Datenwiedergewinnung.
Demnach hat verglichen mit den Schaltungen in den 60, 63 und 64 der
Lesevorrichtung 141d in 66 eine
geringere Flexibilität
bei den Bitleitungspotentialeinstellungen für die Wiedergewinnungsoperation.
-
(Fünfte Modifikation)
-
68 zeigt ein Schaltungsdiagramm der fünften Modifikation
des Leseverstärkers.
-
Elemente
in dieser Modifikation, die dieselben sind oder analog zu Elementen
in den vorangegangenen Modifikationen, sind mit denselben Bezugszeichen
versehen und werden hier nicht detailliert erläutert.
-
In
den vorangegangenen Modifikationen der 60, 63, 64 und 66 wurde
der Datenwert am Knoten N4 direkt transferiert zu dem Knoten N1
des ersten Latchs 1a über
den ersten NMOS-Transistor 42.
-
Andererseits
ist in 68 der Knoten N4 mit dem Gate
eines Lesetransistors NMOS 70 verbunden, wodurch der Datenwert
am Knoten N4 zu dem Knoten N1 über
den Transistor 70 transferiert wird. Die Source des Transistors 70 ist
gegen Masse geschaltet, während
der Drain-Anschluss mit den Knoten N1 und N2 über Schalttransistoren 71 und 72 verbunden
ist.
-
Auch
ist mit dem Knoten N4 ein Boost-Kondensator 48c mit dem
Anschluss BOOST2 verbunden, wie in 60 gezeigt.
-
Eine
gewöhnlich
Wiedergewinnungsoperation in dieser Modifikation wird unter Bezugnahme
auf 69 erläutert, die Signalwellenformen
zeigt.
-
Zu
einem Moment T0 wird die Spannung (Vdd + Vtn) als das Potential
BLPRE an das Gate des Entlade-NMOS-Transistors 47 angelegt
während
des Anlegens von Vpre als Potential BLCAMP an das Gate des Klemmtransistors 41 zum
Voraufladen einer ausgewählten
Bitleitung auf (Vpre – Vtn),
wodurch Vdd am Knoten N4 erscheint. Ein Steuersignal BLSEN0 wird
simultan festgelegt auf Vdd zum Rücksetzen des Potentials an
den Knoten N1 und N2 des ersten Latchs 1a auf den Pegel "HIGH" bzw. "LOW".
-
Bitleitungsvoraufladen
wird abgeschlossen zu einem Moment T1. Dann wird ein Auswahlgate des
NAND-Zellenblockes eingeschaltet, in welchem die ausgewählte Bitleitung
kaum zu entladen ist oder nicht entladen, was abhängt von
dem Datenwert einer ausgewählten
Zelle, wodurch die Bitleitung das Voraufladungspotential hält. Der
Voraufladetransistor 47 ist zu einem Moment T2 eingeschaltet
worden. Er wird dann ausgeschaltet und zu einem Moment T3 wird das
Potential am Anschluss BOOST2 des Kondensators 48c um beispielsweise
1 V angehoben zum Anheben des Potentials am Knoten N4 durch kapazitive
Kopplung.
-
Zu
einem Moment T4 wird das Potential BLCLAMP am Gate des Klemmtransistors 41 auf Vsen
festgelegt zum Wiedergewinnen von Bitleitungspotential im Bereich
von (Vpre – Vsen)
während das
Potential am Knoten N4 Potentialänderungen
(a) bis (d) anzeigt, verglichen mit den in 62 gezeigten.
-
In
dieser Modifikation wird der NMOS-Transistor 72 eingeschaltet
in der Änderung
(a) und (b), während
er ausgeschaltet wird in der Änderung
(c) und (d).
-
Das
Steuersignal BLSEN1 wird auf Vdd festgelegt zum Einschalten des
NMOS-Transistors 71, wodurch der Knoten N1 des ersten Latch 1a invertiert wird
auf den Pegel "LOW" in der Änderung
(a) und (b), während
der Knoten N2 auf den Pegel "HIGH" geklemmt wird in
der Änderung
(c) und (d).
-
Das
Potential am Knoten N4 wird angehoben beim Datenlesen im Leseverstärker dieser
Modifikation. Diese Potentialsteuerung ermöglicht eine geringe Größe der Transistoren 70 bis 72,
welche andernfalls dazu tendieren, bedingt durch eine erzwungene Invertierung
des ersten Latchs 1a, groß zu werden.
-
Die
fünfte
Modifikation lädt
Daten in das erste Latch 1a, während das Potential am Knoten
N4 angehoben wird, wie in 69 angezeigt.
Jedoch können,
wie in der ersten Modifikation der 60 Daten in
das erste Latch 1a geladen werden nachdem das Potential
am Knoten N4 vom Angehobenwerden freigegeben worden ist. Darüber hinaus
kann, wie in der zweiten Modifikation der 63,
neben dem Boost-Kondensator 48c ein anderer Kondensator
(an dem ein Anschluss gegen Masse geschaltet ist) mit dem Knoten
N4 verbunden sein.
-
70A bis 70C zeigen
die Kondensatoren 48c, 48a und 48b, die
jeweils in den vorangegangenen Modifikationen verwendet worden sind.
-
In 70A ist ein MOS-Kondensator dargestellt unter
Verwendung eines D-Typ-NMOS-Transistors. Das Gate kann mit dem Knoten
N4 oder N1 verbunden sein und Drain-Anschluss und die Source-Anschluss
können
beide mit dem Anschluss BOOST2 bzw. dem Masseanschluss in den vorangegangenen
Modifikationen verbunden sein. Es wird vorgezogen, dass der Transistor
eingeschaltet wird, selbst wenn das Potential am Anschluss BOOST2 angehoben
wird von 0 V auf ein positives Potential.
-
In 70B ist ein Kondensator gebildet zwischen einer
ersten polykristallinen Siliziumschicht 515 und einer zweiten
polykristallinen Siliziumschicht 514 dargestellt. Diese
Art von Kondensator ist anwendbar in nicht-flüchtigen Speicherzellen, weil
diese Zellen üblicherweise
eine Stapelgatestruktur haben.
-
In 70C ist ein Kondensator gezeigt, der ausgebildet
zwischen einer N-Typ-Quelle 517 und einer Elektrode 515,
die über
der Quelle durch eine Isolationsschicht ausgebildet ist. Die N-Typ-Quelle 517 ist
mit einer n+-Diffusionsschicht 516 gebildet,
die mit dem Anschluss BOOST2 in den vorangegangenen Modifikationen
verbunden ist. Es wird vorgezogen, dass eine n-Schicht 518 mit
einer höheren
Dichte als der der n-Typ-Quelle 517 darauf
ausgebildet ist zum Erzielen einer stabilen Kapazität ohne Bezug
zum Potential des Anschlusses BOOST2.
-
Wie
oben offenbart, erzielt gemäß der vorliegenden
Erfindung eine Neuprogrammier- und Wiedergewinnungsschaltung (Seitenpuffer)
mit zwei Latchs eine Hochgeschwindigkeits-Programmiergeschwindigkeit durch Cache-Funktion
und große
Speicherkapazität
durch Mehrpegelfunktion in Flash-EEPROMs.
-
Nachfolgend
werden Ausführungsbeispiele von
nichtflüchtigen
Halbleitereinrichtungen mit speziellen Merkmalen weiter ausgeführt:
Ausführungsbeispiel
E1. Nichtflüchtige
Halbleitereinrichtung, umfassend: ein Speicherzellenarray mit elektrisch
löschbaren,
programmierbaren, nichtflüchtigen
Speicherzellen; eine Vielzahl von Neuprogrammierungs- und Wiedergewinnungsschaltungen,
die temporär
in dem Speicherzellenarray zu speichernde Daten speichern und von
dem Speicherzellenarray wiedergewonnene Daten erfassen, wobei jede
Neuprogrammierungs- und Wiedergewinnungsschaltungen ein erstes Latch
und ein zweites Latch hat, die selektiv mit dem Speicherzellenarray
verbunden werden und Daten zueinander übertragen; und einen Controller,
der die Neuprogrammierungs- und
Wiedergewinnungsschaltungen bei einer Daten-Neuprogrammierungsoperation zu und bei
einer Daten-Wiedergewinnungsoperation
von dem Speicherzellenarray steuert, wobei jede Neuprogrammierungs-
und Wiedergewinnungsschaltung einen Mehrpegellogikbetriebsmodus
und einen Cache-Betriebsmodus hat, in dem Mehrpegellogikbetriebsmodus
Neuprogrammierung und Wiedergewinnung oberer und unterer Bits von
Zwei-Bit-vier-Pegel-Daten
durchgeführt
wird unter Verwendung der ersten und zweiten Latches beim Speichern
der Zwei-Bit-vier-Pegel-Daten in einer der Speicherzellen in einem
vorbestimmten Schwellwertpegelbereich, im Cache-Betriebsmodus eine
Datenübertragung
zwischen einer in Übereinstimmung
mit einer ersten Adresse und dem ersten Latch ausgewählten der
Speicherzellen durchgeführt wird
während
eine Datenübertragung
zwischen dem zweiten Latch und Ein-/Ausgabeanschlüssen durchgeführt wird
in Übereinstimmung
mit einer zweiten Adresse in Bezug auf in einer der Speicherzellen
zu speichernden Ein-Bit-zwei-Pegel-Daten.
-
Ausführungsbeispiel
E2. Nichtflüchtige
Halbleitereinrichtung nach Ausführungsbeispiel
E1, wobei der Mehrpegellogikbetriebsmodus und der Cache-Betriebsmodus
durch Befehlseingabe umgeschaltet werden.
-
Ausführungsbeispiel
E3. Nichtflüchtige
Halbleitereinrichtung nach Ausführungsbeispiel
E1, wobei der Mehrpegellogikbetriebsmodus und der Cache-Betriebsmodus
als teilweise einander überlappend
in Übereinstimmung
mit einer Adresse der Daten ausgeführt werden.
-
Ausführungsbeispiel
E4. Nichtflüchtige
Halbleitereinrichtung nach Ausführungsbeispiel
E1, wobei jede der Neuprogrammierungs- und Wiedergewinnungsschaltungen
einschließt:
einen mit der ausgewählten
Bit-Leitung über
einen Klemmtransistor verbundenen Erfassungsknoten; eine Voraufladungsschaltung
zum Voraufladen der mit dem Erfassungsknoten über den Klemmtransistor verbundenen Bit-Leitung; einen Transfertransistor,
der zwischen einem Drain-Anschluss
des Erfassungstransistors und dem ersten Latch verbundenen ist;
und einen Anhebungskondensator, von dem ein Anschluss mit dem Erfassungsknoten
verbunden ist, wobei der Kondensator ein Potential am Erfassungsknoten
unter Verwendung des anderen Anschlusses anhebt.
-
Ausführungsbeispiel
E5. Nichtflüchtige
Halbleitereinrichtung nach Ausführungsbeispiel
E1, wobei jede der Neuprogrammierungs- und Wiedergewinnungsschaltungen einschließt: einen
mit der ausgewählten
Bit-Leitung über
einen Klemmtransistor verbundenen Erfassungsknoten; eine Voraufladungsschaltung
zum Voraufladen der mit dem Erfassungsknoten über dem Klemmtransistor verbundenen Bit-Leitung; einen zwischen
dem Erfassungsknoten und dem ersten Latch verbundenen Transfertransistor;
und einen Anhebungskondensator, von dem ein Anschluss mit dem Erfassungsknoten
verbunden ist, wobei der Kondensator ein Potential am Erfassungsknoten
unter Verwendung eines anderen Anschlusses anhebt. wobei in dem
Cache-Betriebsmodus Datentransfer zwischen einer der Speicherzellen,
die in Übereinstimmung
mit der ersten Adresse ausgewählt worden
ist und dem ersten Latch ausgeführt
wird, während
das zweite Latch in einer der Speicherzellen zu speichernde Zwei-Bit-Vier-Pegel-Daten
empfängt.
-
Ausführungsbeispiel
E6. Nichtflüchtige
Halbleitereinrichtung nach Ausführungsbeispiel
E1, wobei im Cache-Betriebsmodus ein Rücksetzen des zweiten Latch
durchgeführt
wird nach dem Datentransfer vom zweiten Latch zum ersten Latch.
-
Ausführungsbeispiel
E7. Nichtflüchtige
Halbleitereinrichtung, umfassend: ein Speicherzellenarray mit elektrisch
löschbaren,
programmierbaren, nichtflüchtigen
Speicherzellen; eine Vielzahl von Neuprogrammierungs- und Wiedergewinnungsschaltungen,
die temporär
in dem Speicherzellenarray zu speichernde Daten speichern und von
dem Speicherzellenarray wiedergewonnene Daten erfassen, wobei jede
Neuprogrammierungs- und Wiedergewinnungsschaltungen ein erstes Latch
und ein zweites Latch hat, das erste Latch mit einer ausgewählten Bitleitung
des Speicherzellenarrays über
einen ersten Übertragungsschalter
und einen zweiten Übertragungsschalter
verbunden ist, die serienverbundenen miteinander sind, das zweite
Latch über
einen dritten Übertragungsschalter
mit einem Verbindungsknoten des ersten und des zweiten Übertragungsschalters
verbunden ist, ein Datenknoten des zweiten Latchs über Spaltenauswahlschalter
mit Datenein- und Ausgabeanschlüssen
verbunden ist; und einen Controller, der die Neuprogrammierungs-
und Wiedergewinnungsschaltungen bei einer Daten-Neuprogrammierungsoperation zu und bei
einer Daten-Wiedergewinnungsoperation
von dem Speicherzellenarray steuert.
-
Ausführungsbeispiel
E8. Nichtflüchtige
Halbleitereinrichtung nach Ausführungsbeispiel
E7, wobei nachdem die Daten in einer ausgewählten Speicherzelle programmiert
worden sind, die programmierten Daten zum Verifizieren der Programmierung
wiedergewonnen werden, wobei die wiedergewonnenen Daten in dem ersten
Latch erfasst und gespeichert werden.
-
Ausführungsbeispiel
E9. Nichtflüchtige
Halbleitereinrichtung nach Ausführungsbeispiel
E7, wobei jede Neuprogrammierungs- und Wiedergewinnungsschaltung einen
Mehrpegellogikbetriebsmodus und einen Cache-Betriebsmodus hat, in
dem Mehrpegellogikbetriebsmodus Neuprogrammierung und Wiedergewinnung
oberer und unterer Bits von Zwei-Bit-vier-Pegel-Daten durchgeführt wird unter Verwendung der
ersten und zweiten Latches beim Speichern der Zwei-Bit-vier-Pegel-Daten
in einer der Speicherzellen in einem vorbestimmten Schwellwertpegelbereich,
im Cache-Betriebsmodus eine Datenübertragung zwischen einer in Übereinstimmung
mit einer ersten Adresse und dem ersten Latch ausgewählten der
Speicherzellen durchgeführt
wird während
eine Datenübertragung
zwischen dem zweiten Latch und Ein-/Ausgabeanschlüssen durchgeführt wird
in Übereinstimmung
mit einer zweiten Adresse in Bezug auf in einer der Speicherzellen
zu speichernden Ein-Bit-zwei-Pegel-Daten.
-
Ausführungsbeispiel
E10. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E3, wobei in dem Mehrpegellogikbetriebsmodus die ersten und dritten
Transferschalter eingeschaltet werden zum Verbinden des zweiten
Latchs mit einer ausgewählten
Bit-Leitung zum Voraufladen von in dem zweiten Latch gespeicherten
Daten auf die Bit-Leitung.
-
Ausführungsbeispiel
E11. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E1, wobei die Vier-Pegel-Daten definiert sind als "11", "10", "00" und "01" vom niedrigeren
Pegel des Schwellwertpegelbereichs.
-
Ausführungsbeispiel
E12. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E9, wobei die Vier-Pegel-Daten definiert sind als "11", "10", "00" und "01" vom niedrigeren
Pegel des Schwellwertbereichs.
-
Ausführungsbeispiel
E13. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E1, wobei den oberen und unteren Bits der Vier-Pegel-Daten unterschiedliche
Zeilenadressen zum Programmieren und Wiedergewinnen zugeordnet sind.
-
Ausführungsbeispiel
E14. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E9, wobei den oberen und unteren Bits der Vier-Pegel-Daten unterschiedliche
Zeilenadressen zum Programmieren und Wiedergewinnen zugeordnet sind.
-
Ausführungsbeispiel
E15. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E13, wobei eine erste und eine zweite Datenprogrammieroperation
in dem Mehrpegellogikbetriebsmodus ausgeführt werden, in der ersten Datenprogrammieroperation
die unteren Bit-Daten in das zweite Latch geladen werden und dann
im ersten Latch gespeichert, das Programmieren durchgeführt wird
zu einer ausgewählten Speicherzelle
basierend auf den im ersten Latch gespeicherten Daten, in der zweiten
Datenprogrammieroperation die oberen Bit-Daten in das zweite Latch
geladen werden und dann im ersten Latch gespeichert werden während die
unteren Bit-Daten,
die bereits in der ausgewählten
Speicherzelle programmiert sind, wiedergewonnen werden und in das
zweite Latch geladen werden, wobei das Programmieren durchgeführt wird
durch die ausgewählte
Speicherzelle basierend auf dem im ersten Latch gespeicherten Daten
in Übereinstimmung
mit den im zweiten Latch gespeicherten Daten.
-
Ausführungsbeispiel
E16. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E14, wobei eine erste und eine zweite Datenprogrammieroperation
in dem Mehrpegellogikbetriebsmodus ausgeführt werden, in der ersten Datenprogrammieroperation
die unteren Bit-Daten in das zweite Latch geladen werden und dann
in dem ersten Latch gespeichert, das Programmieren ausgeführt wird
zu einer ausgewählten
Speicherzelle basierend auf den im ersten Latch gespeicherten Daten,
in der zweiten Datenprogrammieroperation die oberen Bit-Daten in das
zweite Latch geladen werden und dann in dem ersten Latch gespeichert
werden während
untere Bit-Daten, die bereits in der ausgewählten Speicherzelle programmiert
sind, wiedergewonnen werden und in das zweite Latch geladen werden,
das Programmieren durchgeführt
wird zu der ausgewählten Speicherzelle
basierend auf den in dem ersten Latch gespeicherten Daten und in Übereinstimmung
mit den in dem zweiten Latch gespeicherten Daten.
-
Ausführungsbeispiel
E17. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E13, wobei eine erste, eine zweite und eine dritte Wiedergewinnungsoperation
in dem Mehrpegellogikbetriebsmodus durchgeführt werden, in der ersten Wiedergewinnungsoperation "0" oder "1" des
oberen Bit beurteilt werden unter Verwendung einer an ein Steuer-Gate der
ausgewählten
Speicherzelle angelegte Wiedergewinnungsspannung, die Wiedergewinnungsspannung
in einem Schwellwertpegelbereich von "10" und "00" als Vier-Pegel-Daten eingestellt
ist, in der zweiten Wiedergewinnungsoperation "0" oder "1" des unteren Bit, wenn das obere Bit "0" ist, beurteilt werden unter Verwendung
einer an das Steuer-Gate der ausgewählten Speicherzelle angelegten Wiedergewinnungsspannung,
die Wiedergewinnungsspannung in einem Schwellwertpegelbereich von "00" und "01" als Vier-Pegel-Daten
eingestellt ist und in der dritten Wiedergewinnungsoperation "0" oder "1" des
unteren Bits, wenn das obere Bit "1" ist, beurteilt
werden unter Verwendung einer Wiedergewinnungsspannung, die an das
Steuer-Gate der
ausgewählten
Speicherzelle angelegt wird, wobei die Wiedergewinnungsspannung
in einem Schwellwertbereich von "11" und "10" als Vier-Pegel-Daten
eingestellt ist.
-
Ausführungsbeispiel
E18. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E14, wobei eine erste, eine zweite und eine dritte Wiedergewinnungsoperation
durchgeführt
werden in dem Mehrpegellogikbetriebsmodus, in der ersten Wiedergewinnungsoperation "0" oder "1" des
oberen Bit beurteilt werden unter Verwendung einer an ein Steuer-Gate
der ausgewählten
Speicherzelle angelegten Wiedergewinnungsspannung, wobei die Wiedergewinnungsspannung
in einem Schwellwertpegelbereich von "10" und "00" eingestellt ist
als Vier-Pegel-Daten, in der zweiten Wiedergewinnungsoperation "0" oder "1" des
unteren Bit, wenn das obere Bit "0" ist, beurteilt werden
unter Verwendung einer Wiedergewinnungsspannung, die an das Steuer-Gate der
ausgewählten
Speicherzelle angelegt wird, wobei die Wiedergewinnungsspannung
eingestellt ist in einem Schwellwertpegelbereich von "00" und "01" als Vier-Pegel-Daten und in der
dritten Wiedergewinnungsoperation "0" oder "1" des unteren Bits, wenn das obere Bit "1" ist, beurteilt wird unter Verwendung einer
an das Steuer-Gate der ausgewählten
Speicherzelle angelegten Wiedergewinnungsspannung, wobei die Wiedergewinnungsspannung
eingestellt ist in einem Schwellwertpegelbereich von "11" und "10" als Vier-Pegel-Daten.
-
Ausführungsbeispiel
E19. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E1, wobei jede Neuprogrammierungs- und Wiedergewinnungsschaltung selektiv
mit einer Vielzahl von Bit-Leitungen des Speicherzellenarrays über einen Bit-Leitungsauswahlschalter
verbunden ist.
-
Ausführungsbeispiel
E20. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E7, wobei jede Neuprogrammierungs- und Wiedergewinnungsschaltung selektiv
mit einer Vielzahl von Bit-Leitungen des Speicherzellenarrays über einen Bit-Leitungsauswahlschalter
verbunden ist.
-
Ausführungsbeispiel
E21. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E7, wobei jede Neuprogrammierungs- und Wiedergewinnungsschaltung eine
gemeinsame Signalleitung verbunden mit dem Verbindungsknoten der
ersten und zweiten Transferschalter über einen vierten Transferschalter
hat.
-
Ausführungsbeispiel
E22. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E21, wobei jede Neuprogrammierungs- und Wiedergewinnungsschaltung einen
temporären
Speicherknoten zum temporären
Speichern eines Potentials an einem Datenknoten des ersten Latchs
hat und einen fünften
Transferschalter, der zwischen dem vierten Transferschalter und
der gemeinsamen Signalleitung vorgesehen ist, wobei der fünfte Transferschalter
gesteuert wird durch das Potential an dem temporären Speicherknoten.
-
Ausführungsbeispiel
E23. Nichtflüchtige Halbleitereinrichtung,
umfassend: ein Speicherzellenarray mit elektrisch löschbaren,
programmierbaren, nichtflüchtigen
Speicherzellen; eine Vielzahl von Neuprogrammierungs- und Wiedergewinnungsschaltungen,
die temporär
in dem Speicherzellenarray zu programmierende Daten speichern und
von dem Speicherzellenarray wiedergewonnene Daten erfassen, wobei
jede Neuprogrammierungs- und Wiedergewinnungsschaltung ein erstes
Latch und ein zweites Latch hat, die selektiv mit dem Speicherzellenarray
verbunden sind und Daten zueinander übertragen; und eine Steuerung,
die die Neuprogrammierungs- und
Wiedergewinnungsschaltung steuert im Daten-Neuprogrammierungsbetrieb zu und Daten-Wiedergewinnungsbetrieb
von dem Speicherzellenarray, wobei jede Neuprogrammierungs- und
Wiedergewinnungsschaltung einen Cache-Betriebsmodus hat, in dem
ein Datentransfer zwischen einer der Speicherzellen, die in Übereinstimmung
mit einer ersten Adresse ausgewählt
ist und dem ersten Latch durchgeführt wird während Datentransfer durchgeführt wird
zwischen dem zweiten Latch und Eingangs- und Ausgangsanschlüssen in Übereinstimmung
mit einer zweiten Adresse in Bezug auf in einer der Speicherzellen
zu speichernde Zwei-Pegel-Daten.
-
Ausführungsbeispiel
E24. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E1, wobei ein Datenprogrammierzyklus für eine ausgewählte Speicherzelle
des Speicherzellenarrays ausgeführt
wird durch wiederholtes Anlegen von Programmierimpulsen und Wiedergewinnen
zur Programmierverifizierung, in einem Testmodus, ein in die ausgewählte Speicherzelle
fließender
Zellenstrom, der zu den Eingangs- Ausgangsanschlüssen wiedergewonnen wird während der
Datenprogrammierzyklus unterbrochen wird, während dem die von der Wiedergewinnung
wiedergewonnenen Daten zur Programmierverifizierung in dem ersten
Latch gespeichert werden und das zweite Latch inaktiv ist.
-
Ausführungsbeispiel
E25. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E7, wobei ein Datenprogrammierzyklus für eine ausgewählte Speicherzelle
des Speicherzellenarrays ausgeführt
wird durch wiederholtes Anlegen von Programmierimpulsen und Wiedergewinnen
zur Programmierverifizierung, in einem Testmodus, ein in die ausgewählte Speicherzelle
fließender
Zellenstrom, der zu den Eingangs- Ausgangsanschlüssen wiedergewonnen wird während der
Datenprogrammierzyklus unterbrochen wird, während dem die von der Wiedergewinnung
wiedergewonnenen Daten zur Programmierverifizierung in dem ersten
Latch gespeichert werden und das zweite Latch inaktiv ist.
-
Ausführungsbeispiel
E26. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E23, wobei ein Datenprogrammierzyklus für eine ausgewählte Speicherzelle
des Speicherzellenarrays ausgeführt
wird durch wiederholtes Anlegen von Programmierimpulsen und Wiedergewinnen
zur Programmierverifizierung, in einem Testmodus, ein in die ausgewählte Speicherzelle
fließender
Zellenstrom, der zu den Eingangs- Ausgangsanschlüssen wiedergewonnen wird während der
Datenprogrammierzyklus unterbrochen wird, während dem die von der Wiedergewinnung
wiedergewonnenen Daten zur Programmierverifizierung in dem ersten
Latch gespeichert werden und das zweite Latch inaktiv ist.
-
Ausführungsbeispiel
E27. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E1, wobei jede Neuprogrammierungs- und Wiedergewinnungsschaltung einschließt: einen
ersten zwischen einem Erfassungsknoten und einer ausgewählten Bit-Leitung des Speicherzellenarrays
vorgesehenen Transistor; einen zweiten Transistor mit einem mit dem
Erfassungsknoten verbundenen Gate und einer Source, an die ein Referenzpotential
angelegt wird, zum Erfassen eines Potentialpegels des Erfassungsknotens;
ein erstes Latch, das mit einem Drain-Anschluss des zweiten Transistors über einen
dritten Transistor verbunden ist, der selektiv eingeschaltet wird;
ein zweites Latch, mit dem Drain-Anschluss des zweiten Transistors über einen
vierten Transistor verbunden, der selektiv eingeschaltet wird, und
auch mit Dateneingangs- und Ausgangsleitungen über eine Auswahl-Gate-Schaltung;
einen fünften
Transistor zum selektiven Verbinden des ersten Latchs mit der ausgewählten Bit-Leitung
des Speicherzellenarrays und einen sechsten Transistor zum selektiven
Verbinden des zweiten Latchs mit dem Erfassungsknoten.
-
Ausführungsbeispiel
E29. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E28, wobei jede Neuprogrammierungs- und Wiedergewinnungsschaltung einen
Mehrpegellogikbetriebsmodus und einen Cache-Betriebsmodus hat, in
dem Mehrpegellogikbetriebsmodus Neuprogrammierung und Wiedergewinnung
oberer und unterer Bits von Zwei-Bit-vier-Pegel-Daten durchgefhrt wird unter Verwendung
der ersten und zweiten Latches beim Speichern der Zwei-Bit-vier-Pegel-Daten
in einer der Speicherzellen in einem vorbestimmten Schwellwertpegelbereich,
im Cache-Betriebsmodus eine Datenbertragung zwischen einer in bereinstimmung
mit einer ersten Adresse und dem ersten Latch ausgewhlten der Speicherzellen
durchgefhrt wird whrend eine Datenbertragung zwischen dem zweiten
Latch und Ein-/Ausgabeanschlssen durchgefhrt wird in bereinstimmung
mit einer zweiten Adresse in Bezug auf in einer der Speicherzellen
zu speichernden Ein-Bit-zwei-Pegel-Daten.
-
Ausführungsbeispiel
E29. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E28, wobei im Mehrpegellogikbetriebsmodus der erste und sechste
Transistor eingeschaltet werden zum voraufladen der ausgewählten Bit-Leitung unter Verwendung
der in dem zweiten Latch zum Wiedergewinnen gespeicherten Daten
zur Programmierungsverifizierung.
-
Ausführungsbeispiel
E30. Nichtflüchtige Halbleitereinrichtung
nach Ausführungsbeispiel
E27, außerdem
einen Kondensator umfassend, von dem ein erster Anschluss mit dem
Erfassungsknoten verbunden ist, wobei der Kondensator ein Potential
am Erfassungsknoten steuert mit einem zweiten Anschluss als Treiberanschluss.