DE60014395T2 - Verfahren und vorrichtung zur kodierung mit mindestens zwei parallelen kodierern - Google Patents

Verfahren und vorrichtung zur kodierung mit mindestens zwei parallelen kodierern Download PDF

Info

Publication number
DE60014395T2
DE60014395T2 DE60014395T DE60014395T DE60014395T2 DE 60014395 T2 DE60014395 T2 DE 60014395T2 DE 60014395 T DE60014395 T DE 60014395T DE 60014395 T DE60014395 T DE 60014395T DE 60014395 T2 DE60014395 T2 DE 60014395T2
Authority
DE
Germany
Prior art keywords
codewords
permutation
coding
binary
source
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 - Lifetime
Application number
DE60014395T
Other languages
English (en)
Other versions
DE60014395D1 (de
Inventor
Claude Berrou
Alain Glavieux
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.)
Groupe Des Ecoles De Telecommunications-Etablissement Enst De Bretagne
GROUPE ECOLES TELECOMM
Orange SA
Original Assignee
Groupe Des Ecoles De Telecommunications-Etablissement Enst De Bretagne
GROUPE ECOLES TELECOMM
France Telecom SA
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 Groupe Des Ecoles De Telecommunications-Etablissement Enst De Bretagne, GROUPE ECOLES TELECOMM, France Telecom SA filed Critical Groupe Des Ecoles De Telecommunications-Etablissement Enst De Bretagne
Application granted granted Critical
Publication of DE60014395D1 publication Critical patent/DE60014395D1/de
Publication of DE60014395T2 publication Critical patent/DE60014395T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2903Methods and arrangements specifically for encoding, e.g. parallel encoding of a plurality of constituent 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/27Coding, 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 using interleaving techniques
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding

Description

  • Die Erfindung betrifft den Bereich des Codierens digitaler Daten aus einer Quellendatenfolge oder mehreren Quellendatenfolgen, die übertragen oder gesendet werden sollen, insbesondere in Gegenwart von Übergangsrauschen sowie das Decodieren der derart übertragenen codierten Daten.
  • Genauer betrifft die Erfindung eine Verbesserung des insbesondere unter dem Namen „Turbo-Codes" (eingetragene Marke) bekannten Codierungsverfahrens und insbesondere den davon eingesetzten Permutationsvorgang.
  • Das allgemeine Prinzip dieser Art von Codierung wird insbesondere im französischen Patent Nr. FR-91 05280 mit dem Titel „Procede et dispositif de codage a au moins deux codages en parallele et permutation amelioree, et procede et dispositif de decodage correspondants" (Codierverfahren zum Korrigieren von Fehlern mit mindestens zwei systematischen parallelen Faltungscodes, iteratives Decodierverfahren, Decodiermodul und entsprechende Decoder) sowie im Artikel von C. Berrou und A. Glavieux „Near Optimum Error Correcting Coding and Decoding (Nahezu optimales Codieren und Decodieren von Fehlerkorrekturen): Turbo Codes" (IEEE Transactions on Communications, Band 44, Nr. 10. Seiten 1261–1271, Oktober 1996) vorgestellt.
  • Nach dieser Technik wird der Einsatz einer Codierung mit „paralleler Verkettung" vorgeschlagen, die sich auf die Verwendung von mindestens zwei elementaren Codierern stützt. Somit kann man beim Decodieren über zwei Redundanzsymbole verfügen, die aus zwei verschiedenen Codierern stammen. Zwischen den zwei Elementarcodierern werden Permutationsmittel eingesetzt, damit jedes dieser Elementardecoder von denselben Quellendigitaldaten gespeist wird, wobei diese jedoch in verschiedenen Reihenfolgen genommen werden.
  • Eine Verbesserung dieser Art von Technik, die dem Blockcodieren dienen soll (Produktcodes), ist in der Patentschrift FR-93 13858 beschrieben, mit der Überschrift „Turbodecodierung der Produktcodes" sowie im Artikel von O. Aitsab und R. Pyndiah „Performance of Reed Solomon block turbo code" (Leistung des Reed Solomon Block-Tubo-Code) (IEEE Globecom'96 Konferenz, Band 1/3, Seiten 121–125, London, November 1996).
  • Die Leistungen der faltenden „Turbocodes" mit Parallelverkettung hängen einerseits zu einem relativ großen Teil von der eingesetzten Permutationsfunktion ab. Man stellt nämlich fest, dass eine nicht optimierte Wahl dieser Funktion zu einem Verfall des „Turbo-Codes" führen kann, wobei insbesondere eine Änderung in der Neigung der Fehlerquotenkurve unterhalb von 10–5 und 10–6 in Erscheinung tritt.
  • Dieses Phänomen tritt umso stärker auf, je höher die Leistung des betrachteten „Turbo-Codes" ist und je kürzer die zu codierenden Informationsblöcke sind.
  • Bei den verschiedenen erwähnten Dokumenten wurden Permutationsfunktionen vorgeschlagen, die den Aufbau von „Turbo-Codes" mit guten Leistungen ermöglichen.
  • Im Patent FR-91 05280 sind die faltenden Elementarcodes binär, so dass die Permutationen direkt an den Binärelementen stattfinden. Allgemeiner wurde eine Vielzahl von Lösungen im Rahmen der dritten Generation von Mobiltelefonen (UMTS) vorgeschlagen, um die Permutationsfunktion in einem „Turbo-Code" mit Parallelverkettung zu realisieren, der binäre Faltungscodes einsetzt.
  • Im Patent FR-93 13858 sowie im Artikel von C. Berrou und M. Jezequel „Non binary convolutional codes for turbo coding" (Nicht binäre Faltungscodes für das Turbo-Codieren) (Electronics Letters, Band 35, Nr. 1, Seiten 39–40, Januar 1999) wird ebenfalls die Verwendung von nicht binären Faltungscodes zum Aufbau eines „Turbo-Codes" vorgeschlagen. In diesem Falle wirkt die Permutationsfunktion also auf die binären Wörter (Bitmengen, beispielsweise Paare oder allgemeiner n-Paare).
  • Allgemein muss die Permutationsfunktion selbstverständlich in der Lage sein, eine gute Streuung der aus der Informationsquelle kommenden und die verschiedenen parallelen Coder speisenden Elemente sicherzustellen, um eine starke Zufallserscheinung zu erzeugen. Es müssen demnach die Abstandseigenschaften des zusammengesetzten Coders optimiert werden, insbesondere muss der Mindestabstand maximiert werden.
  • So bezweckt die Erfindung insbesondere das Bereitstellen eines Codierungsverfahrens mit paralleler Verkettung („Turbo-Codes"), die auf der Grundlage nicht binärer Faltungscodes aufgebaut sind und bessere Permutationseigenschaften als die der bekannten „Turbo-Codes" aufweisen.
  • Genauer gesagt besteht ein Zweck der Erfindung im Bereitstellen eines Codierungsverfahrens mit paralleler Verkettung, das die Ferneigenschaften des zusammengesetzten Codes (der „Turbo-Code") optimiert, d.h. insbesondere, dass der Minimalabstand maximiert wird.
  • Noch ein Zweck der Erfindung ist das Bereitstellen eines Codierungsverfahrens, das eine starke Zufallserscheinung bei den die verschiedenen Elementarcoder speisenden Daten erzeugt, wobei der Streuungseffekt selbstverständlich nicht geändert werden soll.
  • Ferner soll die Erfindung ein Codierungsverfahren liefern, das in der Praxis leicht umzusetzen und preiswert ist, beispielsweise in Form eines integrierten Schaltkreises.
  • Ein noch weiterer Zweck der Erfindung ist das Bereitstellen eines Codierungsverfahrens, das bei einer großen Zahl von Anwendungen einsetzbar ist.
  • Diese Ziele sowie andere, die im Nachhinein deutlicher erscheinen werden, erreicht die Erfindung mit Hilfe eines Codierungsverfahrens für digitale Quellendaten, bei dem mindestens zwei elementare Codierschritte parallel eingesetzt werden, die jeweils die Menge der besagten Quellendaten berücksichtigen und einen Permutationsschritt umfassen, der die Reihenfolge der Berücksichtigung der besagten Quellendaten zwischen den elementaren Codierschritten ändert, wobei die Quellendaten als Quellencodewörter organisiert sind, welche jeweils n binäre Quellenelemente umfassen, wobei n größer oder gleich 2 ist. Nach der Erfindung umfasst der Permutationsschritt:
    • – einen umkehrbaren Änderungsschritt des Inhaltes von mindestens einigen der Quellencodewörter, welche geänderte Codewörter liefert;
    • – einen Schritt der Permutation der Reihenfolge der besagten Quellencodewörter oder der geänderten Codewörter.
  • Anders ausgedrückt schlägt die Erfindung vor, während des Permutationsschritts auf zwei Ebenen zu wirken (der visuelle Ausdruck „Permutation" wird hier beibehalten, wobei jedoch die Ausdrücke „Durchmischung" oder „Verarbeitung" vorteilhaft zum Einsatz kommen könnten, weil es, wie man später sehen wird, möglich ist, den Wert einiger Binärelemente zu ändern). Man wirkt nämlich einerseits auf die Reihenfolge der Codewörter (oder der Vielfachen von n) und andererseits auf den Inhalt der letzteren ein (Änderungen innerhalb der Wörter).
  • Es sei darauf hingewiesen, dass die Permutation der Wörter sowohl vor als auch nach der Verarbeitung der Codewörter an sich erfolgen kann.
  • Nach einer vorteilhaften Ausführung setzt der Permutationsschritt der Rangfolge der Codewörter eine gleichmäßige Permutation ein, die auf einen Block von N aufeinander folgenden Codewörtern angewandt wird.
  • Die Anwendung dieser Technik ist sehr einfach und ermöglicht das Erreichen einer nahezu optimalen Effektivität.
  • Vorteilhafterweise lässt sie sich mit Hilfe eines N Codewörter enthaltenden Speichers anwenden, die in der Reihenfolge 0 bis N-1 eingeführt und in der Reihenfolge j = P·i erneut gelesen werden, wobei i zwischen 0 und N-1 variiert und P und N untereinander Primzahlen sind.
  • Bevorzugterweise liegt in diesem Falle P in der Nähe von √N.
  • Nach einem bevorzugten Ansatz der Erfindung wird die Änderung des Inhaltes nur auf einigen der Codewörter angewandt. So wird beispielsweise die Änderung des Inhaltes auf jedes zweite Codewort angewandt.
  • Vorteilhafterweise umfasst die Änderung des Inhaltes eine Permutation der Rangfolge der binären Elemente innerhalb des betrachteten Codeworts.
  • Nach einer weiteren vorteilhaften Betrachtungsweise umfasst die Änderung des Inhaltes den Austausch von mindestens einem der binären Quellenelemente des betrachteten Codewortes gegen eine Kombination von mindestens zwei der besagten binären Quellenelemente.
  • Die besagten Codewörter können insbesondere Paare sein. Es kann sich jedoch allgemeiner selbstverständlich um n-Fache handeln, unabhängig vom Wert von n, wobei n größer oder gleich 2 ist.
  • Wenn es sich um Paare handelt, können die Kombinationen dem Quellenpaar {a, b} mindestens eines der nachfolgenden geänderten Paare zuordnen:
    • – (a, b)
    • – (b, a)
    • – (a+b, b)
    • – (b, a+b)
    • – (a, a+b)
    • – (a+b, a)
  • Nach einer Ausführung der Erfindung setzt mindestens einer der elementaren Codierungsschritte einen rekursiven und systematischen Faltungscode mit natürlicher Leistung bzw. Coderate n/(n+m) ein, der n binären Eingängen n+m binäre Ausgänge mit n>2 und m>1 zuordnet.
  • Vorteilhafterweise ordnet das Verfahren einem Codewort von n Binäreingängen, n + m1 + m2 Binärausgänge zu, die folgendes umfassen:
    • – die n binären Eingänge;
    • – m1 Binärausgänge, die von einem ersten elementaren Codierungsschritt geliefert werden;
    • – m2 Binärausgänge, die von einem zweiten elementaren Codierungsschritt geliefert werden.
  • Es kann ein Markierungsschritt vorgesehen werden.
  • Die Erfindung betrifft selbstverständlich auch die entsprechenden Codiervorrichtungen. Eine derartige Vorrichtung setzt Permutationsmittel ein, die folgendes umfassen:
    • – Mittel zur reversiblen Änderung des Inhaltes von mindestens einigen der besagten Quellencodewörter, welche geänderte Codewörter liefern;
    • – Mittel zum Permutieren der Reihenfolge der Codewörter, der Quellenwörter oder der geänderten Wörter.
  • Ferner betrifft die Erfindung die Vorrichtungen zum Senden oder Übertragen von nach dem oben beschriebenen Verfahren codierten Daten.
  • Nach einer weiteren Betrachtungsweise betrifft die Erfindung die entsprechenden Verfahren und Vorrichtungen zum Decodieren. Das Verfahren zum Decodieren umfasst, symmetrisch zur Codierung, die folgenden Schritte:
    • – Änderung des Inhaltes von mindestens einigen der empfangenen Codewörter, wobei die Änderung invers zu der beim Codieren eingesetzten ist;
    • – Permutation der Reihenfolge der empfangenen Codewörter, um diese in ihre ursprüngliche Reihenfolge zurück zu setzen.
  • Weitere Eigenschaften und Vorteile der Erfindung werden beim Lesen der nachfolgenden Beschreibung einer bevorzugten Ausführung der Erfindung deutlich, die nur als veranschaulichendes Beispiel ohne einschränkende Wirkung vorgestellt wird sowie:
    • – beim Betrachten der einzigen beigefügten Figur, die das allgemeine Prinzip einer Vorrichtung zum Codieren nach der Erfindung zeigt.
  • Die Erfindung schlägt demnach eine neue Permutationsfunktion für einen Codierer mit paralleler Verkettung der Elementarcodes vor, die, mit faltenden, rekursiven, systematischen, nicht binären Elementarcodes mit einer natürlichen Leistung n/(n + m) mit n ≥ 2 und n ≥ 1 assoziiert, Leistungen ermöglicht, die in der Nähe der theoretischen Grenze liegen, unabhängig von der für den „Turbo-Code" betrachteten Leistung und von der Länge der zu codierenden Informationsblöcke.
  • Es wird daran erinnert, dass im Rahmen der Erfindung die betrachteten Elementarcodes notwendigerweise nicht binär sind, d.h., dass sie n ≥ 2 binäre Eingänge und n + m binäre Ausgänge mit m ≥ 1, aufweisen.
  • Ein Beispiel für eine Vorrichtung zum Codieren nach der Erfindung ist in 1 dargestellt. Das entsprechende Codierverfahren wird direkt davon abgeleitet.
  • An diesem Beispiel betrachtet man einen Code, der auf der Grundlage der parallelen Verkettung zweier Elementarcodes C1 und C2, 11 und 12 konstruiert wird, wobei diese Elementarcodes identisch, faltend, rekursiv, systematisch und nicht binär sind, eine Leistung von 2/3 (n = 2 Binäreingänge: die Codewörter sind Paare) aufweisen und durch eine Permutationsfunktion 13 getrennt sind.
  • Es wird ferner angenommen, dass der zu codierende Datenblock aus p binären Daten gebildet ist, wobei p gerade ist oder, in gleichwertiger Weise, aus N = p/2 binären Paaren gebildet ist.
  • Ist die zusammengesetzte Codiervorrichtung nicht markiert, so beträgt ihre Codierleistung 1/2. Es kann selbstverständlich eine Markierung 14 in klassischer Weise eingesetzt werden.
  • Wie bereits erwähnt, beruht nach der Erfindung die Permutationsfunktion 13 auf einer doppelten Operation:
    • – eine Permutation 131 der Reihenfolge der Codewörter (im Beispiel Paare, aber allgemeiner jedes n-Faches);
    • – eine Verarbeitung 132 von mindestens einigen der Datenblöcke.
  • Die N aus der Informationsquelle 15 kommenden Codes speisen den elementaren Codierer C1 und, nach der Permutation 13, den Codierer C2.
  • Eine Permutationsfunktion muss es möglich machen, eine gute Streuung der aus der Informationsquelle 15 kommenden Paare (allgemeiner n-Fache) sicher zu stellen und einen starken Unordnungseffekt zu erzeugen. Eines der angepeilten Ziele ist nämlich das Optimieren der Entfernungseigenschaften der zusammengesetzten Codiervorrichtung, und insbesondere das Maximieren ihres Mindestabstandes.
  • Bezüglich des Streuungskriteriums, handelt es sich darum, so weit wie möglich nach der Permutation 13 die benachbarten Paare (allgemeiner die n-Fache) am Ausgang der Informationsquelle 15 zu trennen. Dieses Ziel kann in nahezu optimaler Weise durch Anwendung einer gleichmäßigen Permutation 131 auf der Höhe der Paare (allgemeiner der n-Fachen) erreicht werden.
  • Diese gleichmäßige Permutation 131 lässt sich realisieren, indem die N binären Paare (allgemeiner die n-Fache) gleichmäßig in einem Speicher 1311 mit N Positionen (Positionen 0 bis N-1) eingetragen werden und indem diese N Paare nacheinander bei den Adressen j mit der folgenden Regel gelesen (1312) werden: J = pi Modulo Ni = 0, 1 ... (N-1) (1)
  • Um die N Positionen des Speichers 1311 nur ein einziges Mal zu durchlaufen, müssen P und N untereinander Primzahlen sein (d.h., sie dürfen nur 1 als gemeinsamen Teiler haben). Ferner, um einen optimalen Abstand zwischen benachbarten Paaren (allgemeiner zwischen den n-Fachen) am Ausgang der Quelle 15 zu gewährleisten, muss der Parameter P bevorzugterweise in der Nähe von √N liegen.
  • Um diesen Aspekt zu veranschaulichen betrachtet man beispielsweise einen Block von N = 9 zu codierenden binären Paaren. P ist bei 4 festgelegt (4 liegt neben √9 = 3). Man erhält dann:
  • Figure 00090001
  • So werden die N vom Codierer C2 zu codierenden Paare jeweils an den Adressen 0, 4, 8, 3, 7, 2, 6, 1, 5 gelesen.
  • Um den Unordnungseffekt zu erzeugen, ohne den Dispersionseffekt zu beeinträchtigen, unterwirft man ferner die Binärdaten von (mindestens) einigen Paaren (allgemeine von einigen n-Fachen) einer Verarbeitung 132 oder einer geeigneten Änderung.
  • Eine einfache und sehr effektive Verarbeitung 132 besteht darin, die binären Daten innerhalb eines Paares in periodischer Weise zu permutieren, bevor man sie dem elementaren Coder C2 beispielsweise nach der folgenden Regel vorlegt:
    sei {ak, bk} das an der Position k, k = 0, 1,... (N-1) im Speicher gespeicherte binäre Paar. Für die ungeraden Werte der Variablen i werden die binären Daten des an der Adresse j nach der Regel (1) gelesenen Paares permutiert, bevor sie dem Coder C2 vorgelegt werden.
  • Nimmt man das vorhergehende Beispiel wieder auf, so werden die N = 9 vom Coder C2 zu codierenden Paare dann in der folgenden Reihenfolge vorgestellt:
    {a0, b0}, {b4, a4}, {a8, b8}, {b3, a3}, {a7, b7}, {b2, a2}, {a6, b6}, {b1, a1}, {a5, b5}
  • Die Paare, die einer Permutation unterzogen wurden, sind fett dargestellt.
  • Es sind selbstverständlich andere Operationen als die Permutation der binären Daten eines Paares möglich, so beispielsweise:
    {ak, bk} ⇒ {ak + bk, bk} oder {ak, bk} ⇒ {bk, ak + bk} Modulo 2
    oder
    {ak, bk} ⇒ {ak, ak + bk} oder {ak, bk} ⇒ {ak + bk, ak} Modulo 2
  • Selbstverständlich ist die auf die binären Daten eines jeden Paares durchgeführte Operation umkehrbar. Kennt man beispielsweise {ak + bk, bk}, so erhält man ak durch Addieren der Komponenten {ak + bk} und {bk}.
  • Es können eventuell mehrere Operationen kumuliert und/oder alternativ verwendet werden.
  • In dem in 1 dargestellten Beispiel erfolgt die Verarbeitung 132 des Datenblocks nach der Permutation 131 dieser selben Blöcke. Es ist jedoch eindeutig, dass die Reihenfolge dieser Operationen umgekehrt werden kann. Es ist möglich, zuerst die Verarbeitung über Codewörter (n-Fache) und dann deren Permutation durchzuführen.
  • Dieses Permutationsverfahren ermöglicht demnach die Konstruktion der „Turbo-Codes", ausgehend von einer parallelen Verkettung von faltenden, rekursiven und systematischen Codes mit der natürlichen Leistung n/(n+m); n ≥ 2; m ≥ 1.
  • Die Entfernungseigenschaften und insbesondere die minimale Entfernung dieser „Turbo-Codes" sind größer als die der bekannten faltenden „Turbo-Codes". Dieses Ergebnis hebt sich um so stärker heraus, als die Codierleistung des „Turbo-Codes" groß ist und die zu codierenden Blöcke binärer Daten kurz sind.
  • Diese Permutationsfunktion ist demnach besonders geeignet zum Konstruieren von faltenden „Turbo-Codes" in Blöcken, zum Codieren von Sendungen, bei denen die Daten nach kurzen Rastern strukturiert sind (beispielsweise ATM).
  • Das Decodieren setzt die inversen Operationen als die beim Codieren eingesetzten ein, nämlich:
    • – eine Änderung des Inhaltes der empfangenen Codewörter (inverse Änderung), um die ursprünglichen Codewörter wiederzugeben (außerhalb der vom Sendekanal verursachten Störungen);
    • – eine Permutation der Reihenfolge der empfangenen Codewörter, um diese in die ursprüngliche Reihenfolge zurück zu setzen.
  • Vorteilhafterweise ist das allgemeine Prinzip der vollständigen Codierung ähnlich zu dem im bereits erwähnten Patent FR – 91 05 280 beschriebenen. Die unter den Elementardecodern ausgetauschten elementaren Informationen (als von außen wirkende Informationen bezeichnet) sind jedoch selbstverständlich nicht mehr binäre Werte sondern Codewörter oder n-Fache.
  • Die von außen wirkende Information wird demnach durch 2n Größen getragen, entsprechend den für die n-Fachen möglichen 2n Fällen. Im Falle von Paaren tauschen die elementaren Decoder, wie bereits vorher beschrieben, die Daten vier zu vier untereinander aus.

Claims (18)

  1. Verfahren zum Codieren digitaler Quellendaten, bei dem mindestens zwei Schritte (11, 12) elementarer Codierung parallel zueinander eingesetzt werden, die jeweils die Gesamtheit der Quellendaten (15) berücksichtigen, und das einen Permutationsschritt (13) umfasst, der die Rangordnung der Berücksichtigung der Quellendaten zwischen den elementaren Codierungsschritten (11, 12) ändert, wobei die Quellendaten (15) als Quellenwortcodes organisiert sind, die jeweils n binäre Quellenelemente umfassen, wobei n größer oder gleich 2 ist, dadurch gekennzeichnet, dass der Permutationsschritt (13) folgendes umfasst: – einen Schritt (132) zur reversiblen Änderung des Inhaltes von mindestens einigen der Quellencodewörter, der geänderte Codewörter liefert; – einen Permutationsschritt (131) der Rangfolge der Quellencodewörter bzw. der geänderten Codewörter.
  2. Codierungsverfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Permutationsschritt (131) der Rangfolge der Codewörter eine gleichmäßige Permutation einsetzt, die auf einen Block von N aufeinander folgende Codewörter angewandt wird.
  3. Codierungsverfahren nach Anspruch 2, dadurch gekennzeichnet, dass die gleichmäßige Permutation einen Speicher (1311) anwendet, der N Codewörter enthält, welche in der Reihenfolge 0 bis N-1 eingeführt und in der Reihenfolge j = P·i erneut gelesen werden, wobei i zwischen 0 und N-1 variiert und P und N untereinander Primzahlen sind.
  4. Codierungsverfahren nach Anspruch 3, dadurch gekennzeichnet, dass P nahe bei √N liegt.
  5. Codierungsverfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die Änderung (132) des Inhaltes nur auf einige der Codewörter angewandt wird.
  6. Codierungsverfahren nach Anspruch 5, dadurch gekennzeichnet, dass die Änderung (132) des Inhaltes auf jedem zweiten Codewort angewandt wird.
  7. Codierungsverfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass die Änderung (132) des Inhaltes eine Permutation der Rangfolge der binären Elemente innerhalb des betrachteten Codeworts umfasst.
  8. Codierungsverfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass die Änderung (132) des Inhaltes den Austausch von mindestens eines der binären Quellenelementen des betrachteten Codewortes gegen eine Kombination von mindestens zwei der besagten binären Quellenelemente umfasst.
  9. Codierungsverfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass die Codewörter Paare binärer Elemente sind.
  10. Codierungsverfahren nach Anspruch 9, dadurch gekennzeichnet, dass der Änderungsschritt (132) des Inhaltes dem Quellenpaar {a, b} mindestens eines der nachfolgenden geänderten Paare zuordnet: – (a, b) – (b, a) – (a+b, b) – (b, a+b) – (a, a+b) – (a+b, a)
  11. Codierungsverfahren nach einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, dass mindestens einer der elementaren Codierungsschritte (11, 12) einen rekursiven und systematischen Faltungscode mit natürlicher Leistung bzw. Coderate n/(n+m) einsetzt, der n binären Eingängen n+m binäre Ausgänge mit n>2 und m>1 zuordnet.
  12. Codierungsverfahren nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, dass es einem Codewort von n Binäreingängen, n + m1 + m2 Binärausgänge zuordnet, die folgendes umfassen: – die n binären Eingänge; – m1 Binärausgänge, die von einem ersten elementaren Codierungsschritt geliefert werden; – m2 Binärausgänge, die von einem zweiten elementaren Codierungsschritt geliefert werden.
  13. Codierungsverfahren nach einem der Ansprüche 1 bis 12, dadurch gekennzeichnet, dass es einen Markierungsschritt (14) anwendet.
  14. Vorrichtung zum Codieren von digitalen Quellendaten, die mindestens zwei Elementarcodierer (11, 12) umfasst, die jeweils die Gesamtheit der Quellendaten (15) berücksichtigen sowie Permutationsmittel (13), welche die Reihenfolge der Berücksichtigung der Quellendaten durch einen jeden der Elementarcodierer ändert, wobei die Quellendaten als Quellencodewörter organisiert sind, die jeweils n binäre Quellenelemente umfassen, mit n größer oder gleich 2, dadurch gekennzeichnet, dass die Permutationselemente (13) folgendes umfassen: – reversible Änderungsmittel (132) des Inhaltes von mindestens einigen der Quellenwörter, welche geänderte Codewörter liefern; – Permutationsmittel (131) der Reihenfolge der Quellencodewörter oder der geänderten Codewörter.
  15. Verfahren zum Decodieren von digitalen Daten, die als Codewörter organisiert sind, wobei das Decodierverfahren mindestens zwei elementare Decoder einsetzt, welche Codewörter untereinander austauschen, wobei das Decodierverfahren mindestens einen Permutationsschritt umfasst, der die Reihenfolge der Berücksichtigung der unter den elementaren Decoder ausgetauschten Codewörter umfasst, wobei die besagten Codewörter als n-Fache organisiert sind, mit n größer oder gleich 2, dadurch gekennzeichnet, dass der mindestens eine Permutationsschritt folgendes umfasst: – einen umkehrbaren Änderungsschritt des Inhaltes von mindesten einigen der Codewörter und, – einen Schritt zur Permutation der Reihenfolge der Codewörter oder der geänderten Codewörter.
  16. Verfahren zum Decodieren von digitalen Daten, die als Codewörter organisiert sind, wobei das Decodierverfahren mindestens zwei elementare Decoder einsetzt, welche Codewörter untereinander austauschen und Permutationsmittel umfassen, welche die Reihenfolge der Berücksichtigung der zwischen den elementaren Decodern ausgetauschten Codewörter ändern, wobei die Codewörter als n-Fache organisiert sind, mit n größer oder gleich 2, dadurch gekennzeichnet, dass die Permutationsmittel folgendes umfassen: – umkehrbare Änderungsmittel des Inhaltes von mindestens einigen der Codewörter und, – Permutationsmittel der Reihenfolge der Codewörter oder der geänderten Codewörter.
  17. Vorrichtung zum Senden digitaler Daten, die eine Codiervorrichtung nach Anspruch 14 aufweist.
  18. System zum Codieren/Decodieren von digitalen Daten, dadurch gekennzeichnet, dass es mindestens eine Codiervorrichtung nach Anspruch 14 und mindestens eine Decodiervorrichtung nach Anspruch 16 aufweist.
DE60014395T 1999-07-21 2000-07-19 Verfahren und vorrichtung zur kodierung mit mindestens zwei parallelen kodierern Expired - Lifetime DE60014395T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR9909631A FR2796780B1 (fr) 1999-07-21 1999-07-21 Procede et dispositif de codage a au moins deux codages en parallele et permutation amelioree, et procede et dispositif de decodage correspondants
FR9909631 1999-07-21
PCT/FR2000/002080 WO2001006661A1 (fr) 1999-07-21 2000-07-19 Procede et dispositif de codage a au moins deux codages en parallele et permutation amelioree, et procede et dispositif de decodage correspondants

Publications (2)

Publication Number Publication Date
DE60014395D1 DE60014395D1 (de) 2004-11-04
DE60014395T2 true DE60014395T2 (de) 2006-02-23

Family

ID=9548486

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60014395T Expired - Lifetime DE60014395T2 (de) 1999-07-21 2000-07-19 Verfahren und vorrichtung zur kodierung mit mindestens zwei parallelen kodierern

Country Status (10)

Country Link
US (1) US6782504B1 (de)
EP (1) EP1205032B1 (de)
JP (2) JP2004511114A (de)
CN (1) CN1375130B (de)
AR (1) AR025211A1 (de)
AU (1) AU6578300A (de)
DE (1) DE60014395T2 (de)
ES (1) ES2226898T3 (de)
FR (1) FR2796780B1 (de)
WO (1) WO2001006661A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8077743B2 (en) * 2003-11-18 2011-12-13 Qualcomm Incorporated Method and apparatus for offset interleaving of vocoder frames
CN1961517B (zh) * 2004-05-28 2011-08-24 法国电信公司 编码和解码方法及装置、存储编码数据的装置
US7590044B2 (en) * 2005-11-14 2009-09-15 Motorola, Inc. Method and apparatus for interleaving\within a communication system
US7873897B2 (en) * 2007-09-17 2011-01-18 Industrial Technology Research Institute Devices and methods for bit-level coding and decoding of turbo codes
CN102812431A (zh) 2010-03-22 2012-12-05 Lrdc系统有限公司 用于识别与保护一组源数据的完整性的方法
CN111272280B (zh) * 2020-02-25 2020-12-15 电子科技大学 利用逆卷积提高光谱仪系统分辨率的方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4394642A (en) * 1981-09-21 1983-07-19 Sperry Corporation Apparatus for interleaving and de-interleaving data
FR2675971B1 (fr) * 1991-04-23 1993-08-06 France Telecom Procede de codage correcteur d'erreurs a au moins deux codages convolutifs systematiques en parallele, procede de decodage iteratif, module de decodage et decodeur correspondants.
FR2712760B1 (fr) * 1993-11-19 1996-01-26 France Telecom Procédé pour transmettre des bits d'information en appliquant des codes en blocs concaténés.
US6023783A (en) * 1996-05-15 2000-02-08 California Institute Of Technology Hybrid concatenated codes and iterative decoding
US5996104A (en) * 1996-09-13 1999-11-30 Herzberg; Hanan System for coding system
US5898698A (en) * 1996-09-24 1999-04-27 Orckit Communications Ltd. Multiple codeword interleaver method and apparatus
US6029264A (en) * 1997-04-28 2000-02-22 The Trustees Of Princeton University System and method for error correcting a received data stream in a concatenated system
ES2344299T3 (es) * 1997-07-30 2010-08-24 Samsung Electronics Co., Ltd. Metodo y dispositivo para codificacion de canal adaptativo.
WO1999012265A1 (fr) * 1997-09-02 1999-03-11 Sony Corporation Codeur/decodeur turbo et procede de codage/decodage turbo
JP3515036B2 (ja) * 1999-02-19 2004-04-05 株式会社エヌ・ティ・ティ・ドコモ インターリービング方法、インターリービング装置、ターボ符号化方法及びターボ符号化装置

Also Published As

Publication number Publication date
US6782504B1 (en) 2004-08-24
EP1205032A1 (de) 2002-05-15
AU6578300A (en) 2001-02-05
AR025211A1 (es) 2002-11-13
JP4594963B2 (ja) 2010-12-08
JP2007318772A (ja) 2007-12-06
WO2001006661A1 (fr) 2001-01-25
FR2796780B1 (fr) 2003-09-19
JP2004511114A (ja) 2004-04-08
DE60014395D1 (de) 2004-11-04
EP1205032B1 (de) 2004-09-29
ES2226898T3 (es) 2005-04-01
CN1375130A (zh) 2002-10-16
CN1375130B (zh) 2010-05-12
FR2796780A1 (fr) 2001-01-26

Similar Documents

Publication Publication Date Title
DE10030407B4 (de) Verfahren zur optimalen Ratenanpassung in einem Mobilkommunikationssystem
DE69838451T2 (de) Verfahren und schaltung zur adaptiven kanalkodierung
DE69936683T2 (de) Verschachtelung unter Verwendung von Inkrementen basierend auf dem Goldenen Schnitt
DE60037463T2 (de) Ratenanpassung und Kanalverschachtelung für ein Kommunikationssystem
DE102009044555B4 (de) Verfahren und Vorrichtung zum Durchführen einer CRC-Prüfung
EP1232596A2 (de) Verfahren zur anpassung der datenrate in einer kommunikationsvorrichtung und entsprechende kommunikationsvorrichtung
EP1258085B1 (de) Verfahren zum anpassen der einem turbo-codierer zuzuführenden datenblöcke und entsprechende kommunikationsvorrichtung
DE60108892T2 (de) Modul, vorrichtung und verfahren zum hochbitratigen dekodieren eines verketteten codes
DE60316428T2 (de) Verfahren, Kodierer und Kommunikationsvorrichtung zur Kodierung von parallel verketteten Daten
DE60016561T2 (de) Blockverschachtelung für turbokodierung
DE60014395T2 (de) Verfahren und vorrichtung zur kodierung mit mindestens zwei parallelen kodierern
DE2217935A1 (de) Anordnung und Verfahren zur Korrektur von Doppelfehlern
EP1155498B1 (de) Vorrichtung und verfahren zum erzeugen eines datenstroms und vorrichtung und verfahren zum lesen eines datenstroms
DE102010054228B4 (de) Verfahren zum Übertragen von Daten
DE19960269A1 (de) Übertragungsverfahren mit Kanalcodierung mit wirksamer und modularer Verschachtelung für Turbocodes
DE19725275C2 (de) Verfahren zur Decodierung von block- oder faltungscodierten digitalen Signalen
DE102014216143B4 (de) Verfahren zum Wiederherstellen verlorengegangener und/oder beschädigter Daten
DE102016222007B4 (de) Verfahren zum Übertragen von Daten
DE102016201408B4 (de) Verfahren zum Übertragen von Daten
DE102014208996B3 (de) Verfahren zum Wiederherstellen verlorengegangener und/oder beschädigter Daten
EP1153481B1 (de) Verfahren und vorrichtung zum erzeugen eines datenstroms aus codeworten variabler länge und verfahren und vorrichtung zum lesen eines datenstroms aus codeworten variabler länge
WO2000074295A1 (de) Verfahren und vorrichtung zur flexiblen kanalkodierung
WO1998052362A2 (de) Kanalcodierungsverfahren
DE60224862T2 (de) Ver- und Entschachtellungsapparat und Verfahren
EP0912021A2 (de) Verfahren und Einrichtung zur Datenübertragung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition