-
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.
-
RESÜMEE DER
ERFINDUNG
-
Ein Zweck der vorliegenden Erfindung
ist, eine nicht-flüchtige Halbleiteranordnung
mit Mehrpegelfunktion für
große Speicherkapazität und eine
Cache-Funktion für
Hochgeschwindigkeitsdatenladezeit bereitzustellen.
-
Die vorliegenden Erfindung stellt
eine nicht-flüchtige
Halbleitereinrichtung bereit, die umfasst: ein Speicherzellenarray
mit elektrisch löschbaren
programmierbaren nicht-flüchtigen
Speicherzellen; eine Vielzahl von Neuprogrammier- und Wiedergewinnungsschaltungen,
die zu programmierende Daten temporär im Speicherzellenarray speichern und
von dem Speicherzellenarray wiedergewonnene Daten lesen, wobei jede
Neuprogrammier- und Wiedergewinnungsschaltung ein erstes Latch hat
und ein zweites Latch, die selektiv mit dem Speicherzellenarray
verbunden sind und Daten zwischen einander transferieren; und einen
Controller, der die Neuprogrammier- und Wiedergewinnungsschaltungen
in der Datenneuprogrammieroperation zu und der Datenwiedergewinnungsoperation
von dem Speicherzellenarray steuert, wobei jede Neuprogrammier-
und Wiedergewinnungsschaltung einen Mehrpegellogikbetriebsmodus
hat und einen Cache-Betriebsmodus, in dem Mehrpegellogikbetriebsmodus
Neuprogrammierung und Wiedergewinnung von Ober- und Unterbits von
Zwei-Bit-Vier-Pegel-Daten
durchgeführt
werden unter Verwendung der ersten und zweiten Latchs beim Speichern
der Zwei-Bit-Vier-Pegel-Daten
in einer der Speicherzellen in einem vorbestimmten Schwellwertpegelbereich,
im Cache-Betriebsmodus ein Datentransfer zwischen einer in Übereinstimmung
mit einer ersten Adresse ausgewählten
Speicherzellen und dem ersten Latch, der durchgeführt wird,
während
der Datentransfer durchgeführt
wird zwischen dem zweiten Latch und Eingabe-/Ausgabe-Anschlüssen in Übereinstimmung mit einer zweiten
Adresse in bezug auf Ein-Bit-Zwei-Pegel-Daten, die in einer der
Speicherzellen zu speichern sind.
-
Gemäß der vorliegenden Erfindung
hat jede Neuprogrammier- und Wiedergewinnungsschaltung zwei Latchs,
die eine Cache-Funktion
für Flash-EEPROMs
zulassen zum Erzielen von Hochgeschwindigkeitsprogrammiergeschwindigkeit und
ein Mehrpegelfunktions-Flash-EEPROM zum Erreiche großer Speicherkapazität.
-
Der Mehrpegellogikbetriebsmodus und
der Cache-Betriebsmodus können
durch Befehlseingabe umgeschaltet werden. Oder sie können ausgeführt werden
als einander teilweise überlappend
in Übereinstimmung
mit einer Adresse der Daten.
-
Darüber hinaus stellt die vorliegende
Erfindung eine nicht-flüchtige Halbleitereinrichtung
bereit, die umfasst: ein Speicherzellenarray mit elektrisch löschbaren
programmierbaren nicht-flüchtigen
Speicherzellen; eine Vielzahl von Neuprogrammierungs- und Wiedergewinnungsschaltungen,
die in dem Speicherzellenarray zu programmierende Daten temporär speichern
und aus dem Speicherzellenarray wiedergewonnene Daten lesen, wobei
jede Reprogrammierungs- und Wiedergewinnungsschaltung ein erstes
Latch und ein zweites Latch hat, das erste Latch mit einer ausgewählten Bitleitung
des Speicherzellenarrays über
einen ersten Transferschalter und einen zweiten Transferschalter
verbunden ist, die zueinander seriengeschaltet sind, das zweite Latch
mit einem Verbindungsknoten des ersten und zweiten Transferschalters über einen
dritten Transferschalter verbunden ist, ein Datenknoten des zweiten
Latchs mit einer Dateneingabe- und -ausgabeleitung über Spaltenauswahlschalter
verbunden ist; und einen Controller, der die Neuprogrammierungs-
und Wiedergewinnungsschaltungen steuert bei Datenneuprogrammierbetrieb
zu und Datenwiedergewinnungsbetrieb von dem Speicherzellenarray.
-
Diese Verbindung der ersten und zweiten Latchs
erreicht sowohl die Cache- als auch die Mehrpegelfunktionen.
-
Nachdem das Datum in einer ausgewählten Speicherzelle
gespeichert worden ist, kann das programmierte Datum wiedergewonnen
werden zur Programmierverifizierung, wobei das wiedergewonnene Datum
gelesen wird und in dem ersten Latch gespeichert.
-
Jede Reprogrammierungs- und Wiedergewinnungsschaltung
kann einen Mehrpegellogikbetriebsmodus haben und einen Cache-Betriebsmodus. In
dem Mehrpegellogikbetriebsmodus werden Neuprogrammierung und Wiedergewinnung
von Ober- und Unter-Bits
von Zwei-Bit-Vier-Pegel-Daten durchgeführt unter Verwendung der ersten
und zweiten Latchs beim Speichern der Zwei-Bit-Vier-Pegel-Daten
in einer der Speicherzellen in einem vorbestimmten Schwellwertpegelbereich.
Im Cache-Betriebsmodus
wird Datentransfer zwischen einer in Übereinstimmung mit einer ersten
Adresse ausgewählten
der Speicherzellen und dem ersten Latch durchgeführt während ein Datentransfer durchgeführt wird
zwischen dem zweiten Latch und Eingabe-/Ausgabeanschlüssen in Übereinstimmung
mit einer zweiten Adresse in bezug auf Ein-Bit-Zwei-Pegel-Daten,
die in einer der Speicherzellen zu speichern sind.
-
Die Vier-Pegel-Daten können definiert
sein als "11", "10", "00" und "01" vom unteren Pegel
des Schwellwertpegelbereichs. Den oberen und unteren Bits der Vier-Pegel-Daten
können
zum Programmieren und Wiedergewinnen unterschiedliche Zeilenadressen
zugeordnet werden.
-
Eine erste und eine zweite Datenprogrammieroperation
könnten
in dem Vier-Pegel-Logikbetriebsmodus durchgeführt werden. Bei der ersten
Datenprogrammieroperation wird das Unterbitdatum in das zweiten
Latch geladen und dann im ersten Latch gespeichert, das Programmieren
wird zu einer ausgewählten
Speicherzelle basierend auf den im ersten Latch gespeicherten Daten
durchgeführt.
Im zweiten Datenprogrammierbetrieb wird das Oberbitdatum in das
zweite Latch geladen und dann in das erste Latch gespeichert, während das
Unterbitdatum, das bereits in der ausgewählten Speicherzelle programmiert
ist, wiedergewonnen wird und in das zweite Latch geladen wird, die
Programmierung wird durchgeführt
zu der ausgewählten
Speicherzelle basierend auf dem im ersten Latch gespeicherten Datum
in Übereinstimmung
mit dem im zweiten Latch gespeicherten Datum.
-
Auch können eine erste, eine zweite
und eine dritte Wiedergewinnungsoperation durchgeführt werden
im Mehrpegellogikbetriebsmodus. In der ersten Wiedergewinnungsoperation
werden "0" oder "1" des Oberbits beurteilt unter Verwendung
einer an ein Steuergate einer ausgewählten Speicherzelle angelegte
Wiedergewinnungsspannung, wobei die Wiedergewinnungsspannung eingestellt
ist in einem Schwellwertpegelbereich von "10" und "00" als Vier-Pegel-Datum.
In der zweiten Wiedergewinnungsoperation werden "0" oder "1" des Unterbits beurteilt, wenn das Oberbit "0" ist, unter Verwendung einer an das
Steuergate der ausgewählten
Speicherzelle angelegten Wiedergewinnungsspannung, wobei die Wiedergewinnungsspannung
eingestellt ist in einen Schwellwertpegelbereich von "00" und "01" als das Vier-Pegel-Datum.
In der dritten Wiedergewinnungsoperation werden "0" oder "1" des Unterbits beurteilt, wenn das Oberbit "1" ist, unter Verwendung einer Wiedergewinnungsspannung,
die angelegt wird an das Steuergate der ausgewählten Speicherzelle, wobei
die Wiedergewinnungsspannung eingestellt ist in einem Schwellwertpegelbereich
von "11" und "10" für das Vier-Pegel-Datum.
-
Jede Neuprogrammierungs- und Wiedergewinnungsschaltung
kann selektiv mit einer Vielzahl von Bitleitungen des Speicherzellenarrays über einen
Bitleitungsauswahlschalter verbunden werden.
-
Jede Neuprogrammierungs- und Wiedergewinnungsschaltung
kann eine mit dem gemeinsamen Verbindungsknoten der ersten und zweiten
Transferschalter über
einen vierten Transferschalter verbundene gemeinsame Signalleitung
haben. Oder jede Neuprogrammierungs- und Wiedergewinnungsschaltung
kann einen temporären
Speicherknoten zum temporären
Speichern eines Potentials an einem Datenknoten des ersten Latch
haben und einen fünften
Transferschalter, der zwischen dem vierten Transferschalter und
der gemeinsamen Signalleitung vorgesehen ist, wobei der fünfte Transferschalter
von dem Potential am temporären
Speicherknoten gesteuert wird.
-
Darüber hinaus stellt die vorliegende
Erfindung eine nicht-flüchtige Halbleitereinrichtung
bereit, die umfasst: ein Speicherzellenarray mit elektrisch löschbaren
programmierbaren nicht-flüchtigen
Speicherzellen; eine Vielzahl von Neuprogrammierungs- und Wiedergewinnungsschaltungen,
die zu programmierende Daten temporär in dem Speicherzellenarray
speichern und von dem Speicherzellenarray wiedergewonnene Daten
lesen, wobei jede Neuprogrammierungs- und Wiedergewinnungsschaltung
ein erstes Latch hat und ein zweites Latch, die selektiv mit dem
Speicherzellenarray verbunden sind und Daten zueinander transferieren;
und einen Controller, der die Neuprogrammierungs- und Wiedergewinnungsschaltungen
im Daten-Neuprogrammierungsbetrieb
zu und Daten-Wiedergewinnungsbetrieb
von dem Speicherzellenarray steuert, wobei jede Neuprogrammierungs-
und Wiedergewinnungsschaltung einen Cache-Betriebsmodus hat, in
welchem Datentransfer zwischen einer in Übereinstimmung mit einer ersten
Adresse ausgewählten
der Speicherzellen 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 Zwei-Pegel-Daten, die in
den Speicherzellen zu speichern sind.
-
Die Zusammenarbeit der ersten und
zweiten Latchs bietet ein Hochgeschwindigkeits-EEPROM mit Cache-Funktion.
-
Ein Datenprogrammierzyklus für eine ausgewählte Speicherzelle
des Speicherzellenarrays kann durchgeführt werden durch wiederholtes
Anlegen von Programmierimpulsen und Wiedergewinnung bezüglich der
Programmierverifikation in einem Testmodus, wobei ein in der ausgewählten Speicherzelle fließender Zellenstrom
wiedergewonnen wird zu den Eingangs- und Ausgangsanschlüssen während der Datenprogrammierzyklus
unterbrochen wird, während
dem die von der Wiedergewinnung zur Programmierverifizierung wiedergewonnenen
Daten im ersten Latch gespeichert werden und das zweite Latch inaktiv
ist.
-
Ein Testmodus zum Messen des Zellenstroms
während
der Programmierung kann verwendet wrden für verschiedene Analysen.
-
Darüber hinaus stellt die vorliegende
Erfindung eine nicht-flüchtige Speichereinrichtung
bereit, die umfasst: ein Speicherzellenarray mit nicht-flü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 stellt die vorliegende
Erfindung eine nicht-flüchtige Halbleitereinrichtung
bereit, 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 + α) 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 Sourceseitige 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 512.
-
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 "OOH" 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 nicht-flü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 voraufgeladen 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 voraufgeladen 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 Verifizierensschahtung 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 0V 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 Angehoben werden 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.