-
Die
Erfindung betrifft einen nichtflüchtigen Halbleiterspeicherbaustein,
insbesondere einen Flash-Speicherbaustein, der einen Burst- bzw.
Bündellesebetrieb
unterstützt.
-
Ein
Speicherbausteintyp, der einen großen kommerziellen Erfolg in
der Elektronikindustrie gefunden hat, wird allgemein als Flash-Speicher
bezeichnet. Der kommerzielle Erfolg gründet sich teilweise auf die
Fähigkeit
von Flash-Speicherbausteinen, elektronische Daten ohne elektrische
Energieversorgung über
längere
Zeitperioden speichern zu können.
Zusätzlich
können
Flash-Speicherbausteine nach dem Einbau in ein elektronisches Gerät vom Endnutzer
gelöscht
und programmiert werden. Diese kombinierte Funktionalität ist insbesondere
für elektronische
Geräte,
wie Mobiltelefone, persönliche
digitale Assistenten (PDAs) und BIOS-Speicher von Computern, und
andere Anwendungen mit aussetzender Energieversorgung und erwünschter
Programmierfähigkeit
nützlich.
-
Flash-Speicherbausteine
umfassen ein Speicherfeld aus einzelnen Transistoren oder Zellen, die ähnlich wie
bei anderen Speicherbauelementtypen aufgebaut sind. Flash-Speicherbausteine
erreichen die nichtflüchtige
Speicherfähigkeit
der Speicherzellen typischerweise durch Hinzufügen eines floatenden Gates
zwischen einem Steuergate und einer Substratregion der Transistoren.
Wie bei anderen Speicherbausteinen sind die Transistoren in Zeilen und
Spalten angeordnet, um ein Transistorfeld zu bilden. Wie es in der
Speicherbausteintechnik üblich
ist, sind die Steuergates der Speicherzellen in jeder Reihe des
Feldes mit einer Reihe von Wortleitungen verbunden und bilden dadurch
individuelle Zeilen von Speicherzellen, auf die durch Auswahl einer
korrespondierenden Wortleitung zugegriffen werden kann. Analog sind
Drainregionen der Zellen in jeder Feldspalte mit einer Reihe von
Bitleitungen verbunden und bilden dadurch individuelle Spalten von
Speicherzellen, auf die durch Auswahl einer korrespondierenden Bitleitung
zugegriffen werden kann. Schließlich
sind Sourceregionen der Zellen des Feldes mit einer gemeinsamen
Sourceleitung verbunden. Bei einigen Flash-Speicherbausteinen ist das Transistorfeld
in Sektoren von getrennten Transistorfeldern aufgeteilt, um eine
zusätzliche
Flexibilität
bei Programmier- und Löschvorgängen zu
erhalten.
-
Die
in jeder Speicherzelle gespeicherten Daten repräsentieren, wie aus dem Stand
der Technik bekannt ist, einen binären Wert „0" oder „1". Um einen Programmier-, Lese- oder
Löschvorgang
mit einer bestimmten Speicherzelle des Feldes auszuführen, werden
verschiedene vorbestimmte Spannungen an das Steuergate, die Drainregion
und die Sourceregion der Speicherzelle angelegt. Durch Anlegen dieser
vorbestimmten Spannungen an eine bestimmte Bitleitungsspalte, eine
bestimmte Wortleitungszeile und die gemeinsame Sourceleitung kann
eine individuelle Speicherzelle an der Kreuzung der Bitleitung und
der Wortleitung zum Lesen oder Programmieren ausgewählt werden.
-
Zum
Programmieren einer Speicherzelle werden das Steuergate und die
Drainregion der Zelle auf bestimmte Programmierspannungen angehoben und
die Sourceregion wird geerdet. Die Spannungen am Steuergate und
der Drainregion bewirken die Erzeugung von „heißen" Elektronen, die in das floatende Gate
injiziert werden, wo sie eingefangen werden und eine negative Ladung
erzeugen. Dieser Elektronentransfermechanismus wird häufig als „Channel Hot
Electron"(CHE)-Injektion
bezeichnet. Werden die Programmierspannungen entfernt, dann wird
die negative Ladung am floatenden Gate beibehalten, wodurch die
Schwellenspannung erhöht
wird. Die Schwellenspannung wird während Lesevorgängen benutzt,
um zu bestimmen, ob die Speicherzelle in einem geladenen Zustand,
d.h. programmiert, oder in einem ungeladenen Zustand ist, d.h. nicht
programmiert.
-
Speicherzellen
werden durch Anlegen vorbestimmter Spannungen an das Steuergate
und die Drainregion und durch Erden der Sourceregion gelesen. Der
Strom in der Bitleitung wird dann durch einen Abtastverstärker abgetastet.
Ist die Speicherzelle programmiert, dann ist die Schwellwertspannung relativ
hoch und der Bitleitungsstrom ist null oder zumindest relativ klein,
wodurch eine binäre „0" angezeigt wird.
Andererseits ist, wenn die Speicherzelle gelöscht ist, die Schwellwertspannung
relativ niedrig und der Bitleitungsstrom ist relativ groß, wodurch eine
binäre „1" angezeigt wird.
-
Im
Gegensatz zum Programmierprozess werden Flash-Speicherbausteine
typischerweise volumengelöscht,
indem alle Zellen eines Speichersektors gleichzeitig gelöscht werden.
Ein Prozess zum Löschen
eines gesamten Speichersektors umfasst das Anlegen vorbestimmter
Spannungen an die gemeinsame Sourceleitung und an alle Wortleitungen des
Sektors, während
die Drainregionen der Zellen in einem floatenden Zustand gelassen
werden. Dadurch werden Elektronen zum Tunneln vom floatenden Gate
zur Sourceregion mittels Fowler- Nordheim(F-N)-Tunneln
veranlasst, wodurch die negative Ladung vom floatenden Gate jeder
Speicherzelle im Speichersektor entfernt wird.
-
Typischerweise
werden die Lesevorgänge durch
einen direkten Zugriff ausgeführt,
bei dem der Benutzer eine bestimmte Adresse im Speicherfeld des
Speicherbausteins zum Lesen spezifiziert. Eine weitere, im Speicherbaustein
zur Verfügung
gestellte Funktion kann aber auch eine Bündellesebetriebsart sein, auch
als Burst-Lesebetriebsart bezeichnet. Die Bündellesebetriebsart ist eine
eingebettete Funktion, die sequentiell die Daten im gesamten Speicherfeld liest
und die gelesenen Daten während
aufeinander folgenden Taktperioden an den Benutzer ausgibt. In dieser
Betriebsart muss der Benutzer keine Speicherzellenadressen vorgeben,
da eine Zustandsmaschine im Speicherbaustein jede Speicherzellenadresse
des Speicherfeldes sequenziell erzeugt. Diese Funktion ist grundsätzlich nützlich,
wenn der Benutzer eine Ausgabe von allen Daten des Speicherbausteins
wünscht.
-
Es
müssen
jedoch eine Anzahl von wichtigen Leistungsfaktoren berücksichtigt
werden, wenn eine Bündelbetriebsart
entworfen wird. Flash-Speicherbausteine
werden beispielsweise häufig
in tragbaren Geräten
benutzt, die nur über
eine beschränkte
Energieversorgung verfügen.
Daher sollte der Energieverbrauch während eines Lesevorgangs minimiert
werden. Zusätzlich
sollte die Geschwindigkeit der Bündellesebetriebsart
relativ hoch sein, so dass der Benutzer die gesamte Datenausgabe
des Speicherbausteins ohne Wartezeiten empfangen kann. Ein weiteres
Problem kann darin gesehen werden, dass bestimmte Schaltungen im
Speicherbaustein nur zuverlässig
arbeiten, wenn die angelegten Spannungen innerhalb eines begrenzten
Bereichs liegen. Daher sollten die Spannungen streng geregelt sein,
um eine fehlerfreie Funktionalität
des Bauelements zu gewährleisten.
-
Daher
besteht Bedarf an Abtastverstärkergruppen,
die mit der Anzahl von Datenworten korrespondieren, die während eines
Bündellesevorgangs nacheinander
ausgegeben werden. Wie aus 11 ersichtlich
ist, umfasst eine herkömmliche
Spaltengatestruktur für
den Bündellesevorgang
vier Abtastverstärkergruppen 10, 11, 12 und 13 und
vier Spaltengateschaltungen 20, 21, 22 und 23,
die benötigt
werden, um vier Datenworte auszugeben. Die Spaltengateschaltungen 20 bis 23 wählen Spalten oder
Bitleitungen in Reaktion auf korrespondierende Spaltenauswahlsignale
Yset00 bis Yset03, Yset10 bis Yset13, Yset20 bis Yset23 und Yset30
bis Yset33 aus.
-
Um
die Anzahl von Datenworten, die während eines Bündellesevorgangs
gelesen werden, und so die Geschwindigkeit des Bündellesevorgangs zu erhöhen, sind
zusätzliche
Abtastverstärkergruppen und
Spaltenauswahlschaltungen erforderlich, proportional zum Ansteigen
der Datenwortanzahl. Mit dem Zunehmen der Spaltenauswahlschaltungen
sind proportional mehr Spaltenauswahlsignalgruppen erforderlich.
Das bedeutet, dass die Anzahl von Signalleitungen zum Übertragen
der Spaltenauswahlsignale proportional zur Zunahme der Anzahl an
Datenworten ansteigt. So sind beispielsweise, wenn vier Datenworte
während
eines Bündellesevorgangs
ausgelesen werden sollen, sechzehn Spaltenauswahlsignalleitungen
erforderlich, da vier Spaltenauswahlsignale an jede Spaltenauswahlschaltung
angelegt werden. Analog sind zweiunddreißig Spaltenauswahlsignalleitungen
erforderlich, wenn acht Datenworte während eines Bündellesevorgangs
ausgelesen werden sollen. Um die Anzahl der Datenworte zu erhöhen, die
ausgelesen werden können,
müssen
die Abmessungen der Spaltenauswahlstruktur, wie sie in 11 dargestellt ist, vergrößert werden,
wodurch die Chipabmessungen vergrößert werden.
-
Es
ist Aufgabe der Erfindung, einen nichtflüchtigen Halbleiterspeicherbaustein
mit einer reduzierten Anzahl von Spaltenauswahlleitungen anzugeben.
-
Die
Erfindung löst
diese Aufgabe durch einen nichtflüchtigen Halbleiterspeicherbaustein
mit den Merkmalen des Patentanspruchs 1, 3, 13, 20 oder 22.
-
Vorteilhafte
Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen angegeben.
-
Vorteilhafte,
nachfolgend beschriebene Ausführungsformen
der Erfindung sowie das zu deren besserem Verständnis oben erläuterte,
herkömmliche
Ausführungsbeispiel
sind in den Zeichnungen dargestellt. Es zeigen:
-
1 ein Blockschaltbild eines
Ausführungsbeispiels
eines erfindungsgemäßen Flash-Speicherbausteins,
-
2A bis 2D schematische Darstellungen zur Veranschaulichung
einer Datenausgabereihenfolge von Abtastverstärkerblöcken abhängig davon, ob eine Spaltenadresse
4N-geordnet ist,
-
3 ein Blockschaltbild eines
Beispiels einer Spaltendecoderschaltung aus 1,
-
4 ein Schaltbild eines Beispiels
einer Decoderschaltung aus 3,
-
5 ein Schaltbild eines Beispiels
einer Auswerteschaltung aus 3,
-
6 ein Schaltbild eines Beispiels
einer Spaltengateschaltung aus 1,
-
7 ein Blockschaltbild eines
weiteren Ausführungsbeispiels
eines erfindungsgemäßen Flash-Speicherbausteins,
-
8 ein Schaltbild eines Beispiels
einer Spaltengateschaltung und einer Sektorauswahlschaltung aus 7, bezogen auf einen Sektor,
-
9 ein Blockschaltbild eines
Beispiels einer dritten Spaltendecoderschaltung aus 7,
-
10 ein Schaltbild eines
Beispiels eines zweiten Spaltengateblocks aus 7 und
-
11 ein Schaltbild einer
herkömmlichen Spaltengateschaltung.
-
Nachfolgend
werden Ausführungsbeispiele der
Erfindung unter Bezugnahme auf die Zeichnungen beschrieben. Der
beschriebene Flash-Speicherbaustein
ist vom NOR-Typ und führt
aufeinander folgende Bündellesevorgänge aus.
Der Flash-Speicherbaustein wird mit einer Bündellänge von vier beschrieben, wobei
die Erfindung selbstverständlich
nicht hierauf und nicht auf Speicherbausteine vom NOR-Typ beschränkt ist.
-
1 zeigt ein Blockschaltbild
eines Ausführungsbeispiels
eines erfindungsgemäßen Flash-Speicherbausteins 100,
der ein Speicherzellenfeld 110 zum Speichern von Dateninformationen mit
einer Anzahl von Bitleitungen BLi (i = 0 bis m) umfasst. Obwohl
in 1 nicht dargestellt,
ist eine Anzahl von nichtflüchtigen
Speicherzellen mit jeder Bitleitung BLi verbunden. Jede nichtflüchtige Speicherzelle
umfasst einen Transistor mit einem floatenden Gate. Eine Spaltendecoderschaltung 120 emp fängt eine
Spaltenadresse, um Auswahlsignale zu erzeugen. Eine Spaltengateschaltung 130,
die auch als Y-Gate bezeichnet ist, wählt einen Teil der Bitleitungen
BL0 bis BLm in Reaktion auf die Auswahlsignale von der Spaltendecoderschaltung 120 aus
und verbindet die ausgewählten
Bitleitungen mit einer Abtastverstärkerschaltung 140,
die auch als SA bezeichnet ist. Die Abtastverstärkerschaltung 140 tastet die
Daten von den mit den ausgewählten
Bitleitungen verbundenen Speicherzellen ab und verstärkt sie. Die
abgetasteten und verstärkten
Daten werden über eine
Ausgabeschaltung 150, die auch mit Dout bezeichnet ist,
nach außen
ausgegeben.
-
Bei
diesem Ausführungsbeispiel
bilden die Spaltendecoderschaltung 120 und die Spaltengateschaltung 130 eine
Spaltenauswahlschaltung, die einen Teil der Bitleitungen in Reaktion
auf die Spaltenadresse auswählt.
-
Der
erfindungsgemäße Flash-Speicherbaustein
kann einen kontinuierlichen Bündellesebetrieb ausführen, bei
dem eine Anfangsadresse, die eine Spaltenadresse umfasst, von außen angelegt
wird. Es werden, wie nachfolgend beschrieben wird, nacheinander
vier Datenworte auf nur eine Eingabe einer Spaltenadresse hin ausgegeben.
Für den
Fall, dass die Bündellänge gleich
vier ist, werden beispielsweise nach Empfang der Anfangsadresse
vier Datenworte, z.B. D1, D2, D3 und D4, während einer vorbestimmten Zeitdauer
aus dem Speicherzellenfeld 110 ausgelesen. Die solchermaßen ausgelesenen
vier Datenworte werden synchronisiert mit einem Taktsignal sequentiell
nach außen
ausgegeben. Um vier Datenworte gleichzeitig auszulesen, werden Abtastverstärkergruppen
benutzt, die mit den Datenworten korrespondieren. Hat ein Wort beispielsweise
die Länge
von sechzehn Bit und ist die Bündellänge gleich
vier, dann sind vier Abtastverstärkergruppen, z.B.
SAG0 bis SAG3 in 2A bis 2D, erforderlich, die jeweils
sechzehn Abtastverstärker,
z.B. SA0 bis SA15 in 2A bis 2D, umfassen. Wird eine Spal tenadresse,
z.B. N, empfangen, dann werden die jeweils von den vier Abtastverstärkergruppen
ausgegebenen Datenworte von außen
so betrachtet, als ob sie verschiedenen Spaltenadressen, z.B. N,
N+1, N+2 und N+3, zugeordnet wären.
-
Die
Abtastverstärkergruppen
werden von niederwertigen Bits einr Spaltenadresse ausgewählt und
die mit den Abtastverstärkergruppen
verbundenen Bitleitungen werden von den höherwertigen Bits der Spaltenadresse
ausgewählt.
Wie beispielsweise aus 2A ersichtlich
ist, wird, wenn niederwertige Bits A1A0 einen Wert von „00" haben oder wenn
die Spaltenadresse 4N-geordnet, d.h. durch 4N teilbar ist, ein Datenwort
von einer ersten Abtastverstärkergruppe
SAG0 der Abtastverstärkergruppen
SAG0 bis SAG3 nach einem Abtastvorgang zuerst ausgegeben. Die Datenworte
von den anderen Abtastverstärkergruppen
SAG1 bis SAG3, hier auch als höhere Abtastverstärkergruppen
bezeichnet, werden dann nacheinander ausgegeben. In diesem Fall
korrespondieren die Daten der ersten Abtastverstärkergruppe SAG0 mit einer N-ten
Spaltenadresse, die Daten der zweiten Abtastverstärkergruppe
SAG1 korrespondieren mit einer (N+1)-ten Spaltenadresse, die Daten
der dritten Abtastverstärkergruppe
SAG2 korrespondieren mit einer (N+2)-ten Spaltenadresse und die
Daten der vierten Abtastverstärkergruppe SAG3
korrespondieren mit einer (N+3)-ten Spaltenadresse. In diesem Fall
werden vier Datenworte normal ausgegeben.
-
Wenn
die niederwertigen Bits A1A0 einen Wert von „01" haben oder die Spaltenadresse nicht durch
4N teilbar ist, wird ein Datenwort von einer zweiten Abtastverstärkergruppe
SAG1 der Abtastverstärkergruppen
SAG0 bis SAG3 zuerst ausgegeben. Dann werden die Datenworte von
der dritten, vierten und ersten Abtastverstärkergruppe SAG2, SAG3 und SAG0
nacheinander ausgegeben, wobei die Abtastverstärkergruppen SAG2 und SAG3 als höhere Abtastverstärkergruppen
und die Abtastverstärkergruppe
SAG0 als untere Abtastverstärkergruppe
bezeichnet werden. Wie aus 2B ersichtlich
ist, korrespondieren die Daten der zweiten Abtastverstärkergruppe
SAG1 mit einer N-ten Spaltenadresse, die Daten der dritten Abtastverstärkergruppe SAG2
korrespondieren mit einer (N+1)-ten Spaltenadresse, die Daten der
vierten Abtastverstärkergruppe SAG3
korrespondieren mit einer (N+2)-ten Spaltenadresse. Die Daten der
ersten Abtastverstärkergruppe SAG0
korrespondieren jedoch nicht mit einer (N+3)-ten Spaltenadresse,
sondern mit einer (N-1)-ten Spaltenadresse. Da die Bitleitungen
der ersten Abtastverstärkergruppe
SAG0 von einer Spaltenadresse zum Auswählen von Bitleitungen einer anderen
Gruppe ausgewählt
werden, werden die von der ersten Abtastverstärkergruppe ausgegebenen Daten
außerhalb
so betrachtet, als wären
die Daten von einer (N-1)-ten Spaltenadresse ausgelesen worden.
Um zu erreichen, dass die erste Abtastverstärkergruppe Daten von der (N+3)-ten
Spaltenadresse ausliest, ist es erforderlich, Bitleitungen einer
höheren
Adresse N+1 auszuwählen,
die durch Erhöhen der
Eingabeadresse N um eins erhalten wird. Da die vier Datenworte in
diesem Fall abnormal ausgegeben werden, wird das Auswählen von
Bitleitungen auf eine andere als die oben beschriebene Art gesteuert. Dies
wird nachfolgend genauer beschrieben.
-
Wenn
die niederwertigen Bits A1A0 einen Wert von „10" haben oder die Spaltenadresse nicht durch
4N teilbar ist, dann wird ein Datenwort von der dritten Abtastverstärkergruppe
SAG2 zuerst ausgegeben. Anschließend werden die Datenworte
von der vierten, ersten und zweiten Abtastverstärkergruppe SAG3, SAG0 und SAG1
nacheinander ausgegeben, wobei die Abtastverstärkergruppe SAG3 als höhere Abtastverstärkergruppe
und die Abtastverstärkergruppen
SAG0 und SAG1 als untere Abtastverstärkergruppen bezeichnet werden.
Wie aus 2C ersichtlich
ist, korrespondieren in diesem Fall die Daten der dritten Abtastverstärkergruppe
SAG2 mit der N-ten Spaltenadresse und die Daten der vierten Abtastverstärkergruppe
SAG3 korrespondieren mit der (N+1)-ten Spaltenadresse. Aber aus
dem gleichen oben beschriebenen Grund kor respondieren die Datenworte
der ersten und zweiten Abtastverstärkergruppe SAG0 und SAG1 nicht
mit der (N+2)-ten und (N+3)-ten Spaltenadresse, sondern mit der
(N-1)-ten Spaltenadresse. Entsprechend ist es erforderlich, Bitleitungen
einer höheren
Adresse N+1 auszuwählen,
die durch Erhöhen
der Eingabeadresse N um eins erhalten wird, um zu erreichen, dass
die erste und zweite Abtastverstärkergruppe
SAG0 und SAG1 Daten von der (N+2)-ten und der (N+3)-ten Spaltenadresse
auslesen. In diesem Fall werden die ausgewählten Bitleitungen auf eine
andere als die oben beschriebene Art gesteuert. Dies wird nachfolgend
genauer beschrieben.
-
Haben
die niederwertigen Bits A1A0 einen Wert von „11", dann wird das Datenwort von der vierten
Abtastverstärkergruppe
SAG3 zuerst ausgegeben. Anschließend werden die Datenworte
von der ersten, zweiten und dritten Abtastverstärkergruppe SAG0, SAG1 und SAG2
nacheinander ausgegeben, die als untere Abtastverstärkergruppen
bezeichnet werden. Wie aus 2D ersichtlich
ist, korrespondieren in diesem Fall die Daten der vierten Abtastverstärkergruppe
SAG3 mit der N-ten Spaltenadresse. Aber aus dem gleichen oben beschriebenen
Grund korrespondieren die Datenworte der ersten, zweiten und dritten
Abtastverstärkergruppe
SAG0, SAG1 und SAG2 nicht mit der (N+1)-ten, (N+2)-ten und (N+3)-ten
Spaltenadresse, sondern mit der (N-1)-ten Spaltenadresse. Entsprechend
ist es erforderlich, Bitleitungen einer höheren Adresse N+1 auszuwählen, die
durch Erhöhen
der Eingabeadresse N um eins erhalten wird, um zu erreichen, dass
die erste, zweite und dritte Abtastverstärkergruppe SAG0, SAG1 und SAG2
Daten von der (N+1)-ten, der (N+2)-ten und der (N+3)-ten Spaltenadresse
auslesen. In diesem Fall werden die oben ausgewählten Bitleitungen auf eine
andere als die oben beschriebene Art gesteuert. Dies wird nachfolgend
genauer beschrieben.
-
3 zeigt ein Blockschaltbild
einer Realisierung der Spaltendecoderschaltung 120 aus 1. Wie aus 3 ersichtlich ist, umfasst die Spal tendecoderschaltung 120 in
diesem Beispiel eine Decoderschaltung 122 und eine Auswerteschaltung 124.
Die Decoderschaltung 122 decodiert Spaltenadressensignale
An und An+1, um Auswahlsignale YA0 bis YA3 zu erzeugen. Die Auswerteschaltung 124 empfängt die
Spaltenadressensignale A0 und A1 und ermittelt, ob die Spaltenadresse
durch 4N teilbar ist oder nicht, wobei N eine ganze Zahl größer oder gleich
eins ist. Der Grund liegt darin, dass die Bitleitungen, die mit
den Abtastverstärkergruppen
verbunden sind, variabel ausgewählt
werden, wie im Zusammenhang mit 2A bis 2D ausgeführt ist. Bei diesem Ausführungsbeispiel
entsprechen die Spaltenadressensignale A0 und A1 den niederwertigsten Bits
der Spaltenadresse.
-
Ist
eine Spaltenadresse 4N-geordnet, d.h. durch 4N teilbar, was bedeutet,
dass das Datenwort der ersten Abtastverstärkergruppe SAG0 zuerst ausgegeben
werden soll, dann aktiviert die Auswerteschaltung 124 Auswahlsignale
YB0, YB1, YB2 und YB3 und deaktiviert Auswahlsignale YB0B, YB1B, YB2B
und YB3B. Ist eine Spaltenadresse nicht durch 4N teilbar und soll
das Datenwort der zweiten Abtastverstärkergruppe SAG1 zuerst ausgegeben
werden, dann aktiviert die Auswerteschaltung 124 die Auswahlsignale
YB0B und YB1 bis YB3 und deaktiviert die Auswahlsignale YB0 und
YB1 B bis YB3B. Ist eine Spaltenadresse nicht durch 4N teilbar und
soll das Datenwort der dritten Abtastverstärkergruppe SAG2 zuerst ausgegeben
werden, dann aktiviert die Auswerteschaltung 124 die Auswahlsignale
YB0, YB1B, YB2 und YB3 und deaktiviert die Auswahlsignale YB0, YB1,
YB2B und YB3B. Ist eine Spaltenadresse nicht durch 4N teilbar und
soll das Datenwort der vierten Abtastverstärkergruppe SAG3 zuerst ausgegeben
werden, dann aktiviert die Auswerteschaltung 124 die Auswahlsignale
YB0B, YB1B, YB2B und YB3 und deaktiviert die Auswahlsignale YB0,
YB1, YB2 und YB3B.
-
4 zeigt ein Schaltbild eines
Ausführungsbeispiels
der Decoderschaltung 122 aus 3. Wie
aus 4 ersichtlich ist,
decodiert die Deco derschaltung 122 die Adressensignale
An und An+1, um eines der Auswahlsignale YA0, YA1, YA2 und YA3 zu aktivieren.
Die Decoderschaltung 122 umfasst Inverter INV1 und INV2
und UND-Gatter G1, G2, G3 und G4. Das UND-Gatter G1 gibt das Auswahlsignal
YA0 in Reaktion auf Ausgabesignale der Inverter INV1 und INV2 aus.
Das UND-Gatter G2 gibt das Auswahlsignal YA1 in Reaktion auf die
Spaltenadresse An und das Ausgabesignal des Inverters INV2 aus.
Das UND-Gatter G3 gibt das Auswahlsignal YA2 in Reaktion auf die
Spaltenadresse An+1 und das Ausgabesignal des Inverters INV1 aus.
Das UND-Gatter G4 gibt das Auswahlsignal YA1 in Reaktion auf die
Spaltenadressen An und An+1 aus. Die Decoderschaltung 122 ist
nicht auf die dargestellte Ausführungsform
beschränkt.
-
5 zeigt ein Schaltbild eines
Ausführungsbeispiels
der Auswerteschaltung 124 aus 3. Wie aus 5 ersichtlich
ist, gibt die Auswerteschaltung 124 die Auswahlsignale
YB0, YB0B, YB1, YB1B, YB2, YB2B, YB3 und YB3B in Reaktion auf untere
Adressensignale A0 und A1 aus. Die Auswerteschaltung 124 umfasst
ein NOR-Gatter G5, ein NAND-Gatter G6 und Inverter INV3, INV4, INV5, INV6
und INV7. Das NOR-Gatter G5 gibt das Auswahlsignal YB0 in Reaktion
die negierten Spaltenadressensignale A0 und A1 aus und der Inverter
INV4 invertiert das Auswahlsignal YB0, um das Auswahlsignal YB0B
auszugeben. Der Inverter INV3 invertiert das Spaltenadressensignal
A1, um das Auswahlsignal YB1 auszugeben, und der Inverter INV5 invertiert das
Auswahlsignal YB1, um das Auswahlsignal YB1B auszugeben. Das NAND-Gatter G6 gibt das Auswahlsignal
YB2 in Reaktion auf die Spaltenadressensignale A0 und A1 aus und
der Inverter INV6 invertiert das Auswahlsignal YB2, um das Auswahlsignal
YB2B auszugeben. Da das Auswahlsignal YB3 mit einer Versorgungsspannung
Vcc verbunden ist, haben die Auswahlsignale YB3 bzw. YB3B ständig einen
hohen bzw. einen niedrigen logischen Pegel.
-
Wie
oben ausgeführt
ist, werden die Spaltenadressensignale A0 und A1 benutzt, um Abtastverstärkergruppen
entsprechend einer Bündellänge auszuwählen. Haben
die Spaltenadressensignale A1A0 den Wert „00", dann wird die erste Abtastverstärkergruppe
als Ausgabestartpunkt eines ersten Datenwortes ausgewählt. Dadurch
werden die Auswahlsignale YB0 bis YB3 mit einem hohen Pegel aktiviert.
Haben die Spaltenadressensignale A1A0 den Wert „10", dann wird die dritte Abtastverstärkergruppe
als Ausgabestartpunkt eines ersten Datenwortes ausgewählt. Dadurch
werden die Auswahlsignale YB2, YB3, YB0B und YB1 B mit einem hohen
Pegel aktiviert. Haben die Spaltenadressensignale A1A0 den Wert „11", dann ist die vierte
Abtastverstärkergruppe
als Ausgabestartpunkt eines ersten Datenwortes ausgewählt. Dadurch
werden die Auswahlsignale YB3, YB0B, YB1 B und YB2B mit einem hohen Pegel
aktiviert.
-
Die
Aktivierung der Auswahlsignale YB0, YB1, YB2 oder YB3 bedeutet,
dass die Bitleitungen einer eingegebenen Spaltenadresse ausgewählt werden.
In diesem Fall werden die Datenworte der ersten bis vierten Abtastverstärkergruppe
nacheinander ausgegeben. Datenworte, die in dieser Reihenfolge ausgegeben
werden, werden außerhalb
als Datenworte der N-ten, (N+1)-ten, (N+2)-ten und (N+3)-ten Spaltenadresse
betrachtet. Die Aktivierung der Auswahlsignale YB0B, YB1B oder YB2B
bedeutet, dass die Bitleitungen einer höheren als der eingegebenen
Spaltenadresse ausgewählt
werden. Ist beispielsweise das Auswahlsignal YB0B aktiviert, dann korrespondieren
Bitleitungen, die mit der ersten Abtastverstärkergruppe SAG0 verbunden sind,
mit einer höheren
als der eingegebenen Spaltenadresse, während Bitleitungen, die mit
den anderen Abtastverstärkergruppen
SAG1 bis SAG3 verbunden sind, mit der eingegebenen Spaltenadresse
korrespondieren. Sind die Auswahlsignale YB0B und YB1 B aktiviert, dann
korrespondieren Bitleitungen, die mit der ersten und der zweiten
Abtastverstärkergruppe
SAG0 und SAG1 verbunden sind, mit einer höheren als der eingegebenen
Spaltenadresse, während
Bitleitungen, die mit den anderen Abtastverstärkergruppen SAG2 und SAG3 verbunden
sind, mit der eingegebenen Spaltenadresse korrespondieren.
-
6 zeigt ein Schaltbild eines
Ausführungsbeispiels
einer Spaltengateschaltung
130 aus
1. Die Spaltengateschaltung
130 aus
6 ist unter der Voraussetzung
ausgelegt, dass die Bündellänge gleich
vier ist und als Bitorganisation der Typ X16 vorliegt. Die Erfindung
ist aber nicht auf diese Voraussetzungen beschränkt. Entspricht die Bündellänge dem
Wert vier, dann sind vier Abtastverstärkergruppen SAG0 bis SAG3 erforderlich
und jede Abtastverstärkergruppe
SAG0 bis SAG3 umfasst sechzehn Abtastverstärker SAO bis SA15. Geeignete
Abtastverstärker
sind z.B. in den Patentschriften
US 6,362,661 und
US 6,400,606 beschrieben,
die hierin durch Verweis in die Beschreibung aufgenommen werden.
-
Wie
weiter aus 6 ersichtlich
ist, umfasst die Spaltengateschaltung 130 Spaltengates 131, 132, 133 und 134,
die jeweils mit den Abtastverstärkergruppen
SAG0 bis SAG3 korrespondieren. Jedes der Spaltengates 131 bis 134 umfasst
eine Anzahl von Spaltengateeinheiten, die jeweils mit Abtastverstärkern der
korrespondierenden Abtastverstärkergruppe
verbunden sind. So umfasst beispielsweise das Spaltengate 131 sechzehn
Spaltengateeinheiten 131_0 bis 131_15. Jedes der
Spaltengates 131 bis 134 wählt sechzehn von vierundsechzig
Bitleitungen in Reaktion auf Auswahlsignale aus und verbindet die ausgewählten Bitleitungen
mit den Abtastverstärkern der
korrespondierenden Abtastverstärkergruppe.
-
So
wählt beispielsweise
das Spaltengate 131 sechzehn der vierundsechzig Bitleitungen
BL0 bis BL63 in Reaktion auf die Auswahlsignale YA0 bis YA3, YB0
und YB0B aus und verbindet die ausgewählten Bitleitungen jeweils
mit den korrespondierenden Abtastverstärkern SA0 bis SA15 der ersten Abtastverstärkergruppe
SAG0. Das Spaltengate 132 wählt sechzehn von vierundsechzig
Bitleitungen BL64 bis BL127 in Reaktion auf die Auswahlsignale YA0
bis YA3, YB1 und YB1B aus und verbindet die ausgewählten Bitleitungen
jeweils mit den korrespondierenden Abtastverstärkern SA0 bis SA15 der zweiten
Abtastverstärkergruppe
SAG1. Das Spaltengate 133 wählt sechzehn von vierundsechzig
Bitleitungen BL128 bis BL191 in Reaktion auf die Auswahlsignale YAO
bis YA3, YB2 und YB2B aus und verbindet die ausgewählten Bitleitungen
jeweils mit den korrespondierenden Abtastverstärkern SAO bis SA15 der dritten
Abtastverstärkergruppe
SAG2. Das Spaltengate 134 wählt sechzehn von vierundsechzig
Bitleitungen BL192 bis BL255 in Reaktion auf die Auswahlsignale YA0
bis YA3, YB3 und YB3B aus und verbindet die ausgewählten Bitleitungen
jeweils mit den korrespondierenden Abtastverstärkern SA0 bis SA15 der vierten
Abtastverstärkergruppe
SAG3.
-
Wie
weiter aus 6 ersichtlich
ist, umfasst die erste Spaltengateeinheit 131_0 im Spaltengate 131 vierzehn
NMOS-Transistoren T1 bis T14. Die NMOS-Transistoren T1 und T2 sind
zwischen der Bitleitung BL0 und dem Abtastverstärker SA0 eingeschleift und
werden von den Auswahlsignalen YA0 bzw. YB0 gesteuert. Die NMOS-Transistoren
T3 und T4 sind als Kaskade zwischen der Bitleitung BL1 und dem Abtastverstärker SA0
eingeschleift und werden von den Auswahlsignalen YA1 bzw. YB0 gesteuert. Die
NMOS-Transistoren T5 und T6 sind als Kaskade zwischen der Bitleitung
BL1 und dem Abtastverstärker
SA0 eingeschleift und werden von den Auswahlsignalen YA0 bzw. YB0B
gesteuert. Die NMOS-Transistoren T7 und T8 sind in Reihe zwischen
der Bitleitung BL2 und dem Abtastverstärker SA1 eingeschleift und
werden von den Auswahlsignalen YA2 bzw. YB0 gesteuert. Die NMOS-Transistoren
T9 und T10 sind als Kaskade zwischen der Bitleitung BL2 und dem
Abtastverstärker
SA0 eingeschleift und werden jeweils von den Auswahlsignalen YA1
bzw. YB0B gesteuert. Die NMOS-Transistoren T11 und T12 sind in Reihe
zwischen der Bitleitung BL3 und dem Abtastverstärker SA0 eingeschleift und
werden von den Auswahlsignalen YA3 bzw. YB0 gesteuert. Die NMOS-Transistoren
T13 und T14 sind als Kaskade zwischen der Bitleitung BL3 und dem
Abtastverstärker
SA0 eingeschleift und werden von den Auswahlsignalen YA2 bzw. YB0B
gesteuert.
-
Die
anderen Spaltengateeinheiten 131_1 bis 131_15 sind
gleich aufgebaut wie die Spaltengateeinheit 131_0, so dass
hier auf eine wiederholte Beschreibung verzichtet werden kann. Analog
sind die Spaltengateeinheiten der anderen Spaltengates 132 bis 134 gleich
aufgebaut wie die Spaltengateeinheit 131_0 des Spaltengates 131,
so dass hier auf eine wiederholte Beschreibung ebenfalls verzichtet
wird. In 6 sind analog
aufgebaute Elemente jeder Spaltengateeinheit mit dem gleichen Bezugszeichen bezeichnet.
-
Wie
aus 6 deutlich wird,
werden die Auswahlsignale YA0 bis YA3 den NMOS-Transistoren T1,
T3, T5, T7, T9, T11 und T13 der Spaltengateeinheiten jedes Spaltengates 131 bis 134 gemeinsam zur
Verfügung
gestellt.
-
Im
dargestellten Ausführungsbeispiel
bilden die NMOS-Transistoren T1, T2, T3, T4, T7, T8, T11 und T12
Pfade oder Schalteranordnungen zum Auswählen einer der Bitleitungen,
wenn die Spaltenadresse durch 4N teilbar ist, wobei die ausgewählte Bitleitung
mit einer aktuell eingegebenen Spaltenadresse korrespondiert. Die
NMOS-Transistoren T5, T6, T9, T10, T13 und T14 bilden Pfade oder
Schalteranordnungen zum Auswählen
einer der Bitleitungen, wenn die Spaltenadresse nicht durch 4N teilbar
ist, wobei die ausgewählte
Bitleitung mit einer höheren als
der aktuell eingegebenen Spaltenadresse korrespondiert. Wie aus 6 ersichtlich ist, werden
zwei Strompfade, die nachfolgend auch als parallele Strompfade bezeichnet
werden, zwischen einer der Bitleitungen, z.B. BL1, und einem der
Abtastverstärker,
z.B. SA0, zur Verfügung
ge stellt. Jeder der Strompfade umfasst zwei NMOS-Transistoren, z.B. T3,
T4 und T5, T6.
-
Nachfolgend
wird die Funktionsweise eines solchen erfindungsgemäßen Flash-Speicherbausteins
unter Bezugnahme auf die Zeichnungen genauer beschrieben.
-
Mit
der Eingabe von Zeilen- und Spaltenadressen für einen Bündellesevorgang wählt zuerst eine
nicht dargestellte Zeilenauswahlschaltung eine Wortleitung des Speicherzellenfeldes 110 gemäß der Zeilenadresse
aus. Gleichzeitig erzeugt die Spaltendecoderschaltung 120 Auswahlsignale
zum Steuern der Spaltengateschaltung 130 in Reaktion auf
die Spaltenadresse.
-
Wie
aus 3 ersichtlich ist,
decodiert ein Decoder 122 einen Teil An und An+1 der Spaltenadresse,
um eines der Auswahlsignale YA0 bis YA3 zu aktivieren. Nachfolgend
wird beispielsweise angenommen, dass das Auswahlsignal YA0 aktiviert
wird. Mit der Aktivierung des Auswahlsignals YA0 werden die NMOS-Transistoren
T1 und T5 von jeder Spaltengateeinheit der Spaltengateschaltung 130 leitend
geschaltet. Gleichzeitig reagiert die Auswerteschaltung 124 auf
die unteren Adressensignale A0 und A1 der empfangenen Spaltenadresse
und bestimmt, ob die empfangene Spaltenadresse durch 4N teilbar
ist. Wie oben bereits ausgeführt
wurde, bedeutet die Teilbarkeit durch 4N, dass das Datenwort der ersten
Abtastverstärkergruppe
zuerst ausgegeben wird. Die Auswerteschaltung 124 gibt
die Auswahlsignale YB0 bis YB3 und YB0B bis YB3B entsprechend dem
Auswerteergebnis aus.
-
Ist
die eingegebene Spaltenadresse durch 4N teilbar, dann aktiviert
die Auswerteschaltung 124 die Auswahlsignale YB0 bis YB3
mit einem hohen Pegel. Durch die Aktivierung der Auswahlsignale YB0
bis YB3 werden die NMOS-Transistoren T2, T4, T8 und T12 von jeder
der Spalten gateeinheiten leitend geschaltet. Entsprechend wählt jede
Spaltengateeinheit eine erste der korrespondierenden Bitleitungen
aus. Dadurch werden die Bitleitungen BL0, BL4,..., BL60 über das
Spaltengate 131 mit den korrespondierenden Abtastverstärkern SA0
bis SA15 verbunden. Die anderen Spaltengates wählen die Bitleitungen auf die
gleiche oben beschriebene Weise aus. Die ausgewählten Bitleitungen korrespondieren
mit der aktuell empfangenen Spaltenadresse.
-
Danach
tasten die Abtastverstärker
SA0 bis SA15 jeder der Abtastverstärkergruppen SAG0 bis SAG3 die
Daten auf bekannte Weise ab und verstärken sie. Ist ein Abtastverstärkungsvorgang
abgeschlossen, dann werden die von den Abtastverstärkergruppen
SAG0 bis SAG3 abgetasteten Datenworte in dieser Reihenfolge nach
außen
ausgegeben. Hierbei werden die ausgegebenen Datenworte außerhalb
als Datenworte der N-ten, (N+1)-ten, (N+2)-ten und (N+3)-ten Spaltenadresse
betrachtet.
-
Ist
die eingegebene Spaltenadresse nicht durch 4N teilbar, dann aktiviert
die Auswerteschaltung 124 einen Teil der Auswahlsignale
YB0 bis YB3 mit einem hohen Pegel. Gleichzeitig werden die komplementären der
nicht aktivierten Signale aktiviert. Haben die eingegebenen Spaltenadressensignale A1A0
beispielsweise den Wert „01", dann werden die Auswahlsignale
YB0B, YB1, YB2 und YB3 aktiviert. Mit der Aktivierung der Auswahlsignale
YB0B, YB1, YB2 und YB3 werden die NMOS-Transistoren T6, T10 und T14 von jeder
der Spaltengateeinheiten des ersten Spaltengates 131 leitend
geschaltet, während die
NMOS Transistoren T2, T4, T8 und T12 von jeder der Spaltengateeinheiten
der anderen Spaltengates 132 bis 134 leitend geschaltet
werden. Entsprechend wählt
jede Spaltengateeinheit der zweiten bis vierten Spaltengates 132 bis 134 eine
erste der korrespondierenden Bitleitungen aus, während jede Spaltengateeinheit
des ersten Spaltengates 131 eine zweite Bitleitung auswählt. Dadurch
verbindet das zweite Spaltengate 132 die Bitlei tungen BL64,
BL68,..., BL124 mit den korrespondierenden Abtastverstärkern SA0
bis SA15, das dritte Spaltengate 133 verbindet die Bitleitungen
BL128, BL132,..., BL188 mit den korrespondierenden Abtastverstärkern SA0
bis SA15 und das vierte Spaltengate 134 verbindet die Bitleitungen
BL192, B196,..., BL252 mit den korrespondierenden Abtastverstärkern SA0
bis SA15. Andererseits verbindet das erste Spaltengate 131 die Bitleitungen
BL1, BLS,..., BL61 mit den korrespondierenden Abtastverstärkern SA0
bis SA15. Hierbei wählen
das zweite bis vierte Spaltengate 132 bis 134 jeweils
Bitleitungen einer aktuell empfangenen Spaltenadresse, z.B. N, aus,
während
das erste Spaltengate 131 Bitleitungen einer höheren als
der empfangenen Spaltenadresse auswählt, z.B. N+1.
-
Danach
tasten die Abtastverstärker
SA0 bis SA15 jeder der Abtastverstärkergruppen SAG0 bis SAG3 die
Daten auf bekannte Weise ab und verstärken sie. Ist der Abtastverstärkungsvorgang
abgeschlossen, dann werden die von den Abtastverstärkergruppen
SAG1 bis SAG3 und SAG0 abgetasteten Datenworte in dieser Reihenfolge
nach außen
ausgegeben. Hierbei werden die ausgegebenen Datenworte außerhalb
als Datenworte der N-ten, (N+1)-ten, (N+2)-ten und (N+3)-ten Spaltenadresse betrachtet.
-
Ist
die eingegebene Spaltenadresse nicht durch 4N teilbar, beispielsweise
wenn die eingegebenen Spaltenadressensignale A1A0 den Wert „10" oder „11" haben, dann erfolgt
der Spaltenauswahlvorgang wiederum auf die oben beschriebene Weise. Haben
die Spaltenadressensignale A1A0 beispielsweise den Wert „10", dann werden die
von den Abtastverstärkergruppen
SAG2, SAG3, SAG0 und SAG1 abgetasteten und verstärkten Datenworte in dieser
Reihenfolge nach außen
ausgegeben. Entsprechend wählen
das dritte und vierte Spaltengate die Bitleitungen der aktuell eingegebenen
Spaltenadresse aus, z.B. N, während
das erste und zweite Spaltengate die Bitleitungen einer höheren als
der aktuell eingegebenen Spaltenadresse auswählen, z.B. N+1. Hierbei werden
die ausgegebenen Datenworte außerhalb
als Datenworte der N-ten, (N+1)-ten,
(N+2)-ten und (N+3)-ten Spaltenadresse betrachtet. Analog werden
die von den Abtastverstärkergruppen
SAG3, SAG0, SAG1 und SAG2 abgetasteten und verstärkten Datenworte in dieser
Reihenfolge nach außen
ausgegeben, wenn die eingegebenen Spaltenadressensignale A1A0 den
Wert „11" haben. Entsprechend
wählt das
vierte Spaltengate die Bitleitungen der aktuell eingegebenen Spaltenadresse
aus, z.B. N, während
das erste, zweite und dritte Spaltengate die Bitleitungen einer
höheren
als der aktuell eingegebenen Spaltenadresse auswählen, z.B. N+1. Hierbei werden
die ausgegebenen Datenworte außerhalb
als Datenworte der N-ten, (N+1)-ten, (N+2)-ten und (N+3)-ten Spaltenadresse betrachtet.
-
Wie
oben ausgeführt,
steuern die Auswahlsignale YA0 bis YA3 gemeinsam die NMOS-Transistoren
T1, T3, T5, T7, T9 und T11 von jedem der Spaltengates 131 bis 134,
und die NMOS-Transistoren T2, T4, T6, T8, T10, T12 und T14 von jedem
der Spaltengates 131 bis 134 werden von den korrespondierenden
Auswahlsignalen YBi und YBiB gesteuert, mit i=0,..., 3. Das bedeutet,
dass vier Auswahlsignalleitungen YA0 bis YA3 und acht Auswahlsignalleitungen
YB0 bis YB3, YB0B bis YB3B erforderlicht sind, um die Auswahlsignale
zur Spaltengateschaltung 130 zu übertragen. Somit werden zwölf Signalleitungen
benutzt. Für
die Spaltengatestruktur aus 11 sind
sechzehn Signalleitungen erforderlich, während zwölf Signalleitungen für das erfindungsgemäße Ausführungsbeispiel
ausreichend sind. Somit werden vier Signalleitungen weniger benutzt.
Dafür werden beim
erfindungsgemäßen Ausführungsbeispiel
mehr Durchlasstransistoren benutzt, z.B. dreimal mehr. Aber es ist
möglich,
die Anzahl der Signalleitungen um fast 50% zu senken, wenn die Anzahl
der nacheinander zu lesenden Datenworte erhöht wird.
-
7 zeigt ein Blockschaltbild
eines weiteren Ausführungsbeispiels
eines erfindungsgemäßen Flash-Speicherbausteins 1000.
Wie aus 7 ersichtlich
ist, umfasst der Flash-Speicherbaustein 1000 ein Speicherzellenfeld 1100 mit
einer Anzahl von Sektoren 1101 bis 1104. Jeder
der Sektoren 1101 bis 1104 umfasst eine Mehrzahl
von lokalen Bitleitungen BL0,..., BLm. Obwohl in 7 nicht dargestellt, sind eine Mehrzahl
von nichtflüchtigen
Speicherzellen mit jeder der lokalen Bitleitungen verbunden. Eine
erste Spaltendecoderschaltung 1200 erzeugt Auswahlsignale
zum Auswählen
der lokalen Bitleitungen in Reaktion auf erste Spaltenadressensignale
von einer Spaltenvordecoderschaltung 1300. Eine zweite
Spaltendecoderschaltung 1400 erzeugt Auswahlsignale zur
Auswahl der Sektoren in Reaktion auf zweite Spaltenadressensignale
von der Spaltenvordecoderschaltung 1300.
-
Wie
aus 7 weiter ersichtlich
ist, umfasst ein erster Spaltengateblock 1500 Spaltengateschaltungen 1501 bis 1504,
die jeweils mit den Sektoren 1101 bis 1104 korrespondieren.
Die Spaltengateschaltungen 1501 bis 1504 arbeiten
in Reaktion auf die Auswahlsignale der ersten Spaltendecoderschaltung 1200.
So ist beispielsweise die Spaltengateschaltung 1501 mit
den lokalen Bitleitungen BL0 bis BLm des korrespondierenden Sektors 1101 verbunden
und wählt
einen Teil der lokalen Bitleitungen BL0 bis BLm in Reaktion auf
die Auswahlsignale von der ersten Spaltendecoderschaltung 1200 aus.
Die anderen Spaltengateschaltungen 1502 bis 1504 arbeiten
auf die gleiche Weise wie die Spaltengateschaltung 1501.
Ein Sektorauswahlblock 1600 umfasst eine Anzahl von Sektorauswahlschaltungen 1601 bis 1604,
die jeweils mit den Sektoren 1101 bis 1104 oder
den Spaltengateschaltungen korrespondieren. Die Sektorauswahlschaltungen 1601 bis 1604 arbeiten
in Reaktion auf die Auswahlsignale von der zweiten Spaltendecoderschaltung 1400.
So verbindet beispielsweise die Sektorauswahlschaltung 1601 die
lokalen, von der korrespondierenden Spaltengateschaltung 1501 ausgewählten Bitleitungen
jeweils mit globalen Bitleitungen GBL0 bis GBLn. Nur eine der Sektorauswahlschaltungen
ist aktiviert, so dass die ausgewählten lokalen Bitleitungen
von einem der Sektoren 1101 bis 1104 jeweils mit
den globalen Bitleitungen GBL0 bis GBLn verbunden werden.
-
Eine
dritte Spaltendecoderschaltung 1700 erzeugt Auswahlsignale
in Reaktion auf dritte Spaltenadressensignale von der Spaltenvordecoderschaltung 1300.
Ein zweiter Spaltengateblock 1800 wählt einen Teil der globalen
Bitleitungen GBL0 bis GBLn in Reaktion auf Auswahlsignale der dritten Spaltendecoderschaltung 1700 aus
und die ausgewählten
globalen Bitleitungen werden über
den zweiten Spaltengateblock 1800 mit einem Abtastverstärkerblock 1900 verbunden.
Der zweite Spaltengateblock 1800 umfasst Spaltengateschaltungen,
deren Anzahl mit der Bündellänge korrespondiert.
Ist die Bündellänge beispielsweise
gleich vier, dann umfasst der zweite Spaltengateblock 1800 vier
Spaltengateschaltungen 1801, 1802, 1803 und 1804.
Analog umfasst der Abtastverstärkerblock 1900 Abtastverstärkergruppen 1901, 1902, 1903 und 1904,
deren Anzahl mit der Bündellänge korrespondiert.
Jede Abtastverstärkergruppe
umfasst Abtastverstärker,
deren Anzahl mit der Bitorganisation korrespondiert.
-
Hierbei
bilden die erste Spaltendecoderschaltung 1200, die zweite
Spaltendecoderschaltung 1400, der Spaltengateblock 1500 und
der Sektorauswahlblock 1600 eine Spaltenauswahlschaltung,
welche einen Sektor auswählt
und einen Teil der lokalen Bitleitungen des ausgewählten Sektors
jeweils mit globalen Bitleitungen verbindet. Die dritte Spaltendecoderschaltung 1700 und
der Spaltengateblock 1800 bilden eine Spaltenauswahlschaltung,
welche die globalen Bitleitungen in Abhängigkeit von der Teilbarkeit
der Spaltenadresse durch 4N variabel mit den Abtastverstärkerblöcken verbindet.
-
8 zeigt ein Schaltbild einer
Realisierung der Spaltengateschaltung 1501 und der Sektorauswahlschaltung 1601 aus 7, bezogen auf den Sektor 1101.
Es wird angenommen, dass der Sektor 1101 eine Anzahl von
1024 lokalen Bitleitungen BL0 bis BL1023 umfasst.
-
Die
Spaltengateschaltung 1501 wählt einen Teil der lokalen
Bitleitungen BL0 bis BL1023 in Reaktion auf die Auswahlsignale YA0
bis YA3 von der ersten Spaltendecoderschaltung 1200 aus.
Die Spaltengateschaltung 1501 umfasst eine Anzahl von Spaltengateeinheiten
CGU0 bis CGU255, die jeweils mit den globalen Bitleitungen GBL0
bis GBL255 korrespondieren. Jede Spaltengateeinheit umfasst vier NMOS-Transistoren T10,
T11, T12 und T13, die wie in 8 dargestellt
miteinander verschaltet sind. Jede Spaltengateeinheit wählt eine
von vier lokalen Bitleitungen in Reaktion auf die Auswahlsignale
YA0 bis YA3 aus. Die Spaltengateeinheit CGU0 wählt beispielsweise eine der
lokalen Bitleitungen BL0 bis BL3 in Reaktion auf die Auswahlsignale
YA0 bis YA3 aus.
-
Die
Sektorauswahlschaltung 1601 umfasst eine Anzahl von NMOS-Transistoren T14,
die jeweils mit den globalen Bitleitungen GBL0 bis GBL255 bzw. den
Spaltengateeinheiten korrespondieren und die NMOS-Transistoren T14
werden gemeinsam vom Auswahlsignal YB0 gesteuert. Entsprechend werden die
lokalen, von der Spaltengateschaltung 1501 ausgewählten Bitleitungen
jeweils über
die Sektorauswahlschaltung 1601 mit den globalen Bitleitungen GBL0
bis GBL255 verbunden.
-
Die
Spaltengateschaltungen und die Sektorauswahlschaltungen, die mit
den anderen Sektoren 1102 bis 1104 korrespondieren,
sind gleich aufgebaut wie die Schaltungen aus B.
Deshalb wird hier auf eine erneute Beschreibung verzichtet. Die Sektorauswahlschaltungen
sind so ausgeführt,
dass jeweils nur ein Sektor von den korrespondierenden Auswahlsignalen
aktiviert wird. In dem dargestellten Ausführungsbeispiel werden die Spaltengateschaltungen
gemeinsam von den Auswahl signalen YA0 bis YA3 gesteuert. Für den Fachmann
versteht es sich jedoch, dass auch andere Steuerungen der Spaltengateschaltungen
möglich
sind.
-
9 zeigt ein Blockschaltbild
einer Realisierung der dritten Spaltendecoderschaltung 1700 aus 7. Wie aus 9 ersichtlich ist, umfasst die Spaltendecoderschaltung 1700 einen
Decoder 1710 und eine Auswerteschaltung 1720.
Der Decoder 1710 decodiert Spaltenadressensignale An und An+1
von der Spaltenvordecoderschaltung 1300, um Auswahlsignale
YC0 bis YC3 zu erzeugen. Die Auswerteschaltung 1720 empfängt die
Spaltenadressensignale A0 und A1 von der Spaltenvordecoderschaltung 1300 und
ermittelt, ob die Spaltenadresse durch 4N teilbar ist oder nicht,
wobei N eine ganze Zahl größer oder
gleich eins ist. Hierbei sind die Spaltenadressensignale A0 und
A1 die niederwertigsten Bits der Spaltenadresse.
-
Ist
die Spaltenadresse durch 4N teilbar, d.h. das Datenwort einer ersten
Abtastverstärkergruppe 1901 aus 10 soll zuerst ausgegeben
werden, dann aktiviert die Auswerteschaltung 1720 die Auswahlsignale
YD0, YD1, YD2 und YD3 und deaktiviert die Auswahlsignale YD0B, YD1B,
YD2B und YD3B. Ist eine Spaltenadresse nicht durch 4N teilbar und soll
das Datenwort der zweiten Abtastverstärkergruppe 1902 zuerst
ausgegeben werden, dann aktiviert die Auswerteschaltung 1720 die
Auswahlsignale YD0B und YD1 bis YD3 und deaktiviert die Auswahlsignale
YD0 und YD1B bis YD3B. Ist die Spaltenadresse nicht durch 4N teilbar
und soll das Datenwort der dritten Abtastverstärkergruppe 1903 zuerst
ausgegeben werden, dann aktiviert die Auswerteschaltung 1720 die
Auswahlsignale YD0B, YD1B, YD2 und YD3 und deaktiviert die Auswahlsignale
YD0, YD1, YD2B und YD3B. Ist die Spaltenadresse nicht durch 4N teilbar
und soll das Datenwort der vierten Abtastverstärkergruppe 1904 zuerst
ausgegeben werden, dann aktiviert die Auswerteschaltung 1720 die
Auswahlsignale YD0B, YD1B, YD2B und YD3 und deaktiviert die Auswahlsignale
YD0, YD1, YD2 und YD3B. Der Decoder 1710 und die Auswerteschaltung 1720 aus 9 sind gleich aufgebaut
wie die entsprechenden Schaltungen aus 4 und 5, so
dass hier auf eine erneute Beschreibung verzichtet wird.
-
10 zeigt ein Schaltbild
eines Ausführungsbeispiels
eines zweiten Spaltengateblocks 1800 aus 7. Bei diesem Ausführungsbeispiel sind vier Abtastverstärkergruppen 1901 bis 1904 erforderlich
und jede Abtastverstärkergruppe 1901 bis 1904 umfasst
sechzehn Abtastverstärker
SA0 bis SA15, wenn die Bündellänge den
Wert vier hat und die Bitorganisation vom Typ X16 ist.
-
Der
Spaltengateblock 1800 von 10 umfasst
die Spaltengateschaltungen 1801, 1802, 1803 und 1804,
die jeweils mit den Abtastverstärkergruppen 1901 bis 1904 korrespondieren.
Jede der Spaltengateschaltungen 1801, 1802, 1803 und 1804 umfasst
eine Mehrzahl von Spaltengateeinheiten, die jeweils mit Abtastverstärkern der
korrespondierenden Abtastverstärkergruppe
verbunden sind. So umfasst beispielsweise die Spaltengateschaltung 1801 sechzehn
Spaltengateeinheiten 1801_0 bis 1801_15. Jede
der Spaltengateeinheiten 1801_0 bis 1801_15 wählt sechzehn
von vierundsechzig globalen Bitleitungen in Reaktion auf Auswahlsignale
aus und verbindet die ausgewählten
globalen Bitleitungen jeweils mit den Abtastverstärkern der
korrespondierenden Abtastverstärkergruppe.
-
So
wählt beispielsweise
die Spaltengateschaltung 1801 sechzehn der vierundsechzig
globalen Bitleitungen GBL0 bis GBL63 in Reaktion auf die Auswahlsignale
YC0 bis YC3, YD0 und YD0B aus und verbindet die ausgewählten globalen
Bitleitungen jeweils mit den korrespondierenden Abtastverstärkern SA0
bis SA15 der ersten Abtastverstärkergruppe 1901.
Die Spaltengateschaltung 1802 wählt sechzehn der vierundsechzig
globalen Bitleitungen GBL64 bis GBL127 in Reaktion auf die Aus wahlsignale
YC0 bis YC3, YD1 und YD1B aus und verbindet die ausgewählten globalen
Bitleitungen jeweils mit den korrespondierenden Abtastverstärkern SA0
bis SA15 der zweiten Abtastverstärkergruppe 1902.
Die Spaltengateschaltung 1803 wählt sechzehn der vierundsechzig
globalen Bitleitungen GBL128 bis GBL191 in Reaktion auf die Auswahlsignale
YC0 bis YC3, YD2 und YDB2B aus und verbindet die ausgewählten globalen
Bitleitungen jeweils mit den korrespondierenden Abtastverstärkern SA0
bis SA15 der dritten Abtastverstärkergruppe 1903.
Die Spaltengateschaltung 1804 wählt sechzehn von vierundsechzig
globalen Bitleitungen GBL192 bis GBL255 in Reaktion auf die Auswahlsignale
YC0 bis YC3, YD3 und YD3B aus und verbindet die ausgewählten globalen Bitleitungen
jeweils mit den korrespondierenden Abtastverstärkern SA0 bis SA15 der vierten
Abtastverstärkergruppe 1904.
-
Wie
weiter aus 10 ersichtlich
ist, umfasst eine erste Spaltengateeinheit 1801_0 in der Spaltengateschaltung 1801 vierzehn
NMOS-Transistoren T15 bis T28. Die NMOS-Transistoren T15 und T16
sind zwischen der globalen Bitleitung GBL0 und dem Abtastverstärker SA0
eingeschleift und werden von den Auswahlsignalen YC0 bzw. YD0 gesteuert. Die
NMOS-Transistoren T17 und T18 sind als Kaskade zwischen der globalen
Bitleitung GBL1 und dem Abtastverstärker SA0 eingeschleift und
werden von den Auswahlsignalen YC1 bzw. YD0 gesteuert. Die NMOS-Transistoren
T19 und T20 sind als Kaskade zwischen der globalen Bitleitung GBL1
und dem Abtastverstärker
SA0 eingeschleift und werden von den Auswahlsignalen YC0 bzw. YD0B
gesteuert. Die NMOS-Transistoren T21 und T22 sind in Reihe zwischen
der globalen Bitleitung GBL2 und dem Abtastverstärker SA0 eingeschleift und
werden von den Auswahlsignalen YC2 bzw. YD0 gesteuert. Die NMOS-Transistoren T23
und T24 sind als Kaskade zwischen der globalen Bitleitung GBL2 und
dem Abtastverstärker
SA0 eingeschleift und werden von den Auswahlsignalen YC1 bzw. YD0B
gesteuert. Die NMOS-Transistoren
T25 und T26 sind in Reihe zwischen der globalen Bitleitung GBL3
und dem Abtastverstärker
SA0 eingeschleift und werden von den Auswahlsignalen YC3 bzw. YD0
gesteuert. Die NMOS-Transistoren T27 und T28 sind als Kaskade zwischen
der globalen Bitleitung GBL3 und dem Abtastverstärker SA0 eingeschleift und
werden von den Auswahlsignalen YC2 bzw. YD0B gesteuert.
-
Die
anderen Spaltengateeinheiten 1801_1 bis 1801_15 sind
gleich aufgebaut wie die Spaltengateeinheit 1801_0, so
dass hier auf eine erneute Beschreibung verzichtet wird. Analog
sind die Spaltengateeinheiten der anderen Spaltengateschaltungen 1802 bis 1804 gleich
aufgebaut wie die Spaltengateeinheit 1801_0, so dass hier
auf eine nochmalige Beschreibung ebenfalls verzichtet wird. In 10 sind analog aufgebaute
Elemente jeder Spaltengateeinheit mit dem gleichen Bezugszeichen bezeichnet.
-
Wie
aus 10 deutlich wird,
werden die Auswahlsignale YC0 bis YC3 den NMOS-Transistoren T15,
T17, T19, T21, T23, T25 und T27 der Spaltengateeinheiten jeder Spaltengateschaltung 1801 bis 1804 gemeinsam
zur Verfügung
gestellt.
-
Im
dargestellten Ausführungsbeispiel
bilden die NMOS-Transistoren T15, T16, T17, T18, T21, T22, T24 und
T26 Pfade oder Schalteranordnungen zum Auswählen einer der globalen Bitleitungen, wenn
die Spaltenadresse durch 4N teilbar ist, wobei die ausgewählte Bitleitung
mit einer aktuell eingegebenen Spaltenadresse korrespondiert. Die NMOS-Transistoren T19,
T20, T23, T24, T27 und T28 bilden Pfade oder Schalteranordnungen
zum Auswählen
einer der globalen Bitleitungen, wenn die Spaltenadresse nicht durch
4N teilbar ist, wobei die ausgewählte
Bitleitung mit einer höheren
als der aktuell eingegebenen Spaltenadresse korrespondiert.
-
Nachfolgend
wird die Funktionsweise dieses Flash-Speicherbausteins 1000 unter
Bezugnahme auf die Zeichnungen genauer beschrieben.
-
Mit
der Eingabe von Zeilen- und Spaltenadressen für einen Bündellesevorgang wählt zuerst eine
nicht dargestellte Zeilenauswahlschaltung einen der Sektoren, beispielsweise
den Sektor 1101, des Speicherzellenfeldes 1100 gemäß der Zeilenadresse aus
und eine Wortleitung des ausgewählten
Sektors wird aktiviert. Gleichzeitig erzeugt die erste Spaltendecoderschaltung 1200 Auswahlsignale
zum Steuern des ersten Spaltengateblocks 1500 in Reaktion auf
die Spaltenadresse von der Spaltenvordecoderschaltung 1300.
Die zweite Spaltendecoderschaltung 1400 erzeugt Auswahlsignale
zum Steuern der Sektorauswahlschaltung 1600 in Reaktion
auf die Spaltenadresse von der Spaltenvordecoderschaltung 1300.
Die dritte Spaltendecoderschaltung 1700 erzeugt Auswahlsignale
zum Steuern des zweiten Spaltengateblocks 1800 in Reaktion
auf die Spaltenadresse von der Spaltenvordecoderschaltung 1300.
-
Die
Spaltengateschaltung 1501 des ausgewählten Sektors 1101 wählt einen
Teil der lokalen Bitleitungen BL0 bis BLm in Reaktion auf die Auswahlsignale
YA0 bis YA3 von der ersten Spaltendecoderschaltung 1200 aus.
Die Sektorauswahlschaltung 1601 des ausgewählten Sektors 1101 verbindet
die ausgewählten
lokalen Bitleitungen jeweils mit korrespondierenden globalen Bitleitungen
GBL0 bis GBLn in Reaktion auf das Auswahlsignal YB0. Gleichzeitig decodiert,
wie aus 9 ersichtlich
ist, der Decoder 1710 den Teil An und An+1 der Spaltenadresse,
um eines der Auswahlsignale YC0 bis YC3 zu aktivieren. Nachfolgend
wird beispielsweise angenommen, dass das Auswahlsignal YC0 aktiviert
wird. Mit der Aktivierung des Auswahlsignals YC0 werden die NMOS-Transistoren T15
und T19 von jeder Spaltengateschaltung des zweiten Spaltengateblocks 1800 leitend
geschaltet. Gleichzeitig reagiert die Auswerteschaltung 1720 auf
die unteren Adressensignale A0 und A1 der empfangenen Spaltenadresse
und bestimmt, ob die empfangene Spal tenadresse durch 4N teilbar
ist. Wie oben bereits ausgeführt
wurde, bedeutet die Teilbarkeit durch 4N, dass das Datenwort der
ersten Abtastverstärkergruppe
zuerst ausgegeben wird. Die Auswerteschaltung 1720 gibt
die Auswahlsignale YD0 bis YD3 und YD0B bis YD3B entsprechend dem
Auswerteergebnis aus.
-
Ist
die eingegebene Spaltenadresse beispielsweise durch 4N teilbar,
dann aktiviert die Auswerteschaltung 1720 die Auswahlsignale
YD0 bis YD3 mit einem hohen Pegel. Durch die Aktivierung der Auswahlsignale
YD0 bis YD3 werden die NMOS-Transistoren T16, T18, T22 und T26 von
jeder der Spaltengateeinheiten leitend geschaltet. Entsprechend
wählt jede
Spaltengateeinheit eine erste der korrespondierenden globalen Bitleitungen
aus. Dadurch werden die globalen Bitleitungen GBL0, GBL4,..., GBL60 über die
Spaltengateschaltung 1801 mit den korrespondierenden Abtastverstärkern SA0
bis SA15 verbunden. Die anderen Spaltengateschaltungen wählen die
globalen Bitleitungen auf die gleiche oben beschriebene Weise aus.
Die ausgewählten
globalen Bitleitungen korrespondieren mit der aktuell empfangenen
Spaltenadresse.
-
Danach
tasten die Abtastverstärker
SA0 bis SA15 jeder der Abtastverstärkergruppen 1901 bis 1904 die
Daten auf bekannte Weise ab und verstärken sie. Ist ein Abtastverstärkungsvorgang
abgeschlossen, dann werden die von den Abtastverstärkergruppen 1901 bis 1904 abgetasteten
Datenworte in dieser Reihenfolge vom Speicherbaustein nach außen ausgegeben.
Hierbei werden die ausgegebenen Datenworte außerhalb als Datenworte der
N-ten, (N+1)-ten, (N+2)-ten und (N+3)-ten Spaltenadresse betrachtet.
-
Ist
die eingegebene Spaltenadresse nicht durch 4N teilbar, dann aktiviert
die Auswerteschaltung 1720 einen Teil der Auswahlsignale
YD0 bis YD3. Gleichzeitig werden die komplementären der nicht aktivierten Signale
aktiviert. Haben die eingegebenen Spaltenadressensignale A1A0 beispielsweise den
Wert „01", dann werden die
Auswahlsignale YD0B, YD1, YD2 und YD3 aktiviert. Mit der Aktivierung
der Auswahlsignale YD0B, YD1, YD2 und YD3 werden die NMOS-Transistoren
T20, T24, und T28 von jeder der Spaltengateeinheiten der ersten Spaltengateschaltung 1801 leitend
geschaltet, während
die NMOS-Transistoren T16, T18, T22 und T26 von jeder der Spaltengateeinheiten
der anderen Spaltengates 1802 bis 1804 leitend
geschaltet werden. Entsprechend wählt jede Spaltengateeinheit
der zweiten bis vierten Spaltengateschaltungen 1802 bis 1804 eine
erste der korrespondierenden globalen Bitleitungen aus, während jede
Spaltengateeinheit der ersten Spaltengateschaltung 1801 eine
zweite globale Bitleitung auswählt.
Dadurch verbindet die zweite Spaltengateschaltung 1802 die
globalen Bitleitungen GBL64, GBL68,..., GBL124 jeweils mit den korrespondierenden
Abtastverstärkern
SA0 bis SA15, die dritte Spaltengateschaltung 1803 verbindet
die globalen Bitleitungen GBL128, GBL132,..., GBL188 jeweils mit
den korrespondierenden Abtastverstärkern SA0 bis SA15 und die
vierte Spaltengateschaltung 1804 verbindet die globalen
Bitleitungen GBL192, GBL196,..., GBL252 jeweils mit den korrespondierenden
Abtastverstärkern
SA0 bis SA15. Andererseits verbindet die erste Spaltengateschaltung 1801 die
globalen Bitleitungen GBL1, GBL5,..., GBL61 jeweils mit den korrespondierenden
Abtastverstärkern SA0
bis SA15.
-
Hierbei
wählen
die zweite bis vierte Spaltengateschaltung 1802 bis 1804 jeweils
globale Bitleitungen einer aktuell empfangenen Spaltenadresse, z.B.
N, aus, während
die erste Spaltengateschaltung 1801 globale Bitleitungen
einer höheren als
der empfangenen Spaltenadresse auswählt, z.B. N+1.
-
Danach
tasten die Abtastverstärker
SA0 bis SA15 jeder der Abtastverstärkergruppen 1901 bis 1904 die
Daten auf bekannte Weise ab und verstärken sie. Ist der Abtastverstärkungsvorgang
abgeschlossen, dann werden die von den Abtastverstärkergruppen 1902 bis 1904 und 1901 abgetasteten Datenworte
in dieser Reihenfolge vom Speicherbaustein nach außen ausgegeben.
Hierbei werden die ausgegebenen Datenworte außerhalb als Datenworte der
N-ten, (N+1)-ten, (N+2)-ten und (N+3)-ten Spaltenadresse betrachtet.
-
Ist
die eingegebene Spaltenadresse nicht durch 4N teilbar, beispielsweise
wenn die eingegebenen Spaltenadressensignale A1A0 den Wert „10" oder „11" haben, dann erfolgt
der Spaltenauswahlvorgang auf die gleiche Weise wie oben beschrieben. Haben
die Spaltenadressensignale A1A0 beispielsweise den Wert „10", dann werden die
von den Abtastverstärkergruppen 1903, 1904, 1901 und 1902 abgetasteten
und verstärkten
Datenworte in dieser Reihenfolge vom Speicherbaustein nach außen ausgegeben.
Entsprechend wählen
die dritte und vierte Spaltengateschaltung die globalen Bitleitungen
der aktuell eingegebenen Spaltenadresse aus, z.B. N, während die
erste und zweite Spaltengateschaltung die globalen Bitleitungen
einer höheren
als der aktuell eingegebenen Spaltenadresse auswählen, z.B. N+1. Hierbei werden
die ausgegebenen Datenworte außerhalb
als Datenworte der N-ten, (N+1)-ten, (N+2)-ten und (N+3)-ten Spaltenadresse
betrachtet. Analog werden die von den Abtastverstärkergruppen 1904, 1901, 1902 und 1903 abgetasteten
und verstärkten
Datenworte in dieser Reihenfolge nach außen ausgegeben, wenn die Spaltenadressensignale A1A0
den Wert „11" haben. Entsprechend
wählt die vierte
Spaltengateschaltung die globalen Bitleitungen der aktuell eingegebenen
Spaltenadresse aus, z.B. N, während
die erste, zweite und dritte Spaltengateschaltung die globalen Bitleitungen
einer höheren
als der aktuell eingegebenen Spaltenadresse auswählen, z.B. N+1. Hierbei werden
die ausgegebenen Datenworte außerhalb
als Datenworte der N-ten, (N+1)-ten, (N+2)-ten und (N+3)-ten Spaltenadresse betrachtet.
-
Erfindungsgemäß kann verhindert
werden, dass die Anzahl an Spaltenauswahlsignalleitungen proportional
mit der Bündellänge zunimmt.
Die Erfindung wurde mit Hilfe der Ausführungsbeispiele beschrieben,
ist aber nicht auf diese beschränkt.