DE19937101A1 - Halbleiterspeicherbauelement mit Chipinterner Fehlerkorrekturschaltung und ein Verfahren zum Korrigieren eines Datenfehlers darin - Google Patents

Halbleiterspeicherbauelement mit Chipinterner Fehlerkorrekturschaltung und ein Verfahren zum Korrigieren eines Datenfehlers darin

Info

Publication number
DE19937101A1
DE19937101A1 DE19937101A DE19937101A DE19937101A1 DE 19937101 A1 DE19937101 A1 DE 19937101A1 DE 19937101 A DE19937101 A DE 19937101A DE 19937101 A DE19937101 A DE 19937101A DE 19937101 A1 DE19937101 A1 DE 19937101A1
Authority
DE
Germany
Prior art keywords
bits
error
data bits
group
data
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.)
Withdrawn
Application number
DE19937101A
Other languages
English (en)
Inventor
Jin-Yub Lee
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE19937101A1 publication Critical patent/DE19937101A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/109Sector level checksum or ECC, i.e. sector or stripe level checksum or ECC in addition to the RAID parity calculation

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)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Detection And Correction Of Errors (AREA)
  • Dram (AREA)

Abstract

Es werden ein Halbleiterspeicherbauelement und ein Verfahren zum Korrigieren eines Fehlers davon offenbart. Das Bauelement umfaßt eine Speicherzellenmatrix (100), die eine Vielzahl von Datenbits und eine Vielzahl von Prüfbits entsprechend der Vielzahl der Datenbits speichert. In dem Bauelement ist ferner eine Leseschaltung (140) vorgesehen, die eine Operation zum Auslesen der Vielzahl von Datenbits und der Vielzahl von Prüfbits aus der Speicherzellenmatrix (100) durchführt. Das Halbleiterspeicherbauelement umfaßt ferner eine Schaltung (200) zum Korrigieren eines ersten Fehlers in den Datenbits der ersten Gruppe bzw. eines zweiten Fehlers in den Datenbits der zweiten Gruppe. Die Schaltung (200) zum Korrigieren empfängt parallel ungeradzahlige und geradzahlige der Daten- und Prüfbits, die aus der Speicherzellenmatrix ausgelesen werden, während eines ersten Zyklus einer Lesebetriebsart und erzeugt erste Syndrombits und zweite Syndrombits. Und dann korrigiert die Schaltung während eines zweiten Zyklus der Lesebetriebsart den Fehler in den ungeradzahligen Datenbits und den Fehler in den geradzahligen Datenbits als Reaktion auf die ersten bzw. die zweiten Syndrombits.

Description

Die Erfindung betrifft Halbleiterspeicherbauelemente und insbesondere ein Halbleiterspeicherbauelement mit einer chipinternen Fehlerkorrekturschaltung, die in der Lage ist, eine Zugriffszeit zu verbessern, und ein Verfahren zum Korrigieren eines Fehlers von in dem Halbleiterspeicherbauelement gespeicherten Daten.
In einem Halbleiterspeicherbauelement, insbesondere einem Flash-Speicherbauelement, ist eine Speicherzellenmatrix vorgesehen, die aus elektrisch löschbaren und programmierbaren Speicherzellen besteht, die jeweils ein schwebendes Gate aufweisen (nachstehend als EEPROM-Zellen bezeichnet). Um im schwebenden Gate der jeweiligen EEPROM-Zel­ len eine Ladung zu speichern, ermöglicht eine Schwellenspannung von jeder der EEPROM-Zellen, die zwischen niedrigen und hohen Pegelwerten elektrisch geändert werden soll, daß eine logische "1" bzw. eine logische "0" dargestellt wird. Für die Technologien mit schwebendem Gate besteht kein materialeigenes Problem mit dem Datenerhalt. Da der hochenergetische Elektroneninjektions- und -emi­ ssionsmechanismus, der zum Schreiben und Löschen verwendet wird, zur Erzeugung von Defekten und Haftstellen unter einem Tunneloxid führt, treten jedoch während der Lese- und Schreibzyklen Zuverlässigkeitsprobleme auf. Gespeicherte Elektronen können durch die Tunneloxiddefekte und Haftstellen vom schwebenden Gate abfließen. Andererseits gewinnt das schwebende Gate langsam Elektronen, wenn ein Steuergate der EEPROM-Zelle während des Lesezyklus auf einer Versorgungsspannung gehalten wird. Der Ladungsverlust und -gewinn verursachen eine Erhöhung und Senkung einer Schwellenspannung einer Speicherzelle, das heißt des EEPROM-Zellentransistors, und können zu zufälligen Bitfehlern führen.
Gewöhnlich wurde ein(e) Fehlerkorrekturcode/-schaltung (nachstehend als ECC bezeichnet) für die Verbesserung der Zuverlässigkeit des Flash-Speichersystems verwendet. Es existiert ein Verfahren zum Korrigieren eines Fehlers durch Implementieren der ECC in einer Steuereinheit, es ist jedoch eine Anwendung einer chipinternen ECC erforderlich, die zu einer leichten Verwendung in einem Kartensystem in der Lage ist, das nicht die Steuereinheit mit einer solchen Funktion trägt. Die ECC in einem Chip unterzubringen, ist als solches Ergebnis vorteilhafter bei den Herstellungskosten, als die ECC in der Steuereinheit unterzubringen. Eine chipinterne ECC-Technologie ist in IEEE JOURNAL OF SOLID-STATE CIRCUITS, BAND 32, Nr. 5, Mai 1997, mit dem Titel "A COMPACT ON-CHIP ECC FOR LOW COST FLASH MEMORIES", offenbart, das hiermit durch den Hinweis aufgenommen wird.
Fig. 1 ist ein Blockdiagramm eines herkömmlichen Halbleiterspeicherbauelements mit einer chipinternen ECC. Das Halbleiterspeicherbauelement von Fig. 1 umfaßt eine Speicherzellenmatrix 10, die eine Vielzahl von Datenbits und eine Vielzahl von Prüfbits (oder redundanten Bits) entsprechend den Datenbits der Vielzahl speichert. Bei dieser Anwendung wird nachstehend ein Flash-Spei­ cherbauelement vom NICHT-UND-Typ, das auf dem Fachgebiet gut bekannt ist, als Beispiel beschrieben. Flash-Speicherzellen, die in dem Flash-Speicherbauelement vom NICHT-UND-Typ vorgesehen sind, sind im US-Patent Nr. 5 696 717 mit dem Titel "NONVOLATILE INTEGRATED CIRCUIT MEMORY DEVICES HAVING ADJUSTABLE ERASE/PROGRAM THRESHOLD VOLTAGE VERIFICATION CAPABILITY", genauer offenbart, das hiermit durch den Hinweis aufgenommen wird.
Wie in Fig. 1 dargestellt, ist die Speicherzellenmatrix 10 in eine Vielzahl von Eingabe-/Ausgabe (E/A)-Speicherblöcke IOMBi (beispielsweise i = 1-8) gemäß einer E/A-Datenbreite (beispielsweise X8) unterteilt. Eine Vielzahl von Wortleitungen WLi sind jeweils in einer Vielzahl von Zeilen durch die E/A-Speicherblöcke IOMB1-IOMB8 angeordnet. In jedem E/A-Speicherblock IOMB1-IOMB8 sind eine Vielzahl von Bitleitungen BLm (beispielsweise 512 Bitleitungen) und eine Vielzahl von Paritätsbitleitungen PBLn (beispielsweise 10 Paritätsbitleitungen) so angeordnet, daß sie sich mit den Wortleitungen WLi der Vielzahl schneiden. In jedem E/A-Spei­ cherblock IOMB1-IOMB8 ist ferner eine Vielzahl von Speicherzellen MC vorgesehen, die an den Schnittpunkten der Wortleitungen WLi und der Bitleitungen BLm und PBLn angeordnet sind.
Die Wortleitungen WLi sind jeweils mit einer Zeilendecodierschaltung 12 verbunden, die auf einer linken Seite der Matrix 10 angeordnet ist. Die Zeilendecodierschaltung 12 wählt eine der Wortleitungen WLi gemäß von außen gelieferten Zeilenadreßsignalen RA0-RAi aus und steuert die ausgewählte Wortleitung mit einer Wortleitungsspannung an, die gemäß jeweiligen Betriebsarten (beispielsweise Lese- und Schreibbetriebsarten) unterschiedlich eingestellt wird. Die zur Zeilendecodierschaltung 12 gehörende Beschreibung ist im '717-Pa­ tent offenbart. Die 512 Bitleitungen BLm und die 10 Paritätsbitleitungen PBLn in jedem E/A-Speicherblock IOMB1-IOMB8 sind mit einer Leseverstärkerschaltung 14 gekoppelt, die auf einer unteren Seite der Matrix 10 angeordnet ist. Obwohl in der Zeichnung nicht dargestellt, sind Zwischenspeicher-Leseverstärker, die derzeit in einem Flash-Speicherbauelement vom NICHT-UND-Typ und einem DRAM-Bau­ element verwendet werden, in der Leseverstärkerschaltung 14 vorgesehen, so daß sie der Anzahl der Bitleitungen und Paritätsbitleitungen in jedem E/A-Speicherblock entsprechen. Beispielsweise ist die Anzahl der Leseverstärker entsprechend jedem der E/A-Speicherblöcke IOMB1-IOMB8 522 (512+10). Ein Beispiel des Zwischenspeicher-Leseverstärkers, der in dem NICHT-UND-Flash-Spei­ cherbauelement verwendet wird, ist im US-Patent Nr. 5 216 633 mit dem Titel "NONVOLATILE SEMICONDUCTOR MEMORY DEVICE INCLUDING ACCESS CODE CIRCUITRY", offenbart, welches hiermit durch den Hinweis aufgenommen wird. Die jeweiligen Leseverstärker, die jedem Block IOMB1-IOMB8 entsprechen, lesen und verstärken 512 Datenbits und 10 Prüfbits aus dem entsprechenden E/A-Speicherblock über die entsprechenden Bitleitungen BLm und Paritätsbitleitungen PBLn und speichern dann die so gelesenen Daten- und Prüfbits darin.
Mit der Leseverstärkerschaltung 14 ist eine Spalten-Durch­ gangsgatterschaltung 16 verbunden, die unter der Steuerung einer Spaltendecodierschaltung 18 arbeitet. Fehlerkorrekturschaltungen 20, die jeweils den E/A-Spei­ cherblöcken IOMB1-IOMB8 entsprechen, sind mit der Spalten-Durchgangsgatterschaltung 16 verbunden. Die 512 Datenbits und 10 Prüfbits, die aus jedem der E/A-Spei­ cherblöcke IOMB1-IOMB8 ausgelesen werden, das heißt, in der Leseverstärkerschaltung 18 zwischengespeichert werden, werden gemäß der Steuerung der Spaltendecodierschaltung 18 über die Spalten-Durchgangsgatterschaltung 16 nacheinander zur entsprechenden Fehlerkorrekturschaltung 20 übertragen. Dies wird später genauer beschrieben.
Fig. 2 ist ein Blockdiagramm einer in Fig. 1 dargestellten Fehlerkorrekturschaltung 20, die in der vorstehend angeführten Verweisquelle, dem IEEE JOURNAL OF SOLID-STATE CIRCUITS, offenbart ist. Die in Fig. 2 dargestellte Fehlerkorrekturschaltung 20 entspricht einem der 8 E/A-Spei­ cherblöcke IOMB1-IOMB8 und umfaßt einen Syndromgenerator 22, einen Fehlerdetektor 24 und einen Fehlerkorrektor 30. Es ist für Fachleute offensichtlich, daß die anderen gleich konfiguriert sind wie die Fehlerkorrekturschaltung 20 von Fig. 2. In Fig. 2 basiert die Fehlerkorrekturschaltung 20 auf dem Hamming-Code (2r ≧ m + r + 1, wobei m die Anzahl der Datenbits und r die Anzahl der Prüfbits oder redundanten Bits angibt), der durch das Generatorpolynom g(x) = x10+ x3 + 1 erzeugt wird.
Fig. 3 ist ein Ablaufdiagramm der in Fig. 2 dargestellten Fehlerkorrekturschaltung.
Eine Operation des Auslesens von Daten aus der Speicherzellenmatrix 10 wird nachstehend mit Bezug auf Fig. 1 bis 3 genauer beschrieben. Für eine leichte Beschreibung wird die Datenleseoperation im Zusammenhang mit nur einem E/A-Speicherblock beschrieben, aber sie wird im Zusammenhang mit den restlichen E/A-Speicherblöcken identisch dazu durchgeführt.
Die Operation des Auslesens von Daten ist in einen ersten und einen zweiten Zyklus unterteilt. Während des ersten Zyklus werden 522 Bits eines ECC-Worts, das einer ausgewählten Seite (oder einer Wortleitung) des E/A-Spei­ cherblocks, beispielsweise IOMB1, entspricht, über die Schalterschaltung 26 (das heißt, die Spalten-Durch­ gangsgatterschaltung 16) nacheinander zum Syndromgenerator 22 übertragen. Und dann erzeugt der Syndromgenerator 22 10 Syndrombits als Reaktion auf die 522 Bits des ECC-Worts. Die vom Syndromgenerator 22 so erzeugten 10 Syndrombits werden als Adresse zum Korrigieren eines Fehlers von 1 Bit in den Datenbits der ausgewählten Seite verwendet und werden mittels des Fehlerdetektors 24 decodiert. In Fig. 2 ist die Spalten-Durch­ gangsgatterschaltung 16 von Fig. 1 durch die Schalterschaltungen 26 und 28 dargestellt, die während des ersten und des zweiten Zyklus einander ausschließend arbeiten.
Und dann werden während des zweiten Zyklus das durch den Detektor 24 decodierte Signal (Adreßinformation für den Fehler) und die in der Leseverstärkerschaltung 14 zwischengespeicherten 512 Datenbits nacheinander an den Fehlerkorrektor 30 angelegt, der durch eine Exklusiv-ODER-Gat­ terschaltung verkörpert ist. Die so korrigierten 512 Datenbits werden über eine entsprechende E/A-Schaltung 22 nach außen übertragen. In dem Fall, daß das Signal aus dem Detektor 24, das einem Datenbit entspricht, das gerade zum Korrektor 30 übertragen wird, beispielsweise auf einer logischen "1" liegt, bedeutet dies, daß das Datenbit fehlerhaft ist. Folglich wird das fehlerhafte Datenbit nach Korrektur durch den Korrektor 30 zur entsprechenden E/A-Schal­ tung 22 übertragen. Wenn das Signal aus dem Detektor 24 auf einer logischen "0" liegt, bedeutet dies, daß das Datenbit nicht fehlerhaft ist. Folglich wird das Datenbit ohne Fehlerkorrektur durch den Korrektor 30 zur entsprechenden E/A-Schaltung 22 übertragen.
Gemäß dem herkömmlichen Halbleiterspeicherbauelement mit dem vorstehend beschriebenen Fehlerkorrektur-Schal­ tungsschema kann nur ein 1-Bit-Fehler in den 512 Datenbits einer ausgewählten Seite erkannt und korrigiert werden. Ferner sind 522 Taktzyklen zum Steuern der in Fig. 2 dargestellten Schalterschaltung 26 während des ersten Zyklus der Lesebetriebsart erforderlich, wobei eine Fehlerstelle in den 512 Datenbits wie vorstehend beschrieben erkannt wird. Dies verursacht eine Steigerung einer Zugriffszeit auf das Flash-Speicherbauelement. Daher ist es erforderlich, sowohl die Zugriffszeit zu verringern, um ein Hochgeschwindigkeits-Speicherbauelement mit hoher Zuverlässigkeit zu realisieren, als auch eine Fehlerkorrektureffizienz zu verbessern.
Es ist daher Aufgabe der Erfindung, ein Halbleiterspeicherbauelement mit einer chipinternen Fehlerkorrekturschaltung bereitzustellen, die in der Lage ist, eine Zugriffszeit zu verbessern.
Ferner soll ein Halbleiterspeicherbauelement mit einer chipinternen Fehlerkorrekturschaltung bereitgestellt werden, die in der Lage ist, mindestens zwei fehlerhafte Bits in den Datenbits, die einem Eingabe-/Ausgabespeicherblock entsprechen, zu korrigieren.
Außerdem soll ein Verfahren zum Korrigieren eines Datenfehlers in einem Halbleiterspeicherbauelement bereitgestellt werden.
Gemäß einem Aspekt der Erfindung wird ein Verfahren zum Korrigieren eines Fehlers in einem Halbleiterspeicherbauelement mit einer Speicherzellenmatrix, in der eine Vielzahl von Datenbits und eine Vielzahl von Prüfbits entsprechend den Datenbits der Vielzahl gespeichert sind, bereitgestellt. Die Vielzahl von Datenbits und die Vielzahl von Prüfbits sind in mindestens eine erste und eine zweite Gruppe gleich aufgeteilt. Das Verfahren besteht aus den Schritten: Lesen der Vielzahl von Datenbits und der Vielzahl von Prüfbits aus der Speicherzellenmatrix; gleichzeitiges Empfangen der Daten- und Prüfbits der ersten Gruppe und der Daten- und Prüfbits der zweiten Gruppe, um eine erste und eine zweite Gruppe von Syndrombits entsprechend der ersten bzw. der zweiten Gruppe der Daten- und Prüfbits zu erzeugen; Decodieren der ersten und der zweiten Gruppe von Syndrombits, um einen Fehler in den Datenbits der ersten bzw. der zweiten Gruppe zu erkennen, und Ausgeben eines ersten Signals, das die Anwesenheit oder Abwesenheit des Fehlers in den Datenbits der ersten Gruppe anzeigt, und eines zweiten Signals, das die Anwesenheit oder Abwesenheit des Fehlers in den Datenbits der zweiten Gruppe anzeigt; und abwechselndes Empfangen der Datenbits der ersten Gruppe und der Datenbits der zweiten Gruppe, und Korrigieren des Fehlers in den Datenbits der ersten Gruppe als Reaktion auf das erste Signal und des Fehlers in den Datenbits der zweiten Gruppe als Reaktion auf das zweite Signal.
Gemäß einem weiteren Aspekt dieser Erfindung wird ein Halbleiterspeicherbauelement bereitgestellt, das folgendes umfaßt: eine Speicherzellenmatrix, die eine Vielzahl von Datenbits und eine Vielzahl von Prüfbits entsprechend den Datenbits der Vielzahl speichert, wobei die Vielzahl von Datenbits und die Vielzahl von Prüfbits in mindestens eine erste und eine zweite Gruppe gleich aufgeteilt sind; ein Mittel zum Auslesen der Vielzahl von Datenbits und der Vielzahl von Prüfbits aus der Speicherzellenmatrix; und ein Mittel zum Korrigieren eines ersten Fehlers in den Datenbits der ersten Gruppe bzw. eines zweiten Fehlers in den Datenbits der zweiten Gruppe. Wobei das Mittel zum Korrigieren die Daten- und Prüfbits der ersten Gruppe und die Daten- und Prüfbits der zweiten Gruppe parallel empfängt, erste Syndrombits bzw. zweite Syndrombits entsprechend der ersten und der zweiten Gruppe der Datenbits erzeugt, und den ersten Fehler in den Datenbits der ersten Gruppe und den zweiten Fehler in den Datenbits der zweiten Gruppe als Reaktion auf die ersten bzw. zweiten Syndrombits korrigiert.
In dem erfindungsgemäßen Halbleiterspeicherbauelement ist ferner eine Eingabe-/Ausgabeschaltung vorgesehen, die die Datenbits der ersten und der zweiten Gruppe ausgibt, welche abwechselnd aus dem Mittel zum Korrigieren ausgegeben werden.
Ferner umfaßt in dem Halbleiterspeicherbauelement das Mittel zum Korrigieren eine erste Fehlerkorrekturschaltung zum Korrigieren des ersten Fehlers in den Datenbits der ersten Gruppe und eine zweite Fehlerkorrekturschaltung zum Korrigieren des zweiten Fehlers in den Datenbits der zweiten Gruppe, wobei die erste und die zweite Fehlerkorrekturschaltung gemeinsam mit der Eingabe-/Ausgabeschaltung gekoppelt sind, wobei die erste Fehlerkorrekturschaltung einen ersten Syndromgenerator zum fortlaufenden Empfangen der Daten- und Prüfbits der ersten Gruppe, um die ersten Syndrombits als Reaktion darauf zu erzeugen; einen ersten Detektor zum Decodieren der ersten Syndrombits, um den ersten Fehler in den Datenbits der ersten Gruppe zu erkennen, und zum Ausgeben eines ersten Signals, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt; und einen ersten Korrektor zum fortlaufenden Empfangen der Datenbits der ersten Gruppe und zum Korrigieren des ersten Fehlers in den Datenbits der ersten Gruppe als Reaktion auf das erste Signal, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt, umfaßt; und wobei die zweite Fehlerkorrekturschaltung einen zweiten Syndromgenerator zum fortlaufenden Empfangen der Daten- und Prüfbits der zweiten Gruppe, um die zweiten Syndrombits als Reaktion darauf zu erzeugen; einen zweiten Detektor zum Decodieren der zweiten Syndrombits, um den zweiten Fehler in den Datenbits der zweiten Gruppe zu erkennen, und zum Ausgeben eines zweiten Signals, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt; und einen zweiten Korrektor zum Empfangen der Datenbits der zweiten Gruppe und zum Korrigieren des zweiten Fehlers in den Datenbits der zweiten Gruppe als Reaktion auf das zweite Signal, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt, umfaßt.
Ausführungsbeispiele der Erfindung werden nachstehend anhand der Zeichnung unter Bezugnahme auf den Stand der Technik näher erläutert. Es zeigen:
Fig. 1 ein Blockdiagramm eines herkömmlichen Halbleiterspeicherbauelements mit einer chipinternen Fehlerkorrekturschaltung;
Fig. 2 ein Blockdiagramm einer in Fig. 1 dargestellten herkömmlichen Fehlerkorrekturschaltung;
Fig. 3 ein Ablaufdiagramm einer in Fig. 2 dargestellten Fehlerkorrekturschaltung;
Fig. 4 eine bevorzugte Ausführungsform eines Halbleiterspeicherbauelements gemäß der Erfindung;
Fig. 5 ein Blockdiagramm zum Beschreiben einer Beziehung der Dateneingabe und -ausgabe gemäß Lese- und Schreibbetriebsarten;
Fig. 6 ein Blockdiagramm, das zwei Fehlerkorrekturschaltungen, eine erste und eine zweite Leseverstärkerschaltung und eine erste und eine zweite Spalten-Durchgangsgatterschaltung, die zu einer Eingabe-/Ausgabeschaltung gehören, zeigt;
Fig. 7 eine bevorzugte Ausführungsform einer in Fig. 4 dargestellten Fehlerkorrekturschaltung gemäß der Erfindung;
Fig. 8 ein Diagramm, das eine Ablaufsteuerung zwischen in Fig. 7 verwendeten Steuersignalen zeigt;
Fig. 9 ein Diagramm, das eine Ablaufsteuerung zwischen in Fig. 6 verwendeten Steuersignalen zeigt;
Fig. 10 eine zweite Ausführungsform des Halbleiterspeicherbauelements gemäß der Erfindung;
Fig. 11 eine dritte Ausführungsform des Halbleiterspeicherbauelements gemäß der Erfindung;
Fig. 12 eine bevorzugte Ausführungsform einer in Fig. 11 dargestellten Fehlerkorrekturschaltung;
Fig. 13 eine vierte Ausführungsform des Halbleiterspeicherbauelements gemäß der Erfindung; und
Fig. 14 eine bevorzugte Ausführungsform einer in Fig. 13 dargestellten Fehlerkorrekturschaltung.
Die bevorzugten Ausführungsformen gemäß der Erfindung werden nachstehend mit Bezug auf die zugehörigen Zeichnungen genauer beschrieben.
Fig. 4 ist eine bevorzugte Ausführungsform eines Halbleiterspeicherbauelements gemäß der Erfindung. Diese Ausführungsform wird unter der Annahme beschrieben, daß eine Eingabe-/Ausgabedatenbreite X8 ist und acht Eingabe-/Aus­ gabeschaltungen zum Eingeben/Ausgeben von Daten in das/aus dem Halbleiterspeicherbauelement vorgesehen sind. Das Halbleiterspeicherbauelement dieser Ausführungsform umfaßt eine Speicherzellenmatrix 100, die in acht E/A-Spei­ cherblöcke IOMB1-IOMB8 unterteilt ist, so daß sie jeweils den acht Eingabe-/Ausgabeschaltungen 220 entsprechen.
Wie in Fig. 4 dargestellt, sind 512 Bitleitungen BL und 18 Paritätsbitleitungen PBL in jedem der acht E/A-Spei­ cherblöcke IOMB1-IOMB8 vorgesehen. Eine Vielzahl von Wortleitungen WLi sind jeweils in Zeilenrichtung durch die E/A-Speicherblöcke IOMB1-IOMB8 angeordnet und sind jeweils mit einer Zeilendecodierschaltung 120 gekoppelt. Eine Vielzahl von Speicherzellen MC sind jeweils an den Schnittpunkten der Wortleitungen WLi und der Bitleitungen BLm und PBLn in jedem E/A-Speicherblock angeordnet. Datenbits werden jeweils in den Speicherzellen gespeichert, die mit den 512 Bitleitungen BLm verbunden sind, welche in den jeweiligen E/A-Speicherblöcken IOMB1-IOMB8 vorgesehen sind, und Prüfbits werden jeweils in den Speicherzellen gespeichert, die mit den 10 Paritätsbitleitungen PBLn verbunden sind, welche in den jeweiligen E/A-Spei­ cherblöcken IOMB1-IOMB8 vorgesehen sind.
Für eine leichte Beschreibung werden nachstehend nur die Elementarbestandteile, die zu einem E/A-Speicherblock (beispielsweise IOMB1) gehören, beschrieben, aber es ist für Fachleute offensichtlich, daß die zu den restlichen Blöcken IOMB2-IOMB8 gehörenden Elementarbestandteile identisch zu jenen konfiguriert sind, die zum Block IOMB1 gehören.
Unter weiterer Bezugnahme auf Fig. 4 ist auf einer unteren Seite der Speicherzellenmatrix 100 eine erste Leseverstärkerschaltung 104_unten angeordnet, mit der eine erste Gruppe von Bitleitungen und Paritätsbitleitungen, beispielsweise ungeradzahlige Bitleitungen BL1, BL3, . . . BL511 und ungeradzahlige Paritätsbitleitungen PBL1, PBL3, PBL11 der 512 Bitleitungen BL1-BL512 und der 18 Paritätsbitleitungen PBL1-PBL18, verbunden sind. Obwohl in Fig. 4 nicht dargestellt, sind in der ersten Leseverstärkerschaltung 140_unten solche Zwischenspeicher-Le­ severstärker, wie im vorstehend erwähnten Patent '717 offenbart, vorgesehen, so daß sie den 256 Bitleitungen BL1, BL3, . . . BL511 bzw. den 9 Paritätsbitleitungen PBL1, PBL3, . . . PBL11 entsprechen. Auf einer oberen Seite der Speicherzellenmatrix 100 ist eine zweite Leseverstärkerschaltung 140_oben angeordnet, mit der eine zweite Gruppe von Bitleitungen und Paritätsbitleitungen, beispielsweise geradzahlige Bitleitungen BL2, BL4, . . . BL512 und geradzahlige Paritätsbitleitungen PBL2, PBL4, . . . PBL12 der 512 Bitleitungen BL1-BL512 und der 18 Paritätsbitleitungen PBL1-PBL18, verbunden sind. In der zweiten Leseverstärkerschaltung 140_oben sind eine Vielzahl von Zwischenspeicher-Leseverstärkern vorgesehen, so daß sie den 256 Bitleitungen BL2, BL4, . . . BL512 bzw. den 9 Paritätsbitleitungen PBL2, PBL4, . . . PBL12 entsprechen.
Gemäß der vorstehend beschriebenen Leseverstärkeranordnung werden 256 Datenbits in den Speicherzellen, die jeweils an den Schnittpunkten einer ausgewählten Wortleitung (oder einer Seite) WLi und der ungeradzahligen Bitleitungen BL1, BL3, . . . BL511 angeordnet sind, und 9 Prüfbits in den Speicherzellen, die jeweils an den Schnittpunkten der ausgewählten Wortleitung WLi und der ungeradzahligen Paritätsbitleitungen PBL1, PBL3, . . . PBL11 angeordnet sind, in der ersten Leseverstärkerschaltung 140_unten gelesen und zwischengespeichert. Ebenso werden 256 Datenbits in den Speicherzellen, von denen jede an den Schnittpunkten der ausgewählten Wortleitung WLi und der geradzahligen Bitleitungen BL2, BL4, . . . BL512 angeordnet sind, und 9 Prüfbits in den Speicherzellen, von denen jede an den Schnittpunkten der ausgewählten Wortleitung WLi und der geradzahligen Paritätsbitleitungen PBL2, PBL4, . . . PBL12 angeordnet sind, in der zweiten Leseverstärkerschaltung 140_oben gelesen und zwischengespeichert.
Eine erste Spalten-Durchgangsgatterschaltung 160_unten und eine erste Spaltendecodierschaltung 180_unten sind auf der unteren Seite der Speicherzellenmatrix 100 angeordnet, so daß sie der ersten Leseverstärkerschaltung 140_unten entsprechen. Mit der ersten Spalten-Durch­ gangsgatterschaltung 160_unten sind acht Fehlerkorrekturschaltungen 200_unten gekoppelt, von denen jede einen Fehler in 256 Datenbits (ungeradzahligen Datenbits), die aus einem entsprechenden E/A-Speicherblock über die ungeradzahligen Bitleitungen ausgelesen werden, erkennt und korrigiert. Ebenso sind eine zweite Spalten-Durch­ gangsgatterschaltung 160_oben und eine zweite Spaltendecodierschaltung 180_oben auf der oberen Seite der Speicherzellenmatrix 100 angeordnet, so daß sie der zweiten Leseverstärkerschaltung 140_oben entsprechen. Mit der zweiten Spalten-Durchgangsgatterschaltung 160_oben sind acht Fehlerkorrekturschaltungen 200_oben gekoppelt, von denen jede einen Fehler in 256 Datenbits (geradzahligen Datenbits), die aus einem entsprechenden E/A-Speicherblock über die geradzahligen Bitleitungen ausgelesen werden, erkennt und korrigiert. Folglich sind zwei Fehlerkorrekturschaltungen 200_unten und 200_oben vorgesehen, so daß sie einem E/A-Speicherblock entsprechen, und sind gemeinsam mit einer entsprechenden E/A-Schaltung 220 verbunden, wie in Fig. 4 dargestellt.
Die erste Spalten-Durchgangsgatterschaltung 160_unten überträgt während eines ersten Zyklus einer Lesebetriebsart nacheinander die ungeradzahligen Daten- und Prüfbits zur Fehlerkorrekturschaltung 200_unten, und die zweite Spalten-Durch­ gangsgatterschaltung 160_oben übertragt während des ersten Zyklus nacheinander die geradzahligen Daten- und Prüfbits zur Fehlerkorrekturschaltung 200_oben.
Beispielsweise werden zwei Datenbits, die einer ungeradzahligen Bitleitung BL1 und einer geradzahligen Bitleitung BL2 zugeordnet sind, über die erste und die zweite Spalten-Durchgangsgatterschaltung 160_unten und 160_oben simultan zu den entsprechenden Fehlerkorrekturschaltungen 200_unten und 200_oben übertragen. Die restlichen Datenbits und Prüfbits werden zu den entsprechenden Fehlerkorrekturschaltungen 200_unten und 200_oben in derselben Weise wie vorstehend beschrieben übertragen. Und dann reagiert die Fehlerkorrekturschaltung 200_unten auf die 256 ungeradzahligen Datenbits und 9 ungeradzahligen Prüfbits, um während des ersten Zyklus eine 1-Bit-Fehlerstelle in den 256 ungeradzahligen Datenbits zu erkennen. Ebenso reagiert die Fehlerkorrekturschaltung 200_oben auf die 256 geradzahligen Datenbits und 9 geradzahligen Prüfbits, um während des ersten Zyklus eine 1-Bit-Fehlerstelle in den 256 geradzahligen Datenbits zu erkennen.
Es ist zu sehen, daß während des ersten Zyklus nur 265 Taktzyklen verwendet werden, da 265 ungeradzahlige Daten- und Prüfbits und 265 geradzahlige Daten- und Prüfbits zu den entsprechenden Fehlerkorrekturschaltungen 200_unten und 200_oben parallel und der Reihe nach übertragen werden. Dies bedeutet, daß die Zeit, die zum Erkennen einer Fehlerstelle in den Datenbits erforderlich ist, im Vergleich zu jener des herkömmlichen Halbleiterspeicherbauelements fast auf die Hälfte verkürzt wird. Folglich ist es möglich, eine Zugriffszeit auf das Flash-Speicherbauelement mit der chipinternen ECC gemäß der Erfindung zu verringern.
Während des zweiten Zyklus der Lesebetriebsart empfangen die jeweiligen Fehlerkorrekturschaltungen 200_unten und 200_oben kontinuierlich abwechselnd 256 ungeradzahlige Datenbits und 256 geradzahlige Datenbits, um einen 1-Bit-Feh­ ler der ungeradzahligen Datenbits bzw. einen 1-Bit-Feh­ ler der geradzahligen Datenbits unter Verwendung der Information der während des ersten Zyklus erkannten Fehlerstelle zu korrigieren. Ähnlich dem vorstehend beschriebenen herkömmlichen Bauelement werden 512 Taktzyklen während des zweiten Zyklus verwendet. Aus der obigen Beschreibung ist jedoch zu sehen, daß mindestens zwei fehlerhafte Datenbits in den 512 Datenbits, die aus einem E/A-Speicherblock ausgelesen werden, erkannt und korrigiert werden. Somit weist das Halbleiterspeicherbauelement eine verbesserte Fehlerkorrektureffizienz auf.
Mehrere Bitleitungen und mehrere Paritätsbitleitungen, die in jedem E/A-Speicherblock angeordnet sind, können in 2N Gruppen (N = 1, 2, . . . j) gleich aufgeteilt werden und dann können in derselben Weise wie vorstehend beschrieben 2N Fehlerkorrekturschaltungen implementiert werden, so daß sie einer E/A-Schaltung entsprechen. Daher ist es für Fachleute offensichtlich, daß 2N fehlerhafte Datenbits in den aus jedem E/A-Speicherblock ausgelesenen Datenbits erkannt und korrigiert werden.
Mit Bezug auf Fig. 5, die ein Blockdiagramm zum Beschreiben einer Beziehung der Dateneingabe und -ausgabe gemäß den Lese- und Schreibbetriebsarten ist, werden, wenn ein Signal LESEN auf einem hohen Logikpegel liegt und ein Signal SCHREIBEN auf einem niedrigen Logikpegel liegt, das heißt, während einer Lesebetriebsart, die in einer Leseverstärkerschaltung 140 zwischengespeicherten Datenbits über eine Spalten-Durchgangsgatterschaltung 160 und einen Schalter SW1 nacheinander an einen Eingangsanschluß Din einer Fehlerkorrekturschaltung 200 angelegt. Und dann werden die korrigierten Datenbits in der ECC 200 über einen Schalter SW2 nacheinander zu einer Eingabe-/Ausgabeschaltung 220 übertragen. Wenn andererseits das Signal LESEN auf einem niedrigen Logikpegel liegt und das Signal SCHREIBEN auf einem hohen Logikpegel liegt, das heißt, während der Schreibbetriebsart, werden die über die Eingabe-/Ausgabeschaltung 220 von außen gelieferten Datenbits über einen Schalter SW3 nacheinander an den Eingangsanschluß Din der Fehlerkorrekturschaltung 200 angelegt. Die Fehlerkorrekturschaltung 200 erzeugt mehrere Syndrombits, die über einen Schalter SW4 und die Spalten-Durchgangsgatterschaltung 160 in die Leseverstärkerschaltung 140 übertragen werden.
Aus der obigen Beschreibung ist zu sehen, daß die Fehlerkorrekturschaltung 200_unten von Fig. 4, die mit der ersten Spalten-Durchgangsgatterschaltung 160_unten gekoppelt ist, als Schaltung zum Erzeugen der ungeradzahligen Prüfbits während einer Schreibbetriebsart dient. Ebenso dient die Fehlerkorrekturschaltung 200_oben von Fig. 4, die mit der zweiten Spalten-Durch­ gangsgatterschaltung 160_oben gekoppelt ist, als Schaltung zum Erzeugen der geradzahligen Prüfbits während der Schreibbetriebsart. Diese zugehörige Operation wird später genauer beschrieben.
Fig. 6 ist ein Blockdiagramm, das zwei Fehlerkorrekturschaltungen, eine erste und eine zweite Leseverstärkerschaltung und eine erste und eine zweite Spalten-Durchgangsgatterschaltung, die zu einer E/A-Schaltung gehören, zeigt. In Fig. 6 ist für eine leichte Erläuterung die erste Spalten-Durchgangsgatterschaltung 160_unten durch Schalterschaltungen 161_1 und 161_2 symbolisiert, die ihre Schaltoperationen gemäß entsprechenden Steuersignalen CTNB_1_i (i = 1-265) bzw. CTNB_2_j (j = 1-256) durchführen. Ebenso ist die zweite Spalten-Durchgangsgatterschaltung 160_oben durch Schalterschaltungen 162_1 und 162_2 symbolisiert, die ihre Schaltoperationen gemäß entsprechenden Steuersignalen CTNT_1_i bzw. CTNT_2_j durchführen. Wobei die Symbole _1 und _2 den ersten Zyklus bzw. den zweiten Zyklus anzeigen.
Wie in Fig. 6 dargestellt, ist die Fehlerkorrekturschaltung 200_unten mit der ersten Leseverstärkerschaltung 140_unten über die Schalterschaltung 161_1 (das heißt die erste Spalten-Durchgangsgatterschaltung 160_unten) gekoppelt und umfaßt einen Syndromgenerator 201, einen Fehlerdetektor 202 und einen Fehlerkorrektor 203. Der Syndromgenerator 201 empfängt während eines ersten Zyklus der Lesebetriebsart nacheinander 256 ungeradzahlige Datenbits und 9 ungeradzahlige Prüfbits und erzeugt dann 9 Syndrombits. Der Fehlerdetektor 202 empfängt die 9 Syndromoits aus dem Syndromgenerator 201, um ein Signal auszugeben, das die Anwesenheit eines Fehlers anzeigt. Und der Fehlerkorrektor 203 empfängt nacheinander die 256 Datenbits aus der ersten Leseverstärkerschaltung 140_unten über die Schalterschaltung 161_2 (das heißt die erste Spalten-Durch­ gangsgatterschaltung 160_unten) während eines zweiten Zyklus der Lesebetriebsart und korrigiert dann einen Fehler in den 256 Datenbits als Reaktion auf das Signal aus dem Fehlerdetektor 202. Die so korrigierten 256 Datenbits werden nacheinander zur entsprechenden E/A-Schaltung 220 übertragen.
Die Fehlerkorrekturschaltung 200_oben von Fig. 6 ist mit der zweiten Leseverstärkerschaltung 140_oben über die Schalterschaltung 162_1 (das heißt die zweite Spalten-Durch­ gangsgatterschaltung 160_oben) gekoppelt. Die Fehlerkorrekturschaltung 200_oben umfaßt einen Syndromgenerator 201, einen Fehlerdetektor 202 und einen Fehlerkorrektor 203, die dieselbe Funktion erfüllen wie jene der Fehlerkorrekturschaltung 200_unten. Auf ihre Beschreibung wird folglich verzichtet.
Fig. 7 ist eine bevorzugte Ausführungsform einer in Fig. 4 dargestellten Fehlerkorrekturschaltung gemäß der Erfindung, und Fig. 8 ist ein Diagramm, das eine Ablaufsteuerung zwischen in Fig. 7 verwendeten Steuersignalen zeigt.
Mit Bezug auf Fig. 7 basiert die Fehlerkorrekturschaltung 200_unten auf dem Hamming-Code (2r ≧ m + r + 1), der durch das Generatorpolynom g(x) = x9 + x + 1 erzeugt wird, und umfaßt neun Schieberegister SR1-SR9 und zwei Exklusiv-ODER-Gatter 209 und 210, die wie in Fig. 7 dargestellt verbunden sind, welche einen Syndromgenerator 201 bilden. In der Schaltung 200_unten ist ferner eine Logikschaltung 202 mit 9 Eingängen vorgesehen, die neun Syndrombits aus dem Syndromgenerator 201 decodiert und als Fehlerdetektor dient. Die Fehlerkorrekturschaltung 200_unten umfaßt ferner ein Exklusiv-ODER-Gatter 203, das als Fehlerkorrektor verwendet wird, drei NICHT-UND-Gatter 204, 205 und 206 und PMOS- und NMOS-Transistoren 207 und 208, die wie in Fig. 7 dargestellt verbunden sind.
Obwohl die Fehlerkorrekturschaltungen 200_unten und 200_oben entsprechend der ersten Leseverstärkerschaltung 140_unten in Fig. 7 dargestellt sind, erübrigt es sich zu erwähnen, daß die Fehlerkorrekturschaltung 200_oben, die der zweiten Leseverstärkerschaltung 140_oben entspricht, identisch zu jener 200_unten konfiguriert ist.
Eine Operation der Fehlerkorrekturschaltung 200_unten gemäß der Erfindung wird nachstehend mit Bezug auf die zugehörigen Zeichnungen genauer beschrieben. Wie vorstehend angegeben, ist die Operation des Auslesens von Datenbits in einen ersten Zyklus und einen zweiten Zyklus aufgeteilt. Es wird angenommen, daß 256 ungeradzahlige Datenbits und 9 ungeradzahlige Prüfbits aus beispielsweise dem E/A-Speicherblock IOMB1 in der ersten Leseverstärkerschaltung 140_unten zwischengespeichert werden und 256 geradzahlige Datenbits und 9 geradzahlige Prüfbits aus dem E/A-Spei­ cherblock IOMB1 in der zweiten Leseverstärkerschaltung 140_oben zwischengespeichert werden.
Während des ersten Zyklus, wie in Fig. 8 dargestellt, bleiben die Signale CTL1, CTL2 und CTL3 niedrig, so daß der PMOS-Transistor 207 durchgesteuert wird und die Ausgangssignale der NICHT-UND-Gatter 204 bzw. 205 hoch bleiben. Unter dieser Bedingung werden ungeradzahlige Daten- und Prüfbits, die in der ersten Leseverstärkerschaltung 140_unten zwischengespeichert sind, nacheinander zum Syndromgenerator 201 der Fehlerkorrekturschaltung 200_unten über den Eingangsanschluß Din und den PMOS-Transistor 207 übertragen. Gleichzeitig werden geradzahlige Daten- und Prüfbits, die in der zweiten Leseverstärkerschaltung 104_oben zwischengespeichert sind, nacheinander zum Syndromgenerator 201 der Fehlerkorrekturschaltung 200_oben über den Eingangsanschluß Din und den PMOS-Transistor 207 übertragen. Die ungeradzahligen und geradzahligen Daten- und Prüfbits, die nacheinander zu den Syndromgeneratoren 201 übertragen werden, werden zyklisch durch die Schieberegister SR1-SR9 geleitet. Als Ergebnis der vorstehend beschriebenen zyklischen Operation wird eine erste und eine zweite Gruppe von Syndrombits von den entsprechenden Syndromgeneratoren 201, die jeweils den Fehlerkorrekturschaltungen 200_unten und 200_oben entsprechen, erzeugt. Die erste und die zweite Gruppe von Syndrombits, die jeweils in den entsprechenden Syndromgeneratoren 201 gespeichert werden, werden als Adresse zum Anzeigen einer Fehlerstelle der ungeradzahligen Datenbits bzw. einer Fehlerstelle der geradzahligen Datenbits verwendet.
Während des zweiten Zyklus gehen dann die Signale CTL1 bzw. CTL2 von einem niedrigen Logikpegel auf einen hohen Logikpegel über und das Signal CTL3 bleibt weiter niedrig. Dies verursacht, daß der PMOS-Transistor 207 gesperrt und der NMOS-Transistor 208 durchgesteuert wird. Das heißt, der Eingangsanschluß Din wird vom Syndromgenerator 201 getrennt. Statt dessen werden die an den Eingangsanschluß Din angelegten Datenbits über die NICHT-UND-Gatter 204 und 205 zum Fehlerkorrektor 203 übertragen.
Insbesondere werden die ungeradzahligen und geradzahligen Datenbits im ersten und zweiten Leseverstärker 140_unten und 140_oben abwechselnd durch die NICHT-UND-Gatter 205 und 206 der jeweiligen Schaltung 200_unten und 200_oben über die entsprechenden Spalten-Durchgangsgatterschaltungen 160_unten und 160_oben zu den entsprechenden Fehlerkorrektoren 203 übertragen. Beispielsweise wird ein ungeradzahliges Datenbit zum Fehlerkorrektor 203 der Fehlerkorrekturschaltung 200_unten übertragen und dann wird ein geradzahliges Datenbit zum Fehlerkorrektor 203 der Fehlerkorrekturschaltung 200_oben übertragen.
Gleichzeitig werden die Syndrombits der ersten Gruppe, die den ungeradzahligen Datenbits entsprechen, im Syndromgenerator 201 der Fehlerkorrekturschaltung 200_unten zyklisch verschoben oder nach rechts verschoben, sobald ein Datenbit zum Fehlerkorrektor 203 der Fehlerkorrekturschaltung 200_unten übertragen wird, und die so zyklisch verschobenen Syndrombits werden vom Fehlerdetektor 202 der Fehlerkorrekturschaltung 200_unten decodiert. Ein decodiertes Ergebnis, das heißt, ein Signal, das die Anwesenheit oder Abwesenheit eines Fehlers eines vorliegenden übertragenen Datenbits anzeigt, wird ebenfalls an den Fehlerkorrektor 203 der Fehlerkorrekturschaltung 200_unten angelegt. Ebenso wird die vorstehend beschriebene Operation in der Fehlerkorrekturschaltung 200_oben durchgeführt.
Wenn ein ungeradzahliges Datenbit an den Fehlerkorrektor 203 der Fehlerkorrekturschaltung 200_unten angelegt wird, wird das angelegte Datenbit als Ergebnis entweder nach der Fehlerkorrektur oder ohne die Fehlerkorrektur gemäß einem Logikzustand des Signals aus dem Fehlerdetektor 202 der Fehlerkorrekturschaltung 200_unten ausgegeben. Wenn das Signal aus dem Fehlerdetektor 202 beispielsweise auf einem hohen Logikpegel liegt, bedeutet dies, daß das an den Fehlerkorrektor 203 angelegte ungeradzahlige Datenbit fehlerhaft ist. Folglich wird das Datenbit nach der Fehlerkorrektur an die E/A-Schaltung 220 ausgegeben. Wenn das Signal aus dem Fehlerdetektor 202 auf einem niedrigen Logikpegel liegt, bedeutet dies, daß das an den Fehlerkorrektor 203 angelegte ungeradzahlige Datenbit nicht fehlerhaft ist. Folglich wird das Datenbit ohne die Fehlerkorrektur an die E/A-Schaltung 220 ausgegeben.
Wie vorstehend dargelegt, werden die Fehlerkorrekturschaltungen 200_unten und 200_oben als Schaltungen zum Erzeugen von ungeradzahligen Prüfbits bzw. geradzahligen Prüfbits verwendet. Insbesondere schalten während einer Schreibbetriebsart die Signale CTL1 und CTL3 auf einen niedrigen Logikpegel und das Signal CTL2 schaltet auf einen hohen Logikpegel. Unter dieser Bedingung werden 256 ungeradzahlige Datenbits der 512 Datenbits, die in den E/A-Speicherblock IOMB1 geschrieben werden sollen, nacheinander an den Eingangsanschluß Din der Fehlerkorrekturschaltung 200_unten angelegt. Die so angelegten 256 ungeradzahligen Datenbits werden über sowohl die NICHT-UND-Gatter 204 und 205 als auch die erste Spalten-Durchgangsgatterschaltung 160_unten nacheinander zur ersten Leseverstärkerschaltung 140_unten übertragen. Gleichzeitig werden die 256 ungeradzahligen Datenbits über den PMOS-Transistor 207 nacheinander zum Syndromgenerator 201 übertragen und zyklisch verschoben. Diese Operation wird beendet, wenn alle der 256 ungeradzahligen Datenbits an den Syndromgenerator 201 angelegt wurden. Folglich werden neun Prüfbits entsprechend den 256 Datenbits vom Syndromgenerator 201 erzeugt und werden dann über die NICHT-UND-Gatter 206 und 205 nacheinander zur ersten Leseverstärkerschaltung 140_unten übertragen, wobei die Signale CTL1 und CTL3 hoch sind und das Signal CTL2 niedrig ist. Ebenso werden neun Prüfbits entsprechend den 256 geradzahligen Datenbits in derselben Weise wie vorstehend beschrieben erzeugt und werden dann nacheinander zur zweiten Leseverstärkerschaltung 140_oben übertragen. Danach werden die ungeradzahligen und geradzahligen Daten- und Prüfbits unter Verwendung des auf dem Fachgebiet gut bekannten Programmierprozesses programmiert.
Fig. 9 ist ein Diagramm, das eine Ablaufsteuerung zwischen den in Fig. 6 verwendeten Schaltsteuersignalen zeigt.
Eine Operation zum Korrigieren eines Datenfehlers gemäß der Erfindung wird nachstehend mit Bezug auf die zugehörigen Zeichnungen genauer beschrieben. Für eine leichte Beschreibung wird die Fehlerkorrekturoperation, die zu den Fehlerkorrekturschaltungen 200_unten und 200_oben gehört, nachstehend entsprechend nur einer Eingabe-/Ausgabeschaltung 220 beschrieben, aber die zu jenen entsprechend den restlichen Eingabe-/Ausgabeschaltungen 220 gehörende wird genauso durchgeführt.
Während des ersten Zyklus werden 256 ungeradzahlige Datenbits und 9 ungeradzahlige Prüfbits in der ersten Leseverstärkerschaltung 140_unten zwischengespeichert und 256 geradzahlige Datenbits und 9 geradzahlige Prüfbits werden im zweiten Leseverstärker 140_oben zwischengespeichert. Danach, wenn die Steuersignale CTNB_1_1 und CTNT_1_1 simultan getaktet werden, werden ein ungeradzahliges Datenbit in der ersten Leseverstärkerschaltung 140_unten und ein geradzahliges Datenbit in der zweiten Leseverstärkerschaltung 140_oben simultan an die Syndromgeneratoren 201 der entsprechenden Fehlerkorrekturschaltungen 200_unten und 200_oben angelegt. Die restlichen ungeradzahligen und geradzahligen Daten- und Prüfbits werden über die Schalterschaltungen 161_1 und 162_1 simultan an die entsprechenden Syndromgeneratoren 201 gemäß derselben wie vorstehend beschriebenen Weise angelegt. Gemäß dem vorstehend beschriebenen Prozeß wird eine erste Gruppe von neun Syndrombits entsprechend den ungeradzahligen Datenbits im Syndromgenerator 201 der Fehlerkorrekturschaltung 200_unten erzeugt, und im Syndromgenerator 201 der Fehlerkorrekturschaltung 200_oben wird eine zweite Gruppe von neun Syndrombits entsprechend den geradzahligen Datenbits erzeugt. Während des ersten Zyklus arbeiten die Schalterschaltungen 161_2 und 162_2 nicht, da alle Steuersignale CTNB_2_j und CTNT_2_j niedrig bleiben, wie in Fig. 8 dargestellt.
Die erste Gruppe von Syndrombits wird als Adreßinformation zum Erkennen der Stelle der Anwesenheit eines Fehlers in den ungeradzahligen Datenbits während eines zweiten Zyklus verwendet und die zweite Gruppe von Syndrombits wird als Adreßinformation zum Erkennen der Stelle der Anwesenheit eines Fehlers in den geradzahligen Datenbits während des zweiten Zyklus verwendet.
Es ist zu sehen, daß die Zeit, die für den ersten Zyklus erforderlich ist, 265 Taktzyklen entspricht, während sie im Fall des herkömmlichen Flash-Speicherbauelements 530 Taktzyklen entspricht. Während des ersten Zyklus kann die Zugriffszeit auf das Flash-Speicherbauelement mit der chipinternen ECC gemäß der Erfindung auf die Hälfte von jener gemäß dem herkömmlichen Flash-Speicherbauelement verringert werden.
Während des zweiten Zyklus werden ein Fehler der ungeradzahligen Datenbits und ein Fehler der geradzahligen Datenbits unter Verwendung der ersten bzw. der zweiten Gruppe von Syndrombits korrigiert.
Insbesondere wenn ein Steuersignal CTNB_2_1 von einem niedrigen Logikpegel auf einen hohen Logikpegel übergeht, wird ein ungeradzahliges Datenbit über die Schalterschaltung 161_2 an den Fehlerkorrektor 203 der Schaltung 200_unten angelegt. Gleichzeitig wird ein Signal, das die Anwesenheit oder Abwesenheit eines Fehlers anzeigt, von dem Fehlerdetektor 202, der die erste Gruppe der neun Syndrombits aus dem Syndromgenerator 201 decodiert, um das Signal aus zugeben, das die Anwesenheit oder Abwesenheit eines Fehlers anzeigt, an den Fehlerkorrektor 203 angelegt. Das ungeradzahlige Datenbit, das gerade an den Fehlerkorrektor angelegt wird, wird entweder nach der Fehlerkorrektur oder ohne die Fehlerkorrektur gemäß einem Logikzustand des Signals aus dem Fehlerdetektor 202 an die entsprechende E/A-Schaltung 220 ausgegeben.
Wie in Fig. 8 dargestellt, wenn ein Steuersignal CTNB_2_1 von einem hohen Logikpegel auf einen niedrigen Logikpegel übergeht und ein Steuersignal CTNT_2_1 von einem niedrigen Logikpegel auf einen hohen Logikpegel übergeht, dann wird ein geradzahliges Datenbit über die Schalterschaltung 162_2 an den Fehlerkorrektor 203 der Schaltung 200_oben angelegt. Gleichzeitig wird ein Signal, das die Anwesenheit oder Abwesenheit eines Fehlers anzeigt, von dem Fehlerdetektor 202, der die zweite Gruppe der neun Syndrombits aus dem Syndromgenerator 201 decodiert, um das Signal auszugeben, das die Anwesenheit oder Abwesenheit eines Fehlers anzeigt, an den Fehlerkorrektor 203 angelegt. Das gerade an den Fehlerkorrektor 203 angelegte geradzahlige Datenbit wird entweder nach der Fehlerkorrektur oder ohne die Fehlerkorrektur gemäß einem Logikzustand des Signals aus dem Fehlerdetektor 202 an die entsprechende E/A-Schaltung 220 ausgegeben.
Die erste Gruppe der Syndrombits wird in dem entsprechenden Syndromgenerator 201 nach rechts verschoben, um ein Signal zu erzeugen, das anzeigt, ob ein nächstes ungeradzahliges Datenbit fehlerhaft ist. Ebenso wird die zweite Gruppe der Syndrombits im entsprechenden Syndromgenerator 201 nach rechts verschoben, um ein Signal zu erzeugen, das anzeigt, ob ein nächstes geradzahliges Datenbit fehlerhaft ist.
Danach wird die vorstehend erläuterte Fehlerkorrekturoperation im Zusammenhang mit den restlichen ungeradzahligen und geradzahligen Datenbits wiederholt durchgeführt, und auf deren Beschreibung wird folglich verzichtet.
Mit dem Fehlerkorrekturschema gemäß der Erfindung wird ein 1-Bit-Fehler in den ungeradzahligen Datenbits durch die Fehlerkorrekturschaltung 200_unten korrigiert und gleichzeitig wird ein 1-Bit-Fehler in den geradzahligen Datenbits durch die Fehlerkorrekturschaltung 200_oben korrigiert. Somit wird ein 2-Bit-Fehler in den 512 Datenbits, die aus jedem E/A-Speicherblock ausgelesen werden, korrigiert.
Fig. 10 stellt eine zweite Ausführungsform des Halbleiterspeicherbauelements gemäß der Erfindung dar. In Fig. 10 sind die Elementarbestandteile, die zu jenen von Fig. 4 identisch sind, mit denselben Bezugsziffern oder gleichen Ziffern bezeichnet.
Die in Fig. 10 dargestellte zweite Ausführungsform unterscheidet sich von der ersten Ausführungsform von Fig. 4 nur darin, daß eine Leseverstärkerschaltung 140, eine Spalten-Durchgangsgatterschaltung 160 und eine Spaltendecodierschaltung 180 auf einer unteren Seite angeordnet sind. Ähnlich zur ersten Ausführungsform sind zwei Fehlerkorrekturschaltungen 200_ungerade und 200_gerade vorgesehen, so daß sie einer E/A-Schaltung 220 entsprechen, und sind jeweils mit der Spalten-Durchgangsgatterschaltung 160 gekoppelt. Gemäß der vorstehend beschriebenen Struktur werden die ungeradzahligen Datenbits, die jeweils in ungeradzahligen Leseverstärkern der Leseverstärkerschaltung 140 zwischengespeichert werden, über die Spalten-Durch­ gangsgatterschaltung 160 nacheinander zur Fehlerkorrekturschaltung 200_ungerade übertragen, und die geradzahligen Datenbits, die jeweils in geradzahligen Leseverstärkern derselben zwischengespeichert werden, werden über die Spalten-Durchgangsgatterschaltung 160 nacheinander zur Fehlerkorrekturschaltung 200_gerade übertragen. Die jeweiligen Fehlerkorrekturschaltungen 200_ungerade und 200_gerade sind genauso wie bei der ersten Ausführungsform konfiguriert und erfüllen dieselbe Funktion wie bei der ersten Ausführungsform. Somit wird auf deren Beschreibung verzichtet und die zweite Ausführungsform besitzt dieselben Wirkungen wie die erste Ausführungsform von Fig. 4.
Fig. 11 ist eine dritte Ausführungsform eines Halbleiterspeicherbauelements gemäß der Erfindung. In Fig. 11 sind die Elementarbestandteile, die identisch zu jenen von Fig. 4 sind, mit denselben Bezugsziffern bezeichnet.
Das Halbleiterspeicherbauelement, beispielsweise ein Flash-Spei­ cherbauelement, umfaßt eine Speicherzellenmatrix 100, eine Zeilendecodierschaltung 120, eine erste und eine zweite Leseverstärkerschaltung 140_unten und 140_oben, eine erste und eine zweite Spalten-Durchgangsgatterschaltung 160_unten und 160_oben und eine erste und eine zweite Spaltendecodierschaltung 180_unten und 180_oben, die jeweils dieselbe Funktion erfüllen wie bei der ersten Ausführungsform. Somit wird auf deren Beschreibung verzichtet, um die wiederholte Erläuterung zu vermeiden.
Das Flash-Speicherbauelement von Fig. 11 umfaßt acht Fehlerkorrekturschaltungen 300, die jeweils den E/A-Schaltungen 220 entsprechen. Eine bevorzugte Ausführungsform jeder Fehlerkorrekturschaltung 300 gemäß der Erfindung ist in Fig. 12 dargestellt.
In Fig. 12 ist für eine leichte Erläuterung die erste Spalten-Durchgangsgatterschaltung 160_unten durch Schalterschaltungen 161_1 und 161_2 symbolisiert, die ihre Schaltoperationen gemäß entsprechenden Steuersignalen CTNB_1_i (i = 1-265) bzw. CTNB_2_j (j = 1-256) durchführen. Ebenso ist die zweite Spalten-Durchgangsgatterschaltung 160_oben durch Schalterschaltungen 162_1 und 162_2 symbolisiert, die ihre Schaltoperationen gemäß entsprechenden Steuersignalen CTNT_1_i bzw. CTNT_2_j durchführen. Wobei die Symbole _1 und _2 den ersten Zyklus bzw. den zweiten Zyklus anzeigen. Die Steuersignale CTNB_1_i, CTNB_2_j, CTNT_1_i und CTNT_2_j werden in derselben Weise wie in Fig. 9 dargestellt verändert.
Wie in Fig. 12 dargestellt, umfaßt die Fehlerkorrekturschaltung 300 zwei Syndromgeneratoren 301_B und 301_T, einen Fehlerdetektor 302 und einen Fehlerkorrektor 303. Der Syndromgenerator 301_B empfängt über die Schalterschaltung 161_1 während des ersten Zyklus nacheinander 256 ungeradzahlige Datenbits und 9 ungeradzahlige Prüfbits und erzeugt dann eine erste Gruppe von Syndrombits, die als Adresse verwendet werden, welche eine Fehlerstelle der ungeradzahligen Datenbits anzeigt. Und der Syndromgenerator 301_T empfängt über die Schalterschaltung 162_1 während des ersten Zyklus nacheinander 256 geradzahlige Datenbits und 9 geradzahlige Prüfbits und erzeugt dann eine zweite Gruppe von Syndrombits, die als Adresse verwendet werden, welche eine Fehlerstelle der geradzahligen Datenbits anzeigt.
Der Fehlerdetektor 302 ist mit den Syndromgeneratoren 301_B und 301_T gemeinsam gekoppelt und empfängt abwechselnd die erste und die zweite Gruppe von Syndrombits aus den Syndromgeneratoren 301_B und 301_T. Und dann decodiert der Fehlerdetektor 302 abwechselnd die so empfangene erste Gruppe der Syndrombits, um einen Fehler in den ungeradzahligen Datenbits zu erkennen, und die so empfangene zweite Gruppe der Syndrombits, um einen Fehler in den geradzahligen Datenbits zu erkennen. Als Decodierergebnis gibt der Fehlerdetektor 302 abwechselnd ein erstes Signal aus, das die Anwesenheit oder Abwesenheit des Fehlers in den ungeradzahligen Datenbits anzeigt, und gibt ein zweites Signal aus, das die Anwesenheit oder Abwesenheit des Fehlers in den geradzahligen Datenbits anzeigt.
Während des zweiten Zyklus empfängt der Fehlerkorrektor 303 abwechselnd die 256 Datenbits aus der ersten Leseverstärkerschaltung 140_unten über die Schalterschaltung 161_2 und die 256 Datenbits aus der zweiten Leseverstärkerschaltung 140_oben über die Schalterschaltung 162_2 und korrigiert dann einen Fehler der ungeradzahligen Datenbits als Reaktion auf das erste Signal aus dem Fehlerdetektor 302 bzw. einen Fehler der geradzahligen Datenbits als Reaktion auf das zweite Signal aus dem Fehlerdetektor 302.
Eine Operation zum Korrigieren eines Datenfehlers gemäß der dritten Ausführungsform der Erfindung wird nachstehend mit Bezug auf Fig. 8, 11 und 12 genauer beschrieben. Für eine leichte Beschreibung wird nachstehend die zur Fehlerkorrekturschaltung 300 gehörende Fehlerkorrekturoperation entsprechend nur einem Eingabe-/Ausgabespeicherblock IOMB1 beschrieben, aber die zu jenen entsprechend den restlichen Eingabe-/Ausgabespeicherblöcken gehörende wird identisch dazu ausgeführt.
Während des ersten Zyklus werden 256 ungeradzahlige Datenbits und 9 ungeradzahlige Prüfbits in der ersten Leseverstärkerschaltung 140_unten zwischengespeichert und 256 geradzahlige Datenbits und 9 geradzahlige Prüfbits werden im zweiten Leseverstärker 140_oben zwischengespeichert. Danach, wenn die Steuersignale CTNB_1_1 und CTNT_1_1 simultan getaktet werden, werden ein ungeradzahliges Datenbit in der ersten Leseverstärkerschaltung 140_unten und ein geradzahliges Datenbit in der zweiten Leseverstärkerschaltung 140_oben simultan an die Syndromgeneratoren 301_B und 301_T angelegt. Die restlichen ungeradzahligen und geradzahligen Daten- und Prüfbits werden über die Schalterschaltungen 161_1 und 162_1 an die entsprechenden Syndromgeneratoren 301_B und 301_T gemäß derselben wie vorstehend beschriebenen Weise angelegt. Gemäß dem vorstehend beschriebenen Prozeß wird eine erste Gruppe von neun Syndrombits entsprechend den ungeradzahligen Datenbits vom Syndromgenerator 301_B erzeugt, und eine zweite Gruppe von Syndrombits wird vom Syndromgenerator 301_T erzeugt. Während des ersten Zyklus arbeiten die Schalterschaltungen 161_2 und 162_2 nicht, da alle Steuersignale CTNB_2_j und CTNT_2_j niedrig bleiben, wie in Fig. 8 dargestellt.
Wenn während des zweiten Zyklus ein Steuersignal CTNB_2_1 von einem niedrigen Logikpegel auf einen hohen Logikpegel übergeht, wird ein ungeradzahliges Datenbit von der ersten Leseverstärkerschaltung 140_unten über die Schalterschaltung 161_2 an den Fehlerkorrektor 303 angelegt. Gleichzeitig wird das erste Signal, das anzeigt, ob das ungeradzahlige Datenbit fehlerhaft ist, vom Fehlerdetektor 302, der die erste Gruppe von Syndrombits aus dem Syndromgenerator 301_B decodiert, an den Fehlerkorrektor 203 angelegt. Das gerade an den Fehlerkorrektor 303 angelegte ungeradzahlige Datenbit wird entweder nach der Fehlerkorrektur oder ohne Fehlerkorrektur gemäß einem Logikzustand des ersten Signals aus dem Fehlerdetektor 302 an die entsprechende E/A-Schaltung 220 ausgegeben.
Und wenn dann, wie in Fig. 8 dargestellt, ein Steuersignal CTNB_2_1 von einem hohen Logikpegel auf einen niedrigen Logikpegel übergeht und ein Steuersignal CTNT_2_1 von einem niedrigen Logikpegel auf einen hohen Logikpegel übergeht, wird ein geradzahliges Datenbit über die Schalterschaltung 162_2 an den Fehlerkorrektor 303 angelegt. Gleichzeitig wird das zweite Signal, das anzeigt, ob das geradzahlige Datenbit fehlerhaft ist, von dem Fehlerdetektor 302, der die zweite Gruppe von Syndrombits aus dem Syndromgenerator 301_T decodiert, an den Fehlerkorrektor 303 angelegt. Das gerade an den Fehlerkorrektor 303 angelegte geradzahlige Datenbit wird entweder nach der Fehlerkorrektur oder ohne Fehlerkorrektur gemäß einem Logikzustand des zweiten Signals aus dem Fehlerdetektor 302 an die entsprechende E/A-Schaltung 220 ausgegeben.
Die erste Gruppe von Syndrombits wird im entsprechenden Syndromgenerator 301 nach rechts verschoben, um ein Signal zu erzeugen, das anzeigt, ob ein nächstes ungeradzahliges Datenbit fehlerhaft ist. Ebenso wird die zweite Gruppe von Syndrombits im entsprechenden Syndromgenerator 301 nach rechts verschoben, um ein Signal zu erzeugen, das anzeigt, ob ein nächstes geradzahliges Datenbit fehlerhaft ist.
Danach wird die vorstehend erläuterte Fehlerkorrekturoperation im Zusammenhang mit den restlichen ungeradzahligen und geradzahligen Datenbits wiederholt durchgeführt, und auf deren Beschreibung wird somit verzichtet.
Gemäß der dritten Ausführungsform der Erfindung entspricht die Zeit, die für den ersten Zyklus erforderlich ist, 265 Taktzyklen, während sie im Fall des herkömmlichen Flash-Spei­ cherbauelements 530 Taktzyklen entspricht. Während des ersten Zyklus kann eine Zugriffszeit auf das Flash-Spei­ cherbauelement mit der chipinternen ECC auf die Hälfte von jener gemäß dem herkömmlichen Flash-Speicherbauelement verringert werden. Ferner werden ein 1-Bit-Fehler in den ungeradzahligen Datenbits und ein 1-Bit-Fehler in den geradzahligen Datenbits durch die Fehlerkorrekturschaltung 300 korrigiert. Somit wird ein 2-Bit-Fehler der 512 Datenbits, die aus einem E/A-Speicherblock ausgelesen werden, korrigiert.
Fig. 13 ist eine vierte Ausführungsform des Halbleiterspeicherbauelements gemäß der Erfindung. In Fig. 13 sind die Elementarbestandteile, die zu jenen von Fig. 11 identisch sind, mit denselben Bezugsziffern oder gleichen Ziffern bezeichnet.
Die in Fig. 13 dargestellte vierte Ausführungsform unterscheidet sich von der dritten Ausführungsform von Fig. 11 nur darin, daß eine Leseverstärkerschaltung 140, eine Spalten-Durchgangsgatterschaltung 160 und eine Spaltendecodierschaltung 180 auf einer unteren Seite der Speicherzellenmatrix 100 angeordnet sind. Ähnlich der dritten Ausführungsform ist eine Fehlerkorrekturschaltung 300 vorgesehen, so daß sie einer E/A-Schaltung 220 entspricht, und ist mit der Spalten-Durch­ gangsgatterschaltung 160 gekoppelt. Wie in Fig. 14 dargestellt, die eine bevorzugte Ausführungsform einer in Fig. 13 dargestellten Fehlerkorrekturschaltung 300 ist, besitzt die Fehlerkorrekturschaltung 300 dieselbe Konfiguration wie die dritte Ausführungsform von Fig. 12 und erfüllt auch dieselbe Funktion wie bei der dritten Ausführungsform. Somit wird auf die Beschreibung der vierten Ausführungsform verzichtet. Folglich besitzt die vierte Ausführungsform dieselben Wirkungen wie die dritte Ausführungsform von Fig. 11.
Die Erfindung wurde unter Verwendung von beispielhaften bevorzugten Ausführungsformen beschrieben. Dennoch sollte es selbstverständlich sein, daß der Schutzbereich der Erfindung nicht auf die offenbarten Ausführungsformen begrenzt ist. Im Gegenteil ist vorgesehen, daß sie verschiedene Modifikationen und ähnliche Anordnungen erfaßt. Dem Schutzbereich der Ansprüche sollte daher die breiteste Interpretation gewährt werden, um alle solchen Modifikationen und ähnlichen Anordnungen zu umfassen.

Claims (16)

1. Verfahren zum Korrigieren eines Fehlers in einem Halbleiterspeicherbauelement mit einer Speicherzellenmatrix, in der eine Vielzahl von Datenbits und eine Vielzahl von Prüfbits entsprechend den Datenbits der Vielzahl gespeichert sind, wobei die Vielzahl von Datenbits und die Vielzahl von Prüfbits in mindestens eine erste und eine zweite Gruppe gleich aufgeteilt sind, wobei das Verfahren die folgenden Schritte umfaßt:
Lesen der Vielzahl von Datenbits und der Vielzahl von Prüfbits aus der Speicherzellenmatrix;
gleichzeitiges Empfangen der Daten- und Prüfbits der ersten Gruppe und der Daten- und Prüfbits der zweiten Gruppe, um eine erste und eine zweite Gruppe von Syndrombits entsprechend der ersten bzw. der zweiten Gruppe der Daten- und Prüfbits zu erzeugen; und
Korrigieren eines Fehlers in den Datenbits der ersten und der zweiten Gruppe als Reaktion auf die erste bzw. die zweite Gruppe von Syndrombits, wobei mindestens zwei fehlerhafte Datenbits in der Vielzahl von Datenbits korrigiert werden.
2. Verfahren nach Anspruch 1, wobei der Schritt des Korrigierens eines Fehlers aus folgendem besteht:
Decodieren der ersten und der zweiten Gruppe von Syndrombits, um den Fehler in den Datenbits der ersten bzw. der zweiten Gruppe zu erkennen, und Ausgeben eines ersten Signals, das die Anwesenheit oder Abwesenheit des Fehlers in den Datenbits der ersten Gruppe anzeigt, und eines zweiten Signals, das die Anwesenheit oder Abwesenheit des Fehlers in den Datenbits der zweiten Gruppe anzeigt; und
abwechselndes Empfangen der Datenbits der ersten Gruppe und der Datenbits der zweiten Gruppe, und
Korrigieren des Fehlers in den Datenbits der ersten Gruppe als Reaktion auf das erste Signal und des Fehlers in den Datenbits der zweiten Gruppe als Reaktion auf das zweite Signal.
3. Halbleiterspeicherbauelement, welches folgendes umfaßt:
eine Speicherzellenmatrix, die eine Vielzahl von Datenbits und eine Vielzahl von Prüfbits entsprechend den Datenbits der Vielzahl speichert, wobei die Vielzahl von Datenbits und die Vielzahl von Prüfbits in mindestens eine erste und eine zweite Gruppe gleich aufgeteilt sind;
ein Mittel zum Auslesen der Vielzahl von Datenbits und der Vielzahl von Prüfbits aus der Speicherzellenmatrix; und
ein Mittel zum Korrigieren eines ersten Fehlers in den Datenbits der ersten Gruppe bzw. eines zweiten Fehlers in den Datenbits der zweiten Gruppe,
wobei das Mittel zum Korrigieren die Daten- und Prüfbits der ersten Gruppe und die Daten- und Prüfbits der zweiten Gruppe parallel empfängt, erste Syndrombits bzw. zweite Syndrombits entsprechend der ersten und der zweiten Gruppe der Datenbits erzeugt, und den ersten Fehler in den Datenbits der ersten Gruppe und den zweiten Fehler in den Datenbits der zweiten Gruppe als Reaktion auf die ersten bzw. zweiten Syndrombits korrigiert.
4. Halbleiterspeicherbauelement nach Anspruch 3, welches ferner eine Eingabe-/Ausgabeschaltung zum Ausgeben der Datenbits der ersten und der zweiten Gruppe, die abwechselnd aus dem Mittel zum Korrigieren ausgegeben werden, umfaßt.
5. Halbleiterspeicherbauelement nach Anspruch 4, wobei das Mittel zum Korrigieren eine erste Fehlerkorrekturschaltung zum Korrigieren des ersten Fehlers in den Datenbits der ersten Gruppe und eine zweite Fehlerkorrekturschaltung zum Korrigieren des zweiten Fehlers in den Datenbits der zweiten Gruppe umfaßt, wobei die erste und die zweite Fehlerkorrekturschaltung gemeinsam mit der Eingabe-/Ausgabeschaltung gekoppelt sind.
6. Halbleiterspeicherbauelement nach Anspruch 5, wobei die erste Fehlerkorrekturschaltung folgendes umfaßt:
einen ersten Syndromgenerator zum fortlaufenden Empfangen der Daten- und Prüfbits der ersten Gruppe, um die ersten Syndrombits als Reaktion darauf zu erzeugen;
einen ersten Detektor zum Decodieren der ersten Syndrombits, um den ersten Fehler in den Datenbits der ersten Gruppe zu erkennen, und zum Ausgeben eines ersten Signals, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt; und
einen ersten Korrektor zum fortlaufenden Empfangen der Datenbits der ersten Gruppe, und zum Korrigieren des ersten Fehlers in den Datenbits der ersten Gruppe als Reaktion auf das erste Signal, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt.
7. Halbleiterspeicherbauelement nach Anspruch 6, wobei der erste Syndromgenerator als Mittel zum Erzeugen der Prüfbits der ersten Gruppe während einer Schreibbetriebsart dient.
8. Halbleiterspeicherbauelement nach Anspruch 7, wobei die zweite Fehlerkorrekturschaltung folgendes umfaßt:
einen zweiten Syndromgenerator zum fortlaufenden Empfangen der Daten- und Prüfbits der zweiten Gruppe, um die zweiten Syndrombits als Reaktion darauf zu erzeugen;
einen zweiten Detektor zum Decodieren der zweiten Syndrombits, um den zweiten Fehler in den Datenbits der zweiten Gruppe zu erkennen, und zum Ausgeben eines zweiten Signals, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt; und
einen zweiten Korrektor zum Empfangen der Datenbits der zweiten Gruppe, und zum Korrigieren des zweiten Fehlers in den Datenbits der zweiten Gruppe als Reaktion auf das zweite Signal, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt.
9. Halbleiterspeicherbauelement nach Anspruch 8, wobei der zweite Syndromgenerator als Mittel zum Erzeugen der Prüfbits der zweiten Gruppe während der Schreibbetriebsart dient.
10. Halbleiterspeicherbauelement nach Anspruch 4, wobei das Mittel zum Korrigieren folgendes umfaßt:
einen ersten Syndromgenerator zum fortlaufenden Empfangen der Daten- und Prüfbits der ersten Gruppe, um die ersten Syndrombits als Reaktion darauf zu erzeugen;
einen zweiten Syndromgenerator zum fortlaufenden Empfangen der Daten- und Prüfbits der zweiten Gruppe, um die zweiten Syndrombits als Reaktion darauf zu erzeugen;
einen Detektor zum abwechselnden Empfangen der ersten und der zweiten Syndrombits aus dem ersten und dem zweiten Syndromgenerator, zum Decodieren der ersten Syndrombits, um den ersten Fehler in den Datenbits der ersten Gruppe zu erkennen, und der zweiten Syndrombits, um den zweiten Fehler in den Datenbits der zweiten Gruppe zu erkennen, und zum Ausgeben eines ersten Signals, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt, und eines zweiten Signals, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt; und
einen Korrektor zum abwechselnden Empfangen der Datenbits der ersten und der zweiten Gruppe, wobei der Korrektor eine Operation zum Korrigieren des ersten Fehlers in den Datenbits der ersten Gruppe als Reaktion auf das erste Signal, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt, und des zweiten Fehlers in den Datenbits der zweiten Gruppe als Reaktion auf das zweite Signal, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt, durchführt.
11. Halbleiterspeicherbauelement nach Anspruch 10, wobei die durch den Korrektor korrigierten Datenbits der ersten und der zweiten Gruppe über die Eingabe-/Ausgabeschaltung abwechselnd nach außen übertragen werden.
12. Halbleiterspeicherbauelement, welches folgendes umfaßt:
eine Speicherzellenmatrix, die eine Vielzahl von Datenbits und eine Vielzahl von Prüfbits entsprechend den Datenbits der Vielzahl speichert, wobei die Vielzahl von Datenbits und die Vielzahl von Prüfbits in mindestens eine erste und eine zweite Gruppe gleich aufgeteilt sind;
eine Leseschaltung zum Auslesen der Vielzahl von Datenbits und der Vielzahl von Prüfbits aus der Speicherzellenmatrix;
eine Eingabe-/Ausgabeschaltung zum Eingeben/Ausgeben der Datenbits der Vielzahl von/nach außen;
eine erste Fehlerkorrekturschaltung zum Korrigieren des ersten Fehlers in den Datenbits der ersten Gruppe, wobei die erste Fehlerkorrekturschaltung einen ersten Syndromgenerator zum fortlaufenden Empfangen der Daten- und Prüfbits der ersten Gruppe, um die ersten Syndrombits als Reaktion darauf zu erzeugen; einen ersten Detektor zum Decodieren der ersten Syndrombits, um den ersten Fehler in den Datenbits der ersten Gruppe zu erkennen, und zum Ausgeben eines ersten Signals, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt; und einen ersten Korrektor zum fortlaufenden Empfangen der Datenbits der ersten Gruppe und zum Korrigieren des ersten Fehlers in den Datenbits der ersten Gruppe als Reaktion auf das erste Signal, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt, umfaßt; und
eine zweite Fehlerkorrekturschaltung zum Korrigieren des zweiten Fehlers in den Datenbits der zweiten Gruppe, wobei die zweite Fehlerkorrekturschaltung einen zweiten Syndromgenerator zum fortlaufenden Empfangen der Daten- und Prüfbits der zweiten Gruppe, um die zweiten Syndrombits als Reaktion darauf zu erzeugen; einen zweiten Detektor zum Decodieren der zweiten Syndrombits, um den zweiten Fehler in den Datenbits der zweiten Gruppe zu erkennen, und zum Ausgeben eines zweiten Signals, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt; und einen zweiten Korrektor zum Empfangen der Datenbits der zweiten Gruppe und zum Korrigieren des zweiten Fehlers in den Datenbits der zweiten Gruppe als Reaktion auf das zweite Signal, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt, umfaßt,
wobei die Datenbits der ersten und der zweiten Gruppe, die jeweils durch den ersten und den zweiten Korrektor korrigiert werden, über die Eingabe-/Ausgabeschaltung abwechselnd nach außen übertragen werden.
13. Halbleiterspeicherbauelement nach Anspruch 12, wobei der erste und der zweite Syndromgenerator als Mittel zum Erzeugen der Prüfbits der ersten bzw. der zweiten Gruppe während einer Schreibbetriebsart dienen.
14. Halbleiterspeicherbauelement, welches folgendes umfaßt:
eine Speicherzellenmatrix, die eine Vielzahl von Datenbits und eine Vielzahl von Prüfbits entsprechend den Datenbits der Vielzahl speichert, wobei die Vielzahl von Datenbits und die Vielzahl von Prüfbits in mindestens eine erste und eine zweite Gruppe gleich aufgeteilt sind;
eine Leseschaltung zum Auslesen der Vielzahl von Datenbits und der Vielzahl von Prüfbits aus der Speicherzellenmatrix;
eine Eingabe-/Ausgabeschaltung zum Eingeben/Ausgeben der Datenbits der Vielzahl von/nach außen;
einen ersten Syndromgenerator zum fortlaufenden Empfangen der Daten- und Prüfbits der ersten Gruppe, um erste Syndrombits als Reaktion darauf zu erzeugen;
einen zweiten Syndromgenerator zum fortlaufenden Empfangen der Daten- und Prüfbits der zweiten Gruppe, um zweite Syndrombits als Reaktion darauf zu erzeugen;
einen Detektor zum abwechselnden Empfangen der ersten und der zweiten Syndrombits aus dem ersten und dem zweiten Syndromgenerator, zum Decodieren der ersten Syndrombits, um den ersten Fehler in den Datenbits der ersten Gruppe zu erkennen, und der zweiten Syndrombits, um den zweiten Fehler in den Datenbits der zweiten Gruppe zu erkennen, und zum Ausgeben eines ersten Signals, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt, und eines zweiten Signals, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt; und
einen Korrektor zum abwechselnden Empfangen der Datenbits der ersten und der zweiten Gruppe, wobei der Korrektor eine Operation zum Korrigieren des ersten Fehlers in den Datenbits der ersten Gruppe als Reaktion auf das erste Signal, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt, und des zweiten Fehlers in den Datenbits der zweiten Gruppe als Reaktion auf das zweite Signal, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt, durchführt,
wobei die Datenbits der ersten und der zweiten Gruppe, die jeweils durch den Korrektor korrigiert werden, über die Eingabe-/Ausgabeschaltung abwechselnd nach außen übertragen werden.
15. Halbleiterspeicherbauelement, welches folgendes umfaßt:
eine Speicherzellenmatrix, die in eine Vielzahl von Eingabe-/Ausgabespeicherblöcke aufgeteilt ist, wobei jeder der Eingabe-/Ausgabespeicherblöcke eine Vielzahl von Datenbits und eine Vielzahl von Prüfbits entsprechend der Vielzahl der Datenbits speichert;
eine Vielzahl von Eingabe-/Ausgabeschaltungen, die jeweils der Vielzahl der Eingabe-/Ausgabespeicherblöcke entsprechen;
eine Leseschaltung zum Auslesen der Daten- und Prüfbits aus jedem Eingabe-/Ausgabespeicherblock;
ein Mittel zum Korrigieren eines Fehlers in den aus jedem Eingabe-/Ausgabespeicherblock ausgelesenen Datenbits, wobei das Mittel zum Korrigieren eine Vielzahl von Fehlerkorrekturabschnitten umfaßt, die jeweils den Eingabe-/Ausgabeschaltungen entsprechen; und
wobei jeder der Fehlerkorrekturabschnitte eine erste Fehlerkorrekturschaltung zum Korrigieren eines ersten Fehlers in ungeradzahligen Datenbits, die aus einem entsprechenden Eingabe-/Ausgabespeicherblock ausgelesen werden, und eine zweite Fehlerkorrekturschaltung zum Korrigieren eines zweiten Fehlers in geradzahligen Datenbits, die aus dem entsprechenden Eingabe-/Ausgabespeicherblock ausgelesen werden, umfaßt,
wobei die erste Fehlerkorrekturschaltung einen ersten Syndromgenerator zum fortlaufenden Empfangen von ungeradzahligen der Daten- und Prüfbits, die aus dem entsprechenden Eingabe-/Ausgabespeicherblock ausgelesen werden, um erste Syndrombits als Reaktion darauf zu erzeugen; einen ersten Detektor zum Decodieren der ersten Syndrombits, um den ersten Fehler in den ungeradzahligen Datenbits zu erkennen, und zum Ausgeben eines ersten Signals, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt; und einen ersten Korrektor zum fortlaufenden Empfangen der ungeradzahligen Datenbits und zum Korrigieren des ersten Fehlers in den ungeradzahligen Datenbits als Reaktion auf das erste Signal, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt, umfaßt; und
die zweite Fehlerkorrekturschaltung einen zweiten Syndromgenerator zum fortlaufenden Empfangen von geradzahligen der Daten- und Prüfbits, die aus dem entsprechenden Eingabe- /Ausgabespeicherblock ausgelesen werden, um zweite Syndrombits als Reaktion darauf zu erzeugen; einen zweiten Detektor zum Decodieren der zweiten Syndrombits, um den zweiten Fehler in den geradzahligen Datenbits zu erkennen, und zum Ausgeben eines zweiten Signals, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt; und einen zweiten Korrektor zum fortlaufenden Empfangen der geradzahligen Datenbits und zum Korrigieren des zweiten Fehlers in den geradzahligen Datenbits als Reaktion auf das zweite Signal, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt, umfaßt.
16. Halbleiterspeicherbauelement, welches folgendes umfaßt:
eine Speicherzellenmatrix, die in eine Vielzahl von Eingabe-/Ausgabespeicherblöcke aufgeteilt ist, wobei jeder der Eingabe-/Ausgabespeicherblöcke eine Vielzahl von Datenbits und eine Vielzahl von Prüfbits entsprechend den Datenbits der Vielzahl speichert;
eine Vielzahl von Eingabe-/Ausgabeschaltungen, die jeweils den Eingabe-/Ausgabespeicherblöcken der Vielzahl entsprechen;
eine Leseschaltung zum Auslesen der Daten und Prüfbits aus jedem Eingabe-/Ausgabespeicherblock;
ein Mittel zum Korrigieren eines Fehlers in den aus jedem Eingabe-/Ausgabespeicherblock ausgelesenen Datenbits, wobei das Mittel zum Korrigieren eine Vielzahl von Fehlerkorrekturabschnitten umfaßt, die jeweils den Eingabe-/Ausgabeschaltungen entsprechen; und
wobei jeder der Fehlerkorrekturabschnitte folgendes umfaßt:
einen ersten Syndromgenerator zum fortlaufenden Empfangen von ungeradzahligen der Daten- und Prüfbits, die aus einem entsprechenden Eingabe-/Ausgabespeicherblock ausgelesen werden, um erste Syndrombits als Reaktion darauf zu erzeugen; einen zweiten Syndromgenerator zum fortlaufenden Empfangen von geradzahligen der Daten- und Prüfbits, die aus dem entsprechenden Eingabe-/Ausgabespeicherblock ausgelesen werden, um zweite Syndrombits als Reaktion darauf zu erzeugen;
einen Detektor zum abwechselnden Empfangen der ersten und der zweiten Syndrombits aus dem ersten und dem zweiten Syndromgenerator, zum Decodieren der ersten Syndrombits, um einen ersten Fehler in den ungeradzahligen Datenbits zu erkennen, und der zweiten Syndrombits, um einen zweiten Fehler in den geradzahligen Datenbits zu erkennen, und zum Ausgeben eines ersten Signals, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt, und eines zweiten Signals, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt; und
einen Korrektor zum abwechselnden Empfangen der ungeradzahligen Datenbits und der geradzahligen Datenbits, wobei der Korrektor eine Operation zum Korrigieren des ersten Fehlers in den ungeradzahligen Datenbits als Reaktion auf das erste Signal, das die Anwesenheit oder Abwesenheit des ersten Fehlers anzeigt, und des zweiten Fehlers in den geradzahligen Datenbits als Reaktion auf das zweite Signal, das die Anwesenheit oder Abwesenheit des zweiten Fehlers anzeigt, durchführt.
DE19937101A 1998-08-07 1999-08-06 Halbleiterspeicherbauelement mit Chipinterner Fehlerkorrekturschaltung und ein Verfahren zum Korrigieren eines Datenfehlers darin Withdrawn DE19937101A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980032236A KR100287018B1 (ko) 1998-08-07 1998-08-07 에러 정정 회로를 구비한 반도체 메모리 장치

Publications (1)

Publication Number Publication Date
DE19937101A1 true DE19937101A1 (de) 2000-02-17

Family

ID=19546726

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19937101A Withdrawn DE19937101A1 (de) 1998-08-07 1999-08-06 Halbleiterspeicherbauelement mit Chipinterner Fehlerkorrekturschaltung und ein Verfahren zum Korrigieren eines Datenfehlers darin

Country Status (6)

Country Link
US (1) US6510537B1 (de)
JP (1) JP4138169B2 (de)
KR (1) KR100287018B1 (de)
DE (1) DE19937101A1 (de)
GB (1) GB2340629A (de)
TW (1) TW422976B (de)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6668341B1 (en) * 1999-11-13 2003-12-23 International Business Machines Corporation Storage cell with integrated soft error detection and correction
JP4378015B2 (ja) * 2000-02-28 2009-12-02 インターナショナル・ビジネス・マシーンズ・コーポレーション メモリ・チップ
JP4323707B2 (ja) * 2000-10-25 2009-09-02 富士通マイクロエレクトロニクス株式会社 フラッシュメモリの欠陥管理方法
KR100635195B1 (ko) * 2000-12-29 2006-10-16 주식회사 하이닉스반도체 플래쉬 메모리 장치
US20020174397A1 (en) * 2001-05-16 2002-11-21 Fujitsu Limited Method for error detection/correction of multilevel cell memory and multilevel cell memory having error detection/correction function
US6990623B2 (en) * 2001-05-16 2006-01-24 Fujitsu Limited Method for error detection/correction of multilevel cell memory and multilevel cell memory having error detection/correction function
US6957378B2 (en) * 2001-06-04 2005-10-18 Kabushiki Kaisha Toshiba Semiconductor memory device
JP4112849B2 (ja) * 2001-11-21 2008-07-02 株式会社東芝 半導体記憶装置
KR100441608B1 (ko) * 2002-05-31 2004-07-23 삼성전자주식회사 낸드 플래시 메모리 인터페이스 장치
US20040083334A1 (en) * 2002-10-28 2004-04-29 Sandisk Corporation Method and apparatus for managing the integrity of data in non-volatile memory system
JP2004246754A (ja) * 2003-02-17 2004-09-02 Renesas Technology Corp 半導体記憶装置およびその制御装置
US7904786B2 (en) * 2003-03-06 2011-03-08 Hewlett-Packard Development Company, L.P. Assisted memory system
EP1538525A1 (de) * 2003-12-04 2005-06-08 Texas Instruments Incorporated ECC-Generierung simultan ausgeführt während des Lesens oder Programmierens eines Flash-Speichers
US7099221B2 (en) 2004-05-06 2006-08-29 Micron Technology, Inc. Memory controller method and system compensating for memory cell data losses
US20060010339A1 (en) * 2004-06-24 2006-01-12 Klein Dean A Memory system and method having selective ECC during low power refresh
US7340668B2 (en) * 2004-06-25 2008-03-04 Micron Technology, Inc. Low power cost-effective ECC memory system and method
US7116602B2 (en) 2004-07-15 2006-10-03 Micron Technology, Inc. Method and system for controlling refresh to avoid memory cell data losses
JP2006048777A (ja) * 2004-08-02 2006-02-16 Toshiba Corp Nandフラッシュメモリおよびデータ書き込み方法
US6965537B1 (en) * 2004-08-31 2005-11-15 Micron Technology, Inc. Memory system and method using ECC to achieve low power refresh
US8245109B2 (en) * 2006-03-31 2012-08-14 Hewlett-Packard Development Company, L.P. Error checking and correction (ECC) system and method
US7506226B2 (en) * 2006-05-23 2009-03-17 Micron Technology, Inc. System and method for more efficiently using error correction codes to facilitate memory device testing
US7774684B2 (en) * 2006-06-30 2010-08-10 Intel Corporation Reliability, availability, and serviceability in a memory device
US7894289B2 (en) * 2006-10-11 2011-02-22 Micron Technology, Inc. Memory system and method using partial ECC to achieve low power refresh and fast access to data
US7900120B2 (en) 2006-10-18 2011-03-01 Micron Technology, Inc. Memory system and method using ECC with flag bit to identify modified data
US7545681B2 (en) * 2006-11-27 2009-06-09 Sandisk Corporation Segmented bitscan for verification of programming
US7440319B2 (en) * 2006-11-27 2008-10-21 Sandisk Corporation Apparatus with segmented bitscan for verification of programming
JP4564520B2 (ja) 2007-08-31 2010-10-20 株式会社東芝 半導体記憶装置およびその制御方法
US8112699B2 (en) * 2008-02-14 2012-02-07 Atmel Rousset S.A.S. Error detecting/correcting scheme for memories
KR101529880B1 (ko) * 2008-10-31 2015-06-19 삼성전자주식회사 에러 추정 방법 및 정정 방법
US20130007563A1 (en) * 2011-07-01 2013-01-03 Samsung Electronics Co., Ltd. Semiconductor memory device having error correction function and memory system including the same
US8848465B2 (en) * 2011-07-06 2014-09-30 Samsung Electronics Co., Ltd. Memory devices including selective RWW and RMW decoding
GB201114831D0 (en) * 2011-08-26 2011-10-12 Univ Oxford Brookes Circuit with error correction
US8910017B2 (en) 2012-07-02 2014-12-09 Sandisk Technologies Inc. Flash memory with random partition
TWI486961B (zh) * 2013-01-16 2015-06-01 Univ Nat Taiwan Science Tech 非揮發性記憶體的故障遮蔽方法
KR102407338B1 (ko) * 2015-09-14 2022-06-13 삼성전자주식회사 메모리 장치의 에러 체크 및 정정(ecc) 제어 방법 및 이를 수행하는 메모리 장치
KR102194914B1 (ko) * 2019-04-17 2020-12-28 윈본드 일렉트로닉스 코포레이션 에러 정정 회로를 가지는 메모리
US10846168B1 (en) 2019-05-23 2020-11-24 Winbond Electronics Corp. Memory with error correction circuit
US11537464B2 (en) * 2019-06-14 2022-12-27 Micron Technology, Inc. Host-based error correction
US11150814B2 (en) * 2019-10-28 2021-10-19 International Business Machines Corporation Utilizing a link interface for performing partial write operations to memory
US11263078B2 (en) * 2019-12-31 2022-03-01 Micron Technology, Inc. Apparatuses, systems, and methods for error correction
EP4231301A1 (de) 2020-09-18 2023-08-23 Changxin Memory Technologies, Inc. Bitleitungsabtastschaltung und speicher
CN114203230B (zh) * 2020-09-18 2023-09-15 长鑫存储技术有限公司 一种列选择信号单元电路、位线感测电路及存储器
JP7178465B1 (ja) * 2021-08-31 2022-11-25 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3755779A (en) * 1971-12-14 1973-08-28 Ibm Error correction system for single-error correction, related-double-error correction and unrelated-double-error detection
US4201337A (en) * 1978-09-01 1980-05-06 Ncr Corporation Data processing system having error detection and correction circuits
GB2048529A (en) * 1979-05-08 1980-12-10 Honeywell Inf Systems Error detection and correction system
US4736376A (en) * 1985-10-25 1988-04-05 Sequoia Systems, Inc. Self-checking error correcting encoder/decoder
JP2583547B2 (ja) * 1988-01-13 1997-02-19 株式会社日立製作所 半導体メモリ
US4958350A (en) * 1988-03-02 1990-09-18 Stardent Computer, Inc. Error detecting/correction code and apparatus
KR940004404B1 (ko) 1990-11-30 1994-05-25 삼성전자 주식회사 불휘발성 반도체 메모리장치
US5226043A (en) * 1990-12-27 1993-07-06 Raytheon Company Apparatus and method for data error detection and correction and address error detection in a memory system
JP3067866B2 (ja) * 1991-11-26 2000-07-24 沖電気工業株式会社 半導体記憶装置
US5491702A (en) * 1992-07-22 1996-02-13 Silicon Graphics, Inc. Apparatus for detecting any single bit error, detecting any two bit error, and detecting any three or four bit error in a group of four bits for a 25- or 64-bit data word
GB2289779B (en) * 1994-05-24 1999-04-28 Intel Corp Method and apparatus for automatically scrubbing ECC errors in memory via hardware
JP3234130B2 (ja) * 1995-05-30 2001-12-04 三菱電機株式会社 誤り訂正符号復号化方法およびこの方法を用いる回路
KR0169412B1 (ko) 1995-10-16 1999-02-01 김광호 불휘발성 반도체 메모리 장치
US5920580A (en) * 1996-03-11 1999-07-06 Integrated Device Technology, Inc. Multiple error detection in error detection correction circuits

Also Published As

Publication number Publication date
GB2340629A (en) 2000-02-23
JP4138169B2 (ja) 2008-08-20
KR20000013395A (ko) 2000-03-06
JP2000090691A (ja) 2000-03-31
KR100287018B1 (ko) 2001-04-16
US6510537B1 (en) 2003-01-21
TW422976B (en) 2001-02-21
GB9910278D0 (en) 1999-06-30

Similar Documents

Publication Publication Date Title
DE19937101A1 (de) Halbleiterspeicherbauelement mit Chipinterner Fehlerkorrekturschaltung und ein Verfahren zum Korrigieren eines Datenfehlers darin
DE4027050C2 (de)
DE4242810C2 (de) EEPROM mit einem Fehlerprüf- und Korrektur-Schaltkreis
DE602004003275T2 (de) Nichtflüchtiger Speicher mit Seiten-Kopierfunktion und entsprechendes Verfahren
DE3833713C2 (de)
DE102008002083B4 (de) Flash-Speichervorrichtung und entsprechende Programmierverfahren
DE60129710T2 (de) Anordnung und struktur für zuverlässige dateikopieoperation für nicht-flüchtige speicher
DE60132830T2 (de) Neuartiges verfahren und struktur zur effizienten datenverifizierungsoperation für nichtflüchtige speicher
DE102004036888B4 (de) Flashspeichersystem und zugehöriges Datenschreibverfahren
DE60021746T2 (de) Nichtflüchtiger speicher zum speichern von multibitdaten
DE3906494C2 (de)
DE4328605C2 (de) Halbleiterspeichereinrichtung
DE10026993B4 (de) Flash-Speicherbauelement mit einer neuen Redundanzansteuerschaltung
DE4205061A1 (de) Elektrisch loeschbarer programmierbarer festwertspeicher mit einschreib/verifizier-steuereinheit
DE10043397A1 (de) Flash-Speicherbauelement mit Programmierungszustandsfeststellungsschaltung und das Verfahren dafür
DE102008002237B4 (de) Verfahren zum Prüfen einer nichtflüchtigen Speichervorrichtung
DE102005017012A1 (de) NOR-Flashspeicherbauelement, zugehöriges Speichersystem und Programmierverfahren
DE4040492C2 (de)
DE10239487A1 (de) Nichtflüchtiges Halbleiterspeicherbauelement
DE102005063166A1 (de) Nicht-flüchtiges Speicherelement und Verfahren zur Programmierüberprüfung in einem nicht-flüchtigen Speicherelement
DE3530591C2 (de)
DE19615660A1 (de) Schaltung zur Aufbringung einer Belastungsspannung in eine Blockeinheit für die Verwendung in einer Halbleiterspeichervorrichtung
DE60311117T2 (de) Verfahren und schaltkreise zum identifizieren schwacher bit in einem mram
DE102005055834A1 (de) Speicherschaltung, Ansteuerschaltung für einen Speicher und Verfahren zum Einschreiben von Schreibdaten in einen Speicher
DE60016104T2 (de) Nichtflüchtige Halbleiterspeicheranordnung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20110301