DE69929652T2 - Datenfehlerkorrektursystem - Google Patents

Datenfehlerkorrektursystem Download PDF

Info

Publication number
DE69929652T2
DE69929652T2 DE1999629652 DE69929652T DE69929652T2 DE 69929652 T2 DE69929652 T2 DE 69929652T2 DE 1999629652 DE1999629652 DE 1999629652 DE 69929652 T DE69929652 T DE 69929652T DE 69929652 T2 DE69929652 T2 DE 69929652T2
Authority
DE
Germany
Prior art keywords
data
path
error correction
decoder
decoding
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
DE1999629652
Other languages
English (en)
Other versions
DE69929652D1 (de
Inventor
Toshiya łc/o NEC Corporation Todoroki
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Application granted granted Critical
Publication of DE69929652D1 publication Critical patent/DE69929652D1/de
Publication of DE69929652T2 publication Critical patent/DE69929652T2/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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/4115Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors list output Viterbi decoding
    • 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/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory 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/2933Coding, 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 a block and a convolutional code

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)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • Bereich der Erfindung
  • Die vorliegende Erfindung betrifft ein Datenfehler-Korrektursystem, welches zur Verbesserung der Leitungsqualität einer Übertragungsleitung durch Codieren von Daten in Fehler-Korrekturcodes verwendet wird, um Fehler, welche in der Übertragungsleitung erzeugt werden, so weit wie möglich zu korrigieren, und zwar in den Bereichen Satellitenkommunikation und Raumkommunikation, in welchen Daten, wie beispielsweise komprimierte Bilddaten, übertragen werden.
  • Stand der Technik
  • Es existiert ein Datenkorrekturverfahren in der digitalen Kommunikation, welches als "Vitabi Decodierverfahren" bezeichnet wird (G. D. Forney Jr., "The Viterbialgorithum", IEEE, Bd. 61, S. 268 bis 278, März 1973). Um die Fehlerkorrekturfähigkeit zu verbessern wird durch G D. Forney Jr. ein verbundener Code vor geschlagen, welcher eine Kombination aus einem Faltungscode mit dem anderen Code darstellt. Ein weiterer allgemein verwendeter verbundener Code ist eine Verbindung aus einem Faltungscode und einem Reed-Solomon-Code, welcher durch Kombination eines Blockcodierers mit einem Reed-Solomon-Codierer erhalten wird. Die Decodierung der codierten Daten wird basierend auf dem Viterbi-Algorithmus ausgeführt, und die Viterbi-decodierten Daten werden einer Reed-Solomon-Decodierung unterzogen.
  • Da jedoch die Fehlerkorrektur unabhängig durch den Viterbi-Decodierer und durch den Reed-Solomon-Decodierer durchgeführt wird, bringt das vorstehend beschriebene herkömmliche Datenfehler-Korrektursystem das Problem mit sich, dass es nicht möglich ist, einen ausreichenden Fehlerkorrektureffekt zu erhalten und somit die Leitungsqualität einer Übertragungsleitung zu verbessern.
  • Sechadri et al.: "Generalized Viterbi Algorithms for Error Detection with Convolutional Codes" IEEE-1989, Bd. 27. November 1989, Seiten 1534–1538, XP000144863 beschreibt zwei verallgemeinerte Viterbi-Algorithmen (Generalized Viterbi Algorithms, GVAs) zum Decodieren von Faltungscodes. Der Betrieb eines Empfängers, welcher einen GVA zur Verbesserung der Leistung eines verketteten Codierungsschemas verwendet, ist in 1 gezeigt. Gemäß dem beschriebenen Korrektursystem und wie in 1 gezeigt werden die zu übertragenden Daten zunächst mit einem Außenfehler-Detektions-Blockcode codiert, wodurch der verbesserte Datenblock dann durch den inneren Faltungscode codiert wird. Der Innendecodierer erzeugt basierend auf dem GVA die beste Schätzung der verbesserten Daten, und der Außendecodierer führt die Paritätsprüfung der decodierten Daten durch. Wird herausgefunden, dass sie nicht die korrekte Parität aufweisen, so fordert der Außendecodierer beim Innendecodierer den nächstbesten Block an, dessen Parität dann durch den Außencode überprüft wird (S. 1534, linke Spalte, zweiter Absatz [des englischen Textes]).
  • Durch die Korrektursysteme dieses Dokumentes werden jedoch Sequenzen von L besten Kandidaten im Voraus abgeleitet, und zwar nicht nur dann, wenn sie das parallele GVA-Schema verwenden, sondern auch denn, wenn sie das serielle GVA-Schema verwenden. Zu diesem Zweck werden die L besten Kandidaten zu jedem Zeitpunkt aktualisiert, während der normale Viterbi-Algorithmus ausgeführt wird, wie beispielsweise auf Seite 1535, linke Spalte [des englischen Textes] beschrieben.
  • Weiter wird, nachdem die L besten Kandidaten abgeleitet sind, die Sequenz des zweitbesten Kandidaten in diesem System ausgegeben, falls bestimmt wird, dass die Sequenz des besten Kandidaten unzuverlässig ist. Jedoch erfordert dies ein System mit einer komplexen Struktur, um die vorstehenden komplexen Operationen durchzuführen.
  • Aus der EP-A1-413 505 ist ein verallgemeinerter Viterbi-Decodieralgorithmus bekannt, welcher parallel und seriell verallgemeinerte Viterbi-Decodieralgorithmen erfordert, die eine nach Rang geordnete Liste der L besten Kandidaten nach einer Gittersuche erzeugen.
  • Es ist daher ein Ziel der vorliegenden Erfindung, die vorstehend beschriebenen Probleme zu lösen und ein Fehlerkorrektursystem bereitzustellen, welches in der Lage ist, Datenfehler wiederholt zu korrigieren, wobei Bitfehler, welche in der Übertragungsleitung erzeugt werden, ausreichend korrigiert werden, und die Leitungsqualität zu verbessern, und welches eine Struktur aufweist, die einfacher ist und die eine bessere Funktionalität im Vergleich mit der Struktur von Sechardi et al. aufweist.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die Erfindung versteht sich gemäß den Ansprüchen 1 bis 5.
  • Gemäß dem ersten Aspekt der vorliegenden Erfindung weist ein Datenfehler-Korrektursystem Folgendes auf einen Puffer für den Empfang von Daten, welche mit Hilfe eines Blockcodierers und eines Faltungscodierers codiert sind; einen Viterbi-Decodierer für das Decodieren eines Datenblcoks, der vom Datenausgang aus dem ersten Puffer in Übereinstimmung mit dem Viterbi-Algorithmus bestimmt wird; einen Blockcodierer, der mit dem Decodiervorgang beginnt, wenn er Daten empfängt, die einer Blockcodelänge von dem Viterbi-Decodierer entsprechen, um wenn möglich die Fehlerkorrektur auszuführen und das Ergebnis an einen Blockcodierer auszugeben; und einen Regelschaltkreis zum Regeln der Ausführung einer erneuten Decodierung mit Hilfe des Viterbi-Decodierers, so dass eine Decodierung mit Hilfe des Blockdecodierers für diejenigen Daten durchgeführt wird, die der Blockcodelänge entsprechen, deren Fehler noch nicht korrigiert werden konnte, basierend auf der Ausgabe eines Fehlererfassungssignals durch den Blockdecodierer, wenn die Fehlerkorrektur nicht möglich war.
  • Gemäß dem zweiten Aspekt der vorliegenden Erfindung ist das Datenfehler-Korrektursystem gemäß dem ersten Aspekt dadurch gekennzeichnet, dass das Datenfehler-Korrekturystem wiederholte Ausführungen der Decodierung durch den Viterbi-Decodierer und den Blockdecodierer durch den Fehlererfassungsschaltkreis erlaubt, bis die Fehlerkorrektur freigegeben wird, wenn die zweite Fehlererfassung nicht möglich war.
  • Gemäß dem dritten Aspekt der vorliegenden Erfindung ist das Datenfehler-Korrektursystem gemäß dem ersten Aspekt dadurch gekennzeichnet, dass in den Puffer eingegebene Daten die Bitdaten sind, welche durch eine weiche Entscheidungsdarstellung ausgedrückt werden.
  • Gemäß dem vierten Aspekt der vorliegenden Erfindung ist das Datenfehler-Korrektursystem gemäß dem ersten Aspekt dadurch gekennzeichnet, dass der Viterbi-Decodierer Folgendes aufweist: einen Generator für die Zweigmetrik zum Erhalt einer Wahrscheinlichkeit der Fälle, in welchen jedes übertragbare Symbol übertragen wurde, wenn die Daten für jeweilige Symbole, die aus dem Puffer ausgegeben werden, empfangen werden; ein Register für die Pfadmetrik, das die kumulative Metrik des Überlebenspfads speichert; einen Additions-, Vergleichs- und Auswahlschaltkreis zur Ausgabe eines Pfadmetrikwerts bei n Zuständen und von Auswahlinformationen bei dem durch Ausführung eines Vergleichs, einer Addition und einer Auswahl von Ausgangssignalen aus dem Pfadmetrik-Register und aus dem Zweigmetrikregister ausgewählten Zustand n immer dann, wenn die einem Symbol entsprechende Zeit entlang eines Gitterdiagramms abläuft; einen Detektor für die Zustandszahl-Reihenfolge des Pfads mit der maximalen Wahrscheinlichkeit zum Erhalt einer Zustandszahl, die den maximalen metrischen Pfadwert unter den metrischen Pfadwerten bei dem Zustand n, der von dem Additions-, Vergleichs- und Auswahlschaltkreis ausgegeben wird, aufweist; einen Pfadspeicher zum Speichern der Auswahlinformationen bei dem vom Additions-, Vergleichs- und Auswahlschaltkreis ausgegebenen Zustand n; einen Rückverfolgungsschaltkreis zu Ausgeben decodierter Daten mit (u + k) Bits ab dem letzten ankommenden Bit bei der Rückverfolgung nach hinten ab dem Zustandszahl-Ausgangssignal vom Detektor für die Reihenfolge der Zustandszahl des Pfads mit der maximalen Wahrscheinlichkeit zu jedem Zeitpunkt (u + k), wenn die codierten Daten alle k Bits geteilt werden und u Bits als redundante Bits hinzugefügt werden; und einen Decodier-Regelschaltkreis der eine Ausführung einer erneuten Decodierung ermöglicht, wenn ein Regelsignal vom Regelschaltkreis empfangen wird.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm, welches ein Datenkorrektursystem gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
  • 2 ist ein Blockdiagramm zur Erläuterung des Fehlerkorrekturcodierers;
  • 3 ist ein Blockdiagramm, welches den Viterbi-Decodierer in 1 zeigt;
  • 4 ist ein Konzeptdiagramm, welches den Faltungscodierer zur Erläuterung der vorliegenden Erfindung zeigt;
  • 5 ist ein Diagramm, welches die Datenreihe in jeweiligen Blöcken in 2 erläutert;
  • 6 ist ein Diagramm zur Erläuterung einer Gitterdarstellung des Faltungscodierers in 4;
  • 7 ist ein Diagramm zur Erläuterung der Struktur des Additions-, Vergleichs- und Auswahl-Schaltkreises in 3;
  • 8 ist ein Diagramm zur Erläuterung der Gitterdarstellung der Rückverfolgungsverarbeitung in der vorliegenden Erfindung; und
  • 9 ist ein Diagramm zur Erläuterung der weichen Drei-Bit-Entscheidungsdaten in der vorliegenden Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • Nachfolgend wird ein Ausführungsbeispiel der vorliegenden Erfindung mit Bezug auf die anliegenden Zeichnungen beschrieben.
  • 1 zeigt ein erfindungsgemäßes Datenfehler-Korrektursystem. Die Bezugszeichen 10 und 11 bezeichnen Eingangsanschlüsse zur Eingabe empfangener Daten P bzw. empfangener Daten Q; 12 bezeichnet einen Puffer zur Eingabe des Ausgangssignals eines Faltungscodierers, d.h. empfangener Daten P und empfangener Daten Q, welche einen Bitfehler enthalten, der in einer Übertragungsleitung erzeugt wurde; 13 bezeichnet einen Viterbi-Decodierer, welcher die Decodierung eines Eingangssignals der benannten empfangenen Daten-Ausgangssignale P und der benannten empfangenen Daten-Ausgangssignale Q aus dem Puffer 12 gemäß dem Viterbi-Algorithmus ausführt; 14 bezeichnet einen Blockdecodierer, welcher die Decodierung der Decodierungsdaten mit einer Länge, welche einem Blockcode des Viterbi-Decodierers 13 ent spricht, ausführt; 17 ist ein Puffer zur Ausgabe der decodierten Daten aus dem Blockdecodierer 14 nach außen.
  • Das Bezugszeichen 15 bezeichnet einen Regelschaltkreis, welcher ein Detektionssignal empfängt, das von dem Blockdecodierer 14 ausgegeben wird, wenn entschieden wird, dass der Fehler an diesem Punkt nicht korrigiert werden kann, ein Regelsignal R ausgibt, so dass der Viterbi-Decodierer 13 wiederholt eine erneute Decodierung eine im Voraus bestimmte Anzahl von Malen ausführt, und ein Regelsignal für den Viterbi-Decodierer ausgibt, so dass dieser die benannten empfangenen Daten P und die benannten empfangenen Daten Q an den Puffer 12 ausgibt. Der Viterbi-Decodierer 13 ist wie in 3 gezeigt ausgebildet. In 3 bezeichnet 14 einen Generator für die Zweigmetrik zum Erhalt von Wahrscheinlichkeiten der Übertragung jedes Symbols in dem Fall, dass jedes übertragbare Symbol übertragen wird, wenn Daten für jedes aus dem Puffer 12 ausgegebene Symbol empfangen werden, 43 bezeichnet ein Register für die Pfadmetrik, welches eine kumulative Metrik von Überlebenspfaden speichert; 42 ist ein Additions-, Vergleichs- und Auswahlschaltkreis (addition comparison selection circuit, nachfolgend auch als ACS-Schaltkreis bezeichnet) zur Ausführung einer Addition (ADD), eines Vergleichs (VERGLEICH) und einer Auswahl (WAHL) für das Ausgangssignal aus dem Generator für die Zweigmetrik 41 zum Zeitpunkt jedes Symbols und das Ausgangssignal aus dem Register für die Pfadmetrik 43 gemäß dem Gitterdiagramm, sowie zur Ausgabe der somit verglichenen und ausgewählten Pfadmetrikwerte bei n Zuständen und Auswahlinformationen bei n Zuständen.
  • Weiterhin ist in 3 die 44 ein Detektor für die Zustandszahl-Reihenfolge des Pfads mit der maximalen Wahrscheinlichkeit zum Erhalt der Zustandszahl mit dem maximalen Pfadmetrikwert unter Pfadmetrikwerten im Ausgangssignal beim Zustand n von dem ACS-Schaltkreis 42; 45 ist ein Pfadspeicher zum Speichern der Auswahlinformationen auf dem Ausgangssignal beim Zustand n von dem ACS-Schaltkreis 42 zum Zeitpunkt jedes Symbols; 46 ist ein Rückverfolgungsschaltkreis, welcher die (u + k) Bits als decodier te Daten ab dem letzten Bit, welches schließlich durch Rückverfolgung des Pfadspeichers 45 von dem Zustandszahl-Ausgangssignal von dem Detektor 44 für die Reihenfolge der Zustandszahl des Pfads mit der maximalen Wahrscheinlichkeit in Richtung nach hinten für die Symbolzeit g erreicht wird; 47 bezeichnet einen Re-Decodierungsschaltkreis 15 zur Ausführung einer erneuten Decodierung beim Empfang des Regelsignals R von dem in 1 gezeigten Regelschaltkreis.
  • Als nächstes wird der Betrieb beschrieben. Zu Erläuterungszwecken wird angenommen, dass der Blockcodierer 32 die Daten alle k Bits teilt und u Bits als redundante Bits zu allen k Bits hinzufügt, und es wird ebenfalls angenommen, dass das Codierungsverhältnis R und die Restriktionslänge K des Faltungscodierers 33 bei R = 1/2 bzw. K = 3 festgemacht ist.
  • Zunächst wird eine Erläuterung des Fehlerkorrekturcodierers auf der Sendungsseite beschrieben. Auf der Sendungsseite werden, wie in 2 gezeigt, Daten in den Blockcodierer 32 durch den Eingangsanschluss 31 eingegeben.
  • Wie in 5 gezeigt führt der Blockcodierer 32 die Codierung aus, um u Bits des redundanten Bit, c1, c2, ..., cu zu den ersten k Bits, i1, 12, ..., 1k hinzuzufügen und cu + 1, cu + 2, ..., c2u Bits als die redundanten Bits zu dem folgenden Bit k, ik + 1, ik + 2, ..., i2k hinzuzufügen.
  • Anschließend wird das Ausgangssignal des Blockcodierers 32 durch den Faltungscodierer 33 codiert, welcher durch ein Schieberegister mit drei Stufen und ein exklusives ODER-Gatter aufgebaut wird. Dies bedeutet, dass in diesem Faltungscodierer 33 das Ausgangssignal des Blockcodierers 32, wie in 4 gezeigt, in das Schieberegister 50 zum Zeitpunkt jedes Symbols eingegeben wird, und die Ausgangssignale benannter Stufen einer logischen Verarbeitung an exklusiven ODER-Gattern 51 und 52 unterzogen werden, und Daten P, P1, P2, ..., und Daten Q, Q1, Q2, ... aus den Ausgangsanschlüssen 55 und 56 ausgegeben werden. Daten P und Daten Q, welche aus dem Faltungscodierer 33 ausgegeben werden, werden zur Eingabe in den Puffer 12 durch die Eingangsanschlüsse 10 und 11 des Fehlerkorrekturdecodierers übertragen. Zu diesem Zeitpunkt werden diese Daten P und Daten Q durch den weichen Entscheidungsausdruck zur Übertragung an den Viterbi-Decodierer 13 dargestellt, wie diese Daten durch das während der Übertragung erzeugte Rauschen verändert werden. 9 stellt die weiche Entscheidungsdarstellung von "0" und "1" durch drei Bits dar.
  • Als Nächstes wird der Betrieb des Viterbi-Decodierers 13 beschrieben. 6 illustriert eine Gitterdarstellung des Faltungscociderers 33. {0, 0}, {0, 1}, {1, 0} und {1, 1} in der linken Spalte von 6 stellen die Inhalte des ersten und zweiten Schritts {a, b} dar. Die auf der rechten Seite der Pfeile gezeigten Werte werden durch Berechnung der Formel (a × 2 + b) erhalten, und diese Werte werden nachfolgend als Zustandszahl bezeichnet. 6 erläutert kurz Folgendes. Wenn die Zustandszahl 0 ist und die in den Faltungscodierer 33 eingegebenen Daten "0" sind, erfolgt eine Umwandlung auf die Zustandszahl 0, und der Ausgangssignalwert "0 0" (wobei das auf der Linie gezeigte Bezugszeichen die Umwandlung von der Zustandanzahl 0 auf die Zustandszahl 0 anzeigt) der Daten P und der Daten Q wird ausgegeben. Wenn die Eingangsdaten "1" sind, erfolgt eine Umwandlung auf die Zustandszahl 1, und der Ausgangssignalwert "1 1" wird ausgegeben. Im Hinblick auf die anderen Zustandszahlen wird ein Ziel der Umwandlung in Übereinstimmung mit den in den Faltungscodierer 33 eingegebenen Daten bestimmt, und die Ausgangssignalwerte der Daten P und der Daten Q werden auf den Übertragungsleitungen gezeigt. Der Viterbi-Decodierer führt eine Decodierungsverarbeitung gemäß dem durch die Gitterdarstellung gezeigten Diagramm aus.
  • Dies bedeutet, dass wenn die weichen Entscheidungsdaten P und Q in den Viterbi-Decodierer 13 von dem Puffer 12 aus durch ein Regelsignal S von dem Regelschaltkreis 15 eingegeben werden, der Generator für die Zweigmetrik 41 eine Zweigmetrik für die weichen Entscheidungsdaten P1 und Q1 berechnet, d.h. Wahrschein lichkeiten des Übertragungsdatensatzes (P, Q) waren (0, 0), (1, 0), (0, 1), (1, 1). Für weiche Entscheidungsdaten P1 und Q1 wird die Zweigmetrik zu dem Zeitpunkt, wenn der Übertragungsdatensatz (0, 0) ist, zu λ0, die Zweigmetrik wenn der Übertragungsdatensatz (0, 1) ist, ist λ1, die Zweigmetrik für den Übertragungsdatensatz (0, 1) wird λ2, und die Zweigmetrik für den Übertragungsdatensatz (1, 1) wird λ3.
  • Der Generator für die Zweigmetrik 41 gibt diese Zweigmetriken λ0, λ1, λ2 und λ3 an den ACS-Schaltkreis 42 aus. Wie in 7 gezeigt, werden die Pfadmetrikwerte jeder Zustandszahl zum Zeitpunkt m0 zu Γ0(m0), Γ1(m0), Γ2(m0) und Γ3(m0). Das Register für die Pfadmetrik 43 gibt diese Pfadmetriken Γ0(m0), Γ1(m0), Γ2(m0) und Γ3(m0) an den ACS-Schaltkreis 42 aus. Der ACS-Schaltkreis 42 führt eine Operation basierend auf der in 7 gezeigten Gitterdarstellung aus. Dies bedeutet, dass die in der Zustandszahl 0 zum Zeitpunkt m1 zusammenfließende Umwandlung diejenigen von der Zustandszahl 0 und der Zustandszahl 2 enthält. Da die Ausgangsdaten von dem Faltungscodierer zum Zeitpunkt der Umwandlung von der Zustandszahl 0 "0 0" sind, ist die Zweigmetrik zu diesem Zeitpunkt λ0, und da die Ausgangsdaten von dem Faltungscodierer zum Zeitpunkt der Umwandlung von der Zustandszahl 2 "1 1" sind, ist die Zweigmetrik λ3. Die Pfadmetriken der Zustandszahlen 0 und 2 zum Zeitpunkt m0 sind Γ0(m0) und Γ2(m0), und nach der Ausführung der Berechnung von Γ0(m0) + λ0 und Γ2(m0) + λ3 wird der größere durch die vorstehende Berechnung erhaltene Wert in dem Register für die Pfadmetrik 43 als der Pfadmetrikwert Γ0(m1) der Zustandszahl 0 zum Zeitpunkt m1 gespeichert.
  • Die simultan gewählten Zweigwerte (der Wert ist "0", wenn der durch die durchgehende Linie angezeigte Pfad gewählt wird, und der Wert ist "1", wenn der durch die unterbrochene Linie angezeigte Pfad gewählt wird) werden in einem Pfadspeicher 45 als der Zweigwert S0(m1) gespeichert. Nachfolgend werden die Pfadmetrikwerte Γ1(m1), Γ2(m1), Γ3(m1) und Zweigwerte S1(m1), S2(m1), S3(m1) zum Zeitpunkt m1 durch dieselbe Verarbeitung erhalten, die Pfadmetrikwerte werden in dem Register für Pfad metrik 43 gespeichert, und die Zweigwerte werden in einem Pfadspeicher 45 gespeichert. Der Pfadspeicher 45 weist eine Speicherkapazität auf, welche in der Lage ist, die Zweiginformationen innerhalb der Periode mg zu speichern. Der ACS-Schaltkreis 42 gibt die Pfadmetrikwerte Γ0(m1), Γ1(m1), Γ2(m1) und Γ3(m1) zu einem Zeitpunkt m1 an das Register für Pfadmetrik 6 sowie den Detektor 44 für die Zustandszahl-Reihenfolge des Pfads mit der maximalen Wahrscheinlichkeit aus. Dies ist das Ende einer Reihe von Prozessen (nachfolgend als ACS-Verarbeitung bezeichnet). Wenn die nächsten weichen Entscheidungsdaten P2 und Q2 eingegeben werden, wird die vorstehend beschriebene ACS-Verarbeitung wiederholt. Wenn die Verarbeitung abgeschlossen ist, erteilt der Regelschaltkreis 47 die nächste Anweisung.
  • Der Detektor 44 für die Zustandszahl-Reihenfolge des Pfads mit der maximalen Wahrscheinlichkeit gibt an den Rückverfolgungsschaltkreis 46 die Zustandszahl mit den maximalen Pfadmetrikwerten unter den Pfadmetrikwerten mit maximaler Wahrscheinlichkeit Γ0(mg), Γ1(mg), Γ2(mg) und Γ3(mg) aus. Falls zwei oder mehr Zustandszahlen existieren, welche dieselben maximalen Pfadmetrikwerte aufweisen, wird die niedrigste Zustandszahl gewählt. wenn die Zustandszahl mit maximalen Pfadmetrikwerten zum Zeitpunkt mg "2" ist, verfolgt der Rückverfolgungsschaltkreis 46 zum Zeitpunkt mg entlang der durchgehenden Linie die Pfade zurück, welche sich von der Zustandszahl 2 aus erstrecken, die die maximalen Pfadmetrikwerte aufweist, wie in 8 gezeigt, während die Inhalte der Pfadspeicher gelesen werden.
  • Der Rückverfolgungsschaltkreis 46 liest die bei der Zustandszahl 2 gespeicherten Daten zum Zeitpunkt m(g – 1) in dem Pfadspeicher 45, um zu überprüfen, ob der in die Zustandszahl einfließende Pfad die Zustandszahl 1 oder die Zustandszahl 3 ist, und weiß, dass die Zustandszahl 1 ist. Durch Wiederholung derselben Verarbeitung wird der Pfad zum Zeitpunkt m0 zurück verfolgt, und schließlich die (k + m) Datensegmente (entsprechend den Daten vom Zeitpunkt m1 zum Zeitpunkt (k + m)), welche von dem Pfad speicher 45 als die decodierten Daten erhalten werden (nachfolgend als Rückverfolgungsverarbeitung bezeichnet), ausgegeben.
  • Weiterhin ist der Pfadspeicher 45 bereitgestellt, welcher eine Leseoperation in der ACS-Verarbeitung und eine Leseoperation in der Rückverfolgungsverarbeitung simultan durchführen kann. Da der Pfadspeicher in einer Ringstruktur mit einer Speicherkapazität für die Zeitperiode von (g + f) konfiguriert ist, werden die nötigen Daten nicht durch die ACS-Verarbeitung ersetzt. Jedesmal dann, wenn die ACS-Verarbeitung für die Zeitperiode g ausgeführt wird, werden die decodierten Daten nach der Rückverfolgungsverarbeitung ausgegeben. Die (m + u) Bits decodierter Daten von dem Viterbi-Decodierer 13 werden an den Blockdecodierer 14 geliefert.
  • Der Blockdecodierer 14 beginnt mit der Decodierung für die (m + u) Bits decodierter Daten, und falls der Fehler korrigiert werden kann, werden nur k Bits eines Bilddatenbestandes an den Puffer 17 ausgegeben. Falls die Fehlerkorrektur nicht möglich ist, wird das Fehlererfassungssignal an den Regelschaltkreis 15 gesendet. Wenn der Regelschaltkreis 15 das Fehlererfassungssignal empfängt, wird das Regelsignal R dann an den Regelschaltkreis 47 in dem Viterbi-Decodierer 13 gesendet.
  • Wenn der Regelschaltkreis 47 das Regelsignal R empfängt, veranlasst der Detektor 44 für die Zustandszahl-Reihenfolge des Pfads mit der maximalen Wahrscheinlichkeit den Rückverfolgungsschaltkreis 46 zur Ausgabe der Zustandszahl mit dem nächstgrößten Pfadmetrikwert. Falls zwei oder mehr Zustandszahlen mit denselben Pfadmetrikwerten existieren, wird die nächstniedrigste Zahl nach der vorangehenden gewählt. Falls die Zustandszahl mit dem nächstgrößten Pfadmetrikwert, die auf die Zustandszahl 2 mit der maximalen Zahl zum Zeitpunkt mg folgt, "0" ist, verfolgt der Rückverfolgungsschaltkreis 46 den Pfad zurück, der sich von der Zustandszahl 2 erstreckt, während er die Inhalte des Pfadspeichers 45 liest. Der Rückverfolgungsschaltkreis 46 liest die bei der Zustandszahl 0 gespeicherten Daten zum Zeitpunkt m(g – 1) in dem Pfadspeicher 45, um zu überprüfen, ob der in die Zustandszahl 0 einfließende Pfad die Zustandszahl 0 oder die Zustandszahl 2 ist, und weiß, dass die Zustandszahl 0 ist.
  • Der Rückverfolgungsschaltkreis 46 verfolgt den Pfad zum Zeitpunkt m0 zurück, indem er dieselbe Operation wiederholt, und gibt schließlich die (k + m) Datensegmente (entsprechend den Daten vom Zeitpunkt m1 bis zum Zeitpunkt m(k + m)) als die decodierten Daten aus. Der Blockdecodierer 14 empfängt die (m + u) Bits decodierter Daten von dem Viterbi-Decodierer 13 und beginnt mit der Decodierung. Falls die Fehlerkorrektur ausgeführt wird, werden nur k Bits an Dateninformation an den Puffer 17 ausgegeben. Falls der Fehler nicht korrigiert wird, werden die Fehlererfassungsdaten an den Regelschaltkreis 15 gesendet, und die vorstehenden Operationen werden wiederholt, bis der Fehler korrigiert ist oder gleich der Zahl der Zustandszahl ist. Falls der Fehler nicht korrigiert ist, nachdem die Operationen so oft wiederholt wurden, wie die Zahl der Zustandszahl ist, werden (k + u) durch die erste Rückverfolgungsverarbeitung erhaltene Bits an den Puffer 17 ausgegeben.
  • Der Regelschaltkreis 15 sendet das Regelsignal 1 an den Puffer 12, und der Puffer 12 gibt in Reihenfolge die empfangenen weichen Entscheidungsdaten P und Q an den Viterbi-Decodierer 13 aus. Der Viterbi-Decodierer 13 decodiert die nächsten (k + u) Bits und überprüft die Wahrscheinlichkeit der (k + u) Bits, um das Ergebnis an den Puffer 17 auszugeben. Der Puffer 17 gibt die decodierten Bilddaten durch den Ausgangsanschluss 18 aus. Die Anwesenheit einer Pufferart 12 und die Anwesenheit einer anderen Pufferart 17 sollen die Fluktuation während des Decodierbetriebs in Abhängigkeit von der Menge der in der Übertragungsleitung erzeugten Bitfehler absorbieren.
  • In dem vorstehenden Ausführungsbeispiel ist es, obgleich der Fall beschrieben wird, wenn die Rückverfolgungsverarbeitung in dem Viterbi-Decodierer 13 für alle (k + u) Bits ausgeführt wird, möglich, die Rückverfolgungsverarbeitung für eine kleinere Ein heit als (k + u) Bits auszuführen. Durch eine Reduktion der Einheitsgröße ist es möglich, die Position der Fehlerdaten in der Einheit (k + u) bei der wiederholenden Fehlerkorrektur klarzustellen, wenn der Blockdecodierer 14 das Fehlererfassungssignal sendet, was zu einer Verbesserung der Fehlerkorrekturfähigkeit führt. Zusätzlich ist es durch Begrenzung der Anzahl von Fehlerkorrekturbits (wenn beispielsweise ein Fehlerkorrektursignal zur Korrektur von vier Bits fähig ist, wird die Fehlerkorrektur für drei Bits ausgeführt, und falls ein Vier-Bit-Fehler vorliegt, wird das Fehlererfassungssignal ausgegeben) möglich, die Einheit von (k + u) zu korrigierenden Bits klarzustellen, was die Ausführung der Fehlerkorrektur durch wiederholte Decodierung vereinfacht. Weiterhin ist es möglich, die Skala des Schaltkreises zu reduzieren, welcher einen Fehlererfassungscode verwendet, indem ein Paritätsbit ohne Verwendung der Fehlerkorrekturcodes hinzugefügt wird.
  • Wie vorstehend beschrieben weist das Fehlerkorrektursystem der vorliegenden Erfindung einen Blockcodierer, einen Puffer zum Empfang von durch den Faltungscodierer codierten Daten, einen Viterbi-Decodierer für den Empfang der durch den Puffer benannten Daten und die Ausführung der Decodierung der Daten, sowie einen Blockdecodierer auf, welcher die Decodierung beginnt, wenn er die Daten mit einer Länge der Blockcodelänge empfängt, und ausführt, wenn die Fehlerkorrektur möglich ist. Wenn die Fehlerkorrektur nicht möglich ist, ist das System so entworfen, dass der Regelschaltkreis den Viterbi-Decodierer so regelt, dass er die Ausführung einer erneuten Decodierung für eine Blocklänge von Daten regelt, welche für die Fehlerkorrektur unmöglich gemacht wurde. Eine derartige Konstruktion ermöglicht die Wiederholung des Fehlerkorrekturbetriebes nach der Beurteilung der Evaluation der Verlässlichkeit der durch den Viterbi-Decodierer decodierten Daten und ermöglicht eine Korrektur von in der Übertragungsleitung erzeugten Fehlern, was zu einer Verbesserung der Qualität der Übertragungsleitung führt.

Claims (5)

  1. Datenfehler-Korrektursystem, welches Folgendes aufweist: einen ersten Puffer (12) für den Empfang von Daten, welche mit Hilfe eines Bockcodierers (32) und eines Faltungscodierers (33) codiert sind; einen Viterbi-Decodierer (13) für das Decodieren eines Datenblocks, der vom Datenausgang aus dem ersten Puffer (12) in Übereinstimmung mit dem Viterbi-Algorithmus bestimmt wird; einen Blockdecodierer (14), der mit dem Decodiervorgang beginnt, wenn er Daten empfängt, die einer Blockcodelänge von dem Viterbi-Decodierer (13) entsprechen, um wenn möglich die Fehlerkorrektur auszuführen und das Ergebnis auszugeben; – einen Regelschaltkreis (15) zum Steuern der Ausführung einer erneuten Decodierung mit Hilfe des Viterbi-Decodierers (13), so dass eine Decodierung mit Hilfe des BlockDecodierers (14) für diejenigen Daten durchgeführt wird, die der noch zu korrigierenden Blockcodelänge entsprechen, basierend auf der Ausgabe eines Fehlererfassungssignals durch den Blockdecodierer (14), wenn die Fehlerkorrektur nicht möglich ist; und – einen zweiten Puffer (17), der mit dem Blockdecodierer (14) verbunden ist und das vom Blockdecodierer ausgegebene Ergebnis empfängt, um Bilddaten, die mit Hilfe des Viterbi-Decodierers (13) decodiert worden sind, über einen Ausgangsanschluss (18) auszugeben, und wobei ein Steuersignal (S) vom Regelschaltkreis (15) an den ersten Puffer (12) gesendet wird, um die empfangenen Daten der Reihe nach an den Viterbi-Decodierer (13) auszugeben; dadurch gekennzeichnet, dass der Viterbi-Decodierer Folgendes aufweist: einen Generator für die Zweigmetrik (41) zum Erhalt einer Wahrscheinlichkeit der empfangenen Daten für alle möglichen Werte der codierten Daten, wenn die Daten für jeweilige von dem ersten Puffer (12) ausgegebene Symbole empfangen werden; ein Register für die Pfadmetrik (43), das die kumulative Metrik eines Überlebenspfads speichert; einen Additions-, Vergleichs- und Auswahlschaltkreis (42) zur Ausgabe eines Pfadmetrikwerts bei n Zuständen und von Auswahlinformationen an n Zuständen durch Ausführung einer Addition, eines Vergleichs und einer Auswahl von Ausgangssignalen aus dem Pfadmetrik-Register (43) und aus dem Zweigmetrik-Generator (41) immer dann, wenn die einem Symbol entsprechende Zeit entlang eines Gitterdiagramms abläuft; einen Detektor (44) für die Zustandszahl-Reihenfolge des Pfads mit der maximalen Wahrscheinlichkeit zum Erhalt einer Zustandszahl, die den maximalen metrischen Pfadwert unter den metrischen Pfadwerten an n Zuständen, die von dem Additions-, Vergleichs- und Auswahlschaltkreis (42) ausgegeben werden, aufweist; einen Pfadspeicher (45) zum Speichern der Auswahlinformationen an n Zuständen, die vom Additions-, Vergleichs- und Auswahl schaltkreis (42) jedesmal dann ausgegeben werden, wenn die einem Symbol entsprechende Zeit verstrichen ist; einen Rückverfolgungsschaltkreis (46) zum Auslesen der in dem Pfadspeicher (45) gespeicherten Auswahlinformationen in umgekehrter Reihenfolge im Hinblick auf die Reihenfolge, in der die Auswahlinformationen basierend auf dem Zustandszahl-Ausgangssignal vom Detektor (44) für die Reihenfolge der Zustandszahl des Pfads mit der maximalen Wahrscheinlichkeit gespeichert worden ist, und zum Ausgeben von Auswahlinformationen, für u + k Symbole als Viterbi-decodierte Daten, wobei die Auswahlinformationen in dem Pfadspeicher (45) immer dann vor dem Speichern der Auswahlinformationen für eine vorbestimmte Anzahl von Symbolen gespeichert worden ist, wenn die u + k Symbolen entsprechende Zeit verstrichen ist, sobald die codierten Daten, die an allen k Bits und u Bits redundanter Bits geteilt sind, addiert werden; und einen Decodier-Regelschaltkreis (47), der eine Ausführung einer erneuten Decodierung ermöglicht, wenn ein Steuersignal vom Regelschaltkreis (15) empfangen wird; und wobei der Pfadspeicher (45) des Viterbi-Decodierers in der Lage ist, eine Leseoperation in der Addition, dem Vergleich und der Auswahlverarbeitung des Additions-, Vergleichs- und Auswahlschaltkreises (42) sowie einen Lesevorgang in der Rückverfolgungsverarbeitung des Rückverfolgungsschaltkreises (46) gleichzeitig durchzuführen, wobei der Pfadspeicher (45) in einer Ringstruktur mit einer begrenzten Speicherkapazität konfiguriert ist.
  2. Datenfehler-Korrektursystem nach Anspruch 1, dadurch gekennzeichnet, dass wenn die codierten Daten an jedem k Bit geteilt werden, u Bits redundanter Bits addiert werden, falls der Fehler nach der erneuten Decodierung mit Hilfe des Viterbi-Decodierers (13) nicht korrigiert wird und der Decodiervorgang durch den Blockdecodierer (14) einige Male wiederholt wird, dann die k + u Bits, die durch Decodieren erhalten werden, was mit Hilfe des Viterbi-Decodierers (13) vor dem erneuten Decodieren erfolgt, an den zweiten Puffer (17) ausgegeben werden, wobei die Anzahl von Malen gleich der Anzahl von möglichen Zuständen eines Schieberegisters (50) entspricht, das in dem Faltungscodierer (33) bereitgestellt ist.
  3. Datenfehler-Korrektursystem nach Anspruch 1, dadurch gekennzeichnet, dass das Datenfehler-Korrektursystem durch das Fehlererfassungsignal wiederholte Ausführungen einer Decodierung durch den Viterbi-Decodierer (13) und den Blockdecodierer (14) ermöglicht, bis die Fehlerkorrektur freigegeben wird.
  4. Datenfehler-Korrektursystem nach Anspruch 1, dadurch gekennzeichnet, dass der Dateneingang in den ersten Puffer (12) Bitdaten sind, die durch eine weiche Entscheidungsdarstellung ausgedrückt werden.
  5. Datenfehler-Korrektursystem nach Anspruch 1, dadurch gekennzeichnet, dass der Blockdecodierer (14) in der Lage ist, die Fehlerkorrektur für eine begrenzte Anzahl von fehlerkorrigierenden Bits, die kleiner als die Anzahl von Bits ist, die mit Hilfe des Blockdecodierers (14) korrigiert werden kann, durchzuführen.
DE1999629652 1998-12-28 1999-12-24 Datenfehlerkorrektursystem Expired - Lifetime DE69929652T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP37450398A JP3239870B2 (ja) 1998-12-28 1998-12-28 データ誤り訂正システム
JP37450398 1998-12-28

Publications (2)

Publication Number Publication Date
DE69929652D1 DE69929652D1 (de) 2006-04-13
DE69929652T2 true DE69929652T2 (de) 2006-09-21

Family

ID=18503962

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1999629652 Expired - Lifetime DE69929652T2 (de) 1998-12-28 1999-12-24 Datenfehlerkorrektursystem

Country Status (5)

Country Link
US (1) US6738941B1 (de)
EP (1) EP1017180B1 (de)
JP (1) JP3239870B2 (de)
CA (1) CA2293079C (de)
DE (1) DE69929652T2 (de)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100369561B1 (ko) * 2000-11-08 2003-01-29 학교법인 한국정보통신학원 터보 코드용 인코더 및 디코더
JP4555454B2 (ja) * 2000-11-21 2010-09-29 富士通株式会社 データ再生装置
JP3545726B2 (ja) * 2001-02-27 2004-07-21 松下電器産業株式会社 受信側装置
KR100444571B1 (ko) 2002-01-11 2004-08-16 삼성전자주식회사 터보디코더와 알에스디코더가 연접된 디코딩장치 및 그의디코딩방법
US7127667B2 (en) * 2002-04-15 2006-10-24 Mediatek Inc. ACS circuit and viterbi decoder with the circuit
JP2004253017A (ja) 2003-02-18 2004-09-09 Fujitsu Ltd 記録媒体再生装置、記録媒体再生方法およびハードディスクコントローラ
JP2004288283A (ja) 2003-03-20 2004-10-14 Hitachi Ltd 情報記録フォーマット、情報記録再生符号化方法・回路およびこれを用いた磁気ディスク記録再生装置、情報記録再生装置、並びに情報通信装置
JP4317589B2 (ja) * 2003-04-18 2009-08-19 株式会社野村総合研究所 符号化装置、復号化装置、符号化プログラム及び復号化プログラム
JP2005045727A (ja) 2003-07-25 2005-02-17 Matsushita Electric Ind Co Ltd ビタビ復号器
US7246298B2 (en) * 2003-11-24 2007-07-17 Via Technologies, Inc. Unified viterbi/turbo decoder for mobile communication systems
US7861146B2 (en) * 2004-05-27 2010-12-28 Panasonic Corporation Viterbi decoding apparatus and Viterbi decoding method
US7269781B2 (en) * 2004-06-25 2007-09-11 Hewlett-Packard Development Company, L.P. Discrete universal denoising with reliability information
US20050289433A1 (en) * 2004-06-25 2005-12-29 Itschak Weissman Discrete universal denoising with error correction coding
US7870176B2 (en) * 2004-07-08 2011-01-11 Asocs Ltd. Method of and apparatus for implementing fast orthogonal transforms of variable size
CN101036299B (zh) * 2004-08-25 2012-11-14 阿苏克斯有限公司 用于实现可重构网格类型解码的方法和装置
KR100675389B1 (ko) * 2005-01-27 2007-01-29 삼성전자주식회사 역추적 작업을 병렬적으로 수행하는 비터비 디코더 및 그디코딩 방법
US7971131B1 (en) 2005-05-06 2011-06-28 Hewlett-Packard Development Company, L.P. System and method for iterative denoising and error correction decoding
US7434146B1 (en) * 2005-05-06 2008-10-07 Helwett-Packard Development Company, L.P. Denoising and error correction for finite input, general output channel
JP4729726B2 (ja) * 2006-02-06 2011-07-20 学校法人 名城大学 誤り訂正装置、受信装置、誤り訂正方法および誤り訂正プログラム
US8111767B2 (en) * 2007-05-31 2012-02-07 Renesas Electronics Corporation Adaptive sliding block Viterbi decoder
JP4806673B2 (ja) * 2007-12-27 2011-11-02 ルネサスエレクトロニクス株式会社 復号装置及び復号方法
KR101462211B1 (ko) * 2008-01-30 2014-11-17 삼성전자주식회사 이동통신 시스템의 복호 장치 및 방법
JP4599625B2 (ja) * 2008-02-20 2010-12-15 株式会社シンセシス 誤り訂正復号器
KR101526317B1 (ko) * 2008-05-09 2015-06-11 삼성전자주식회사 계층적 디코딩 장치
TWI760772B (zh) * 2020-06-16 2022-04-11 瑞昱半導體股份有限公司 基於維特比演算法之解碼電路及解碼方法
CN113839680B (zh) * 2020-06-23 2024-04-02 瑞昱半导体股份有限公司 基于维特比算法的解码电路及解码方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5208816A (en) * 1989-08-18 1993-05-04 At&T Bell Laboratories Generalized viterbi decoding algorithms
CA2020899C (en) 1989-08-18 1995-09-05 Nambirajan Seshadri Generalized viterbi decoding algorithms
CA2113941A1 (en) * 1993-01-25 1994-07-26 Andrew J. Macdonald Error correcting decoder and decoding method for receivers in digital cellular communications systems
ZA947317B (en) * 1993-09-24 1995-05-10 Qualcomm Inc Multirate serial viterbi decoder for code division multiple access system applications
US5673291A (en) * 1994-09-14 1997-09-30 Ericsson Inc. Simultaneous demodulation and decoding of a digitally modulated radio signal using known symbols
KR0145867B1 (ko) * 1995-08-28 1998-08-17 김광호 코드분할 다원접속 셀룰라 통신시스템의 단말기 및 송수신데이타 처리방법
JPH09238125A (ja) * 1996-02-29 1997-09-09 N T T Ido Tsushinmo Kk 誤り制御方法および装置
US5917837A (en) * 1996-09-11 1999-06-29 Qualcomm, Incorporated Method and apparatus for performing decoding of codes with the use of side information associated with the encoded data
US6108372A (en) * 1996-10-30 2000-08-22 Qualcomm Inc. Method and apparatus for decoding variable rate data using hypothesis testing to determine data rate
US5983382A (en) * 1996-12-31 1999-11-09 Lucent Technologies, Inc. Automatic retransmission query (ARQ) with inner code for generating multiple provisional decodings of a data packet
US5983383A (en) * 1997-01-17 1999-11-09 Qualcom Incorporated Method and apparatus for transmitting and receiving concatenated code data
JPH10224233A (ja) 1997-02-06 1998-08-21 Nec Ic Microcomput Syst Ltd データ復号装置
US6094465A (en) * 1997-03-21 2000-07-25 Qualcomm Incorporated Method and apparatus for performing decoding of CRC outer concatenated codes
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
JPH11163961A (ja) * 1997-11-26 1999-06-18 Matsushita Electric Ind Co Ltd 伝送レート判定方法およびその装置
US6161210A (en) * 1998-04-03 2000-12-12 Lucent Technologies Inc. List Viterbi algorithms for tailbiting convolutional codes
US6292918B1 (en) * 1998-11-05 2001-09-18 Qualcomm Incorporated Efficient iterative decoding
JP3269035B2 (ja) 1998-11-27 2002-03-25 株式会社ワイ・アール・ピー移動通信基盤技術研究所 復号装置
US6366624B1 (en) * 1998-11-30 2002-04-02 Ericsson Inc. Systems and methods for receiving a modulated signal containing encoded and unencoded bits using multi-pass demodulation
EP1009098A1 (de) 1998-12-10 2000-06-14 Sony International (Europe) GmbH Fehlerkorrektur mit Turbokodierung und CRC

Also Published As

Publication number Publication date
CA2293079A1 (en) 2000-06-28
JP3239870B2 (ja) 2001-12-17
CA2293079C (en) 2006-12-05
EP1017180A3 (de) 2001-04-25
DE69929652D1 (de) 2006-04-13
EP1017180B1 (de) 2006-02-01
JP2000196469A (ja) 2000-07-14
EP1017180A2 (de) 2000-07-05
US6738941B1 (en) 2004-05-18

Similar Documents

Publication Publication Date Title
DE69929652T2 (de) Datenfehlerkorrektursystem
DE69500157T2 (de) Signalverarbeitungsschaltung zur Durchführung des Viterbi Algorithmus
DE69029542T2 (de) Viterbidekodierer
DE69532949T2 (de) Verfahren und gerät zur dekoderoptimierung
DE10133595B4 (de) Pufferschaltung, Speicherzugriffsverfahren und Reed-Solomon-Decoder
DE69331568T2 (de) Arithmetisches Gerät
EP0392603B1 (de) Übertragungssystem
DE3689819T2 (de) Fehler-Korrektur-Koder/Dekoder.
DE3486408T2 (de) Verfahren und Vorrichtung zur Dekodierung eines fehlerkorrigierenden Kodes.
DE69609509T2 (de) Trelliskodierung mit verminderter fehlerverbreitung
DE69227010T2 (de) Viterbi-Dekodierungsgerät mit Mehrheitsentscheidung
DE69212695T2 (de) Decodierungseinrichtung
DE112004002008B4 (de) Vereinheitlichter Viterbi/Turbo-Decoder für mobile Telekommunikationssysteme
DE69936067T2 (de) Verfahren und Vorrichtung zur Maximum-a-Posteriori Warscheinlichkeits-Dekodierung
DE68907150T2 (de) Sequentieller Dekodierer.
DE10238841B4 (de) Parallelverarbeitung der Decodierung und der zyklischen Redundanzüberprüfung beim Empfang von Mobilfunksignalen
DE3788143T2 (de) Sequenzielles Dekodierungsgerät zur Dekodierung von Systemkodes.
DE2503107A1 (de) Korrekturcode fuer impulsfehler
DE10059490A1 (de) Exklusiv-Oder-Code (XOR-Code) und serielle Verkettungscodierer/-decodierer, die selbigen verwenden
DE69226154T2 (de) Viterbi Dekodierer mit blockweisen Verschiebungsoperationen im Pfadspeicher
DE69719024T2 (de) Verfahren zur dekodierung von datensignalen mittels eines festlängenentscheidungsfensters
DE10196688B3 (de) Ein Decodierer für eine trellis-basierte Kanalcodierung
DE10010238C2 (de) Verfahren zum Speichern von Pfadmetriken in einem Viterbi-Decodierer
DE69130717T2 (de) Maximalwahrscheinlichkeitssequenzdetektor
EP0769853B1 (de) Logischer Block für einen Viterbi-Decoder

Legal Events

Date Code Title Description
8364 No opposition during term of opposition