DE69823307T2 - Digitales Übertragungssystem, Dekoder und Dekodierungsverfahren - Google Patents

Digitales Übertragungssystem, Dekoder und Dekodierungsverfahren Download PDF

Info

Publication number
DE69823307T2
DE69823307T2 DE1998623307 DE69823307T DE69823307T2 DE 69823307 T2 DE69823307 T2 DE 69823307T2 DE 1998623307 DE1998623307 DE 1998623307 DE 69823307 T DE69823307 T DE 69823307T DE 69823307 T2 DE69823307 T2 DE 69823307T2
Authority
DE
Germany
Prior art keywords
iteration
information
decoding
data
calculating
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
DE1998623307
Other languages
English (en)
Other versions
DE69823307D1 (de
Inventor
Antoine Chouly
Americo Brajal
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of DE69823307D1 publication Critical patent/DE69823307D1/de
Application granted granted Critical
Publication of DE69823307T2 publication Critical patent/DE69823307T2/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/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
    • H03M13/296Particular turbo code structure
    • H03M13/2963Turbo-block codes, i.e. turbo codes based on block codes, e.g. turbo decoding of product 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/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/2906Coding, 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 using block 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/65Purpose and implementation aspects
    • H03M13/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/658Scaling by multiplication or division
    • 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
    • H03M13/098Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit using single parity bit
    • 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
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

  • Die Erfindung betrifft ein digitales Übertragungssystem mit beim Senden Mitteln zum Kodieren der zu übertragenden Daten und beim Empfangen Mitteln zum iterativen Dekodieren der erhaltenen Daten, wobei die besagten iterativen Dekodierungsmittel die erhaltenen Daten als initiale Eingangsgrößen verwenden, Mitteln zur Berechnung von Zuverlässigkeitsinformationen in Bezug auf sanfte Entscheidungen anhand der Eingangsgrößen bei jeder Iteration und Mitteln, um subsequente Eingangsgrößen für die darauffolgende Iteration erneut einzuschieben.
  • Die Erfindung betrifft auch ein Dekodierungsverfahren und einen Dekoder.
  • Die Erfindung ist für Übertragungssysteme wichtig bei der Anwendung von kleinen Datenpaketen über einen begrenzten Leistungskanal, z. B. für interaktive Systeme für Zweirichtungsübertragung über Satellit. In solchen interaktiven Systemen ist ein Rückweg vorgesehen, um es Teilnehmern zu ermöglichen, mit den Informationen, die an sie gesendet werden, zu interagieren. Die Kapazität dieses Rückwegs wird zwischen den Teilnehmern unter Verwendung eines Reservierungsmechanismus aufgeteilt. Dieser Reservierungsmechanismus besteht im Senden einer Anfrage, um sich Zeiträume in einem folgenden aufsteigenden Raster zuteilen zu lassen. Die übertragenen Daten werden demnach aus Sequenzen aus kleinen Paketen mit Anfragen oder Informationen gebildet, welche von mehreren Teilnehmern gesendet werden, was es erfordert, jedes Paket einzeln zu kodieren. Außerdem, da der Teilnehmer mit einer kleinen Antenne ausgerüstet ist, ist der aufsteigende Kanal in der Leistung begrenzt. Solche Systeme erfordern demnach die Verwendung einer sehr leistungsstarken Kodierungs/Dekodierungs-Methode (für diese Art Anwendung ist es erforderlich, eine Paket-Fehlerquote unter 10–5 zu haben).
  • Eine iterative Dekodierungsmethode für produzierte Kodes wird in folgendem Artikel beschrieben: „Les turbo-codes: une nouvelle approche du codage", Claude Berrou, Ramesh Pyndiah und Alain Glavieux, Revue générale d'Electricité et d'Electronique, Januar 1997, Seiten 68–74.
  • Dieser Artikel beschreibt, dass man den Wert eines Koeffizienten zur Berücksichtigung der extrinsischen Information im Laufe der Iterationen erhöhen muss, da die Zuverlässigkeit der extrinsischen Information im Laufe der Iterationen ansteigt.
  • Außerdem wird eine iterative Dekodierungsmethode, die als Basiskode einen Viterbi-Dekoder mit sanften Entscheidungen (SOVA) verwendet, in folgendem Artikel beschrieben: „A dsp-based implementation of a turbo-decoder", Z. Blazek und V. Bhargave, Proceedings of the IEEE Global Telecommunications Conference GLOBECOM '98 in Sidney, 08.–12. November 1998, Band 5, Seiten 2751 bis 2755.
  • Dieser Artikel beschreibt vier Methoden zur Normalisierung von extrinsischer Information. Die zweite beschriebene Methode verwendet eine Normalisierung durch den Multiplikationskoeffizienten c = mz·2/σz 2, in dem mz und σz 2 den Durchschnitt und die Varianz des absoluten Werts der extrinsischen Information darstellen.
  • Ziel der Erfindung ist es insbesondere, eine Lösung vorzuschlagen, welche die erhaltenen Leistungen verbessert.
  • Dafür ist ein Übertragungssystem nach der Erfindung dadurch gekennzeichnet, dass die besagten Mittel zur Dekodierung enthalten:
    • – Mittel zur Berechnung bei der Iteration j eines Durchschnittswertes von mehreren sanften, im Laufe der Iteration j erhaltenen Entscheidungen,
    • – Umwandlungsmittel zur Berechnung der anhand der besagten sanften Entscheidungen umgewandelten Informationen, wobei die umgewandelten Informationen erhalten werden, indem die besagten sanften Entscheidungen durch den besagten Durchschnittswert geteilt werden,
    • – und Mittel zur Erhebung der nachfolgenden Eingangsgrößen anhand der besagten umgewandelten Informationen.
  • Die Erfindung ermöglicht es auch, die Tatsache zu berücksichtigen, dass die Zuverlässigkeitsinformationen theoretisch nach einer Gaußschen Verteilung um den Wert +1 verteilt sind.
  • In einer anderen vorteilhaften Ausführungsform eines Übertragungssystems nach der Erfindung enthalten die besagten Dekodierungsmittel Wägungsmittel zur Berechnung der gewägten Summen einer Funktion der besagten sanften Entscheidungen und der initialen Eingangsgrößen, mit jeweils einem ersten und einem zweiten Wägungskoeffizienten, und Mittel zur Erhebung der nachfolgenden Eingangsgrößen anhand der besagten gewägten Summen.
  • Solch eine Wägung ermöglicht es, die Verbreitung schlechter, am Anfang des iterativen Dekodierungsprozesses getroffener Entscheidungen zu vermeiden. Wenn die besagte Funktion gewählt wird, um anhand der sanften Entscheidungen umgewandelte Informationen zu liefern, kombiniert man die Vorteile der beiden hiervor dargelegten Ausführungsformen.
  • Auch ist ein Verfahren zur Dekodierung von Daten nach der Erfindung, welches die besagten Daten als initiale Eingangsgrößen verwendet, dadurch gekennzeichnet, dass es enthält:
    • – einen Schritt zur Berechnung bei der Iteration j eines Durchschnittswertes von mehreren sanften, im Laufe der Iteration j erhaltenen Entscheidungen,
    • – einen Umwandlungsschritt zur Berechnung der anhand der besagten sanften Entscheidungen umgewandelten Informationen, wobei die umgewandelten Informationen erhalten werden, indem die besagten sanften Entscheidungen durch den besagten Durchschnittswert geteilt werden,
    • – und einen Schritt zur Erhebung der nachfolgenden Eingangsgrößen anhand der besagten umgewandelten Informationen.
  • Schließlich ist ein Dekoder nach der Erfindung, der mit Mitteln zur iterativen Dekodierung von Daten ausgerüstet ist, welche die Daten als initiale Eingangsgrößen verwenden, dadurch gekennzeichnet, dass die besagten Dekodierungsmittel enthalten:
    • – Mittel zur Berechnung bei der Iteration j eines Durchschnittswertes von mehreren, im Laufe der Iteration j erhaltenen sanften Entscheidungen,
    • – Umwandlungsmittel zur Berechnung der anhand der besagten sanften Entscheidungen umgewandelten Informationen, wobei die umgewandelten Informationen erhalten werden, indem die besagten sanften Entscheidungen durch den besagten Durchschnittswert geteilt werden,
    • – und Mittel zur Erhebung der nachfolgenden Eingangsgrößen anhand der besagten umgewandelten Informationen.
  • Die Erfindung wird besser und mit weiteren ersichtlichen Details anhand der folgenden Beschreibung hinsichtlich der beigefügten Zeichnungen verstanden, die als nicht erschöpfende Beispiele gegeben werden und in denen:
  • 1 ist ein Schema eines Systembeispiels zur digitalen Übertragung nach der Erfindung;
  • 2 ist ein Schema zur Erklärung des Zuteilungsprinzips kodierter Daten an eine Konstellation;
  • 3 ist ein Schema ist ein Diagramm, welches die wichtigsten Schritte eines iterativen Dekodierungsverfahrens nach der Erfindung zusammenfasst.
  • 4 ist ein Schema eines iterativen Dekodierers nach der Erfindung,
  • 5A und 5B sind Diagramme, welche die mit einem System nach der Erfindung erhaltenen Ergebnisse jeweils vor und nach der Dekodierung nach Reed Solomon darstellen,
  • 6A und 6b sind Kurven, welche die Wahrscheinlichkeitsdichte der Eingangsgrößen für jeweils die erste und die vierte Iteration darstellen.
  • Die Erfindung wird jetzt für Anwendungen der Datenübertragung beschrieben. Dies ist nicht erschöpfend. Sie kann z. B. ebenfalls für Anwendungen der auf Platte gespeicherten Datenrückgewinnung verwendet werden.
  • In der folgenden Beschreibung verwendet man bekannte Techniken zur Fehlerkontrolle in digitalen Übertragungen. Für mehr Details über diese Techniken kann man sich z. B. auf das Werk von Arnold M. Michelson und Allen H. Levesque mit dem Titel „Error control techniques for digital communications", veröffentlicht im Verlag Wiley Intersciences in 1985, beziehen.
  • In der folgenden Beschreibung bezeichnet der Ausdruck „Produktkode" oder „multidimensionaler Kode" einen Kode, der von einer Matrix mit mehreren Dimensionen dargestellt sein kann, wobei jede Dimension ein Kodewort, Kodes und Wortgrößen mit unterschiedlichen Kodes gibt, welche für jede Dimension verwendet werden kann.
  • Es wird nun ein Beispiele eines digitalen Übertragungssystems nach der Erfindung beschrieben, dessen Leistungen für Anwendungen der weiter oben erwähnten aufsteigenden Übertragung über Satellit ausreichen. Dieses Beispiel ist nicht erschöpfend.
  • Insbesondere (und wie dies in der weiteren Beschreibung im Detail dargelegt wird) verknüpft man einen Reed-Solomon-Kode und einen Produktkode mit in zwei Dimensionen verflochtenen Paritäten (jede Zeile und jede Spalte der Matrix bilden ein Kodewort, und der verwendete Kode ist für jede der beiden Dimensionen ein Paritätskode). Doch die Erfindung ist auf jeden Kodetypen anwendbar, der mit einer iterativen Dekodierung dekodiert werden könnte, und insbesondere auf jeden einen Produktkode verwendeten Kodetypen.
  • Ebenso verwendet man eine Konstellation mit vier Zuständen QPSK (vom Englischen Quadrature Phase Shift Keying) derart, dass die Dekodierung darin besteht, zwischen zwei möglichen Werten (hier zwischen –1 und +1) für jedes über die Wege in Phase und in Quadratur erhaltenen Symbole Entscheidungen zu treffen. Man könnte eine Konstellation eines anderen Typs verwenden, z. B. eine Konstellation OQPSK (vom Englischen Offset Quadrature Phase Shift Keying). Man kann auch eine Konstellation einer anderen Größe verwenden, z. B. eine Konstellation BPSK mit zwei Zuständen (vom Englischen Binary Phase Shift Keying) oder eine Konstellation mit darüberliegender Größe. Mit einer Konstellation größerer Größe kann man sich z. B. auf zu treffende Entscheidungen desselben Typs unter Verwendung bekannter Mehrebenen-Kodiertechniken begnügen, oder man kann die herkömmliche iterative Dekodierungsmethode an den neuen Typ der zu treffenden Entscheidungen anpassen.
  • Auf 1 wurde ein Schema eines solchen digitalen Übertragungssystems dargestellt. Beim Senden werden die zu übertragenden, aus einer Quelle 2 kommenden Daten 1 an Kodierungsmittel 3 übertragen. Diese Kodierungsmittel werden aus den ersten Reed-Solomon-Kodierungsmitteln 4 gebildet, mit zweiten multidimensionalen Kodierungsmitteln verschlungener Paritäten 5 in Kaskade gebracht. Die an den Ausgang der Kodierungsmittel 3 übertragenen kodierten Daten 6 werden mit Modulationsmitteln 8 Symbolen einer Konstellation zugeordnet. Diese Symbole werden über einen Kanal 9 übertragen.
  • Beim Empfang werden die erhaltenen Daten 10 mit üblichen Demodulationsmitteln 11 bearbeitet und dann in der Form einer ersten Matrix in einem Speicher 12 gespeichert. Diese erhaltenen Daten bilden initiale Eingangsgrößen, d. h. sie dienen den iterativen Kodierungsmitteln 20 für die erste Iteration als Eingangsgrößen 13. Die an den Ausgang der iterativen Kodierungsmittel übertragenen Daten werden in einer zweiten, im Speicher 12 abgelegten Matrix gruppiert und dienen für die nachfolgende Iteration als subsequente Eingangsgrößen 13. Die iterativen Kodierungsmittel 20 werden mit den herkömmlichen Kodierungsmitteln von Reed Solomon 22 in Kaskade gebracht, welche zu den erhaltenen kodierten Daten die Schlussentscheidungen 23 treffen.
  • Als Beispiel verwendet man für die Kodierung den Reed-Solomon-Kode mit dem generierenden Polynom
    Figure 00060001
    wobei α die Wurzel von x8 ⊕ x4 ⊕ x3 ⊕ x2 ⊕ 1 ist,
    ein Polynom mit einem Galois-Körper mit 256 Elementen GF(s8), und t die Anzahl an Bytes ist, die der Kode zu korrigieren in der Lage ist. Bei dem hier beschriebenen Beispiel wurde t = 5 gewählt. Somit, wenn man Datenpakete mit 54 Bytes sendet (ATM-Zelle plus reserviertes Byte), erhält man Pakete mit 64 Bytes am Ausgang der Reed-Solomon-Kodierungsmittel 4.
  • Die multidimensionalen Kodierungsmittel 5 mit verflochtenen Paritäten fügen jedem der am Ausgang der Reed-Solomon-Kodierungsmittel 4 abgegebenen Bytes ein Paritätsbit hinzu und gruppieren dann so erhaltene 8 Wörter mit 9 Bits zur Bildung einer Matrix 8 × 9. Jeder Spalte der Matrix wird dann ein Paritätsbit hinzugefügt, um eine neunte Zeile zu bilden. Die sich daraus ergebende Matrix ist eine Matrix 9 × 9. So erhält man, wenn man das vorhergehende Beispiel wieder aufgreift, anhand der am Ausgang der Reed-Solomon-Kodierungsmittel 4 abgegebenen 64 Bytes am Ausgang der multidimensionalen Kodierungsmittel 5 verflochtener Paritäten 8 Matrizen 9 × 9 (bezeichnet M1 bis M8).
  • Diese 8 Matrizen werden wie auf 2 gezeigt von Zuteilungsmitteln 7 durchlaufen, die jedem Bitpaar einen Konstellationspunkt QPSK zuteilen. Wenn der Kanal 9 ein leistungsbeschränkter Kanal ist, ist es vorteilhaft, eine Differenzialkodierung zu verwenden. In diesem Falle wendet man zwischen zwei konsekutiven Symbolen z. B. folgende Zuteilungsregel an:
    • – 00: keine Phasenänderung,
    • – 01: +90°
    • – 11: +180°
    • – 10: –90°
  • Das Prinzip der iterativen Dekodierung (oder Turbo-Dekodierung) wurde bei der Konferenz (Near Shannon error correcting coding and decoding: turbo codes" von A. Glavieux et al, IEEE ICC-93, Seiten 1064–1071, im Mai 1993 dargelegt. Es besteht darin, sich einer optimalen Dekodierung anzunähern, indem N Iterationen einer nicht optimalen Dekodierung durchgeführt werden. Die N – 1-ten ersten Iterationen bestehen in der Erarbeitung einer sanften Entscheidung gleich dem Produkt einer Information zur Zuverlässigkeit eines erhaltenen Symbols und in der sogenannten harten Entscheidung, die zu diesem Symbol gefällt wird, und im erneuten Einschieben dieser sanften Entscheidung am Eingang der Kodierungsmittel für die nachfolgende Iteration. Die letzte Iteration liefert eine harte Entscheidung.
  • In dem hier beschriebenen Beispiel ermöglicht diese iterative Dekodierung das Fällen von binären Entscheidungen zu den erhaltenen realen Symbolen mit dem Wissen, dass jedes Element eines Kodewortes einen Wert im Ganzen {–1; +1} hat, und es besteht darin, eine Zeilendekodierung mit einer Spaltendekodierung in der Matrix der Eingangsgrößen (ri,j) mehrmals abwechseln zu lassen. Jede Zeilen- oder Spaltendekodierung bildet eine Dekodierungsiteration. In der Folge bezeichnet man N die Anzahl erforderlicher Iterationen, um zu einer optimalen Dekodierung zu konvergieren. Die initial verwendeten Eingangsgrößen für die erste Iteration werden aus den erhaltenen realen Symbolen gebildet. Die N – 1 ersten Iterationen ermöglichen für jedes Element ri,j jeder Zeile oder Spalte die Berechnung einer Zuverlässigkeitsinformation fi,j und einer sanften Entscheidung r'i,j, dann der Erfindung gemäß einer Größe r''i,j subtraktiv von dieser sanften Entscheidung. Die für eine Iteration j berechneten Größen r''i,j werden im Speicher 12 abgelegt und von den iterativen Dekodierungsmitteln 20 für die Iteration j + 1 als subsequente Eingangsgrößen ri,j+1 verwendet. Die letzte Iteration besteht in der optimal ausgeführten Dekodierung des Blocks ri,N (i = 1, 0 ..., n) ohne Berechnung der Zuverlässigkeiten der Symbole ri,N.
  • Wie dies auf 3 zusammengefasst wird enthält ein iteratives Dekodierungsverfahren nach der Erfindung für jede Iteration und für jede Zeile oder Spalte (r1,j, ..., ri,j, ..., rn,j) folgende Schritte:
    • – erster Schritt 110: Berechnung der Parität p der Zeile oder der Spalte und Suche des am wenigsten zuverlässigen Symbols ri,j, d. h. am nächsten bei Null (dieses Symbol wird erstes Minimum genannt und MIN1 bezeichnet): Initialisierung: p = 0 und MIN1 = ∞, für 1 variierend von 1 bis n, Berechnung von bi = SGN(ri,j), mit sgn(x) = 0 wenn x > 0 und sonst 1 Berechnung von p = p ⊕ bi wenn MIN1 > |ri,j|, dann MIN1 = |ri,j| und iMIN1 = i
    • – zweiter Schritt 120: Korrektur des am wenigsten zuverlässigen Symbols und Berechnung eines inv bezeichneten Vorzeichenindikators: biMIN1 = biMIN1 ⊕ p inv = 1 – 2p
    • – dritter Schritt 125: Test j = N? Wenn j = N ist die Dekodierung beendet, was auf 3 mit dem Pfeil 126 zum Feld 170 des Verfahrensendes bezeichnet wird. Die harten Entscheidungen werden von Block b; (i = 0, ..., n). Wenn j ≠ N, geht die Iteration mit den folgenden Schritten 130 bis 160 weiter,
    • – vierter Schritt 130: Suche des zweiten Minimums, bezeichnet MIN2: Initialisierung: MIN2 = ∞, für 1 variierend von 1 bis n und i ≠ MIN1, wenn MIN2 > |ri,j|, dann MIN1 = |ri,j|
    • – fünfter Schritt 140: Berechnung der Zuverlässigkeit fi,j und der harten Entscheidung r'i,j: für 1 variierend von 1 bis n und i ≠ MIN1, fi,j = [|ri,j| + inv·MIN1] für i = iMIN1, fiMIN1,j = MIN2 + inv·MIN1 kund für jedes i variierend von 1 bis n, r'i,j = (1 – 2bi)·fi,j (diese Zuverlässigkeitsberechnung ist eine herkömmliche Berechnung, an deren Prinzip z. B. in dem Artikel „Efficient soff-in-soff-out sub-optimal decoding rule for single parity check codes", welcher in den einleitenden Absätzen zitiert wurde, erinnert wird).
    • – sechster Schritt 150: Berechnung des Durchschnittswerts μ der sanften Entscheidungen in der Zeile oder der Spalte:
      Figure 00080001
      Man beachte, dass im Falle die Matrix klein ist, die Berechnung des Durchschnitts μ über die gesamte Matrix, und nicht nur über eine Zeile oder Spalte, vorteilhaft ist.
    • – siebter Schritt 160: Berechnung der umgewandelten Informationen ti,j der gewägten Summen r''i,j und Speicherung der subsequenten Eingangsgrößen ri,j+1 im Speicher 12: für 1 variierend von 1 bis n Berechnung von ti,j = r'i,j/μ Berechnung von r''i,j = γj·ti,j + βj·ri,1
    wobei γj und βj die ersten und zweiten Wägungskoeffizienten und ri,1 initiale Eingangsgrößen sind, die dieser Zeile oder dieser Spalte entsprechen. Vorteilhaft wählt man βj=1–γj, und γ1 = 0,5, γ2 = 0,8 und yi≠1,2 = 1. So berücksichtigt man, indem das Gewicht der initialen Eingangsgrößen im Laufe der Iterationen verringert wird, die Tatsache, das Divergenzrisiko mit der Anzahl Iterationen abnimmt, während die Fehlerkorrektur zunimmt.
  • Auf 4 wurde ein detailliertes Schema der iterativen Dekodierungsmittel 20 dargestellt. Die iterativen Dekodierungsmittel enthalten:
    • – Mittel 210 zur Korrektur der Parität, zur Suche des ersten Minimums in jeder verarbeiteten Zeile oder Spalte und zur Erarbeitung der harten Entscheidungen bi,
    • – Mittel 220 zur Korrektur der harten Entscheidung in Bezug auf das am wenigsten zuverlässige Symbol (biMIN1 = biMIN1 ⊕ p) und zur Berechnung eines Vorzeichenindikators inv = 1 – 2p. Die harten Entscheidungen Bi,j≠N werden an die Mittel 240 übertragen. Die harten Entscheidungen bi,N werden an die Mittel 22 der Reed-Solomon-Dekodierung übertragen,
    • – Mittel 240 zur Berechnung der Zuverlässigkeitsinformationen fi,j und der sanften Entscheidungen r'i,j,
    • – Umwandlungsmittel 250 zur Berechnung der umgewandelten Informationen ti,j anhand der sanften Entscheidungen r'i,j, um den Durchschnittswert der Zuverlässigkeitsinformationen fi,j zu normalisieren,
    • – Mittel 260 zur Erhebung der erneut einzuschiebenden subsequenten Eingangsgrößen anhand der besagten umgewandelten Informationen ti,j, wobei diese Mittel 260 in dem hier beschriebenen Ausführungsbeispiel von den Wägungsmitteln 270 zur Berechnung der gewägten Summen r''i,j der besagten umgewandelten Informationen ti,j und der initialen Eingangsgrößen ri,j mit respektive einem ersten und einem zweiten Wägungskoeffizienten γj und βj gebildet werden. Diese gewägten Summen r''i,j werden im Speicher 12 abgelegt, um für die nächste Iteration j + 1 als subsequente Eingangsgrößen ri,j+1 an iterativen Dekodierungsmittel 20 übertragen werden.
  • Auf den 5A und 5B wurde die Entwicklung der Paket-Fehlerquote PER unter Berücksichtigung des in dB ausgedrückten Signal-Rausch-Verhältnisses SNR im Laufe der Iterationen respektive vor der Reed-Solomon-Dekodierung und nach Reed-Solomon-Dekodierung mit dem soeben beschriebenen Dekodierer dargestellt. 5A zeigt, dass man bei der dritten Iteration sehr nahe an der optimalen Dekodierung ist. Die Resultate der 5B wurden mit einer ersten Iteration entsprechend einer Spaltendekodierung erhalten. Dabei sind es in dem beschriebenen Beispiel die Zeilen der Matrix, welche dem Reed-Solomon-Kodewort entsprechen. Folglich sind des die geraden Iterationen, welche einer Dekodierung im Sinne der Reed-Solomon-Kodewörter entsprechen. Da der Paritätskode dazu neigt, die Fehler in Dekodierrichtung zu gruppieren, und der Reed-Solomon-Kode an die Korrektur von Fehlerpaketen angepasst ist, sind die Leistungen nach der Reed-Solomon-Dekodierung demnach für die geraden Iterationen besser. Diese Figuren lassen die Folgerung zu, dass nach 3 ausgeführten Iterationen in der Reihenfolge Zeile-Spalte-Zeile man optimale Leistungen (zu minimalen Rechenkosten) erhält.
  • Auf den 6A und 6B werden die mit dem soeben beschriebenen Dekodierer erhaltenen Resultate anders dargestellt. Diese Figuren geben jeweils die Wahrscheinlichkeitsdichte PDF(ri,j) der initialen Eingangsgrößen ri,j, die vor der ersten Iteration (ri,1) dem Eingang des Dekodierers zugeführt wurden, und die subsequenten Eingangsgrößen, die nach der dritten Iteration (ri,4) dem Eingang des Dekodierers zugeführt wurden. Man stellt fest, dass man sich einer Idealkurve (Fehlerquote Null) genähert hat, bestehend aus zwei verschiedenen Enveloppen um die Werte –1 und +1: die Enveloppe wird um die Werte –1 und +1 optimiert, die Wahrscheinlichkeitsdichte der Werte –1 und +1 steigt an und der Schnittpunktbereich ist weitaus reduzierter.
  • Die Erfindung ist nicht auf die hiervor in Bezug auf die 3 und 4 beschriebene vorgezogene Ausführungsform beschränkt.
  • In einer ersten Variante dieser Ausführungsform wählt man γj = 1 für jedes j, was eine Verschlechterung des Signal-Rausch-Verhältnisses SNR von 0,1 bis 0,2 dB bewirkt.
  • In einer zweiten Variante ersetzt man den Wert μ durch eine konstante Zahl K, die vom Signal-Rausch-Verhältnis abhängt. Auch dies bewirkt eine Verschlechterung des Signal-Rausch-Verhältnisses SNR von 0,1 bis 0,2 dB.
  • In einer dritten Variante unterlässt man die Suche des zweiten Minimums und verwendet für die Berechnung der Zuverlässigkeit folgenden Ausdruck bei i = iMIN1: FiMIN1,j = (1 + inv)·MIN1 – Δ wobei Δ die konstante Zahl ist, die vom Signal-Rausch-Verhältnis des Signals abhängt (Simulationen haben ergeben, dass für Δ = 0,1 eine Verschlechterung der Größenordnung von 0,1 dB hiervon die Folge sein könnte).
  • In einer anderen Ausführungsform wird die Funktion ti,j der sanften Entscheidungen r'i,j durch eine andere Funktion ersetzt, als die hier beschriebene (ti,j = r'i,j/μ mit
    Figure 00110001
    ), z. B. durch eine Identitätsfunktion, was dem entspricht, sich auf eine Wägungsoperation zwischen der weichen Entscheidung r'i,j und den initialen Eingangsgrößen ri,j : r''i,j = γj·r'i,j + βj·ri,j zu beschränken.
  • Außerdem entsprechen in dem beschriebenen Beispiel die Zeilen der Matrize exakt den Reed-Solomon-Kodewörtern. Diese Wahl ist besonders vorteilhaft, doch man kann andere Entsprechungstypen verwenden, indem man vorzugsweise ein einfaches Verhältnis zwischen den Größen der beiden Kodes wählt, z. B. mit der Wahl, dass der eine ein Vielfaches des anderen ist.
  • In einer anderen Ausführungsform schließlich fügt man auf bekannte Art zwischen den Ausgang der iterativen Dekodierungsmittel 20 und den Eingang der Reed-Solomon-Dekodierung 22 Mittel zur Lokalisierung derjenigen Bytes ein, die potenziell falsch sind. Als Beispiel bestehen solche Lokalisierungsmittel im Vergleichen des ersten Minimums MIN1 bzw. des Durchschnittswerts der Zuverlässigkeitsinformationen mit einer festen oder variablen Schwelle, über der den Reed-Solomon-Dekodiermittel 22 eine Information mit der Bezeichnung Löschinformation zugeführt wird. Für mehr Details beziehe man sich auf das zuvor zitierte Werk „Error control techniques for digital communications".

Claims (10)

  1. Digitales Übertragungssystem mit beim Senden Mitteln (3) zum Kodieren der zu übertragenden Daten (1) und beim Empfangen Mitteln (20) zum iterativen Dekodieren der erhaltenen Daten (10), wobei die besagten iterativen Dekodierungsmittel die erhaltenen Daten als initiale Eingangsgrößen verwenden, Mitteln (220) zur Berechnung von Zuverlässigkeitsinformationen (fi,j) in Bezug auf sanfte Entscheidungen (r'i,j) anhand der Eingangsgrößen (13, ri,j) bei jeder Iteration (j) und Mitteln, um subsequente Eingangsgrößen (ri,j+1) für die darauffolgende Iteration (j + 1) erneut einzuschieben, dadurch gekennzeichnet, dass die besagten Mittel zur Dekodierung enthalten: – Mittel zur Berechnung bei der Iteration j eines Durchschnittswertes von mehreren, im Laufe der Iteration j erhaltenen sanften Entscheidungen (r'i,j), – Umwandlungsmittel (240) zur Berechnung der anhand der besagten sanften Entscheidungen umgewandelten Informationen (ti,j), wobei die umgewandelten Informationen erhalten werden, indem die besagten sanften Entscheidungen durch den besagten Durchschnittswert geteilt werden, – und Mittel zur Erhebung (240) der nachfolgenden Eingangsgrößen (ri,j+1) anhand der besagten umgewandelten Informationen (ti,j).
  2. Digitales Übertragungssystem nach Anspruch 1, dadurch gekennzeichnet, dass die besagten Mittel (250) zur Erhebung der nachfolgenden Eingangsgrößen Wägungsmittel (260) zur Berechnung der gewägten Summen (r''i,j) der besagten umgewandelten Informationen (ti,j) und der initialen Eingangsgrößen (ri,1) mit jeweils einem ersten (γj) und einem zweiten (βj) Wägungskoeffizienten enthalten.
  3. Digitales Übertragungssystem nach Anspruch 2, dadurch gekennzeichnet, dass der erste und der zweite Wägungskoeffizient gleich eins ist.
  4. Übertragungssystem nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die besagten Kodierungsmittel erste Kodierungsmittel (4) anhand einem Reed-Solomon-Kode und zweite Kodierungsmittel (5) anhand eines multidimensionalen Kodes mit verschlungenen Paritäten enthalten, wobei die iterativen Dekodierungsmittel verwendet werden, um anhand der erhaltenen Daten (10) die vom Reed-Solomon-Kode kodierten Daten zurückzuerhalten.
  5. Iteratives Verfahren zur Dekodierung von Daten unter Verwendung der besagten Daten als initiale Eingangsdaten (ri,j), welches bei jedem Schritt enthält: – einen Schritt (140) zur Berechnung der Zuverlässigkeitsinformationen (fi,j) in Bezug auf sanfte Entscheidungen (r'i,j) anhand von Eingangsgrößen (13, ri,j) und – einen Schritt zum erneuten Einschieben von subsequenten Eingangsgrößen für die nachfolgende Iteration, dadurch gekennzeichnet, dass es enthält: – einen Schritt zur Berechnung bei der Iteration j eines Durchschnittswertes von mehreren sanften, im Laufe der Iteration j erhaltenen Entscheidungen (r'i,j), – einen Umwandlungsschritt (240) zur Berechnung der anhand der besagten sanften Entscheidungen umgewandelten Informationen (ti,j), wobei die umgewandelten Informationen erhalten werden, indem die besagten sanften Entscheidungen durch den besagten Durchschnittswert geteilt werden, und – einen Schritt (250) zur Erhebung der nachfolgenden Eingangsgrößen (ri,j+1) anhand der besagten umgewandelten Informationen (ti,j).
  6. Dekodierungsverfahren nach Anspruch 5, dadurch gekennzeichnet, dass der besagte Schritt (160) zur Erhebung der subsequenten Eingangsgrößen einen Wägungsschritt zur Berechnung der gewägten Summen (r''i,j) der besagten umgewandelten Informationen und der initialen Eingangsgrößen (ri,1) mit jeweils einem ersten (γj) und einem zweiten (βj) Wägungskoeffizienten enthalten.
  7. Dekodierungsverfahren nach Anspruch 6, dadurch gekennzeichnet, dass die Summe des besagten ersten und zweiten Wägungskoeffizienten gleich eins ist.
  8. Dekoder mit Mitteln (20) zum iterativen Dekodieren von Daten unter Verwendung der besagten Daten als initiale Eingangsgrößen und mit Mitteln (220) zur Berechnung von Zuverlässigkeitsinformationen (fi,j) in Bezug auf sanfte Entscheidungen (r'i,j) anhand von Eingangsgrößen (13, ri,j) bei jeder Iteration und Mitteln zum erneuten Einschieben der subsequenten Eingangsgrößen (ri,j+1) für die nachfolgende Iteration, dadurch gekennzeichnet, dass die besagten Dekodierungsmittel enthalten: – Mittel zur Berechnung bei der Iteration j eines Durchschnittswertes von mehreren, im Laufe der Iteration j erhaltenen sanften Entscheidungen (r'i,j), – Umwandlungsmittel (240) zur Berechnung der anhand der besagten sanften Entscheidungen umgewandelten Informationen (ti,j), wobei die umgewandelten Informationen erhalten werden, indem die besagten sanften Entscheidungen durch den besagten Durchschnittswert geteilt werden, – und Mittel (250) zur Erhebung der nachfolgenden Eingangsgrößen (ri,j+1) anhand der besagten umgewandelten Informationen (ti,j).
  9. Dekodierer nach Anspruch 8, dadurch gekennzeichnet, dass die besagten Mittel zur Erhebung der nachfolgenden Eingangsgrößen Wägungsmittel (260) zur Berechnung der gewägten Summen (r''i,j) der besagten umgewandelten Informationen und der initialen Eingangsgrößen mit jeweils einem ersten (γj) und einem zweiten (βj) Wägungskoeffizienten enthalten.
  10. Dekodierer nach Anspruch 9, dadurch gekennzeichnet, dass die Summe des besagten ersten und zweiten Wägungskoeffizienten gleich eins ist.
DE1998623307 1997-11-18 1998-11-10 Digitales Übertragungssystem, Dekoder und Dekodierungsverfahren Expired - Fee Related DE69823307T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9714451A FR2771228A1 (fr) 1997-11-18 1997-11-18 Systeme de transmission numerique, decodeur, et procede de decodage
FR9714451 1997-11-18

Publications (2)

Publication Number Publication Date
DE69823307D1 DE69823307D1 (de) 2004-05-27
DE69823307T2 true DE69823307T2 (de) 2005-01-13

Family

ID=9513497

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1998623307 Expired - Fee Related DE69823307T2 (de) 1997-11-18 1998-11-10 Digitales Übertragungssystem, Dekoder und Dekodierungsverfahren

Country Status (5)

Country Link
US (1) US6922446B1 (de)
EP (1) EP0917294B1 (de)
JP (1) JPH11215012A (de)
DE (1) DE69823307T2 (de)
FR (1) FR2771228A1 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100277764B1 (ko) 1998-12-10 2001-01-15 윤종용 통신시스템에서직렬쇄상구조를가지는부호화및복호화장치
JP3670520B2 (ja) * 1999-06-23 2005-07-13 富士通株式会社 ターボ復号器およびターボ復号装置
JP2001127649A (ja) * 1999-10-29 2001-05-11 Mitsubishi Electric Corp 通信装置および通信方法
FR2822316B1 (fr) * 2001-03-19 2003-05-02 Mitsubishi Electric Inf Tech Procede d'optimisation, sous contrainte de ressoureces, de la taille de blocs de donnees codees
WO2004064282A2 (de) * 2003-01-10 2004-07-29 Siemens Aktiengesellschaft Verfahren und kommunikationssystemvorrichtung zum codemodulierten übertragen von informationen
US7328395B1 (en) * 2004-04-13 2008-02-05 Marvell International Ltd. Iterative Reed-Solomon error-correction decoding
KR100718608B1 (ko) 2005-12-29 2007-05-17 포스데이타 주식회사 무선통신 시스템에서의 전송 신호 디코딩 방법 및 장치
US20110004810A1 (en) * 2009-07-06 2011-01-06 Himax Media Solutions, Inc. Method and System of Receiving Data with Enhanced Error Correction
US8340239B2 (en) * 2010-01-04 2012-12-25 Himax Media Solutions, Inc. Decoder and method for adaptively generating a clock window
US20160266972A1 (en) * 2015-03-10 2016-09-15 Kabushiki Kaisha Toshiba Memory controller, storage device and decoding method
US10467090B2 (en) 2016-03-02 2019-11-05 Toshiba Memory Corporation Memory controller and decoding method

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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.
DE19526416A1 (de) * 1995-07-19 1997-01-23 Siemens Ag Verfahren und Anordnung zur Bestimmung eines adaptiven Abbruchkriteriums beim iterativen Decodieren multidimensional codierter Infomation
US5721745A (en) * 1996-04-19 1998-02-24 General Electric Company Parallel concatenated tail-biting convolutional code and decoder therefor
FR2756996A1 (fr) * 1996-12-10 1998-06-12 Philips Electronics Nv Systeme et procede de transmission numerique comportant un code produit combine a une modulation multidimensionnelle
US6161209A (en) * 1997-03-28 2000-12-12 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communications Research Centre Joint detector for multiple coded digital signals
CA2245601C (en) * 1997-08-14 2007-06-12 Stewart Crozier High-performance low-complexity error-correcting codes
DE19736625C1 (de) * 1997-08-22 1998-12-03 Siemens Ag Verfahren zur Datenübertragung auf Übertragungskanälen in einem digitalen Übertragungssystem
US6233709B1 (en) * 1998-12-07 2001-05-15 Nokia Mobile Phones Ltd. Dynamic iterative decoding for balancing quality of service parameters

Also Published As

Publication number Publication date
DE69823307D1 (de) 2004-05-27
US6922446B1 (en) 2005-07-26
EP0917294A1 (de) 1999-05-19
EP0917294B1 (de) 2004-04-21
JPH11215012A (ja) 1999-08-06
FR2771228A1 (fr) 1999-05-21

Similar Documents

Publication Publication Date Title
DE69936908T2 (de) Iterative dekodierung von produktkoden
DE3910739C3 (de) Verfahren zum Verallgemeinern des Viterbi-Algorithmus und Einrichtungen zur Durchführung des Verfahrens
DE69722331T2 (de) Informationsbits-Übertragungsverfahren mit Fehlerkorrektur-Kodierung, Kodier- und Dekodiervorrichtung dafür
DE60122200T2 (de) Stopkriterien für interative dekodierung
DE69815087T2 (de) Listenausgaben-viterbi-dekodierung mit crc aussenkode für mehrratensignal
DE69735200T2 (de) Verfahren zu metrikbestimmung in einem übertragungssystem
DE69532949T2 (de) Verfahren und gerät zur dekoderoptimierung
DE69722571T2 (de) System und Verfahren zur digitalen Übertragung mit einem Produktkode kombiniert mit multidimensionaler Modulation
DE602004001548T2 (de) Verfahren und Vorrichtung zur Decodierung eines Low Density Partity Check (LDPC) Codes in einem Kommunikationssystem
DE69925151T2 (de) Effiziente normalisierung vom trelliszustandsmetrischem wert
DE69823307T2 (de) Digitales Übertragungssystem, Dekoder und Dekodierungsverfahren
DE19963683A1 (de) Architektur zum Decodieren von linearen Blockfehler-Korrekturcodes mit Soft Decision
DE69831783T2 (de) Mehrstufige codierung mit zeitdiversity
DE10296698B4 (de) Verfahren und Vorrichtung zum Kodieren und Dekodieren von Daten mit unterschiedlichen Modulationsschemata und Kodierungen und einem ARQ-Protokoll
DE602004012417T2 (de) Dekodierungsvorrichtung und dekodierungsverfahren
EP0737389B1 (de) Übertragungssystem mit soft-output-dekodierung bei reduziertem speicherbedarf
DE102007035210A1 (de) Verfahren und Vorrichtung zur LDPC-Dekodierung mit gemeinsamer Hardwarenutzung und serieller Summe-Produkt-Architektur
WO2004021630A1 (de) Parallelverarbeitung der decodierung und der zyklischen redundanzüberprüfung beim empfang von mobilfunksignalen
DE69735982T2 (de) Datenempfänger
DE19539343C2 (de) Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird
DE69932001T2 (de) Faltungsdekodierung , Durchführungsverfahren und Anordnung
DE60319557T2 (de) Verfahren zur Verminderung der Anzahl der Bits pro Softbit
DE19717546B4 (de) Verfahren und Vorrichtung zur Decodierung bei einem CDMA-Übertragungssystem zum Demodulieren eines Empfangssignals, das in serieller Codeverkettung vorliegt
DE60207186T2 (de) Kanal- und ortsinformationsbasierte Skalierung der Viterbi-Dekodierung
EP0843444B1 (de) Digitales Übertragungssystem mit trellisbasiertem, zustandsreduziertem Schätzverfahren

Legal Events

Date Code Title Description
8320 Willingness to grant licences declared (paragraph 23)
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee