-
Die
Erfindung betrifft ein nichtflüchtiges
Halbleiterspeicherelement und ein Verfahren zum Betreiben eines
nichtflüchtigen
Halbleiterspeicherelements.
-
Nichtflüchtige Halbleiterspeicherelemente halten
gespeicherte Daten, selbst wenn sie von einer externen Leistungsquelle
getrennt sind.
-
Entsprechend
sind diese Typen von Speicherelementen besonders beliebt, um eine
Langzeit-Datenspeicherung in elektronischen Geräten bereitzustellen, deren
Leistungsversorgung begrenzt ist oder abgeschnitten werden kann,
wie tragbare Elektrogeräte.
-
Es
gibt viele verschiedene Arten von nichtflüchtigen Speicherelementen,
umfassend beispielsweise ferroelektrische Speicher mit wahlfreiem
Zugriff (ferroelectric random access memories – FRAMs), nichtflüchtige Speicher
mit wahlfreiem Zugriff (nonvolatile random access memories – NRAMs),
lösch-
und programmierbare Nurlesespeicher (erasable programmable read
only memories – EPROMs)
und elektrisch lösch-
und programmierbare Nurlesespeicher (electrically erasable programmable
read only memories – EEPROMs),
um nur einige anzugeben. Eine besonders populäre Form von nichtflüchtigem
Speicher ist jedoch der Flashspeicher. Flashspeicher ist eine Art
von EEPROM, bei der jede Zelle aus einem einzelnen Metalloxyd-Halbleiter (MOS)-Transistor
gebildet ist.
-
1 zeigt ein Beispiel einer
typischen Flashspeicherzelle. Bezugnehmend auf 1 umfasst eine Flashspeicherzelle MC
eine Source „S" und ein Drain „D", die in einem Halbleitersubstrat ausgebildet
sind. Ein Strompfad ist zwischen der Source S und dem Drain D gebildet.
Die Speicherzelle MC umfasst weiterhin eine Gate-Oxidschicht GOX, die
auf dem Halbleitersubstrat ausgebildet ist, ein Floating-Gate FG,
das auf dem der Gate-Oxidschicht GOX ausgebildet ist, eine dielektrische
Oxidschicht DOX, die auf dem Floating-Gate FG ausgebildet ist, und
ein Steuergate CG, das auf dem dielektrischen Oxid DOX ausgebildet
ist.
-
Die
Speicherzelle MC wird programmiert, um Daten zu speichern, indem
geeignete Bias-Spannungen oder Vorspannungen an Steuergate CG, Drain
D und Source S sowie an das Halbleitersubstrat angelegt werden,
so dass Elektronen in dem Floating-Gate FG gefangen sind. Elektronen
können
in dem Floating-Gate FG gefangen werden, indem beispielsweise Elektronen
durch den Strompfad zwischen Source S und Drain D fließen, während eine hohe
Spannung an eine Wortleitung WL angelegt wird, die mit dem Steuergate
CG verbunden ist. Die hohe Spannung an der Wortleitung WL bewirkt,
dass Elektronen, die zwischen Source S und Drain D fließen, durch
die Gateoxidschicht GOX wandern und in dem Floating-Gate FG eingefangen
werden. Verschiedene alternative Techniken existieren zum Einfangen
von Elektronen in dem Floating-Gate FG, einschließlich Fowler-Nordheim-Tunnelung,
kanal-initiierte Sekundärelektronen-Injektion
und Injektion von heißen
Elektronen in den Kanal (channel hot electron injection).
-
Die
Speicherzelle MC wird gelöscht,
indem gefangene Elektronen aus dem Floating-Gate FG entfernt werden.
Dies kann beispielsweise dadurch erreicht werden, dass ein elektrisches
Potential zwischen Source S oder Drain D und Steuergate CG erzeugt
wird, so dass die Elektronen das Floating-Gate FG verlassen.
-
Elektronen,
die in dem Floating-Gate FG der Speicherzelle MC gefangen sind,
zeigen eine Tendenz, eine Schwellspannung der Speicherzelle MC anzuheben.
Vorliegend handelt es sich bei der Schwellspannung um eine Spannung,
die an das Steuergate CG angelegt wer den muss, damit Strom zwischen
Source S und Drain D fließt.
Allgemein bewirken die in dem Floating-Gate FG gefangenen Elektronen
ein Anheben der Schwellspannung der Speicherzelle MC, da diese Elektronen
ein elektrisches Feld, das durch die Spannung erzeugt wird, die
an das Steuergate CG angelegt ist, teilweise ausgleichen, so dass
eine höhere
Spannung verwendet werden muss, um Stromfluss zwischen Source S
und Drain D zu bewirken.
-
Die
Speicherzelle MC speichert einen von zwei Datenwerten. Diese beiden
Datenwerte sind durch zwei Schwellspannungsverteilungen repräsentiert,
wie in 2 dargestellt.
Basierend auf den in 2 dargestellten
Schwellspannungsverteilungen speichert die Speicherzelle MC, wenn
sie eine Schwellspannung aufweist, die höher als eine Referenzspannung
VM ist, einen Datenwert „0". Anderenfalls, wenn
die Schwellspannung der Speicherzelle MC niedriger als die Referenzspannung
VM ist, speichert sie einen Datenwert „1". Entsprechend kann die Speicherzelle
gelesen werden, indem die Referenzspannung VM an die Wortleitung
WL angelegt wird und indem bestimmt wird, ob Strom zwischen Source S
und Drain D fließt.
-
Um
die Datenmenge zu erhöhen,
die innerhalb eines kleinen Bereichs eines Flashspeicherelements
gespeichert werden kann, haben Forscher Flashspeicherelemente entwickelt,
die in der Lage sind, mehr als zwei Zustände zu speichern. Dies wird typischerweise
durch eine Speicherzelle erreicht, die mehr als zwei getrennte Schwellspannungsverteilungen
aufweist. Beispielsweise illustriert 3 vier Schwellspannungsverteilungen
für eine
Speicherzelle, die in der Lage ist, Daten in einem von vier unterschiedlichen
Zuständen
zu speichern. Allgemein wird vorliegend der Begriff „n-Niveau
nichtflüchtige
Speicherzelle" verwendet,
wenn von Speicherzellen die Rede ist, die in der Lage sind, Daten
in „n" unterschiedlichen
Zuständen
zu speichern. Entsprechend werden Begriffe wie 2-Niveau nichtflüchtige Speicherzelle
und 4-Niveau nichtflüchtige
Speicherzelle verwendet, um Speicherzellen zu beschreiben, die in der
Lage sind, Daten mit zwei bzw. vier Zuständen zu speichern.
-
Eine
4-Niveau Speicherzelle hat die doppelte Speicherkapazität wie eine
2-Niveau Speicherzelle. Allerdings sind die Abstände zwischen benachbarten Schwellspannungsverteilungen
in der 4-Niveau Speicherzelle typischerweise sehr klein, beispielsweise etwa
0,67V. Dementsprechend sind 4-Niveau Speicherzellen aufgrund von
Verschiebungen in den Schwellspannungsverteilungen fehleranfälliger als 2-Niveau
Speicherzellen. Diese Verschiebungen können beispielsweise durch Leckströme bewirkt sein.
-
Da
die 4-Niveau Speicherzellen fehleranfälliger als 2-Niveau Speicherzellen
sind, kann der Vorteil zusätzlicher
Speicherkapazität
der 4-Niveau Speicherzellen durch ihren Mangel an Zuverlässigkeit überwogen
sein.
-
Der
Erfindung liegt das technische Problem zugrunde, ein nichtflüchtiges
Halbleiterspeicherelement und ein Verfahren zum Betreiben eines
nichtflüchtigen
Halbleiterspeicherelements anzugeben, die sich gegenüber herkömmlichen
Elementen durch ein erhöhtes
Integrationsniveau und eine verbesserte Zuverlässigkeit auszeichnen.
-
Die
Erfindung löst
das Problem mittels eines nichtflüchtigen Halbleiterspeicherelements
mit den Merkmalen des Patentanspruchs 1 und mittels eines Verfahrens
zum Betreiben eines nichtflüchtigen
Halbleiterspeicherelements mit den Merkmalen des Patentanspruchs
13 oder des Patentanspruchs 17.
-
Vorteilhafte
Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben,
deren Wortlaut hiermit durch Bezugnahme in die Beschreibung aufgenommen
wird, um unnötige
Textwiederholungen zu vermeiden.
-
Vorteilhafte
Ausgestaltungen der Erfindung, die nachfolgend detailliert beschrieben
sind, sowie die zur Erleichterung des Verständnisses der Erfindung erörterten
Ausgestaltungen des Standes der Technik sind in der Zeichnung dargestellt.
Es zeigt/zeigen:
-
1 ein
schematisches Diagramm einer herkömmlichen Flashspeicherzelle;
-
2 einen
Graph zur Darstellung von Schwellspannungsverteilungen einer 2-Niveau
Speicherzelle;
-
3 einen
Graph zur Darstellung von Schwellspannungsverteilungen einer 4-Niveau
Speicherzelle;
-
4 einen
Graph zur Darstellung der Schwellspannungsverteilungen einer 3-Niveau
Speicherzelle;
-
5 ein
Diagramm zur Darstellung eines Teils eines nichtflüchtigen
Halbleiterspeicherelements gemäß einer
Ausgestaltung der Erfindung;
-
6 ein
Schaltungsdiagramm zur Darstellung eines Teils des Speicherfeldes
in 5 gemäß einer
Ausgestaltung der Erfindung;
-
7 ein
Schaltungsdiagramm zur Darstellung des Seitenpuffers gemäß 5 in
weiteren Einzelheiten;
-
8 ein
Ablaufdiagramm zur Darstellung einer ersten Seitenprogrammieroperation
in einem Programmierverfahren für
ein nichtflüchtiges
Halbleiterspeicherelement gemäß einer
Ausgestaltung der Erfindung;
-
9 ein
Datenflussdiagramm entsprechend dem Ablaufdiagramm von 8;
-
10 ein
Diagramm zur Darstellung von Veränderungen
der Schwellspannungen erster und zweiter Speicherzellen, wenn die
erste Seitenprogrammieroperation durchgeführt wurde;
-
11 ein
Ablaufdiagramm zur Darstellung einer zweiten Seitenprogrammieroperation
in dem Programmierverfahren;
-
12 ein
Datenflussdiagramm entsprechend dem Ablaufdiagramm in 11;
-
13 ein
Diagramm zur Darstellung von Änderungen
der Schwellspannungen erster und zweiter Speicherzellen, nachdem
die zweiten Seitenprogrammieroperation durchgeführt wurde;
-
14A und 14B Ablaufdiagramme
zur Darstellung einer dritten Seitenprogrammieroperation in dem
Programmierverfahren;
-
15A und 15B Datenflussdiagramme
entsprechend den Ablaufdiagrammen der 14A und 14B;
-
16 ein
Diagramm zur Darstellung von Zuständen erster und zweiter Latch-Daten
während der
dritten Seitenprogrammieroperation;
-
17 ein
Diagramm zur Darstellung von Änderungen
der Schwellspannungen erster und zweiten Speicherzellen, nachdem
die dritte Seitenprogrammieroperation durchgeführt wurde;
-
18A und 18B Ablaufdiagramme
zur Darstellung eines ersten Seitenleseschritts in einem Leseverfahren
für das
nichtflüchtige
Halbleiterspeicherelement gemäß einer
ersten Ausgestaltung der Erfindung;
-
19A und 19B Datenflussdiagramme
entsprechend den Ablaufdiagrammen von 18A und 18B;
-
20A und 20B Ablaufdiagramme
zur Darstellung eines zweiten Seitenleseschritts in dem Leseverfahren;
-
21A und 21B Datenflussdiagramme
entsprechend den Ablaufdiagrammen in 20A und 20B;
-
22 ein
Ablaufdiagramm zur Darstellung eines dritten Seitenleseschritts
in dem Leseverfahren; und
-
23 ein
Datenflussdiagramm entsprechend dem Ablaufdiagramm in 22.
-
Ausgestaltungen
der Erfindung betreffen allgemein nichtflüchtige Halbleiterspeicherelemente
mit 3-Niveau Speicherzellen. Als ein Beispiel illustriert 4 Schwellspannungsverteilungen
für eine
3-Niveau Speicherzelle MC. Die unterschiedlichen Schwellspannungsverteilungen
in 4 können
voneinander in einer Leseoperation unterschieden werden, die erste
und zweite Differenzspannungen VR1 und VR2 verwendet.
-
In
der vorliegenden schriftlichen Beschreibung wird eine Schwellspannungsverteilung,
die niedriger als die erste Referenzspannung VR1 ist, als eine „erste
Schwellspannungsverteilung G1" bezeichnet.
Eine Schwellspannungsverteilung zwischen der ersten Referenzspannung
VR1 und der zweiten Referenzspannung VR2 wird als eine „Schwellspannungsverteilung
G2" bezeichnet. Schließlich wird
eine Schwellspannungsverteilung, die größer ist als die zweite Referenz spannung
VR2, als eine „dritte
Schwellspannungsverteilung G3" bezeichnet.
-
Wenn
die 3-Niveau Speicherzelle MC programmiert wird, werden erste und
zweite Prüfleseschwellspannungen
verwendet, die geringfügig
höher als
die ersten und zweiten Referenzspannungen VR1 bzw. VR2 sind, um
zu überprüfen, ob
eine Programmieroperation die Schwellspannung der 3-Niveau Speicherzelle
MC bis hin zu einer gewünschten Schwellspannungsverteilung
geändert
hat.
-
Die
3-Niveau Speicherzelle MC stellt mehr Datenspeicherkapazität zur Verfügung als
eine 2-Niveau Speicherzelle und ermöglicht daher für Speicherelemente
ein höheres
Maß an
Integration. Zusätzlich
weist die 3-Niveau Speicherzelle MC verglichen mit einer 4-Niveau
Speicherzelle größere Abstände zwischen
benachbarten Schwellspannungsverteilungen auf und besitzt daher
ein höheres
Maß an
Zuverlässigkeit.
-
Dementsprechend
weisen nichtflüchtige Halbleiterspeicherelemente
mit 3-Niveau Speicherzellen, d.h. „3-Niveau nichtflüchtige Speicherelemente" Vorteile gegenüber anderen
Typen von nichtflüchtige
Halbleiterspeicherelementen sowohl in Bezug auf Integration als
auch auf Zuverlässigkeit
auf.
-
5 ist
ein Diagramm zur Darstellung eines Teils eines nichtflüchtigen
Halbleiterspeicherelements gemäß einer
Ausgestaltung der vorliegenden Erfindung. Bezugnehmend auf 5 umfasst
das nichtflüchtige
Halbleiterspeicherelement ein Speicherfeld 100, einen Seitenpuffer 200,
eine Zeilendecodierer 300 und eine Daten-I/O-Schaltung 400.
-
Das
Speicherfeld 100 umfasst eine Mehrzahl von 3-Niveau Speicherzellen,
die in einer Zeilen/Spalten-Matrixstruktur angeordnet sind. 6 ist ein
Schaltungsdiagramm zur Darstellung einer Ausgestaltung des Speicherfeldes 100,
wenn das nichtflüchtige
Halbleiterspeicherelement ein nichtflüchtiges Halbleiterspeicherelement
vom NAND-Typ ist.
-
Bezugnehmend
auf 6 umfasst das Speicherfeld 100 einen
ersten geradzahligen Strang STe1, einen ersten ungeradzahligen Strang
STo1, einen zweiten geradzahligen Strang STe2 und einen zweiten
ungeradzahligen Strang STo2. Der erste geradzahlige Strang STe1,
der erste ungeradzahlige Strang STo1, der zweite geradzahlige Strang
STe2 und der zweite ungeradzahlige Strang STo2 sind mit einer ersten
geradzahligen Bitleitung BLe1, einer ersten ungeradzahligen Bitleitung
BLo1, einer zweiten geradzahligen Bitleitung BLe2 bzw. einer zweiten
ungeradzahligen Bitleitung BLo2 verbunden.
-
Die
erste geradzahlige Bitleitung BLe1 und die erste ungeradzahlige
Bitleitung BLo1 sind selektiv mit einer ersten gemeinsamen Bitleitung
BLc1 über
einen ersten gemeinsamen Bitleitungssteuerblock BKCON1 während Programmier-
und Leseoperationen des nichtflüchtigen
Halbleiterspeicherelements verbunden. Insbesondere wenn ein Auswahlsignal
für geradzahlige
Bitleitungen BLSLTe und ein erstes Lesebitleitungssignal SOBLK1
in einem „hohen" Logikzustand („H") aktiviert sind,
ist die erste geradzahlige Bitleitung BLe1 mit der ersten gemeinsamen
Bitleitung BLc1 verbunden; wenn ein Auswahlsignal für ungeradzahlige
Bitleitungen BLSLTo und das erste Lesebitleitungssignal SOBLK1 in
einem „hohen" Logikzustand aktiviert
sind, ist die erste ungeradzahlige Bitleitung BLo1 mit der ersten
gemeinsamen Bitleitung BLc1 verbunden.
-
Die
zweite geradzahlige Bitleitung BLe2 und die zweite ungeradzahlige
Bitleitung BLo2 sind selektiv mit einer zweiten gemeinsamen Bitleitung
BLc2 über
einen zweiten gemeinsamen Bitleitungssteuerblock BKCON2 während Datenprogrammier-
und Leseoperationen des nichtflüchtigen
Halbleiterspeicherelements verbunden. Insbesondere wenn das Auswahlsignal
BLSLTe und ein zweites Lesebitleitungssignal SOBLK2 in einem „hohen" Logikzustand aktiviert
sind, ist die zweite geradzahlige Bitleitung BLe2 mit der zweiten
gemeinsamen Bitleitung BLc2 verbunden; wenn das Auswahlsignal für ungeradzahlige
Bitleitungen BLSLTo und das zweite Lesebitleitungssignal SOBLK2
in dem „hohen" Logikzustand aktiviert
sind, ist die zweite ungeradzahlige Bitleitung BLo2 mit der zweiten
gemeinsamen Bitleitung BLc2 verbunden.
-
Der
erste gemeinsame Bitleitungssteuerblock BKCON1 treibt die erste
geradzahlige Bitleitung BLe1 und die erste ungeradzahlige Bitleitung BLo1
mit einer Versorgungsspannung VDD oder einer Massespannung VSS.
In gleicher Weise treibt der zweite gemeinsame Bitleitungssteuerblock BKCON2
die zweite geradzahlige Bitleitung BLe2 und die zweite ungeradzahlige
Bitleitung BLo2 mit der Versorgungsspannung VDD oder der Massespannung
VSS. Speziell treiben die ersten und zweiten gemeinsamen Bitleitungssteuerblöcke BKCON1 und
BKCON2 jeweilige erste und zweite geradzahlige Bitleitungen BLe1
und BLe2 mit der Versorgungsspannung VDD in Abhängigkeit von einem geradzahligen
Spannungsabschirmsignal SHLDHe mit „hohem" Logikzustand. In gleicher Weise treiben
die ersten und zweiten gemeinsamen Bitleitungssteuerblöcke BKCON1
und BKCON2 jeweilige erste und zweite ungeradzahlige Bitleitungen
BLo1 und BLo2 mit der Versorgungsspannung VDD in Abhängigkeit
von einem ungeradzahligen Spannungsabschirmsignal SHLDHo mit „hohem" Logikzustand. In
gleicher Weise treiben die ersten und zweiten gemeinsamen Bitleitungssteuerblöcke BKCON1
und BKCON2 jeweilige erste und zweite geradzahlige Bitleitungen
BLe1 und BLe2 mit der Massespannung VSS in Abhängigkeit von einem geradzahligen
Spannungsabschirmsignal SHLDLe mit „niedrigem" Logikzustand und jeweilige erste und
zweite ungeradzahlige Bitleitungen BLo1 und BLo2 mit der Massespannung
VSS in Abhängigkeit
von einem ungeradzahligen Spannungsabschirmsignal SHLDLo mit „niedrigem" Logikzustand.
-
Der
erste geradzahlige Strang STe1, der erste ungeradzahlige Strang
STo1, der zweite geradzahlige Strang STe2 und der zweite ungeradzahlige Strang
STo2 umfassen jeweils eine Mehrzahl von Speicherzellen MC. In der
vorliegenden Beschreibung werden die Speicherzellen, die in dem
ersten geradzahligen Strang STe1 oder dem ersten ungeradzahligen
Strang STO1 enthalten sind, als „erste Speicherzellen" bezeichnet, und
Speicherzellen, die in dem zweiten geradzahligen Strang STe2 oder
in dem zweiten ungeradzahligen Strang STo2 enthalten sind, werden
als zweite Speicherzellen bezeichnet.
-
Die
ersten und zweiten Speicherzellen sind typischerweise vom selben
Speicherzellentyp, können
elektrisch programmiert und gelöscht
werden und stellen nichtflüchtigen
Datenspeicher zur Verfügung.
-
Die
ersten und zweiten Speicherzellen können paarweise in geradzahligen
Strängen
angeordnet und durch dieselbe Wortleitung gesteuert sein, wie durch
die gestrichelten Ovale in 6 illustriert. In
gleicher Weise können
die ersten und zweiten Speicherzellen auch in Paaren innerhalb der
ungeradzahligen Stränge
angeordnet sein, die durch dieselbe Wortleitung gesteuert sind.
-
Als
ein Beispiel zeigt 6 eine einzelne erste Speicherzelle
MC1, die in dem ersten geradzahligen Strang STe1 enthalten ist,
und eine einzelne zweite Speicherzelle MC2, die in dem zweiten geradzahligen
Strang STe2 enthalten ist, die ein Paar bilden. In gleicher Weise
bilden auch eine einzelne erste Speicherzelle in dem ersten ungeradzahligen Strang
STo1 und eine einzelne zweite Speicherzelle in dem zweiten ungeradzahligen
Strang STo2 ein Paar.
-
Daten
werden typischerweise während
einer einzelnen Lese- oder
Programmier- oder Leseoperation in die Speicherzellen eines Paares
programmiert oder daraus gelesen. Verfahren zum Programmieren und
Lesen von Paaren von Speicherzellen werden weiter unten detailliert
beschrieben. In dem Programmierverfahren ist angenommen, dass die
drei Schwellspannungsverteilungen, die jede Speicherzelle in jedem
Paar von 3-Niveau Speicherzellen charakterisieren, durch eine Gruppe
aus drei Bits BIT1 bis BIT3 dargestellt werden können.
-
Wenn
erste und zweite Speicherzellen MC1 und MC2 innerhalb der ersten
und zweiten geradzahligen Stränge
STe1 und STe2 ausgewählt
und getrieben werden, fungieren die ersten und zweiten ungeradzahlige
Bitleitungen BLo1 und BLo2 als Abschirmleitungen. Wenn in gleicher
Weise ein Paar erster und zweiter Speicherzellen in den ersten und
zweiten ungeradzahligen Strängen
STo1 und STo2 ausgewählt
und getrieben werden, fungieren die ersten und zweiten geradzahligen
Bitlei tungen BLe1 und BLe2 als Abschirmleitungen. Auf diese Weise
fungieren geradzahlige Bitleitungen BLe1 und BLe2 oder ungeradzahlige
Bitleitungen BLo1 und BLo2 als Abschirmleitungen, wodurch Rauscheffekte
und kapazitives Koppeln vermieden werden. Somit ist die Leistungsfähigkeit
des nichtflüchtigen
Halbleiterspeicherelements gegen Verschlechterung geschützt.
-
Unter
erneuter Bezugnahme auf 5 ist der Seitenpuffer 200 mit
dem Speicherfeld 100 über die
ersten und zweiten gemeinsamen Bitleitungen BLc1 und BLc2 gekoppelt.
Der Seitenpuffer 200 wird getrieben, um die ersten bis
dritten Bits BIT1 bis BIT3 auf entsprechende Schnellspannungsverteilungen der
ersten und zweiten Speicherzellen MC1 und MC2 abzubilden.
-
7 ist
ein Schaltungsdiagramm zur Darstellung einer Ausgestaltung des Seitenpuffers 200. Bezugnehmend
auf 7 umfasst der Seitenpuffer 200 einen
Schalter SW, einen ersten Latchblock LTBK1 und einen zweiten Latchblock
LTBK2.
-
Der
Schalter SW verbindet die erste gemeinsame Bitleitung BLc1 mit der
zweiten gemeinsamen Bitleitung BLc2 in Abhängigkeit von einem Umschaltsignal
VSW.
-
Der
erste Latchblock LTBK1 kann erste Latchdaten DLT1 speichern und
ist mit der ersten gemeinsamen Bitleitung BLc1 verbunden. Der erste Latchblock
LTBK1 umfasst einen ersten Leseanschluss NSEN1, eine erste Latcheinheit 211,
eine erste Umschalteinheit 213, eine erste Latchsteuereinheit 215 und
eine erste Dumping-Einheit 217.
-
Der
erste Leseanschluss NSEN1 ist mit der ersten gemeinsamen Bitleitung
BLc1 in Abhängigkeit von
einem ersten Bitleitungsverbindungssignal BLSHF1 verbunden. In diesem
Fall können
Daten an dem ersten Leseanschluss NSEN1 durch eine erste Bitleitungsverbindungseinheit 223 zu
der ersten gemeinsamen Bitleitung BLc1 geliefert werden.
-
Die
erste Latcheinheit 211 latchspeichert (zwischenspeichert)
die ersten Latchdaten DLT1. Weiterhin überträgt die erste Latcheinheit 211 die ersten
Latchdaten DLT1 zu der ersten gemeinsamen Bitleitung BLc1 in Abhängigkeit
von einem ersten Pufferauswahlsignal PBSLT1.
-
Die
erste Umschalteinheit 213 kann die ersten Latchdaten DLT1
basierend auf einem Spannungspegel des ersten Leseanschlusses NSEN1
aus einem „niedrigen" Logikzustand („L") in den „hohen" Logikzustand umschalten
(oder „floppen"), wenn ein Eingangssignal
DI den logisch „hohen" Zustand aufweist.
In gleicher Weise kann die erste Umschalteinheit 213 basierend
auf dem Spannungspegel des ersten Leseanschlusses NSEN1 die ersten
Latchdaten DLT1 von einem „hohen" Logikzustand in
einen „niedrigen" Logikzustand umschalten,
wenn ein invertiertes Eingangssignal nDI in dem „hohen" Logikzustand aktiviert ist.
-
Die
erste Latchsteuereinheit 215 setzt die ersten Latchdaten
DLT1 in den „hohen" Logikzustand, wenn
das Eingangssignal DI den „hohen" Logikzustand aufweist
und wenn ein erstes Ausgabe- oder Ausgangssteuersignal DIO1 den „hohen" Logikzustand aufweist.
Die erste Latchsteuereinheit 215 setzt die ersten Latchdaten
DLT1 in den „niedrigen" Logikzustand zurück, wenn
das invertierte Eingangssignal nDI den „hohen" Logikzustand aufweist und wenn das
Ausgangssteuersignal DIO1 den „hohen" Logikzustand aufweist.
-
Ein
NMOS-Transistor T11, an dessen Gateanschluss das Eingangssignal
DI anliegt, und ein MOS-Transistor T13, an dessen Gateanschluss das
invertierte Eingangssignal nDI anliegt, sind sowohl in der ersten
Umschalteinheit 213 als auch in der ersten Latchsteuereinheit 215 enthalten.
-
Die
erste Dumping-Einheit 217 entlädt den ersten Leseanschluss
NSEN1 in Abhängigkeit
von den ersten Latchdaten DLT1 nach Massespannung VSS. Insbesondere
entlädt
die erste Dumping-Einheit 217 in Abhängigkeit von einem ersten Dumping-Signal
DUMP1 den ersten Leseanschluss NSEN1 nach Massespannung VSS, wenn
die ersten Latchdaten DLT1 den „hohen" Logikzustand aufweisen. Auf diese Weise
dient die erste Dumping-Einheit 217 zum Invertieren der
ersten Latchdaten DLT1 in den „hohen" Logikzustand und
liefert die invertierten Daten an den ersten Leseanschluss NSEN1.
-
Der
erste Pufferblock LTBK1 umfasst typischerweise weiterhin eine erste
Ausgabeeinheit 219, eine erste Vorladeeinheit 221 und
eine erste Bitleitungsverbindungseinheit 223.
-
Die
erste Ausgabeeinheit 219 liefert gelegentlich die ersten
Latchdaten DLT1, die in der ersten Latcheinheit 211 gespeichert
sind, an eine interne Datenleitung IDL in Abhängigkeit von dem ersten Ausgangssteuersignal
DIO1.
-
Die
erste Vorladeeinheit 221 lädt in Abhängigkeit von einem ersten Lesevorladungssignal /PRE1
den ersten Ausgangsanschluss NSEN1 auf die Versorgungsspannung VDD
vor.
-
Die
erste Bitleitungsverbindungseinheit 223 steuert eine elektrische
Verbindung zwischen der ersten gemeinsamen Bitleitung BLc1 und dem
ersten Leseanschluss NSEN1 in Abhängigkeit von dem ersten Bitleitungsverbindungssignal
BLSHF1.
-
Bezugnehmend
auf 7 kann der zweite Latchblock LTBK2 zweite Latchdaten
DLT2 speichern und ist mit der zweiten gemeinsamen Bitleitung BLc2
verbunden. Der zweite Pufferblock LTBK2 umfasst einen zweiten Leseanschluss
NSEN2, eine zweite Latcheinheit 261, eine zweite Umschalteinheit 263,
eine zweite Latchsteuereinheit 265 und eine zweite Dumping-Einheit 267 und
umfasst weiterhin eine zweite Ausgabeeinheit 269, eine
zweite Vorladeeinheit 271 und eine zweite Bitleitungsverbindungseinheit 273.
-
Der
zweite Leseanschluss NSEN2, die zweite Latcheinheit 261,
die zweite Umschalteinheit 263, die zweite Latchsteuereinheit 265,
die zweite Dumping-Einheit 267, die zweite Ausgabeeinheit 269,
die zweite Vorladeeinheit 271 und die zweite Bitleitungsverbindungseinheit 273 des
zweiten Latchblocks LTBK2 weisen dieselbe Ausgestaltung auf und
führen
dieselben Operationen durch wie der erste Leseanschluss NSEN1, die
erste Latcheinheit 211, die Umschalteinheit 213,
die erste Latchsteuereinheit 215, die erste Dumping-Einheit 217,
die erste Ausgabeeinheit 219, die erste Vorladeeinheit 221 bzw.
die erste Bitleitungsverbindungseinheit 221 des ersten Latchblocks
LTBK1. Entsprechend wird auf eine detaillierte Beschreibung dieser
Komponenten verzichtet, um Wiederholungen zu vermeiden.
-
Unter
erneuter Bezugnahme auf 5 ist der Zeilendecodierer 300 mit
dem Speicherfeld 100 gekoppelt. Der Zeilendecodierer 300 steuert
den Spannungspegel einer ausgewählten
Wortleitung WL und erzeugt ein Strangauswahlsignal SSL und ein Masseauswahlsignal
GSL. Die Daten-Eingabe/Ausgabe (I/O)-Schaltung 400 gibt
Daten, die in dem Seitenpuffer 200 gespeichert sind, an
ein externes System aus und lädt
Daten, die von dem externen System empfangen werden, in den Seitenpuffer 200.
Typischerweise liefert das externe System erste bis dritte Bits
BIT1 bis BIT3 an die Daten-I/O-Schaltung 400, und die ersten
bis dritten Bits werden von der Daten-I/O-Schaltung 400 über die
interne Datenleitung IDL zu dem Seitenpuffer übertragen.
-
Ein
Programmierverfahren für
das nichtflüchtige
Halbleiterspeicherelement gemäß 5 wird nachfolgend
beschrieben. In der folgenden Beschreibung wird das Programmierverfahren
in Bezug auf ein Paar von Speicherzellen beschrieben, die mittels einer
Sequenz erster bis dritter Seitenprogrammieroperationen programmiert
werden, die erste bis dritte Bits BIT1 bis BIT3 verwenden.
-
8 und 9 sind
ein Ablaufdiagramm bzw. ein Datenflussdiagramm und illustrieren
eine erste Seitenprogrammieroperation für erste und zweite Speicherzellen
MC1 und MC2. Während
der ersten Seitenprogrammieroperation wird die Schwellspannung der
ersten Speicherzelle MC1 in Abhängigkeit
von dem Wert des ersten Bits BIT1 bis innerhalb der zweiten Schwellspannungsverteilung
G2 programmiert.
-
Bezugnehmend
auf 8 werden in einem Schritt S1110 die ersten Latchdaten
DLT1 in den „hohen" Logikzustand gesetzt.
Anschließend
wird in Schritt S1120 das erste Bit BIT1 in die ersten Latchdaten
DLT1 geladen (siehe A1 in 9). Insbesondere
wenn das erste Bit BIT1 eine logische „0" (oder kurz eine „0") ist, wird das invertierte Eingangssignal nDI
in dem „hohen" Logikzustand aktiviert,
so dass die ersten Latchdaten DLT1 als „niedriger" Logikzustand latchgespeichert werden.
Wenn jedoch das erste Bit BIT1 eine logische „1" (oder kurz eine „1") ist, wird das Eingangssignal DI in
dem „hohen" Logikzustand aktiviert,
und die ersten Latchdaten DLT1 werden in dem „hohen" Logikzustand gehalten.
-
Danach
werden in einem Schritt S1130 die ersten Latchdaten DLT1 auf die
erste gemeinsame Bitleitung BLc1 abgeladen („dumped"), um die erste Speicherzelle MC1 zu
programmieren (siehe A2 in 9). Wenn
beispielsweise das erste Bit BIT1 „0" ist, wird die Schwellspannung der ersten
Speicherzelle MC1 erhöht.
Wenn im Gegensatz hierzu das erste Bit BIT1 „1" ist, verbleibt die Schwellspannung der
ersten Speicherzelle MC1 in ihrem gegenwärtigen Zustand.
-
Dann
wird in einem S1140 der Wert der Schwellspannung der ersten Speicherzelle
MC1 relativ zu der ersten Referenzspannung VR1 durch die erste gemeinsame
Bitleitung Blc1 an dem ersten erste Leseanschluss NSEN1 reflektiert
bzw. abgebildet (d.h. wird angezeigt oder wird erkennbar) (siehe
A3 in 9). Mit anderen Worten: der Pegel einer Spannung,
die durch die erste gemeinsame Bitleitung BLc1 zu dem ersten Leseanschluss
NSEN1 übertragen
wird, wird dadurch bestimmt, ob die Schwellspannung der ersten Speicherzelle
MC1 größer als oder
gleich die/der erste/n Referenzspannung VR1 ist. Wenn speziell die
Schwellspannung der ersten Speicherzelle größer als die erste Referenzspannung
VR1 ist, werden die Spannungspegel der ersten gemeinsamen Bitleitung
BLc1 und des ersten Leseanschlusses NSEN1 auf Versorgungsspannung
VDD getrieben. Wenn im Gegensatz hierzu die Schwellspannung der
ersten Speicherzelle MC1 niedriger als die erste Referenzspannung
ist, werden die Spannungspegel der ersten gemeinsamen Bitleitung
BLc1 und des ersten Leseanschlusses NSEN1 auf Massespannung VSS
getrieben.
-
In
einem Schritt S1150 wird ein erstes Latchsteuersignal LCH1 als ein
Puls mit „hohem" Logikzustand erzeugt.
In Abhängigkeit
von dem Puls schalten die ersten Latchdaten DLT1 basierend auf dem Spannungspegel
des ersten Leseanschlusses NSEN1 selektiv von dem „niedrigen" Logikzustand auf
den „hohen" Logikzustand um
(siehe A4 in 9). Insbesondere wenn der Spannungspegel des
ersten Lesean schlusses NSEN1 in der Nähe der Versorgungsspannung
VDD liegt, schalten die ersten Latchdaten DLT1 aus dem „niedrigen" Logikzustand in
den „hohen" Logikzustand um.
Wenn im Gegensatz hierzu der Spannungspegel des ersten Leseanschlusses
NSEN1 nahe bei der Massespannung VSS liegt, verbleiben die ersten
Latchdaten DLT1 im gegenwärtigen
Zustand.
-
Wenn
sich die ersten Latchdaten DLT1 nach Schritt S1150 im „niedrigen" Logikzustand befinden, wurde
die Schwellspannung der ersten Speicherzelle MC1 nicht auf Werte
innerhalb der zweiten Schwellspannungsverteilung G2 angehoben.
-
In
einem Schritt S1160 wird das erste Ausgangssignal DIO1 als ein Puls
mit „hohem" Logikzustand erzeugt.
In Abhängigkeit
von dem Puls wird der Logikzustand der ersten Latchdaten DLT1 gelesen und
durch die interne Datenleitung IDL aus dem Halbleiterspeicherelement
heraus übertragen
(siehe A5 in 9). Dann wird in einem Schritt
S1170 der Erfolg oder Misserfolg der ersten beiden Programmieroperationen
basierend auf dem Logikzustand der ersten Latchdaten DLT1 bestimmt,
die aus dem Halbleiterspeicherelement ausgelesen wurden. Wenn der
logische Zustand der ersten Latchdaten DLT1, die in Schritt S1160
gelesen wurden, „hoch" ist, wurde die erste
Speicherzelle MC1 erfolgreich programmiert. Wenn andererseits der
Logikzustand der ersten Latchdaten DLT1, die in Schritt S1160 gelesen
wurden, „niedrig" ist, wurde die erste
Speicherzelle MC1 nicht erfolgreich programmiert, d.h. es wird ein „Programmierfehler" detektiert.
-
Wenn
ein Programmierfehler detektiert wird, werden die Schritte S1130
bis S1170 wiederholt, wobei die in Schritt S1130 an die erste Speicherzelle MC1
angelegte Wortleitungsspannung schrittweise erhöht wird, um die Schwellspannung
der ersten Speicherzelle MC1 zu erhöhen, bis ein Programmiererfolg
erreicht wird oder – optional – bis eine
vorbestimmte Anzahl an Iterationen durchgeführt wurde.
-
Wenn
in Schritt S1170 festgestellt wird, dass die erste Speicherzelle
MC1 erfolgreich programmiert wurde, wird in einem Schritt S1180
der Abschluss der ersten Seitenprogrammieroperation bestätigt.
-
10 ist
ein Diagramm zur Darstellung von Veränderungen der Schwellspannungen
erster und zweiter Speicherzellen MC1 und MC2, nachdem die erste
Seitenprogrammieroperation innerhalb des in 8 und 9 dargestellten
Programmierverfahrens durchgeführt
wurde.
-
Bezugnehmend
auf 10 werden dann, wenn das erste Bit BIT1 „1" ist (CASE11), die Schwellspannungen
der ersten und zweiten Speicherzellen MC1 und MC2 in einem gelöschten Zustand,
d.h. innerhalb der ersten Schwellspannungsverteilung G1 gehalten.
-
Wenn
das erste Bit BIT1 „0" ist (CASE12), wird
die Schwellspannung der ersten Speicherzelle MC1 bis auf innerhalb
der zweiten Schwellspannungsverteilung G2 erhöht, und die Schwellspannung
der zweiten Speicherzelle MC2 wird innerhalb der ersten Schwellspannungsverteilung
G1 gehalten.
-
11 und 12 sind
ein Ablaufdiagramm und ein Datenflussdiagramm zur Darstellung einer zweiten
Seitenprogrammieroperation in dem Programmierverfahren. Bei der
zweiten Seitenprogrammieroperation wird die Schwellspannung der
zweiten Speicherzelle MC2 in Abhängigkeit
von dem Logikzustand des zweiten Bits BIT2 bis auf innerhalb der zweiten
Schwellspannungsverteilung G2 programmiert.
-
Bezugnehmend
auf 11 werden in einem Schritt S1210 zweite Latchdaten
DLT2 in den „hohen" Logikzustand gesetzt.
Anschließend
wird in einem Schritt S1220 das zweite Bit BIT2 als zweite Latchdaten
DLT2 geladen (siehe B1 in 12). Mit
anderen Worten: wenn das zweite Bit BIT2 „0" ist, wird das Eingangssignal nDI in
dem „hohen" Logikzustand aktiviert,
so dass die zweiten Latchdaten DLT2 als „niedriger" Logikzustand latchgespeichert werden. Wenn
jedoch das zweite Bit BIT2 „1" ist, wird das Eingangssignal
DI in dem „hohen" Logikzustand aktiviert,
und die zweiten Latchdaten DLT2 verbleiben in dem „hohen" Logikzustand.
-
Anschließend werden
in einem Schritt S1230 die zweiten Latchdaten DLT2 auf die zweite
gemeinsame Bitleitung BLc2 abgeladen, um die zweite Speicherzelle
MC2 zu programmieren (siehe B2 in 12). Mit
anderen Worten, wenn das zweite Bit BIT2 „0" ist, wird die Schwell spannung der zweiten Speicherzelle
MC2 erhöht,
und wenn das zweite Bit BIT2 „1" ist, bleibt die
Schwellspannung der zweiten Speicherzelle MC2 in ihrem gegenwärtigen Zustand.
-
Dann
wird in einem Schritt S1240 der Wert der Schwellspannung der zweiten
Speicherzelle MC2 relativ zu der zweiten Referenzspannung VR2 an
dem zweiten Leseanschluss NSEN2 durch die zweite gemeinsame Bitleitung
BLc2 reflektiert oder angezeigt (siehe B3 in 12). Mit
anderen Worten, der Pegel einer Spannung, die durch die zweite gemeinsame
Bitleitung BLc2 zu dem zweiten Leseanschluss NSEN2 übertragen
wird, wird dadurch bestimmt, ob die Schwellspannung der zweiten
Speicherzelle MC2 größer als
oder gleich die/der zweite/n Referenzspannung VR2 ist. Wenn speziell
die Schwellspannung der zweiten Speicherzelle MC2 größer als
die zweite Referenzspannung VR2 ist, werden die Spannungspegel der
zweiten gemeinsamen Bitleitung BLc2 und des zweiten Leseanschlusses
NSEN2 auf Versorgungsspannung VDD getrieben. Wenn im Gegensatz dazu
die Schwellspannung der zweiten Speicherzelle MC2 niedriger als
die zweite Referenzspannung VR2 ist, werden die Spannungspegel der
zweiten gemeinsamen Bitleitung BLc2 und des zweiten Leseanschlusses
NSEN2 auf Massespannung VSS getrieben.
-
In
einem Schritt S1250 wird ein zweites Latchsteuersignal LCH2 als
ein Puls mit „hohem" Logikzustand erzeugt.
In Abhängigkeit
von diesem Puls schalten die zweiten Latchdaten DLT2 basierend auf dem
Spannungspegel des zweiten Leseanschlusses NSEN2 selektiv von einem „niedrigen" Logikzustand in
einen „hohen" Logikzustand um
(siehe B4 in 12). Insbesondere wenn der Spannungspegel des
zweiten Leseanschlusses NSEN2 nahe bei der Versorgungsspannung VDD
liegt, schalten die zweiten Latchdaten DLT2 aus dem „niedrigen" Logikzustand in
den „hohen" Logikzustand um.
Wenn im Gegensatz hierzu der Spannungspegel des zweiten Leseanschlusses
NSEN2 nahe bei der Massespannung VSS liegt, bleiben die zweiten
Latchdaten DLT2 in ihrem gegenwärtigen
Zustand.
-
Wenn
die zweiten Latchdaten DLT2 nach Schritt S1250 den „niedrigen" Logikzustand aufweisen,
wurde die Schwellspannung der zweiten Speicherzelle MC2 nicht bis
auf innerhalb der zweiten Schwellspannungsverteilung G2 erhöht.
-
In
einem Schritt S1260 wird das zweite Ausgangssteuersignal DIO2 als
Puls mit „hohem" Logikzustand erzeugt.
In Abhängigkeit
von diesem Puls wird der Logikzustand der zweiten Latchdaten DLT2 gelesen
und durch die interne Datenleitung IDL aus dem Halbleiterspeicherelement
ausgegeben (siehe B5 in 12). Dann
wird in einem Schritt S1270 der Erfolg oder Misserfolg der zweiten
Seitenprogrammieroperation basierend auf dem Logikzustand der zweiten
Latchdaten DLT2 bestimmt, die aus dem Halbleiterspeicherelement
gelesen wurden. Wenn der Logikzustand der zweiten Latchdaten DLT2,
die in Schritt S1260 gelesen wurden, „hoch" ist, wurde die zweite Speicherzelle
MC2 erfolgreich programmiert. Wenn jedoch der Logikzustand der zweiten Latchdaten
DLT2, der in Schritt S1260 gelesen wurde, „niedrig" ist, wurde die zweite Speicherzelle
MC2 nicht erfolgreich programmiert, d.h. ein „Programmierfehler" ist aufgetreten.
-
Wenn
ein Programmierfehler erkannt wurde, werden die Schritte S1230 bis
S1270 wiederholt, wobei die Wortleitungsspannung, die in Schritt
S1230 an die Speicherzelle MC2 angelegt wird, schrittweise erhöht wird,
um die Schwellspannung der zweiten Speicherzelle MC2 zu erhöhen, bis
ein Programmiererfolg erreicht wurde oder – optional – bis eine vorbestimmte Anzahl
an Iterationen durchgeführt
wurde.
-
Wenn
in Schritt S1270 festgestellt wird, dass die zweite Speicherzelle
MC2 erfolgreich programmiert wurde, wird der Abschluss der zweiten
Seitenprogrammieroperation in einem Schritt S1280 bestätigt.
-
13 ist
die Diagramm zur Darstellung einer Veränderung der Schwellspannungen
erster und zweiter Speicherzellen MC1 und MC2, nachdem die zweite
Seitenprogrammieroperation durchgeführt wurde.
-
Wenn
die ersten und zweiten Bits BIT1 und BIT2 beide „1" sind (CASE21), bleiben die Schwellspannungen
der ersten und zweiten Speicherzellen MC1 und MC2 in dem gelöschten Zustand,
d.h. innerhalb der ersten Schwellspannungsverteilung G1.
-
Wenn
das erste Bit BIT1 „1" und das zweite Bit
BIT2 „0" ist (CASE22), bleibt
die Schwellspannung der ersten Speicherzelle MC1 innerhalb der ersten
Schwellspannungsverteilung G1 erhalten, und die Schwellspannung
der zweiten Speicherzelle MC2 wird bis auf innerhalb der zweiten
Schwellspannungsverteilung G2 erhöht.
-
Wenn
das erste Bit BIT1 „0" und das zweite Bit
BIT2 „1" ist (CASE23), bleibt
die Schwellspannung der ersten Speicherzelle MC1 innerhalb der zweiten
Schwellspannungsverteilung G2 erhalten, und die Schwellspannung
der zweiten Speicherzelle MC2 bleibt innerhalb der ersten Schwellspannungsverteilung
G1 erhalten.
-
Wenn
schließlich
die ersten und zweiten Bits BIT1 und BIT2 „0" sind (CASE24), bleibt die Schwellspannung
der ersten Speicherzelle MC1 innerhalb der zweiten Schwellspannungsverteilung
G2 erhalten, und die Schwellspannung der zweiten Speicherzelle MC2
wird bis auf innerhalb der zweiten Schwellspannungsverteilung G2
erhöht.
-
14A und 14B sind
Ablaufdiagramme zur Darstellung einer dritten Seitenprogrammieroperation
in dem Programmierverfahren. 15A und 15B sind Datenflussdiagramme entsprechend den
Ablaufdiagrammen der 14A und 14B.
Bei der dritten Seitenprogrammieroperation werden die Schwellspannungen
der ersten und zweiten Speicherzellen MC1 und MC2 in Abhängigkeit
von dem Logikzustand des dritten Bits BIT3 bis auf innerhalb einer
dritten Schwellspannungsverteilung G3 programmiert.
-
Bezugnehmend
auf 14A und 14B werden
in einem Schritt S1305 die ersten und zweiten Latchdaten DLT1 und
DLT2 in den „hohen" Logikzustand gesetzt.
-
In
einem Schritt S1310 wird das dritte Bit BIT3 als erste Latchdaten
DLT1 und zweite Latchdaten DLT2 geladen (siehe C1 in 15A). Insbesondere wenn das dritte Bit BIT3 „0" ist, wird das invertierte
Eingangssignal nDI in dem „hohen" Logikzustand aktiviert,
so dass die ersten Latchdaten DLT1 und die zweiten Latchdaten DLT2
als „niedri ger" Logikzustand latch-gespeichert
werden. Wenn andererseits das dritte Bit BIT3 „1" ist, wird das Eingangssignal DI in
dem „hohen" Logikzustand aktiviert,
und die ersten und zweiten Latchdaten DLT1 und DLT2 verbleiben in
dem „hohen" Logikzustand.
-
Dann
wird in einem Schritt S1315 der Pegel der Schwellspannung der zweiten
Speicherzelle MC2 relativ zu der ersten Referenzspannung VR1 an dem
ersten Laseranschluss NSEN1 reflektiert oder angezeigt (siehe C2
in 15A). Das Umschaltsignal VSW wird in dem „hohen" Logikzustand aktiviert, so
dass die zweite gemeinsame Bitleitung BLc2 mit der ersten gemeinsamen
Bitleitung BLc1 verbunden ist. [0104] Dann wird in einem Schritt
S1320 das Eingangssignal DI in dem „hohen" Logikzustand aktiviert, und die ersten
Latchdaten DLT1, die in Schritt S1310 geladen wurden, werden basierend
auf dem Spannungspegel des ersten Leseanschlusses NSEN1, der in
Schritt S1315 (siehe C3 in 15A) erhalten
wurde, selektiv umgeschaltet, während
das Eingangssignal DI aktiviert ist.
-
Insbesondere
wenn das dritte Bit BIT3 „0" ist, werden die
ersten Latchdaten DLT1 aus dem „niedrigen" Logikzustand in den „hohen" Logikzustand umgeschaltet,
wenn das zweite Bit BIT2 „0" ist. Wenn das dritte
Bit BIT3 „1" ist, bleiben die
ersten Latchdaten DLT1 in dem „hohen" Logikzustand erhalten. Wenn
das zweite Bit BIT2 „1" ist, und das dritte
Bit BIT3 „0" ist, bleiben die
Latchdaten DLT1 in dem „niedrigen" Logikzustand erhalten.
-
Dann
wird in einem Schritt S1325 das erste Dumping-Signal DUMP1 in dem „hohen" Logikzustand aktiviert,
und der Pegel der Schwellspannung der ersten Speicherzelle MC1 relativ
zu der ersten Referenzspannung VR1 sowie die Latchdaten DLT1 werden
an dem zweiten Leseanschluss NSEN2 angezeigt (siehe C4 und C4' in 15A). Zusätzlich wird
das Umschaltsignal VSW in dem „hohen" Logikzustand aktiviert,
so dass die erste gemeinsame Bitleitung BLc1 mit der zweiten gemeinsamen
Bitleitung BLc2 verbunden wird.
-
Anschließend wird
in einem Schritt S1330 das Eingangssignal DI in dem „hohen" Logikzustand aktiviert,
und die zweiten Latchdaten DLT2, die in Schritt S1310 geladen wurden,
werden basierend auf dem Spannungspegel des zweiten Leseanschlusse NSEN2,
der in Schritt S1325 (siehe C5 in 15A) erhalten
wurde, selektiv umgeschaltet, während
das Eingangssignal DI aktiviert ist.
-
Wenn
das dritte Bit BIT3 „0" ist, werden die zweiten
Latchdaten DLT2 aus dem „niedrigen" Logikzustand in
den „hohen" Logikzustand umgeschaltet, wenn
die ersten Latchdaten DLT1 in dem „niedrigen" Logikzustand sind und wenn das erste
Bit BIT1 „0" ist.
-
16 zeigt
die Logikzustände
der ersten und zweiten Latchdaten DLT1 und DLT2, nachdem Schritt
S1330 durchgeführt
wurde. Beispielsweise zeigen in 16 CASE31
bis CASE34 Fälle,
in denen das dritte BIT3 „0" ist. Wenn die ersten
beiden Bits BIT1 und BIT2 „1" sind (CASE31), bleiben
sowohl die ersten Latchdaten DLT1 als auch die zweiten Latchdaten
DLT2 in dem „niedrigen" Logikzustand erhalten.
-
Wenn
das erste Bit BIT1 „1" und das zweite BIT2 „0" ist (CASE32), werden
die ersten Latchdaten DLT1 in den „hohen" Logikzustand umgeschaltet, und die
zweiten Latchdaten DLT2 bleiben in dem „niedrigen" Logikzustand erhalten.
-
Wenn
das erste Bit BIT1 „0" und das zweite Bit
BIT2 „1" (CASE33) ist, bleiben
die ersten Latchdaten DLT1 in dem „niedrigen" Logikzustand erhalten, die zweiten
Latchdaten DLT2 werden in den „hohen" Logikzustand umgeschaltet.
-
Wenn
die ersten und zweiten Bits BIT1 und BIT2 „0" sind (CASE34), werden die ersten Latchdaten
DLT1 in den „hohen" Logikzustand umgeschaltet, und
die zweiten Latchdaten DLT2 bleiben in dem „niedrigen" Logikzustand erhalten.
-
Wenn
schließlich
das dritte Bit BIT2 „1" ist (CASE 35), bleiben
sowohl die ersten Latchdaten DLT1 als auch die zweiten Latchdaten
DLT2 ungeachtet der ersten und zweiten Bits BIT1 und BIT2 in dem „hohen" Logikzustand erhalten.
-
Anschließend werden
in einem Schritt S1335 die ersten und zweiten Speicherzellen MC1
und MC2 programmiert, wobei die ersten und zweiten Latchdaten DLT1
und DLT2 verwendet werden, die in den Schritten S1320 und S1330
(siehe C6 in 15B) umgeschaltet wurden. Wenn
das dritte Bit BIT3 „1" ist, bleibt die
Schwellspannung der ersten Speicherzelle MC1 in ihrem vorherigen
Zustand erhalten. Wenn im Gegensatz dazu das dritte Bit BIT3 „0" ist, wird die Schwellspannung
der ersten oder zweiten Speicherzelle MC1 oder MC2 bis zu der dritten Schwellspannungsverteilung
G3 erhöht.
-
Anschließend wird
in einem Schritt S1340 der Pegel der Schwellspannung der ersten
Speicherzelle MC1 relativ zu der zweiten Referenzspannung VR2 durch
die erste gemeinsame Bitleitung BLc1 an dem ersten Leseanschluss
NSEN1 reflektiert (siehe C7 in 15B).
-
In
einem Schritt S1345 wird das erste Latchsteuersignal LCH1 als ein
Puls mit einem „hohen" Logikzustand erzeugt,
und das Eingangssignal DI wird in dem „hohen" Logikzustand aktiviert. Im Ergebnis werden
die ersten Latchdaten DLT1 in Abhängigkeit von dem Spannungspegel
des ersten Leseanschluss NSEN1 selektiv von dem „niedrigen" Logikzustand in den „hohen" Logikzustand umgeschaltet
(siehe C8 in 15B).
-
In
einem Schritt S1350 wird der Pegel der Schwellspannung der zweiten
Speicherzelle MC2 relativ zu der zweiten Referenzspannung VR2 durch die
zweite gemeinsame Bitleitung BLc2 an dem zweiten Leseanschluss NSEN2
reflektiert (siehe C9 in 15B).
-
In
einem Schritt S1355 wird das zweite Latchsteuersignal LCH2 als ein
Puls mit einem „hohen" Logikzustand erzeugt,
und das Eingangssignal DI wird in dem „hohen" Logikzustand aktiviert. Im Ergebnis
werden die zweiten Latchdaten DLT2 in Abhängigkeit von dem Spannungspegel
des zweiten Leseanschlusses NSEN2 selektiv von dem „niedrigen" Logikzustand in
den „hohen" Logikzustand umgeschaltet
(siehe C10 in 15B).
-
In
einem Schritt S1360 werden das erste Ausgangssteuersignal DIO1 und
das zweite Ausgangssteuersignal DIO2 simultan oder sequentiell als
Puls mit „hohem" Logikpegel erzeugt,
so dass die Logikzustände
der ersten und zweiten Latchdaten DLT1 und DLT2 aus dem Halbleiterspeicherelement gelesen
und ausgegeben werden (siehe C11 in 15B).
In einem Schritt S1365 wird ein Programmiererfolg oder -fehler bestimmt.
-
Wenn
ein Programmierfehler erkannt wird, werden die Schritte S1335 bis
S1365 wiederholt, wobei eine Wortleitungsspannung, die in Schritt
S1335 an die Speicherzellen MC1 und MC2 angelegt wird, schrittweise
erhöht
wird.
-
Wenn
ein Programmiererfolg erkannt wird, erfolgt in einem Schritt S1370
eine Bestätigung
des Abschlusses der dritten Seitenprogrammieroperation.
-
17 ist
ein Diagramm zur Darstellung von Veränderungen der Schwellspannungen
erster und zweiter Speicherzellen MC1 und MC2, nachdem die dritte
Seitenprogrammieroperation durchgeführt wurde.
-
Bezugnehmend
auf 17 bleiben die Schwellspannungen der ersten und
zweiten Speicherzellen MC1 und MC2 in dem gelöschten Zustand, d.h. innerhalb
der ersten Schwellspannungsverteilung G1 erhalten, wenn die ersten,
zweiten und dritten Bits BIT1, BIT2 und BIT3 jeweils „1" sind (CASE41).
-
Wenn
die ersten und zweiten Bits BIT1 und BIT2 „1" sind und das dritte Bit BIT3 „0" ist (CASE42), werden
die Schwellspannungen der ersten und zweiten Speicherzellen MC1
und MC2 bis auf innerhalb der dritten Schwellspannungsverteilung
G3 erhöht.
-
Wenn
das erste Bit BIT1 „1", das zweite Bit BIT2 „0" und das dritte Bit
BIT3 „1" ist (CASE 43), bleibt
die Schwellspannung der ersten Speicherzelle MC1 innerhalb der ersten
Schwellspannungsverteilung G1 erhalten, und die Schwellspannung
der zweiten Speicherzelle MC2 bleibt innerhalb der zweiten Schwellspannungsverteilung
G2 erhalten. [0126] Wenn das erste Bit BIT1 „1", das zweite Bit BIT2 „0" und das dritte Bit
BIT3 „0" ist (CASE44), bleibt
die Schwellspannung der ersten Speicherzelle MC1 bei der ersten
Schwellspannungsverteilung G1 erhalten, und die Schwellspannung
der zweiten Speicherzelle MC2 wird bis auf innerhalb der Schwellspannungsverteilung
G3 erhöht.
-
Wenn
das erste Bit BIT1 „0", das zweite Bit BIT2 „1" und das dritte Bit
BIT3 „1" ist (CASE45), bleibt
die Schwellspannung der ersten Speicherzelle MC1 innerhalb der zweiten
Schwellspannungsverteilung G2 erhalten, und die Schwellspannung
der zweiten Speicherzelle MC2 bleibt innerhalb der ersten Schwellspannungsverteilung
G1 erhalten.
-
Wenn
das erste Bit BIT1 „0", das zweite Bit BIT2 „1" und das dritte Bit
BIT3 „0" ist (CASE46), wird die
Schwellspannung der ersten Speicherzelle MC1 bis auf innerhalb der
dritten Schwellspannungsverteilung G3 erhöht, und die Schwellspannung
der zweiten Speicherzelle MC2 bleibt innerhalb der ersten Schwellspannungsverteilung
G1 erhalten.
-
Wenn
das erste Bit BIT1 „0", das zweite Bit BIT2 „0" und das dritte Bit
BIT3 „1" ist (CASE47), bleiben
die Schwellspannungen der ersten und zweiten Speicherzellen MC1
und MC2 innerhalb der zweiten Schwellspannungsverteilung G2 erhalten.
-
Wenn
die ersten, zweiten und dritten Bits BIT1, BIT2 und BIT3 jeweils „0" sind (CASE48), bleibt die
Schwellspannung der ersten Speicherzelle MC1 innerhalb der zweiten
Schwellspannungsverteilung MC2 erhalten, und die Schwellspannung
der zweiten Speicherzelle MC2 wird bis auf innerhalb der dritten Schwellspannungsverteilung
G3 erhöht.
-
In
dem vorstehend beschriebenen Verfahren zum Programmieren des nichtflüchtigen
Halbleiterspeicherelements werden die Schwellspannungen der ersten
und zweiten Speicherzellen MC1 und MC2 in Abhängigkeit von den jeweiligen
Logikzuständen erster
bis dritter Bits BIT1, BIT2 und BIT3 gesteuert und modifiziert,
welche in einer Sequenz an das nichtflüchtige Halbleiterspeicherelement
geliefert werden. Für
jedes Bit wird ein Programmiererfolg oder -fehler durch eine oder
zwei Prüfleseoperationen
bestimmt. Entsprechend kann durch Verwendung dieses Programmierverfahrens
die Gesamtbetriebsgeschwindigkeit des nichtflüchtigen Halbleiterspeicherelements
während
des Programmierens deutlich verbessert werden.
-
Wenn
die ersten bis dritten Bits BIT1 bis BIT3 „1", „1" bzw. „0" sind, werden die
Schwellspannungen der ersten und zweiten Speicher zellen MC1 und
MC2 bis auf innerhalb der dritten Schwellspannungsverteilung G3
erhöht.
-
Das
erste Bit BIT1 wird auf den Pegel der Schwellspannung der "ersten Speicherzelle
MC1 relativ zu der ersten Referenzspannung VR1 abgebildet. Insbesondere
wenn das erste Bit BIT1 „1" ist, ist die Schwellspannung
der ersten Speicherzelle MC1 niedriger als die erste Referenzspannung
VR1, und wenn das erste Bit BIT1 „0" ist, ist die Schwellspannung der ersten
Speicherzelle MC1 höher
als die erste Referenzspannung VR1.
-
In
gleicher Weise wird das zweite Bit BIT2 auf den Pegel der Schwellspannung
der zweiten Speicherzelle MC2 relativ zu der ersten Referenzspannung
VR1 abgebildet.
-
Weiterhin
wird das dritte Bit BIT3 auf den Pegel der Schwellspannungen der
ersten und zweiten Speicherzellen MC1 und MC2 relativ zu der zweiten Referenzspannung
VR2 abgebildet. Wenn das dritte Bit BIT3 „1" ist, bleiben die Schwellspannungen
der ersten und zweiten Speicherzellen MC1 und MC2 unterhalb der
zweiten Referenzspannung VR2 erhalten. Wenn jedoch das dritte Bit
BIT3 „0" ist, werden die Pegel
der Schwellspannungen der ersten Speicherzelle MC1 und/oder der
zweiten Speicherzelle MC2 auf Werte oberhalb der zweiten Referenzspannung VR2
angehoben.
-
Ein
Leseverfahren für
das nichtflüchtige Halbleiterspeicherelement,
das in 5 dargestellt ist, wird nachfolgend in Übereinstimmung
mit einer Ausgestaltung der vorliegenden Erfindung beschrieben.
Gemäß diesem
Verfahren müssen
die ersten bis dritten Bits BIT1 bis BIT3 nicht notwendigerweise
in einer bestimmten Reihenfolge gelesen werden.
-
18A und 18B sind
Flussdiagramme zur Darstellung einer ersten Seitenleseoperation
in dem Leseverfahren. 19A und 19B sind Datenflussdiagramme entsprechend den
Ablaufdiagrammen der 18A und 18B.
-
Bezugnehmend
auf 18A und 18B wird
das invertierte Eingangssignal nDI in dem „hohen" Logikzustand aktiviert, und die ersten und
zweiten Latchdaten DLT1 und DLT2 werden in den „niedrigen" Logikzustand zurückgesetzt (siehe D1 in 19A), während
das invertierte Eingangssignal nDI aktiviert ist.
-
Danach
wird in einem Schritt S1420 der Pegel der Schwellspannung der ersten
Speicherzelle MC1 relativ zu der zweiten Referenzspannung VR2 an
dem ersten Leseanschluss NSEN1 reflektiert, und der Pegel der Schwellspannung
der zweiten Speicherzelle MC2 relativ zu der zweiten Referenzspannung
VR2 wird an dem zweiten Leseanschluss NSEN2 (siehe D2 in 19A) reflektiert.
-
Danach
werden in einem Schritt S1430 die ersten und zweiten Latchsteuersignale
LCH1 und LCH2 als Pulse mit „hohem" Logikpegel erzeugt,
und das Eingangssignal DI wird in dem „hohen" Logikzustand aktiviert. Die ersten
und zweiten Latchdaten DLT1 und DLT2 werden in Abhängigkeit
von dem Spannungspegel der ersten und zweiten Leseanschlüsse NSEN1
und NSEN2 selektiv von dem „niedrigen" Logikzustand in
den „hohen" Logikzustand umgeschaltet
(siehe D3 in 19A). Im Ergebnis werden in
den Fällen
CASE42 und CASE 46 in 17 die ersten Latchdaten DLT1
in den „hohen" Logikzustand umgeschaltet,
und in den Fällen
CASE42, CASE44 und CASE48 in 17 werden
die zweiten Latchdaten DLT2 in den „hohen" Logikzustand umgeschaltet.
-
Anschließend werden
in einem Schritt S1440 ein zweites Dumping-Signal DUMP2 und das
Umschaltsignal VSW in dem „hohen" Logikzustand aktiviert,
und der Logikzustand der zweiten Latchdaten DLT2 wird an dem ersten
Leseanschluss NSEN1 reflektiert (siehe D4 und D4' in 19A).
-
In
einem Schritt S1450 wird das invertierte Eingangssignal nDI in dem „hohen" Logikzustand aktiviert
(siehe D5 in 19A), und das erste Latchsteuersignal
LCH1 wird in dem „hohen" Logikzustand aktivert,
so dass die ersten Latchdaten DLT1 von dem „hohen" Logikzustand in den „niedrigen" Logikzustand umschalten
(siehe D4 in 19A). Im Ergebnis weisen die
ersten Latchdaten DLT1 nur im Falle CASE42 in 17 den „hohen" Logikzustand auf.
In allen anderen Fällen als
CASE42 befinden sich die ersten Latchdaten DLT1 in dem „niedrigen" Logikzustand.
-
In
einem Schritt S1460 werden die zweiten Latchdaten DLT2 in den „hohen" Logikzustand gesetzt
(siehe D6 in 19B).
-
Dann
werden in Schritten S1470 und S1480 die zweiten Latchdaten DLT2
basierend auf dem Logikzustand der ersten Speicherzelle MC1 und
den in einem Schritt S1450 umgeschalteten ersten Latchdaten von
dem „hohen" Logikzustand in
den „niedrigen" Logikzustand umgeschaltet.
-
Insbesondere
werden in Schritt S1470 der Pegel der Schwellspannung der ersten
Speicherzelle MC1 relativ zu der ersten Referenzspannung VR1 und
die ersten Latchdaten DLT1 an dem zweiten Leseanschluss NSEN2 reflektiert
(siehe D7 und D7' in 19B). Während
des Schritts S1470 wird das Umschaltsignal VSW in dem „hohen" Logikzustand aktiviert,
so dass die erste gemeinsame Bitleitung BLc1 mit der zweiten gemeinsamen
Bitleitung BLc2 verbunden ist, und das erste Dumping-Signal DUMP1 wird
in dem „hohen" Logikzustand aktiviert.
-
In
Schritt S1480 schalten die zweiten Latchdaten DLT2 basierend auf
dem Spannungspegel des zweiten Leseanschlusses NSEN2, der in Schritt S1470
erhalten wurde, von dem „hohen" Logikzustand in
den „niedrigen" Logikzustand um
(siehe D8 in 19B). Während Schritt S1480 wird das
invertierte Ausgangssignal nDI in dem „hohen" Logikzustand aktiviert.
-
Die
Veränderung
des Logikzustands der zweiten Latchdaten DLT2 in Schritt S1480 wird
nachfolgend beschrieben. Insbesondere wenn die Schwellspannung der
ersten Speicherzelle MC1 niedriger als die erste Referenzspannung
VR1 ist (CASE41, CASE43 und CASE44 in 17) und wenn
die ersten Latchdaten DLT1 den „hohen" Logikzustand aufweisen (CASE42 in 17),
schalten die zweiten Latchdaten DLT2 von dem „hohen" Logikzustand in den „niedrigen" Logikzustand um.
Anderenfalls (z.B. CASE45 bis CASE48 in 17) verbleiben die
ersten Latchdaten DLT1 in dem „hohen" Logikzustand.
-
In
einem Schritt 1490 wird das zweite Ausgangssteuersignal DIO2 als
ein Puls mit „hohem" Logikzustand erzeugt,
und der Logikzustand der zweiten Latchdaten DLT2 wird gelesen und
aus dem Halbleiterspeicherelement ausgegeben, so dass der Logikzustand
des ersten Bits BIT1 identifiziert werden kann (siehe D9 in 19B).
-
Wenn
der Logikzustand der zweiten Latchdaten DLT2, die während Schritt
S1490 ausgegeben wurden, der „hohe" Logikzustand ist,
ist das ersten Bit BIT1 „1", und wenn der Logikzustand
der zweiten Latchdaten DLT2, der in Schritt S1490 ausgegeben wurde,
den „niedrigen" Logikzustand aufweist,
ist das erste Bit BIT1 „0".
-
Entsprechend
kann das vorstehend beschriebene Leseverfahren dazu verwendet werden, den
Wert des ersten Bits BIT1 in einer einzelnen Leseoperation zu bestimmen.
-
20A und 20B sind
Flussdiagramme zur Darstellung eines zweiten Seitenleseschritts
in dem Leseverfahren für
das nichtflüchtige
Halbleiterspeicherelement. 21A und 21B sind Datenflussdiagramme entsprechend den
Ablaufdiagrammen der 20A und 20B.
-
Bezugnehmend
auf 20A und 20B wird
in einem Schritt S1510 das invertierte Eingangssignal nDI in dem „hohen" Logikzustand aktiviert,
und die ersten und zweiten Latchdaten DLT1 und DLT2 werden in den „niedrigen" Logikzustand zurückgesetzt
(siehe E1 in 21A).
-
Des
Weiteren wird in einem Schritt S1520 der Pegel der Schwellspannung
der ersten Speicherzelle MC1 relativ zu der zweiten Referenzspannung VR2
an dem ersten Leseanschluss NSEN1 reflektiert, und der Pegel der
Schwellspannung der zweiten Speicherzelle MC2 relativ zu der zweiten
Referenzspannung VR2 wird an dem zweiten Leseanschluss NSEN2 reflektiert
(siehe E2 in 21A).
-
In
einem Schritt S1530 werden die ersten und zweiten Latchsteuersignale
LCH1 und LCH2 als Pulse mit „hohem" Logikpegel erzeugt,
und das Eingangssignal DI wird in dem „hohen" Logikzustand aktiviert. In diesem Fall
werden die ersten und zweiten Latchdaten DLT1 und DLT2 in Abhängigkeit
von den Spannungspegeln der ersten und zweiten Leseanschlüsse NSEN1
und NSEN2 von dem „niedrigen" Lo gikzustand in
den „hohen" Logikzustand umgeschaltet
(siehe E3 in 21A). Im Ergebnis werden in
den Fälle
CASE42 und CASE46 in 17 die ersten Latchdaten DLT1
in den „hohen" Logikzustand umgeschaltet.
Des Weiteren werden in den Fällen CASE42,
CASE44 und CASE48 in 17 die zweiten Latchdaten DLT2
in den „hohen" Logikzustand umgeschaltet.
-
Weiterhin
werden in einem Schritt S1540 die zweiten Latchdaten DLT2 an dem
ersten Leseanschluss NSEN1 reflektiert. In diesem Fall werden das zweite
Dumping-Signal DUMP2 und das Umschaltsignal VSW in dem „hohen" Logikzustand aktiviert
(siehe E4 und o,E4' in 21A).
-
Des
Weiteren wird in einem Schritt S1550 das erste Latchspeichersignal
LCH1 in dem „hohen" Logikzustand aktiviert,
so dass die ersten Latchdaten DLT1 von dem „hohen" Logikzustand in den „niedrigen" Logikzustand umschalten
(siehe E4 in 21A). In diesem Fall wird das
invertierte Eingangssignal nDI in dem „hohen" Logikzustand aktiviert (siehe E5 in 21A). Im Ergebnis weisen die ersten Latchdaten
DLT1 nur im Fall CASE42 in 17 den „hohen" Logikzustand auf.
In anderen Fällen
als CASE42 weisen die ersten Latchdaten DLT1 den „niedrigen" Logikzustand auf.
-
In
einem Schritt S1560 werden die zweiten Latchdaten DLT2 in den „hohen" Logikzustand gesetzt
(siehe E6 in 21B).
-
Anschließend werden
in Schritt S1570 und S1580 die zweiten Latchdaten DLT2 von dem „hohen" Logikzustand in
den „niedrigen" Logikzustand umgeschaltet,
wobei die Daten der zweiten Speicherzelle MC2 und die in einem Schritt
S1550 umgeschalteten ersten Latchdaten DLT1 verwendet werden.
-
Speziell
werden in Schritt S1570 der Pegel der Schwellspannung der zweiten
Speicherzelle MC2 relativ zu der ersten Referenzspannung VR1 und
die zweiten Latchdaten DLT2 an dem zweiten Leseanschluss NSEN2 reflektiert
(siehe E7 und E7' in 21B). In diesem Fall wird das Umschaltsignal VSW
in dem „hohen" Logikzustand aktiviert,
so dass die erste gemeinsame Bitleitung BLc1 mit der zweiten ge meinsamen
Bitleitung BLc2 verbunden ist. Das erste Dumping-Signal DUMP1 wird
in dem „hohen" Logikzustand aktiviert.
-
Des
Weiteren werden in Schritt S1580 die zweiten Latchdaten DLT2 von
dem „hohen" Logikzustand in
den „niedrigen" Logikzustand umgeschaltet, wobei
der Spannungspegel des zweiten Leseanschlusses NSEN2 verwendet wird,
der in Schritt S1570 erhalten wurde (siehe E8 in 19B). In diesem Fall wird das invertierte Eingangssignal
nDI in dem „hohen" Logikzustand aktiviert.
-
Die
Veränderung
in dem Logikzustand der zweiten Latchdaten DLT2 in Schritt S1580
ist nachfolgend beschrieben. Wenn die Schwellspannung der zweiten
Speicherzelle MC2 niedriger als die erste Referenzspannung VR1 ist
(CASE 41, CASE45 und CASE46 in 17) und
wenn die ersten Latchdaten DLT1 den „hohen" Logikzustand aufweisen (CASE42 in 17),
werden die zweiten Latchdaten DLT2 von dem „hohen" Logikzustand in den „niedrigen" Logikzustand umgeschaltet.
-
In
den verbleibenden Fällen
(CASE43, CASE44, CASE47 und CASE48 in 17) bleiben die
zweiten Latchdaten DLT2 in dem „hohen" Logikzustand erhalten.
-
Dann
wird in einem Schritt S1590 das zweite Ausgangssteuersignal DIO2
als ein Puls mit „hohem" Logikzustand erzeugt,
und der Logikzustand der zweiten Latchdaten DLT2 wird gelesen und
aus dem Halbleiterspeicherelement ausgegeben, um das zweite Bit
BIT2 zu identifizieren (siehe E9 in 21B).
-
Typischerweise
werden Ausgabedaten mit „hohem" Logikzustand in
Schritt S1590 so interpretiert, dass sie anzeigen, dass das zweite
Bit BIT2 „1" ist, und Ausgabedaten
mit „niedrigem" Logikzustand in
Schritt S1590 werden so interpretiert, dass sie anzeigen, dass das
zweite Bit BIT2 „0" ist.
-
Gemäß dem vorstehend
beschriebenen Verfahren wird das zweite Bit BIT2 mittels einer einzigen Leseoperation
identifiziert.
-
22 ist
ein Ablaufdiagramm zur Darstellung eines dritten Seitenleseschritts
in dem vorstehend beschriebenen Leseverfahren. 23 ist
ein Datenflussdiagramm entsprechend dem Ablaufdiagramm in 22.
In dem dritten Seitenleseschritt werden die Schwellspannungen der
ersten und zweiten Speicherzellen MC1 und MC2 bestimmt, um das dritte
Bit BIT3 zu lesen.
-
Bezugnehmend
auf 23A und 23B werden
in einem Schritt S1610 die ersten und zweiten Latchdaten DLT1 und
DLT2 in den „hohen" Logikzustand gesetzt
(siehe F1 in 23).
-
Anschließend wird
in einem Schritt S1620 die Schwellspannung der ersten Speicherzelle
MC1 relativ zu der zweiten Referenzspannung VR2 an dem ersten Leseanschluss
NSEN1 reflektiert, und die Schwellspannung der zweiten Speicherzelle
MC2 relativ zu der zweiten Referenzspannung VR2 wird an dem zweiten
Leseanschluss NSEN2 reflektiert (siehe F2 in 23).
-
In
einem Schritt S1630 werden die ersten und zweiten Latchsteuersignal
LCH1 und LCH2 als Pulse mit „hohem" Logikpegel erzeugt,
und das invertierte Eingangssignal nDI wird in dem „hohen" Logikzustand aktiviert.
In diesem Fall werden die ersten und zweiten Latchdaten DLT1 und
DLT2 in Abhängigkeit
von den Spannungspegeln der ersten und zweiten Leseanschlüsse NSEN1
und NSEN2 selektiv von dem „hohen" Logikzustand in
den „niedrigen" Logikzustand umgeschaltet
(siehe F3 in 23). Im Ergebnis werden die
ersten Latchdaten DLT1 in den Fällen
CASE42 und CASE46 in 17 in den „niedrigen" Logikzustand umgeschaltet. Weiterhin
werden in den Fällen
CASE42, CASE44 und CASE48 in 17 die
zweiten Latchdaten DLT2 in den „niedrigen" Logikzustand umgeschaltet.
-
In
einem Schritt S1640 werden die ersten und zweiten Leseanschlüsse NSEN1
und NSEN2 auf die Versorgungsspannung VDD vorgeladen.
-
In
einem Schritt S1650 werden das erste Dumping-Signal DUMP1 und das
Umschaltsignal VSW in dem „hohen" Logikzustand aktiviert,
und die ersten Latchdaten DLT1 werden an dem zweiten Leseanschluss
NSEN2 reflektiert. Im Ergebnis wird in den Fällen CASE 42 und CASE46 in 17 der
Leseanschluss NSEN2 auf Versorgungsspan nung VDD gehalten. In den
verbleibenden Fällen
wird der zweite Leseanschluss NSEN2 jedoch auf Massespannung VSS
umgeschaltet.
-
Dann
wird in einem Schritt S1660 das invertierte Eingangssignal nDI in
dem „hohen" Logikzustand aktiviert,
die zweiten Latchdaten DLT2 werden basierend auf dem Spannungspegel
des zweiten Leseanschlusses NSEN2, der in Schritt S1650 erhalten wurde,
von dem „hohen" Logikzustand in
den „niedrigen" Logikzustand umgeschaltet
(siehe F4 in 23). Insbesondere wenn die Schwellspannung der
ersten oder zweiten Speicherzelle MC1 oder MC2 höher als die zweite Referenzspannung
VR2 ist (CASE42, CASE44, CASE46 und CASE48 in 17),
werden die zweiten Latchdaten DLT2 von dem „hohen" Logikzustand in den „niedrigen" Logikzustand umgeschaltet.
In anderen Fällen
(CASE41, CASE43, CASE45 und CASE 47 in 17) bleiben die
zweiten Latchdaten DLT2 in dem „hohen" Logikzustand erhalten.
-
In
einem Schritt S1670 wird das zweite Ausgangssteuersignal DIO2 als
ein Puls mit „hohem" Logikzustand erzeugt,
und der Logikzustand der zweiten Latchdaten DLT2 wird gelesen und
als das dritte Bit BIT3 von dem Halbleiterspeicherelement ausgegeben
(siehe F7 in 23). Typischerweise ist das dritte
Bit BIT3 „1", wenn die Ausgangsdaten
in Schritt S1670 den „hohen" Logikzustand aufweisen,
und das dritte Bit BIT3 ist „0", wenn die Ausgangsdaten
in Schritt S1670 den „niedrigen" Logikzustand aufweisen.
-
In
dem vorstehend beschriebenen Verfahren kann das dritte Bit BIT3
durch eine einzelne Leseoperation identifiziert werden.
-
Zusammenfassend
können
bei Verwendung des vorstehend beschriebenen Leseverfahrens für das nichtflüchtige Halbleiterspeicherelement
die ersten bis dritten Bits BIT1 bis BIT3 jeweils mit einer einzelnen
Datenausgabeoperation identifiziert werden.
-
Wie
vorstehend beschrieben, umfasst ein nichtflüchtige Halbleiterspeicherelement
gemäß ausgewählten Ausgestaltungen
der vorliegenden Erfindung Speicherzellen, die auf einen beliebigen
von drei verschiedenen Schwellspannungspegeln programmiert werden
können,
sowie einen Seitenpuffer zum Steuern der Speicherzellen.
-
Das
vorstehend beschriebene nichtflüchtige 3-Niveau
Halbleiterspeicherelement weist einen höheren Integrationsgrad auf
als ein nichtflüchtiges 2-Niveau
Halbleiterspeicherelement. Außerdem
besitzt das vorstehend beschriebene nichtflüchtige 3-Niveau Halbleiterspeicherelement
tendenziell eine höhere
Zuverlässigkeit
als ein nichtflüchtiges
4-Niveau Halbleiterspeicherelement.
-
Weiterhin
sind in dem nichtflüchtigen
3-Niveau Halbleiterspeicherelement erste und zweite Speicherzellen,
die ein Paar bilden, getrennt in einem Paar erster und zweiter geradzahliger
Stränge
und einem Paar erster und zweiter ungeradzahliger Stränge angeordnet.
Auf diese Weise fungieren in dem nichtflüchtigen 3-Niveau Halbleiterspeicherelement
die ersten und zweiten ungeradzahligen Bitleitungen als Abschirmleitungen,
wenn die ersten und zweiten Speicherzellen in den ersten und zweiten
geradzahligen Strängen
ausgewählt
und getrieben werden. Des Weiteren fungieren die ersten und zweiten geradzahligen
Bitleitungen als Abschirmleitungen, wenn die ersten und zweiten
Speicherzellen in den ersten und zweiten ungeradzahligen Strängen ausgewählt und
getrieben werden.
-
Wie
vorstehend beschrieben, fungieren die geradzahligen Bitleitungen
oder die ungeradzahligen Bitleitungen als Abschirmleitungen, um
Rauschentwicklung und kapazitive Kopplung zu verhindern, wodurch
die Betriebseigenschaften des nichtflüchtigen Halbleiterspeicherelements
verbessert werden.
-
Darüber hinaus
können
die ersten bis dritten Bits der in dem nichtflüchtigen Halbleiterspeicherelement
gespeicherten Daten mittels einer einzigen Datenausgabeoperation
gelesen werden. Dementsprechend kann das nichtflüchtige Halbleiterspeicherelement
effizient betrieben werden.