DE10344375B4 - 16/17-Trelliscode mit mehreren Eigenschaften - Google Patents

16/17-Trelliscode mit mehreren Eigenschaften Download PDF

Info

Publication number
DE10344375B4
DE10344375B4 DE10344375A DE10344375A DE10344375B4 DE 10344375 B4 DE10344375 B4 DE 10344375B4 DE 10344375 A DE10344375 A DE 10344375A DE 10344375 A DE10344375 A DE 10344375A DE 10344375 B4 DE10344375 B4 DE 10344375B4
Authority
DE
Germany
Prior art keywords
bit
codewords
bits
value
coordinate
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
DE10344375A
Other languages
English (en)
Other versions
DE10344375A1 (de
Inventor
William G. Thornton Bliss
Razmik San Jose Karabed
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of DE10344375A1 publication Critical patent/DE10344375A1/de
Application granted granted Critical
Publication of DE10344375B4 publication Critical patent/DE10344375B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
    • H03M5/145Conversion to or from block codes or representations thereof
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • G11B2020/144616 to 17 modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Vorrichtung, umfassend:
ein Codierungssystem, das 16-Bit-Eingangswörter zu 17-Bit-Codewörtern gerader Parität codieren kann, wobei die Codewörter mindestens 7 Einsen aufweisen, wobei die Codewörter eine erste Hälfte mit 8 Bit und eine zweite Hälfte mit 9 Bit umfassen, wobei die erste Hälfte mindestens 3 oder mehr Einsen umfaßt und wobei die zweite Hälfte mindestens 3 oder mehr Einsen umfaßt.

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Technisches Gebiet
  • Die vorliegende Erfindung betrifft ein Rate-16/17-Codierungssystem zum Codieren oder Decodieren von Daten, während die Ausbreitung etwaiger nach der Codierung und vor der Decodierung eingeführter Fehler möglichst gering gehalten wird und während bestimmte Biteigenschaften von durch das Codierungssystem codierten Wörtern sichergestellt werden.
  • 2. Allgemeiner Stand der Technik
  • Um während der Übermittlung von Daten eingeführte Fehler möglichst gering zu halten und um bestimmte Biteigenschaften der Daten, wenn sie in codierter Form zur Übermittlung vorliegen, sicherzustellen, codieren Systeme häufig Daten, bevor sie gefiltert oder zwischen zwei Punkten übermittelt werden. Die Codierung umfaßt in der Regel ein Transformieren der Daten und das Einführen zusätzlicher Informationen in die Daten, wobei die zusätzlichen Informationen zur Behebung oder Minimierung der Auswirkung von während der Übermittlung möglicherweise eingeführten Diskrepanzen verwendet werden können.
  • Ein Codierungsschema (oder Code) kann durch zwei entgegengesetzte Kenngrößen gemessen werden. Eine erste Kenngröße eines Codierungsschemas ist die Effizienz oder Rate des Codes, d. h. die Menge an zu codierenden Eingangsdaten im Verhältnis zu der Menge der Eingangsdaten plus hinzugefügten Codierungsinformationen. Wenn zum Beispiel ein Code einem 16-Bit-Eingangswort ein Codierungsbit hinzufügt und also ein 17-Bit-Codewort erzeugt, dann beträgt die Rate des Codes 16/17. Eine hohe Codierungsrate führt natürlicherweise zu einer effizienten Rate des Übermittelns der Eingangsdaten, da weniger Gesamtinformationen pro übermittelter Eingangsdateneinheit übermittelt werden müssen. Eine zweite Kenngröße eines Codierungsschemas ist der Grad, zu dem die zusätzlichen Codierungsinformationen eine Behebung oder Minimierung von durch Übermitteln eingeführten Fehlern ermöglichen. Es besteht eine Spannung zwischen diesen beiden Codierungskenngrößen. Höhere Fehlerbehebungsraten (wünschenswert) erfordern im allgemeinen weniger effiziente Codierungsraten (unerwünscht). Effizientere Codierungsraten (erwünscht) führen im allgemeinen zu niedrigeren Fehlerbehebungsraten (unerwünscht). Außerdem können eine niedrige Fehlerbehebung oder hohe Fehlerausbreitung auch einen komplizierteren äußeren Fehlerkorrekturcode erfordern. Es wird ein Codierungsschema mit einer niedrigen Fehlerausbreitungsrate und einer effizienten Codierungsrate benötigt, das verschiedene Vorteile in bezug auf die Bitgestalt eines Codeworts gerantiert, ohne einen komplizierten äußeren Fehlerkorrekturcode zu erfordern.
  • Ein Rate 16/17 Code ist beispielsweise in WIJNGAARDEN, A. J.; SOLJANIN, E.: A Combinatorial Technique for Constructing High-Rate MTR-RLL Codes. In IEEE Journal an Selected Areas in Communications, vol. 19, no. 4, April 2001, S. 582–588 beschrieben.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Ein Aspekt der vorliegenden Erfindung ist die Bereitstellung eines Rate-16/17-Codierungssystems, das verschiedene Kombinationen von Codeeigenschaften aufweist. Wenn bei einer ersten Ausführungsform des Rate-16/17-Codes ein Codewort H' die Gestalt (H1'H2') hat, wobei H1' die ersten 8 Bit des H'-Codeworts darstellt und H2' die letzten 9 Bit des H'-Codeworts darstellt, dann gilt folgendes:
    • 1) jedes Codewort H' hat mindestens 7 Bit mit einem Wert von 1;
    • 2) H1' hat mindestens 3 Bit mit einem Wert von 1;
    • 3) H2' hat mindestens 3 Bit mit einem Wert von 1;
    • 4) H1' enthält mindestens 1 Bit mit ungerader Koordinate mit einem Wert von 1 und mindestens 1 Bit mit gerader Koordinate mit einem Wert von 1;
    • 5) H2' enthält mindestens 1 Bit mit ungerader Koordinate mit einem Wert von 1 und mindestens 1 Bit mit gerader Koordinate mit einem Wert von 1; und
    • 6) in jeder Sequenz von einem oder mehreren Codewörtern liegen höchstens 11 aufeinanderfolgende Nullen vor und es liegen höchstens 7 aufeinanderfolgende abwechselnde Bit (jedes zweite Bit) in der Sequenz mit einem Wert von 0 vor.
  • Bei einer zweiten Ausführungsform des Rate-16/17-Codes gilt, wenn ein Codewort H'' die Gestalt (H1''H2'') hat, wobei H1'' die ersten 11 Bit von H'' und H2'' die letzten 6 Bit von H'' darstellt, folgendes:
    • 1) jedes Codewort H'' enthält mindestens 7 Bit mit einem Wert von 1;
    • 2) H1'' enthält mindestens 3 Bit mit einem Wert von 1;
    • 3) H2'' enthält mindestens 2 Bit mit einem Wert von 1;
    • 4) H2'' enthält mindestens 1 Bit mit ungerader Koordinate mit einem Wert von 1 und mindestens 1 Bit mit gerader Koordinate mit einem Wert von 1;
    • 5) in jeder Sequenz von einem oder mehreren Codewörtern liegen höchstens 11 aufeinanderfolgende Nullen vor und es liegen höchstens 10 aufeinanderfolgende abwechselnde Bit (jedes zweite Bit) in der Sequenz mit einem Wert von 0 vor; und
    • 6) Frühdecodierungseigenschaft (EDP) – H1'' kann für sich (ohne H2'') verwendet werden, um aus seinem Codewort das erste Byte (8 Bit) uncodierter Daten entsprechend dem Codewort von H2'' wieder herzustellen.
  • Diese und andere Aspekte und Vorteile, die später ersichtlich werden, sind in den Einzelheiten der Konstruktion und Funktionsweise verankert, die im folgenden ausführlicher beschrieben und beansprucht werden, wobei auf die beigefügten Zeichnungen Bezug genommen wird, die einen Teil hiervon bilden, wobei sich gleiche Bezugszahlen durchweg auf gleiche Teile beziehen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt ein System zur Benutzung der 16/17-Codes der vorliegenden Erfindung.
  • 2 zeigt eine Aufteilung 120 und Abbildungen 122 für die Ausführungsform des Codierers 100 mit dem H'-Codierer 124.
  • 3 zeigt Bedingungen 130 und inverse Abbildungen 132 für die Ausführungsform des Decodierers 118 mit dem H'-Decodierer 134.
  • 4 zeigt Tabellen 200 und 202, die die Aufteilung 120 des Eingangsraums oder Definitionsbereichs des H'-Codierers 124 beschreiben.
  • 59 zeigen die Abbildungen 122 (F1, F2, F3E, F3O, F4), die für den H'-Codierer 124 verwendet werden.
  • 59 zeigen außerdem die inversen Abbildungen 132 (F1I, F2I, F3EI, F3OI, F4I) die für den H'-Decodierer 134 verwendet werden.
  • 10 zeigt eine Tabelle 270 und Einzelheiten 272, die den H'-Codierer 124 beschreiben.
  • 11 zeigt eine Tabelle 280 und Einzelheiten 282, die den H'-Decodierer 134 beschreiben.
  • 12 zeigt eine Aufteilung 320 und Abbildungen 322 für die Ausführungsform des Codierers 100 mit dem H'' Codierer 324.
  • 13 zeigt Bedingungen 330 und inverse Abbildungen 332 für die Ausführungsform des Codierers 118 mit dem H''-Decodierer 334.
  • 14 zeigt Tabellen 340 und 342, die die Aufteilung 320 des Eingangsraums oder Definitionsbereichs des H''-Codierers 324 beschreiben.
  • 1518 zeigen die Abbildungen 322 (F1, F2, F3), die für den H''-Codierer 324 verwendet werden.
  • 1518 zeigen außerdem die inversen Abbildungen 332 (F1I, F2I, F3I), die für den H''-Decodierer 134 verwendet werden.
  • 19 zeigt eine Tabelle 350 und Einzelheiten 352, die den H''-Codierer 324 beschreiben.
  • 20A zeigt eine Tabelle 360 und Einzelheiten 362, die den H''-Decodierer 334 beschreiben.
  • 20B20F geben weitere Einzelheiten des H''-Decodierers 334.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • ÜBERSICHT ÜBER DAS SYSTEM BEI VERWENDUNG VON 16/17-CODE
  • 1 zeigt ein System zur Benutzung der 16/17-Codes der vorliegenden Erfindung. Das Codieren oder Vorübermitteln der Hälfte des Systems in 1 kann folgendermaßen zusammengefaßt werden: b c → d → x → y, wobei b zu c codiert, c zu d vorcodiert, d zu x gefiltert und x zu y gefiltert wird. Nicht alle Stufen sind unbedingt Teile des Codes oder sind für seine Funktionsweise erforderlich. Ein Codierer 100 empfängt 16 Bit Eingangsdaten (b1 ... b16), wobei (b1 ... b16) einen Vektor oder ein Wort von 16 Bit bedeutet. Der Code und seine Eigenschaften gelten auch dann, wenn die Eingangsdaten vor dem Empfang durch den Codierer 100 fehlerkorrekturcodiert wurden. Der Codierer 100 codiert die Eingangsdaten b und gibt 17 Bit codierte Daten (c1 ... c17) aus. Wie später besprochen wird, basiert das Codieren teilweise auf Zuständen des Vorcodierers 102. Der Vorcodierer 102 empfängt die codierte Ausgabe (c1 ... c17) des Codierers 100 und führt eine Exklusiv- oder- (XOR-)Zustandstransformation an der Sequenz (c1 ... c17) durch, um eine Ausgangssequenz (d1 ... d17) zu erzeugen. Ein erstes Kanalfilter 104 empfängt die Sequenz (d1 ... d17), führt eine weitere Zustandstransformation auf der Grundlage der Sequenz (d1 ... d17) durch und gibt die resultierende Sequenz (x1 ... x17) aus. Ein zweites Kanalfilter 106 empfängt die Sequenz (x1 ... x17), führt eine weitere Zustandstransformation auf der Grundlage der Sequenz (x1 ... x17) durch und gibt die resultierende Sequenz (y1 ... y17) aus. Man beachte, daß diese x- und y-Vektoren nicht mit den zur Beschreibung der F*-Abbildungsfunktionen (siehe unten), die von den H'- und H''-Codes verwendet werden, verwendeten x- und y-Vektoren in Zusammenhang stehen.
  • Die Daten y werden dann in einer Übermittlungsstufe 108 potentiellem Rauschen ausgesetzt. Die Übermittlungsstufe 108 kann die Symbole in der Sequenz (y1 ... y17) auf zufällige Weise stören und so die Sequenz (r1 ... r17) erzeugen. Für jedes Symbol y(i) in dem Wort (y1 ... y17) besteht eine gewisse Wahrscheinlichkeit (gewöhnlich zufällig), daß die Übermittlungsstufe 108 y(i) mit dem Rauschfehler n(i) stört. Das Ergebnis der durch den Viterbi-Detektor 110 empfangenen Übermittlung kann als Vektoraddition (y1 ... y17) + (n1 ... n17) = (r1 ... r17) oder als Symboladdition r(i) = y(i) + r(i) geschrieben werden. Die Sequenz (r1 ... r17) wird häufig als die Empfangssequenz bezeichnet.
  • Die Nachübermittlungshälfte oder Decodierungshälfte des Systems in 1 kann folgendermaßen zusammengefaßt werden: r → y' → x' → d' → c' → b', wobei r auf y' Viterbi-detektiert wird, y' auf x' gefiltert, x' auf d' gefiltert, d' auf c' invers-vorcodiert und c' auf b' decodiert wird.
  • Der Detektor 110 empfängt die möglicherweise gestörte Sequenz (r1 ... r17) und erzeugt (y'1 ... y'17), wobei es sich um eine Rekonstruktion von (y1 ... y17) mit möglicherweise einem oder mehreren falschen oder gestörten Bit handelt. Wenn irgendein wiederhergestelltes Symbol y'(i) falsch ist, d. h. y'(i) ≠ y(i) gilt, ist ein Kanal-Ausgabefehlerereignis aufgetreten. Kanalausgabefehler-Ereignisse sind in der Regel auf Rauschen n zurückzuführen.
  • Ein zweites Invers-Kanalfilter 112 (entsprechend dem zweiten Kanalfilter 106) empfängt y' und invers-filtert (y'1 ... y'17) zu (x'1 ... x'17). Ein erstes Invers-Kanalfilter 114 (entsprechend dem ersten Kanalfilter 104) empfängt x' und invers-filtert (x'1 ... x'17) zu (d'1 ... d'17).
  • Ein Invers-Vorcodierer 116 empfängt d' und transformiert (d'1 ... d'17) zu (c'1 ... c'17) durch Durchführen der Umkehrung des Vorcodierers 102. Wenn ein wiederhergestelltes Bit von d', zum Beispiel d'(j), von seinem entsprechenden ursprünglichen Bit d(j) verschieden ist, dann sagt man, daß ein Kanaleingangsfehlerereignis aufgetreten ist.
  • Ein Decodierer 118 empfängt (c'1 ... c'17), wendet eine Invers-Abbildung des Codierers 100 an und gibt eine Reproduktion b' = (b'1 ... b'16) der Eingangsdaten b = (b1 ... b16) aus, wobei bestimmte reproduzierte oder decodierte Bit in b' falsch sein können. Das heißt, für bestimmte ursprüngliche Bit b(i) und entsprechende reproduzierte Bit b'(i) ist es möglich, daß b'(i) ≠ b(i) gilt. Solche Fehler in den reproduzierten Daten b' sind im allgemeinen Ausbreitungen eines oder mehrerer in c' empfangener Fehler (entweder in entsprechenden Codewörtern oder Codewörtern in der Nähe) und werden im folgenden als Decodiererausgabefehler bezeichnet.
  • Obwohl sie als getrennte Einheiten gezeigt sind, kann die Funktionalität des Detektors 110, des zweiten Invers-Kanalfilters 112, des ersten Invers-Kanalfilters 114 und- des Invers-Vorcodierers 116 vielfältige Anordnungen aufweisen. Zum Beispiel kann der Viterbi-Detektor 110 so konstruiert werden, daß er die Funktionalität entweder beider Kanalfilter 112/114 oder eines dieser enthält. Der Detektor 110 kann auch so konstruiert werden, daß der den Invers-Vorcodierer 116 enthält.
  • Nachfolgend werden zwei 16/17-Codeausführungsformen besprochen. Die erste wird als der H'-Code und die zweite als der H''-Code bezeichnet.
  • WECHSELWIRKUNG ZWISCHEN CODIERER UND VORCODIERER
  • Dem Codierer 100 folgt ein 1/(1⨁D2)-Vorcodierer 102, der zum Zeitpunkt i einen Zustand s(i) = (s2(i), s1(i)), eine Eingabe c(i) und eine Ausgabe x(i) aufweist, wobei x(i) = c(i)⨁s2(i) gilt. Der Zustand s wird für den Zeitpunkt i + 1 folgendermaßen aktualisiert: s(i + 1) = (s2(i + 1), s1(i + 1)) mit s2(i + 1) = s1(i) und s1(i + 1) = x(i).
  • Die Ausgabe des Vorcodierers 102 durchläuft eine Kaskade von Kanalfiltern 104, 106 mit der Bezeichnung (1 – D2) und (a + bD + cD2). Am Ausgang der Filter 104, 106 werden y Bit durch additives Rauschen n verfälscht (r(i) = y(i) + n(i)). Der Term 1 – D2 hat die Eingabe d und die Ausgabe x und seine Ausgabe zum Zeitpunkt i lautet x(i) = d(i) – d(i – 2). Der Term a + bD + cD2 hat die Eingabe x und die Ausgabe y, wobei die Ausgabe zum Zeitpunkt i y(i) = a·x(i) + b·x(i – 1) + c·x(i – 2) ist.
  • BESPRECHUNG VON FEHLEREREIGNISSEN UND CODEEIGENSCHAFTEN
  • Ein Aspekt der vorliegenden Erfindung besteht darin, daß typische lange Kanalfehler verhindert werden.
  • Bei Codierungssystemen ist im allgemeinen folgendes wünschenswert:
    • (i) die Länge typischer Kanalfehler ist kurz,
    • (ii) der Decodierer breitet kurze Kanalfehler nicht in lange Decodiererfehler aus und
    • (iii) die Anzahl von von Null verschiedenen Werten über ein Codewort hinweg ist groß.
  • Wenn die Bedingungen (i) und (ii) nicht erfüllt sind, dann kann das System eine leistungsstärkere (äußere) Fehlerkorrekturcodierung der Eingangsdaten b erfordern. Dadurch erhöht sich die Komplexität des Systems. Bezüglich Bedingung (iii) sind die von Null verschiedenen Werte nützlich, da sie nützliche Informationen zur Wiederherstellung des Systemtakts liefern und mehr von Null verschiedene Werte zu einem genaueren Systemtakt führen.
  • In bezug auf die Bedingung (i) kann ein langer typischer Kanalfehler auftreten, wenn für ein bestimmtes Paar ganzer Zahlen k und M (M groß) und für x''ϵ{–1, 1} folgendes gilt: (x(k + 1), x (k + 2), ..., x(k + M) = x·(1-1 1-1 1-1 ...) oder (x(k + 2·1), x(k + 2·2), ..., x(k + 2M) = x·(1 1 1 1 1 1 ...)
  • Wie bereits erwähnt, werden hier zwei 16/17-Codeausführungsformen besprochen; der H'-Code und der H''-Code. Zur Besprechung werden Codewörter des H'-Codes in einen H1'-Teil und einen H2'-Teil aufgeteilt (ein H'-Codewort ist H1', verkettet mit H2'). Ähnlich sind Codewörter des H''-Codes eine Verkettung von H1'' mit H2''.
  • Die in der Kurzdarstellung erwähnte Eigenschaft (4) von H1' erfordert, daß es mindestens eine von Null verschiedene gerade Koordinate und mindestens eine von Null verschiedene ungerade Koordinate über den H1'-Teil des H'-Codes hinweg gibt. Die Eigenschaft (4) von H1' ist für den Code H' garantiert, aber nicht für den Code H''. Ähnlich garantiert sowohl der H'- als auch der H''-Code, daß es mindestens ein von Null verschiedenes Bit mit gerader Koordinate und mindestens ein von Null verschiedenes Bit mit ungerader Koordinate über die H2'- und H2''-Teile der Code hinweg gibt (siehe die Kurzdarstellung für die Eigenschaft (5) von H2' und die Eigenschaft (4) von H2''). Die Eigenschaften der von Null verschiedenen ungeraden/geraden Koordinaten tragen zu der Bedingung (i) bei, und die Eigenschaften (1)–(3) sowohl des H'-Codes als auch des H''-Codes treiben Bedingung (iii) voran. Da Codewörter 17 Bit lang sind, kann der Decodierer außerdem einen Kanalfehler nicht um mehr als 16 Bit ausbreiten. Deshalb erfüllen die Codes H' und H'' auch die Bedingung (ii). Schließlich seien 16 Bit (D1, D2) zu (H1'', H2'') codiert, wobei D1 und D2 jeweils 8 Bit betragen. Die Frühdecodierungseigenschaft (EDP) erfordert, daß D1 auf der Grundlage von H1'' alleine decodierbar ist. Die EDP unterstützt die Bedingung (ii) für den H''-Code, aber nicht für den H'-Code.
  • WIE DIE H'- UND H''-CODES ERLÄUTERT WERDEN
  • In 1 ist der Codierer 100 als b auf c abbildend und der Decodierer 118 als c' auf b' abbildend gezeigt. Die 220F und die folgende Besprechung beschreiben jedoch die H'- und H''-Aufführungsformen des Codierers 100 und des Decodierers 118 unabhängig von 1. Die H'- und H''-Codierer werden generisch über eine Abbildung zwischen einem Vektor x und einem Vektor y beschrieben. Im Fall des H'-Codes beschreiben 2, 3, 10 und 11 H' über x = (x1 ... x16) und y = (y1 ... y17). Im Fall des H''-Codes beschreiben 12, 13 und 20A20F H'' über x = (I1 ... I8 r1 ... r8) und y = (c1 ... c17).
  • Im Kontext von 1 entpricht die Eingabe b des Codierers 100 der Eingabe x des H'- and des H''-Codierers, und die Ausgabe c des Codierers 100 entspricht der Ausgabe y des H'- bzw. des H''-Codierers. Analoges gilt für den Decodierer 118 und die Ausführungsformen mit dem H'- und dem H''-Decodierer. Zum Verständnis der folgenden Besprechung sei darauf hingewiesen, daß der Umfang einiger zur Beschreibung der verschiedenen Abbildungen verwendeten Variablen lokal sein kann.
  • DER H'-CODIERER UND -DECODIERER
  • 2 zeigt eine Aufteilung 120 und Abbildungen 122 für die Ausführungsform des Codierers 100 mit dem H'-Codierer 124. Der H'-Codierer 124 bildet 16-Bit-Eingangswörter x auf 17-Bit-Codewörter y ab. Der H'-Codierer 124 verwendet die Aufteilung 120, um zu bestimmen, wie x auf y abgebildet werden soll, wobei an dem so bestimmten Abbilden eine der Abbildungen 122 beteiligt sein kann.
  • 3 zeigt die Bedingungen 130 und die Invers-Abbildungen 132 für die Ausführungsform des Decodierers 118 mit dem H'-Decodierer 134. Der H'-Decodierer 134 bildet 17-Bit-Codewörter y auf 16-Bit-Ausgangswörter x ab. Der H'-Decodierer 134 verwendet die Bedingungen 130, um zu bestimmen, wie y auf x abgebildet wird, wobei an dem so bestimmten Abbilden eine der Invers-Abbildungen 132 beteiligt sein kann.
  • 4 zeigt Tabellen 200 und 202, die die Aufteilung 120 des Eingangsraums oder Definitionsbereichs des H'-Codierers 124 beschreiben. 5-9 zeigen die Abbildungen 122 (F1, F2, F3E, F3O, F4), die für den H'- Codierer 124 verwendet werden. 5-9 zeigen außerdem die Invers-Abbildungen 132 (F1I, F2I, F3EI, F3OI, F4I), die für den H'-Decodierer 134 verwendet werden. Zum Beispiel ist F1I die Umkehrung von F1.
  • 10 zeigt eine Tabelle 270 und Einzelheiten 272, die den H'-Codierer 124 beschreiben. Für eine bestimmte Eingabe x des H'-Codierers 124 befindet sich x in einer der Aufteilungen R1–R10 und x wird wie in der entsprechenden Zeile in Tabelle 270 beschrieben auf y abgebildet. Die Einzelheiten 272 erläutern weiter, wie die Bit y1 bis y17 bestimmt werden. Wenn zum Beispiel ein bestimmtes x in die Menge R6 fällt, dann wird x wie in Zeile 6 von Tabelle 270 gezeigt auf y abgebildet. In diesem Beispiel entsprechen (y3 ... y8) in Zeile 6 (h1'' ... h6'') in den Einzelheiten 272. Die Einzelheiten 272 zeigen, daß der Teil mit (h1'' ... h6'') = (y3 ... y8) von y durch die Abbildung F2 bestimmt wird.
  • 11 zeigt eine Tabelle 280 und Einzelheiten 282, die den H'-Decodierer 134 beschreiben. Für eine bestimmte Eingabe y des H'-Decodierers 134 ist eine der Bedingungen in der zweiten Spalte von Tabelle 280 für y erfüllt und y wird wie in der entsprechenden Zeile in Tabelle 280 auf x abgebildet. Die Einzelheiten 282 erläutern weiter, wie die Bit x1 bis x16 bestimmt werden. Wenn zum Beispiel ein bestimmtes y(y17 = 1 & y1y2y3y4 = 0010) erfüllt, dann ist die Bedingung in Zeile 2 erfüllt und y bildet wie in Zeile 2 von Tabelle 280 gezeigt auf x ab. In diesem Beispiel entspricht (x1 ... x8) in Zeile 2 (A1' ... A8') in den Einzelheiten 282. Die Einzelheiten 282 zeigen, daß der Teil mit (A1' ... A8') = (x1 ... x8) von x durch die inverse Abbildung F3EI bestimmt wird.
  • DER H''-CODIERER UND -DECODIERER
  • 12 zeigt eine Aufteilung 320 und Abbildungen 322 für die Ausführungsform des Codierers 100 mit dem H''-Codierer 324. Der H''-Codierer 324 bildet 16-Bit-Eingangswörter x auf 17-Bit-Codewörter y ab. Der H''-Codierer 324 bestimmt mit der Aufteilung 320, wie x auf y abgebildet werden soll, wobei an dem so bestimmten Abbilden eine oder mehrere der Abbildungen 322 beteiligt sein können.
  • 13 zeigt die Bedingungen 330 und die Invers-Abbildungen 332 für die Ausführungsform des Codierers 118 mit dem H''-Decodierer 334. Der H''-Decodierer 334 bildet 17-Bit-Codewörter y auf 16-Bit-Ausgangswörter x ab. Der H''-Decodierer 334 bestimmt mit den Bedingungen 330, wie y auf x abgebildet werden soll, wobei an dem so bestimmten Abbilden eine der Invers-Abbildungen 332 beteiligt sein kann.
  • 14 zeigt Tabellen 340 und 342, die die Aufteilung 320 des Eingangsraums oder Definitionsbereichs des H''-Codierers 324 beschreiben. 1518 zeigen die Abbildungen 322 (F1, F2, F3), die für den H''-Codierer 324 verwendet werden. Außerdem zeigen 1518 die Invers-Abbildungen 332 (F1I, F2I, F3I), die für den H''-Decodierer 134 verwendet werden.
  • 19 zeigt eine Tabelle 350 und Einzelheiten 352, die den H''-Codierer 324 beschreiben. Für eine bestimmte Eingabe x des H''-Codierers 324 befindet sich x in einer der Aufteilungen 330 („für x in", 2. Sp.), und x wird wie in der entsprechenden Zeile in der Tabelle 350 beschrieben auf y abgebildet. Die Einzelheiten 352 erläutern weiter, wie die Bit c1 bis c17 bestimmt werden. Wenn zum Beispiel ein bestimmtes x in eine Menge R4 fällt, dann wird x wie in Zeile 3 von Tabelle 350 gezeigt auf y abgebildet. In diesem Beispiel entspricht ein Teil von y (c1 ... c8) in Zeile 1 (P1 P2 P3 P4 Q1 Q2 Q3 Q4) in den Einzelheiten 352. Die Einzelheiten 352 zeigen, daß der Teil mit (P1 P2 P3 P4 Q1 Q2 Q3 Q4) = (c1 ... c8) von y durch die Abbildung F2, die auf die ersten 10 Bit von x (11 ... 18 r1 r2) angewandt wird, bestimmt wird.
  • 20A zeigt eine Tabelle 360 und Einzelheiten 362, die den H''-Decodierer 334 beschreiben. Für eine bestimmte Eingabe y des H''-Decodierers 334 ist eine der Bedingungen in der zweiten Spalte („If") von Tabelle 360 für y erfüllt und y wird wie in der entsprechenden Zeile in Tabelle 360 beschrieben auf x abgebildet. Die Einzelheiten 362 erläutern weiter, wie die Bit (11 ... 18 r1 ... r8) von x bestimmt werden. Wenn zum Beispiel die zweite Bedingung in Tabelle 360 erfüllt ist, dann ist die Bedingung in Zeile 2 erfüllt und y wird wie in Zeile 2 von Tabelle 360 gezeigt auf x abgebildet. 20B20F zeigen weitere Einzelheiten des H''-Decodierers 334.
  • Es wird angemerkt, daß die in den Figuren gezeigten Tabellen, Einzelheiten usw. nur zur Beschreibung der H'- und H''-Codes verwendet werden. Tatsächliche Ausführungsformen oder Implementierungen der Codes erfordern keine Tabellen an sich (obwohl sie verwendet werden können). Die beschriebenen Codes können mit Schaltkreisen, Software usw. gebildet werden, die alle die mathematischen Konzepte der Codes implementieren können.
  • SCHLUSSFOLGERUNG
  • Die vielen Merkmale und Vorteile der Erfindung sind aus der ausführlichen Beschreibung ersichtlich und so wird beabsichtigt, daß die angefügten Ansprüche alle solchen Merkmale und Vorteile der Erfindung abdecken, die in den wahren Geist und Schutzumfang der Erfindung fallen. Da Fachleuten ohne weiteres zahlreiche Modifikationen und Änderungen einfallen werden, ist es nicht erwünscht, die Erfindung auf die genaue hier dargestellte und beschriebene Konstruktion und Funktionsweise zu beschränken, und folglich können alle geeigneten Modifikationen und Äquivalente verwendet werden und fallen dabei in den Schutzumfang der Erfindung.

Claims (27)

  1. Vorrichtung, umfassend: ein Codierungssystem, das 16-Bit-Eingangswörter zu 17-Bit-Codewörtern gerader Parität codieren kann, wobei die Codewörter mindestens 7 Einsen aufweisen, wobei die Codewörter eine erste Hälfte mit 8 Bit und eine zweite Hälfte mit 9 Bit umfassen, wobei die erste Hälfte mindestens 3 oder mehr Einsen umfaßt und wobei die zweite Hälfte mindestens 3 oder mehr Einsen umfaßt.
  2. Vorrichtung nach Anspruch 1, wobei die erste Hälfte und die zweite Hälfte der Codewörter jeweils Bit mit ungerader Koordinate und Bit mit gerader Koordinate umfassen und wobei mindestens ein Bit mit ungerader Koordinate jeder Hälfte einen Wert von eins aufweist und mindestens ein Bit mit gerader Koordinate jeder Hälfte einen Wert von eins aufweist.
  3. Vorrichtung nach Anspruch 1, wobei jede Sequenz von einem oder mehreren Codewörtern höchestens 11 aufeinanderfolgende Bit mit einem Wert von Null aufweist.
  4. Vorrichtung nach Anspruch 1, wobei für jede Teilsequenz bestehend aus jedem zweiten Bit einer Sekwenz von einem oder mehreren Codewörtern gilt, dass die Teilsequenz höchstens 7 aufeinanderfolgen Bit mit einem Nullwert aufweist.
  5. Vorrichtung, umfassend: ein Codierungssystem, das 16-Bit-Eingangswörter zu 17-Bit-Codewörtern gerader Parität codieren kann, wobei die Codewörter mindestens 7 Einsen aufweisen, wobei die Codewörter eine erste Hälfte mit 11 Bit und eine zweite Hälfte mit 6 Bit umfassen, wobei die erste Hälfte mindestens 3 oder mehr Einsen umfaßt und wobei die zweite Hälfte mindestens 2 oder mehr Einsen umfaßt.
  6. Vorrichtung nach Anspruch 5, wobei die zweite Hälfte der Codewörter Bit mit ungerader Koordinate und Bit mit gerader Koordinate umfaßt und wobei mindestens ein Bit mit ungerader Koordinate der zweiten Hälfte einen Wert von eins aufweist und mindestens ein Bit mit gerader Koordinate der zweiten Hälfte einen Wert von eins aufweist.
  7. Vorrichtung nach Anspruch 5, wobei jede Sequenz von einem oder mehreren Codewörtern höchstens 11 aufeinanderfolgende Bit mit einem Wert von Null aufweist.
  8. Vorrichtung nach Anspruch 5, wobei für jede Teilsequenz bestehend aus jedem zweiten Bit einer Sekwenz von einem oder mehreren Codewörtern gilt, dass die Teilsequenz höchstens 10 aufeinanderfolgende Bit mit einem Nullwert aufweist.
  9. Vorrichtung nach Anspruch 5, wobei die ersten 8 Bit der Eingangswörter auf der Grundlage nur der ersten Hälfte des Codewortes decodiert werden können.
  10. Verfahren mit dem folgenden Schritt: Codieren von 16-Bit-Eingangswörtern zu 17-Bit-Codewörtern mit gerader Parität, wobei die Codewörter mindestens 7 Einsen aufweisen, wobei die Codewörter eine erste Hälfte mit 8 Bit und eine zweite Hälfte mit 9 Bit umfassen, wobei die erste Hälfte mindestens 3 oder mehr Einsen umfaßt und wobei die zweite Hälfte mindestens 3 oder mehr Einsen umfaßt.
  11. Verfahren nach Anspruch 10, wobei die erste Hälfte und die zweite Hälfte der Codewörter jeweils Bit mit ungerader Koordinate und Bit mit gerader Koordinate umfassen und wobei mindestens ein Bit mit ungerader Koordinate jeder Hälfte einen Wert von eins aufweist und mindestens ein Bit mit gerader Koordinate jeder Hälfte einen Wert von eins aufweist.
  12. Verfahren nach Anspruch 10, wobei jede Sequenz von einem oder mehreren Codewörtern höchstens 11 aufeinanderfolgende Bit mit einem Wert von Null aufweist.
  13. Verfahren nach Anspruch 10, wobei für jede Teilsequenz bestehend aus jedem zweiten Bit einer Sekwenz von einem oder mehreren Codewörtern gilt, dass die Teilsequenz höchstens 7 aufeinanderfolgende Bit mit einem Nullwert aufweist.
  14. Verfahren mit dem folgenden Schritt: Kodieren von 16-Bit-Eingangswörtern zu 17-Bit-Codewörtern mit gerader Parität, wobei die Codewörter mindestens 7 Einsen aufweisen, wobei die Codewörter eine erste Hälfte mit 11 Bit und eine zweite Hälfte mit 6 Bit umfassen, wobei die erste Hälfte mindestens 3 oder mehr Einsen umfaßt und wobei die zweite Hälfte mindestens 2 oder mehr Einsen umfaßt.
  15. Verfahren nach Anspruch 14, wobei die zweite Hälfte der Codewörter Bit mit ungerader Koordinate und Bit mit gerader Koordinate umfaßt und wobei mindestens ein Bit mit ungerader Koordinate der zweiten Hälfte einen Wert von eins aufweist und mindestens ein Bit mit gerader Koordinate der zweiten Hälfte einen Wert von eins aufweist.
  16. Verfahren nach Anspruch 14, wobei jede Sequenz von einem oder mehreren Codewörtern höchstens 11 aufeinanderfolgende Bit mit einem Wert von Null aufweist.
  17. Verfahren nach Anspruch 14, wobei für jede Teilsequenz bestehend aus jedem zweiten Bit einer Sekwenz von einem oder mehreren Codewörtern gilt, dass die Teilsequenz höchstens 10 aufeinanderfolgende Bit mit einem Nullwert aufweist.
  18. Verfahren nach Anspruch 14, wobei die ersten 8 Bit der Eingangswörter auf der Grundlage nur der ersten Hälfte des Codewortes decodiert werden können.
  19. Computerlesbare Speicherung, die es einem Computer ermöglicht, einen Prozeß durchzuführen, wobei der Prozeß folgendes umfaßt: Kodieren von 16-Bit-Eingangswörtern zu 17-Bit-Codewörtern mit gerader Parität, wobei die Codewörter mindestens 7 Einsen aufweisen, wobei die Codewörter eine erste Hälfte mit 8 Bit und eine zweite Hälfte mit 9 Bit umfassen, wobei die erste Hälfte mindestens 3 oder mehr Einsen umfaßt und wobei die zweite Hälfte mindestens 3 oder mehr Einsen umfaßt.
  20. Computerlesbare Speicherung nach Anspruch 19, wobei die erste Hälfte und die zweite Hälfte der Codewörter jeweils Bit mit ungerader Koordinate und Bit mit gerader Koordinate umfassen und wobei mindestens ein Bit mit ungerader Koordinate jeder Hälfte einen Wert von eins aufweist und mindestens ein Bit mit gerader Koordinate jeder Hälfte einen Wert von eins aufweist.
  21. Computerlesbare Speicherung nach Anspruch 19, wobei jede Sequenz von einem oder mehreren Codewörtern höchstens 11 aufeinanderfolgende Bit mit einem Wert von Null aufweist.
  22. Computerlesbare Speicherung nach Anspruch 19, wobei für jede Teilsequenz bestehend aus jedem zweiten Bit einer Sekwenz von einem oder mehreren Codewörtern gilt, dass die Teilsequenz höchstens 7 aufeinanderfolgende Bit mit einem Nullwert aufweist.
  23. Computerlesbare Speicherung, die es einem Computer ermöglicht, einen Prozeß durchzuführen, wobei der Prozeß folgendes umfaßt: Codieren von 16-Bit-Eingangswörtern zu 17-Bit-Codewörtern mit gerader Parität, wobei die Codewörter mindestens 7 Einsen aufweisen, wobei die Codewörter eine erste Hälfte mit 11 Bit und eine zweite Hälfte mit 6 Bit umfassen, wobei die erste Hälfte mindestens 3 oder mehr Einsen umfaßt und wobei die zweite Hälfte mindestens 2 oder mehr Einsen umfaßt.
  24. Computerlesbare Speicherung nach Anspruch 23, wobei die zweite Hälfte der Codewörter Bit mit ungerader Koordinate und Bit mit gerader Koordinate umfaßt und wobei mindestens ein Bit mit ungerader Koordinate der zweiten Hälfte einen Wert von eins aufweist und mindestens ein Bit mit gerader Koordinate der zweiten Hälfte einen Wert von eins aufweist.
  25. Computerlesbare Speicherung nach Anspruch 23, wobei jede Sequenz von einem oder mehreren Codewörtern höchstens 11 aufeinanderfolgende Bit mit einem Wert von Null aufweist.
  26. Computerlesbare Speicherung nach Anspruch 23, wobei für jede Teilsequenz bestehend aus jedem zweiten Bit einer Sekwenz von einem oder mehreren Codewörtern gilt, dass die Teilsequenz höchstens 10 aufeinanderfolgende Bit mit einem Nullwert aufweist.
  27. Computerlesbare Speicherung nach Anspruch 23, wobei die ersten 8 Bit der Eingangswörter auf der Grundlage nur der ersten Hälfte des Codeworts decodiert werden können.
DE10344375A 2002-09-25 2003-09-24 16/17-Trelliscode mit mehreren Eigenschaften Expired - Fee Related DE10344375B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/253,993 2002-09-25
US10/253,993 US6753797B2 (en) 2002-09-25 2002-09-25 Multiproperty 16/17 trellis code
US10/253993 2002-09-25

Publications (2)

Publication Number Publication Date
DE10344375A1 DE10344375A1 (de) 2004-04-22
DE10344375B4 true DE10344375B4 (de) 2009-03-19

Family

ID=31993261

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10344375A Expired - Fee Related DE10344375B4 (de) 2002-09-25 2003-09-24 16/17-Trelliscode mit mehreren Eigenschaften

Country Status (3)

Country Link
US (1) US6753797B2 (de)
CN (1) CN1320459C (de)
DE (1) DE10344375B4 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7137056B2 (en) * 2002-09-25 2006-11-14 Infineon Technologies North America Corp. Low error propagation rate 32/34 trellis code
JP4675721B2 (ja) * 2005-08-31 2011-04-27 三菱電機株式会社 パラレルプリコーダ回路
JP4597820B2 (ja) * 2005-09-05 2010-12-15 三菱電機株式会社 パラレルプリコーダ回路
US8276038B2 (en) * 2007-08-03 2012-09-25 International Business Machines Corporation Data storage systems

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL131488A0 (en) * 1997-12-22 2001-01-28 Koninkl Philips Electronics Nv Device for encoding/decoding n-bit source words into corresponding m-bit channel words and vice versa
US6081210A (en) * 1998-05-13 2000-06-27 Texas Instruments Incorporated Sliding block (rate 8/9) trellis code for magnetic recording
BR0106089A (pt) * 2000-04-25 2002-03-05 Koninkl Philips Electronics Nv Dispositivo e processo para codificar uma corrente de bits de dados, portadora de registros, e, dispositivo para decodificar uma corrente de bits de dados

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
WIJNGAARDEN, A.J.; SOLJANIN, E.: A Combinatorial T echnique for Constructing High-Rate MTR-RLL Codes. In: IEEE Journal on Selected Areas in Communicati ons, Vol. 19, No. 4, April 2001, S. 582-588
WIJNGAARDEN, A.J.; SOLJANIN, E.: A Combinatorial Technique for Constructing High-Rate MTR-RLL Codes. In: IEEE Journal on Selected Areas in Communications, Vol. 19, No. 4, April 2001, S. 582-588 *

Also Published As

Publication number Publication date
CN1320459C (zh) 2007-06-06
US20040056784A1 (en) 2004-03-25
US6753797B2 (en) 2004-06-22
CN1577288A (zh) 2005-02-09
DE10344375A1 (de) 2004-04-22

Similar Documents

Publication Publication Date Title
EP0276753B1 (de) Verfahren und Vorrichtung zur digitalen Nachrichtenübertragung und/oder -aufzeichnung und -wiedergabe
DE19503571B4 (de) Bildkompressionsverfahren und -vorrichtung unter Verwendung eines bedingten Viergruppenbaumunterteilungssystems
DE69632879T2 (de) Kodeübertragung mit lokaler Parität
DE2844216C2 (de) Erzeugung von Synchronisier-Bitfolgemustern bei Code mit begrenzter Lauflänge
EP0069325A2 (de) Verfahren zur Wandlung der Zeilenzahl
DE3131741A1 (de) Verfahren und vorrichtung zur uebertragung eines digitalsignals
DE3039688A1 (de) Verfahren und vorrichtung zum codieren eines digitalsignals mit minimaler gleichkomponente
DE3613343A1 (de) Hybrid-codierer
DE2320422A1 (de) Verfahren zur fehlererkennung
DE3239607A1 (de) Verfahren und schaltungsanordnung zum codieren bzw. decodieren eines binaeren digitalsignales
DE2503107A1 (de) Korrekturcode fuer impulsfehler
DE2828219A1 (de) Verfahren zur aufzeichnung und wiedergabe digitaler daten auf magnetspeicher
DE10344375B4 (de) 16/17-Trelliscode mit mehreren Eigenschaften
DE3113397A1 (de) Pulscodemodulationssystem
EP1631091B1 (de) Kodierung mehrerer binärer Eingangsdatenworte in ein Ausgangskodewort
DE19963687B4 (de) Modulations-Codierer und -Decodierer
DE10010238C2 (de) Verfahren zum Speichern von Pfadmetriken in einem Viterbi-Decodierer
DE3049293C2 (de)
DE69530046T2 (de) Zusammenpassende Spektral-Nullkodes für unvollständige Antwortkanäle
DE102013016694B4 (de) Codieren und Decodieren redundanter Bits zum Vornehmen von Anpassungen für Speicherzellen mit Haftfehlern
DE10344340B4 (de) 31/34 Trelliscode mit geringer Fehlerausbreitung
DE2460654A1 (de) Verfahren und einrichtung zum codieren eines gegebenen informationssignals
EP0529724B1 (de) Synchronisationsverfahren für einen lauflängenbegrenzten (1,7)-Code und Schaltungsanordnung
EP0558922B1 (de) Verfahren zur Verbesserung der Bewegungsschätzung in bewegten Bildsequenzen in Halbpelgenauigkeit
DE3417262C2 (de)

Legal Events

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