DE3887200T2 - Verfahren zur Erfassung von Kodefehlern. - Google Patents

Verfahren zur Erfassung von Kodefehlern.

Info

Publication number
DE3887200T2
DE3887200T2 DE88303249T DE3887200T DE3887200T2 DE 3887200 T2 DE3887200 T2 DE 3887200T2 DE 88303249 T DE88303249 T DE 88303249T DE 3887200 T DE3887200 T DE 3887200T DE 3887200 T2 DE3887200 T2 DE 3887200T2
Authority
DE
Germany
Prior art keywords
polynomial
error
data
symbols
exclusive
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE88303249T
Other languages
English (en)
Other versions
DE3887200D1 (de
Inventor
Katsuhiro Kurosawa
Masatoshi Shinbo
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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
Priority claimed from JP9134187A external-priority patent/JPS63255876A/ja
Priority claimed from JP9252687A external-priority patent/JPS63257966A/ja
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Application granted granted Critical
Publication of DE3887200D1 publication Critical patent/DE3887200D1/de
Publication of DE3887200T2 publication Critical patent/DE3887200T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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/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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

    HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung betrifft ein Verfahren zur Erfassung von Codefehlern, das verwendet werden kann, um Daten in einer Datenspeicherungsvorrichtung zu korrigieren, die eine optische Platte, die entweder einmal beschreibbar oder löschbar ist, verwendet.
  • BESCHREIBUNG DES BEKANNTEN STANDS DER TECHNIK
  • Kürzlich hat eine optische Platte mit dem Kennzeichen, daß sie zur Aufnahme einer großen Datenmenge mit hoher Aufnahmedichte in einer Weise, bei der die Platte nicht berührt wird, geeignet ist, die Aufmerksamkeit auf dem Gebiet der Speicher, einschließlich der Hilfsspeicher für Computer, erregt. Als eine Anwendungsmöglichkeit der optischen Platte fanden sich Datenspeicher der einmal beschreibbaren Art, bei denen die Daten nur einmal zusätzlich geschrieben werden können, und der löschbaren Art, bei denen die Daten so viele Male wie nötig beschrieben werden können. Anstrengungen zur Entwicklung sowohl von Aufnahmeverfahren als auch von Servoverfahren sind bei verschiedenen Herstellern und Instituten unternommen worden.
  • Bei einem Datenspeicher, der eine optische Platte verwendet, hat die optische Platte einen Durchmesser von 5 1/4 (5,25) oder 3,5 Zoll (13,3 oder 8,9 cm) und Spuren in konzentrischer oder spiralenförmiger Anordnung mit einem Spurabstand von ungefähr 1,6 Mikrometer (um). Eine Spur ist in eine Anzahl von einen Umfang davon bildenden Sektoren unterteilt, so daß eine Anzahl von Datenelementen, einschließlich Symbolen, von denen jedes 8 Bits umfaßt, auf den Sektor geschrieben wird. Zum Beispiel sind im Falle einer optischen Platte mit 5,25 Zoll 18.750 Spuren eingerichtet, eine Spur umfaßt 17 Sektoren, und die für den Benutzer verfügbare Datenkapazität jedes Sektors ist 1024 Bytes. In einem Datenspeicher, der eine solche optische Platte hat, ist die Umdrehungsgeschwindigkeit der Platte eine konstante Winkelgeschwindigkeit von ungefähr 1800 Umdrehungen pro Minute bis zu ungefähr 3600 Umdrehungen pro Minute, und ein Halbleiterlaser mit einer Wellenlänge von ungefähr 830 Nanometern (nm) wird als Lichtquelle gewählt. Daten werden mit einem Lichtstrahl, von dem ein Lichtpunkt auf höchstens etwa 1 um gebündelt wird, auf den Spuren in Form von hervorstehenden oder eingesenkten Teilen (bei der einmal beschreibbaren Art) oder (bei der löschbaren Art) entsprechend der Magnetisierungsrichtung senkrecht zur Plattenoberfläche der optischen Platte aufgenommen. Bei dem Vorgang, Daten auf optische Platten aufzunehmen oder Daten davon wiederzugeben, wie oben beschrieben, können die Daten, wenn irgendwelcher Staub, Fingerabdrücke oder Beschädigungen auf der Plattenoberfläche bestehen, nicht korrekt darauf geschrieben werden, oder vorher korrekt darauf geschriebene Daten können in manchen Fällen nicht angemessen ausgelesen werden, was allgemein als Codefehler bezeichnet wird. Um solchen Codefehlern beizukommen, werden außer den vom Benutzer verwendeten Daten redundante Daten, insbesondere Paritätsdaten, hinzugefügt, um Codefehler zur Fehlerkorrektur zu erfassen, so daß die korrekten Daten gelesen werden können, auch wenn ein solcher Codefehler auftritt. Bei der Datenwiedergabe kann mit einer Fehlerkorrektur-Verarbeitung, die den obigen Fehlerkorrekturcode verwendet, die von Natur aus anhaf tende Codefehlerrate von 10&supmin;&sup4; bis 10&supmin;&sup5; bei wiedergegebenen Daten auf einer optischen Platte bis auf höchstens 10&supmin;¹² verringert werden, nachdem die Fehlerkorrektur-Verarbeitung ausgeführt ist. Nach diesem Verfahren ergibt sich die gleiche Leistungsfähigkeit wie die einer normalerweise verwendeten Festplatte. Beim Datenspeicher, der eine optische Platte dieser Art verwendet, wird, weil die kleinste vom Benutzer behandelte Dateneinheit ein Byte ist, in vielen Fällen der Reed-Solomon-Code verwendet, bei dem die Fehlerkorrektur für die Byte-Einheit erzielt werden kann und viele Daten mit verringerter Redundanz korrigiert werden können. Obwohl der Reed-Solomon-Code es ermöglicht, Fehlererfassung und -korrektur effizient durchzuführen, ist es bekannt, daß eine fehlerhafte Erfassung und fehlerhafte Korrektur eines Fehlers mit gewisser Wahrscheinlichkeit auftritt. Folglich werden, um die Zuverlässigkeit der wiedergegebenen Daten in Bezug auf Fehler zu erhöhen, zusätzlich zu den oben beschriebenen Fehlerkorrekturcodes einige Bytes eines Fehlererfassungscodes nur für alle Daten in einem Sektor, die vom Benutzer verwendet werden können, zum Beispiel 1024 Bytes, hinzugefügt. Diese einige Bytes sind in Bezug auf das Redundanzmaß beinahe vernachlässigbar. Durch die verdoppelten Gegenmaßnahmen zur Fehlerkorrektur kann zum Beispiel, sogar wenn eine fälschliche Erfassung und fälschliche Korrektur eines Fehlers bei der Fehlerkorrektur-Verarbeitung in der ersten Stufe auftritt, der Codefehler durch eine Fehlererfassungs-Verarbeitung in der zweiten Stufe geeignet erkannt werden, wodurch man die hohe Zuverlässigkeit erhält.
  • Als Beispiel des Verfahrens zur Datenfehlerkorrektur und -erfassung für einen Datenspeicher, der eine optische Platte verwendet, wurde der Vorschlag mit dem Titel "ENCODING SPECIFICATION FOR THE X3B11-APPROVED EDAC CODE FOR 5 1/4 INCH OPTICAL STORAGE DEVICES", 4. November 1986, dem Standardisierungskomitee für optische Plattengeräte, ANSI X3B11, eingereicht.
  • Nach diesem Verfahren werden bei einem Aufnahmevorgang ein Sektor von Benutzerdaten, der 1024 Symbole umfaßt, und Steuerdatensymbole in einem Feld im Speicher dergestalt angeordnet, daß sie ein Rechteck mit 10 vertikalen Symbolen x 104 horizontalen Symbolen bilden, von denen 4 Symbole einschließlich des letzten Datensymbols in der 104-ten Reihe als Paritätsdaten für die Fehlerüberprüfung der Benutzerdaten bestimmt sind. Die Paritätsdaten für die Fehlerüberprüfung werden in diesem Beispiel wie folgt erzeugt. Zuerst werden zehn Datensymbole in jeder Spalte von den in Byte-Einheiten in der ersten Spalte bis zur 103-ten Spalte angeordneten Datensymbolen einer Exklusiv- Oder-Summierung unterzogen. Weiterhin wird in der 104-ten Spalte eine Exklusiv-Oder-Summierung der Daten von sechs Symbolen, ausgenommen die Paritätssymbole zur Fehlerüberprüfung, ausgeführt, wodurch insgesamt 104 Fehlerprüfdaten in Byte-Einheiten erzeugt werden. Ein Informationspolynom zur Fehlerüberprüfung wird aus den 104 Datensymbolen in Byte-Einheiten gebildet. Das Informationspolynom zur Fehlerüberprüfung wird durch ein Generatorpolynom geteilt, das vier im voraus festgelegte Symbole des Reed-Solomon-Codes umfaßt, um dann das Residuum oder den Rest, der sich aus der Division ergibt, als Fehlerprüfparität zu verwenden und die Fehlerprüfparität den letzten vier Symbolen in der 104-ten Spalte zuzuweisen. Diese Art eines Verfahrens zur Fehlererfassung ist als zyklischer Redundanzprüfcode (cyclic redundancy check code -- CRC) bekannt und wird ausführlich zum Beispiel beschrieben in: Elwyn R. Berlekamp: "ALGEBRAIC CODING THEORY", Kapitel 5, Seiten 119-145, McGraw-Hill Book Company, und in W. Wesley Peterson und E. J. Weldon, Jr.: "ERROR- CORRECTING CODES", Zweite Auflage, Kapitel 8, Seiten 206-268.
  • Im Beispiel des bekannten Stands der Technik werden bei einem Wiedergabevorgang die Daten wie im Falle des Aufnahmevorgangs in einer Form angeordnet, die 10 vertikale Symbole x 104 horizontale Symbole hat. Für die jeweiligen Datensymbole in Byte- Einheiten, die in der ersten Spalte bis zur 103-ten Spalte angeordnet sind, wird für jede Spalte eine Exklusiv-Oder- Summierung der Daten von zehn Symbolen ausgeführt. In der 104- ten Spalte wird eine Exklusiv-Oder-Summierung der Daten von sechs Symbolen mit Ausnahme der Symbole für die Fehlerprüfparität ausgeführt. Somit erhält man ein Informationspolynom zur Fehlerüberprüfung für die insgesamt 104 Datensymbole in Byte- Einheiten. Das Informationspolynom wird durch das beim Aufnahmevorgang verwendete Generatorpolynom geteilt, um ein Residuum oder einen Rest zu erhalten. Der Rest wird dann mit der Fehlererfassungsparität der 104-ten Spalte, die beim Aufnahmevorgang hinzugefügt und beim Wiedergabevorgang korrigiert wurde, verglichen, wodurch das Auftreten oder die Abwesenheit des Fehlers erkannt wird. In diesem Verfahren wird zur Erzeugung des Informationspolynoms eine Exklusiv-Oder-Summierung der Daten von zehn oder sechs Symbolen in jeder Spalte ausgeführt. Dementsprechend entsteht der Nachteil, daß, sogar wenn mehrere Fehler in den jeweiligen Spalten auftreten, man möglicherweise ein Ergebnis erhalten kann, das dem berechneten Ergebnis gleich ist, wenn dort kein Fehler besteht. Wenn zum Beispiel sogar zwei Datenelemente, die die gleiche bitweise Beschaffenheit haben, in einer Spalte enthalten sind und der gleiche Fehler bei an denselben Stellen angeordneten Bits der jeweiligen Datenelemente auftritt, ist es klar, daß man in diesem Fall und in einem Fall, wo kein Fehler in den Datenelementen besteht, für diese Spalte das gleiche Ergebnis der Exklusiv-Oder-Summierung der zehn Symbole erhält. Jedoch werden beim Fehlerkorrekturverfahren des Datenspeichers, der die optische Platte dieser Art benutzt, andere Fehlerkorrekturcodes zur Verfügung gestellt, als diese, die im oben beschriebenen Fehlererfassungsverfahren gewählt wurden, um einen Fehler jedes Datenelements im voraus zu korrigieren und somit das Risiko eines Verarbeitungsschritts, bei dem der obige Fehler nicht geeignet erfaßt wird, sehr stark zu verringern. In dem Verfahren nach dem Beispiel des bekannten Stands der Technik unterscheidet sich in Beziehung auf die Fehlerkorrektur und den CRC-Fehlererfassungscode das Generatorpolynom, jedoch wird der Reed-Solomon-Code in Byte-Einheit des gleichen primitiven Polynoms benutzt, und daher kann man verschiedene Fehlererfassungsverfahren betrachten, indem man den Fehlerkorrekturcode mit dem CRC-Fehlererfassungscode kombiniert. In dem schon beschriebenen Vorschlag ANSI X3B11 ist jedoch das Fehlererfassungsverfahren nicht vorgestellt worden. Allgemein führt man die Fehlererfassung im Beispiel nach dem bekannten Stand der Technik wie folgt aus. Es werden nämlich, wie oben beschrieben, beim Wiedergabevorgang zunächst die wiedergegebenen Daten und die Fehlerkorrekturparität in einer Form angeordnet, die, wie beim Aufnahmevorgang, 10 vertikale Symbole x 120 horizontale Symbole hat, und höchstens 8 Fehler werden für jede Reihe korrigiert, indem man 16 Paritätsdatenelemente verwendet, die im voraus zur Fehlerkorrektur der mit den 104 Benutzerdatensymbolen in einer horizontalen Reihe in Beziehung stehenden Daten zusätzlich eingerichtet sind, und für jedes Datenelement in Byte-Einheit im Bereich von der ersten Spalte bis zur 103-ten Spalte wird eine Exklusiv-Oder-Summierung von zehn Symbolen in jeder Spalte ausgeführt, und eine Exklusiv-Oder-Summierung für sechs Datensymbole mit Ausnahme der Fehlerprüfparität wird in der 104-ten Spalte ausgeführt, um ein Informationspolynom zur Fehlerprüfung für die insgesamt 104 Datensymbole in Byte Einheiten zu erhalten. Das Informationspolynom wird durch das gleiche beim Aufnahmevorgang verwendete Generatorpolynom geteilt, um den Rest mit der Fehlerkorrekturparität in der 104- ten Spalte zu vergleichen. Wenn der Rest gleich der Parität ist, wird entschieden, daß kein Fehler besteht. Sonst wird entschieden, daß ein Fehler besteht. Als Verfahren zum Erfassen von Fehlern hat man ein Verfahren gewählt, bei dem alle Datenelemente während des Wiedergabevorgangs, wie in Fig. 1 gezeigt, in den Speicher geschrieben werden und danach eine Verarbeitung zur Fehlerkorrektur auf den Daten ausgeführt wird, so daß die gleiche Verarbeitung zur Fehlerkorrektur bewirkt wird, wenn die so korrigierten Daten auf die Benutzerseite, zum Beispiel einen Verarbeitungsrechner, übertragen werden.
  • Bei diesem Verfahren erhält man jedoch das Ergebnis der Fehlererfassung, nachdem alle korrigierten Datenelemente vollständig zum Verarbeitungsrechner übertragen worden sind, was in manchen Fällen nachteilig ist.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Daher ist es ein Ziel der vorliegenden Erfindung, ein Fehlererfassungsverfahren zum Erfassen von Codefehlern zu liefern, daß für einen Datenspeicher verwendet werden kann, welcher eine optische Platte benutzt, ein Verfahren, bei dem während eines Wiedergabevorgangs eine Fehlerstelle und ein Fehlermuster, die man bei der Fehlerkorrektur-Verarbeitung erhalten hat, verwendet werden, um die Daten, die ein Informationspolynom oder ein Empfangspolynom bilden, zu korrigieren. Die Fehlererfassung kann beendet werden, bevor die Daten zum Benutzer (Verarbeitungsrechner) übertragen werden.
  • Nach einer ersten Betrachtungsweise der vorliegenden Erfindung wird dort ein Verfahren zur Erfassung von Codefehlern bereitgestellt, wobei
  • ein Informationspolynom des i-ten Codeworts von n Mengen von Reed-Solomon-Codes, das aus m(104) Datensymbolen (Di,j) gebildet ist, von denen jedes aus h binären Bits gebildet ist, bezeichnet wird durch Mi(x) = Di,m-1xm-1 + + Di,0,
  • ein Generatorpolynom vom Grad t für t(4) Paritätssymbole(c&sub0;-c&sub3;) zur Fehlerüberprüfung, die aus h binären Bits gebildet sind, bezeichnet wird durch G(x),
  • ein Quotientenpolynom und ein Restpolynom, die man erhält, indem man das Informationspolynom Mi(x) durch das Generatorpolynom G(x) teilt, bezeichnet werden durch Qi(x) beziehungsweise Ri(x),
  • das Ergebnis einer Exklusiv-Oder-Summierung der Informationspolynome Mi(x) dargestellt wird durch
  • das Ergebnis einer Exklusiv-Oder-Summierung der Restpolynome Ri(x) dargestellt wird durch
  • und
  • Terme (c&sub3;,c&sub2;,c&sub1;,c&sub0;) der jeweiligen Grade des Restpolynoms R(x), die man mit xt M(x)/G(x) erhält, in die Stelle i=0-ten Grades der Informationspolynome Mi(x) der Codewörter der n Mengen von Reed-Solomon-Codes in der Reihenfolge i=n-1, i=n-2 und so weiter vom Term 0-ten Grades der Reihe nach eingesetzt werden und (g-m)=k Paritätssymbole Ei,k zur Fehlerkorrektur zu insgesamt g Codewörtern hinzugefügt werden,
  • wobei das Verfahren dadurch gekennzeichnet ist, daß es während des Wiedergabevorgangs den folgenden Schritt umfaßt:
  • die wiedergegebenen Informationspolynome Mi x) mittels der besagten Paritätssymbole (Ei,k) zur Fehlerkorrektur, die aus k Reed-Solomon-Codes gebildet sind, zu korrigieren, um somit korrigierte Informationspolynome Mi x) zu erhalten;
  • ein Quotientenpolynom Qi k) und ein Restpolynom Ri x) zu erzeugen, indem man das korrigierte Informationspolynom Mi x) durch das Generatorpolynom G(x) teilt;
  • die korrigierten Informationspolynome Mi x) mit Exklusiv-Oder zu summieren und
  • zu erhalten; und
  • die Restpolynome Ri x) mit Exklusiv-Oder zu summieren und
  • zu erhalten; und
  • ein korrigiertes Restpolynom R x) zu erzeugen, indem die Koeffizienten
  • der jeweiligen Grade eines wiedergegebenen Restpolynoms R x), das sich aus der Wiedergabe des Restpolynoms R(x) ergibt, korrigiert, indem man die Paritätssymbole (Ei,k) zur Fehlerkorrektur, die aus k Reed- Solomon-Codes gebildet sind, verwendet,
  • wobei eine Entscheidung, daß kein Fehler aufgetreten ist, getroffen wird, wenn R x) = R x) gilt, während
  • eine Entscheidung, daß mindestens ein Fehler aufgetreten ist, getroffen wird, wenn R x) ≠ R x) gilt.
  • Nach einer zweiten Betrachtungsweise der vorliegenden Erfindung wird dort ein Verfahren zur Erfassung von Codefehlern bereitgestellt, wobei, wenn die Symboldaten Di,j in der Form angeordnet werden, die n senkrechte (Spalten-)Symbole und in waagerechte (Reihen-)Symbole enthält,
  • ein Informationspolynom des i-ten Codeworts von n Mengen von Reed-Solomon-Codes, das aus m(104) Datensymbolen (Di,j) gebildet ist, von denen jedes aus h binären Bits gebildet ist, bezeichnet wird durch Mi(x) = Di,m-1xm-1 + + Di,0,
  • ein Generatorpolynom vom Grad t für t(4) Paritätssymbole(c&sub0;-c&sub3;) zur Fehlerüberprüfung, die aus h binären Bits gebildet sind, bezeichnet wird durch G(x),
  • ein Quotientenpolynom und ein Restpolynom, die man erhält, indem man das Informationspolynom Mi(x) durch das Generatorpolynom G(x) teilt, bezeichnet werden durch Qi(x) beziehungsweise Ri(x),
  • das Ergebnis einer Exklusiv-Oder-Summierung der Informationspolynome Mi(x) dargestellt wird durch
  • das Ergebnis einer Exklusiv-Oder-Summierung der n senkrecht angeordneten Datensymbole in den jeweiligen Spalten von der ersten Spalte bis zur (m-1)-ten Spalte dargestellt wird durch
  • und in der m-ten Spalte das Ergebnis einer Exklusiv-Oder- Summierung von (n-t) senkrecht angeordneten Datensymbolen mit Ausnahme der t Paritätssymbole zur Fehlerüberprüfung dargestellt wird durch
  • das Ergebnis einer Exklusiv-Oder-Summierung der Restpolynome Ri(x) dargestellt wird durch
  • und
  • Terme (c&sub3;,c&sub2;,c&sub1;,c&sub0;) der jeweiligen Grade des Restpolynoms R(x), die man mit xt M(x)/G(x) erhält, in die Stelle i=0-ten Grades der Informationspolynome Mi(x) der Codewörter der n Mengen von Reed-Solomon-Codes in der Reihenfolge i=n-1, i=n-2 und so weiter vom Term 0-ten Grades der Reihe nach eingesetzt werden und (g-m)=k Paritätssymbole Ei,k zur Fehlerkorrektur zu insgesamt g Codewörtern hinzugefügt werden,
  • wobei das Verfahren dadurch gekennzeichnet ist, daß es während des Wiedergabevorgangs den folgenden Schritt umfaßt:
  • eine Exklusiv-Oder-Summierung der n wiedergegebenen senkrecht angeordneten Datensymbole in jeder der Spalten von der ersten Spalte bis zur (m-1)-ten Spalte ausgeführt wird, wie dargestellt durch
  • und in der m-ten Spalte eine Exklusiv-Oder-Summierung von (n-t) wiedergegebenen senkrecht angeordneten Datensymbolen mit Ausnahme von t Paritätssymbolen zur Fehlerüberprüfung ausgeführt wird, wie dargestellt durch
  • ein wiedergegebenes aus insgesamt m Datensymbolen gebildetes Informationspolynom M x) als Ergebnis der obigen Exklusiv-Oder- Summierungen zu erzeugen;
  • das wiedergegebene Informationspolynom Mi x) mittels der Paritätssymbole (Ei,k) zur Fehlerkorrektur, die aus k Reed- Solomon-Codes gebildet sind, zu korrigieren, um ein korrigiertes Informationspolynom M(x) zu erzeugen, worin entsprechend einer Fehlerstelle und einem Fehlermuster, die man durch die in jeder waagerechten Reihe ausgeführte Fehlerkorrektur unter Verwendung der Paritätssymbole (Ei,k) zur Fehlerkorrektur, die aus k Reed- Solomon-Codes gebildet sind, erhalten hat, eine Exklusiv-Oder- Summierung des besagten Fehlermusters und eines Datensymbols, das besagter Fehlerstelle in dem wiedergegebenen Informationspolynom M(x), das sich aus den obigen Exklusiv-Oder-Summierungen ergibt, ausgeführt wird, um eine Korrektur des wiedergegebenen Informationspolynoms M(x) zu bewirken;
  • ein Restpolynom R(x) zu erzeugen, indem man xt M x), bei dem M x) nach der Fehlerkorrektur verwendet wird, durch das Generatorpolynom G(x) teilt; und
  • die Koeffizienten der jeweiligen Grade des Restpolynoms R x), das sich aus der Teilung des korrigierten Informationspolynoms M x) durch das Generatorpolynom G(x) beim Wiedergabevorgang ergibt, und eines Restpolynoms R x) t-ten Grades, das beim Aufnahmevorgang berechnet und in die m-te Spalte eingefügt wurde und beim Wiedergabevorgang korrigiert wurde, miteinander verglichen werden,
  • wobei eine Entscheidung, daß kein Fehler aufgetreten ist, getroffen wird, wenn in allen Koeffizientenpaaren Übereinstimmung besteht, während
  • eine Entscheidung, daß mindestens ein Fehler aufgetreten ist, getroffen wird, wenn in irgendeinem der Koeffizientenpaare keine Übereinstimmung besteht.
  • Nach einer dritten Betrachtungsweise der vorliegenden Erfindung wird dort ein Verfahren zur Erfassung von Codefehlern bereitgestellt, wobei, wenn die Symboldaten Di,j in der Form angeordnet werden, die n senkrechte (Spalten-)Symbole und m waagerechte (Reihen-)Symbole enthält,
  • ein Informationspolynom des i-ten Codeworts von n Mengen von Reed-Solomon-Codes, das aus m(104) Datensymbolen (Di,j) gebildet ist, von denen jedes aus h binären Bits gebildet ist, bezeichnet wird durch Mi(x) = Di,m-1xm-1 + + Di,0,
  • ein Generatorpolynom vom Grad t für t(4) Paritätssymbole(c&sub0;-c&sub3;) zur Fehlerüberprüfung, die aus h binären Bits gebildet sind, bezeichnet wird durch G(x),
  • ein Quotientenpolynom und ein Restpolynom, die man erhält, indem man das Informationspolynom Mi(x) durch das Generatorpolynom G(x) teilt, bezeichnet werden durch Qi(x) beziehungsweise Ri(x),
  • das Ergebnis einer Exklusiv-Oder-Summierung der Informationspolynome Mi(x) dargestellt wird durch
  • das Ergebnis einer Exklusiv-Oder-Summierung der n senkrecht angeordneten Datensymbole in den jeweiligen Spalten von der ersten Spalte bis zur (m-1)-ten Spalte dargestellt wird durch
  • und in der m-ten Spalte das Ergebnis einer Exklusiv-Oder- Summierung von (n-t) senkrecht angeordneten Datensymbolen mit Ausnahme der t Paritätssymbole zur Fehlerüberprüfung dargestellt wird durch
  • das Ergebnis einer Exklusiv-Oder-Suminierung der Restpolynome Ri(x) dargestellt wird durch
  • und
  • Terme (c&sub3;,c&sub2;,c&sub1;,c&sub0;) der jeweiligen Grade des Restpolynoms R(x), die man mit xt M(x)/G(x) erhält, in die Stelle i=0-ten Grades der Informationspolynome Mi(x) der Codewörter der n Mengen von Reed-Solomon-Codes in der Reihenfolge i=n-1, i=n-2 und so weiter vom Term 0-ten Grades der Reihe nach eingesetzt werden und (g-m)=k Paritätssymbole Ei,k zur Fehlerkorrektur zu insgesamt g Codewörtern hinzugefügt werden,
  • wobei das Verfahren dadurch gekennzeichnet ist, daß es während des Wiedergabevorgangs den folgenden Schritt umfaßt:
  • ein wiedergegebenes aus m Datensymbolen in jeder Reihe gebildetes Informationspolynom Mi x) zu erzeugen;
  • das wiedergegebene Informationspolynom Mi x) mittels der Paritätssymbole (Ei,k) zur Fehlerkorrektur, die aus k Reed- Solomon-Codes gebildet sind, zu korrigieren, um ein korrigiertes Informationspolynom M(x) zu erzeugen, worin eine Exklusiv-Oder- Summierung zwischen den Daten der i-ten Reihe, die korrigiert worden sind, und den Daten der (i+1)-ten Reihe, die noch nicht korrigiert worden sind, beide in der gleichen Spalte, ausgeführt wird, um Daten zu erzeugen, die ein vorläufiges Informationspolynom bilden, und entsprechend einer Fehlerstelle und einem Fehlermuster, die man durch Fehlerkorrektur der Daten der (i+1)-ten Reihe erhalten hat, eine Exklusiv-Oder-Summierung des besagten Fehlermusters und Datensymbols des vorläufigen Informationspolynoms, das besagter Fehlerstelle entspricht, ausgeführt wird, um eine Korrektur des wiedergegebenen Informationspolynoms M(x) zu bewirken, wobei der obige Vorgang wiederholt wird; und
  • die Koeffizienten der jeweiligen Grade eines Restpolynoms R x), das sich aus der Teilung eines schließlich erhaltenen und korrigierten Informationspolynoms M x) durch das Generatorpolynom G(x) ergibt, und eines Restpolynoms R x), das beim Aufnahmevorgang berechnet und beim Wiedergabevorgang korrigiert worden ist, miteinander verglichen werden,
  • wobei eine Entscheidung, daß kein Fehler aufgetreten ist, getroffen wird, wenn in allen Koeffizientenpaaren Überein-Stimmung besteht, während
  • eine Entscheidung, daß mindestens ein Fehler aufgetreten ist, getroffen wird, wenn in irgendeinem der Koeffizientenpaare keine Übereinstimmung besteht.
  • Nach einer vierten Betrachtungsweise der vorliegenden Erfindung wird dort ein Verfahren zur Erfassung von Codefehlern bereitgestellt, wobei, wenn die Symboldaten Di,j in der Form angeordnet werden, die n senkrechte (Spalten-)Symbole und in waagerechte (Reihen-)Symbole enthält,
  • ein Informationspolynom des i-ten Codeworts von n Mengen von Reed-Solomon-Codes, das aus m(104) Datensymbolen (Di,j) gebildet ist, von denen jedes aus h binären Bits gebildet ist, bezeichnet wird durch Mi(x) = Di,m-1xm-1 + + Di,0,
  • ein Generatorpolynom vom Grad t für t(4) Paritätssymbole(c&sub0;-c&sub3;) zur Fehlerüberprüfung, die aus h binären Bits gebildet sind, bezeichnet wird durch G(x),
  • ein Quotientenpolynom und ein Restpolynom, die man erhält, indem man das Informationspolynom Mi(x) durch das Generatorpolynom G(x) teilt, bezeichnet werden durch Qi(x) beziehungsweise Ri(x),
  • das Ergebnis einer Exklusiv-Oder-Summierung der Informationspolynome Mi(x) dargestellt wird durch
  • das Ergebnis einer Exklusiv-Oder-Summierung der n senkrecht angeordneten Datensymbole in den jeweiligen Spalten von der ersten Spalte bis zur (m-1)-ten Spalte dargestellt wird durch
  • und in der m-ten Spalte das Ergebnis einer Exklusiv-Oder- Summierung von (n-t) senkrecht angeordneten Datensymbolen mit Ausnahme der t Paritätssymbole zur Fehlerüberprüfung dargestellt wird durch
  • das Ergebnis einer Exklusiv-Oder-Summierung der Restpolynome Ri(x) dargestellt wird durch
  • und
  • Terme (c&sub3;,c&sub2;,c&sub1;,c&sub0;) der jeweiligen Grade des Restpolynoms R(x), die man mit xt M(x)/G(x) erhält, in die Stelle i=0-ten Grades der Informationspolynome Mi(x) der Codewörter der n Mengen von Reed-Solomon-Codes in der Reihenfolge i=n-1, i=n-2 und so weiter vom Term 0-ten Grades der Reihe nach eingesetzt werden und (g-m)=k Paritätssymbole Ei,k zur Fehlerkorrektur zu insgesamt g Codewörtern hinzugefügt werden,
  • wobei das Verfahren dadurch gekennzeichnet ist, daß es während des Wiedergabevorgangs den folgenden Schritt umfaßt, wobei die Fehlerkorrektur am i-ten Codewort der Codewörter der n Mengen von Reed-Solomon-Codes, die aus in Datensymbolen und (g-m)=k Paritätssymbolen zur Fehlerkorrektur gebildet sind, vorgenommen wird:
  • ein korrigiertes Informationspolynom M1 (x), das aus den m Datensymbolen gebildet ist, durch das Generatorpolynom G(x) geteilt wird, um ein Restpolynom R1i(x) zu erhalten, wobei dieser Vorgang (n-t)-mal wiederholt wird; und
  • ein Informationspolynom M2 (x), das (m-1) Datensymbole mit Ausnahme eines der t-Symbole (C&sub3;,C&sub2;,C&sub1;,C&sub0;) als die Paritätssymbole, die Koeffizienten der jeweiligen Grade eines Restpolynoms R x), das eine beim Aufnahmevorgang berechnete und beim Wiedergabevorgang korrigierte Parität zur Fehlerüberprüfung ist, umfaßt, und ein aus dem h Bit breiten Binärwort "0" gebildetes Symbol durch das Generatorpolynom G(x) geteilt wird, um ein Restpolynom R2 (x) zu erhalten, und dieser Verarbeitungsschritt t-mal wiederholt wird, um eine Exklusiv-Oder-Summierung der Restpolynome auszuführen, wie dargestellt durch
  • wobei eine Entscheidung, daß kein Fehler aufgetreten ist, getroffen wird, wenn R x) = R x) gilt, während
  • eine Entscheidung, daß mindestens ein Fehler aufgetreten ist, getroffen wird, wenn R x) ≠ R x) gilt.
  • Eine Ausführungsform der Erfindung liefert ein Verfahren, in dem bei einem Aufnahmevorgang Daten, die Benutzerdaten und Steuerdaten, welche Adressen einer optischen Platte, an denen die Daten zu schreiben sind, umfassen, in einer Form mit n vertikalen Symbolen x in horizontalen Symbolen angeordnet werden, eine Summierung der Exklusiv-Oder-Ergebnisse von n Symbolen in jeder vertikalen Spalte, von der ersten Spalte bis zur (m - 1)-ten Spalte laufend, ausgeführt wird, und eine Summierung von Exklusiv-Oder-Ergebnissen von (n - t) Symbolen der m-ten Spalte, ausgenommen t Symbole einschließlich der letzten Symbole, ausgeführt wird, wodurch man ein Informationspolynom von Daten bildet, das die in so erhaltenen Symbole umfaßt. Das Informationspolynom wird dann durch ein zur Fehlererfassung im voraus eingerichtetes Generatorpolynom geteilt und ein als Ergebnis der Division erhaltener Rest wird als Fehlererfassungsparität am Platz der t-Bytes angeordnet. Bei einem Wiedergabevorgang wird, wenn ein Codefehler in den Daten der in Symbole einer horizontalen Reihe, die aus den von n vertikalen Symbolen x m horizontalen Symbolen gebildeten Daten ausgewählt wurde, oder in den Daten der (m - 1) Symbole, ausgenommen die Steuerdaten, gefunden wird, eine Fehlerkorrektur ausgeführt, indem man einen getrennt bestimmten Fehlerkorrekturcode verwendet, und eine Korrektur wird auf dem Informationspolynom zur Fehlerkorrektur für die der Fehlerkorrektur unterworfenen Daten, basierend auf einer Stelle und einem Muster, die mit den bei der Fehlerkorrektur erhaltenen Fehlerdaten in Beziehung stehen, ausgeführt, wodurch entsprechend dem Ergebnis der Korrektur ein Fehler erfaßt wird. In der obigen Zusammenstellung wird, wenn die Fehlerkorrektur auf den Daten eines Sektors abgeschlossen ist, beinahe gleichzeitig auch eine Codefehlererfassung auf den korrigierten Daten abgeschlossen, und daher kann die Codefehlererfassung ausgeführt werden, bevor die Daten zum Benutzer (Verarbeitungscomputer) übertragen werden, und alle Verarbeitungsschritte können vollständig innerhalb des dem Sektor zugeordneten Zeitraumes ausgeführt werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNG
  • Die vorliegende Erfindung wird offensichtlich werden aus der folgenden ausführlichen Beschreibung in Verbindung mit der begleitenden Zeichnung, in der:
  • Fig. 1 ein Blockschaltbild ist, das ein übliches System, das die Codefehlererfassung bei einem Datenspeicher, der eine optische Platte verwendet, durchführt;
  • Fig. 2 ein Blockschaltbild ist, das ein System einer Ausführungsform der vorliegenden Erfindung zeigt, das die Codefehlererfassung bei einem Datenspeicher, der eine optische Platte verwendet, durchführt; und
  • Fig. 3 ein veranschaulichendes Diagramm ist, das eine Datenanordnung zum Durchführen der Codefehlererfassung in einer Ausführungsform der vorliegenden Erfindung zeigt.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Die Abbildung von Fig. 2 umfaßt einen Verarbeitungscomputer 1, eine Schnittstelle 2, eine digitale Modulationsschaltung 3, eine digitale Demodulationsschaltung 4, einen Sektor-Pufferspeicher 5, einen Summierer 6, um die Summierung der Exklusiv-Oder- Ergebnisse von zehn Symboldaten oder sechs Symboldaten, die zur Codefehlerprüfung verwendet werden, auszuführen, einen Generator/Prüfer 7 für den Codefehler-Erfassungscode (CRC), eine Fehlerkorrekturschaltung 8, einen Codierungs/Decodierungs-Umschalter 9, einen Datenbus 10, eine optische Platte 11 und einen Hilfsspeicher 12.
  • Weiterhin kennzeichnet in der Datenanordnung von Fig. 3 Di,j (0 ≤ i ≤ 9, 0 ≤ j ≤ 103) Benutzerdaten und Steuerdaten, Ei,k (0 ≤ k ≤ 15) bezeichnet die Fehlerkorrekturparität, Cu (0 ≤ u ≤ 3) zeigt die Fehlerprüfparität an, Pv (0 ≤ v ≤ 103) steht für Daten, die ein Informationspolynom zur Fehlerüberprüfung bilden, und Ri,s (0 ≤ s ≤ 3) kennzeichnet Daten, die das Restpolynom jeder Reihe bilden.
  • Die Benennung der in den jeweiligen Fällen verwendeten Symbole wird hier gezeigt, indem das Paritätssymbol zur Fehlerkorrektur C als Beispiel verwendet wird:
  • Im Falle der Aufnahme wird einfach "C" verwendet;
  • im Falle der Wiedergabe wird " " verwendet;
  • im Falle der Fehlerkorrektur wird " " verwendet; und
  • in dem Fall, in dem es durch Berechnung erhalten wurde, wird " " verwendet.
  • Bei einem Aufnahinevorgang werden zunächst vom Verarbeitungsrechner 1 die Benutzerdaten und Steuerdaten Di,j als Symbole in Byte-Einheiten über die Schnittstelle 2 und den Datenbus 10 an den Sektor-Pufferspeicher 5 in der Reihenfolge D0,103, D1,103, D2,103, ... , D9,103, D0,102, ... , D9,102, ... , D0,1, D1,1, D2,1, ... , D9,1, D0,0, D1,0, D2,0, D3,0, D4,0 und D5,0 geliefert, um so in der Form mit zehn vertikalen Symbolen x 104 horizontalen Symbolen, wie in Fig. 3 gezeigt, gespeichert zu werden. Gleichzeitig werden die Dateneleinente an die Summierungsschaltung 6 geliefert, die wiederum die Summierung der Exklusiv-Oder- Ergebnisse wie folgt ausführt.
  • Diese durch Pv (0 ≤ v ≤ 103) dargestellten Dateneleinente werden in den CRC-Generator/Prüfer 7 in der Reihenfolge P&sub1;&sub0;&sub3;, P&sub1;&sub0;&sub2;, ... , P&sub0; eingegeben, um durch ein im voraus festgelegtes Generatorpolynom G(x) mit vier Symbolen geteilt zu werden. Ein Rest R(x), der sich aus der Division ergibt, wird als Fehlerprüf-Paritätsdatensymbole C&sub3; bis C&sub0; erzeugt, die dann in den Sektor-Pufferspeicher 5 geschrieben werden. Darauf folgend werden die Datenelemente einer horizontalen Reihe, die D0,j, D1,j, ... , D5,j (0 ≤ j ≤ 103) umfassen; D6,j und C&sub3;, D7,j und C&sub2;, D8,j und C&sub1;, D9,j und C&sub0; (1 ≤ j ≤ 103) aus dein Sektorpuffer ausgelesen, um die Fehlerkorrekturparität Ei,k in der Fehlerkorrekturschaltung 8 zu berechnen, und die Parität Ei,k wird dann in den Sektor- Pufferspeicher 5 geschrieben. Endlich werden die Dateneleinente des Sektor-Pufferspeichers 5 in der Reihenfolge D0,103, D1,103, D2,103, ... , D9,103, D0,102, D1,102, D2,102, ... , D9,102, ... , D0,1, D1,1, D2,1, ... , D9,1, D0,0, D1,0, D2,0, ... , D5,0, C&sub3;, C&sub2;, C&sub1;, C&sub0;, E0,15, E1,15, E2,15, ... , E9,15, E0,14, E1,14, E2,14, ... , E9,14, ... , E0,0, E1,0, E2,0, ... , E9,0 ausgelesen, um über den Codierungs/Decodierungs-Schalter 9 der digitalen Modulationsschaltung 3 zugeleitet zu werden, die wiederum Signale wie ein Synchronisationssignal hinzufügt und die sich ergebenden Datenelemente auf der optischen Platte 11 aufnimmt.
  • Andererseits werden bei einem Wiedergabevorgang die von der optischen Platte 11 eingelesenen Datenelemente durch die digitale Demodulationsschaltung 4 demoduliert und über den Codierungs/Decodierungs-Schalter 9 dem Sektor-Pufferspeicher 5 zugeleitet. Die Datenelemente werden darin in Form von zehn vertikalen Symbolen x 120 horizontalen Symbolen geschrieben, wie beim Aufnahmevorgang, wie in Fig. 3 gezeigt. Gleichzeitig werden die Datenelemente dem Summierer 6 eingegeben, der dann eine Summierung der Exklusiv-Oder-Ergebnisse wie folgt ausführt:
  • Hierbei zeigt ^ an, daß die Daten, die diese Markierung tragen, bei einem Wiedergabevorgang erscheinen. Diese Daten v (0 ≤ v ≤ 103) werden in einen Hilfsspeicher 12 geschrieben. Als nächstes werden die Daten D0,j (0 ≤ j ≤ 103) und E0,k (0 ≤ k ≤ 15) nacheinander in der Richtung von links nach rechts in Fig. 3 ausgelesen und der Fehlerkorrekturschaltung 8 zugeleitet. In der Fehlerkorrekturschaltung 8 werden für den Fehler eine Stelle und ein Muster berechnet. Dann werden Daten, die der Fehlerstelle entsprechen, vom Sektor-Pufferspeicher 5 gelesen und in die Fehlerkorrekturschaltung 8 eingegeben. Danach wird eine Summierung der Exklusiv-Oder-Ergebnisse für das Fehlermuster und die obigen Daten ausgeführt, und die sich ergebenden Daten werden wieder in den Sektor-Pufferspeicher 5 an die ursprüngliche Adresse geschrieben, wodurch die Fehlerkorrektur ausgeführt wird. Darauffolgend wird das v, das der Fehlerstelle entspricht, vom Hilfsspeicher 12 gelesen und dann der Fehlerkorrekturschaltung 8 zugeleitet. Eine Summierung von Exklusiv- Oder-Ergebnissen wird für das Fehlermuster und die obigen Daten ausgeführt, und die sich ergebenden Daten werden wieder in den Hilfsspeicher 12 an die ursprüngliche Adresse geschrieben. Dann wird der obige Vorgang für i (1 ≤ i ≤ 9) wiederholt, und somit wird er insgesamt zehnmal wiederholt. Schließlich werden die Daten vom Hilfsspeicher 12 in der Reihenfolge &sub1;&sub0;&sub3;, &sub1;&sub0;&sub2;, ... , &sub1; und &sub0; gelesen und in den CRC-Generator/Prüfer 7 eingegeben, der diese durch ein im voraus bestimmtes Generatorpolynom G(x), das auch beim Aufnahmevorgang verwendet worden ist, teilt. Eine Erklärung der Markierung folgt in Kürze. Im Ergebnis erhält man den Rest R x) als &sub3; bis &sub0;, die mit der der Fehlerkorrektur unterzogenen Fehlerkorrekturparität (x) verglichen werden, nämlich mit &sub3; bis &sub0;, die aus dem Sektor-Pufferspeicher 5 gelesen und dein CRC-Generator/Prüfer 7 zugeleitet wurden. Wenn sich ein übereinstimmender Zustand ergibt, bestimmt das System, daß kein Fehler aufgetreten ist. Sonst wird das Auftreten eines Fehlers vermutet. Wenn bei dieser Beurteilung kein Fehler gefunden wurde, werden die Benutzerdaten Di,j über den Datenbus 10 und die Schnittstelle 2 aus dem Sektor-Pufferspeicher 5 an den Verarbeitungscomputer 1 übertragen. Wenn ein Fehler vermutet wird, wird eine Fehlernachricht an den Verarbeitungscomputer 1 übertragen. In der obigen Beschreibung kennzeichnet die Markierung Daten, die beim Wiedergabevorgang der Fehlerkorrektur unterzogen worden sind, und die Markierung kennzeichnet Daten, die man durch eine Berechnung nach der Fehlerkorrektur erhalten hat. In diesem Fall wird als Generatorpolynom G(x) der Fehlerprüfparität das folgende verwendet, wenn das primitive Element des durch ein primitives Polynom m(x) = x&sup8; + x&sup4; + x³ + x² + 1 erhaltenen endlichen Körpers oder Galois-Körpers als α angenommen wird.
  • Wahlweise wird als Generatorpolynom G(x) der Fehlerprüfparität das folgende verwendet, wenn das primitive Element des durch ein primitives Polynom m(x) = x&sup8; + x&sup5; + x³ + x² + 1 erhaltenen endlichen Körpers oder Galois-Körpers als α angenommen wird.
  • Hier ist das Generatorpolynom G(x) in Byte-Einheit. Jedoch braucht das Generatorpolynom G(x) nicht notwendigerweise mit der Byte-Einheit in Beziehung gebracht zu werden, zum Beispiel kann man auch G(x) = x³² + x²³ + x²¹ + x¹¹ + x² + 1 verwenden, das mit der binären Einheit in Beziehung steht. Falls das Generatorpolynom in Byte-Einheit verwendet wird, wird hier die Fehlerprüfparität Cu so berechnet, daß der folgende Ausdruck erfüllt ist.
  • oder
  • Wenn man ein Generatorpolynom in binärer Einheit verwendet, erhält man den Rest ebenso wie im üblichen Verfahren unter der Annahme, daß die 8-Bit-Daten, die
  • umfassen, jeweils fortlaufende Bitströme sind, und dann braucht das Ergebnis nur in 8-Bit-Einheiten unterteilt zu werden.
  • Zusätzlich ist es möglich, statt der oben beschriebenen Berechnung, in der die Fehlerprüfparität R x), nämlich &sub3; bis &sub0;, die beim Aufnahmevorgang berechnet und summiert werden und der Fehlerkorrektur-Verarbeitung unterzogen werden, mit R x), nämlich &sub3; bis &sub0;, die man durch eine Berechnung beim Wiedergabevorgang erhalten hat, verglichen wird, um so das Auftreten oder die Abwesenheit eines Fehlers zu beurteilen, dem CRC- Generator/Prüfer 7 u aus dem Hilfsspeicher 12 und R(x) aus dem Sektor-Pufferspeicher 5 in der Reihenfolge &sub1;&sub0;&sub3;, &sub1;&sub0;&sub2;, ... , &sub0;, &sub3;, &sub2;, &sub1; und &sub0; zuzuleiten, um durch das Generatorpolynom G(x) geteilt zu werden, und somit das Auftreten oder die Abwesenheit eines Fehlers daraus zu bestimmen, ob der Rest nicht 0 beziehungsweise 0 ist.
  • Als Nächstes wird eine zweite Ausführungsform dieser Erfindung erläutert werden.
  • In der ersten Ausführungsform werden die Datenelemente, die das Informationspolynom zur Fehlerüberprüfung bilden, im voraus durch eine Summierung der Exklusiv-Oder-Ergebnisse der zehn Bytes oder sechs Bytes von Wiedergabedaten in Richtung der Spalten von Fig. 3 erzeugt, und danach wird, indem man die Fehlerstelle und das Fehlermuster, die man während der jeder Reihe zugeordneten Fehlerkorrektur erhalten hat, verwendet, auch eine Korrektur auf den Datenelementen ausgeführt, die das Informationspolynom bilden, um so die Fehlererfassung zu bewirken. Im Unterschied zur ersten Ausführungsform wird gemäß der zweiten Ausführungsform zunächst eine Fehlerkorrektur auf den Daten in einer N-ten Reihe von Fig. 3 ausgeführt, und eine Summierung der Exklusiv-Oder-Ergebnisse der so korrigierten Daten der N-ten Reihe und der nicht korrigierten Daten der (N + 1)-ten Reihe wird für jedes in der gleichen Spalte gelegene Symbol durchgeführt, um so Datenelemente zu erzeugen, die ein vorläufiges Informationspolynom bilden. Darauffolgend werden auf den Daten der (N + 1)-ten Reihe und den mit dem vorläufigen Informationspolynom in Beziehung stehenden Datenelementen wiederholt Fehlerkorrekturschritte ausgeführt, um so eine Korrektur des Informationspolynoms zu bewirken, wodurch die Fehlererfassung ausgeführt wird. Hier ist der Vorgang, die Daten aufzunehmen, der gleiche wie der in der ersten Ausführungsform. Beim Aufnahmevorgang werden die von der optischen Platte 11 gelesenen Daten durch die digitale Demodulationsschaltung 4 demoduliert und dann über den Codierungs/Decodierungs-Umschalter 9 in den Sektor-Pufferspeicher 5 in der Datenanordnung wie beim Aufnahmevorgang, gebildet durch zehn vertikale Symbole x 120 horizontale Symbole, wie in Fig. 3 gezeigt, geschrieben. Als Nächstes werden die Daten und die Fehlerkorrekturparität einschließlich 0,103, 0,102, ... , 0,0, 0,15, ... und 0,0 der obersten Reihe von Fig. 3 vom Sektor-Pufferspeicher 5 gelesen und dann der Fehlerkorrekturschaltung 8 zugeleitet. Gleichzeitig werden die Datenelemente 0,103, 0,102, ... und 0,0 in den Hilfsspeicher 12 geschrieben. In der Fehlerkorrekturschaltung 8 werden die Stelle und das Muster des Fehlers zur Fehlerkorrektur berechnet. Danach werden die der Fehlerstelle entsprechenden Fehlerdaten aus dem Hilfsspeicher 12 gelesen und an die Fehlerkorrekturschaltung 8 geliefert, die dann eine Summierung von Exklusiv-Oder-Ergebnissen des Fehlermusters und der so ausgelesenen Daten ausführt und somit die Fehlerkorrektur durchführt. Die sich ergebenden Daten werden wieder in den Hilfsspeicher 12 an die ursprüngliche Adresse geschrieben. Bei diesem Vorgang werden in der Fehlerkorrekturschaltung 8 die Daten 0,103 an einen Eingabeanschluß eines Syndrom-Erzeugers und an einen Eingabeanschluß einer Exklusiv-Oder-Schaltung eingegeben. Gleichzeitig werden die korrigierten Daten 0,103 vom Hilfsspeicher 12 gelesen und dem anderen Eingabeanschluß der Exklusiv- Oder-Schaltung der Fehlerkorrekturschaltung 8 zugeleitet, und dann wird eine Berechnung von &sub1;&sub0;&sub3; = 0,102 0,103 durchgeführt, und die erhaltenen Daten werden wieder an die ursprüngliche Adresse im Hilfsspeicher 12 geschrieben. Darauf folgend werden, auf ähnliche Weise, während 0,102, 0,101, ... und 0,0 nacheinander dem Syndrom-Erzeuger und der Exklusiv-Oder-Schaltung zugeleitet werden, Berechnungen von &sub1;&sub0;&sub2; = 0,102 0,102, &sub1;&sub0;&sub1; = 0,101 0,1011 ... und &sub0; = 0,0 0,0 ausgeführt und die sich ergebenden Datenelemente werden wieder an die jeweiligen ursprünglichen Adressen in den Hilfsspeicher 12 geschrieben. Nachdem diese Vorgänge ausgeführt sind, werden die Fehlerstelle und das Fehlermuster für die Daten und die Fehlerprüfparität in der zweiten Reihe von Fig. 3 berechnet. Daten, die der Fehlerstelle entsprechen, werden aus dein Sektor-Pufferspeicher 5 gelesen und dann an die Fehlerkorrekturschaltung 8 geliefert, die wiederum eine Summierung von Exklusiv-Oder-Ergebnissen des Fehlermusters und der so ausgelesenen Daten ausführt, um somit die Fehlerkorrektur durchzuführen. Die sich ergebenden Daten werden wieder an die ursprüngliche Adresse in den Sektor- Pufferspeicher 5 geschrieben. Darauf folgend werden die der Fehlerstelle entsprechenden u aus dem Hilfsspeicher 12 gelesen und in die Fehlerkorrekturschaltung 8 eingespeist, die wiederum eine Summierung von Exklusiv-Oder-Ergebnissen des Fehlermusters und der so ausgelesenen Daten u ausführt, um somit die Fehlerkorrektur auszuführen. Die sich ergebenden Daten werden wieder an die ursprüngliche Adresse in den Hilfsspeicher 12 geschrieben. Indem man dieser Vorgehensweise für die Daten von der dritten Reihe bis zur zehnten Reihe folgt, wird eine ähnliche Verarbeitung wiederholt ausgeführt. Wenn die Fehlerkorrektur und die Korrektur der Datenelemente, die das Informationspolynom für die CRC-Berechnung bilden, für die Daten der zehnten Reihe ausgeführt sind, hat man im Hilfsspeicher 12 die Datenelemente erhalten, welche das Informationspolynom für die CRC-Berechnung bilden, solche Datenelemente, die denen der ersten Ausführungsform gleich sind.
  • Als Nächstes wird eine dritte Ausführungsform der vorliegenden Erfindung erläutert werden.
  • In der dritten Ausführungsform werden, im Unterschied zu den ersten und zweiten Ausführungsformen, bei einem Wiedergabevorgang die von der optischen Platte 11 gelesenen Daten in den Sektor-Pufferspeicher 5 wie beim Aufnahmevorgang geschrieben, so daß sie eine aus zehn vertikalen Symbolen x 120 horizontalen Symbolen gebildete Form bilden. Als Nächstes werden die Daten und die Fehlerkorrekturparität der ersten horizontalen Reihe der obersten Reihe von Fig. 3 einschließlich 0,103, 0,102, 0,0, 0,15, ... und 0,0 aus dein Sektor-Pufferspeicher 5 gelesen und dann in die Fehlerkorrekturschaltung 8 eingegeben, die wiederum eine Fehlerkorrektur für die empfangenen Daten und die Parität ausführt. Die korrigierten Daten werden danach wieder in den Sektor-Pufferspeicher 5 an die ursprüngliche Adresse geschrieben. Darauffolgend werden die korrigierten Daten 0,103, 0,102, ... und 0,0 aus dem Sektor-Pufferspeicher 5 gelesen, um so dem CRC-Generator/Prüfer 7 zugeleitet zu werden, der die Daten durch ein im voraus bestimmtes Generatorpolynom G(x) teilt, um einen Rest &sub0;(x), nämlich 0,3, 0,2, 0,1 und 0,0 zu erhalten, der im Hilfsspeicher 12 gespeichert werden soll. Auf ähnliche Weise erhält man für die Reihen von der zweiten Reihe bis zur sechsten Reihe einen Rest für jede Spalte, nämlich &sub1;(x) bis &sub5;(x), die 1,3, 1,2, 1,1, 1,0, ... , 5,3, 5,2, 5,1, 5,0 umfassen, die dann in den Hilfsspeicher 12 geschrieben werden.
  • Auf beinahe ähnliche Weise, die sich von der für jede der Reihen von der ersten Reihe bis zur sechsten Reihe unterscheidet, erhält man den Rest für jede der Reihen von der siebten Reihe bis zur zehnten Reihe. Wie man nämlich aus Fig. 3 sehen kann, ist die Anzahl von Datenelementen in jeder Reihe um ein Symbol kleiner als die jeder Reihe, die den Reihen von der ersten Reihe bis zur sechsten Reihe zugeordnet ist, und daher wird die Berechnung mit der Annahme ausgeführt, daß an dieser Stelle die Daten stehen. Auf diese Weise erhält man die Reste &sub6;(x) bis &sub9;(x), nämlich 6,3, 6,2, 6,1, 6,0 bis 9,3, 9,2, 9,1, 9,0. Schließlich wird eine Summierung der Exklusiv-Oder-Ergebnisse auf &sub0;(x) bis &sub9;(x) wie folgt ausgeführt.
  • Danach ist die Fehlererfassung der in Verbindung mit der zweiten Ausführungsform beschriebenen gleich.
  • Es ist hier notwendig, zu beweisen, daß die Reste der ersten und der zweiten Ausführungsform gleich denen der dritten Ausführungsform sind. Zur Vereinfachung der Beschreibung wird angenommen, daß beim Wiedergabevorgang kein Fehler auftritt. Natürlich gehen die wesentlichen Eigenschaften durch die obige Annahme nicht verloren.
  • In der Ausführungsform von Fig. 3 erhält man die folgenden Ausdrücke, wenn man annimmt, daß das Inforinationspolynom und das Generatorpolynom der ersten Reihe von Fig. 3 Mi(x) beziehungsweise G(x) sind, und daß das Quotientenpolynom und das Restpolynom, das man erhält, indem man das Informationspolynom Mi(x) durch das Generatorpolynom G(x) teilt, Qi(x) beziehungsweise Ri(x) sind.
  • Nehmen wir hier an, daß eine Summierung der Daten R&sub0;(x) bis R&sub9;(x) durch Rc(x) dargestellt wird, also
  • wobei
  • Hier ist in der ersten Ausführungsform die folgende Beziehung erfüllt.
  • Dementsprechend wird die Fehlerprüfparität, nämlich das Restpolynom der ersten Ausführungsform, wie folgt ausgedrückt.
  • RD(x) = x&sup4; M(x) + QD(x) G(x)
  • Prüfen wir, ob RC(x) = RD(x) erfüllt ist oder nicht.
  • Wenn wir hier annehmen, daß G(x) ein Polynom vom Grad t ist, ist der Ausdruck auf der linken Seite höchstens ein Polynoin vom Grad t-1. Andererseits wird, wenn
  • der Ausdruck auf der rechten Seite ein Polynoin vom Grad t oder höher, was ein Widerspruch zum Grad t-1 auf der linken Seite ist.
  • Dementsprechend muß
  • erfüllt sein. Als Ergebnis erhält man RC(x) = RD(x). Das heißt, die Fehlerprüfparität der ersten Ausführungsform ist der der dritten Ausführungsform gleich.
  • Gemäß der dritten Ausführungsform wird, nachdem die Fehlerkorrektur auf den Daten jeder horizontalen Reihe von Fig. 3 ausgeführt worden ist, um die Fehlerprüfparität jeder horizontalen Reihe zu erhalten, eine Summierung von Exklusiv-Oder- Ergebnis sen für die für jede horizontale Reihe erhaltene Fehlerprüfparität ausgeführt, so daß das Ergebnis der Summierung mit der beim Aufnahmevorgang erhaltenen Fehlerprüfparität verglichen wird und somit das Auftreten oder die Abwesenheit des Fehlers erkannt wird. Dementsprechend benötigt man einen relativ langen Zeitraum, um die Berechnung zu vollenden. Als Nächstes wird eine Ausführungsform zur Verbesserung des obigen Vorgangs beschrieben werden.
  • In dieser Ausführungsform werden die Daten einer horizontalen Reihe von Fig. 3 aus dem Sektor-Pufferspeicher 5 an die Fehlerkorrekturschaltung 8 übertragen und dann, nachdem die Fehlerkorrektur abgeschlossen ist, werden die korrigierten Daten wieder in den Sektor-Pufferspeicher 5 an die ursprüngliche Adresse geschrieben. Darauf folgend werden die Daten der zweiten Reihe aus dem Sektor-Pufferspeicher 5 an die Fehlerkorrekturschaltung 8 übertragen, und dann, nachdem die Fehlerkorrektur abgeschlossen ist, werden die korrigierten Daten wieder in den Sektor-Pufferspeicher 5 an die ursprüngliche Adresse geschrieben. Gemäß dein Fehlerkorrekturverfahren in dieser Ausführungsform wird ein Syndrom berechnet, indem man die zuerst vom Sektor-Pufferspeicher 5 übertragenen Daten verwendet. Danach werden, auf dem so erhaltenen Syndrom basierend, das Fehlerstellenpolynom und das Fehlerberechnungspolynom berechnet, um so daraus die Fehlerstelle und das Fehlermuster zu erhalten. Fehlerdaten, die der Fehlerstelle entsprechen, werden vom Sektor-Pufferspeicher 5 gelesen, und dann wird zwischen den Fehlerdaten und dem Fehlermuster eine Summierung von Exklusiv- Oder-Ergebnissen ausgeführt, um so die Fehlerkorrektur auszuführen und somit die korrigierten Daten wieder an die ursprüngliche Adresse in den Sektor-Pufferspeicher 5 zu schreiben. Bei diesem Vorgang wird auf den Sektor-Pufferspeicher 5 nur zugegriffen, wenn die Daten einer horizontalen Reihe an die Fehlerkorrekturschaltung 8 übertragen werden, um das Syndrom zu erhalten, wenn die Fehlerdaten ausgelesen werden und wenn die korrigierten Daten wieder geschrieben werden. Weil nämlich auf den Sektor-Pufferspeicher 5 nicht zugegriffen wird, wenn die Fehlerkorrekturschaltung 8 die Fehlerstelle und das Fehlermuster berechnet, wird dieser Zeitraum dem Vorgang zugewiesen, die korrigierten Daten der ersten Reihe von Fig. 3 einschließlich 0,103, 0,102, ... und 0,0 aus dem Sektor-Pufferspeicher 5 zu lesen, die dann dem CRC-Generator/Prüfer 7 eingegeben werden. Im CRC-Generator/Prüfer 7 werden die Datenelemente durch das Generatorpolynom G(x) geteilt, und man erhält den Rest &sub0;(x) als 0,3, 0,2, 0,1 und 0,0, um ihn in den Hilfsspeicher 12 zu schreiben. Auf ähnliche Weise wird die Fehlerkorrektur bis zur zehnten Reihe ausgeführt, und man erhält 1,3, 1,2, 1,1, 1,0, ... , 8,3, 8,2, 8,1 und 8,0 als die Reste &sub1;(x) bis &sub8;(x) bis zur neunten Reihe, und sie werden in den Hilfsspeicher 12 geschrieben.
  • Schließlich werden die korrigierten Datenelemente 9,103, 9,102, ... , 9,0 der zehnten Reihe vom Sektor-Pufferspeicher 5 gelesen, so daß sie dem CRC-Generator/Prüfer 7 zugeleitet werden. Im CRC- Generator/Prüfer 7 erhält man den Rest &sub9;(x) als 9,3, 9,2, 9,1 und 9,0. Als Nächstes werden die Reste &sub0;(x) bis &sub9;(x) aus dem Hilfsspeicher gelesen und dann in die Fehlerkorrekturschaltung 8 eingegeben, die eine Summierung der Exklusiv-Oder-Ergebnisse der Reste &sub0;(x) bis &sub9;(x) ausführt, um somit die endgültigen Fehlerprüf-Paritätsdaten &sub3;, &sub2;, &sub1; und &sub0; zu erhalten. Diese Fehlerprüf-Paritätsdaten werden mit den Fehlerprüf-Paritätsdaten &sub3;, &sub2;, &sub1; und &sub0;, die beim Aufnahinevorgang der 104-ten in Fig. 3 gezeigten Spalte hinzugefügt worden sind, und für die beim Wiedergabevorgang die Fehlerkorrektur ausgeführt worden ist, verglichen, womit die Fehlererfassung bewirkt wird. Bei einem Fehlerkorrektur-Codesystem wie dem in der vorliegenden Erfindung erläuterten, das einen Fehlerkorrekturcode verwendet, dessen kleinster Abstand zwischen den Codewörtern bis zu 17 beträgt, benötigt die Verarbeitung, um die Fehlerstelle und das Fehlermuster zu berechnen, verhältnismäßig einen langen Zeitraum. Das heißt, daß die der obigen Verarbeitung zugeordnete Zeit für das System ausreicht, um die Daten einer horizontalen Reihe vom Sektor-Pufferspeicher 5 zu lesen und die Daten an den CRC- Generator/Prüfer 7 zu übertragen, um so die Verarbeitung aus zuführen. Weiterhin ist dieses Verfahren natürlich auf die Erzeugung der Fehlerprüfparität beim Aufnahmevorgang anwendbar, wenn man annimmt, daß kein Fehler genau beim Wiedergabevorgang auftritt.
  • Jetzt wird, wie oben in Bezug auf das Beispiel des bekannten Stands des Technik schon beschrieben, beim Verfahren, ein Informationspolynom zu erzeugen, indem man eine Summierung von Exklusiv-Oder-Ergebnissen von zehn vertikalen Symbolen in jeder Spalte bei den Daten, die in der Form angeordnet sind, daß sie zehn vertikale Symbole und 104 horizontale Symbole haben, ausführt, wenn eine gerade Fehleranzahl an den gleichen Bitstellen der Daten, die die gleichen Bitstrukturen in einer Spalte haben, auftreten sollte, eine Summierung von Exklusiv- Oder-Ergebnis sen der zehn vertikalen Symbole in der Spalte vollständig gleich mit der, die man erhält, wenn kein Fehler auftritt. Auf ähnliche Weise teilt man bei einem Fehlerkorrekturverfahren, bei dem die Fehlerkorrektur für jede horizontale Reihe ausgeführt wird, um ein Informationspolynom zu erhalten, indem man die daraus sich ergebenden Daten verwendet, das so erhaltene Informationspolynom dann durch ein Generatorpolynom, um für jede Reihe ein Restpolynom zu erhalten, und schließlich werden die Restpolynome für die jeweiligen Reihen aufsummiert, um die Fehlererfassung zu bewirken, zum Beispiel werden, wenn alle Daten in zwei Reihen einander gleich sind und gleiche Fehler an den gleichen Stellen auftreten sollten, die beiden sich ergebenden Restpolynome vollständig einander gleich, insbesondere ergibt sich eine Addition von daraus erhaltenen Exklusiv-Oder-Ergebnissen gleich zu der, die man erhält, wenn kein Fehler auftritt. In diesen Fällen ergibt sich, daß das Auftreten solcher Fehler übersehen wird. Auch wenn man in Erwägung zieht, daß solche Fälle normalerweise mit geringer Wahrscheinlichkeit auftreten, ist es möglich, hohe Zuverlässigkeit zu garantieren, wenn zwei getrennte Verfahren zur Erfassung von Codefehlern nebeneinander benutzt werden, um das Auftreten eines Fehlers zu entscheiden, wenn das Auftreten eines Fehlers von einem der beiden Verfahren erkannt wird.

Claims (12)

1. Verfahren zum Erfassen von Codefehlern, wobei
ein Informationspolynom des i-ten Codeworts von n Mengen von Reed-Solomon-Codes, das aus m(104) Datensymbolen (Di,j) gebildet ist, von denen jedes aus h binären Bits gebildet ist, bezeichnet wird durch Mi(x) = Di,m-1xm-1 + + Di,0,
ein Generatorpolynom vom Grad t für t(4) Paritätssymbole(c&sub0;-c&sub3;) zur Fehlerüberprüfung, die aus h binären Bits gebildet sind, bezeichnet wird durch G(x),
ein Quotientenpolynom und ein Restpolynom, die man erhält, indem man das Informationspolynom Mi(x) durch das Generatorpolynom G(x) teilt, bezeichnet werden durch Qi(x) beziehungsweise Ri(x),
das Ergebnis einer Exklusiv-Oder-Summierung der Informationspolynome Mi(x) dargestellt wird durch
das Ergebnis einer Exklusiv-Oder-Summierung der Restpolynome Ri(x) dargestellt wird durch
und
Terme (c&sub3;,c&sub2;,c&sub1;,c&sub0;) der jeweiligen Grade des Restpolynoms R(x), die man mit xt M(x)/G(x) erhält, in die Stelle i=0-ten Grades der Informationspolynome Mi(x) der Codewörter der n Mengen von Reed-solomon-Codes in der Reihenfolge i=n-1, i=n-2 und so weiter vom Term 0-ten Grades der Reihe nach eingesetzt werden und (g-m)=k Paritätssymbole Ei,k zur Fehlerkorrektur zu insgesamt g Codewörtern hinzugefügt werden,
wobei das Verfahren dadurch gekennzeichnet ist, daß es während des Wiedergabevorgangs den folgenden Schritt umfaßt:
die wiedergegebenen Informationspolynome Mi x) mittels der besagten Paritätssymbole (Ei,k) zur Fehlerkorrektur, die aus k Reed-Solomon-Codes gebildet sind, zu korrigieren, um somit korrigierte Informationspolynome Mi x) zu erhalten;
ein Quotientenpolynom Qi k) und ein Restpolynom Ri x) zu erzeugen, indem man das korrigierte Inforrnationspolynom Mi x) durch das Generatorpolynom G(x) teilt;
die korrigierten Informationspolynome Mi x) mit Exklusiv- Oder zu summieren und
zu erhalten; und
die Restpolynome Ri x) mit Exklusiv-Oder zu summieren und
zu erhalten; und
ein korrigiertes Restpolynom R x) zu erzeugen, indem man die Koeffizienten
der jeweiligen Grade eines wiedergegebenen Restpolynoms R(x), das sich aus der Wiedergabe des Restpolynoms R x) ergibt, korrigiert, indem man die Paritätssymbole (Ei,k) zur Fehlerkorrektur, die aus k Reed-Solomon-Codes gebildet sind, verwendet,
wobei eine Entscheidung, daß kein Fehler aufgetreten ist, getroffen wird, wenn R x) = R x) gilt, während
eine Entscheidung, daß mindestens ein Fehler aufgetreten ist, getroffen wird, wenn R x) ≠ R x) gilt.
2. Verfahren zum erfassen von Codefehlern nach Anspruch 1, wobei
eine Entscheidung, daß kein Fehler aufgetreten ist, getroffen wird,
gilt, während
eine Entscheidung, daß mindestens ein Fehler aufgetreten ist, getroffen wird,
wenn
gilt.
3. Verfahren zum Erfassen von Codefehlern, wobei, wenn die Symboldaten Di,j in der Form angeordnet werden, die n senkrechte (Spalten-)Symbole und m waagerechte (Reihen-)Symbole enthält,
ein Informationspolynom des i-ten Codeworts von n Mengen von Reed-Solomon-Codes, das aus m(104) Datensymbolen (Di,j) gebildet ist, von denen jedes aus h binären Bits gebildet ist, bezeichnet wird durch Mi(x) = Di,m-1xm-1 + + Di,0,
ein Generatorpolynom vom Grad t für t(4) Paritätssymbole (c&sub0;-c&sub3;) zur Fehlerüberprüfung, die aus h binären Bits gebildet sind, bezeichnet wird durch G(x),
ein Quotientenpolynom und ein Restpolynom, die man erhält, indem man das Informationspolynom Mi(x) durch das Generatorpolynom G(x) teilt, bezeichnet werden durch Qi(x) beziehungsweise Ri(x),
das Ergebnis einer Exklusiv-Oder-Summierung der Informationspolynome Mi(x) dargestellt wird durch
das Ergebnis einer Exklusiv-Oder-Summierung der n senkrecht angeordneten Datensymbole in den jeweiligen Spalten von der ersten Spalte bis zur (m&submin;1)-ten Spalte dargestellt wird durch
und in der m-ten Spalte das Ergebnis einer Exklusiv-Oder- Summierung von (n-t) senkrecht angeordneten Datensymbolen mit Ausnahme der t Paritätssymbole zur Fehlerüberprüfung dargestellt wird durch
das Ergebnis einer Exklusiv-Oder-Summierung der Restpolynome Ri(x) dargestellt wird durch
und
Terme (c&sub3;,c&sub2;,c&sub1;,c&sub0;) der jeweiligen Grade des Restpolynoms R(x), die man mit xt M(x)/G(x) erhält, in die Stelle i=0-ten Grades der Informationspolynome Mi(x) der Codewörter der n Mengen von Reed-Solomon-Codes in der Reihenfolge i=n-1, i=n-2 und so weiter vom Term 0-ten Grades der Reihe nach eingesetzt werden und (g-m)=k Paritätssymbole Ei,k zur Fehlerkorrektur zu insgesamt g Codewörtern hinzugefügt werden,
wobei das Verfahren dadurch gekennzeichnet ist, daß es während des Wiedergabevorgangs den folgenden Schritt umfaßt:
eine Exklusiv-Oder-Summierung der n wiedergegebenen senkrecht angeordneten Datensymbole in jeder der Spalten von der ersten Spalte bis zur (m-1)-ten Spalte wird ausgeführt wie dargestellt durch
und in der m-ten Spalte wird eine Exklusiv-Oder-Summierung von (n-t) wiedergegebenen senkrecht angeordneten Datensymbolen mit Ausnahme von t Paritätssymbolen zur Fehlerüberprüfung ausgeführt
wie dargestellt durch
ein wiedergegebenes aus insgesamt m Datensymbolen gebildetes Informationspolynom M x) als Ergebnis der obigen Exklusiv-Oder- Summierungen zu erzeugen;
das wiedergegebene Informationspolynom Mi x) mittels der Paritätssymbole (Ei,k) zur Fehlerkorrektur, die aus k Reed- Solomon-Codes gebildet sind, zu korrigieren, um ein korrigiertes Informationspolynom M(x) zu erzeugen, worin entsprechend einer Fehlerstelle und einem Fehlermuster, die man durch die in jeder waagerechten Reihe aus geführte Fehlerkorrektur unter Verwendung der Paritätssymbole (Ei,k) zur Fehlerkorrektur, die aus k Reed- Solomon-Codes gebildet sind, erhalten hat, eine Exklusiv-Oder- Summierung des besagten Fehlermusters und eines Datensymbols, das besagter Fehlerstelle in dem wiedergegebenen Informationspolynom M(x), das sich aus den obigen Exklusiv-Oder-Summierungen ergibt, ausgeführt wird, um eine Korrektur des wiedergegebenen Informationspolynoms M(x) zu bewirken;
ein Restpolynom R(x) zu erzeugen, indem man xt M x), bei dem M x) nach der Fehlerkorrektur verwendet wird, durch das Generatorpolynom G(x) teilt; und
Koeffizienten der jeweiligen Grade des Restpolynoms R x), das sich aus der Teilung des korrigierten Informationspolynoms M x) durch das Generatorpolynom G(x) beim Wiedergabevorgang ergibt, und eines Restpolynoms R x) t-ten Grades, das beim Aufnahmevorgang berechnet und in die m-te Spalte eingefügt wurde und beim Wiedergabevorgang korrigiert wurde, miteinander verglichen werden,
wobei eine Entscheidung, daß kein Fehler aufgetreten ist, getroffen wird, wenn in allen Koeffizientenpaaren Übereinstimmung besteht, während
eine Entscheidung, daß mindestens ein Fehler aufgetreten ist, getroffen wird, wenn in irgendeinem der Koeffizientenpaare keine Übereinstimmung besteht.
4. Verfahren zum Erfassen von Codefehlern, wobei, wenn die Symboldaten Di,f in der Form angeordnet werden, die n senkrechte (Spalten-)Symbole und m waagerechte (Reihen-)Symbole enthält,
ein Informationspolynom des i-ten Codeworts von n Mengen von Reed-Solomon-Codes, das aus m(104) Datensymbolen (Di,j) gebildet ist, von denen jedes aus h binären Bits gebildet ist, bezeichnet wird durch Mi(x) = Di,m-1xm-1 + + Di,0,
ein Generatorpolynom vom Grad t für t(4) Paritätssymbole(c&sub0;-c&sub3;) zur Fehlerüberprüfung, die aus h binären Bits gebildet sind, bezeichnet wird durch G(x),
ein Quotientenpolynom und ein Restpolynom, die man erhält, indem man das Informationspolynom Mi(x) durch das Generatorpolynom G(x) teilt, bezeichnet werden durch Qi(x) beziehungsweise Ri(x),
das Ergebnis einer Exklusiv-Oder-Summierung der Informationspolynome Mi(x) dargestellt wird durch
das Ergebnis einer Exklusiv-Oder-Summierung der n senkrecht angeordneten Datensymbole in den jeweiligen Spalten von der ersten Spalte bis zur (m-1)-ten Spalte dargestellt wird durch
und in der m-ten Spalte das Ergebnis einer Exklusiv-Oder- Summierung von (n-t) senkrecht angeordneten Datensymbolen mit Ausnahme der t Paritätssymbole zur Fehlerüberprüfung dargestellt wird durch
das Ergebnis einer Exklusiv-Oder-Summierung der Restpolynome Ri(x) dargestellt wird durch
und
Terme (c&sub3;,c&sub2;,c&sub1;,c&sub0;) der jeweiligen Grade des Restpolynoms R(x), die man mit xt M(x)/G(x) erhält, in die Stelle i=0-ten Grades der Informationspolynome Mi(x) der Codewörter der n Mengen von Reed-Solomon-Codes in der Reihenfolge i=n-1, i=n-2 und so weiter vom Term 0-ten Grades der Reihe nach eingesetzt werden und (g-m)=k Paritätssymbole Ei,k zur Fehlerkorrektur zu insgesamt g Codewörtern hinzugefügt werden,
wobei das Verfahren dadurch gekennzeichnet ist, daß es während des Wiedergabevorgangs den folgenden Schritt umfaßt:
ein wiedergegebenes aus m Datensymbolen in jeder Zeile gebildetes Informationspolynom Mi x) zu erzeugen;
das wiedergegebene Informationspolynom Mi x) mittels der Paritätssymbole (Ei,k) zur Fehlerkorrektur, die aus k Reed- Solomon-Codes gebildet sind, zu korrigieren, um ein korrigiertes Informationspolynom M(x) zu erzeugen, worin eine Exklusiv-Oder- Summierung zwischen den Daten der i-ten Reihe, die korrigiert worden sind, und den Daten der (i+1)-ten Reihe, die noch nicht korrigiert worden sind, beide in der gleichen Spalte, ausgeführt wird, um Daten zu erzeugen, die ein vorläufiges Informationspolynom bilden, und entsprechend einer Fehlerstelle und einem Fehlermuster, die man durch Fehlerkorrektur der Daten der (i+1)-ten Reihe erhalten hat, eine Exklusiv-Oder-Summierung des besagten Fehlermusters und Datensymbols des vorläufigen Informationspolynoms, das besagter Fehlerstelle entspricht, ausgeführt wird, um eine Korrektur des wiedergegebenen Informationspolynoms M(x) zu bewirken, wobei der obige Vorgang wiederholt wird; und
die Koeffizienten der jeweiligen Grade eines Restpolynoms R x), das sich aus der Teilung eines schließlich erhaltenen und korrigierten Informationspolynoms M x) durch das Generatorpolynom G(x) ergibt, und eines Restpolynoms R x), das beim Aufnahmevorgang berechnet und beim Wiedergabevorgang korrigiert worden ist, werden miteinander verglichen,
wobei eine Entscheidung, daß kein Fehler aufgetreten ist, getroffen wird, wenn in allen Koeffizientenpaaren Übereinstimmung besteht, während
eine Entscheidung, daß mindestens ein Fehler aufgetreten ist, getroffen wird, wenn in irgendeinem der Koeffizientenpaare keine Übereinstimmung besteht.
5. Verfahren zum Erfassen von Codefehlern, wobei, wenn die Symboldaten Di,j in der Form angeordnet werden, die n senkrechte (Spalten-)Symbole und in waagerechte (Reihen-)Symbole enthält,
ein Informationspolynom des i-ten Codeworts von n Mengen von Reed-Solomon-Codes, das aus m(104) Datensymbolen (Di,j) gebildet ist, von denen jedes aus h binären Bits gebildet ist, bezeichnet wird durch Mi(x) = Di,m-1xm-1 + + Di,0,
ein Generatorpolynom vom Grad t für t(4) Paritätssymbole(c&sub0;-c&sub3;) zur Fehlerüberprüfung, die aus h binären Bits gebildet sind, bezeichnet wird durch G(x),
ein Quotientenpolynom und ein Restpolynom, die man erhält, indem man das Informationspolynom Mi(x) durch das Generatorpolynom G(x) teilt, bezeichnet werden durch Qi(x) beziehungsweise Ri(x),
das Ergebnis einer Exklusiv-Oder-Summierung der Informationspolynome Mi(x) dargestellt wird durch
das Ergebnis einer Exklusiv-Oder-Summierung der n senkrecht angeordneten Datensymbole in den jeweiligen Spalten von der ersten Spalte bis zur (m-1)-ten Spalte dargestellt wird durch
und in der m-ten Spalte das Ergebnis einer Exklusiv-Oder- Summierung von (n-t) senkrecht angeordneten Datensymbolen mit Ausnahme der t Paritätssymbole zur Fehlerüberprüfung dargestellt wird durch
das Ergebnis einer Exklusiv-Oder-Summierung der Restpolynome Ri(x) dargestellt wird durch
und
Terme (c&sub3;,c&sub2;,c&sub1;,c&sub0;) der jeweiligen Grade des Restpolynoms R(x), die man mit xt M(x)/G(x) erhält, n die Stelle i=0-ten Grades der Inforinationspolynome Mi(x) der Codewörter der n Mengen von Reed-Solomon-Codes in der Reihenfolge i=n-1, i=n-2 und so weiter vom Term 0-ten Grades der Reihe nacn eingesetzt werden und (g-m)=k Paritätssymbole Ei,k zur Fehlerkorrektur zu insgesamt g Codewörtern hinzugefügt werden,
wobei das Verfahren dadurch gekennzeichnet ist, daß es während des Wiedergabevorgangs den folgenden Schritt umfaßt, wobei die Fehlerkorrektur am i-ten Codewort der Codewörter der n Mengen von Reed-Solomon-Codes, die aus in Datensymbolen und (g- m)=k Paritätssymbolen zur Fehlerkorrektur gebildet sind, vorgenommen wird:
ein korrigiertes Informationspolynom M1 x), das aus den m Datensymbolen gebildet ist, wird durch das Generatorpolynom G(x) geteilt, um ein Restpolynom R1i(x) zu erhalten, wobei dieser Vorgang (n-t)-mal wiederholt wird; und
ein Informationspolynom M2 x), das (m-1) Datensymbole mit Ausnahme eines der t-Symbole (c&sub3;,c&sub2;,c&sub1;,c&sub0;) als die Paritätssymbole, die Koeffizienten der jeweiligen Grade eines Restpolynoms R x), das eine beim Aufnahmevorgang berechnete und beim Wiedergabevorgang korrigierte Parität zur Fehlerüberprüfung ist, umfaßt, und ein aus dem h Bit breiten Binärwort "0" gebildetes Symbol durch das Generatorpolynom G(x) geteilt wird, um ein Restpolynom R2 x) zu erhalten, und dieser Verarbeitungsschritt t-mal wiederholt wird, um eine Exklusiv-Oder-Suinmierung der Restpolynome auszuführen, wie dargestellt durch
wobei eine Entscheidung, daß kein Fehler aufgetreten ist, getroffen wird, wenn R x) = R x) gilt, während
eine Entscheidung, daß mindestens ein Fehler aufgetreten ist, getroffen wird, wenn R x) ≠ R x) gilt.
6. Verfahren zum Erfassen von Codefehlern nach Anspruch 5, wobei, während eine laufende Verarbeitung einer Fehlerstelle und eines Fehlermusters ausgeführt wird, zum Zeitpunkt der Fehlerkorrektur des i-ten Codeworts ein aus in korrigierten Datensymbolen des (i-1)-ten Codeworts gebildetes Informationspolynom durch ein Generatorpolynom geteilt wird, um ein Restpolynom zu erhalten.
7. Verfahren zum Erfassen von Codefehlern, welches das Verfahren zum Erfassen von Codefehlern nach Anspruch 3 mit dem Verfahren zum Erfassen von Codefehlern nach Anspruch 5 verbindet, wobei eine Entscheidung, daß ein Fehler aufgetreten ist, getroffen wird, wenn das Auftreten eines Fehlers von irgendeinem der besagten Verfahren zum Erfassen von Codefehlern erfaßt wird.
8. Verfahren zum Erfassen von Codefehlern, welches das Verfahren zum Erfassen von Codefehlern nach Anspruch 3 mit dem Verfahren zum Erfassen von Codefehlern nach Anspruch 6 verbindet, wobei eine Entscheidung, daß ein Fehler aufgetreten ist, getroffen wird, wenn das Auftreten eines Fehlers von irgendeinem der besagten Verfahren zum Erfassen von Codefehlern erfaßt wird.
9. Verfahren zum Erfassen von Codefehlern, welches das Verfahren zum Erfassen von Codefehlern nach Anspruch 4 mit dem Verfahren zum Erfassen von Codefehlern nach Anspruch 5 verbindet, wobei eine Entscheidung, daß ein Fehler aufgetreten ist, getroffen wird, wenn das Auftreten eines Fehlers von irgendeinem der besagten Verfahren zum Erfassen von Codefehlern erfaßt wird.
10. Verfahren zum Erfassen von Codefehlern, welches das Verfahren zum Erfassen von Codefehlern nach Anspruch 4 mit dem Verfahren zum Erfassen von Codefehlern nach Anspruch 6 verbindet, wobei eine Entscheidung, daß ein Fehler aufgetreten ist, getroffen wird, wenn das Auftreten eines Fehlers von irgendeinem der besagten Verfahren zum Erfassen von Codefehlern erfaßt wird.
11. Verfahren zum Erfassen von Codefehlern nach Anspruch 1, wobei
das aus binären Bits gebildete Generatorpolynom vom Grad h t verwendet wird, und wenn ein Restpolynom ausgedrückt wird durch
Cht-1 xht-1 + Cht-2 xht-2 + ... + C&sub1; x + C&sub0;, dann werden (Cht-1, Cht-2,..., Cht-h),..., (Cht-h-1, Cht-h-2,..., Cht-2h), ..., (Ch, Ch-1,..., C&sub0;) als t Paritätssymbole zur Fehlerüberprüfung betrachtet, die jeweils aus h binären Bits gebildet sind.
12. Verfahren zum Erfassen von Codefehlern nach einem der Ansprüche 1 bis 10, wobei, wenn eine Entscheidung, daß ein Fehler aufgetreten ist, getroffen wird, ein Fehlercode (-Kennzeichen) an einen Verarbeitungscomputer (1) übertragen wird, ohne Daten dorthin zu übertragen.
DE88303249T 1987-04-14 1988-04-12 Verfahren zur Erfassung von Kodefehlern. Expired - Fee Related DE3887200T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP9134187A JPS63255876A (ja) 1987-04-14 1987-04-14 符号誤り検出方法
JP9252687A JPS63257966A (ja) 1987-04-15 1987-04-15 符号誤り検出方法

Publications (2)

Publication Number Publication Date
DE3887200D1 DE3887200D1 (de) 1994-03-03
DE3887200T2 true DE3887200T2 (de) 1994-05-05

Family

ID=26432793

Family Applications (1)

Application Number Title Priority Date Filing Date
DE88303249T Expired - Fee Related DE3887200T2 (de) 1987-04-14 1988-04-12 Verfahren zur Erfassung von Kodefehlern.

Country Status (3)

Country Link
US (1) US4949342A (de)
EP (1) EP0291167B1 (de)
DE (1) DE3887200T2 (de)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2695195B2 (ja) * 1988-09-02 1997-12-24 三菱電機株式会社 誤り訂正回路
JPH02105730A (ja) * 1988-10-14 1990-04-18 Sony Corp データ記録方法
US5140596A (en) * 1990-02-20 1992-08-18 Eastman Kodak Company High speed encoder for non-systematic codes
EP0473102B1 (de) * 1990-08-29 1995-11-22 Honeywell Inc. Datenübertragungssystem mit Kontrollsummerechenmittel
US5267248A (en) * 1990-12-24 1993-11-30 Eastman Kodak Company Method and apparatus for selecting an optimum error correction routine
JP2915583B2 (ja) * 1991-01-14 1999-07-05 キヤノン株式会社 画像記録装置
JPH05158722A (ja) * 1991-12-10 1993-06-25 Hitachi Ltd 誤り検出・訂正方式
JP2672916B2 (ja) * 1991-12-13 1997-11-05 富士通株式会社 アレイディスク装置のデータチェック方法
JPH05265939A (ja) * 1992-03-23 1993-10-15 Toshiba Corp データ転送装置
JP3259323B2 (ja) * 1992-04-13 2002-02-25 ソニー株式会社 デ・インターリーブ回路
EP0571019B1 (de) * 1992-05-19 2000-01-26 Koninklijke Philips Electronics N.V. Erweitertes fehlergeschütztes Kommunikationssystem
JP2821324B2 (ja) * 1992-11-04 1998-11-05 三菱電機株式会社 誤り訂正回路
JP3000811B2 (ja) * 1993-01-25 2000-01-17 日本電気株式会社 巡回符号化およびcrc装置とその処理方法
US5553088A (en) * 1993-07-02 1996-09-03 Deutsche Forschungsanstalt Fuer Luft- Und Raumfahrt E.V. Laser amplifying system
US5629949A (en) * 1993-09-21 1997-05-13 Cirrus Logic, Inc. Error correction verification method and apparatus using CRC check remainders
US5602857A (en) * 1993-09-21 1997-02-11 Cirrus Logic, Inc. Error correction method and apparatus
US5592498A (en) * 1994-09-16 1997-01-07 Cirrus Logic, Inc. CRC/EDC checker system
JPH08106733A (ja) * 1994-10-07 1996-04-23 Hitachi Ltd 情報記憶媒体利用システム
US5774648A (en) * 1996-10-02 1998-06-30 Mitsubishi Semiconductor Of America, Inc. Address generator for error control system
DE69731932T2 (de) * 1996-10-29 2006-02-16 International Business Machines Corp. Verfahren und Vorrichtung für zweistufige CRC-32-Berechnung
JP3430193B2 (ja) * 1997-01-20 2003-07-28 株式会社日立製作所 ディジタル信号再生装置及びディジタル信号再生方法
US6092231A (en) * 1998-06-12 2000-07-18 Qlogic Corporation Circuit and method for rapid checking of error correction codes using cyclic redundancy check
US6304993B1 (en) 1998-12-14 2001-10-16 Lsi Logic Corporation Method and apparatus for performing efficient reseeks in an optical storage device
EP1146650A1 (de) 2000-04-10 2001-10-17 Hewlett-Packard Company, A Delaware Corporation Fehlerkorrektur für Datenauzeichnung und Übertragung
EP1146651A1 (de) * 2000-04-10 2001-10-17 Hewlett-Packard Company Fehlerdetektion für Datenspeicherung und Übertragung
JP3752995B2 (ja) * 2000-09-27 2006-03-08 日本ビクター株式会社 情報記録再生装置
WO2003032159A2 (en) 2001-10-11 2003-04-17 Altera Corporation Error detection on programmable logic resources
US7047479B1 (en) 2002-02-04 2006-05-16 Cypress Semiconductor Corp. Parallel CRC formulation
US7111228B1 (en) 2002-05-07 2006-09-19 Marvell International Ltd. System and method for performing parity checks in disk storage system
US7114116B2 (en) * 2002-09-13 2006-09-26 Sun Microsystems, Inc. Accelerated Galois data integrity crosscheck system and method
US7287102B1 (en) 2003-01-31 2007-10-23 Marvell International Ltd. System and method for concatenating data
US7007114B1 (en) 2003-01-31 2006-02-28 Qlogic Corporation System and method for padding data blocks and/or removing padding from data blocks in storage controllers
US7870346B2 (en) 2003-03-10 2011-01-11 Marvell International Ltd. Servo controller interface module for embedded disk controllers
US7064915B1 (en) 2003-03-10 2006-06-20 Marvell International Ltd. Method and system for collecting servo field data from programmable devices in embedded disk controllers
US7219182B2 (en) 2003-03-10 2007-05-15 Marvell International Ltd. Method and system for using an external bus controller in embedded disk controllers
US7039771B1 (en) 2003-03-10 2006-05-02 Marvell International Ltd. Method and system for supporting multiple external serial port devices using a serial port controller in embedded disk controllers
US7492545B1 (en) 2003-03-10 2009-02-17 Marvell International Ltd. Method and system for automatic time base adjustment for disk drive servo controllers
US7526691B1 (en) 2003-10-15 2009-04-28 Marvell International Ltd. System and method for using TAP controllers
US7188296B1 (en) 2003-10-30 2007-03-06 Sun Microsystems, Inc. ECC for component failures using Galois fields
US7328377B1 (en) 2004-01-27 2008-02-05 Altera Corporation Error correction for programmable logic integrated circuits
US7139150B2 (en) 2004-02-10 2006-11-21 Marvell International Ltd. Method and system for head position control in embedded disk drive controllers
JP4135680B2 (ja) * 2004-05-31 2008-08-20 ソニー株式会社 半導体記憶装置および信号処理システム
US7120084B2 (en) 2004-06-14 2006-10-10 Marvell International Ltd. Integrated memory controller
US8166217B2 (en) 2004-06-28 2012-04-24 Marvell International Ltd. System and method for reading and writing data using storage controllers
US9201599B2 (en) 2004-07-19 2015-12-01 Marvell International Ltd. System and method for transmitting data in storage controllers
US8032674B2 (en) * 2004-07-19 2011-10-04 Marvell International Ltd. System and method for controlling buffer memory overflow and underflow conditions in storage controllers
US7757009B2 (en) 2004-07-19 2010-07-13 Marvell International Ltd. Storage controllers with dynamic WWN storage modules and methods for managing data and connections between a host and a storage device
US7386661B2 (en) 2004-10-13 2008-06-10 Marvell International Ltd. Power save module for storage controllers
US7240267B2 (en) 2004-11-08 2007-07-03 Marvell International Ltd. System and method for conducting BIST operations
US7802026B2 (en) * 2004-11-15 2010-09-21 Marvell International Ltd. Method and system for processing frames in storage controllers
US20060168499A1 (en) * 2005-01-27 2006-07-27 Edwards Jathan D Data archive verify software
US7609468B2 (en) * 2005-04-06 2009-10-27 Marvell International Ltd. Method and system for read gate timing control for storage controllers
JP2006323434A (ja) * 2005-05-17 2006-11-30 Nec Corp データ処理装置及びそのメモリ訂正方法
TW200643703A (en) * 2005-06-06 2006-12-16 Novatek Microelectronics Corp Architecture and method for error detection and correction for data transmitted in a network
US7634713B1 (en) * 2006-05-16 2009-12-15 Altera Corporation Error detection and location circuitry for configuration random-access memory
US7844886B1 (en) 2006-05-16 2010-11-30 Altera Corporation Parallel processing error detection and location circuitry for configuration random-access memory
JP2008159198A (ja) * 2006-12-26 2008-07-10 Nec Electronics Corp 誤り訂正装置及び記録再生装置
KR20140146275A (ko) * 2013-06-14 2014-12-26 삼성전자주식회사 불휘발성 메모리 장치를 제어하는 메모리 컨트롤러의 동작 방법 및 불휘발성 메모리 시스템
US9417957B2 (en) * 2013-10-04 2016-08-16 Infineon Technologies Ag Method of detecting bit errors, an electronic circuit for detecting bit errors, and a data storage device
TWI564904B (zh) * 2014-05-13 2017-01-01 群聯電子股份有限公司 資料處理方法、記憶體控制電路單元以及記憶體儲存裝置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3280247D1 (de) * 1981-04-16 1990-10-25 Sony Corp Kodierverfahren mit fehlerkorrektur.
US4532517A (en) * 1983-02-28 1985-07-30 Allied Corporation Cyclic redundancy check monitor for microwave landing system beam steering unit
US4564945A (en) * 1983-06-20 1986-01-14 Reference Technology, Inc. Error-correction code for digital data on video disc
US4633471A (en) * 1983-09-19 1986-12-30 Storage Technology Partners Ii Error detection and correction in an optical storage system
NL8400629A (nl) * 1984-02-29 1985-09-16 Philips Nv Snelle decodeur voor reed-solomon-codes, welke mede als encodeur te gebruiken is, alsmede opname/reproduktie-apparaat voorzien van zo een encodeur/decodeur.

Also Published As

Publication number Publication date
US4949342A (en) 1990-08-14
DE3887200D1 (de) 1994-03-03
EP0291167A3 (en) 1990-09-05
EP0291167A2 (de) 1988-11-17
EP0291167B1 (de) 1994-01-19

Similar Documents

Publication Publication Date Title
DE3887200T2 (de) Verfahren zur Erfassung von Kodefehlern.
DE3486408T2 (de) Verfahren und Vorrichtung zur Dekodierung eines fehlerkorrigierenden Kodes.
DE3789418T2 (de) Ausfallerkennung von Fehlerprüfungs- und -korrekturschaltung.
DE3124425C2 (de) Verfahren und Vorrichtung zu Fehlererkennung und Fehlerkorrektur
DE69129444T2 (de) On-Line-Wiederherstellung von Redundanz-Information in einem redundanten Matrixsystem
DE3854939T2 (de) Bch-fehlerkorrekturkode-dekodierungsverfahren in echtzeitbetrieb
DE69223694T2 (de) Kodierungs- und Dekodierungssystem zur Fehlerkorrektur
DE3852474T2 (de) Nachschlagetabellen verwendende Fehlerkorrektur.
DE3783253T2 (de) Fehlerkorrekturverfahren.
DE69123093T2 (de) Kanal zur Datenregenerierung in einer fehlertoleranten Plattenlaufwerkanordnung und Verfahren zur Fehlerkorrektur darin
DE112011100371B4 (de) Verfahren, Vorrichtung und Computerprogrammprodukt zum Decodieren eines Codeworts
DE3854791T2 (de) Reed-Solomon Code verwendendes Fehler-Korrektur-Verfahren
DE68920815T2 (de) Datenaufzeichnungsverfahren und -vorrichtung.
DE68920523T2 (de) Verfahren zur Korrektur von Mehr-Byte-Fehlern.
DE60015753T2 (de) System und verfahren zum schutz von daten und zur korrektur von bitfehlern folgend aus komponentenfehlern
DE3780517T2 (de) Methoden und geraet zum suchen einer zieladresse auf einem aufzeichnungsmedium.
DE3882223T2 (de) Ausgebreitete Fehlerkorrekturvorrichtung mit Einzel-Paket-Fehlerkorrektur und Doppel-Paket-Fehlerdetektionscoden.
DE69332556T2 (de) Verfahren zur Mehrfehlerkorrektur
DE68927164T2 (de) Verfahren zur Identifizierung schlechter Daten
DE112012000385T5 (de) Korrigieren von Auslöschungen in Speicher-Arrays
DE102015002918A1 (de) Fehlerkorrektur mit On-Demand-Paritätssektoren in magnetischen Datenspeichergeräten
DE2421112A1 (de) Speicheranordnung
DE19963683A1 (de) Architektur zum Decodieren von linearen Blockfehler-Korrekturcodes mit Soft Decision
DE69814465T2 (de) Verfahren und gerät zur datenspeicherung auf magnetischen medien, die fehlerkorrekturkodes enthalten
DE112016003638T5 (de) Auf eine Decodierung folgende Fehlerprüfung mit Diagnose für Produktcodes

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee