DE4223273C2 - Halbleiterspeichereinrichtung und Betriebsverfahren für eine solche - Google Patents

Halbleiterspeichereinrichtung und Betriebsverfahren für eine solche

Info

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
Application number
DE4223273A
Other languages
English (en)
Other versions
DE4223273A1 (de
Inventor
Kenji Kohda
Hiroyasu Makihara
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE4223273A1 publication Critical patent/DE4223273A1/de
Application granted granted Critical
Publication of DE4223273C2 publication Critical patent/DE4223273C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity 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.
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.
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.
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.
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.
13. Betriebsverfahren nach Anspruch 12, gekennzeichnet durch einen Schritt des Korrigierens des nachgewiesenen Feh­ lers.
DE4223273A 1991-07-16 1992-07-15 Halbleiterspeichereinrichtung und Betriebsverfahren für eine solche Expired - Fee Related DE4223273C2 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 半導体記憶装置

Cited By (2)

* Cited by examiner, † Cited by third party
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