-
Die
Erfindung betrifft einen Flashspeicher gemäß dem Oberbegriff des Patentanspruchs
1 und ein Verfahren zum Betrieb desselben.
-
Flash-EPROM-Bauelemente,
welche manchmal als Flashspeicherbauelemente bezeichnet werden,
umfassen typischerweise wenigstens ein Speicherfeld, welches in
Zeilen und Spalten von Flashspeicherzellen organisiert ist. Das
Feld ist typischerweise in Blöcke
aufgeteilt, welche weiter in Sektoren aufgeteilt sind. Ein Zeilendecoder
und ein Spaltendecoder werden verwendet, um eine einzelne Zeile
und wenigstens eine Spalte der Speicherzellen basierend auf dem
Wert einer extern erzeugten Adresse auszuwählen, welche an das Flashspeicherbauelement
angelegt wird. Abtastverstärker
sind mit Spaltenleitungen gekoppelt, welche mit Spalten von Speicherzellen
korrespondieren, um die Spannungspegel auf den adressierten Spaltenleitungen
zu verstärken, welche
mit den in den adressierten Flashspeicherzellen gespeicherten Datenwerten
korrespondieren. Die einzelnen Implemen tierungen von bekannten Feldern
und Zeilen-/Spaltendecodern wird hier nicht weiter beschrieben.
-
Es
ist bekannt, dass in Speicherbauelementen Defekte vorhanden sein
können,
welche verhindern können,
dass das Bauelement wie entworfen arbeitet. Insbesondere können Defekte
während
der Herstellung der Flashspeicherbauelemente auftreten, so dass
Speicherzellen innerhalb des Felds nicht richtig arbeiten. Ein Defekt
in einer Speicherzelle (oder in einer assoziierten Schaltung) kann
beispielsweise verursachen, dass in die Speicherzelle geschriebene
Daten nicht richtig oder überhaupt
nicht gespeichert werden. Zudem kann der Defekt verhindern, dass
die Daten verlässlich
aus der adressierten Speicherzelle gelesen werden. Jeder dieser
Defekttypen kann den Herstellungsertrag für das Flashspeicherbauelement
reduzieren.
-
Es
ist bekannt, redundante Speicherzellen in den Flashspeicher einzubeziehen,
welche selektiv als defekt bestimmte normale Speicherzellen ersetzen
können,
um den Herstellungsertrag des Flashspeichers zu verbessern. Einige
Flashspeicherbauelemente benutzen nichtflüchtige Register, um Adressen
von Speicherzellen zu speichern, welche als defekt bekannt sind.
Die mit den defekten Speicherzellen assoziierten Adressen können in
den Registern gespeichert und mit Adressen verglichen werden, welche
mit Speichervorgängen
(d.h. mit Lesevorgängen
und Schreibvorgängen)
assoziiert sind. Wenn die Adresse mit einer in dem Register gespeicherten Adresse übereinstimmt,
kann eine Redundanzschaltung die Daten vom oder zum Speicher so
umleiten (oder abbilden), dass die defekten Speicherzellen nicht
für den
Speichervorgang verwendet werden. Während eines Schreibvorgangs
können
beispielsweise Schreibdaten (welche sonst zu einer bekannten defekten
Speicherzelle geleitet werden) zu einer redundanten Speicherzelle
umgeleitet werden. Später
wird, wenn ein Lesevorgang auf die Adresse der bekannten defekten
Speicherzelle gerichtet ist, auf die redundante Speicherzelle als
auch auf die defekte Speicherzelle zugegriffen. Die von der redundanten
Speicherzelle abgerufenen Daten werden umgeleitet, um die aus der
bekannten defekten Zelle gelesenen Daten zu ersetzen, um die Daten
zur Verfügung
zu stellen, welche vorher in die zugegriffene Adresse geschrieben
wurden.
-
1 zeigt
ein herkömmliches
Mehrbank-Flashspeicherbauelement 100. Insbesondere umfasst
das herkömmliche
Mehrbank-Flashspeicherbauelement 100 zwei Bänke BANK0 101 und
BANK1 102. Jede der Bänke
umfasst einen assoziierten Zeilen- und Spaltendecoder, der einen Satz
Speicherzellen in der entsprechenden Bank auswählt, auf welchen basierend
auf der vom entsprechenden Zeilen-/Spaltendecoder bereitgestellten
Adresse zugegriffen wird. Die Bank BANK0 101 weist einen
assoziierten Zeilendecoder 111 und einen Spaltendecoder 121 auf,
welche entsprechende Adressen über
Adressenleitungen ABANK0 empfangen. Analog weist die Bank BANK1 102 einen
assoziierten Zeilendecoder 112 und einen Spaltendecoder 122 auf,
welche Speicherzellen in der Bank BANK1 102 auswählen, auf
welche basierend auf Adressen zugegriffen wird, welche über Adressenleitungen
ABANK1 bereitgestellt werden.
-
Jede
der entsprechenden Bänke
umfasst ebenfalls redundante Speicherzellen, auf welche mit den
assoziierten normalen Speicherzellen zugegriffen werden kann. Entsprechend
werden, wenn Daten in normale Speicherzellen geschrieben werden
(oder aus normalen Speicherzellen gelesen werden), Daten auch in
die redundanten Speicherzellen geschrieben (oder aus diesen gelesen),
welche von den entsprechenden Zeilen-/Spaltendecodern ausgewählt werden.
-
Die
Adressen werden den entsprechenden Bänken durch die Adressenpuffer 171 und 172 zur Verfügung gestellt.
Insbesondere stellt der Adressenpuffer 171 die Adressen
für die
Zeilen-/Spaltendecoder 111, 121 zur Verfügung, welche
mit der Bank BANK0 101 assoziiert sind, während der
Adressenpuffer 172 die Adressen für die Zeilen-/Spaltendecoder 112, 122 zur
Verfügung
stellt, welche mit der Bank BANK1 102 assoziiert sind.
Entsprechend können
verschiedene Adressen den verschiedenen Bänken zur Verfügung gestellt
werden.
-
Daten
können
den entsprechenden Bänken bzw.
können
von diesen einer entsprechenden Kombination von Abtastverstärkern und
Schreibtreibern zur Verfügung
gestellt werden, welche jeder der Bänke zugeordnet ist. Insbesondere
können
in die Bank BANK0 101 zu schreibende Daten von einem Schreibtreiber 151 über Datenleitungen
BANK0DL zur Verfügung
gestellt werden, während
in die Bank BANK1 102 zu schreibende Daten von einem Schreibtreiber 152 über Datenleitungen
BANK1DL zur Verfügung
gestellt werden. Aus der Bank BANK0 101 gelesene Daten
werden einem Abtastverstärker 141 über die
Datenleitungen BANK0DL zur Verfügung
gestellt (d.h. über
die gleichen Leitungen, welche verwendet werden, um die zu schreibenden
Daten der Bank BANK0 101 zur Verfügung zu stellen). Aus der Bank
BANK1 102 gelesene Daten werden einem Abtastverstärker 142 über die
Datenleitungen BANK1DL zur Verfügung
gestellt (d.h. über
die gleichen Leitungen, welche verwendet werden, um die zu schreibenden
Daten der Bank BANK1 102 zur Verfügung zu stellen). Die in die
eine oder andere der Bänke
zu schreibenden (oder daraus zu lesenden) Daten fließen über einen
Dateneingabe-/Datenausgabepuffer 160 zum/vom Speicherbauelement.
-
Jede
der Bänke
weist eine assoziierte Redundanzschaltung auf. Insbesondere weist
die Bank BANK0 101 eine assoziierte Redundanzschaltung 131 auf,
während
die Bank BANK1 102 eine assoziierte Redundanzschaltung 132 aufweist.
Die Redundanzschaltungen 131, 132 stellen redundante
Einträge
zur Verfügung,
welche Speicherzellen innerhalb der entsprechenden Bank identifizieren,
welche als defekt bekannt sind. Insbesondere kann die Redundanzschaltung 131 bis
zu 4 Einträge
umfassen, welche jeweils eine Adresse innerhalb der Bank BANK0 101 identifizieren,
welche bekannt ist, dass sie eine defekte Speicherzelle umfasst.
Analog kann die Redundanzschaltung 132 bis zu 4 Einträge umfassen, welche
jeweils eine bekannte defekte Speicherzelle innerhalb der Bank BANK1 102 identifizieren.
Wie oben kurz ausgeführt
ist, können
die Einträge
in den Redundanzschaltungen 131, 132 verwendet
werden, um bekannten defekten Speicherzellen auszuweichen.
-
2 zeigt
einen allgemeinen, in der Bank BANK0 101 ausgeführten Schreibvorgang.
Insbesondere wird der Bank BANK0 101 eine Adresse für den Schreibvorgang
zur Verfügung
gestellt, so dass auf die mit der Adresse assoziierten normalen
und redundanten Speicherzellen innerhalb der Bank zugegriffen werden
kann. Die Adresse wird auch der Redundanzschaltung 131 zur
Verfügung
gestellt. Die Redundanzschaltung 131 vergleicht die für den Schreibvorgang
verwendete Adresse mit den Adressen von bekannten defekten Speicherzellen
in der Bank BANK0 101. Wenn die Adresse für den Schreibvorgang
mit einer der Adressen einer bekannten defekten Speicherzelle in
der Bank übereinstimmt,
stellt die Redundanzschaltung 131 Informationen zur Verfügung, welche
mit der übereinstimmenden
Adresse assoziiert sind und verwendet werden können, um einige der Daten in
eine redundante Speicherzelle anstatt in die als defekt bekannte
Speicherzelle zu schreiben.
-
Die
Redundanzschaltung 131 stellt eine Information BANK0 REPAIR
INFORMATION einem Multiplexer 153 zur Verfügung, welcher
innerhalb dem in 1 dargestellten Dateneingabe-/Datenausgabepuffer 160 angeordnet
ist. Der Multiplexer 153 bildet das Datenbit innerhalb
eines Datenworts DATA, welches sonst in die bekannte defekte Speicherzelle
geschrieben werden würde,
auf eine redundante Datenleitung ab, welche mit der redundanten Speicherzelle
gekoppelt ist, welche mit der zu beschreibenden Adresse in der Bank
BANK0 101 assoziiert ist. Entsprechend kann das in 1 dargestellte
herkömmliche
System vermeiden, dass Daten in bekannte defekte Speicherzellen
geschrieben werden, indem stattdessen Daten in redundante Speicherzellen
geschrieben werden, welche mit der gleichen Adresse assoziiert sind.
-
3 zeigt
allgemein einen auf die in 1 dargestellte
Bank BANK0 101 gerichteten Lesevorgang. Die Adresse für den Lesevorgang
wird den normalen und den redundanten Zellen in der Bank BANK0 101 zur
Verfügung
gestellt, so dass Daten von den normalen und den redundanten Zellen
abgerufen werden können.
Insbesondere werden NORMAL DATA BITS aus den normalen Speicherzellen abgerufen,
während
das REDUNDANT DATA BIT aus der redundanten Speicherzelle abgerufen
wird, welche die gleiche Adresse wie die normale Speicherzellen
aufweist, auf die zugegriffen wird. Die NORMAL DATA BITS und das
REDUNDANT DATA BIT werden dem Abtastverstärker 141 zur Verfügung gestellt.
-
Zusätzlich wird,
um die Adresse für
den Lesevorgang den normalen und redundanten Zellen der Bank BANK0 101 zur
Verfügung
zu stellen, die Adresse auch der Redundanzschaltung 131 zur
Verfügung
gestellt, welche die Einträge
umfasst, welche die bekannten defekten Speicherzellen in der Bank BANK0 101 identifizieren.
Die Redundanzschaltung 131 vergleicht die der Bank BANK0 101 zur
Verfügung
gestellte Adresse mit den Adressen, welche mit den bekannten defekten
Speicherzellen in der Bank BANK0 101 assoziiert sind. Wenn
die Adresse für den
Lesevorgang mit einer der Adressen der bekannten defekten Speicherzellen
in der Bank BANK0 101 übereinstimmt,
wird BANK0 REPAIR INFORMATION einem im Abtastverstärker 141 angeordneten
Multiplexer zur Verfügung
gestellt. Die von der Redundanzschaltung 131 bereitgestellte
BANK0 REPAIR INFORMATION identifiziert, welches Bit in den aus den normalen
Zellen der Bank BANK0 101 abgerufenen Daten DATA als defekt
bekannt ist. Entsprechend bildet der Multiplexer das von der redundanten
Zelle in der Bank BANK0 101 abgerufene Bit ab, um das als defekt
bekannte Bit der aus den normalen Speicherzellen abgerufenen Daten
DATA zu ersetzen. Der Multiplexer stellt die „reparierten" Daten DATA als Ausgabe
zur Verfügung.
-
4 zeigt
ein herkömmliches
Mehrbank-Flashspeicherbauelement 200, welches eine ähnliche
Struktur wie das in 1 dargestellte aufweist, aber
16 Bänke
anstatt 2 Bänke
umfasst. Die Funktionsweise und Struktur des in 4 dargestellten
Mehrbanksystems ist ähnlich
zu den unter Bezugnahme auf die 1 bis 3 beschriebenen. Insbesondere
weist jede der Bänke
0 bis 15 eine assoziierte Redundanzschaltung auf, welche jeweils
bis zu vier Einträge
umfassen kann. Die Einträge
in jeder der Redundanzschaltungen können eine bekannte defekte
Speicherzelle innerhalb ihrer entsprechenden Bank identifizieren.
Die Redundanzschaltung 231 umfasst beispielsweise bis zu
vier Einträge,
welche jeweils eine bekannte defekte Speicherzelle innerhalb der
Bank BANK0 identifizieren können,
welche mit der Redundanzschaltung 231 assoziiert ist. Analog
können
Redundanzschaltungen 232, 233, 234 jeweils
bis zu vier Einträge
umfassen, welche jeweils eine bekannte defekte Speicherzelle in
Bänken BANK1,
BANK14 bzw. BANK15 identifizieren können.
-
-
Die
Patentschrift
US 5.847.998 offenbart
einen Flashspeicher gemäß dem Oberbegriff
des Patentanspruchs 1 und ein Betriebsverfahren für einen solchen
Flashspeicher gemäß dem Oberbegriff
des Patentanspruchs 16.
-
Als
technisches Problem liegt der Erfindung die Bereitstellung eines
Flashspeichers des eingangs erwähnten
Typs und eines Verfahrens zum Betreiben desselben zugrunde, welche
in der Lage sind, den oben beschriebenen Stand der Technik weiter
zu verbessern.
-
Die
Erfindung löst
dieses Problem durch Bereitstellung eines Flashspeicherbauelements
mit den Merkmalen des Patentanspruchs 1 und eines Betriebsverfahrens
mit den Merkmalen des Patentanspruchs 16. Vorteilhafte Weiterbildungen
der Erfindung sind in den abhängigen
Patentansprüchen
angegeben.
-
Die
Erfindung stellt einen Flashspeicher zur Verfügung, welcher eine erste Redundanzschaltung umfasst,
die dafür
ausgelegt ist, Lesereparaturinformationen für Lesevorgänge des Flashspeichers bereitzustellen.
Zudem umfasst der Flashspeicher eine zweite Redundanzschaltung,
die von der ersten Redundanzschaltung getrennt ist und dafür ausgelegt
ist, Schreibreparaturinformationen für Schreibvorgänge des
Flashspeichers bereitzustellen.
-
Gemäß der Erfindung
kann das Flashspeicherbauelement eine einem Lesevorgang zugeordnete
Redundanzschaltung, die dafür
ausgelegt ist, Lesereparaturinformationen bereitzustellen, und eine
einem Schreibvorgang zugeordnete Redundanzschaltung umfassen, welche
dafür ausgelegt
ist, Schreibreparaturinformationen zur Verfügung zu stellen. Gemäß der Erfindung
kann das Flashspeicherbauelement zudem eine erste Redundanzschaltung, die
dafür ausgelegt
ist, eine Adresse einer defekten Speicherzelle im Flashspeicher
zu speichern, und eine zweite Redundanzschaltung umfassen, die von der
ersten Redundanz schaltung getrennt ist und dafür ausgelegt ist, die Adresse
der defekten Speicherzelle zu speichern.
-
1 zeigt
ein Blockdiagramm zur Darstellung eines herkömmlichen Mehrbank-Flashspeicherbauelements,
-
2 zeigt
ein Blockdiagramm zur Darstellung eines Schreibvorgangs für das in 1 dargestellte
herkömmliche
Mehrbank-Flashspeicherbauelement,
-
3 zeigt
ein Blockdiagramm zur Darstellung eines Lesevorgangs für das in 1 dargestellte
herkömmliche
Mehrbank-Flashspeicherbauelement,
-
4 zeigt
ein Blockdiagramm zur Darstellung eines herkömmlichen Mehrbank-Flashspeicherbauelements,
-
5 zeigt
eine hierarchische Anordnung zur Darstellung eines Zusammenhangs
zwischen in den 6A und 6B dargestellten
Blockdiagrammen gemäß Ausführungsformen
der Erfindung,
-
6A und 6B zeigen
Blockdiagramme zur Darstellung von Ausführungsformen von Mehrbank-Flashspeicherbauelementen
gemäß der vorliegenden
Erfindung,
-
7 zeigt
ein Blockdiagramm zur Darstellung von Schreibvorgängen für Ausführungsformen von
Mehrbank-Flashspeicherbauelementen gemäß der vorliegenden Erfindung
und
-
8 zeigt
ein Blockdiagramm zur Darstellung von Lesevorgängen für Ausführungsformen von Mehrbank-Flashspeicherbauelementen
gemäß der vorliegenden
Erfindung.
-
Gemäß Ausführungsformen
der Erfindung können
getrennte Redundanzschaltungen Reparaturinformationen für verschiedene
Speichervorgänge bereitstellen.
Insbesondere kann eine Redundanzschaltung Reparaturinformationen
für Schreibvorgänge zur
Verfügung
stellen (d.h. eine Schreibredundanzschaltung), während eine
andere Redundanzschaltung Reparaturinformationen für Lesevorgänge bereitstellen
kann (d.h. eine Leseredundanzschaltung). Zudem kann jede der zugeordneten
Redundanzschaltungen die passenden Reparaturinformationen für Speichervorgänge in irgendeiner
der Bänke des
Flashspeichers bereitstellen. Die Schreibredundanzschaltung kann
beispielsweise die Schreibreparaturinformationen für Schreibvorgänge irgendeiner der
Bänke des
Flashspeichers bereitstellen, während die
Leseredundanzschaltung die Lesereparaturinformationen für Lesevorgänge irgendeiner
der Bänke des
Flashspeichers bereitstellen kann.
-
Entsprechend
können
verschiedene Einträge
in einer der Redundanzschaltungen bekannte defekte Speicherzellen über die
mehreren Bänke
des Flashspeichers identifizieren, wodurch die Notwendigkeit vermieden
wird, eine jeweils einer der Bänke des
Mehrbank-Flashspeicherbauelements zugewiesene Redundanzschaltung
zu haben. Da eine einzige Redundanzschaltung während eines bestimmten Speichervorgangstyps
die Reparaturinformation für irgendeine
der Bänke
zur Verfügung
stellen kann, kann die Redundanzschaltung effizienter verwertet werden,
um Redundanz für
den Mehrbank-Flashspeicher bereitzustellen. In einigen Ausführungsformen
gemäß der Erfindung
können
beispielsweise alle bekannten defekten Speicherzellen in einer einzigen
der Bänke
angeordnet sein, während
in einer anderen Ausführungsform
der Erfindung die defekten Speicherzellen in verschiedenen Bänken des
Mehrbank-Flashspeicherbauelements angeordnet sein können. Bei
beiden Ausführungsformen
kann eine einzige Redundanzschaltung die Reparaturinformationen
(für einen
Typ von Speichervorgang) bereitstellen, wodurch der Bedarf an einer
zugewiesenen Redundanzschaltung für jede der Bänke, wie
es in herkömmlichen
Systemen umgesetzt ist, reduziert wird.
-
5 zeigt
ein hierarchisches Diagramm zur Darstellung des Zusammenhangs zwischen
den in den 6A und 6B dargestellten
Blockdiagrammen. Die 6A und 6B zeigen
insbesondere erfindungsgemäße Ausführungsformen
eines Flashspeicherbauelements mit Mehrfachbänken, welche über Signale,
wie Adressensignalleitungen, Datenleitungen, Lese-/Schreibreparaturleitungen
usw. mit einander verbunden sind.
-
Obwohl
die 6A und 6B Ausführungsformen
des Mehrbank-Flashspeicherbauelements
zeigen, welche 16 Speicherbänke
(Bank 1 bis 15) umfassen, kann die Erfindung selbstverständlich auch
mit mehr oder weniger Flashspeicherbänken ausgeführt werden. Des Weiteren versteht
sich, obwohl die 6A und 6B ein
spezielles Nummerierungsschema beispielsweise für die den gezeigten Schaltungen
und Elementen bereitgestellten Adressen- und Datenleitungen zeigen
(wie AR <21:0> und READ DL <16:0>), dass das Nummerierungsschema beispielhaft
für die
Erfindung ist, und die Erfindung in anderen Ausführungsformen unter Verwendung
von mehr oder weniger Signalleitungen umgesetzt werden kann als
in den Figuren dargestellt sind, wie in Ausführungsformen, in welchen weniger
oder mehr Speicherbänke
verwendet werden.
-
Die 6A und 6B sind
Blockdiagramme, welche Ausführungsformen
von Mehrbank-Flashspeicherbauelementen gemäß der Erfindung zeigen, welche
zugeordnete Lese- und Schreibredundanzschaltungen umfassen. Allgemein umfasst
jede der Bänke
BANK0 601 bis BANK15 604 des Flashspeicherbauelements
Speicherzellen und assoziierte redundante Speicherzellen, auf welche durch
Bereitstellen von Adresseninformationen für die entsprechenden Zeilen-
und Spaltendecoder zugegriffen werden kann, welche mit jeder der
Bänke gekoppelt
sind. Auf die in der Bank BANK0 601 enthaltenen normalen
und redundanten Speicherzellen kann beispielsweise durch Bereitstellen
einer passenden Adressierung entweder für den Lesespaltendecoder 631 und
den Lesezeilendecoder 611 (für einen Speicherlesevorgang)
oder für
den Schreibspaltendecoder 641 und den Schreibzeilendecoder 621 (während eines
Speicherschreibvorgangs) zugegriffen werden. Auf die anderen Bänke des
Flashspeicherbauelements kann unter Verwendung der entsprechenden
Lesezeilen-/Lesespaltendecoder oder
Schreibzeilen-/Schreibspaltendecoder zugegriffen werden, welche
mit jeder der Bänke
assoziiert sind.
-
In
einigen Ausführungsformen
kann, wie aus 6A ersichtlich ist, die Adresse
für den
Speichervorgang in Abhängigkeit
vom Typ des ausgeführten Vorgangs über einen
Leseadressenpuffer 690 oder einen Schreibadressenpuffer 600 bereitgestellt
werden. Für
den Fall eines Lesevorgangs stellt der Leseadressenpuffer 690 die
Adresse zugewiesenen, für Lesevorgänge verwendeten
Adressenleitungen (AR <21:0>) zur Verfügung, welche
den Lesespalten- und Lesezeilendecodern in jeder der Bänke des
Flashspeicherbauelements und einer Leseredundanzschaltung 651 bereitgestellt
werden. In einigen Ausführungsformen
gemäß der Erfindung
werden einige der Leseadressen einer Lesebankauswahlschaltung 610 zur
Verfügung
gestellt, die decodiert, auf welche Bank in dem Mehrfachbank-Flashspeicherbauelement
während
des momentanen Lesevorgangs zugegriffen werden soll.
-
Die
Leseredundanzschaltung 651 ist eine getrennte Redundanzschaltung,
welche zugewiesen ist, um in dem Speicher nur während Lesevorgängen eine
Lesereparaturinformation READ IO REPAIR <15:0> zur
Verfügung
zu stellen. Die Lesereparaturinformation kann durch die Leseredundanzschaltung 651 für Lesevorgänge bereitgestellt
werden, welche an irgendeine der Bänke im Mehrbank-Flashspeicherbauelement
gerichtet sind. Die Leseredundanzschaltung 651 umfasst
eine Mehrzahl von Einträgen,
welche jeweils eine Adresse einer bekannten defekten Speicherzelle
in irgendeiner der Bänke
des Flashspeicherbauelements speichern. Zudem umfasst der Eintrag
die Lesereparaturinformation READ IO REPAIR <15:0>,
die identifiziert, welches der Datenbits, auf die durch die Leseadresse
zugegriffen wird, als defekt bekannt ist. Insbesondere ruft, wie
in 6A dargestellt ist, ein Lesevorgang 17 Datenbits (d.h.
READ DL <16:0>) aus der adressierten
Bank ab, wobei 16 der Datenbits von normalen Speicherzellen und
1 Datenbit von der redundanten Speicherzelle bereitgestellt werden,
welche mit den normalen Speicherzellen assoziiert ist, auf weiche
zugegriffen wird.
-
Die
von der Leseredundanzschaltung 651 bereitgestellte Lesereparaturinformation
READ IO REPAIR <15:0> kann identifizieren,
welches der 16 Datenbits, die von den normalen Speicherzellen bereitgestellt
werden, auf die zugriffen wird, mit der bekannten defekten Speicherzelle
korrespondiert. Die Lesereparaturinformation READ IO REPAIR <15:0> kann daher von einer
Abtastverstärkerschaltung 660 verwendet
werden, um das von der bekannten defekten Speicherzelle bereitgestellte
Datenbit durch die von der redundanten Speicherzelle bereitgestellten Daten
zu ersetzen. Das von der Abtastverstärkerschaltung 660 bereitgestellte
16-Bit-Datenwort (d.h. einschließlich des Datenbits von der
redundanten Speicherzelle) kann über
einen Dateneingabe-/Datenausgabepuffer 680 vom Speicherbauelement ausgegeben
werden.
-
Wie
aus den 6A und 6B ersichtlich ist,
wird die Adresse über
einen Schreibadressenpuffer 600 Schreibadressenleitungen
AW <21:0> bereitgestellt. In
einigen erfindungsgemäßen Ausführungsformen
werden ausgewählte
der Adressenleitungen, wie AW <21:18>, einer Schreibbankauswahlschaltung 620 zur
Verfügung
gestellt, welche ein aktives Schreibbankauswahlsignal für die Bank
erzeugt, welches auf WRITE BANK SEL <15> zu
schreiben ist. Insbesondere wird das mit der Bank, welche die durch
die Schreibadresse AW <21:0> identifizierte Speicherzelle
enthält,
gekoppelte Schreibbankauswahlsignal für den Schreibvorgang aktiv,
während
jedes der anderen entsprechenden Schreibbankauswahlsignale inaktiv
bleibt. Eine Schreibsteuerschaltung 630 stellt ein Schreibsteuersignal
für einen Bankbeschäftigtgenerator 640 zur
Verfügung.
Der Bankbeschäftigtgenerator 640 stellt über die
Leitungen BANKBUSY <15:0> ein aktives Signal
BANKBUSY für
die Bank zur Verfügung,
welche die von der Adresse für
den Schreibvorgang identifizierten Speicherzellen umfasst, wobei
die Signale BANKBUSY der anderen Bänke inaktiv bleiben.
-
Die
Schreibadressen AW <21:0> werden auch einer
Schreibredundanzschaltung 652 zur Verfügung gestellt, welche eine
Mehrzahl von Einträgen umfasst,
welche jeweils eine Adresse einer bekannten defekten Speicherzelle
im Speicherbauelement anzeigen. Jeder der Mehrzahl von Einträgen in der Schreibredundanzschaltung 652 umfasst
eine assoziierte Schreibreparaturinformation, welche identifiziert,
welches der mit der entsprechenden Adresse der bekannten defekten
Speicherzelle assoziierte Datenbit defekt ist. Die Schreibredundanzschaltung 652 stellt
die Schreibreparaturinformation für Schreibvorgänge in irgendeiner
der Bänke
des Flashspeicherbauelements zur Verfügung.
-
Die
Schreibredundanzschaltung 652 stellt die Schreibreparaturinformation
nur für
Schreibvorgänge
und nicht für
Lesevorgänge
zur Verfügung.
Die Schreibreparaturinformation wird einer Schreibtreiberschaltung 670 zur
Verfügung
gestellt, so dass Daten, welche von der Dateneingabe-/Datenausgabepufferschaltung 680 bereitgestellt
werden, abgebildet werden können,
um die Verwendung der bekannten defekten Speicherzelle zu vermeiden,
welche durch den Eintrag in der Schreibredundanzschaltung 652 identifiziert
wird. Insbesondere kann der Schreibtreiber 670 ein vom
Dateneingabe-/Datenausgabepuffer 680 bereitgestelltes Datenbit,
welches sonst in die bekannte defekte Speicherzelle geschrieben
werden würde,
umleiten, um es in eine redundante Speicherzelle zu schreiben, welche
mit der Schreibadresse AW <21:0> assoziiert ist.
-
7 zeigt
ein Blockdiagramm zur Darstellung beispielhafter Schreibvorgänge in die
Bank BANK0 601 gemäß Ausführungsformen
der vorliegenden Erfindung. Entsprechend 7 wird die Schreibadresse
AW <21:0> dem Schreibadressenpuffer 600 zur
Verfügung
gestellt. Der Schreibadressenpuffer 600 stellt die Schreibadresse
AW <21:0> dem Schreibzeilendecoder 621 und
dem Schreibspaltendecoder 641 zur Verfügung, welche mit der Bank BANK0 601 des
Flashspeicherbauelements assoziiert sind. Die Schreibadresse AW <21:0> wird auch von der
Schreibbankauswahlschaltung 620 verwendet, um ein Schreibbankauswahlsignal
WRITE BANK SEL <0> zu erzeugen, welches
anzeigt, dass basierend auf der Schreibadresse AW <21:0> in die Bank BANK0 601 im
Flashspeicherbauelement geschrieben wird.
-
Die
Schreibadresse AW <21:0> wird auch der Schreibredundanzschaltung 652 zur
Verfügung gestellt.
Die Schreibredundanzschaltung 652 vergleicht die Schreibadresse
AW <21:0> mit jedem der darin
enthaltenen mehreren Einträge.
Jeder der Einträge
in der Schreibredundanzschaltung 652 umfasst eine Adresse
einer bekannten defekten Speicherzelle im Flashspeicherbauelement
und eine assoziierte Schreibreparaturinformation, die anzeigt, welche
der Speicherzellen als defekt bekannt ist, auf die zugegriffen werden
soll. Die Schreibreparaturinformation kann beispielsweise eine Maske
sein, welche ein Bit für
jedes der Bits im Datenwort umfasst, das während des Schreibvorgangs in
den Flashspeicher geschrieben wird. Die Schreibreparaturinformation
kann beispielsweise durch einen „hohen" logischen Pegel anzeigen, welches der
Datenbits im Datenwort sonst in die defekte Speicherzelle geschrieben
werden würde,
die mit der Schreibadresse assoziiert ist, während die verbleibenden Bits
in der Schreibreparaturinformation eine „niedrigen" logischen Pegel aufweisen.
-
Wenn
die Schreibadresse AW <21:0> mit irgendeinem der
Einträge
in der Schreibredundanzschaltung 652 übereinstimmt, wird die assoziierte Schreibreparaturinformation
WRITE REPAIR INFORMATION <15:0> dem Schreibtreiber 670 zur Verfügung gestellt.
Der Schreibtreiber 670 leitet das Datenbit, welches durch
die Schreibreparaturinformation WRITE REPAIR INFORMATION <15:0> identifiziert wird,
zu einer Wortdatenleitung, wie WRITE DL <16>,
um, welche mit der redundanten Speicherzelle gekoppelt ist, um zu
vermeiden, dass das identifizierte Datenbit in die bekannte defekte
Speicherzelle geschrieben wird. Daher kann der Schreibtreiber 670 das
betreffende Datenbit umleiten, welches in den Daten DATA <15:0> enthalten ist, so
dass es statt in die defekte Speicherzelle in die redundante Speicherzelle
geschrieben wird, welche mit der Schreibadresse AW <21:0> assoziiert ist.
-
8 zeigt
ein Blockdiagramm zur Darstellung beispielhafter Lesevorgänge für die Bank BANK0 601 gemäß Ausführungsformen
der vorliegenden Erfindung. Wie aus 8 ersichtlich
ist, wird eine Leseadresse AR <21:0> dem Leseadressenpuffer 690 zur
Verfügung
gestellt, welcher die Leseadresse AR <21:18> an
die Lesebankauswahlschaltung 610 ausgibt, welche ein Lesebankauswahlsignal für den Lesezeilen-
und Lesespaltendecoder 611 bzw. 631 zur Verfügung stellt.
-
Die
Leseadresse AR <21:0> wird auch der Leseredundanzschaltung 651 zur
Verfügung
gestellt, die eine Mehrzahl von Einträgen umfasst, die Adressen von
bekannten defekten Speicherzellen und assoziierte Schreibreparaturinformationen
speichern, welche zum Umleiten von Daten, die aus der redundanten
Speicherzelle gelesen werden, zu einer Datenleitung verwendet werden
können,
welche sonst Daten von der als defekt bekannten Speicherzelle zur Verfügung stellen
würde.
Insbesondere kann die Lesereparaturinformation READ REPAIR INFORMATION <15:0> über Lesereparaturleitungen
READ REPAIR LINES <15:0> dem Abtastverstärker 660 zur Verfügung gestellt
werden. Die Lesereparaturinformation READ REPAIR INFORMATION <15:0> kann beispielsweise
ein 16-Bit-Wort sein, welches identifiziert, welche der Bitpositionen
der aus dem Speicher gelesenen Daten mit der bekannten defekten
Speicherzelle korrespondiert. Der Abtastverstärker 660 kann die
von der bekannten defekten Speicherzelle bereitgestellten Daten
durch die von der redundanten Speicherzelle bereitgestellten Daten
ersetzen.
-
Defekte
Speicherzellen können
durch Testen jeder der Speicherzellen während der Herstellung des Flashspeicherelements
identifiziert werden. Nach der Bestimmung, welche Speicherzellen
defekt sind, können
die Schreibredundanzschaltung 652 und die Leseredundanzschaltung 651 beispielsweise unter
Verwendung von Schmelzsicherungen programmiert werden, um die Adressen
der Speicherzellen, welche als defekt bestimmt sind, und die Reparaturinformationen
zu speichern, welche mit jeder der Adressen assoziiert sind. Entsprechend
sind die in die getrennten Lese- und Schreibredundanzschaltungen 651, 652 programmierten
Adressen und Reparaturinformationen gleich.
-
Während eines
Schreibvorgangs in das Flashspeicherbauelement kann die in der Schreibredundanzschaltung 652 gespeicherte
Schreibreparaturinformation verwendet werden, um Daten statt in die
defekte Speicherzelle in die redundante Speicherzelle zu schreiben,
welche mit der Schreibadresse in der ausgewählten Bank assoziiert ist.
Wenn ein Lesevorgang mit der gleichen Adresse ausgeführt wird,
wird die in der Leseredundanzschaltung 651 gespeicherte
Lesereparaturinformation verwendet, um die von der bekannten defekten
Speicherzelle bereitgestellten Daten durch die Daten zu ersetzen,
welche aus der redundanten Speicherzelle abgerufen werden, in welche
die Daten während
des vorherigen Schreibvorgangs mit der gleichen Adresse geschrieben
wurden. Entsprechend wird die Schreibredundanzschaltung 652 während Schreibvorgängen verwendet,
während
die Leseredundanzschaltung 651 während Lesevorgängen verwendet
wird.
-
Entsprechend
kann, wie oben ausgeführt
ist, in einigen Ausführungsformen
der vorliegenden Erfindung die Schreibredundanzschaltung 652 zugewiesen
werden, um Schreibreparaturinformationen für Schreibvorgänge im Flashspeicherbauelement bereitzustellen,
während
die Leseredundanzschaltung 651 zugewiesen wird, um Lesereparaturinformation
für Lesevorgänge im Flashspeicherbauelement
bereitzustellen. Des Weiteren können
die Leseredundanzschaltung 651 und die Schreibredundanzschaltung 652 jeweils
Einträge
für irgendeine
der Mehrzahl von Bänken
im Flashspeicherbauelement umfassen. Die Einträge in der Leseredundanzschaltung 651 und
in der Schreibredundanzschaltung 652 können beispielsweise anzeigen,
dass eine defekte Speicherzelle in irgendeiner der Bänke BANK0 601, BANK1 602,
..., BANK14 603 und BANK15 604 des Flashspeicherbauelements
vorhanden ist. Entsprechend stellt, wenn ein Schreibvorgang auf
irgendeine der Bänke
gerichtet ist, die Schreibredundanzschaltung 652 die Schreibreparaturinformation
bereit, um die Verwendung der bekannten defekten Speicherzelle zu
vermeiden. Analog stellt die Leseredundanzschaltung 651 die
Lesereparaturinformation für
Lesevorgänge
bereit, die auf irgendeine der Bänke
gerichtet sind, so dass die von der redundanten Speicherzelle bereitgestellten
Daten die aus der bekannten defekten Speicherzelle abgerufenen Daten
ersetzen.
-
Wie
der Fachmann versteht, kann ein Flashspeicherbauelement gemäß der vorliegenden
Erfindung einen sogenannten Read-While-Write-Vorgang unterstützen. Insbesondere kann ein
Flashspeicherbauelement gemäß der vorliegenden
Erfindung einen Lesevorgang ausführen,
während
ein Schreibvorgang in einer anderen Bank des Flashspeichers ausgeführt wird.
Zudem versteht der Fachmann, dass das Flashspeicherbauelement gemäß der vorliegenden
Erfindung ein Flashspeicherbauelement von einem NOR- oder einem
NAND-Typ sein kann.
-
Viele
Veränderungen
und Modifikationen können
vom Fachmann ausgeführt
werden, ohne vom Wesen und Umfang der Erfindung abzuweichen. Daher
versteht es sich, dass die dargestellten Ausführungsformen nur als Beispiele
und nicht zur Beschränkung
der durch die nachfolgenden Patentansprüche definierten Erfindung zu
verstehen sind.