DE102007058828A1 - Speicherbauelement und Fehlerkorrekturverfahren - Google Patents

Speicherbauelement und Fehlerkorrekturverfahren Download PDF

Info

Publication number
DE102007058828A1
DE102007058828A1 DE102007058828A DE102007058828A DE102007058828A1 DE 102007058828 A1 DE102007058828 A1 DE 102007058828A1 DE 102007058828 A DE102007058828 A DE 102007058828A DE 102007058828 A DE102007058828 A DE 102007058828A DE 102007058828 A1 DE102007058828 A1 DE 102007058828A1
Authority
DE
Germany
Prior art keywords
data
error
ecc
bit
error position
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
DE102007058828A
Other languages
English (en)
Inventor
Yong Tae Suwon Yim
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 DE102007058828A1 publication Critical patent/DE102007058828A1/de
Withdrawn 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/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/267Reconfiguring circuits for testing, e.g. LSSD, partitioning
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3707Adaptive decoding and hybrid decoding, e.g. decoding methods or techniques providing more than one decoding algorithm for one code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3707Adaptive decoding and hybrid decoding, e.g. decoding methods or techniques providing more than one decoding algorithm for one code
    • H03M13/3715Adaptation to the number of estimated errors or to the channel state
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Read Only Memory (AREA)

Abstract

Die Erfindung bezieht sich auf ein Speicherbauelement mit Codierer und Decodierer zur Fehlerüberprüfung und Fehlerkorrektur (ECC) und auf ein entsprechendes Fehlerkorrekturverfahren. Ein erfindungsgemäßes Speicherbauelement umfasst einen ECC-Codierer (420), der Syndromdaten erzeugt, die, basierend auf Informationsdaten und einem Generatorpolynom, eine h-Bit-Fehlerkorrektur freigeben, wobei h eine ganze Zahl größer oder gleich zwei ist, und codierte Daten ausgibt, welche die Informationsdaten und die Syndromdaten umfassen, und einen ECC-Decodierer (430), der die codierten Daten empfängt und in einem entsprechenden Betriebsmodus, basierend auf den codierten Daten, in Bezug auf ein Maximum von h-j Bits eine Fehlerposition in den Informationsdaten detektiert, wobei "j" eine ganze Zahl größer oder gleich eins ist. Verwendung z. B. in der Halbleiterspeichertechnik mit ECC-Fehlerkorrektur.

Description

  • Die Erfindung bezieht sich auf ein Speicherbauelement mit Codierer und Decodierer zur Fehlerüberprüfung und Fehlerkorrektur (ECC) und auf ein entsprechendes Fehlerkorrekturverfahren.
  • Mit der Zunahme der Speicherkapazität in Halbleiterspeicherbauelementen ist eine Fehlerkorrekturschaltung erforderlich, die Fehler in defekten Speicherzellen erkennen kann. Herkömmliche Fehlerkorrekturschaltungen können in Fehlerkorrekturschaltungen, die eine Redundanzspeicherzelle verwenden, und in Fehlerkorrekturschaltungen aufgeteilt werden, die eine Fehlerüberprüfung und Fehlerkorrektur (ECC) verwenden.
  • Ein Halbleiterspeicherbauelement, das eine Fehlerkorrekturschaltung aufweist, die eine Redundanzspeicherzelle verwendet, weist normale Speicherzellen und Redundanzspeicherzellen auf. Hierbei ersetzt das Halbleiterspeicherbauelement eine Speicherzelle, die einen Fehler aufweist, durch eine Redundanzspeicherzelle, wenn Daten geschrieben oder gelesen werden. Normalerweise verwenden dynamische Speicher bauelemente mit direktem Zugriff (DRAM) solche Fehlerkorrekturschaltungen, die Redundanzspeicherzellen benutzen.
  • Andererseits erzeugt und speichert ein Halbleiterspeicherbauelement, das eine Fehlerkorrekturschaltung aufweist, welche ECC verwendet, Redundanzdaten, die als Paritätsdaten oder Syndromdaten bezeichnet werden, sowie ein Datenbit und bestimmt danach das Auftreten oder das Nichtauftreten eines Fehlers unter Verwendung von Paritätsbits, um den Fehler zu korrigieren. Die Fehlerkorrekturschaltung, welche ECC verwendet, wird normalerweise für Nurlesespeicherbauelemente (ROM-Bauelemente) und insbesondere für Flashspeicherbauelemente verwendet, welche elektrisch löschbare und programmierbare Nurlesespeicherzellen (EEPROM-Zellen) aufweisen.
  • Wenn jedoch Fehler über einen fehlerkorrigierbaren Bereich hinaus auftreten, korrigiert die Fehlerkorrekturschaltung, welche ECC verwendet, diese Fehler möglicherweise nicht richtig. Das bedeutet, dass sie eine Falschkorrekturwahrscheinlichkeit aufweist. Beispielsweise beträgt in einem Fall, in dem ein Fehlerdetectionscode (EDC) von 5 Bit und ein 4-Bit-ECC in Bezug auf 528-Byte-Informationsdaten verwendet werden, die Falschkorrekturwahrscheinlichkeit ungefähr P6 × 0,0015, wobei P6 die Wahrscheinlichkeit des Auftretens von 6 oder mehr Bitfehlern ist. Meistens ergibt sich mit einer solchen Fehlerkorrekturleistungsfähigkeit kein Problem während des Systembetriebs. In einer besonderen Situation, wenn beispielsweise aufgrund einer plötzlichen Verschlechterung des Halbleiterspeicherbauelements eine große Anzahl von Fehlern auftreten oder wenn mehrere Bündel- bzw. Burstfehler aufgrund eines Energieausfalls auftreten, kann jedoch auch eine moderate Falschkorrekturwahrscheinlichkeit die Systemstabilität verschlechtern. Entsprechend ist ein Ansatz zum Reduzieren der Falschkorrekturwahrscheinlichkeit erforderlich.
  • Herkömmlicherweise werden, um die Falschkorrekturwahrscheinlichkeit zu reduzieren, zyklische Redundanzüberprüfungsdaten (CRC-Daten) addiert und eine Falschkorrektur bei der ECC wird unter Verwendung der CRC-Daten detektiert. 1 ist ein funktionales Blockdiagramm eines herkömmlichen Codierers. Bezugnehmend auf 1 umfasst ein herkömmliches Halbleiterspeicherbauelement einen CRC-Codierer 12 und einen ECC-Codierer 14, um Informationsdaten zu codieren.
  • Der CRC-Codierer 12 empfängt Hostschreibdaten, d. h. Informationsdaten, von einem Host. Der CRC-Codierer 12 erzeugt CRC-Daten bzw. CRC-Paritätsdaten und addiert die CRC-Daten oder die CRC-Paritätsdaten zu den Informationsdaten. Die CRC-Parität kann z. B. 16-Datenbits umfassen, wie in 2 dargestellt ist.
  • Der ECC-Codierer 14 erzeugt ECC-Paritätsdaten oder Syndromdaten für die ECC in Bezug auf die Informationsdaten mit den CRC-Daten, d. h. in Bezug auf „Hostschreibdaten + CRC-Parität". Wenn der ECC-Codierer 14 ein 4-Bit-ECC-Codierer ist, kann die ECC-Parität ein 52-Bit-Datenwort sein. Wenn ein gerades Paritätsbit oder ein ungerades Paritätsbit addiert wird, kann die ECC-Parität ein 53-Bit-Datenwort sein, wie in 2 dargestellt ist.
  • 2 zeigt ein Beispiel der Struktur von herkömmlichen codierten Daten. Bezugnehmend auf 2 entsprechen die codierten Daten nach der Verarbeitung durch den CRC-Codierer 12 dem Ausdruck „Hostschreibdaten + CRC-Parität". Nach der Verarbeitung durch den ECC-Codierer 14 entsprechen die codierten Daten, die im Speicher gespeichert sind, dem Ausdruck „Hostschreibdaten + CRC-Parität + ECC-Parität".
  • 3 zeigt ein funktionales Blockdiagramm eines herkömmlichen Decodierers. Bezugnehmend auf 3 umfasst ein herkömmliches Halbleiterspeicherbauelement einen ECC-Decodierer 22, einen CRC-Decodierer 24 und einen Selektor 26. Das herkömmliche Halbleiterspeicherbauelement führt eine Decodierung in umgekehrter Reihenfolge zur Codierreihenfolge aus, was bedeutet, dass eine CRC-Decodierung nach der ECC-Decodierung von aus dem Speicher gelesenen Daten durchgeführt wird.
  • Der ECC-Decodierer 22 detektiert eine Fehlerposition durch Ausführen der ECC-Decodierung in Bezug auf die Daten, die aus dem Speicher gelesen werden, und korrigiert ein Fehlerbit entsprechend der detektierten Fehlerposition. Der CRC-Decodierer 24 empfängt die korrigierten Daten vom ECC-Decodierer 22, erzeugt CRC-Daten auf die gleiche Weise wie der CRC-Codierer 12, vergleicht die erzeugten CRC-Daten mit CRC-Daten, die aus dem Speicher gelesen werden, und bestimmt das Auftreten oder das Nichtauftreten eines Fehlers. Der CRC-Decodierer 24 gibt ein Bestanden/Durchgefallen-Signal entsprechend dem Bestimmungsergebnis aus. Der Selektor 26 wählt in Reaktion auf das Bestanden/Durchgefallen-Signal entweder die korrigierten Daten, die vom ECC-Decodierer 22 ausgegeben werden, oder vorbestimmte unkorrigierbare Fehlerdaten aus und gibt die ausgewählten Daten als Hostlesedaten an den Host aus.
  • Im oben beschriebenen herkömmlichen Verfahren, das CRC und ECC kombiniert, ist die Falschkorrekturwahrscheinlichkeit des 5-Bit-EDC/4-Bit-ECC auf P6 × 0,0015 × 2–16 reduziert, wobei P6 die Wahrscheinlichkeit des Auftretens von 6 oder mehr Bitfehlern ist. Dies ist eine Verbesserung im Vergleich zu Verfahren, die keine CRC-Schaltung verwenden. Wenn die CRC-Schaltung hinzugefügt wird, ist es jedoch erforderlich, einen CRC-Codec, d. h. einen CRC-Codierer und einen CRC-Decodierer, und eine Steuerlogik zum Steuern des CRC-Codec hinzuzufügen. Da die CRC während der Codierung und der Decodierung durchgeführt werden soll, ist zudem eine zusätzliche Zeitspanne erforderlich, d. h. eine zusätzliche Taktperiode.
  • Als technisches Problem liegt der Erfindung die Bereitstellung eines Speicherbauelements der eingangs genannten Art und eines zugehörigen Fehlerkorrekturverfahrens zugrunde, welche die Falschkorrekturwahrscheinlichkeit der ECC-Verfahren effektiv reduzieren und gleichzeitig die erforderliche zusätzliche Hardware und Fehlerkorrekturzeit minimieren.
  • Die Erfindung löst dieses Problem durch die Bereitstellung eines Speicherbauelements mit den Merkmalen des Patentanspruchs 1 und eines Fehlerkorrekturverfahrens mit den Merkmalen des Patentanspruchs 14 oder 17. Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
  • Die Erfindung stellt eine Fehlerkorrekturschaltung zur Verfügung, die weniger ECC-Bits zum Decodieren als zum Codieren verwendet, um die Falschkorrekturwahrscheinlichkeit zu reduzieren. Zudem stellt die Erfindung eine Schaltung zur Verfügung, die dafür eingerichtet ist, basierend auf einer Wahrscheinlichkeit des Auftretens von Mehrbitfehlern selektiv in einem von zwei alternativen Modi zu arbeiten. Die Erfindung vermeidet in vorteilhafter Weise die Notwendigkeit eines CRC-Codierers, eines CRC-Decodierers und zugehöriger Logikschaltungen. Entsprechend reduziert die Erfindung die erforderliche Hardware und verkürzt die Fehlerkorrekturzeit im Vergleich mit herkömmlichen Lösungen, die einen CRC-Codec verwenden.
  • Vorteilhafte, nachfolgend beschriebene Ausführungsformen der Erfindung sowie die zu deren besserem Verständnis oben erläuterten, herkömmlichen Ausführungsbeispiele sind in den Zeichnungen dargestellt. Es zeigen:
  • 1 ein funktionales Blockdiagramm eines herkömmlichen Codierers,
  • 2 eine Struktur von herkömmlichen codierten Daten,
  • 3 ein funktionales Blockdiagramm eines herkömmlichen Decodierers,
  • 4 ein funktionales Blockdiagramm eines Halbleiterspeicherbauelements gemäß der Erfindung,
  • 5 ein funktionales Blockdiagramm eines weiteren Halbleiterspeicherbauelements gemäß der Erfindung,
  • 6 Strukturen von Daten vor und nach Codierung gemäß der Erfindung,
  • 7 ein detailliertes Blockdiagramm des Halbleiterspeicherbauelements gemäß 5,
  • 8 ein detailliertes Blockdiagramm des Halbleiterspeicherbauelements gemäß 4 und
  • 9 ein funktionales Blockdiagramm eines Fehlerüberprüfungs- und Fehlerkorrekturcodierers (ECC-Codierers) gemäß der Erfindung.
  • Die vorliegende Erfindung wird nun detaillierter unter Bezugnahme auf die beiliegenden Zeichnungen beschrieben, in denen Ausführungsbeispiele der Erfindung dargestellt sind. In den Zeichnungen bezeichnen gleiche Bezugszeichen Elemente bzw. Komponenten, welche gleiche oder analoge Funktionen ausführen. Es versteht sich, dass ein Element direkt mit einem anderen Element oder über Zwischenelemente mit dem anderen Element gekoppelt sein kann, wenn in der Beschreibung angegeben wird, dass ein Element mit einem anderen Element „verbunden" oder „gekoppelt" ist. Im Gegensatz dazu beschreiben die Ausdrücke „direkt verbunden" bzw. „direkt gekoppelt" jeweils Zustände, bei welchen ein Element ohne Zwischenelemente mit einem anderen Element verbunden bzw. gekoppelt ist.
  • 4 veranschaulicht ein Halbleiterspeicherbauelement 300 gemäß Ausführungsformen der Erfindung. Das Halbleiterspeicherbauelement 300 umfasst einen Speicherkern 310, der mit einer Fehlerüberprüfungs- und Fehlerkorrekturschaltung (ECC-Schaltung) gekoppelt ist, die einen ECC-Codierer 420 und einen ECC-Decodierer 430 umfasst.
  • Der ECC-Codierer 420 erzeugt Syndromdaten, die eine h-Bit-Fehlerkorrektur ermöglichen, wobei „h" eine ganze Zahl größer oder gleich 2 ist, basierend auf Informationsdaten WR_DATA, die von einem nicht dargestellten Host empfangen werden, und einem Generatorpolynom. In anderen Worten ausgedrückt, codiert der ECC-Codierer 420 die Informationsdaten WR_DATA unter Verwendung eines h-Bit-ECC-Generatorpolynoms, was später beschrieben wird. Die codierten Daten, welche die Informationsdaten WR_DATA und die Syndromdaten umfassen, werden im Speicherkern 310 gespeichert.
  • 6 zeigt Daten vor und nach der Codierung gemäß Ausführungsformen der Erfindung. Bezugnehmend auf 6 sind die Daten (a) vor der Codierung Informationsdaten und die codierten Daten (b) sind die Informationsdaten mit den Syndromdaten. Die codierten Daten (b) werden hier auch als ein ECC-Wort bezeichnet.
  • Unter weiterer Bezugnahme auf 4 ist der Speicherkern 310 ein Speicherblock, z. B. ein Speicherzellenfeld, zum Speichern von Daten. Das Speicherzellenfeld kann elektrisch löschbare und programmierbare Nurlesespeicherzellen (EEPROM-Zellen) umfassen, die ein floatendes Gate aufweisen, die Erfindung ist jedoch nicht darauf beschränkt.
  • Der ECC-Decodierer 430 berechnet eine Fehlerposition unter Verwendung der codierten Daten, die aus dem Speicherkern 310 gelesen werden. Die Fehlerposition zeigt eine Position eines Bits an, das einen Fehler aufweist. Der ECC-Decodierer 430 kann die Bits auch korrigieren, die gemäß der berechneten Fehlerposition einen Fehler aufweisen. Im dargestellten Ausführungsbeispiel ist der ECC-Decodierer 430 ein (h – j)-Bit-ECC-Decodierer, der bis zu (h – j) Fehlerbits korrigieren kann. Der ECC-Decodierer 430 kann auch ein Decodierer sein, der (h – j + 1) Fehlerbits detektieren kann. In anderen Worten ausgedrückt, der ECC-Decodierer 430 kann z. B. ein (h – j)-Bit-ECC/(h – j + 1)-Bit-Fehlerdetektionscode(EDC)-Decodierer sein. Hierbei entspricht „j" einer ganzen Zahl größer oder gleich 1. Fehlerkorrigierte Daten RD_DATA werden vom ECC-Decodierer 430 an den Host ausgegeben.
  • Wie oben ausgeführt, führt die Fehlerkorrekturschaltung in entsprechenden Ausführungsbeispielen der Erfindung eine Codierung unter Verwendung eines h-Bit-ECC-Generatorpolynoms aus, das z. B. 5-Bit umfasst, wodurch ein Hamming-Abstand zwischen den Codes vergrößert wird, führt aber eine Fehlerkorrektur durch eine Decodierung von weniger als h Bits aus, z. B. mit 4-Bit, wodurch ein Fehlerkorrekturradius verkleinert wird. Daraus resultiert, dass eine Falschkorrekturwahrscheinlichkeit auf ungefähr P6 × 0,0015 × 2–13 reduziert wird, wenn eine 5-Bit-ECC-Codierung und eine 4-Bit-ECC-Decodierung verwendet wird, wobei P6 die Wahrscheinlichkeit des Auftretens von 6 oder mehr Bitfehlern ist.
  • 5 veranschaulicht ein Halbleiterspeicherbauelement 500 gemäß anderen Ausführungsformen der Erfindung. Das Halbleiterspeicherbauelement 500 umfasst einen Speicherkern 310, der mit einer ECC-Schaltung gekoppelt ist. Die ECC-Schaltung umfasst den ECC-Codierer 420 und einen ECC-Decodierer 530. Der Speicherkern 310 und der ECC-Codierer 420 wurden bereits unter Bezugnahme auf 4 beschrieben, so dass hier auf eine nochmalige detaillierte Beschreibung verzichtet werden kann.
  • Der ECC-Decodierer 530 arbeitet in Reaktion auf ein Betriebsmodussignal MODE, das vom Host empfangen wird, in einem ersten Betriebsmodus oder in einem zweiten Betriebsmodus. Im ersten Betriebsmodus berechnet der ECC-Decodierer 530 eine Fehlerposition unter Verwendung codierter Daten, die aus dem Speicherkern 310 gelesen werden, in Bezug auf ein Maximum von „h" Bits und korrigiert Bits, die einen Fehler aufweisen, gemäß der berechneten Fehlerposition. Im zweiten Betriebsmodus berechnet der ECC-Decodierer 530 eine Fehlerposition unter Verwendung der codierten Daten, die aus dem Speicherkern 310 gelesen werden, in Bezug auf ein Maximum von „h – j" Bits und korrigiert Bits, die einen Fehler aufweisen, gemäß der berechneten Fehlerposition. Hierbei entspricht „j" einer ganzen Zahl größer oder gleich 1. In anderen Worten ausgedrückt, arbeitet der ECC-Decodierer 530 als ein h-Bit-ECC-Decodierer oder als ein (h – j)-Bit-ECC-Decodierer basierend auf dem Betriebsmodussignal MODE. Wenn der ECC-Decodierer 530 als (h – j)-Bit-ECC-Decodierer arbeitet, entspricht seine Funktion der Funktion des ECC-Decodierer 430 gemäß der Ausführungsform aus 4. Wenn der ECC-Decodierer 530 als h-Bit-ECC-Decodierer arbeitet, kann er (h + 1) Fehlerbits detektieren, d. h. er arbeitet als h-Bit-ECC/(h + 1)-Bit-EDC-Decodierer. Die folgende Tabelle fasst die auswahlbaren Konfigurationen des ECC-Decodierers 530 in Bezug auf den h-Bit-ECC-Codierer 420 zusammen.
    Betriebsmodus ECC-Bits EDC-Bits
    erster h h + 1
    zweiter h – j h – j + 1
  • Fehlerkorrigierte Daten RD_DATA werden vom ECC-Decodierer 530 an den Host ausgegeben. Wie weiter unten ausgeführt, kann der erste Betriebsmodus für einen normalen Betriebszustand am besten geeignet sein, in welchem eine relativ geringe Wahrscheinlichkeit für das Auftreten von Mehrbitfehlern vorhanden ist, und der zweite Betriebsmodus kann für einen abnormalen Betriebszustand am besten geeignet sein, in welchem eine relativ hohe Wahrscheinlichkeit für das Auftreten von Mehrbitfehlern vorhanden ist.
  • 7 zeigt detaillierter eine vorteilhafte Realisierung des Halbleiterspeicherbauelements 500 gemäß 5 mit dem Speicherkern 310, einer ECC-Schaltung 520 und einer Rostschnittstellen- und Logikeinheit 330, die in Reihe geschaltet sind.
  • Die Rostschnittstellen- und Logikeinheit 330 kann die Steuerung und Pufferung für den Datenaustausch zwischen einem Host 200, z. B. einer Steuereinheit für ein mobiles Gerät oder einem Rechnerbauelement, und dem Speicherkern 310 durchführen. Die Rostschnittstellen- und Logikeinheit 330 kann einen Speicher, wie einen nicht dargestellten statischen Speicher mit direktem Zugriff (SRAM) umfassen. Wenn der Rost 200 Daten in das Halbleiterspeicherbauelement 500 schreibt, werden die Daten durch die ECC-Schaltung 520 codiert und dann in den Speicherkern 310 aufgenommen, der z. B. als Flashspeicherkern ausgeführt ist. Wenn Daten aus dem Speicherkern 310 gelesen werden, werden die Daten einer Fehlerdetektion und Fehlerkorrektur durch die ECC-Schaltung 520 unterworfen und dann im SRAM der Rostschnittstellen- und Logikeinheit 330 gespeichert. Der Host 200 kann dann die im SRAM gespeicherten fehlerkorrigierten Daten lesen. Die Rostschnittstellen- und Logikeinheit 330 kann parallele d-Bit-Daten an den Host 200 übertragen und vom Host 200 empfangen, wobei „d" eine ganze Zahl größer oder gleich 2 ist.
  • Die ECC-Schaltung 520 umfasst einen ECC-Wrapper 410, der mit dem ECC-Codierer 420 und dem ECC-Decodierer 530 gekoppelt ist. Der ECC-Wrapper 410 empfängt „k" Bits an Informationsdaten von der Rostschnittstellen- und Logikeinheit 330, wobei „k" eine ganze Zahl größer oder gleich 2 ist, z. B. 4096. Der ECC-Wrapper 410 addiert (n – k) Dummy-Datenbits, von denen jedes einen vorbestimmten logischen Wert von z. B. „0" aufweist, zu den Informationsdaten, wobei „n – k" eine ganze Zahl größer oder gleich 1 ist, z. B. 66. Der ECC-Wrapper gibt dann „n" Datenbits, z. B. 4096 + 66 = 4162 Bits, parallel oder in Reihe an den ECC-Codierer 420 aus.
  • 9 ist ein funktionales Blockdiagramm des ECC-Codierers 420 gemäß Ausführungsformen der Erfindung. Der ECC-Codierer 420 umfasst in diesem Beispiel einen Syndromgenerator 421 und einen Exklusiv-ODER-Operator (XOR-Operator) 423. Die Eingabe des Syndromgenerators 421 ist mit einem ersten Eingang des XOR-Operators 423 gekoppelt und die Ausgabe des Syndromgenerators 421 ist mit einem zweiten Eingang des XOR-Operators 423 gekoppelt.
  • Der Syndromgenerator 421 empfängt n-Datenbits, d. h. „k" Bits + (n – k) Dummy-Datenbits, vom ECC-Wrapper 410 und teilt die empfangenen n Datenbits durch vorbestimmte Daten, wodurch (n – k)-Restdatenbits erzeugt werden, d. h. Syndromdaten von (n – k) Bits. Die vorbestimmten Daten entsprechen einem Generatorpolynom G(x) und die Zahl (n – k) ist durch eine maximale Anzahl von korrigierbaren Fehlerbits und/oder einer maximalen Anzahl von detektierbaren Fehlerbits bestimmt.
  • Der XOR-Operator 423 führt eine XOR-Verknüpfung der n Datenbits, die vom ECC-Wrapper 410 empfangen werden, mit den Syndromdaten durch. In anderen Worten ausgedrückt, der XOR-Operator 423 ersetzt (n – k) Dummy-Datenbits durch die Restdaten. Als Konsequenz addiert der ECC-Codierer 420 die (n – k) Restdatenbits bzw. Syndromdaten zu den k-Bit Informationsdaten, wodurch n-Bit codierte Daten erzeugt werden. Wenn die Informationsdaten, die Syndromdaten und die codierten Daten durch I(x), S(x) bzw. C(x) repräsentiert werden, kann ihr Zusammenhang durch folgende Gleichung (1) ausgedrückt werden: S(x) = x(n-k)I(x)% G(x), C(x) = x(n-k)I(x) + S(x) = Q(x)G(x), (1)wobei x(n-k)I(x) durch Verschieben der k-Bit Informationsdaten 1(x) in Richtung des höchstwertigsten Bits (MSB) um (n – k) Bits erhalten wird, %G(x) eine Moduln-G(x)-Funktion bezeichnet und Q(x) der Quotient ist, wenn C(x) durch G(x) geteilt wird.
  • In Ausführungsformen der Erfindung ist z. B. der ECC-Codierer 420 ein 5-Bit-ECC-Codierer und der ECC-Decodierer 530 ein 5-Bit-ECC/4-Bit-ECC-Decodierer. In anderen Worten ausgedrückt, es ist dann „h" gleich 5 und „j" gleich 1. In diesem Fall ist (n – k) gleich 66, G(x) ist ein Polynom 66-ter Ordnung und S(x) ist ein Polynom 65-ter Ordnung.
  • Die n-Bit codierten Daten werden in den Speicherkern 310 eingegeben. Das im Speicherkern 310 enthaltene Speicherzellenfeld kann in einen Bereich zum Speichern der Informationsdaten und in einen Bereich zum Speichern der Syndromdaten aufgeteilt sein. Alternativ können die n-Bit codierten Daten im Speicherzellenfeld ohne Trennung eines Syndromdatenbereichs und eines Informationsdatenbereichs gespeichert werden.
  • Wenn die im Speicherkern 310 gespeicherten codierten Daten ausgegeben werden, werden n-Bit codierte Daten, die k-Bit Informationsdaten und (n – k)-Bit Paritätsdaten umfassen, aus dem Speicherkern 310 gelesen und in den ECC-Wrapper 410 eingegeben. Hierbei kann der ECC-Wrapper 410 die n-Bit codierten Daten Puffern.
  • Der ECC-Decodierer 530 umfasst fünf Teilsyndromgeneratoren 431, 433, 435, 437 und 439, die mit dem ECC-Wrapper 410 gekoppelt sind, einen Koeffizientenberechner 541, der mit den fünf Teilsyndromgeneratoren 431, 433, 435, 437 und 439 gekoppelt ist, einen Modussetzer 551, der mit dem Koeffizientenberechner 541 gekoppelt ist, einen Fehlerpositionsdetektor 552, der mit dem Koeffizientenberechner 541 gekoppelt ist, und einen Fehlerkorrektor 443, der mit dem Modussetzer 551 und dem Fehlerpositionsdetektor 552 gekoppelt ist.
  • Der ECC-Decodierer 530 kann auch einen Paritätsprüfer 444 umfassen, der mit dem ECC-Wrapper 410 und dem Fehlerkorrektor 443 gekoppelt ist. Der Paritätsprüfer 444 kann ein gerader Paritätsprüfer oder ein ungerader Paritätsprüfer sein. Wenn der ECC-Decodierer 530 den Paritätsprüfer 444 aufweist, umfasst der ECC-Codierer 420 weiter einen nicht dargestellten Paritätsbitgenerator, der in Bezug auf die codierten Daten ein gerades oder ungerades Paritätsbit erzeugt, das nachfolgend als erstes Paritätsbit bezeichnet wird. Der Paritätsprüfer 444 erzeugt in Bezug auf die codierten Daten, die aus dem Speicherkern 310 gelesen werden, ein gerades oder ungerades Paritätsbit, das nachfolgend auch als zweites Paritätsbit bezeichnet wird, und vergleicht es mit dem ersten Paritätsbit, wodurch bestimmt wird, ob die codierten Daten einen Fehler aufweisen.
  • Die fünf Teilsyndromgeneratoren 431, 433, 435, 437 und 439 teilen die n-Bit codierten Daten, die vom Speicherkern 310 ausgegeben werden, jeweils durch ihre eigenen vorbestimmten Daten, wodurch Teilsyndrome S1, S3, S5, S7 und S9 erzeugt werden. Wenn die vom Speicherkern 310 ausgegebenen n-Bit codierten Daten mit R(x) und die vorbestimmten Daten, d. h. die Teilgeneratorpolynome jedes der fünf Teilsyndromgeneratoren 431, 433, 435, 437 und 439 mit m1(x), m3(x), m5(x), m7(x) bzw. m9(x) bezeichnet werden, kann der Zusammenhang zwischen diesen Daten durch folgende Gleichung (2) ausgedrückt werden: S1(x) = R(x)% m1(x), S3(x) = f{R(x)% m3(x)}, S5(x) = f{R(x)% m5(x)}, S7(x) = f{R(x)% m7(x)}, S9(x) = f{R(x)% m9(x)}, (2)wobei S1(x), S3(x), S5(x), S7(x) und S9(x) die Teilsyndrome S1, S3, S5, S7 und S9, die durch je einen der fünf Teilsyndromgeneratoren 431, 433, 435, 437 und 439 erzeugt werden, und % eine Modulo-Funktion bezeichnet. Wie in Gleichung (2) dargestellt ist, kann S1(x) direkt aus R(x)%m1(x) berechnet werden, und S3(x), S5(x), S7(x) und S9(x) können unter Verwendung von R(x)% m3(x), R(x)% m5(x), R(x)% m7(x) bzw. R(x)% m9(x) berechnet werden.
  • Der Zusammenhang zwischen dem Generatorpolynom G(x) und den Teilgeneratorpolynomen m1(x), m3(x), m5(x), m7(x) und m9(x) der fünf Teilsyndromgeneratoren 431, 433, 435, 437 und 439 kann durch folgende Gleichung (3) definiert werden: G(x) = m1(x)·m3(x)·m5(x)·m7(x)·m9(x) (3)wobei „*" eine Galois-Feld-Multiplikation bezeichnet.
  • Wenn die fünf Teilsyndrome S1, S3, S5, S7 und S9 alle null sind, gibt es keinen Fehler in den codierten Daten. Wenn nur eines der fünf Teilsyndrome S1, S3, S5, S7 und S9 nicht null ist, tritt ein Fehler in wenigstens einem Bit der codierten Daten auf.
  • Wenn ein Fehler auftritt, berechnet der Koeffizientenberechner 541 in Reaktion auf ein Steuersignal CON des Modussetzers 551 unter Verwendung von allen oder einigen der fünf Teilsyndrome S1, S3, S5, S7 und S9 einen Koeffizienten einer Fehlerpositionsgleichung. Der Modussetzer 551 setzt den Betriebsmodus in Reaktion auf das Betriebsmodussignal MODE, das vom Host gesendet wird, und erzeugt das Steuersignal CON. Wenn z. B. der Betriebsmodus auf den ersten Betriebsmodus gesetzt wird, berechnet der Koeffizientenberechner 541 einen Koeffizienten einer ersten Fehlerpositionsgleichung unter Verwendung der fünf Teilsyndrome S1, S3, S5, S7 und S9. Wenn der Betriebsmodus auf den zweiten Betriebsmodus gesetzt wird, berechnet der Koeffizientenberechner 541 einen Koeffizienten einer zweiten Fehlerpositionsgleichung unter Verwendung der vier Teilsyndrome S1, S3, S5 und S7.
  • Die Fehlerpositionsgleichung weist einen Kehrwert eines Fehlerbits als Wurzel auf. Der Zusammenhang zwischen Koeffizienten σ1, σ2, σ3, σ4 und σ5 der Fehlerpositionsgleichung und den Teilsyndromen S1, S3, S5, S7 und S9 kann durch verschiedene Algorithmen erhalten werden, einschließlich der nachstehenden Gleichungen (4) und (5).
  • Gleichung (4) ist ein Beispiel der Fehlerpositionsgleichung zur Korrektur eines 1-Bit-Fehlers: σ1x + 1 = 0 (4) wobei σ1 = S1 und ein Kehrwert einer Wurzel eine Gleichung erster Ordnung erfüllt, d. h. Gleichung (4) zeigt die Position des 1-Bit-Fehlers an.
  • Gleichung (5) ist ein Beispiel der Fehlerpositionsgleichung zur Korrektur eines 2-Bit-Fehlers. σ2x2 + σ1x + 1 = 0 (5)wobei σ1 = S1, σ2 = (S1 3 + S3)/S1 und ein Kehrwert einer Wurzel eine Gleichung zweiter Ordnung erfüllt, d. h. Gleichung (5) zeigt die Position des 2-Bit-Fehlers an.
  • Auf die gleiche oben beschriebene Weise können Koeffizienten der Fehlerpositionsgleichung zur Korrektur von 3- oder mehr Bit-Fehlern berechnet werden.
  • Im gezeigten Ausführungsbeispiel der Erfindung kann der Koeffizientenberechner 541 im ersten Betriebsmodus die Koeffizienten σ1, σ2, σ3, σ4 und σ5 der ersten Fehlerpositionsgleichung berechnen, was die Korrektur von maximal 5 Fehlerbits ermöglicht. Zudem ist der Koeffizientenberechner 541 konfiguriert, um im zweiten Betriebsmodus die Koeffizienten σ1, σ2, σ3 und σ4 der zweiten Fehlerpositionsgleichung zu berechnen, was die Korrektur von maximal 4 Fehlerbits ermöglicht.
  • Der Fehlerpositionsdetektor 552 detektiert die Positionen von Fehlerbits unter Verwendung der Koeffizienten σ1, σ2, σ3 und σ4 oder der Koeffizienten σ1, σ2, σ3, σ4 und σ5, welche vom Koeffizientenberechner 541 berechnet werden. Die Positionen der Fehlerbits können identifiziert werden, wenn die Wurzel der Fehlerpositionsgleichung erhalten wird. Dazu ist eine Fehlerpositionsgleichung i-ter Ordnung entsprechend der Anzahl von Fehlerbits zu lösen, z. B. i = 1, 2, 3, 4 oder 5. Da es schwierig ist, eine allgemeine Lösung für eine vierte oder fünfte Fehlerpositionsgleichung zu erhalten, kann ein Chien-Suchalgorithmus verwendet werden, um die Wurzel des Polynoms zu bestimmen. Der Chien-Suchalgorithmus macht Gebrauch von der Tatsache, dass die Wurzeln Potenzen eines primitiven Elements α sind. Eine Testwurzel kann daher durch α–j über den Bereich von j = 0 bis j = (n – 1):α–0, α–1, α–2, α–3, ..., α-(n-1) ausgedrückt werden. Wenn α–j eine Fehlerpositionsgleichung erfüllt, wird vom j-ten Bit festgestellt, dass es einen Fehler aufweist. Dieser Vorgang kann in Bezug auf jeden Code mit der Größe von n ausgeführt werden, um zu bestimmen, ob die wiederholte n-malige Substitution von j in der Fehlerpositionsgleichung die Gleichung erfüllt, wobei j im Bereich von 0 bis n – 1 verändert wird.
  • Der Fehlerkorrektor 443 korrigiert basierend auf einem Detektionsergebnis des Fehlerpositionsdetektors 552 ein Fehlerbit. Der Fehlerkorrektor 443 kann einen Fehler basierend auf der Fehlerpositionsinformation, die vom Fehlerpositionsdetektor 552 ausgegeben wird, durch Invertieren eines logischen Wertes eines Bits mit einem Fehler in den codierten Daten oder den Informationsdaten korrigieren. Der Fehlerkorrektor 443 kann sich auch auf ein Ausgabesignal des Paritätsüberprüfers 444 und auf ein Ausgabesignal des Modussetzers 551 beziehen, um die Existenz/Nichtexistenz eines Fehlers und einer Fehlerposition genauer zu bestimmen. Fehlerkorrigierte Daten, die vom Fehlerkorrektor 443 ausgegeben werden, werden dem Host 200 über die Rostschnittstellen- und Logikeinheit 330 zur Verfügung gestellt.
  • Es kann durch Versuche festgestellt werden, dass in einer normalen Betriebsumgebung des Halbleiterspeicherbauelements 500 wenigstens 90% der Fehler 1-Bit-Fehler sind, und die verbleibenden Fehler sind 2-Bit- oder Mehrbit-Fehler. Entsprechend ist die Wahrscheinlichkeit, dass in einem normalen Zustand ein Mehrbitfehler von z. B. 6 Bits auftritt, sehr gering, und daher tritt eine Falschkorrektur durch eine 5-Bit-Fehlerkorrekturschaltung kaum auf. Aus diesem Grund kann der Host 200 im normalen Zustand das Betriebsmodussignal MODE für den Betrieb des Halbleiterspeicherbauelements 500 im ersten Betriebsmodus erzeugen. Im ersten Betriebsmodus kann das Halbleiterspeicherbauelement 500 unter Verwendung von weniger Hardware als die herkömmliche, in den 1 bis 3 dargestellte 5-Bit-EDC/4-Bit-ECC + CRC-16-Fehlerkorrekturschaltung (wobei CRC eine zyklische Redundanzprüfung bezeichnet) eine 5-Bit-Fehlerkorrektur ausführen und ist daher effizienter.
  • Wenn jedoch die Wahrscheinlichkeit, dass massive Fehler auftreten, wesentlich ansteigt, beispielsweise aufgrund einer Verschlechterung des Halbleiterspeicherbauelements 500 oder eines Energieausfalls, nimmt die Falschkorrekturwahrscheinlichkeit im Betriebsverhalten der 5-Bit-Fehlerkorrektur ebenfalls zu. In einem solchen abnormalen Zustand kann der Host 200 das Betriebsmodussignal MODE für den Betrieb des Halbleiterspeicherbauelements 500 im zweiten Betriebsmodus erzeugen. Im zweiten Betriebsmodus wird die 5-Bit-Fehlerkorrektur gesperrt und nur die 4-Bit-Fehlerkorrektur wird ausgeführt. Entsprechend führt die ECC-Schaltung (420, 430 oder 420, 530) im zweiten Betriebsmodus eine Codierung unter Verwendung eines h-Bit-ECC-Generatorpolynoms mit beispielsweise 5 Bit während der Codierung durch, und dadurch wird ein Abstand zwischen Codes, d. h. ein Hamming-Abstand, erhöht. Hierbei wird die Fehlerkorrektur durch eine Decodierung bis zu einer Bitanzahl von weniger als „h" Bit durchgeführt, beispielsweise bis zu 4 Bit, und dadurch nimmt ein Fehlerkorrekturradius ab. Daraus resultiert, dass auch die Falschkorrekturwahrscheinlichkeit abnimmt.
  • Entsprechend behält die Erfindung die Fehlerkorrekturleistungsfähigkeit und die Falschkorrekturwahrscheinlichkeit der herkömmlichen 5-Bit- EDC/4-Bit-ECC + CRC-16-Fehlerkorrekturschaltung mit weniger Hardware, wodurch die ECC effizienter ausgeführt wird. Während die herkömmliche, in den 1 bis 3 dargestellte 5-Bit-EDC/4-Bit-ECC + CRC-16-Fehlerkorrekturschaltung Redundanzdaten mit 69 Bits aufweist, d. h. CRC-Parität mit 16 Bit + ECC-Parität mit 53 Bit, weist eine erfindungsgemäße Fehlerkorrekturschaltung Redundanzdaten mit 66 Bit auf, was bei gleichen Bedingungen weniger als bei der herkömmlichen Fehlerkorrekturschaltung ist.
  • 8 veranschaulicht detaillierter das Halbleiterspeicherbauelement 300 gemäß 4 mit der ECC-Schaltung 320, die mit dem Speicherkern 310 und der Rostschnittstellen- und Logikeinheit 330 gekoppelt ist. Die ECC-Schaltung 320 umfasst den ECC-Wrapper 410, der mit dem ECC-Codierer 420 und dem ECC-Decodierer 430 gekoppelt ist. Der Speicherkern 310, die Rostschnittstellen- und Logikeinheit 330, der ECC-Wrapper 410 und der ECC-Codierer 420 entsprechen den unter Bezugnahme auf 7 beschriebenen Komponenten. Daher wird hier auf eine nochmalige detaillierte Beschreibung verzichtet.
  • Der ECC-Decodierer 430 umfasst vier Teilsyndromgeneratoren 431, 433, 435 und 437, einen Koeffizientenberechner 441, der mit den vier Teilsyndromgeneratoren 431, 433, 435 und 437 gekoppelt ist, einen Fehlerpositionsdetektor 452, der mit dem Koeffizientenberechner 441 gekoppelt ist, und einen Fehlerkorrektor 443, der mit dem Fehlerpositionsdetektor 452 gekoppelt ist. Verglichen mit dem in 7 dargestellten ECC-Decodierer 530 arbeitet der ECC-Decodierer 430 als 4-Bit-ECC-Decodierer und erfordert den fünften Teilsyndromgenerator 439 und den Modussetzer 551 nicht. Der ECC-Decodierer 430 arbeitet auf ähnliche Weise wie der ECC-Decodierer 530, wenn dieser im zweiten Betriebsmodus betrieben wird. Daher wird auf eine wiederholte detaillierte Beschreibung des Betriebs des ECC-Decodierers 430 verzichtet.
  • Bei den oben beschriebenen Ausführungsformen der Erfindung ist der Fehlerkorrektor 443 im ECC-Decodierer 430 oder 530 enthalten. Die Erfindung ist jedoch nicht darauf beschränkt. Die Hostschnittstellen- und Logikeinheit 330 kann beispielsweise basierend auf einer Fehlerpositionsinformation, die vom ECC-Decodierer 430 oder 530 zur Verfügung gestellt wird, einen Fehler durch Invertieren eines logischen Wertes eines Bits, das einen Fehler aufweist, in den codierten Daten korrigieren. Alternativ kann die Hostschnittstellen- und Logikeinheit 330 die vom ECC-Decodierer 430 oder 530 zur Verfügung gestellte Fehlerpositionsinformation zusammen mit den n-Bit codierten Daten oder nur mit den k-Bit Informationsdaten, die aus dem Speicherkern 310 gelesen werden, an den Host 200 übertragen. In anderen Worten ausgedrückt, der Host 200 kann den Fehler durch Invertieren des logischen Wertes des Bits, das einen Fehler aufweist, in den codierten Daten oder den Informationsdaten korrigieren, basierend auf den vom ECC-Decodierer 430 oder 530 zur Verfügung gestellten Fehlerpositionsinformationen.
  • Alle hier beschriebenen Funktionen können je nach Designwahl in Hardware, in Software oder in einer Kombination von Hardware und Software ausgeführt werden. Zudem können Softwarefunktionen als prozessorausführbarer Code ausgedrückt werden und der Code kann in einem prozessorlesbaren Medium, wie in einem Speicher mit direktem Zugriff (RAM), in einer Festplatte oder in einer Kompaktdisk (CD) gespeichert werden.
  • Wie oben zu einigen Ausführungsformen der Erfindung ausgeführt, kann eine Falschkorrekturwahrscheinlichkeit mit einer minimalen zusätzlichen Hardware und einer minimalen Erhöhung der Fehlerkorrekturzeit reduziert werden. Entsprechend kann die Datenzuverlässigkeit erhöht werden.

Claims (15)

  1. Speicherbauelement mit – einem ECC-Codierer (420) zur Erzeugung von Syndromdaten, die basierend auf Informationsdaten und einem Generatorpolynom eine h-Bit-Fehlerkorrektur freigeben, wobei h eine ganze Zahl größer oder gleich zwei ist, und zur Ausgabe von codierten Daten, welche die Informationsdaten und die Syndromdaten umfassen, und – einem ECC-Decodierer (430, 530) der die codierten Daten empfängt und in einem ersten Betriebsmodus in Bezug auf ein Maximum von h – j Bits in den Informationsdaten basierend auf den codierten Daten eine Fehlerposition detektiert, wobei „j" eine ganze Zahl größer oder gleich eins ist.
  2. Speicherbauelement nach Anspruch 1, wobei der ECC-Decodierer (430) umfasst: – einen Teilsyndromgenerator (431, 433, 435, 437), der unter Verwendung der codierten Daten wenigstens zwei Teilsyndrome erzeugt, – einen Koeffizientenberechner (441), der unter Verwendung der wenigstens zwei Teilsyndrome Koeffizienten einer Fehlerpositionsgleichung berechnet, und – einen Fehlerpositionsdetektor (452), der basierend auf den Koeffizienten die Fehlerposition detektiert.
  3. Speicherbauelement nach Anspruch 1 oder 2, wobei der ECC-Decodierer (530) dafür eingerichtet ist, in einem zweiten Betriebsmodus eine Fehlerposition in Bezug auf ein Maximum von h Bits in den Informationsdaten basierend auf den codierten Daten zu detektieren, wobei der ECC-Decodierer (530) in Reaktion auf ein vom Host (200) empfangenes Betriebsmodussignal im ersten Betriebsmodus oder im zweiten Betriebsmodus arbeitet.
  4. Speicherbauelement nach Anspruch 3, wobei der ECC-Decodierer (530) umfasst: – einen Modussetzer (551), der konfiguriert ist, um einen Betriebsmodus in Reaktion auf das Betriebsmodussignal zu setzen und ein Steuersignal zu erzeugen, – einen Teilsyndromgenerator (431, 433, 435, 437, 439), der konfiguriert ist, um unter Verwendung der codierten Daten wenigstens zwei Teilsyndrome zu erzeugen, – einen Koeffizientenberechner (541), der konfiguriert ist, um basierend auf dem Steuersignal unter Verwendung der wenigstens zwei Teilsyndrome Koeffizienten einer ersten Fehlerpositionsgleichung oder Koeffizienten einer zweiten Fehlerpositionsgleichung zu berechnen, und – einen Fehlerpositionsdetektor (552), der konfiguriert ist, um basierend auf den vom Koeffizientenberechner (541) ausgegebenen Koeffizienten die Fehlerposition zu detektieren.
  5. Speicherbauelement nach einem der Ansprüche 1 bis 4, wobei der ECC-Decodierer (430, 530) einen Fehlerkorrektor (443) umfasst, der konfiguriert ist, um die codierten Daten basierend auf der detektierten Fehlerposition zu korrigieren.
  6. Speicherbauelement nach einem der Ansprüche 1 bis 5, wobei – der ECC-Codierer (420) einen Syndromgenerator (421) umfasst, der konfiguriert ist, um in Bezug auf die codierten Daten ein erstes Paritätsbit zu erzeugen, – der ECC-Decodierer (430, 530) einen Paritätsprüfer (444) umfasst, der konfiguriert ist, um unter Verwendung der codierten Daten ein zweites Paritätsbit zu erzeugen und das zweite Paritätsbit mit dem ersten Paritätsbit zu vergleichen, und – das erste und/oder zweite Paritätsbit als gerades Paritätsbit oder als ungerades Paritätsbit ausgeführt ist.
  7. Speicherbauelement nach einem der Ansprüche 1 bis 6, weiter einen Speicherkern (310) umfassend, der mit dem ECC-Codierer (420) und dem ECC-Decodierer (430, 530) gekoppelt ist, wobei der Speicherkern (310) konfiguriert ist, um die codierten Daten zu speichern.
  8. Speicherbauelement nach Anspruch 7, wobei der Speicherkern (310) EEPROM-Zellen umfasst.
  9. Speicherbauelement nach Anspruch 7 oder 8, weiter eine Rostschnittstellen- und Logikeinheit (330) umfassend, die mit dem ECC-Decodierer (430, 530) gekoppelt ist und konfiguriert ist, um die aus dem Speicherkern (310) gelesenen codierten Daten und die Fehlerpositionsdaten an einen Host (200) zu übertragen, wobei der Rost (200) konfiguriert ist, die codierten Daten basierend auf den Fehlerpositionsdaten zu korrigieren.
  10. Fehlerkorrekturverfahren vom ECC-Typ, mit folgenden Schritten: – Erzeugen von Syndromdaten, die basierend auf Informationsdaten und einem Generatorpolynom eine h-Bit-Fehlerkorrektur freigeben, wobei „h" eine Zahl größer oder gleich zwei ist, – Speichern der codierten Daten in einem Speicher, wobei die codierten Daten die Informationsdaten und die Syndromdaten umfassen, – Lesen der codierten Daten aus dem Speicher, – Detektieren einer Fehlerposition wenigstens in einem ersten Betriebsmodus in Bezug auf ein Maximum von h – j Bits in den Informationsdaten basierend auf den codierten Daten, wobei „j" eine ganze Zahl größer oder gleich 1 ist, und – Korrigieren der codierten Daten basierend auf der detektierten Fehlerposition.
  11. Fehlerkorrekturverfahren nach Anspruch 10, wobei das Detektieren der Fehlerposition umfasst: – Erzeugen von wenigstens zwei Teilsyndromen unter Verwendung der codierten Daten, – Berechnen von Koeffizienten einer Fehlerpositionsgleichung unter Verwendung der wenigstens zwei Teilsyndrome und – Detektieren der Fehlerposition basierend auf den Koeffizienten.
  12. Fehlerkorrekturverfahren nach Anspruch 10 oder 11, weiter umfassend: – Erzeugen eines ersten Paritätsbits basierend auf den Informationsdaten und/oder den codierten Daten vor dem Speichern der codierten Daten und – Erzeugen eines zweiten Paritätsbits basierend auf den Informationsdaten und/oder den codierten Daten nach dem Lesen der codierten Daten, – wobei das Detektieren der Fehlerposition einen Vergleich des ersten Paritätsbits mit dem zweiten Paritätsbit umfasst.
  13. Fehlerkorrekturverfahren nach einem der Ansprüche 10 bis 12, wobei zusätzlich ein zweiter Betriebsmodus vorgesehen ist, in welchem die Fehlerposition in Bezug auf ein Maximum von h Bits in den Informationsdaten unter Verwendung der codierten Daten detektiert wird, wobei festgelegt wird, ob das Detektieren mit dem ersten Betriebsmodus oder dem zweiten Betriebsmodus erfolgt.
  14. Fehlerkorrekturverfahren nach Anspruch 13, wobei die Festlegung, ob das Detektieren mit dem ersten Betriebsmodus oder mit dem zweiten Betriebsmodus erfolgt, basierend auf einem Betriebsmodussignal erfolgt, das von einem Host (200) ausgegeben wird.
  15. Fehlerkorrekturverfahren nach einem der Ansprüche 10 bis 12, wobei der zweite Betriebsmodus im Vergleich zum ersten Betriebsmodus für Betriebszustände mit einer erhöhten Anzahl von zu erwartenden Mehrbitfehlern in den Informationsdaten gewählt wird.
DE102007058828A 2006-12-29 2007-11-28 Speicherbauelement und Fehlerkorrekturverfahren Withdrawn DE102007058828A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2006-0137919 2006-12-29
KR1020060137919A KR100856129B1 (ko) 2006-12-29 2006-12-29 오정정 확률을 줄이는 에러 정정 회로, 그 방법 및 상기회로를 구비하는 반도체 메모리 장치

Publications (1)

Publication Number Publication Date
DE102007058828A1 true DE102007058828A1 (de) 2008-07-03

Family

ID=39465957

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102007058828A Withdrawn DE102007058828A1 (de) 2006-12-29 2007-11-28 Speicherbauelement und Fehlerkorrekturverfahren

Country Status (5)

Country Link
US (1) US8091010B2 (de)
JP (1) JP2008165808A (de)
KR (1) KR100856129B1 (de)
CN (1) CN101211667A (de)
DE (1) DE102007058828A1 (de)

Families Citing this family (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005012069A1 (de) * 2005-03-16 2006-09-21 Robert Bosch Gmbh Verfahren zur Fehlerbehandlung
KR101437396B1 (ko) * 2008-02-27 2014-09-05 삼성전자주식회사 레이턴시를 줄일 수 있는 에러 정정 블록을 포함하는메모리 시스템 및 그것의 에러 정정 방법
JP4672743B2 (ja) * 2008-03-01 2011-04-20 株式会社東芝 誤り訂正装置および誤り訂正方法
US8458536B2 (en) * 2008-07-17 2013-06-04 Marvell World Trade Ltd. Data recovery in solid state memory devices
TWI396202B (zh) * 2008-11-14 2013-05-11 Phison Electronics Corp 錯誤校正控制器及其快閃記憶體晶片系統與錯誤校正方法
US8468417B2 (en) * 2009-02-18 2013-06-18 Micron Technology, Inc. Data integrity in memory controllers and methods
JP5303325B2 (ja) * 2009-03-18 2013-10-02 ルネサスエレクトロニクス株式会社 データ処理装置
KR20100104623A (ko) * 2009-03-18 2010-09-29 삼성전자주식회사 데이터 처리 시스템 및 그것의 부호율 제어 스킴
CN101794623B (zh) * 2009-06-01 2013-11-06 深圳市朗科科技股份有限公司 存储设备的纠错装置及方法
KR101062755B1 (ko) * 2009-07-29 2011-09-06 주식회사 하이닉스반도체 Ecc 회로를 포함하는 반도체 메모리 시스템 및 그 제어 방법
US8413015B2 (en) * 2009-09-21 2013-04-02 Sandisk Technologies Inc. Nonvolatile memory controller with scalable pipelined error correction
KR101678404B1 (ko) * 2010-02-25 2016-11-23 삼성전자주식회사 사전 확률 정보를 사용하는 메모리 시스템 및 그것의 데이터 처리 방법
CN102682826A (zh) * 2011-03-10 2012-09-19 中国科学院微电子研究所 复用编码器的编译码存储装置及方法
JP2013029882A (ja) * 2011-07-26 2013-02-07 Toshiba Corp メモリコントローラ、半導体記憶装置および復号方法
WO2013027483A1 (ja) * 2011-08-24 2013-02-28 三菱電機株式会社 誤り訂正復号装置
US8924815B2 (en) * 2011-11-18 2014-12-30 Sandisk Enterprise Ip Llc Systems, methods and devices for decoding codewords having multiple parity segments
KR101307792B1 (ko) * 2011-12-27 2013-09-12 한국과학기술원 다중-쓰레드 비씨에이치 인코더, 비씨에이치 디코더, 이를 포함하는 스토리지 디바이스 및 스토리지 시스템
US8996960B1 (en) * 2012-06-26 2015-03-31 Inphi Corporation Vertical error correction code for DRAM memory
JP2014082574A (ja) * 2012-10-15 2014-05-08 Samsung Electronics Co Ltd 誤り検出訂正回路、及びメモリ装置
US9300329B2 (en) 2012-11-08 2016-03-29 Sk Hynix Memory Solutions Inc. Turbo-product codes (TPC) with interleaving
US8996966B2 (en) 2013-02-27 2015-03-31 Kabushiki Kaisha Toshiba Error correction device and error correction method
CN105190766A (zh) 2013-03-25 2015-12-23 惠普发展公司,有限责任合伙企业 具有错误纠正逻辑的存储器设备
US9559727B1 (en) 2014-07-17 2017-01-31 Sk Hynix Memory Solutions Inc. Stopping rules for turbo product codes
CN104616698A (zh) * 2015-01-28 2015-05-13 山东华翼微电子技术股份有限公司 一种充分利用存储器冗余单元的方法
US9690517B2 (en) 2015-05-22 2017-06-27 Texas Instruments Incorporated Dual-mode error-correction code/write-once memory codec
KR102296738B1 (ko) * 2015-06-01 2021-09-01 삼성전자 주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 에러 정정 방법
US10522237B2 (en) 2015-08-07 2019-12-31 Mentor Graphics Corporation Low power VLSI designs using circuit failure in sequential cells as low voltage check for limit of operation
CN105161137B (zh) * 2015-08-27 2019-04-19 大唐微电子技术有限公司 一种MLC架构中Nand Flash控制器电路实现装置
KR102281751B1 (ko) * 2015-10-01 2021-07-27 에스케이하이닉스 주식회사 플래시 메모리 시스템 동작 방법
DE112017003859T5 (de) * 2016-08-01 2019-04-25 Sony Semiconductor Solutions Corporation Kommunikationseinheit und Kommunikationssystem
US9966125B2 (en) 2016-09-15 2018-05-08 Toshiba Memory Corporation Memory device
US10169126B2 (en) * 2016-10-12 2019-01-01 Samsung Electronics Co., Ltd. Memory module, memory controller and systems responsive to memory chip read fail information and related methods of operation
US10372531B2 (en) * 2017-01-05 2019-08-06 Texas Instruments Incorporated Error-correcting code memory
US10312944B2 (en) * 2017-03-17 2019-06-04 Micron Technology, Inc. Error correction code (ECC) operations in memory for providing redundant error correction
US10236913B2 (en) * 2017-05-11 2019-03-19 Winbond Electronics Corp. Error checking and correcting decoder
TWI625620B (zh) * 2017-05-12 2018-06-01 威盛電子股份有限公司 非揮發性記憶體裝置及其讀取方法
KR102258140B1 (ko) 2017-07-06 2021-05-28 삼성전자주식회사 반도체 메모리 장치의 에러 정정 회로, 반도체 메모리 장치 및 메모리 시스템
US10417086B2 (en) * 2017-08-11 2019-09-17 Winbond Electronics Corp. Data write method and memory storage device using the same
DE102018122826A1 (de) * 2017-09-21 2019-03-21 Samsung Electronics Co., Ltd. Vorrichtung zum Unterstützen eines Fehlerkorrekturcodes und Testverfahren dafür
US10908995B2 (en) 2017-09-29 2021-02-02 Nvidia Corporation Securing against errors in an error correcting code (ECC) implemented in an automotive system
DE102018123761A1 (de) * 2017-09-29 2019-04-04 Nvidia Corporation Sicherung gegen fehler in einem fehlerkorrekturcode (ecc), der in einem kraftfahrzeugsystem implementiert ist
JP6861611B2 (ja) * 2017-11-07 2021-04-21 ルネサスエレクトロニクス株式会社 半導体装置及びそれを備えた半導体システム
WO2019222958A1 (en) 2018-05-24 2019-11-28 Alibaba Group Holding Limited System and method for flash storage management using multiple open page stripes
US11816043B2 (en) 2018-06-25 2023-11-14 Alibaba Group Holding Limited System and method for managing resources of a storage device and quantifying the cost of I/O requests
US11327929B2 (en) 2018-09-17 2022-05-10 Alibaba Group Holding Limited Method and system for reduced data movement compression using in-storage computing and a customized file system
US11315654B2 (en) * 2018-10-03 2022-04-26 Arm Limited Memory testing techniques
US10942809B2 (en) * 2018-12-20 2021-03-09 Micron Technology, Inc. Changing of error correction codes based on the wear of a memory sub-system
US11061735B2 (en) 2019-01-02 2021-07-13 Alibaba Group Holding Limited System and method for offloading computation to storage nodes in distributed system
US10839935B2 (en) 2019-02-05 2020-11-17 International Business Machines Corporation Dynamic redundancy for memory
JP2020150515A (ja) 2019-03-15 2020-09-17 キオクシア株式会社 誤り訂正回路及びメモリシステム
US10860223B1 (en) 2019-07-18 2020-12-08 Alibaba Group Holding Limited Method and system for enhancing a distributed storage system by decoupling computation and network tasks
US11200106B2 (en) * 2019-08-12 2021-12-14 Advanced Micro Devices, Inc. Data integrity for persistent memory systems and the like
US11617282B2 (en) 2019-10-01 2023-03-28 Alibaba Group Holding Limited System and method for reshaping power budget of cabinet to facilitate improved deployment density of servers
EP3835960A3 (de) * 2019-12-11 2021-09-01 Samsung Electronics Co., Ltd. Speichersteuerung zur fehlerkorrektur, speichervorrichtung damit und betriebsverfahren dafür
US11449455B2 (en) 2020-01-15 2022-09-20 Alibaba Group Holding Limited Method and system for facilitating a high-capacity object storage system with configuration agility and mixed deployment flexibility
US11379447B2 (en) 2020-02-06 2022-07-05 Alibaba Group Holding Limited Method and system for enhancing IOPS of a hard disk drive system based on storing metadata in host volatile memory and data in non-volatile memory using a shared controller
US11200114B2 (en) * 2020-03-17 2021-12-14 Alibaba Group Holding Limited System and method for facilitating elastic error correction code in memory
US11449386B2 (en) 2020-03-20 2022-09-20 Alibaba Group Holding Limited Method and system for optimizing persistent memory on data retention, endurance, and performance for host memory
CN111510158B (zh) * 2020-04-15 2021-10-15 腾讯科技(深圳)有限公司 量子电路的容错纠错解码方法、装置及芯片
US11301173B2 (en) 2020-04-20 2022-04-12 Alibaba Group Holding Limited Method and system for facilitating evaluation of data access frequency and allocation of storage device resources
US11385833B2 (en) 2020-04-20 2022-07-12 Alibaba Group Holding Limited Method and system for facilitating a light-weight garbage collection with a reduced utilization of resources
US11281575B2 (en) 2020-05-11 2022-03-22 Alibaba Group Holding Limited Method and system for facilitating data placement and control of physical addresses with multi-queue I/O blocks
US11494115B2 (en) 2020-05-13 2022-11-08 Alibaba Group Holding Limited System method for facilitating memory media as file storage device based on real-time hashing by performing integrity check with a cyclical redundancy check (CRC)
US11461262B2 (en) 2020-05-13 2022-10-04 Alibaba Group Holding Limited Method and system for facilitating a converged computation and storage node in a distributed storage system
US11507499B2 (en) 2020-05-19 2022-11-22 Alibaba Group Holding Limited System and method for facilitating mitigation of read/write amplification in data compression
US11556277B2 (en) 2020-05-19 2023-01-17 Alibaba Group Holding Limited System and method for facilitating improved performance in ordering key-value storage with input/output stack simplification
US11263132B2 (en) 2020-06-11 2022-03-01 Alibaba Group Holding Limited Method and system for facilitating log-structure data organization
US11422931B2 (en) 2020-06-17 2022-08-23 Alibaba Group Holding Limited Method and system for facilitating a physically isolated storage unit for multi-tenancy virtualization
US11354200B2 (en) 2020-06-17 2022-06-07 Alibaba Group Holding Limited Method and system for facilitating data recovery and version rollback in a storage device
US11354233B2 (en) 2020-07-27 2022-06-07 Alibaba Group Holding Limited Method and system for facilitating fast crash recovery in a storage device
US11372774B2 (en) 2020-08-24 2022-06-28 Alibaba Group Holding Limited Method and system for a solid state drive with on-chip memory integration
CN117079686A (zh) * 2020-09-18 2023-11-17 长鑫存储技术有限公司 存储器
US11327836B1 (en) 2020-09-29 2022-05-10 Xilinx, Inc. Protection of data on a data path in a memory system
CN112564858B (zh) * 2020-11-05 2022-08-09 山东中科泰岳电子科技有限公司 卫星导航用crc纠错方法及系统
US11487465B2 (en) 2020-12-11 2022-11-01 Alibaba Group Holding Limited Method and system for a local storage engine collaborating with a solid state drive controller
US11734115B2 (en) 2020-12-28 2023-08-22 Alibaba Group Holding Limited Method and system for facilitating write latency reduction in a queue depth of one scenario
US11416365B2 (en) 2020-12-30 2022-08-16 Alibaba Group Holding Limited Method and system for open NAND block detection and correction in an open-channel SSD
US11726699B2 (en) 2021-03-30 2023-08-15 Alibaba Singapore Holding Private Limited Method and system for facilitating multi-stream sequential read performance improvement with reduced read amplification
US11461173B1 (en) 2021-04-21 2022-10-04 Alibaba Singapore Holding Private Limited Method and system for facilitating efficient data compression based on error correction code and reorganization of data placement
US11476874B1 (en) 2021-05-14 2022-10-18 Alibaba Singapore Holding Private Limited Method and system for facilitating a storage server with hybrid memory for journaling and data storage

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62194745A (ja) * 1986-02-20 1987-08-27 Nec Corp 誤り訂正回路
JPH02112032A (ja) * 1988-10-21 1990-04-24 Alpine Electron Inc Cd−romのエラー訂正方法
JP2721099B2 (ja) 1991-12-18 1998-03-04 インターナショナル・ビジネス・マシーンズ・コーポレイション エラーバースト修正のための試行錯誤方法及びマルチバイトエラーの修正方法
JP3999822B2 (ja) * 1993-12-28 2007-10-31 株式会社東芝 記憶システム
KR100202654B1 (ko) 1996-03-29 1999-06-15 구본준 플레쉬 셀 메모리 디바이스 장치
FR2751810B1 (fr) * 1996-07-23 1998-10-23 Sgs Thomson Microelectronics Systeme de correction d'erreurs dans des trames de donnees ayant des codes de parite horizontaux et verticaux
JP3199021B2 (ja) * 1998-03-19 2001-08-13 日本電気株式会社 半導体メモリ装置、該半導体メモリ装置の検査方法及び使用方法
US6216247B1 (en) * 1998-05-29 2001-04-10 Intel Corporation 32-bit mode for a 64-bit ECC capable memory subsystem
JP2000261326A (ja) 1999-03-11 2000-09-22 Mitsubishi Electric Corp 符号誤り訂正方法
JP3975245B2 (ja) * 1999-12-16 2007-09-12 株式会社ルネサステクノロジ 記録再生装置および半導体メモリ
WO2002093754A1 (en) * 2001-05-16 2002-11-21 Koninklijke Philips Electronics N.V. Coding and decoding of partially a priori known information
JP2005242797A (ja) * 2004-02-27 2005-09-08 Oki Electric Ind Co Ltd エラー訂正回路
KR100842680B1 (ko) * 2007-01-08 2008-07-01 삼성전자주식회사 플래시 메모리 장치의 오류 정정 컨트롤러 및 그것을포함하는 메모리 시스템

Also Published As

Publication number Publication date
US8091010B2 (en) 2012-01-03
CN101211667A (zh) 2008-07-02
US20080163033A1 (en) 2008-07-03
KR100856129B1 (ko) 2008-09-03
KR20080062306A (ko) 2008-07-03
JP2008165808A (ja) 2008-07-17

Similar Documents

Publication Publication Date Title
DE102007058828A1 (de) Speicherbauelement und Fehlerkorrekturverfahren
DE60015753T2 (de) System und verfahren zum schutz von daten und zur korrektur von bitfehlern folgend aus komponentenfehlern
DE102015201384B4 (de) Vorrichtung und Verfahren zum Verbessern der Datenspeicherung durch Dateninvertierung
DE102007038114A1 (de) Fehlerkorrekturschaltung, Halbleiterspeicherelement und Fehlerkorrekturverfahren
DE112011100579B4 (de) Verfahren und vorrichtung zum verwenden von cachespeicher in einem system, welches einen niedrigleistungszustand unterstützt
DE69112624T2 (de) Mehrfehlerkorrektur eines rechnerspeichers.
DE60117066T2 (de) Verfahren und Vorrichtung zum Überprüfen von fehlerkorrigierenden Codes
DE3882223T2 (de) Ausgebreitete Fehlerkorrekturvorrichtung mit Einzel-Paket-Fehlerkorrektur und Doppel-Paket-Fehlerdetektionscoden.
DE112011101116B4 (de) Two-Level BCH-Codes für Solid-State-Speichereinheiten
DE102010051813B4 (de) Fehlerkorrekturmechanismen für 8-Bit Speichergeräte
DE102019123642A1 (de) Speicherfehlererkennung und korrektur
DE102013215055A1 (de) Schaltungsanordnung und Verfahren mit modifiziertem Fehlersyndrom zur Fehlererkennung von permanenten Fehlern in Speichern
DE102011085602B4 (de) Vorrichtung und Verfahren zum Korrigieren zumindest eines Bitfehlers in einer codierten Bitsequenz
DE102017103347B4 (de) Verarbeitung von daten in speicherzellen eines speichers
DE102005052698A1 (de) Verfahren zur Verarbeitung von nichtflüchtig gespeicherten Daten
DE102018122826A1 (de) Vorrichtung zum Unterstützen eines Fehlerkorrekturcodes und Testverfahren dafür
WO1998009219A1 (de) Fehlererkennung in einem speichersystem
DE102005016050A1 (de) Speicherfehlererkennungsvorrichtung und Verfahren zum Erkennen eines Speicherfehlers
DE102020106203A1 (de) Vorrichtung für integrierte Speicher-Selbsttests mit Fehlererkennungs- und -Korrekturcodebekanntheit
DE112016003638T5 (de) Auf eine Decodierung folgende Fehlerprüfung mit Diagnose für Produktcodes
DE112020003489T5 (de) Speichersteuerung und verfahren zum decodieren von speichervorrichtungen mit vorzeitigem hartdecodierabbruch
DE4105860C2 (de) Schaltungsanordnung zum Erkennen und Korrigieren von Fehlern in Datenworten
DE102005022107B9 (de) Vorrichtung und Verfahren zum Bestimmen einer Position eines Bitfehlers in einer Bitfolge
DE60215687T2 (de) Fehlerkorrektion von multibit-baueinheiten mit unbeschränkter erkennung von doppelfehlern
DE2320354C2 (de) Schaltungsanordnung zur Erkennung und Korrektur von Fehlern in Bitgruppen

Legal Events

Date Code Title Description
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20140603