DE60104338T2 - Vorrichtung und verfahren zur turbo decodierung mit signaturdatenvergleich als abbruchkriterium - Google Patents
Vorrichtung und verfahren zur turbo decodierung mit signaturdatenvergleich als abbruchkriterium Download PDFInfo
- Publication number
- DE60104338T2 DE60104338T2 DE60104338T DE60104338T DE60104338T2 DE 60104338 T2 DE60104338 T2 DE 60104338T2 DE 60104338 T DE60104338 T DE 60104338T DE 60104338 T DE60104338 T DE 60104338T DE 60104338 T2 DE60104338 T2 DE 60104338T2
- Authority
- DE
- Germany
- Prior art keywords
- decoder
- signature
- code
- iteration
- data
- 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
Links
- 238000000034 method Methods 0.000 title claims description 13
- 238000012545 processing Methods 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 10
- 238000012937 correction Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
- H04L1/005—Iterative decoding, including iteration between signal detection and decoding operation
- H04L1/0051—Stopping criteria
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, 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/2957—Turbo codes and decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, 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/2957—Turbo codes and decoding
- H03M13/2975—Judging correct decoding, e.g. iteration stopping criteria
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6577—Representation or format of variables, register sizes or word-lengths and quantization
- H03M13/6588—Compression or short representation of variables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0064—Concatenated codes
- H04L1/0066—Parallel concatenated codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
- Gebiet der Erfindung
- Die vorliegende Erfindung bezieht sich auf Kommunikationssysteme, die eine Fehlerkorrektur für empfangene Kommunikationssignale einsetzen und insbesondere auf solche Systeme, die iterative Turbo-Decodersysteme einsetzen.
- Hintergrund
- Turbocodes sind eine Form von Fehlerkorrekturcodes, die eine Leistung in der Nähe der Shannon-Grenze bringen zum Betrieb in einem Additive While Gaussian Noise (AWGN) – Kanal in einem drahtlosen Kommunikationssystem, wie zum Beispiel Time Division Duplex unter der Verwendung von Codemultiplex-Vielfachzugriff (Code Division Multiple Access) (TDD/CDMA). Decoder für diese Codes verwenden einen iterativen Algorithmus, der bei jeder Iteration eine verbesserte Schätzung der übertragenen Daten abgibt.
- Ein wichtiger Konstruktionsparameter für Decoder ist die Anzahl zu verwendender Iterationen. Decoder können in Hardware- oder Software implementiert werden, in jedem Fall bestimmt aber die Anzahl verwendeter Iterationen die Anforderung nach Verarbeitungsressourcen, wie den Verarbeitungsdurchsatz, der zum Erzielen der gewünschten Datenrate benötigt wird, die beim Decodieren verbrauchte Energie und die Menge der Hardware, die bei einer Hardwareimplementierung benötigt wird.
- Auf diesem Gebiet sind zwei allgemeine Strategien zum Bestimmen der Anzahl von Iterationen in einer Decoderimplementierung bekannt. Erstens kann eine feste Anzahl von Iterationen als ein Teil der Konstruktion bestimmt werden. Dies vereinfacht die Implementierung, erfordert jedoch übermäßig viel Verarbeitungsressourcen, da die feste Anzahl so hoch angesetzt werden muss, dass die gewünschte Leistung erzielt wird, d. h. eine Bitfehlerrate für den erwarteten Bereich von Rauschabstandspegeln, für fast alle Fälle, bei denen viele Decodierungen weniger als die feste Anzahl von Iterationen benötigen würden.
- Eine weitere Strategie besteht in der Verwendung einer Stoppregel, um dynamisch festzustellen, wann die Decodierung beendet werden kann, ohne dass dadurch die Leistung beeinträchtigt würde. Die einfachste Stoppregel besteht aus hartentscheidungsunterstützten (Hard-Decision-Aided/HDA) Kriterien. Bei der Verwendung dieser Stoppregel wird die Decodierung beendet, wenn zwei aufeinander folgende Iterationen das gleiche Ergebnis haben. Zwischen Iterationen gibt es keine Veränderungen an den harten Entscheidungen. Implementierungen dieser Regel für einen codierten Block von N Bits erfordert N Speicherplätze zum Speichern der Ergebnisse der vorhergehenden Implementierung sowie einen Vergleich des vorhergehenden N-Bit-Ergebnisses mit dem aktuellen N-Bit-Ergebnis.
- Herkömmliche Stoppkriterien sind in einem Artikel von Shao, Rose Y. und Fossorier, Marc P. C. mit dem Titel "Two Simple Stopping Criteria for Turbo Decoding" ("Zwei einfache Stoppkriterien für die Turbodecodierung"), IEEE Transactions on Communications, Band 47, Nr. 8, August 1999, offenbart. Dieser Artikel gibt zwei einfache Kriterien zum Stoppen des Iterationsvorgangs bei der Turbodecodierung an.
EP 1 017 176 undEP 1 009 098 beschreiben die allgemeine Turbo-Code-Fehlererfassung des Standes der Technik.EP 1 009 098 offenbart die Verwendung einer zyklischen Redundanzprüfsumme, die durch das Anhängen von Prüfsummenbits an jeden Rahmen implementiert wird. - Ein typischer Turbodecoder kann Turbodecoder-Schätzdaten mit mehr als 5.000 Informationsbits für jede Iteration erzeugen. Demnach erfordert die Implementierung einer herkömmlichen Stoppregel eine zusätzliche Speicherzuweisung von mehr als 5.000 Bits zum Speichern einer ersten Codeiteration zum Vergleich mit einer nächsten Codeiteration, um zu bestimmen, ob die gleichen Ergebnisse erzeugt wurden.
- Der Erfinder hat erkannt, dass es wünschenswerter wäre, einen verbesserten Turbodecoder vorzusehen, der eine Stoppregel mit einem geringeren Bedarf an zusätzlichem Speicher wirkungsvoller implementieren kann.
- Zusammenfassung
- Ein iterativer Turbodecoder und ein entsprechendes Verfahren zur Fehlerkorrektur von Kommunikationssignaldaten sind vorgesehen. Der Decoder wertet rekursiv Signaldaten für eine ausgewählte Anzahl von Iterationen aus.
- Während jeder Iteration erzeugt die Decoderschaltung eine neue Schätzung des übertragenen Datenblocks, was auch als Extrinsik bezeichnet wird. Ein Decoderdatenspeicher speichert die für eine Decodierungsiteration erzeugte Extrinsik.
- Eine Signaturcodeerzeugungsschaltung erzeugt für jede Decoderiteration Codesignaturen, die jeder neuen Schätzung des übertragenen Datenblocks entsprechen. Die Codesignaturen sind vorzugsweise mindestens 20 Mal kleiner als die Daten, welche sie repräsentieren, und sind in der Praxis normal mindestens 100 Mal kleiner. Ein relativ kleiner Codesignaturspeicher speichert die Codesignatur, die Turbodecoder-Schätzungsdaten entspricht, die für eine Decodierungsiteration erzeugt wurden.
- Ein Komparator ist der Signaturcodeschaltung und der Decoderschaltung wirksam zugeordnet. Der Komparator vergleicht ein erzeugtes Codesignal für eine neue Schätzung des übertragenen Datenblocks, die für eine vorliegende Decoderiteration erzeugt und gespeichert wird, mit dem Inhalt des Signaturspeichers. Wenn der Vergleich eine Gleichheit ergibt, stellt die Decoderschaltung die Iterationsverarbeitung ein. Wenn der Vergleich eine Ungleichheit ergibt, wird die erzeugte Codesignatur im Signaturspeicher gespeichert, wo sie zum Vergleich mit einer Codesignatur für eine nächste Decoderiteration zur Verfügung steht.
- Der Komparator kann zum Speichern des erzeugten Codes im Signaturregister verwendet werden. Als Alternative kann der Komparator einfach auf das Signaturregister zugreifen, bevor der Signaturcodegenerator den neuen Signaturcode ausgibt. Dies erlaubt dem Signaturcodegenerator, den neuen Signaturcode sowohl an den Komparator als auch an das Signaturregister auszugeben, wie das in einer Phantomdarstellung gezeigt ist, was es für den Komparator erübrigt, einen Speichervorgang im Signaturcoderegister durchzuführen.
- Vorzugsweise ist der Komparator der Decoderschaltung wirksam zugeordnet, um die Decoderschaltungsiterationsverarbeitung erst zu steuern, nachdem eine ausgewählte Mindestanzahl von Iterationen stattgefunden hat. Außerdem stellt vorzugsweise die Decoderschaltung die Iterationsverarbeitung ein, wenn ein vorbestimmter Grenzwert von Iterationen stattgefunden hat. Der Grenzwert von Iterationen ist vorzugsweise eine ganze Zahl, die mindestens um drei größer als die ausgewählte Mindestanzahl ist. In einer bevorzugten Ausführungsform ist die ausgewählte Mindestanzahl vier (4) und der Grenzwert acht (8).
- Es ist eine Aufgabe der vorliegenden Erfindung, einen iterativen Turbodecoder vorzusehen, der selektiv eine Stoppregel mit weniger Speicherplatzbedarf als der Stand der Technik implementiert.
- Weitere Aufgaben und Vorteile der vorliegenden Erfindung werden aus der folgenden Beschreibung einer derzeit bevorzugten Ausführungsform ersichtlich.
- Kurzbeschreibung der Zeichnung(en)
-
1 ist eine schematische Darstellung eines Turbodecoders, der gemäß der Lehre der vorliegenden Erfindung hergestellt wurde. - Detaillierte Beschreibung der bevorzugten Ausführungsform(en)
- In
1 ist ein Turbodecoder10 mit einem Kommunikationssignaleingang12 und einem Ausgang14 gezeigt. Der Turbodecoder10 weist eine Turbodecodierungs-Iterationsverarbeitungsschaltung20 und ein zugeordnetes Turbo-Datenregister22 auf. Die Decoder-Verarbeitungsschaltung20 empfängt Datenblöcke von Kommunikationssignalen über den Eingang12 und erzeugt eine neue Schätzung des übertragenen Datenblocks, die im Register22 gespeichert wird. Die Verarbeitungsschaltung20 ist dem Turbo-Datenregister22 rekursiv zugeordnet, so dass der Prozessor20 den Inhalt des Turbo-Datenregisters22 für die zweite und jede folgende Iteration der Turbo-Decodierungsverarbeitung verwendet. - Die Turbodecodierungs-Verarbeitungsschaltung
20 ist vorzugsweise mit einem vorbestimmten Grenzwert bezüglich der Anzahl von Verarbeitungsiterationen konfiguriert, die für einen bestimmten Block von Kommunikationsdaten stattfinden, so dass die Turbodecoderausgabe auf dem Inhalt des Turbodecoderregisters nach der letzten Decodierungsiteration basiert. Vorzugsweise ist die maximale Anzahl von Verarbeitungsiterationen, die vom Prozessor20 durchgeführt wird, acht (8). - Der Prozessor
20 implementiert auch eine Stoppregel, bei der weniger als die maximale Anzahl von Iterationen benötigt wird. Wenn der Decoder feststellt, dass sich die für aufeinander folgende Iterationen erzeugten Schätzdaten nicht ändern, wird die iterative Verarbeitung eingestellt. Anstelle des Vorsehens eines relativ großen zusätzlichen Speichers zum Speichern einer vorhergehenden Iteration von Schätzdaten sind ein relativ einfach aufgebauter Signaturcodegenerator24 und ein relativ kleines Codesignaturregister26 als Eingaben an einen Komparator28 vorgesehen, der zum Implementieren der Stoppregel mit dem Iterationsprozessor20 wirksam verbunden ist. - Vorzugsweise ist der Komparator
28 wirksam mit der Decoderschaltung20 verbunden, um die Decoderschaltungs-Iterationsverarbeitung erst zu steuern, nachdem eine ausgewählte Mindestanzahl von Iterationen stattgefunden hat. Außerdem hört vorzugsweise die Decoderschaltung20 mit der Iterationsverarbeitung auf, wenn ein vorbestimmter Grenzwert von Iterationen stattgefunden hat. Der Grenzwert von Iterationen ist vorzugsweise eine ganze Zahl, die um mindestens drei größer als die ausgewählte Mindestanzahl ist. In einer bevorzugten Ausführungsform ist die ausgewählte Mindestanzahl vier (4) und der Grenzwert acht (8). - Für einen Turbodecoder, der binäre Schätzungsdaten in der Größenordnung von 5.114 Bits für eine einzige Iteration erzeugt, umfasst der Signaturcodegenerator vorzugsweise einen einfachen 16-Bit-Binärteiler, der den binären 5.114-Bit-String von Daten durch eine binäre 16-Bit-Zahl teilt und den Rest, der aus der Teilungsfunktion resultiert, an den Komparator
28 ausgibt. Der Rest übersteigt dann notwendigerweise nicht 16 Bits, da der Divisor eine Länge von 16 Bit hat. - Für einen 16-Bit-Divisor wird vorzugsweise die Binärzahl 1000000000000011 verwendet. Ein solcher Divisor entspricht einem binären Polynom, das als 1 + x14 + x15 dargestellt werden kann. Die durch den Codegenerator
24 durchgeführte binäre Teilung entspricht mathematisch dem Teilen einer binären Polynomdarstellung der 5.114-Bit-Iterations-Schätzdaten durch das Polynom 1 + x14 + x15 unter der Verwendung einer binären (d. h. Modulo-2-) Mathematik. Der Rest der binären Teilung entspricht dem restlichen Polynom. Die Wahrscheinlichkeit, dass der Rest für zwei aufeinander folgende 5.114-Bit-Strings von Schätzungsdaten der gleiche ist, ist ungefähr 1/216, was nach Meinung des Erfinders ein akzeptables Restrisiko ist. - Die mathematische Korrespondenz und die Verwendung von Polynomdarstellungen zum Erzeugen von Signalcodes ist auf diesem Gebiet wohl bekannt und wird in einem Artikel von Pearson, W. W. und Brown, D. T. mit dem Titel "Signal Codes For Error Detection" ("Signalcodes zur Fehlerdetektion"), Proceedings of the IRE, Januar 1961, erörtert. Der Erfinder hat erkannt, dass diese Form der Codierung bei Turbodecodern angewendet werden kann.
- Im Betrieb gibt der Turbodecoder-Prozessor
20 für eine bestimmte Iteration N Bits Schätzungsdaten an das Turbo-Datenregister22 und den Signalcodegenerator24 aus. Der Signalcodegenerator24 erzeugt eine entsprechende Codesignatur mit M Bits, das vorzugsweise mindestens 100 Mal kleiner als N ist, die in den Komparator28 eingegeben werden. Der Komparator28 vergleicht den M-Bit-Signaturcode, der vom Codegenerator24 eingegeben wird, mit dem Inhalt des Signaturregisters26 , um zu bestimmen, ob sie gleich sind. - Wenn der Komparator eine Gleichheit feststellt, wird das Signal an den Prozessor
20 gesendet, um die Iterationsverarbeitung zu stoppen und die Turbocodierungsergebnisse auszugeben. Wenn der Komparator eine Ungleichheit feststellt, wird der M-Bit-Signaturcode, der vom Signaturcodegenerator24 empfangen wurde, im Signaturregister26 gespeichert. - Der Komparator
28 kann zum Speichern des erzeugten Codes im Signaturregister26 verwendet werden. Alternativ dazu kann der Komparator28 einfach auf das Signaturregister26 zugreifen, bevor der Signaturcodegenerator24 den neuen Signaturcode ausgibt. Dies erlaubt es dem Signaturcodegenerator24 , den neuen Signaturcode sowohl an den Komparator28 als auch an das Signaturregister26 auszugeben, wie in Phantomdarstellung gezeigt, was für den Komparator28 die Notwendigkeit erübrigt, einen Speichervorgang in das Signaturcoderegister26 durchzuführen. - Wofür eine Decoderiteration ein 5.114-Bit-Block von Binärdaten erzeugt wird, teilt der Signaturcodegenerator
24 vorzugsweise durch 1000000000000011 zum Erzeugen eines Restes von nicht mehr als 16 Bits, so dass das Signaturregister26 nur eine 16-Bit-Speicherkapazität zu haben braucht. - Die vorliegende Erfindung ist für Hardwareimplementierungen besonders geeignet, wo die Kosten des Erzeugens eines Signaturcodes klein sind und die Kosten zusätzlich benötigten Speicherplatzes hoch wären. Sie kann jedoch auch in Softwareimplementierungen eingesetzt werden.
Claims (17)
- Iterativer Turbo-Decoder für die Fehlerkorrektur bei Kommunikationssignaldaten, mit einem Decoder-Datenspeicher (
22 ) zum Speichern für eine Decodierungsiteration erzeugter Decoder-Schätzungsdaten und Decoder-Iterations-Prozessormittel (20 ) zum Erzeugen aufeinander folgender Iterationen von Decoder-Schätzungsdaten mit einer ausgewählten Bitlänge N und zum Speichern der Decoder-Schätzungsdaten im Decoder-Datenspeicher (22 ), wobei der iterative Turbo-Decoder gekennzeichnet ist durch: – einen Signaturspeicher (26 ) zum Speichern einer Codesignatur, die eine ausgewählte Bitlänge M hat, die den Decoder-Schätzungsdaten entspricht, die für eine Decodierungsiteration erzeugt wurden, wobei M mindestens zwanzig Mal kleiner als N ist; – Signaturcodeerzeugungsmittel (24 ) zum Erzeugen einer M-Bit-Codesignatur von Decoder-Schätzungsdaten durch Verarbeiten der Decoder-Schätzungsdaten mit einem M-Bit-String, der einem vorbestimmten binären Polynom der Ordnung M-1 entspricht; und – einen Vergleicher (28 ), der mit den Signaturcodeerzeugungsmitteln (24 ) verbunden ist, und wobei die Decoder-Iterations-Prozessormittel (20 ) zum Vergleichen einer erzeugten Codesignatur für eine Iteration von Decoder-Schätzungsdaten mit dem Inhalt des Signaturspeichers (26 ) zum Liefern eines Stoppsignals an die Decoder-Iterations-Prozessormittel (20 ) vorgesehen sind, wenn der Vergleich eine Gleichheit widerspiegelt. - Iterativer Turbo-Decoder nach Anspruch 1, bei dem – der Vergleicher (
28 ) so konfiguriert ist, dass er erst dann ein Stoppsignal sendet, wenn eine ausgewählte Anzahl von Iterationen stattgefunden hat; und – die Decoder-Iterations-Prozessormittel (20 ) so konfiguriert sind, dass sie die Iterationsverarbeitung stoppen, wenn ein vorbestimmter Grenzwert von Iterationen stattgefunden hat, wobei der Grenzwert eine ganze Zahl ist, die um mindestens drei größer als die ausgewählte Anzahl ist. - Iterativer Turbo-Decoder nach Anspruch 2, bei dem die Anzahl vier und der Grenzwert acht ist.
- Iterativer Turbo-Decoder nach Anspruch 1, bei dem die Signaturcodeerzeugungsmittel (
24 ) so konfiguriert sind, dass sie in der Weise Codesignaturen erzeugen, dass die Codesignatur-Bitlänge M mindestens 100 Mal kleiner als die ausgewählte Bitlänge N ist. - Iterativer Turbo-Decoder nach Anspruch 1, bei dem die Decoder-Schätzungsdaten ein N Bit langer binärer String sind und die Signaturcodeerzeugungsmittel (
24 ) einen binären Teiler zum Teilen entsprechender N Bit langer binärer Strings von Decoderdaten durch den M-Bit-String, der einem ausgewählten binären Teiler entspricht, und zum Ausgeben der restlichen Teilung an den Vergleicher (28 ) als die Codesignatur umfassen. - Iterativer Turbo-Decoder nach Anspruch 5, bei dem die Decoder-Schätzungsdaten-Binärstrings eine Bitlänge von mindestens 5.000 Bit haben und der binäre Teiler eine 16-Bit-Binärzahl ist, wodurch die Codesignaturen höchstens 16 Bit lang sind.
- Iterativer Turbo-Decoder nach Anspruch 6, bei dem der Teiler 1000000000000011 ist.
- Iterativer Turbo-Decoder nach Anspruch 1, bei dem der Vergleicher (
28 ) mit dem Signaturspeicher (26 ) verbunden ist, um eine Codesignatur so abzuspeichern, dass sie zum Vergleich mit einer Codesignatur für eine nächste Decoder-Iteration zur Verfügung steht. - Iterativer Turbo-Decoder nach Anspruch 1, bei dem die Signaturcodeerzeugungsmittel (
24 ) mit dem Signaturspeicher (26 ) verbunden sind, um eine Codesignatur so abzuspeichern, dass sie zum Vergleich mit einer Codesignatur für eine nächste Decoder-Iteration zur Verfügung steht. - Verfahren für einen iterativen Turbo-Decoder, der Fehler in Kommunikationssignaldaten durch rekursives Auswerten von Signaldaten für eine ausgewählte Anzahl von Iterationen korrigiert, indem er aufeinander folgende Iterationen von Decoder-Schätzungsdaten mit einer ausgewählten Bitlänge N erzeugt und die Decoder-Schätzungsdaten im Decoder-Datenspeicher (
22 ) speichert, wobei das Verfahren gekennzeichnet ist durch: – Speichern einer erzeugten Codesignatur, die eine ausgewählte Bitlänge M hat, die den Decoder-Schätzungsdaten entspricht, die für eine Decodierungsiteration erzeugt wurden, in einem Signaturspeicher (26 ), wobei M mindestens zwanzig Mal kleiner als N ist; – Erzeugen einer M-Bit-Codesignatur von Decoder-Schätzungsdaten durch Verarbeiten der Decoder-Schätzungsdaten mit einem M-Bit-String, der einem vorbestimmten binären Polynom der Ordnung M-1 entspricht; und – Vergleichen einer erzeugten Codesignatur für eine Iteration von Decoder-Schätzungsdaten mit dem Inhalt des Signaturspeichers (26 ); und – Stoppen der Decoder-Schätzungsdaten-Iterationserzeugung, wenn der Vergleich eine Gleichheit widerspiegelt. - Verfahren nach Anspruch 10, bei dem: – eine Mindestanzahl von Decodierungsiterationen durchgeführt wird, bevor die Decoder-Schätzungsdaten-Iterationserzeugung gestoppt wird; – die Decoder-Schätzungsdaten-Iterationserzeugung gestoppt wird, wenn ein vorbestimmter Grenzwert von Iterationen stattgefunden hat, wobei der Grenzwert eine ganze Zahl ist, die mindestens um drei größer als die Mindestanzahl ist; und – die Decoder-Schätzungsdaten-Iterationserzeugung gestoppt wird, nachdem die Mindestanzahl von Iterationen und bevor der vorbestimmte Grenzwert von Iterationen stattgefunden hat, wenn der Vergleich eine Gleichheit widerspiegelt.
- Verfahren nach Anspruch 11, bei dem die Mindestanzahl vier und der Grenzwert acht ist.
- Verfahren nach Anspruch 10, bei dem die Decoder-Schätzungsdaten für jede Verarbeitungsiteration ein binärer String sind und die Signaturcodes durch binäres Teilen entsprechender binärer Strings von Decoder-Schätzungsdaten durch einen ausgewählten binären Teiler erzeugt werden und der Rest der Teilung zum Vergleich als die Codesignatur ausgegeben wird.
- Verfahren nach Anspruch 13, bei dem die Decoder-Schätzungsdaten-Binärstrings eine Bitlänge von mindestens 5.000 haben und der binäre Teiler eine 16-Bit-Binärzahl ist, wobei die Codesignaturen höchstens 16 Bit lang sind.
- Verfahren nach Anspruch 14, bei dem der Teiler 1000000000000011 ist.
- Verfahren nach Anspruch 10, bei dem die erzeugte Codesignatur von Signaturcodeerzeugungsmitteln (
24 ) im Signaturspeicher (26 ) so gespeichert wird, dass sie für einen Vergleich mit einer Codesignatur für eine nächste Decoder-Iteration zur Verfügung steht. - Verfahren nach Anspruch 10, bei dem die erzeugte Codesignatur von einem Codesignaturvergleicher (
28 ) im Signaturspeicher (26 ) so gespeichert wird, dass sie für einen Vergleich mit einer Codesignatur für eine nächste Decoder-Iteration zur Verfügung steht.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US24844000P | 2000-11-14 | 2000-11-14 | |
US248440P | 2000-11-14 | ||
PCT/US2001/045742 WO2002041563A2 (en) | 2000-11-14 | 2001-11-01 | Turbo decoding apparatus and method implementing stopping rule with circular redundancy code signature comparison |
Publications (2)
Publication Number | Publication Date |
---|---|
DE60104338D1 DE60104338D1 (de) | 2004-08-19 |
DE60104338T2 true DE60104338T2 (de) | 2004-12-02 |
Family
ID=22939139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE60104338T Expired - Lifetime DE60104338T2 (de) | 2000-11-14 | 2001-11-01 | Vorrichtung und verfahren zur turbo decodierung mit signaturdatenvergleich als abbruchkriterium |
Country Status (20)
Country | Link |
---|---|
US (1) | US6956912B2 (de) |
EP (2) | EP1418697A1 (de) |
JP (3) | JP3852406B2 (de) |
KR (8) | KR100525987B1 (de) |
CN (2) | CN1874211A (de) |
AR (3) | AR031331A1 (de) |
AT (1) | ATE271289T1 (de) |
AU (1) | AU2002220117A1 (de) |
BR (1) | BR0115954A (de) |
CA (2) | CA2428776C (de) |
DE (1) | DE60104338T2 (de) |
DK (1) | DK1378086T3 (de) |
ES (1) | ES2225647T3 (de) |
HK (1) | HK1063548A1 (de) |
IL (3) | IL155880A0 (de) |
MX (1) | MXPA03004267A (de) |
MY (1) | MY126922A (de) |
NO (1) | NO20032162L (de) |
TW (1) | TW522659B (de) |
WO (1) | WO2002041563A2 (de) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001043384A2 (en) | 1999-12-03 | 2001-06-14 | Broadcom Corporation | Viterbi slicer for turbo codes |
EP1254544B1 (de) | 1999-12-03 | 2015-04-29 | Broadcom Corporation | Eingebettete trainingssequenzen für frequenzerfassung und -verfolgung |
EP1329025A1 (de) | 2000-09-05 | 2003-07-23 | Broadcom Corporation | Quasi-fehlerfreie kommunikation unter verwendung von turbokoden |
US7242726B2 (en) | 2000-09-12 | 2007-07-10 | Broadcom Corporation | Parallel concatenated code with soft-in soft-out interactive turbo decoder |
US6518892B2 (en) | 2000-11-06 | 2003-02-11 | Broadcom Corporation | Stopping criteria for iterative decoding |
US7533320B2 (en) * | 2000-11-14 | 2009-05-12 | Interdigital Technology Corporation | Wireless transmit/receive unit having a turbo decoder with circular redundancy code signature comparison and method |
KR100713331B1 (ko) * | 2000-12-23 | 2007-05-04 | 삼성전자주식회사 | 부호분할다중접속 이동통신시스템의 반복복호 중지 장치 및 방법 |
JP3512176B2 (ja) * | 2001-05-15 | 2004-03-29 | 松下電器産業株式会社 | ターボ復号装置およびターボ復号における復号の繰返し回数の制御方法 |
EP1499025A1 (de) * | 2003-07-17 | 2005-01-19 | Evolium S.A.S. | Stopkriterium für eine iterative Datenverarbeitungsmethode |
US8171367B2 (en) | 2005-06-27 | 2012-05-01 | Thomson Licensing | Stopping criteria in iterative decoders |
EP1783916B1 (de) * | 2005-11-07 | 2019-11-06 | Samsung Electronics Co., Ltd. | Gerät und Methode zum Anhalten einer iterativen Dekodierung in einem mobilen Kommunikationssystem |
JP2010011119A (ja) * | 2008-06-27 | 2010-01-14 | Nec Electronics Corp | 復号方法および復号装置 |
US8984377B2 (en) | 2011-04-19 | 2015-03-17 | National Kaohsiung First University Of Science And Technology | Stopping methods for iterative signal processing |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1127413B1 (de) * | 1998-11-05 | 2011-06-22 | Qualcomm Incorporated | Effiziente iterative dekodierung |
US6298084B1 (en) * | 1998-11-24 | 2001-10-02 | Motorola, Inc. | Bad frame detector and turbo decoder |
EP1009098A1 (de) | 1998-12-10 | 2000-06-14 | Sony International (Europe) GmbH | Fehlerkorrektur mit Turbokodierung und CRC |
DE69943198D1 (de) | 1998-12-30 | 2011-03-31 | Canon Kk | Kodierungsvorrichtung und Verfahren, Dekodierungsvorrichtung und Verfahren und dazugehörige Systeme |
US6665357B1 (en) * | 1999-01-22 | 2003-12-16 | Sharp Laboratories Of America, Inc. | Soft-output turbo code decoder and optimized decoding method |
DE19934646C2 (de) | 1999-07-16 | 2001-09-13 | Univ Dresden Tech | Verfahren und Vorrichtung zur iterativen Decodierung von verketteten Codes |
US6898254B2 (en) * | 2000-01-31 | 2005-05-24 | Texas Instruments Incorporated | Turbo decoder stopping criterion improvement |
US6879648B2 (en) * | 2000-01-31 | 2005-04-12 | Texas Instruments Incorporated | Turbo decoder stopping based on mean and variance of extrinsics |
US6526531B1 (en) * | 2000-03-22 | 2003-02-25 | Agere Systems Inc. | Threshold detection for early termination of iterative decoding |
US6591390B1 (en) * | 2000-04-11 | 2003-07-08 | Texas Instruments Incorporated | CRC-based adaptive halting turbo decoder and method of use |
US6675342B1 (en) * | 2000-04-11 | 2004-01-06 | Texas Instruments Incorporated | Direct comparison adaptive halting decoder and method of use |
US20010052104A1 (en) * | 2000-04-20 | 2001-12-13 | Motorola, Inc. | Iteration terminating using quality index criteria of turbo codes |
US6865708B2 (en) * | 2000-08-23 | 2005-03-08 | Wang Xiao-An | Hybrid early-termination methods and output selection procedure for iterative turbo decoders |
JP2002100995A (ja) * | 2000-09-22 | 2002-04-05 | Sony Corp | 復号装置及び方法、並びにデータ受信装置及び方法 |
US6518892B2 (en) * | 2000-11-06 | 2003-02-11 | Broadcom Corporation | Stopping criteria for iterative decoding |
-
2001
- 2001-10-19 US US10/044,109 patent/US6956912B2/en not_active Expired - Fee Related
- 2001-11-01 CN CNA2006100913693A patent/CN1874211A/zh active Pending
- 2001-11-01 KR KR10-2003-7006536A patent/KR100525987B1/ko not_active IP Right Cessation
- 2001-11-01 CA CA002428776A patent/CA2428776C/en not_active Expired - Fee Related
- 2001-11-01 KR KR1020037013882A patent/KR100744201B1/ko not_active IP Right Cessation
- 2001-11-01 BR BR0115954-2A patent/BR0115954A/pt not_active IP Right Cessation
- 2001-11-01 KR KR1020097008060A patent/KR20090060350A/ko not_active Application Discontinuation
- 2001-11-01 EP EP04001115A patent/EP1418697A1/de not_active Withdrawn
- 2001-11-01 MX MXPA03004267A patent/MXPA03004267A/es active IP Right Grant
- 2001-11-01 DE DE60104338T patent/DE60104338T2/de not_active Expired - Lifetime
- 2001-11-01 JP JP2002543850A patent/JP3852406B2/ja not_active Expired - Fee Related
- 2001-11-01 CN CNB018192173A patent/CN1264298C/zh not_active Expired - Fee Related
- 2001-11-01 CA CA002604072A patent/CA2604072A1/en not_active Abandoned
- 2001-11-01 KR KR1020087015235A patent/KR100926812B1/ko not_active IP Right Cessation
- 2001-11-01 AU AU2002220117A patent/AU2002220117A1/en not_active Abandoned
- 2001-11-01 AT AT01996943T patent/ATE271289T1/de not_active IP Right Cessation
- 2001-11-01 ES ES01996943T patent/ES2225647T3/es not_active Expired - Lifetime
- 2001-11-01 KR KR1020087031416A patent/KR100941664B1/ko not_active IP Right Cessation
- 2001-11-01 KR KR1020077011719A patent/KR100871403B1/ko not_active IP Right Cessation
- 2001-11-01 WO PCT/US2001/045742 patent/WO2002041563A2/en active Application Filing
- 2001-11-01 DK DK01996943T patent/DK1378086T3/da active
- 2001-11-01 IL IL15588001A patent/IL155880A0/xx unknown
- 2001-11-01 KR KR1020087000774A patent/KR100886858B1/ko not_active IP Right Cessation
- 2001-11-01 EP EP01996943A patent/EP1378086B9/de not_active Expired - Lifetime
- 2001-11-01 KR KR1020097016671A patent/KR101022730B1/ko not_active IP Right Cessation
- 2001-11-05 TW TW090127445A patent/TW522659B/zh not_active IP Right Cessation
- 2001-11-09 MY MYPI20015182A patent/MY126922A/en unknown
- 2001-11-14 AR ARP010105293A patent/AR031331A1/es active IP Right Grant
-
2003
- 2003-05-13 IL IL155880A patent/IL155880A/en not_active IP Right Cessation
- 2003-05-13 NO NO20032162A patent/NO20032162L/no unknown
-
2004
- 2004-08-23 HK HK04106294A patent/HK1063548A1/xx not_active IP Right Cessation
-
2006
- 2006-05-04 AR ARP060101803A patent/AR054111A2/es active IP Right Grant
- 2006-08-11 JP JP2006219978A patent/JP2006325259A/ja active Pending
-
2008
- 2008-01-25 AR ARP080100299A patent/AR065022A2/es active IP Right Grant
-
2009
- 2009-02-16 IL IL197056A patent/IL197056A0/en unknown
- 2009-08-28 JP JP2009198061A patent/JP2009278686A/ja active Pending
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60107527T2 (de) | Einrichtung und Verfahren zum Anhalten einer iterativen Dekodierung in einem CDMA Mobilkommunikationssystem | |
DE60104338T2 (de) | Vorrichtung und verfahren zur turbo decodierung mit signaturdatenvergleich als abbruchkriterium | |
DE69838451T2 (de) | Verfahren und schaltung zur adaptiven kanalkodierung | |
DE69936683T2 (de) | Verschachtelung unter Verwendung von Inkrementen basierend auf dem Goldenen Schnitt | |
DE69936908T2 (de) | Iterative dekodierung von produktkoden | |
DE60001988T2 (de) | Turbo Dekodierung mit variabler Anzahl von Iterationen | |
DE602004012417T2 (de) | Dekodierungsvorrichtung und dekodierungsverfahren | |
DE69925151T2 (de) | Effiziente normalisierung vom trelliszustandsmetrischem wert | |
DE112011106024B4 (de) | Erzeugungsvorrichtung für vorrichtungsspezifische Informationen und Erzeugungsverfahren für vorrichtungsspezifische Informationen | |
EP0755122A2 (de) | Verfahren und Anordnung zur Bestimmung eines adaptiven Abbruchkriteriums beim iterativen Decodieren multidimensional codierter Information | |
DE19963683A1 (de) | Architektur zum Decodieren von linearen Blockfehler-Korrekturcodes mit Soft Decision | |
DE10238841B4 (de) | Parallelverarbeitung der Decodierung und der zyklischen Redundanzüberprüfung beim Empfang von Mobilfunksignalen | |
DE102007035210A1 (de) | Verfahren und Vorrichtung zur LDPC-Dekodierung mit gemeinsamer Hardwarenutzung und serieller Summe-Produkt-Architektur | |
DE112005003706T5 (de) | Modifizierter turbo-decodierender Nachrichtenweiterleitungsalgorithmus für Paritätsprüfcodes mit geringer Dichte | |
DE60007956T2 (de) | Vorrichtung und Verfahren zur SISO Dekodierung | |
DE10196688B3 (de) | Ein Decodierer für eine trellis-basierte Kanalcodierung | |
DE69911847T2 (de) | Verfahren zum Identifizieren von Datenrahmen zur Löschung in einem digitalen Datenübertragungssystem | |
DE69908629T2 (de) | Hybrid verschachteler für turbo-kodierer | |
DE60319557T2 (de) | Verfahren zur Verminderung der Anzahl der Bits pro Softbit | |
DE102011056132B4 (de) | Verfahren und Vorrichtung zum Decodieren von Daten | |
DE19960269A1 (de) | Übertragungsverfahren mit Kanalcodierung mit wirksamer und modularer Verschachtelung für Turbocodes | |
DE60118716T2 (de) | Log-MAP Dekodierung | |
EP2332301B1 (de) | Verfahren und einrichtung zur quantisierung von likelihood-quotienten | |
DE4333382A1 (de) | Verfahren und Vorrichtung zum Bilden des Reziproken eines beliebigen Elementes in einem finiten Feld | |
CH660270A5 (de) | Decoderschaltung, verfahren zu deren betrieb und drahtloser rufempfaenger. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |