DE4223273C2 - Halbleiterspeichereinrichtung und Betriebsverfahren für eine solche - Google Patents
Halbleiterspeichereinrichtung und Betriebsverfahren für eine solcheInfo
- Publication number
- DE4223273C2 DE4223273C2 DE4223273A DE4223273A DE4223273C2 DE 4223273 C2 DE4223273 C2 DE 4223273C2 DE 4223273 A DE4223273 A DE 4223273A DE 4223273 A DE4223273 A DE 4223273A DE 4223273 C2 DE4223273 C2 DE 4223273C2
- Authority
- DE
- Germany
- Prior art keywords
- blocks
- data
- decoder
- memory cell
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Read Only Memory (AREA)
- Dram (AREA)
- Memory System (AREA)
- Semiconductor Memories (AREA)
Description
Die vorliegende Erfindung bezieht sich auf eine Halbleiter
speichereinrichtung nach dem Oberbegriff des Patentanspruchs 1 und ein Betriebsverfahren für eine solche.
Einige Halbleiterspeichereinrichtungen haben Fehlerkorrektur
schaltungen (im folgenden abgekürzt mit "ECC" bezeichnet), die
darin für den Fall, daß es beim Auslesen der Daten aus den
Speicherzellarrays in den ausgelesenen Daten einen Fehler gibt,
zu dessen Korrektur vorgesehen sind.
Allgemein kann das Vorhandensein oder das Nichtvorhandensein
eines Fehlers in Daten mit einer beliebigen Bitlänge durch
Hinzufügen von 1-Bit-Daten, die als Paritätsbits bezeichnet
werden, zu den Daten nachgewiesen werden. Dieses Nachweisver
fahren wird als Paritätskontrolle bezeichnet. Bei der Pari
tätskontrolle wird der Wert des Paritätsbits so vorgegeben, daß
die Anzahl von Bits des Wertes "1" der Daten, innerhalb derer
ein Fehler nachzuweisen ist, und des Wertes des Paritätsbits
eine gerade Zahl (oder eine ungerade Zahl) ist. Dadurch kann
das Vorhandensein/Nichtvorhandensein eines Fehlers von 1 Bit
durch Prüfen der Anzahl von Bits des Wertes "1" in allen Bits
einschließlich des Paritätsbits nachgewiesen werden.
Bei der Paritätskontrolle ist es jedoch nicht möglich, nachzu
weisen, welches Bit einen Fehler aufweist, so daß der Fehler
nicht korrigiert werden kann. Daher wird, um einen Fehler nach
zuweisen und denselben zu korrigieren, eine Mehrzahl von Bits
von Werten zu den Daten addiert, in denen ein Fehler nachzuwei
sen ist. Die Daten aus einer Mehrzahl von Bits sind redundante
Bits zum Nachweis und zur Korrektur eines Fehlers, die auch
Prüfbits genannt werden. Im folgenden werden die Daten der
Prüfbits als Paritätsdaten bezeichnet. Die Daten, zu denen die
Paritätsbits addiert werden, werden als Fehlerkorrekturcode be
zeichnet.
Allgemein müssen, wenn die Anzahl von Bits von Daten, in denen
ein Fehler korrigiert werden muß, mit m und die Anzahl der Bits
von Paritätsdaten mit k bezeichnet wird, diese Anzahlen von Bits
der folgenden Gleichung genügen:
2k-1 m + k.
Allgemein ist es zur Korrektur eines Fehlers von 1 Bit, der in
32-Bit-Daten vorkommt, erforderlich, Paritätsdaten von 6 Bit zu
addieren, und zur Korrektur eines Fehlers von 1 Bit, der in
Werten von 8 Bit vorkommt, werden 4 Bit Paritätsdaten benötigt.
Ein ECC wendet auf die gelesenen Daten und die entsprechenden
Paritätsdaten eine vorgegebene Behandlung an, um einen Fehler
der gelesenen Daten zu korrigieren, und gibt die Daten nach der
Korrektur als endgültige gelesene Daten aus. Das Prinzip der
Fehlerkorrektur und ein Verfahren zu deren Ausführung in einem
ECC sind bekannt und wurden z. B. in der japanischen Zeitschrift "Interface", August 1984,
S. 236 bis 250 beschrieben, so daß hier keine spezielle Be
schreibung dafür gegeben wird.
Solche ECCs sind in ihrer Anwendung auf sogenannte Masken-ROMs
(Nur-Lese-Speicher) derzeit weit verbreitet, bei denen Daten
vorab im Herstellungsverfahren eingeschrieben werden und nach
der Herstellung nur ein Auslesen der Daten möglich ist. Jüngst
wurde es auch vorgeschlagen, ECC auf Speichereinrichtungen an
zuwenden, die ein Überschreiben der Daten nach der Herstellung
ermöglichen, etwa auf einen EEPROM (elektrisch löschbaren und
programmierbaren ROM).
Fig. 5 ist ein schematisches Blockschaltbild, das ein Beispiel
des Gesamtaufbaus eines herkömmlichen Masken-ROM mit ECC dar
stellt. Ein solches Masken-ROM mit ECC ist aus
JEEE Journal of Solid-State Circuits, Vol. SC-20, No. 5,
Oktober 1985, S. 958-963 bekannt. Unter Bezugnahme auf Fig. 5 wird nachfolgend der Auf
bau des herkömmlichen Masken-ROM mit ECC beschrieben.
Der Masken-ROM enthält ein Speicherzellarray (nachfolgend als
normales Speicherzellarray bezeichnet) 1, in dem die ursprüng
lichen auszulesenden Daten gespeichert sind, und ein Speicher
zellarray (nachfolgend als Paritäts-Speicherzellarray bezeich
net) 2, in dem die zur Korrektur eines Fehlers in den aus dem
Speicherzellarray 1 auszulesenden Daten erforderlichen Pari
tätsdaten gespeichert sind.
Das normale Speicherzellarray 1 enthält acht Blöcke DB0 bis
DB7, die 8-Bit-Daten entsprechen. Ähnlich enthält das Paritäts-
Speicherzellarray 2 vier Blöcke DP0 bis DP3, die 4-Bit-Pari
tätsdaten entsprechen.
Eine Mehrzahl von (z. B. 1024) Wortleitungen WL ist gemeinsam
für das normale Speicherzellarray 1 und das Paritäts-Speicher
zellarray 2 vorgesehen. Eine Mehrzahl von (z. B. 128) Bitlei
tungen BL ist für jeden der zwölf Blöcke DB0 bis DB7, DP0 bis
DP3 vorgesehen.
Diese Wortleitungen WL sind mit einem x-Dekoder 3 verbunden,
und diese Bitleitungen BL sind mit einem y-Gatter 7 verbunden.
Ein Adreßpuffer 5 formiert die Wellenform und verstärkt von
außen an die Adreßeingangsanschlüsse A0 bis An angelegte Adreß
signale und legt diese an den x-Dekoder und den y-Dekoder 4 an.
Der x-Dekoder 3 dekodiert ein Adreßsignal vom Adreßpuffer 5, so
daß nur eine der Mehrzahl von Wortleitungen WL aktiviert wird,
die dem Adreßsignal entspricht.
Der y-Dekoder 4 dekodiert ein Adreßsignal vom Adreßpuffer 5 und
steuert das y-Gatter 7.
Genauer ist das y-Gatter 7 in acht Blöcke YGD0 bis YGD7, die
den acht Speicherzellarrayblöcken DB0 bis DB7 entsprechen, und
vier Blöcke YGP0 bis YGP3, die den vier Paritäts-Speicherzell
arrayblöcken DP0 bis DP3 entsprechen, geteilt. Jeder der acht
Blöcke YGD0 bis YGD7 im y-Gatter 7 verbindet in Reaktion auf
die Dekoder-Ausgabe des y-Dekoders 7 elektrisch nur eine der
Bitleitungen BL eines entsprechenden normalen Speicherzell
arrayblocks mit einer Leseverstärkergruppe 8. Analog verbindet
jeder der verbleibenden vier Blöcke YGP0 bis YG03 im y-Gatter 7
in Reaktion auf eine Dekoder-Ausgabe des y-Dekoders 4 elek
trisch nur eine der Bitleitungen BL eines entsprechenden Pari
täts-Speicherzellarrayblocks mit der Leseverstärkergruppe 8.
Die Leseverstärkergruppe 8 enthält acht Leseverstärker SAD0 bis
SAD7 und vier Leseverstärker SAP0 bis SAP3, die den acht y-Gat
terblöcken YGD0 bis YGD7 bzw. den vier y-Gatterblöcken YGP0 bis
YGP3 entsprechen. Jeder dieser zwölf Leseverstärker SAD0 bis
SAD7 und SAP0 bis SAP3 liest und verstärkt ein Signal auf einer
Bitleitung BL, die damit elektrisch durch einen entsprechenden
y-Gatterblock verbunden ist, und liefert dieses an die ECC9.
Jeder der normalen Speicherzellarrayblöcke DB0 bis DB7 und je
der der Paritäts-Speicherzellarrayblöcke DP0 bis DP3 enthält
Speicherzellen MC, die in einer Matrix aus einer Mehrzahl von
Zeilen und einer Mehrzahl von Spalten angeordnet sind. Die
Speicherzellen MC, die in der gleichen Zeile angeordnet sind,
sind mit derselben Wortleitung WL verbunden, und die Speicher
zellen MC, die in der gleichen Spalte angeordnet sind, sind mit
derselben Bitleitung BL verbunden.
Wenn eine Wortleitung WL aktiviert wird, erscheint die Poten
tialänderung, die dem gespeicherten Wert jeder Speicherzelle
MC, die mit jener Wortleitung WL verbunden ist, entspricht, auf
der mit jener Speicherzelle MC verbundenen Bitleitung. Dement
sprechend werden, angenommen, daß die Anzahl von Speicherzell
spalten, die in jedem normalen Speicherzellarrayblock DB0 bis
DB7 und jedem Paritäts-Speicherzellarrayblock DP0 bis DP3 ent
halten sind, N sei, die Speicherwerte von (12 × N) Speicherzel
len MC, die mit derselben Wortleitung WL verbunden sind,
gleichzeitig an das y-Gatter 7 angelegt. Jedoch verbindet jeder
der y-Gatterblöcke YGD0 bis YGD7, die entsprechend dem normalen
Speicherzellarray 1 angeordnet sind, elektrisch nur eine Bit
leitung BL in einem entsprechenden Speicherzellarrayblock mit
einem entsprechenden Leseverstärker, und jeder der korrespon
dierend zum Paritäts-Speicherzellarray 2 vorgesehenen y-Gatter
blöcke YGP0 bis YGP3 verbindet nur eine Bitleitung BL in einem
entsprechenden Paritäts-Speicherzellarrayblock mit einem ent
sprechenden Leseverstärker. Im Ergebnis dessen verstärkt die
Leseverstärkergruppe 8 jeweils eines der N Datensignale, die
vom Speicherzellarrayblock DB0 an den y-Gatterblock YGD0 an
gelegt werden, eines der N Datensignale, die vom Speicherzell
arrayblock DB1 an den y-Gatterblock YGD1 angelegt werden . . .,
und eines der N Datensignale, die vom Speicherzellarrayblock
GB7 an den y-Gatterblock YGD7 angelegt werden, eines der N
Datensignale, die vom Paritäts-Speicherzellarrayblock DP0 an
den y-Gatterblock YGP0 angelegt werden, . . ., und eines der N
Datensignale, die vom Paritäts-Speicherzellarrayblock DP3 an
den y-Gatterblock YGP3 angelegt werden, als Eingangssignale D0,
D1, . . ., D7, P0, . . ., P3 des ECC9.
Der Speicherwert einer Speicherzelle MC, die mit der gleichen
Wortleitung WL verbunden ist, wird damit von jedem der normalen
Speicherzellarrayblöcke DB0 bis DB7 und jedem der Paritäts-
Speicherzellarrayblöcke DP0 bis DP3 an den ECC9 ausgelesen.
Die vorbestimmten Paritätswerte bzw. -daten werden vorab in das
Paritäts-Speicherzellarray 2 eingeschrieben, wenn dieses herge
stellt wird, so daß der Nachweis und die Korrektur eines Feh
lers von 1 Bit, der in den 12-Bit-Daten D0 bis D7, P0 bis P3,
die gleichzeitig aus dem normalen Speicherzellarray 1 und dem
Paritäts-Speicherzellarray 2 ausgelesen werden, vorkommt, durch
einen durch den ECC9 ausgeführten Vorgang ausgeführt werden
kann. Es ist selbstverständlich, daß die in das Paritäts-Spei
cherzellarray 2 einzuschreibenden Paritätswerte entsprechend
den Speicherwerten des Speicherzellarray 1 bestimmt werden.
Die nach außen auszulesenden Daten werden vorab in das normale
Speicherzellarray 1 gespeichert, wenn dieses hergestellt wird.
Aus verschiedenen Gründen können jedoch die aus dem Speicher
zellarray 1 ausgelesenen Daten nicht immer korrekte Auslese
werte sein. In einem solchen Falle werden die Daten aus dem
Speicherzellarray 1 durch die Tätigkeit des ECC9 in korrekte
Daten korrigiert.
Dementsprechend werden an den ECC9 auszulesende 8-Bit-Daten
und 4-Bit-Paritätsdaten P0 bis P3, die zur Korrektur eines
Fehlers von 1 Bit, der in den 8-Bit-Daten vorkommt, erforder
lich sind, gleichzeitig angelegt. Der ECC9 führt den vorbe
stimmten Betriebsvorgang in Anwendung auf die 8-Bit-Daten D0
bis D7 und die 4-Bit-Paritätsdaten P0 bis P3 aus, und wenn es
in einem der Bit der gelesenen 8-Bit-Daten D0 bis D7 einen
Fehler gibt, korrigiert er diesen, und wenn es keinen Fehler
gibt, legt er die Daten so, wie sie sind, an den Ausgabepuffer
10 an. Der Ausgabepuffer 10 verstärkt ein Ausgangssignal der
ECC9, d. h. die 8-Bit-Daten D0′ bis D7′ nach der Korrektur, und
liefert diese an die Datenausgabeanschlüsse DT0 bis DT7.
Der Ausgabepuffer 10 enthält acht Pufferschaltungen OUT0 bis
OUT7, die den 8-Bit-Daten D0′ bis D7′, die durch den ECC9 aus
gegeben werden, entsprechen. Diese acht Pufferschaltungen OUT0
bis OUT7 sind jeweils mit den acht Datenausgabeanschlüssen DT0
bis DT7 verbunden.
Eine Steuerschaltung 6 steuert den Betrieb des Adreßpuffers 5,
des Ausgabepuffers 10 o.ä. in Reaktion auf ein extern an
Steuersignaleingangsanschlüsse CTL angelegtes Steuersignal.
Fig. 6 ist ein Teilschaltbild, das ein spezielles Beispiel für
den Aufbau eines Speicherzellarray eines Masken-ROM darstellt.
Nachfolgend wird unter Bezugnahme auf Fig. 6 eine typische
Speicherzellarraystruktur eines Masken-ROM beschrieben.
In Fig. 6 ist ein sogenannter ROM vom NAND-Typ gezeigt, in
dem, wenn das Potential einer Wortleitung niedrigen Pegel an
nimmt, der Speicherwert einer mit jener Wortleitung verbun
denen Speicherzelle ausgelesen wird.
Gemäß Fig. 6 sind schräg verlaufende Leitungen mit MOS-Tran
sistoren verbunden, die durchgängig vom Verarmungstyp sind.
Reihenschaltungen, in deren jeder insgesamt achtzehn NMOS-Tran
sistoren MT, STD, STE vorhanden sind, sind parallel zueinander
zwischen jeweils eine Bitleitung BL1, BL2 und Masse GND ge
schaltet. Von den achtzehn Transistoren funktioniert jeder der
näher zu Masse GND liegenden sechzehn Transistoren MT als eine
Speicherzelle MC.
Die mit derselben Bitleitung verbundenen Serienschaltungen sind
als Zweiereinheiten mit gemeinsamen Wortleitungen verbunden.
Das heißt, daß die jeweiligen Wortleitungen WL1 bis WL32 mit
den Gates von zwei Speichertransistoren MT, die mit der Bitlei
tung BL1 verbunden sind, den Gates von zwei Speichertransisto
ren MT, die mit der Bitleitung BL2 verbunden sind, . . . gemein
sam verbunden sind. Auf diese Weise sind tatsächlich in einem
normalen Speicherzellarray und einem Paritäts-Speicherzellarray
eine Mehrzahl von Speichertransistoren MT in einer aus Zeilen
und Spalten bestehenden Matrix angeordnet, wobei die in der
gleichen Spalte angeordneten Speichertransistoren MT in einer
jeweils vorbestimmten Anzahl (beim oben beschriebenen Beispiel
16) miteinander in Reihe geschaltet sind, und andererseits sind
die in derselben Zeile angeordneten Speichertransistoren MT je
weils zu zweien mit derselben Bitleitung verbunden. D. h., in
der Praxis sind entsprechend jeweils einer Bitleitung zwei
Speicherzellspalten vorgesehen. Weiterhin sind zusätzlich zu
den Wortleitungen zwei Signalleitungen SG1 bis SG4, die sich in
Zeilenrichtung erstrecken, jeweils für eine Gruppe von sechzehn
Speicherzellenzeilen vorgesehen. Die Signalleitungen werden im
folgenden als Gateauswahlleitungen bezeichnet.
Die Gates von zwei Transistoren STE und STD, die in Reihe mit
einander geschaltet sind, sind jeweils mit der einen oder der
anderen der beiden entsprechenden Gateauswahlleitungen SG1 bis
SG4 verbunden. Der Typ der Speicherzellen (Verarmungstyp oder
Anreicherungstyp), die mit derselben Gateauswahlleitung verbun
den sind, unterscheidet sich jeweils zwischen zwei einander be
nachbarten Speicherzellspalten.
Der Typ des Speichertransistors MT wird entsprechend dem darin
zu speichernden Wert bestimmt. Speziell wird es für einen Spei
chertransistor MT, in dem der Wert "0" gespeichert werden soll,
vorgegeben, daß er vom Anreicherungstyp ist, und für einen
Speichertransistor MT, in dem der Wert "1" zu speichern ist,
wird vorgegeben, daß er vom Verarmungstyp ist. Eine derartige
Typvorgabe der jeweiligen Speichertransistoren MT wird durch
Einstellen der Störstellenkonzentration im Kanalgebiet des
Speichertransistors MT mittels Ionenimplantation bei der Her
stellung vorgenommen.
Jede der Bitleitungen BL1 und BL2 und jede der Wortleitungen
WL1 bis WL32 in Fig. 6 entspricht einer Bitleitung BL und
einer Wortleitung WL in Fig. 5.
Der x-Dekoder 3 nach Fig. 5 aktiviert eine Gateauswahlleitung
zusammen mit einer Wortleitung in Reaktion auf ein Adreßsignal
vom Adreßpuffer 5. Im Falle eines NAND-ROM sind die Potentiale
der aktivierten Gateauswahlleitung und der aktivierten Wortlei
tung auf hohem Pegel (höher als der Schwellspannungswert eines
als Speichertransistor verwendeten Transistors vom Anreiche
rungs- bzw. "enhancement"-Typ) bzw. niedrigem Pegel, d. h. 0 V.
Ein MOS-Transistor vom Anreicherungstyp ist im AUS-Zustand,
wenn die Gatespannung 0 V beträgt, und ein MOS-Tansistor vom
Verarmungstyp ist im EIN-Zustand, wenn die Gatespannung 0 V
beträgt. Demnach sind beispielsweise in Fig. 6, wenn das
Potential der Wortleitung WL1 auf niedrigem Pegel ist und die
Potentiale alle anderen Wortleitungen auf hohem Pegel sind, die
Speichertransistoren MT, die mit irgendeiner Wortleitung außer
der Wortleitung WL1 verbunden sind, im EIN-Zustand. Anderer
seits wird der EIN/AUS-Zustand der jeweils mit der Wortleitung
WL1 verbundenen Speichertransistoren MT entsprechend dem Tran
sistortyp bestimmt. D. h., ein mit der Wortleitung WL1 verbun
dener Speichertransistor MT vom Anreicherungstyp nimmt den
AUS-Zustand an, aber ein mit der Wortleitung WL1 verbundener Spei
chertransistor MT vom Verarmungstyp nimmt den EIN-Zustand an.
Wenn andererseits das Potential einer Gateauswahlleitung SG1
der Gateauswahlleitungen SG1 und SG2 auf hohem Pegel ist und
die Potentiale aller anderen Gateauswahlleitungen auf niedri
geren Pegel sind, nehmen von den mit den Gateauswahlleitungen
außer der Gateauswahlleitung SG1 verbundenen Transistoren nur
die Transistoren STE vom Anreicherungstyp den AUS-Zustand an,
und die Transistoren STD vom Verarmungstyp nehmen den
EIN-Zustand ein. Andererseits nehmen alle Transistoren STD, STE,
die mit der Gateauswahlleitungen SG1 verbunden sind, den
Ein-Zustand an.
Dementsprechend variiert das Potential jeder der Bitleitungen
BL1, BL2 entsprechend dem Typ des Speichertransistors MT, der
in einer mit ihr verbundenen Speicherzellenspalte vorhanden und
mit der Gateauswahlleitung SG1 und einer aktivierten Wortlei
tung WL1 verbunden ist. D. h., wenn der Speichertransistor MT
vom Anreicherungstyp ist, fließt kein Strom zwischen einer ent
sprechenden Bitleitung und Masse GND. Wenn andererseits der
Speichertransistor MT vom Verarmungstyp ist, fließt ein Strom
von einer entsprechenden Bitleitung auf Masse GND. Der Fall,
daß in der Bitleitung ein Strom fließt, entspricht dem Wert
"1", und der Fall, daß in der Bitleitung kein Strom fließt,
entspricht dem Wert "0". Demgemäß wird auf jeder Bitleitung der
gespeicherte Wert einer Speicherzelle, die mit einer aktivier
ten Wortleitung WL1 verbunden ist, gelesen.
Wenn andererseits das Potential der Gateauswahlleitung SG2 auf
hohem Pegel und das Potential aller anderen Gateauswahlleitun
gen auf niedrigem Pegel ist, nehmen die mit der Gateauswahllei
tung SG2 verbundenen Transistoren zusammen den EIN-Zustand ein,
und diejenigen der beiden Arten von Transistoren STD und STE,
die mit den Gateauswahlleitungen außer der Gateauswahlleitung
SG2 verbunden sind, die vom Anreicherungstyp sind, nehmen den
AUS-Zustand an, und diejenigen vom Verarmungstyp werden in den
EIN-Zustand gebracht. Damit wird in diesem Falle - abweichend
vom oben beschriebenen Fall - das Vorhandensein/Nichtvorhanden
sein eines Stromflusses in jeder der Bitleitungen BL1 und BL2
entsprechend dem Typ eines in einer Speicherzellspalte, deren
Gateauswahlleitung SG1, mit der die Transistoren STD vom Ver
armungstyp verbunden sind, mit der Wortleitung WL1 verbunden
ist, enthaltenen Speichertransistors MT bestimmt.
Wie Fig. 5 zeigt, weisen jeweilige Leseverstärker SAD0 bis
SAD7, SAP0 bis SAP3 spezifisch das Vorhandensein/Nichtvorhan
densein eines Stromflusses in den elektrisch mit ihnen über das
y-Gatter 7 verbundenen Bitleitungen nach.
Wie oben beschrieben, erscheint, wenn eine Wortleitung und eine
der beiden Gateauswahlleitungen, die entsprechend dieser Wort
leitung vorgesehen sind, aktiviert sind, auf jeder Bitleitung
der Speicherwert einer der beiden Speicherzellen MT, die mit
dieser Bitleitung und dieser Wortleitung verbunden sind.
Beim oben beschriebenen Masken-ROM ist ein Ausgang des x-Deko
ders 3 nur in einer Richtung vorgesehen, aber ein Speicherzell
array kann in zwei Blöcke aufgeteilt sein, und ein x-Dekoder
kann zwischen diesen beiden Blöcken angeordnet sein und Aus
gänge zu diesen beiden Blöcken haben. Fig. 7 ist ein schema
tisches Blockschaltbild, das den Gesamtaufbau eines Masken-ROM
mit einer Fehlerkorrekturfunktion mit einem entsprechenden Auf
bau zeigt.
In Fig. 7 ist der Fall dargestellt, daß die gleichzeitig nach
außen auszulesenden Daten 8-Bit-Daten sind.
In bezug auf Fig. 7 ist festzustellen, daß bei der Herstellung
des Masken-ROM die ursprünglichen Daten, die nach außen auszu
lesen sind, und Paritätsdaten vorab zusammen in die Speicher
zellarrayblöcke 10a und 10b eingeschrieben werden.
Jeder der Speicherzellarrayblöcke 10a und 10b enthält eine
Mehrzahl (hier vier) von Subblöcken 10a-0 bis 10a-3 und 10b-0
bis 10b-3.
Jeder der Subblöcke 10a-0 bis 10a-3 und 10b-0 bis 10b-3 enthält
zwölf Spalten von Speicherzellen, die einer Gesamtmenge von 12
Bit Daten entsprechen, d. h. 8-Bit-Daten, die gleichzeitig
extern ausgelesen werden, und 4-Bit-Paritätsdaten, die zur
Korrektur eines Fehlers der 8-Bit-Daten benötigt werden. Das
heißt, in jedem der Subblöcke 10a-0 bis 10a-3, 10b-0 bis 10b-3
werden der niedrigstwertige Bitwert, der Bitwert der zweiten
Ordnung, . . ., der höchstwertige Bitwert in den extern auszu
lesenden Daten in der ersten Spalte, der zweiten Spalte,
bzw. der achten Spalte der Speicherzellen gespeichert, und der
niedrigstwertige Bitwert, der zweite Bitwert, . . ., der höchst
wertige Bitwert der 4-Bit-Paritätsdaten, die für die 8-Bit-Daten
geeignet sind, werden in den Speicherzellen der neunten
Spalte, der zehnten Spalte, . . ., bzw. der zwölften Spalte
gespeichert.
Im Speicherzellarrayblock 10a ist eine Wortleitung WL gemeinsam
für die Subblöcke 10a-0 bis 10a-3 vorgesehen, und analog ist
eine Wortleitung WL im Speicherzellarrayblock 10b gemeinsam für
die Subblöcke 10b-0 bis 10b-3 vorgesehen. Eine Wortleitung WL
des Speicherzellarrayblocks 10a und eine Wortleitung WL des
Speicherzellarrayblocks 10b entsprechen einander eins zu eins.
Der Schaltungsaufbau innerhalb der Speicherzellarrayblöcke 10a
und 10b ist derselbe wie derjenige des oben beschriebenen
Masken-ROM, so daß seine Beschreibung hier nicht wiederholt
wird. In Fig. 7 sind - ebenso wie in Fig. 5 - zur Verein
fachung Gateauswahlleitungen nicht gezeigt.
Ebenso sind die Funktionsweisen des Adreßpuffers 5, der Steuer
schaltung 6, der Leseverstärkergruppe 8, des ECC9 und des Aus
gabepuffers 10 dieselben wie diejenigen beim oben beschriebenen
Masken-ROM.
Beim Masken-ROM des beschriebenen Beispiels reagiert der x-De
koder 3 auf ein Adreßsignal vom Adreßpuffer 5, um eine Wortlei
tung WL in einem der Speicherzellarrayblöcke 10a und 10b auszu
wählen und zu aktivieren. In einem der Speicherzellarrayblöcke
10a und 10b erscheinen damit die Speicherwerte der in der glei
chen Zeile angeordneten jeweiligen Speicherzellen MC auf ent
sprechenden Bitleitungen BL.
Die y-Gatter 7a und 7b, die durch den Dekoderausgang des y-De
koders 4 gesteuert werden, verbinden selektiv elektrisch die
zwölf Bitleitung BL, die in einem der Subblöcke 10a-0 bis 10a-3
im Speicherzellarrayblock 10a enthalten sind, oder die zwölf
Bitleitungen BL, die in einem der Subblöcke 10b-0 bis 10b-3 im
Speicherzellarrayblock 10b enthalten sind, mit der Lesever
stärkergruppe 8. Genauer steuert der y-Dekoder 4 die y-Gatter
7a und 7b so, daß die zwölf Bitleitungen BL und die Lesever
stärkergruppe 8 nur über eines der y-Gatter 7a und 7b elek
trisch verbunden sind.
Damit werden nur die 12-Bit-Werte D0 bis D7, P0 bis P3, die auf
den zwölf Bitleitungen in einem der Subblöcke 10a-0 bis 10a-3
im Speicherzellarrayblock 10a oder einem der Subblöcke 10b-0
bis 10b-3 im Speicherzellarrayblock 10b erscheinen, an die
Leseverstärkergruppe 8 angelegt. In den 12-Bit-Daten werden die
8-Bit-Daten d0 bis d7, die aus den Speicherzellen zum Speichern
der ursprünglichen Daten zum externen Auslesen gelesen werden,
und die 4-Bit-Daten p0 bis p3, die aus den zum Speichern der
Paritätsdaten vorgesehenen Speicherzellen ausgelesen werden und
zum Korrigieren eines Fehlers der 8-Bit-Daten benötigt werden,
jeweils durch die Leseverstärkergruppe 8 verstärkt und werden
8-Bit-Daten D0 bis D7 und Paritätsdaten P0 bis P3, die an den
ECC9 geliefert werden.
Im Ergebnis dessen werden, auch wenn es in einem Bit in den aus
dem Speicherzellarray 10a oder 10b an die Leseverstärkergruppe
8 ausgelesenen 12-Bit-Daten einen Fehler gibt, Originaldaten D0
bis D7, die nicht Paritätsdaten sind, der 12-Bit-Daten mit
korrekten logischen Werten an die Datenausgabeanschlüsse DT0
bis DT7 geliefert.
Nachfolgend wird unter Bezugnahme auf die Fig. 8 und 9 der
Aufbau des x-Dekoders 3 in einem herkömmlichen Masken-ROM be
schrieben. Fig. 8 ist ein Blockschaltbild, das schematisch den
Aufbau des x-Dekoders 3 in der Abbildung darstellt. Fig. 9 ist
ein Teilschaltbild, das den Aufbau des x-Dekoders 3 nach Fig.
7 genauer verdeutlicht.
Wie Fig. 8 zeigt, enthält der x-Dekoder 3 einen Vordekoder 30
und eine Mehrzahl von Dekoderblöcken 31, die gemeinsam für die
Speicherzellarrayblöcke 10a und 10b vorgesehen sind. Wenn die
Speicherzellarrayblöcke 10a und 10b den in Fig. 6 gezeigten
Aufbau haben, ist jeweils für alle sechzehn Speicherzellzeilen
ein Dekoderblock 31 vorgesehen.
Der Vordekoder 30 dekodiert ein Adreßsignal vom Adreßpuffer 5
und liefert ein entsprechendes einzelnes Signal an den Dekoder
block 31. In Reaktion auf die Dekoderausgabe des Vordekoders 30
aktiviert einer der Mehrzahl von Dekoderblöcken 31 eine (nicht
gezeigte) Wortleitung, die mit einer der zugehörigen sechzehn
Speicherzellzeilen und einer der entsprechend den sechzehn
Speicherzellzeilen vorgesehenen Gateauswahlleitungen verbunden
ist.
Wie Fig. 9 zeigt, enthält jeder Dekoderblock 31 eine Hauptdeko
dereinheit 310 und Subdekodereinheiten 311 und 312.
Jede Hauptdekodereinheit 310 enthält ein NAND-Gatter 400, das
einige der Ausgänge des Vordekoders 30 nach Fig. 8 als Ein
gänge verwendet, und einen Inverter 410 zum Invertieren eines
Ausgangs(wertes) beispielsweise des NAND-Gatters 400. In jedem
Dekoderblock 31 wird ein Ausgang des Inverters 410 der Hauptde
kodereinheit 310 an die Subdekodereinheiten 311 und 312 ange
legt.
Jede der Subdekodereinheiten 311 und 312 enthält beispiels
weise sechzehn NMOS-Transistoren 420, die an ihren Gates die
Ausgänge der entsprechenden Hauptdekodereinheit 310 empfangen,
zwei 2-Eingangs-NAND-Gatter 430 und 440 und zwei Inverter 450
und 460 jeweils zum Invertieren der Ausgänge der zwei NAND-Gatter
430 und 440. Jedes dieser zwei NAND-Gatter 430 und 440
empfängt an seinem Eingangsanschluß eine Ausgabe einer ent
sprechenden Hauptdekodereinheit 310 und an seinem anderen Ein
gangsanschluß eine Ausgabe des Vordekoders 30. Sechzehn Tran
sistoren 420 sind zwischen die entsprechenden sechzehn Wort
leitungen WL1 bis WL32 und sechzehn Ausgänge des Vordekoders 30
geschaltet. Die Ausgänge der beiden Inverter 450 und 460 werden
an die beiden Gateauswahlleitungen SG1 bis SG4 angelegt.
Der Vordekoder 30 dekodiert ein Adreßsignal vom Adreßpuffer 5
so, daß in einer der Subdekodereinheiten 311 und 312 nur eines
der jeweils vom Vordekoder an die NAND-Gatter 430 und 440 ange
legte beiden Signale und nur eines der vom Vordekoder 30 an den
Transistor 420 gelieferten Signale jeweils hohen Pegel und nie
drigen Pegel annimmt, und daß im anderen beide vom Vordekoder
30 jeweils an die NAND-Gatter 430 und 440 angelegten Signale
auf niedrigem Pegel sind und alle vom Vordekoder 30 an den
Transistor 420 gelieferten Signale auf hohem Pegel sind und
weiterhin alle vom Vordekoder 30 an eines der NAND-Gatter 400
gelieferten Signale auf hohem Pegel sind.
Dementsprechend legt nur in einem der Dekoderblöcke 31 in einer
der Subdekodereinheiten 311 und 312 einer der sechzehn Transi
storen 420 ein Potential auf hohem Pegel an eine Gateauswahl
leitung an, und einer der beiden Inverter 450 und 460 legt ein
Potential auf niedrigem Pegel an eine Wortleitung an. In jeder
der anderen Subdekodereinheiten legen die sechzehn Transistoren
420 ein Potential auf hohem Pegel jeweils an die sechzehn Wort
leitungen an, und die beiden Inverter 450 und 460 legen ein
Potential auf niedrigem Pegel an die beiden Gateauswahllei
tungen an.
Im Ergebnis dessen erscheinen in einem der Speicherarrayblöcke
10a und 10b die Speicherwerte einer Mehrzahl von Speicherzel
len, die in derselben Zeile angeordnet sind, auf den entspre
chenden Bitleitungen. Im anderen erscheint jedoch, da alle
Transistoren vom Anreicherungstyp, die mit der Gateauswahllei
tung verbunden sind (die Transistoren STE in Fig. 6) den
AUS-Zustand annehmen, kein Speicherwert der Speicherzellen auf den
Bitleitungen.
Wie oben beschrieben, ist ein herkömmlicher Masken-ROM mit Feh
lerkorrekturfunktion so konfiguriert, daß eine Mehrzahl von
Bitlängen von aus den mit der gleichen Wortleitung verbundenen
Speicherzellen ausgelesenen Daten in den ECC als Fehlerkorrek
turcode, der nur zur Korrektur eines 1-Bit-Fehlers geeignet
ist, eingegeben wird. Dementsprechend arbeitet die Fehler
korrekturfunktion des herkömmlichen Masken-ROM nur effektiv,
wenn es in den gleichzeitig aus einer Mehrzahl von Speicher
zellen, die in der gleichen Zeile angeordnet sind, ausgelesenen
Daten nur einen 1-Bit-Fehler gibt.
Als nächstes werden unter Bezugnahme auf Fig. 5 die Bedingun
gen, unter denen ein durch einen herkömmlichen Masken-ROM mit
Fehlerkorrekturfunktion korrigierbarer Fehler vorkommt, im
einzelnen beschrieben.
Zuerst sei in bezug auf Fig. 5 angenommen, daß eine Speicher
zelle, in der ein Element mit nicht den ursprünglich zu spei
chernden Daten entsprechenden Charakteristika verwendet wird,
(ein sogenanntes bit-defektes), nur in einem der insgesamt
zwölf Blöcke aus acht Speicherzellarrayblöcken DB0 bis DB7, in
denen die auszulesenden Originaldaten gespeichert werden, und
vier Speicherzellarrayblöcken DP0 bis DP3, in denen die Pari
tätsdaten gespeichert werden, vorkommt, oder daß ein Defekt in
irgendeinem der zwölf Signalübertragungswege (zu denen die
zwölf y-Gatter-Blöcke YGD0 bis YGD7, YGP0 bis YGP3 und die
zwölf Leseverstärker SAD0 bis SAD7, SAP0 bis SAP3 gehören) zum
jeweiligen Übertragen der 12-Bit-Daten vom normalen Speicher
zellarray 1 und vom Paritäts-Speicherzellarray 2 an den ECC9
infolge von Gebrauchseinflüssen, des Ausfalls einer inneren
Schaltung infolge der Degradation mit zunehmender Gebrauchs
dauer o. ä. vorkommt.
In diesen Fällen gibt es einen Fehler nur in einem Bit der
Daten der 12-Bit-Daten D0 bis D7, P0 bis P3, die an den ECC9
ausgelesen werden, und die verbleibenden elf Bit der Daten sind
sämtlich korrekt. Damit kann der ECC9 den Fehler von einem Bit
nachweisen und korrigieren.
Danach sei in Fig. 5 angenommen, daß eine Leitungsunterbre
chung oder ein Kurzschluß während des Herstellungsverfahrens
oder unter Gebrauchsbedingungen in einer Bitleitung BL (der so
genannten defekten Bitleitung) nur in einem Block der zwölf
Speicherzellarrayblöcke DB0 bis DB7, DP0 bis DP3 vorkommt.
In einem solchen Falle wird, wenn eine der mit der defekten
Bitleitung verbundenen Mehrzahl von Speicherzellen MC als
Speicherzelle, aus der Daten auszulesen sind, ausgewählt wird,
die defekte Bitleitung elektrisch durch den entsprechenden
y-Gatterblock mit der Leseverstärkergruppe 8 verbunden. Dabei
werden aus dem Speicherzellarrayblock mit der defekten Bit
leitung BL keine Daten an den ECC9 ausgelesen. Es ist jedoch
zu beachten, daß jeweils von den verbleibenden elf Speicher
zellarrayblöcken Daten an den ECC9 ausgelesen werden.
Damit kann also auch in diesem Falle der ECC9 korrekte 8-Bit-
Daten ausgeben.
Das heißt, bei Defekten in den Speicherzellarrays oder deren
peripheren Schaltungen kann der ECC9 einen Fehler mit Bezug
auf einen Defekt, der einen zufälligen 1-Bit-Fehler in den an
den ECC9 anzulegenden 12-Bit-Daten D0 bis D7, P0 bis P3 verur
sacht, korrigieren. D. h., der ECC9 ermöglicht die Verwendung
eines solchen defekten Masken-ROM als normaler Masken-ROM.
Wie aus der obigen Beschreibung zu erkennen, kann bei einem
herkömmlichen Masken-ROM mit einer Fehlerkorrekturfunktion ein
Fehler der ausgelesenen Daten infolge eines Defektes bezüglich
der Bitleitungen mit ziemlich hoher Wahrscheinlichkeit korri
giert werden. Es ist jedoch unmöglich, einen Fehler der ausge
lesenen Daten infolge eines Defekts bezüglich der Wortlei
tungen (sogenannter defekter Wortleitungen) mit hoher Wahr
scheinlichkeit zu korrigieren.
Es sei in bezug auf Fig. 5 angenommen, daß eine Wortleitung WL
an einer Stelle P in der Abbildung durchtrennt sei. In einem
solchen Falle wird auch dann, wenn eine mit der durchtrennten
Wortleitung WL verbundene Speicherzellenzeile als Speicherzel
lenzeile ausgewählt wird, aus der Daten ausgelesen werden
sollen, die Wortleitung WL nicht aktiviert. Dementsprechend er
scheinen die Speicherwerte der in der ausgewählten Speicher
zellenzeile enthaltenen Speicherzellen nicht korrekt auf den
entsprechenden Bitleitungen BL. Im Ergebnis dessen sind alle
der 12-Bit-Daten D0 bis D7, P0 bis P3, die in den ECC9 einge
geben werden, falsch, so daß der ECC9 unter keinen Umständen
korrekte 8-Bit-Daten D0′ bis D7′ ausgeben kann.
Als nächstes sei in Bezug auf Fig. 5 angenommen, daß eine
Wortleitung WL an einer Stelle Q in der Abbildung durchtrennt
sei.
In einem solchen Falle wird, wenn die mit der durchtrennten
Wortleitung WL verbundene Speicherzellenzeile als die Spei
cherzellenzeile ausgewählt wird, aus der Daten auszulesen sind,
das Potential zum Aktivieren der Wortleitung vom x-Dekoder 3
nur an den Abschnitt angelegt, der näher zum x-Dekoder 3 hin
liegt und in den fünf Speicherzellarrayblöcken DB0 bis DB4 ent
halten ist, während das Potential nicht auf den in den ver
bleibenden sieben Speicherzellarrayblöcken DB5 bis DB7, DP0 bis
DP3 enthaltenen Abschnitt angelegt wird. Dementsprechend werden
die Daten nicht korrekt aus den in den sieben Speicherzell
arrayblöcken DB5 bis DB7, DP0 bis DP3 enthaltenen Speicher
zellen MC, die mit der Wortleitung WL verbunden sind, ausge
lesen. Im Ergebnis sind in den 12-Bit-Daten D0 bis D7, P0 bis
P3, die in den ECC9 eingegeben werden, die 7-Bit-Daten D5 bis
D7, P0 bis P3, die aus den sieben Speicherzellarrayblöcken DB5
bis DB7, DP0 bis DP3 erhalten werden, sämtlich falsch. Demnach
kann auch in einem solchen Falle der ECC9 keine korrekten
Daten ausgeben.
Wenn eine Wortleitung WL mit einer anderen, benachbarten Wort
leitung kurzgeschlossen ist, können aus keiner der mit dieser
Wortleitung WL verbundenen Speicherzellen MC korrekte Daten
ausgelesen werden.
Das heißt, wenn es einen Defekt in einer Wortleitung WL gibt,
ist für den ECC9 eine Fehlerkorrektur nahezu unmöglich.
Auch beim Masken-ROM nach Fig. 7 ist, wenn eine Wortleitung WL
aus irgendeinem Grunde unterbrochen oder mit einer benachbarten
Wortleitung kurzgeschlossen ist, die Wahrscheinlichkeit eines
korrekten Lesens aller elf Daten in den zwölf Daten D0 bis D7,
P0 bis P3, die an den ECC9 angelegt werden, aus einer mit die
ser Wortleitung verbundenen Speicherzellenspalte extrem
niedrig.
Wenn andererseits die Anzahl von in jeder Zeile angeordneten
Speicherzellen mit der in jüngster Zeit zu verzeichnenden Kapa
zitätsvergrößerung der Halbleiterspeichereinrichtungen an
steigt, steigt auch die Länge jeder Wortleitung an. Ein solches
Ansteigen der Länge der Wortleitung erhöht die Wahrscheinlich
keit einer Unterbrechung oder eines Kurzschlusses bei der Her
stellung.
Demnach wird mit dem Ansteigen der Kapazität der Halbleiter
speichereinrichtungen das bekannte Problem der Masken-ROMs, daß
die Ausbeute infolgedessen, daß ein in den ausgelesenen Daten
vorkommender Fehler als Folge einer defekten Wortleitung kaum
korrigiert werden kann, relativ niedrig ist, zunehmend ernster.
Aus der US 4 692 923 ist eine Halbleiterspeichereinrichtung nach
dem Oberbegriff des Patentanspruches 1 bekannt. Bei dieser Halb
leiterspeichereinrichtung ist durch ihre Anordnung gewährleistet,
daß keine zwei Unterblöcke, welche verschiedene Datenwortbits
speichern, durch dieselbe Wortleitung und dieselbe Gruppe von
Bankauswahlleitungen adressiert werden.
Es ist Aufgabe der Erfindung, eine Halbleiter
speichereinrichtung bereitzustellen, die mit einer hohen Aus
beute herstellbar ist und bei der ein in den ausgelesenen Daten
vorkommender Fehler der aus defekten Wortleitungen
herrührt auf einen 1-Bit Fehler zurückgeführt werden kann, so
daß er auf dieselbe Weise wie ein 1-Bit Fehler, der
aufgrund eines defekten Bits oder einer defekten Bitleitung
auftritt, korrigiert werden kann.
Die Aufgabe wird durch die Halbbleiterspeichereinrichtung nach Patent
anspruch 1 bzw. durch das Betriebsverfahren nach Patentanspruch 12 gelöst.
Wie oben beschrieben,
ist die Halbleiterspeichereinrichtung
so konfiguriert, daß eine Mehrzahl von Daten, die an eine
Nachweisschaltung oder eine Korrekturschaltung geliefert wer
den sollen, jeweils in separaten Speicherzellarrayblöcken ge
speichert wird, und Wortleitungen einzeln für die Mehrzahl von
Blöcken vorgesehen sind.
Damit werden, auch wenn in einer der Mehrzahl von Blöcken eine
Wortleitung mit einem Defekt - etwa einer Unterbrechung oder
einem Kurzschluß - enthalten ist, die Daten aus anderen Blöcken
korrekt ausgelesen. Damit sind von der ersten Mehrzahl von
Daten und der zweiten Mehrzahl von Daten, die von der Lese
schaltung an die Nachweisschaltung oder die Korrekturschaltung
geliefert werden, mindestens die Daten mit Ausnahme des einen
aus einem Block mit einer defekten Wortleitung ausgelesenen
Wertes korrekte Daten.
Das Betriebsverfahren
ist wie oben beschrieben so gestaltet, daß auf der Grundlage
der aus einer ersten Mehrzahl von Speicherzellen, die jeweils
mit der ausgewählten ersten Mehrzahl von Wortleitungen verbun
den sind, unabhängig voneinander und der aus der zweiten Mehr
zahl von Speicherzellen, die jeweils mit der ausgewählten
zweiten Mehrzahl von Speicherzellen verbunden sind, unabhängig
voneinander ausgelesenen Daten ein Fehler der ausgelesenen Da
ten und Paritätsdaten nachgewiesen wird.
Damit wurde die Möglichkeit
wesentlich erweitert, daß nicht nur eine Halbleiterspeicher
einrichtung mit einem defekten Bit und/oder einer defekten Bit
leitung, sondern auch eine Halbleiterspeichereinrichtung mit
einer defekten Wortleitung als Halbleiterspeichereinrichtung
verwendet werden kann, die normal funktioniert. Im Ergebnis
dessen kann die Ausbeute bei der Herstellung von Halbleiter
speichereinrichtungen erhöht werden. Weiter ist,
da die Aktivierung und Deaktivierung von Wort
leitungen mit hoher Geschwindigkeit ausgeführt werden kann,
eine Verbesserung bezüglich der Zugriffszeit zu erwarten.
Weiterbildungen der Erfindung sind in den Unteransprüchen gegeben.
Weitere Merkmale und Zweckmäßigkeiten ergeben
sich aus der Erläuterung eines Ausführungsbeispiels anhand der
Figuren.
Von den Figuren zeigen
Fig. 1 ein schematisches Blockschaltbild, das den Gesamt
aufbau eines Masken-ROM nach einer Ausführungs
form darstellt,
Fig. 2 ein Blockschaltbild, das schematisch den Aufbau
eines Haupt-x-Dekoders und eines Sub-x-Dekoders
in Fig. 1 darstellt,
Fig. 3 ein Schaltbild, das ein spezielles Beispiel für
den Hauptdekoderblock in Fig. 2 darstellt,
Fig. 4 ein Schaltbild, das ein spezielles Beispiel für den
Subdekoderblock nach Fig. 2 darstellt,
Fig. 5 ein schematisches Blockschaltbild, das ein Beispiel
für den Gesamtaufbau eines herkömmlichen Masken-ROM
mit Fehlerkorrekturfunktion darstellt,
Fig. 6 ein Schaltbild, das ein Beispiel des inneren Auf
baus eines Speicherzellarrays des Masken-ROM dar
stellt,
Fig. 7 ein schematisches Blockschaltbild, das ein weiteres
Beispiel für den Aufbau eines herkömmlichen Masken-ROM
mit Fehlerkorrekturfunktion darstellt,
Fig. 8 ein Blockschaltbild, das schematisch den Aufbau
eines x-Dekoders bei einem herkömmlichen Masken-ROM
mit Fehlerkorrekturfunktion darstellt, und
Fig. 9 ein Schaltbild, das ein Beispiel für den Aufbau
des Dekoderblocks nach Fig. 8 darstellt.
Wie Fig. 1 zeigt, werden - ähnlich wie beim herkömmlichen
Masken-ROM nach Fig. 5 - bei dem Masken-ROM entsprechend einer
Ausführungsform der Erfindung die ursprünglich nach außen aus
zulesenden Daten und die Paritätsdaten zur Fehlerkorrektur vor
ab in unterschiedlichen Speicherzellarrays 1 und 2 gespeichert.
Das Speicherzellarray 1 ist in acht Blöcke DB0 bis DB7 aufge
teilt, die 8-Bit-Daten entsprechen, die gleichzeitig nach außen
auszulesen sind. Das Speicherzellarray 2 ist in vier Blöcke DP0
bis DP3 aufgeteilt, die für die 8-Bit-Daten geeigneten
4-Bit-Paritätsdaten entsprechen.
Bei diesem Masken-ROM sind jedoch im Unterschied zum her
kömmlichen Masken-ROM Wortleitungen WL individuell für jeden
Speicherzellarrayblock DB0 bis DB7, DP0 bis DP3 vorgesehen, und
auch ein Haupt-x-Dekoder 3a und Sub-x-Dekoder 3b-1 bis 3b-6
sind zum individuellen Ansteuern der Wortleitungen WL für jeden
Speicherzellarrayblock vorgesehen.
Der Aufbau und die Funktionsweise der anderen Abschnitte des
Masken-ROM sind dieselben wie diejenigen des in Fig. 5 gezeig
ten Masken-ROM, so daß ihre Beschreibung hier nicht wiederholt
wird.
Der Haupt-x-Dekoder 3a dekodiert ein Adreßsignal vom Adreß
puffer 5 und gibt ein Signal zum Bestimmen dessen aus, aus
welchem Speicherzellarray Daten auszulesen sind. Ein Ausgangs
signal des Haupt-x-Dekoders 3a wird an sämtliche Sub-x-Dekoder
3b-1 bis 3b-6 gegeben.
Jeder der vier Sub-x-Dekoder 3b-1 bis 3b-4 ist entsprechend be
nachbarten zwei Blöcken im Speicherzellarray 1 vorgesehen. Ähn
lich ist jeder der beiden Sub-x-Dekoder 3b-5 und 3b-6 ent
sprechend benachbarten zwei Blöcken im Paritäts-Speicherzell
array 2 vorgesehen.
Der Sub-x-Dekoder 3b-1 spricht auf ein Ausgangssignal des
Haupt-x-Dekoders 3a und ein Adreßsignal vom Adreßpuffer 5 an
und aktiviert in jedem der entsprechenden beiden Speicherzell
arrayblöcke DB0 und DB1 eine Wortleitung, die einer durch den
Haupt-x-Dekoder 3a spezifizierten Speicherzellenzeile ent
spricht.
Analog spricht der Sub-x-Dekoder 3b-2 auf ein Ausgangssignal
des Haupt-x-Dekoders 3a und ein Adreßsignal vom Adreßpuffer 5
an und wählt in jedem der Speicherzellarrayblöcke DB2 und DB3
eine einer durch den Haupt-x-Dekoder 3a spezifizierten Spei
cherzellenzeile entsprechende Wortleitung aus und aktiviert
diese.
Analog spricht der Sub-x-Dekoder 3b-3 auf ein Ausgangssignal
des Haupt-x-Dekoders 3a und ein Adreßsignal vom Adreßpuffer 5
an und wählt eine einer durch den Haupt-x-Dekoder 3a spezi
fizierten Speicherzellenzeile entsprechende Wortleitung in
jedem der Speicherzellarrayblöcke DB4 und DB5 aus und aktiviert
diese.
Analog spricht der Sub-x-Dekoder 3b-4 auf ein Ausgangssignal
des Haupt-x-Dekoders 3a und ein Adreßsignal vom Adreßpuffer 5
an und wählt eine einer durch den Haupt-x-Dekoder 3a spezi
fizierten Speicherzellenzeile entsprechende Wortleitung in
jedem der Speicherzellarrayblöcke DB6 und DB7 aus und aktiviert
diese.
Analog spricht der Sub-x-Dekoder 3b-5 auf ein Ausgangssignal
vom Haupt-x-Dekoder 3a und ein Adreßsignal vom Adreßpuffer 5 an
und wählt eine einer durch den Haupt-x-Dekoder 3a entsprechen
den Wortleitung in jedem der Paritäts-Speicherzellblöcke DP0
und DP1 aus und aktiviert diese.
Analog spricht der Sub-x-Dekoder 3b-6 auf ein Ausgangssignal
vom Haupt-x-Dekoder 3a und ein Adreßsignal vom Adreßpuffer 5 an
und wählt eine einer durch den Haupt-x-Dekoder 3a spezifizier
ten Speicherzellenzeile entsprechende Wortleitung in jedem der
Paritäts-Speicherzellarrayblöcke DP2 und DP2 aus und aktiviert
diese.
Demnach werden durch die jeweiligen Sub-x-Dekoder 3b-1 bis 3b-6
zwei Wortleitungen WL in derselben Zeile in zwei entsprechenden
Speicherzellarrayblöcken gleichzeitig aktiviert. Im Ergebnis
dessen werden alle Wortleitungen, die mit der einen, durch den
Haupt-x-Dekoder 3a spezifizierten Speicherzellenzeile verbunden
sind, d. h. zwölf Wortleitungen WL in derselben Zeile, die je
weils in den zwölf Speicherzellarrayblöcken DB0 bis DB7 und DP0
bis DP3 enthalten sind, gleichzeitig aktiviert.
Damit werden - ähnlich wie im herkömmlichen Falle - die Spei
cherwerte der in der gleichen Zeile angeordneten Speicherzellen
MC über die entsprechenden Bitleitungen BL gleichzeitig auf das
y-Gatter 7 übertragen. Damit werden die gleichzeitig nach außen
auszulesenden 8-Bit-Daten D0 bis D7 und die 4-Bit-Paritätsdaten
P0 bis P3 zum Nachweis und Korrigieren eines Fehlers der
8-Bit-Daten von der Leseverstärkergruppe 8 an den ECC 9 geliefert.
Wie oben beschrieben, ist entsprechend der vorliegenden Ausfüh
rungsform ein Speicherzellarrayblock für jeden der Mehrzahl von
gleichzeitig nach außen auszulesenden Werten und jeden der zum
Nachweis und zur Korrektur eines Fehlers in der Mehrzahl von
Werten dienenden Werte aus einer Mehrzahl von Paritätswerten
vorgesehen, und jeder Speicherzellarrayblock enthält Wortlei
tungen, die von anderen Speicherzellarrayblöcken unabhängig
sind. Damit kann ein Fehler in den ausgelesenen Daten, der auf
die Unterbrechung einer Wortleitung WL oder einen Kurzschluß
mit einer benachbarten Wortleitung zurückzuführen ist, ebenso
mit hoher Wahrscheinlichkeit korrigiert werden wie ein Fehler
in den ausgelesenen Daten, der die Folge eines defekten Bits
und/oder einer defekten Bitleitung ist.
D.h., wenn eine defekte Wortleitung WL in nur einem der zwölf
Speicherzellarrayblöcke DB0 bis DB7 und DP0 bis DP3 existiert,
erscheinen die gespeicherten Werte aller mit den elf Wortlei
tungen mit Ausnahme der defekten Wortleitung WL verbundenen
Speicherzellen auch dann, wenn eine mit der defekten Wortlei
tung WL verbundene Speicherzellenzeile durch den Haupt-x-De
koder 3a ausgewählt ist, korrekt auf den entsprechenden Bit
leitungen BL. Dementsprechend besteht nur für 1-Bit-Werte, die
aus dem die defekte Wortleitung enthaltenden Speicherzellarray
block ausgelesen werden, in den Daten D0 bis D7, P0 bis P3, die
dem ECC9 zugeführt werden, die Möglichkeit, daß es falsche
Daten sind, so daß ein eventueller Fehler in den aus diesem
Speicherzellarrayblock ausgelesenen Daten durch den ECC9
korrigiert werden kann und korrekte 8-Bit-Daten D0′ bis D7′
ausgegeben werden.
Es sei beispielsweise angenommen, daß ein Teil einer Wortlei
tung WL innerhalb des Speicherzellarrayblockes DB3 in diesen
Speicherzellarrayblöcken DB0 bis DB7 und DP0 bis DP3 durch
trennt sei, und daß es in den anderen Speicherzellarrayblöcken
DB0 bis DB2, DB4 bis DB7 und DP0 bis DP3 keinen Defekt gebe.
In einem solchen Falle wird, wenn eine mit der durchtrennten
Wortleitung WL verbundene Speicherzellenzeile durch den Haupt
x-Dekoder 3a bestimmt wird, von den zwölf mit dieser Speicher
zellenzeile verbundenen Wortleitungen WL eine im Speicherzell
arrayblock DB3 enthaltene insgesamt oder teilweise nicht akti
viert, aber alle elf jeweils enthaltenen anderen Speicherzell
arrayblöcke DB0 bis DB2, DB4 bis DB7, DP0 bis DP3 werden in
allen ihren Teilen aktiviert. Dementsprechend ist davon auszu
gehen, daß der Speicherwert einer Speicherzelle in der spezi
fizierten Speicherzellenzeile in einem Speicherblock DB3 die
ser zwölf Speicherarrayblöcke nicht korrekt auf der entsprech
enden Bitleitung BL erscheinen kann, während die Speicherwerte
der Speicherzellen der spezifizierten Speicherzellenzeile in
den verbleibenden elf Speicherzellarrayblöcken korrekt auf den
entsprechenden Bitleitungen BL erscheinen. Damit sind von den
12-Bit-Daten D0 bis D7, P0 bis P3, die an den ECC9 geliefert
werden, mindestens 11-Bit-Daten aller Daten korrekt. Es sei
weiterhin beispielsweise angenommen, daß im Speicherzellarray
block DB4 benachbarte Wortleitungen WL kurzgeschlossen seien,
und daß es in keiner der Wortleitungen WL in den anderen Spei
cherzellarrayblöcken DB0 bis DB3, DB5 bis DB7 und DP0 bis DP3
einen Defekt gebe.
In einem solchen Falle erscheinen, wenn durch den Haupt-x-De
koder 3a eine mit der kurzgeschlossenen Wortleitung WL verbun
dene Speicherzellenzeile bestimmt wird, die Speicherwerte be
liebiger Speicherzellen in der ausgewählten Speicherzellenzeile
nicht korrekt auf der entsprechenden Bitleitung BL des Spei
cherzellarrayblockes DB4, aber die gespeicherten Werte der
Speicherzellen in der ausgewählten Speicherzellenzeile erschei
nen korrekt auf den entsprechenden Bitleitungen BL in jedem der
anderen Speicherzellarrayblöcke DB0 bis DB3, DB5 bis DB7 und
DP0 bis DP3. Damit ist auch in einem solchen Falle von den in
den ECC9 eingegebenen zwölf Bit Daten D0 bis D7, P0 bis P3 nur
der aus dem Speicherzellarrayblock DB4 ausgelesene Wert D4
falsch.
Bei der beschriebenen Ausführungsform sind also, da die Wort
leitungen in den Speicherzellarrayblöcken mit Ausnahme eines
Speicherzellarrayblockes, in dem eine defekte Wortleitung ent
halten ist, auch dann nicht durch die defekte Wortleitung be
einflußt werden, wenn in irgendeinem der zwölf Speicherzell
arrayblöcke DB0 bis DB7, DP0 bis DP3 ein Kurzschluß oder eine
Unterbrechung einer Wortleitung vorkommt, wenn der fehlerhafte
Abschnitt nur innerhalb eines Speicherzellarrayblockes liegt,
von den zwölf dem ECC9 zugeführten Werten D0 bis D7, P0 bis P3
mindestens elf Werte korrekt. Damit kann ein Fehler in den aus
gelesenen Daten infolge einer defekten Wortleitung durch den
ECC9 mit hoher Wahrscheinlichkeit korrigiert werden.
Da ein defektes Bit oder eine defekte Bitleitung die Eingangs
daten D0 bis D7 und P0 bis P3 der ECC9 ähnlich wie im her
kömmlichen Falle beeinflussen, kann auch ein in den ausgele
senen Daten vorkommender Fehler infolge eines defekten Bits
oder einer defekten Bitleitung durch den ECC9 mit großer
Sicherheit korrigiert werden.
Außerdem wird, da jeder Speicherzellarrayblock so konfiguriert
ist, daß er einzelne Wortleitungen aufweist, die Länge jeder
Wortleitung verringert werden. Andererseits werden diese Wort
leitungen nicht durch einen gemeinsamen x-Dekoder angesteuert.
D.h., die Wortleitungen WL in den Speicherzellarrayblöcken DB0
und DB1, die Wortleitungen WL in den Speicherzellarrayblöcken
DB2 und DB3, die Wortleitungen WL in den Speicherzellarray
blöcken DB4 und DB5, die Wortleitungen WL in den Speicherzell
arrayblöcken DB6 und DB7, die Wortleitungen WL in den Speicher
zellarrayblöcken DP0 und DP1 und die Wortleitungen WL in den
Speicherzellarrayblöcken DP2 und DP3 werden durch die Sub-x-De
koder 3b-1, 3b-2, 3b-3, 3b-4, 3b-5 bzw. 3b-6 angesteuert. Damit
ist die gesamte Lastkapazität, die von jedem der Sub-x-Dekoder
anzusteuern ist, kleiner als die gesamte Lastkapazität, die der
x-Dekoder 3 in Fig. 5 anzusteuern hat.
Damit kann bei der vorliegenden Ausführungsform die für die
Potentialänderung einer Wortleitung in Reaktion auf eine Deko
derausgabe benötigte Zeit, d. h. die zum Laden/Entladen einer
Wortleitung in Reaktion auf einen Dekoderausgang erforderliche
Zeit, im Vergleich zum herkömmlichen Falle verringert werden.
Im Ergebnis dessen wird die vom Zeitpunkt des Anlegens eines
Adreßsignals von außen an die Adreßeingangsanschlüsse A0 bis An
bis zum Zeitpunkt des Erscheinens der Speicherwerte der Spei
cherzellen entsprechend dem Adreßsignal auf den entsprechenden
Bitleitungen BL gemessene Zeit verringert, was zu dem Effekt
einer Verkürzung der Zugriffszeit führt.
Als nächstes werden unter Bezugnahme auf die Fig. 2 bis 4
der spezielle Aufbau des Haupt-x-Dekoders 3a und der Sub-x-De
koder 3b-1 bis 3b-6 beschrieben. Fig. 2 ist ein Blockschalt
bild, das schematisch ein Beispiel für den Aufbau des Haupt-x-De
koders 3a und der Sub-x-Dekoder 3b-1 bis 3b-6 darstellt.
Fig. 3 ist ein Schaltbild, das ein Beispiel für den Aufbau des
Haupt-x-Dekoders 3a im einzelnen gibt. Fig. 4 ist eine Dar
stellung, die ein Beispiel für den Aufbau der Sub-x-Dekoder 3b-1
bis 3b-6 im einzelnen darstellt.
In den Fig. 2 bis 4 sind jeweils Speicherzellarrayblöcke DB0
bis DB7 und DP0 bis DP3 gezeigt, die den in Fig. 6 gezeigten
inneren Aufbau haben.
Wie Fig. 2 zeigt, enthält der Haupt-x-Dekoder 3a einen Vorde
koder 30a und eine Mehrzahl von Hauptdekoderblöcken 31a.
Ein Hauptdekoderblock 31a ist gemeinsam für alle Speicherzell
arrayblöcke DB0 bis DB7 und DP0 bis DP3 für alle sechzehn Spei
cherzellenzeilen vorgesehen.
Jeder der Sub-x-Dekoderblöcke 3b-1 bis 3b-6 enthält einen Vor
dekoder 30b und eine Mehrzahl von Subdekoderblockpaaren 31b und
32b. Die Mehrzahl von Subdekoderblockpaaren ist jeweils ent
sprechend den sechzehn Speicherzellenzeilen in den beiden ent
sprechenden Speicherzellarrayblöcken vorgesehen.
Der Vordekoder 30a dekodiert ein Adreßsignal vom Adreßpuffer 5
in Fig. 1 so, daß es an den Dekodierungsvorgang des Hauptde
koderblocks 31a angepaßt ist. Analog dekodiert der Vordekoder
30b ein Adreßsignal vom Adreßpuffer 5 so, daß es an den Deko
diervorgang durch die Subdekoderblockpaare 31b und 32b angepaßt
ist.
Jeder Hauptdekoderblock 31a dekodiert weiterhin eine Dekoder
ausgabe des Vordekoders 30a und liefert ein durch die Dekodie
rung erhaltenes Signal gemeinsam an alle entsprechend den sech
zehn Speicherzellzeilen vorgesehenen Subdekoderblockpaare 31b
und 32b.
Jedes Subdekoderblockpaar enthält einen entsprechend den sech
zehn Speicherzellenzeilen in einem der beiden entsprechenden
Speicherzellarrayblöcke angeordneten Subdekoderblock 31b und
einen entsprechend den anderen sechzehn Speicherzellenzeilen
angeordneten Subdekoderblock 32b. Jeder der Subdekoderblöcke
31b und 32b steuert die Potentiale von sechzehn (nicht gezeig
ten) Wortleitungen und zwölf (nicht gezeigten) Gateauswahllei
tungen, die jeweils in sechzehn Speicherzellenzeilen enthalten
sind, in Reaktion auf eine Dekoderausgabe des entsprechenden
Hauptdekoderblocks 31a und eine Dekoderausgabe des entspre
chenden Vordekoders 30b.
Wie Fig. 3 zeigt, enthält jeder Hauptdekoderblock 31a bei
spielsweise ein NAND-Gatter 500, das einige der Dekoderaus
gänge des Vordekoders 30 nach Fig. 2 als Eingänge nutzt, und
einen Inverter 510 zum Invertieren eines Ausganges eines
NAND-Gatters 500. Der Vordekoder 30 dekodiert ein Adreßsignal vom
Adreßpuffer 5, so daß nur alle vom Vordekoder 30 in eines der
NAND-Gatter 500 eingegebenen Signale hohen Pegel annehmen.
Daher nimmt nur ein Ausgang einer Mehrzahl von Hauptdekoder
blöcken 31a hohen Pegel an.
Andererseits enthält - wie Fig. 4 zeigt - jeder der Subdeko
derblöcke 31b und 32b sechzehn NMOS-Transistoren 520, die je
weils zwischen sechzehn Wortleitungen WL1 bis WL32, die mit den
entsprechenden sechzehn Speicherzellenzeilen verbunden sind,
und vorbestimmte sechzehn Signale der Ausgangssignale der ent
sprechenden Vordekoder 31b geschaltet sind, die 2-Eingangs-NAND-Gatter
530 und 550, die jeweils den einen oder den anderen
der beiden Ausgänge des entsprechenden Vordekoders 31b als Ein
gang nutzen, und zwei Inverter 540 und 560 zum jeweiligen In
vertieren der Ausgänge der beiden NAND-Gatter 530 und 550. Die
Ausgänge der Inverter 540 und 560 werden jeweils an die beiden
Gateauswahlleitungen SG1 bis SG4 angelegt, die entsprechend den
sechzehn Speicherzellenzeilen vorgesehen sind.
Ein Ausgang jedes der Hauptdekoderblöcke 31a in Fig. 3 wird an
die Transistoren 520 der entsprechenden Subdekoderblöcke 31b
und 32b und die NAND-Gatter 530 und 550 angelegt.
Wie oben beschrieben, nimmt von den Ausgängen der Mehrzahl von
Hauptdekoderblöcken 31a der Ausgang nur eines Hauptdekoder
blocks hohen Pegel an. Damit nehmen alle Transistoren 520 in
den zwölf Subdekoderblöcken (d. h. den sechs Subdekoderblock
paaren) 31b und 32b, die entsprechend diesem einen Hauptdeko
derblock vorgesehen sind, den EIN-Zustand an. Andererseits
nehmen in jedem der anderen Subdekoderblöcke 31b und 32b alle
Transistoren 520 den AUS-Zustand an, und die Ausgänge der In
verter 540 und 560 nehmen zusammen niedrigen Pegel an.
Jeder Vordekoder 31b dekodiert ein Adreßsignal vom Adreßpuffer
5, so daß nur eines der jeweils an die sechzehn Transistoren
520 gelieferten sechzehn Signale vom Vordekoder 31b niedrigen
Pegel annimmt und nur eines der jeweils an die beiden
NAND-Gatter 530 und 550 von diesem Vordekoder 31b gelieferten beiden
Signale in jedem entsprechenden Subdekoderblock 31b hohen Pegel
annimmt. Der mit einem Signal mit niedrigem Pegel vom ent
sprechenden Vordekoder 31b in jedem Subdekoderblock 31b ver
sorgte Transistor 520 und der mit einem Signal auf niedrigem
Pegel von einem entsprechenden Vordekoder 31b im Subdekoder
block 32b, der mit dem Subdekoderblock 31b gepaart ist, ver
sorgte Transistor 520 sind mit zwei Wortleitungen verbunden,
die jeweils entsprechend derselben Zeile vorgesehen sind.
Damit nimmt nur in jedem der Subdekoderblöcke 31b und 32b, die
entsprechend dem einen ein Signal auf hohem Pegel als Ausgang
liefernden Hauptdekoderblock 31a vorgesehen sind, ein Ausgang
von einem der sechzehn Transistoren 520 niedrigen Pegel an, und
ein Ausgang eines der Inverter 540 und 560 nimmt hohen Pegel
an. Im Ergebnis dessen werden von den in allen Speicherzell
arrayblöcken DB0 bis DB7, DP0 bis DP3 enthaltenen Wortleitungen
und Gateauswahlleitungen die zwölf Wortleitungen (vgl. Fig.
1), die entsprechend derselben Zeile vorgesehen sind, und eine
Gateauswahlleitung aktiviert, und die gespeicherten Daten aller
Speicherzellen, die mit den aktivierten Wortleitungen verbunden
sind, können auf einer entsprechenden Bitleitung erscheinen
(vgl. Fig. 6).
Jede der Wortleitungen WL1 bis WL32 in Fig. 4 entspricht jeder
Wortleitung WL in Fig. 1. In Fig. 1 sind die Gateauswahllei
tungen zur Vereinfachung nicht dargestellt.
Bei der oben beschriebenen Ausführungsform wurde eine Beschrei
bung für den Fall gegeben, daß die gleichzeitig nach außen aus
zulesenden Daten von 8 Bit sind, aber die gleichzeitig nach
außen auszulesenden Daten können eine beliebige Bitlänge haben.
Ein Wert k, der gleich oder größer als 2 ist, wird als Anzahl
der Bit von Paritätsdaten vorgegeben, die zur Korrektur eines
Fehlers der m-Bit-Daten verwendet werden, d. h. als Zahl der
Paritäts-Speicherzellarrayblöcke, so daß, wenn die Anzahl der
Bits der gleichzeitig nach außen auszulesenden Daten, d. h. die
Anzahl der Blöcke im Speicherzellarray 1, mit m bezeichnet
wird, die Beziehung 2k-1 m + k gilt.
Wenn die gleichzeitig nach außen auszulesenden Daten 16-Bit-Daten
bzw. 32-Bit-Daten sind, werden 5-Bit-Paritätsdaten bzw.
6-Bit-Daten zum Nachweis und zur Korrektur eines 1-Bit-Fehlers
verwendet.
Obgleich das Speicherzellarray nach der beschriebenen Ausfüh
rungsform in die Anzahl (zwölf) von Blöcken aufgeteilt ist, die
gleich der Gesamtzahl der Bitlänge der gleichzeitig nach außen
auszulesenden Daten und der Bitlänge der Paritätsdaten ist,
kann ein Speicherzellarray in eine größere Anzahl von Blöcken
aufgeteilt sein, etwa in die doppelte Anzahl. Mit dem Aufteilen
eines Speicherzellarrays in eine größere Anzahl von Blöcken
kann eine weitere Senkung der Zugriffszeit erwartet werden.
Obwohl bei den beschriebenen Ausführungsformen die Erfindung
auf einen Masken-ROM angewendet ist, kann die Erfindung auch
auf Halbleiterspeichereinrichtungen angewendet werden, die zum
Schreiben und Überschreiben von Daten nach der Herstellung in
der Lage sind, etwa auf einen EPROM oder einen EEPROM.
Claims (13)
1. Halbleiterspeichereinrichtung mit
einem in eine erste Mehrzahl von Blöcken (DB0 bis DB7) zum je weiligen Speichern einer ersten Mehrzahl von Daten (D0 bis D7) und eine zweite Mehrzahl von Blöcken (DP0 bis DP3) zum jewei ligen Speichern einer zweiten Mehrzahl von Paritäts-Daten (P0 bis P3), die entsprechend der ersten Mehrzahl von Daten (D0 bis D7) vorbestimmt sind, aufgeteilten Speicherzellarray (1, 2), wobei jeder der Blöcke (DB0 bis DB7, DP0 bis DP3) eine Mehrzahl von in einer Mehrzahl von Zeilen angeordneten Speicherzellen und eine Mehrzahl von entsprechend der Mehrzahl von Zeilen vorgesehenen und jeweils gemeinsam mit allen in einer entsprechenden Zeile angeordneten Speicherzellen (MC) verbundenen Wortleitungen (WL) aufweist,
einer Einrichtung (8) zum Lesen der in den Speicherzellen, die mit einer Wortleitung verbunden sind, gespei cherten Daten aus der ersten Mehrzahl von Blöcken (DB0 bis DB7) und zum Auslesen der in den Speicherzellen, die mit der Wortleitung verbunden sind, gespeicherten Daten aus der zweiten Mehrzahl von Blöcken (DP0 bis DP3) und
einer Einrichtung (9) zum Nachweis eines Fehlers der durch die Leseeinrichtung (8) aus der ersten Mehrzahl von Blöcken (DB0 bis DB7) ausgelesenen Daten auf der Basis der durch die Lese einrichtung (8) aus jedem der ersten Mehrzahl von Blöcken (DB0 bis DB7) und der zweiten Mehrzahl von Blöcken (DP0 bis DP3) ge lesenen Daten, dadurch gekennzeichnet, daß die Wortleitungen einzeln für jeden Block vorgesehen sind, und eine Einrichtung (3a, 3b-1 bis 3b-6) zum Auswählen einer aus der Mehrzahl von Wortleitungen (WL) in jedem Block, vorgesehen ist.
einem in eine erste Mehrzahl von Blöcken (DB0 bis DB7) zum je weiligen Speichern einer ersten Mehrzahl von Daten (D0 bis D7) und eine zweite Mehrzahl von Blöcken (DP0 bis DP3) zum jewei ligen Speichern einer zweiten Mehrzahl von Paritäts-Daten (P0 bis P3), die entsprechend der ersten Mehrzahl von Daten (D0 bis D7) vorbestimmt sind, aufgeteilten Speicherzellarray (1, 2), wobei jeder der Blöcke (DB0 bis DB7, DP0 bis DP3) eine Mehrzahl von in einer Mehrzahl von Zeilen angeordneten Speicherzellen und eine Mehrzahl von entsprechend der Mehrzahl von Zeilen vorgesehenen und jeweils gemeinsam mit allen in einer entsprechenden Zeile angeordneten Speicherzellen (MC) verbundenen Wortleitungen (WL) aufweist,
einer Einrichtung (8) zum Lesen der in den Speicherzellen, die mit einer Wortleitung verbunden sind, gespei cherten Daten aus der ersten Mehrzahl von Blöcken (DB0 bis DB7) und zum Auslesen der in den Speicherzellen, die mit der Wortleitung verbunden sind, gespeicherten Daten aus der zweiten Mehrzahl von Blöcken (DP0 bis DP3) und
einer Einrichtung (9) zum Nachweis eines Fehlers der durch die Leseeinrichtung (8) aus der ersten Mehrzahl von Blöcken (DB0 bis DB7) ausgelesenen Daten auf der Basis der durch die Lese einrichtung (8) aus jedem der ersten Mehrzahl von Blöcken (DB0 bis DB7) und der zweiten Mehrzahl von Blöcken (DP0 bis DP3) ge lesenen Daten, dadurch gekennzeichnet, daß die Wortleitungen einzeln für jeden Block vorgesehen sind, und eine Einrichtung (3a, 3b-1 bis 3b-6) zum Auswählen einer aus der Mehrzahl von Wortleitungen (WL) in jedem Block, vorgesehen ist.
2. Halbleiterspeichereinrichtung nach Anspruch 1, dadurch ge
kennzeichnet, daß, wenn die erste Mehrzahl bzw. die zweite
Mehrzahl mit m bzw. k bezeichnet werden, zwischen der ersten
Mehrzahl und der zweiten Mehrzahl die Beziehung 2k-1 m + k
gilt.
3. Halbleiterspeichereinrichtung nach Anspruch 1 oder 2, da
durch gekennzeichnet, daß die erste Mehrzahl von Blöcken (DB0
bis DB7) und die zweite Mehrzahl von Blöcken (DP0 bis DP3) in
einer Zeile in Richtung der Wortleitungen (WL) angeordnet ist.
4. Halbleiterspeichereinrichtung nach einnem Ansprüche 1 bis
3, dadurch gekennzeichnet, daß die Wortleitungen (WL) in jedem
Block (DB0 bis DB7, DP0 bis DP3) in eine Mehrzahl von Gruppen
aufgeteilt sind und die Auswahleinrichtung (3a, 3b-1 bis 3b-6)
aufweist:
eine Hauptauswahleinrichtung (3a) zum Auswählen einer Gruppe aus der Mehrzahl von Gruppen in jedem Block (DB0 bis DB7, DP0 bis DP3) in Reaktion auf ein Adreßsignal und eine Unterauswahleinrichtung (3b-1 bis 3b-6) zum Auswählen einer Wortleitung von den Wortleitungen in jeder Gruppe, die durch die Hauptauswahleinrichtung (3a) ausgewählt wurde. In Reaktion auf das Adreßsignal.
eine Hauptauswahleinrichtung (3a) zum Auswählen einer Gruppe aus der Mehrzahl von Gruppen in jedem Block (DB0 bis DB7, DP0 bis DP3) in Reaktion auf ein Adreßsignal und eine Unterauswahleinrichtung (3b-1 bis 3b-6) zum Auswählen einer Wortleitung von den Wortleitungen in jeder Gruppe, die durch die Hauptauswahleinrichtung (3a) ausgewählt wurde. In Reaktion auf das Adreßsignal.
5. Halbleitspeichereinrichtung nach Anspruch 4, dadurch ge
kennzeichnet, daß
die Hauptauswahleinrichtung (3a) eine Mehrzahl von Hauptdeko dereinrichtungen (31a), die gemeinsam für alle Blöcke (DB0 bis DB7, DP0 bis DP3) und entsprechend der Mehrzahl von Gruppen vorgesehen sind, aufweist,
wobei jede der Mehrzahl von Hauptdekodereinrichtungen (31a) das Adreßsignal dekodiert, um ein Signal zum Überführen einer ent sprechenden Gruppe in den ausgewählten Zustand oder den nicht-ausgewählten Zustand zu erzeugen, und die Unterauswahleinrichtung (3b-1 bis 3b-6) eine Mehrzahl von Subdekodereinrichtungsgruppen (31b, 32b) aufweist, die ent sprechend der Mehrzahl von Blöcken (DB0 bis DB7, DP0 bis DP3) vorgesehen ist,
wobei jede der Mehrzahl von Subdekodereinrichtungsgruppen (31b, 32b) eine Mehrzahl von Subdekodereinrichtungen (31b, 32b) enthält, die entsprechend der Mehrzahl von Gruppen eines entsprechenden Blocks vorgesehen ist und von denen jede zum Dekodieren des Adreßsignals und eines Ausgangssignals einer entsprechenden Hauptdekodereinrichtung (31a) zur Erzeugung eines Signals an jede Wortleitung der entsprechenden Gruppe zum Überführen derselben in den ausgewählten Zustand oder den nicht-ausgewählten Zustand vorgesehen ist.
die Hauptauswahleinrichtung (3a) eine Mehrzahl von Hauptdeko dereinrichtungen (31a), die gemeinsam für alle Blöcke (DB0 bis DB7, DP0 bis DP3) und entsprechend der Mehrzahl von Gruppen vorgesehen sind, aufweist,
wobei jede der Mehrzahl von Hauptdekodereinrichtungen (31a) das Adreßsignal dekodiert, um ein Signal zum Überführen einer ent sprechenden Gruppe in den ausgewählten Zustand oder den nicht-ausgewählten Zustand zu erzeugen, und die Unterauswahleinrichtung (3b-1 bis 3b-6) eine Mehrzahl von Subdekodereinrichtungsgruppen (31b, 32b) aufweist, die ent sprechend der Mehrzahl von Blöcken (DB0 bis DB7, DP0 bis DP3) vorgesehen ist,
wobei jede der Mehrzahl von Subdekodereinrichtungsgruppen (31b, 32b) eine Mehrzahl von Subdekodereinrichtungen (31b, 32b) enthält, die entsprechend der Mehrzahl von Gruppen eines entsprechenden Blocks vorgesehen ist und von denen jede zum Dekodieren des Adreßsignals und eines Ausgangssignals einer entsprechenden Hauptdekodereinrichtung (31a) zur Erzeugung eines Signals an jede Wortleitung der entsprechenden Gruppe zum Überführen derselben in den ausgewählten Zustand oder den nicht-ausgewählten Zustand vorgesehen ist.
6. Halbleiterspeichereinrichtung nach Anspruch 5, dadurch ge
kennzeichnet, daß die Subdekodereinrichtungsgruppe (31b), die
einem entsprechenden der ersten Mehrzahl von Blöcken (DB0 bis
DB7) und der zweiten Mehrzahl von Blöcken (DP0 bis DP3) ent
spricht, und die Subdekodereinrichtungsgruppe (32b), die einem
zum beliebigen einen Block benachbarten Block entspricht,
zwischen dem einen und dem benachbarten Block angeordnet sind.
7. Halbleiterspeichereinrichtung nach Anspruch 5 oder 6, da
durch gekennzeichnet, daß beim Auslesen der Daten eine Haupt
dekodereinrichtung der Mehrzahl von Hauptdekodereinrichtungen
(31a) ein Signal zum Überführen einer entsprechenden Gruppe in
den ausgewählten Zustand erzeugt und jede der anderen Hauptde
kodereinrichtungen ein Signal zum Überführen einer entsprechend
den Gruppe in den nicht-ausgewählten Zustand erzeugt und beim
Datenlesen in jeder Subdekodereinrichtungsgruppe (31b, 32b)
eine Subdekodereinrichtung nur an eine der Wortleitungen in
einer entsprechenden Gruppe ein Signal liefert, um diese in den
ausgewählten Zustand zu bringen, und jede der anderen Subdeko
dereinrichtungen ein Signal an jede Wortleitung in einer ent
sprechenden Gruppe zum Überführen derselben in den nicht-ausge
wählten Zustand liefert.
8. Halbleiterspeichereinrichtung nach einem der Ansprüche 5 bis
7, dadurch gekennzeichnet, daß die Hauptauswahleinrichtung (3a)
weiter eine Vordekodiereinrichtung (30a) zum Dekodieren des
Adreßsignals in eine vorbestimmte Form und zum Anlegen des
selben an die Mehrzahl von Hauptdekodereinrichtungen (31a) auf
weist.
9. Halbleiterspeichereinrichtung nach einem der Ansprüche 5 bis
8, dadurch gekennzeichnet, daß die Unterauswahleinrichtung wei
ter eine Mehrzahl von Vordekodereinrichtungen enthält, die ent
sprechend der Mehrzahl von Subdekodereinrichtungsgruppen (31b,
32b) vorgesehen sind und jeweils zum Dekodieren des Adreßsig
nals in eine vorbestimmte Form und zum Anlegen desselben an
alle Subdekodereinrichtungen in einer entsprechenden Subdeko
dereinrichtungsgruppe dienen.
10. Halbleiterspeichereinrichtung nach einem der Ansprüche 1
bis 9, dadurch gekennzeichnet, daß die Halbleiterspeicher
einrichtung weiter eine Korrektureinrichtung (9) zum Ausführen
einer vorbestimmten logischen Operation zur Korrektur eines
Fehlers von einem Bit, der in den aus der Mehrzahl von Blöcken
(DB0 bis DB7) enthalten ist, bezüglich der aus der ersten Mehr
zahl von Blöcken (DB0 bis DB7) ausgelesenen Daten (D0 bis D7)
und der aus der zweiten Mehrzahl von Blöcken (DP0 bis DP3) aus
gelesenen Daten (P0 bis P3) aufweist.
11. Halbleiterspeichereinrichtung nach einem der Ansprüche 1 bis 10,
dadurch gekennzeichnet, daß
jeder Block (DB0 bis DB7, DP0 bis DP3) eine Mehrzahl von
in einer Mehrzahl von Zeilen angeordneten Speicherzellen (MC)
und eine Mehrzahl von entsprechend der Mehrzahl von Zeilen an
geordneten Wortleitungen (WL) die einzeln für jeden Block vorgesehen sind zum Ermöglichen eines Datenlesens
durch die Leseeinrichtung (8) aus den in einer entsprechenden
Zeile angeordneten Speicherzellen aufweist,
wobei die Wortleitungen (WL) in jedem Block (DB0 bis DB7, DP0 bis DP3) und die Wortleitungen (WL) in den anderen Blöcken nicht elektrisch miteinander verbunden sind.
wobei die Wortleitungen (WL) in jedem Block (DB0 bis DB7, DP0 bis DP3) und die Wortleitungen (WL) in den anderen Blöcken nicht elektrisch miteinander verbunden sind.
12. Betriebsverfahren für eine Halbleiterspeichereinrichtung
mit einem in eine erste Mehrzahl von Blöcken (DB0 bis DB7) zum
jeweiligen Speichern einer ersten Mehrzahl von Daten (D0 bis
D7) und eine zweite Mehrzahl von Blöcken (DP0 bis DP3) zum je
weiligen Speichern einer zweiten Mehrzahl von Paritäts-Daten
(P0 bis P3), die entsprechend der ersten Mehrzahl von Daten (D0
bis D7) vorbestimmt sind, aufgeteilten Speicherzellarray (1,
2), bei dem jeder Block (DB0 bis DB7, DP0 bis DP3) eine Mehr
zahl von in einer Mehrzahl von Zeilen angeordneten Speicher
zellen (MC) und eine Mehrzahl von entsprechend der Mehrzahl von
Zeilen und jeweils mit allen in einer entsprechenden Zeile ver
bundenen Speicherzellen (MC) verbundenen Wortleitungen die einzeln für jeden Block vorgesehen sind auf
weist, mit:
einem Schritt des Auswählens einer der Mehrzahl von Wortlei tungen die einzeln für jeden Block vorgesehen sind in jedem Block,
einem Schritt des Lesens der in den mit der ausgewählten einen Wortleitung verbundenen Speicherzellen gespeicherten Werte aus jedem der ersten Mehrzahl von Blöcken (DB0 bis DB7) und des Auslesens der in dem mit der ausgewählten einen Wortleitung verbundenen Speicherzellen gespeicherten Daten aus jedem der zweiten Mehrzahl von Blöcken (DP0 bis DP3) und
einem Schritt zum Nachweisen eines Fehlers der aus der ersten Mehrzahl von Blöcken (DB0 bis DB7) ausgelesenen Daten auf der Basis der aus jedem der ersten Mehrzahl von Blöcken (DB0 bis DB7) und der zweiten Mehrzahl von Blöcken (DP0 bis DP3) aus gelesenen Daten.
einem Schritt des Auswählens einer der Mehrzahl von Wortlei tungen die einzeln für jeden Block vorgesehen sind in jedem Block,
einem Schritt des Lesens der in den mit der ausgewählten einen Wortleitung verbundenen Speicherzellen gespeicherten Werte aus jedem der ersten Mehrzahl von Blöcken (DB0 bis DB7) und des Auslesens der in dem mit der ausgewählten einen Wortleitung verbundenen Speicherzellen gespeicherten Daten aus jedem der zweiten Mehrzahl von Blöcken (DP0 bis DP3) und
einem Schritt zum Nachweisen eines Fehlers der aus der ersten Mehrzahl von Blöcken (DB0 bis DB7) ausgelesenen Daten auf der Basis der aus jedem der ersten Mehrzahl von Blöcken (DB0 bis DB7) und der zweiten Mehrzahl von Blöcken (DP0 bis DP3) aus gelesenen Daten.
13. Betriebsverfahren nach Anspruch 12, gekennzeichnet
durch einen Schritt des Korrigierens des nachgewiesenen Feh
lers.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3175042A JPH0520896A (ja) | 1991-07-16 | 1991-07-16 | 半導体記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4223273A1 DE4223273A1 (de) | 1993-01-21 |
DE4223273C2 true DE4223273C2 (de) | 1995-03-09 |
Family
ID=15989205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4223273A Expired - Fee Related DE4223273C2 (de) | 1991-07-16 | 1992-07-15 | Halbleiterspeichereinrichtung und Betriebsverfahren für eine solche |
Country Status (3)
Country | Link |
---|---|
JP (1) | JPH0520896A (de) |
KR (1) | KR950010313B1 (de) |
DE (1) | DE4223273C2 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19700510A1 (de) * | 1996-06-10 | 1997-12-11 | Mitsubishi Electric Corp | Speicherkarte mit Fehlerkorrekturfähigkeit und zugehöriges Fehlerkorrekturverfahren |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6026052A (en) | 1994-05-03 | 2000-02-15 | Fujitsu Limited | Programmable semiconductor memory device |
JP2000331494A (ja) | 1999-05-19 | 2000-11-30 | Nec Corp | 半導体記憶装置 |
US11611358B2 (en) | 2019-12-24 | 2023-03-21 | Kioxia Corporation | Systems and methods for detecting or preventing false detection of three error bits by SEC |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4692923A (en) * | 1984-09-28 | 1987-09-08 | Ncr Corporation | Fault tolerant memory |
JPH02195600A (ja) * | 1989-01-23 | 1990-08-02 | Fujitsu Ltd | 半導体記憶装置及びその故障検出方法 |
JPH07114077B2 (ja) * | 1989-06-01 | 1995-12-06 | 三菱電機株式会社 | 不揮発性半導体記憶装置 |
JPH03100999A (ja) * | 1989-09-12 | 1991-04-25 | Hitachi Ltd | 半導体記憶装置 |
-
1991
- 1991-07-16 JP JP3175042A patent/JPH0520896A/ja active Pending
-
1992
- 1992-07-15 DE DE4223273A patent/DE4223273C2/de not_active Expired - Fee Related
- 1992-07-16 KR KR1019920012798A patent/KR950010313B1/ko not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19700510A1 (de) * | 1996-06-10 | 1997-12-11 | Mitsubishi Electric Corp | Speicherkarte mit Fehlerkorrekturfähigkeit und zugehöriges Fehlerkorrekturverfahren |
US5848076A (en) * | 1996-06-10 | 1998-12-08 | Mitsubishi Denki Kabushiki Kaisha | Memory card with capability of error correction and error correction method therefore |
Also Published As
Publication number | Publication date |
---|---|
KR950010313B1 (ko) | 1995-09-14 |
KR930003169A (ko) | 1993-02-24 |
JPH0520896A (ja) | 1993-01-29 |
DE4223273A1 (de) | 1993-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4241327C2 (de) | Halbleiterspeichervorrichtung | |
DE69024851T2 (de) | Halbleiterspeicheranordnung | |
DE68928112T2 (de) | Masken-rom mit Ersatzspeicherzellen | |
DE3785469T2 (de) | Halbleiterspeichergeraet mit redundanter speicherzelle. | |
DE4242810C2 (de) | EEPROM mit einem Fehlerprüf- und Korrektur-Schaltkreis | |
DE102008021414A1 (de) | Flexibles Redundanzersetzungsschema für ein Halbleiterbauteil | |
DE2619159A1 (de) | Fehlererkennungs- und korrektureinrichtung | |
DE10206689B4 (de) | Integrierter Speicher und Verfahren zum Betrieb eines integrierten Speichers | |
EP1046993B1 (de) | Halbleiterspeicheranordnung mit BIST | |
DE69120000T2 (de) | Halbleiterspeichergerät mit Redundanzschaltung | |
EP1008993B1 (de) | Schreib/Lesespeicher mit Selbsttestvorrichtung und zugehöriges Testverfahren | |
DE19963689A1 (de) | Schaltungsanordnung eines integrierten Halbleiterspeichers zum Speichern von Adressen fehlerhafter Speicherzellen | |
EP1444699B1 (de) | Verfahren zur rekonfiguration eines speichers | |
DE3827174A1 (de) | Halbleiter-speichervorrichtung | |
EP0902924B1 (de) | Redundanzspeichervorrichtung mit rom-speicherzellen | |
DE69100796T2 (de) | Integrierte Speicherschaltung mit Redundanz und verbesserter Adressierung in Testbetriebsart. | |
DE4223273C2 (de) | Halbleiterspeichereinrichtung und Betriebsverfahren für eine solche | |
EP0615211A1 (de) | Verfahren zum Speichern sicherheitsrelevanter Daten | |
DE102020134945A1 (de) | Dynamische fehlerüberwachung und -reparatur | |
DE69300165T2 (de) | Verfahren zur Reparatur defekter Elemente in einem Redundanzspeicher. | |
DE19922786B4 (de) | Halbleiterspeicher mit Testeinrichtung | |
EP0655164B1 (de) | Selbsttesteinrichtung für speicheranordnungen, decoder oder dgl. | |
DE10229164B4 (de) | Speicherbaustein mit einem Datengenerator und einer Testlogik und Verfahren zum Testen von Speicherzellen eines Speicherbausteins | |
DE69000302T2 (de) | Redundanzschaltung mit speicherung der position des ausgangs. | |
DE102007029371A1 (de) | Verfahren zum Verbergen defekter Speicherzellen und Halbleiterspeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8339 | Ceased/non-payment of the annual fee |