DE102010003144B4 - Decodiervorrichtung und Decodierverfahren - Google Patents

Decodiervorrichtung und Decodierverfahren Download PDF

Info

Publication number
DE102010003144B4
DE102010003144B4 DE102010003144.5A DE102010003144A DE102010003144B4 DE 102010003144 B4 DE102010003144 B4 DE 102010003144B4 DE 102010003144 A DE102010003144 A DE 102010003144A DE 102010003144 B4 DE102010003144 B4 DE 102010003144B4
Authority
DE
Germany
Prior art keywords
value
decoding
algorithm
sum
sum product
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.)
Active
Application number
DE102010003144.5A
Other languages
English (en)
Other versions
DE102010003144A1 (de
Inventor
Tsutomu Asahina
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE102010003144A1 publication Critical patent/DE102010003144A1/de
Application granted granted Critical
Publication of DE102010003144B4 publication Critical patent/DE102010003144B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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/11Error 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 using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1117Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule
    • H03M13/112Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule with correction functions for the min-sum rule, e.g. using an offset or a scaling factor
    • 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/11Error 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 using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • 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/11Error 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 using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1117Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

Decodiervorrichtung, einen Decodierprozess an durch einen Low-Density Parity-Check (LDPC)-Code codierten Daten durchführend, umfassend:eine Decodiereinheit (1), die iterativ an zu verarbeitenden Daten eine Berechnung durchführt, die eine Zeilenoperation und eine Spaltenoperation beinhaltet, in Übereinstimmung mit einem Summenproduktalgorithmus, um einen Wert von Wahrscheinlichkeitsinformation zu berechnen und zu aktualisieren; undeine Zuverlässigkeitsänderungseinheit (2), die basierend auf einem Vergleich zwischen einem ersten Wert, welches der Wert eines Teils der Wahrscheinlichkeitsinformation ist, die durch die Decodiereinheit (1) berechnet oder aktualisiert ist, und einem zweiten Wert, der ein Wert von stochastischer Zuverlässigkeitsinformation der zu verarbeitenden Daten ist, den zweiten Wert ändert und den veränderten zweiten Wert am ersten Wert reflektiert, um den ersten Wert zu korrigieren.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf eine Decodiervorrichtung und ein Decodierverfahren und genauer gesagt auf eine Decodiervorrichtung und ein Decodierverfahren zum Decodieren von Daten, die durch einen Low-Density Parity-Check Code (Paritätskontrollcode niedriger Dichte) codiert sind.
  • Beschreibung des Stands der Technik
  • Der Low-Density Parity-Check (LDPC) Code (nachfolgend als LDPC-Code bezeichnet) ist ein Fehlerkorrekturcode, der einen iterativen Prozess verwendet, der von Gallager 1962 vorgeschlagen wurde und als Merkmal aufweist, dass eine Decodiereigenschaft, die nahe am Shannon-Limit liegt, mit wachsender Codelänge erhalten wird, und dass kaum ein Fehlersockel-(error floor) Phänomen auftritt, das beim Decodieren eines Turbo-Codes beobachtet wird.
  • Es ist möglich, einen LDPC-Code durch einen Meldungsweitergabe-Algorithmus durch Belief-Propagation (Erwartungsausbreitung) auf dem Tanner-Graph zu decodieren, der ein Graph ist, bei dem variable Knoten korrespondierend entsprechenden Bits eines Codeworts und Prüfknoten korrespondierend mit einer Paritätskontrollsumme miteinander mit einem Zweig verlinkt sind.
  • Ein typischer Meldungsweitergabe-Algorithmus ist der Summenproduktalgorithmus (sum-product algorithm). Beim Summenproduktalgorithmus wird das Decodieren durch Berechnen eines Log-Wahrscheinlichkeitsverhältnisses (nachfolgend als LLR bezeichnet) als stochastische Zuverlässigkeitsinformationen eines empfangenen Signals und simultan iteratives Durchführen einer Kalkulation durchgeführt (siehe beispielsweise Tadashi Wadayama, „Low-density parity-check (LDPC) Codes and its decoding algorithm“, Triceps, Seiten 76-99, 5. Juni 2002).
  • Beim Summenproduktalgorithmus ist die Decodierleistung hoch, da eine genaue Kalkulation durchgeführt wird, während Kalkulationskosten steigen, weil eine Kalkulation (wie etwa eine Addition von Realzahlen und Evaluierung von Funktionen) unter Verwendung mathematischer Funktionen erforderlich ist. Aus diesem Grund ist es, wenn der Summenproduktalgorithmus in einer Decodiervorrichtung implementiert wird, erforderlich, die Kalkulationskosten zu senken, indem beispielsweise eine Tabelle zum Halten eines Wertes einer Funktion vorbereitet wird.
  • Im Gegensatz zum Summenproduktalgorithmus gibt es einen Min-Summenalgorithmus als einen Algorithmus, bei dem bei einer Implementierung die Schaltungskonfiguration vereinfacht ist. Beim Min-Summenalgorithmus werden nur vier Arten von Kalkulationen einschließlich Addition, Detektion eines Minimalwertes, Entscheiden, ob eine Zahl positiv oder negativ ist, und Multiplikation der Vorzeichen von positiven und negativen Zahlen unter Verwendung eines einfachen Ausdrucks durchgeführt, bei dem die mathematischen Funktionen, die im Summenproduktalgorithmus verwendet werden, einer Annäherung unterworfen werden, was zu einer Reduktion bei den Kalkulationskosten führt. Jedoch gibt es den Nachteil, der die Decodierleistung aufgrund von Effekten der Approximation degradiert.
  • Weiterhin gibt es als Decodier-Algorithmus, der denselben Betrag an Kalkulationskosten wie der Min-Summenalgorithmus erfordert, und dessen Decodierleistung derjenigen des Summenproduktalgorithmus etwas unterlegen ist, beispielsweise den normalisierten Belief-Propagation (BP)-Algorithmus und den Offset-BP-Algorithmus (siehe beispielsweise Jinghu Chen et al, „Reduced complexity decoding of LDPC codes“, (online), gefunden am 22. Dezember 2008 (URL.: http://wwwee.eng.hawaii.edu/-jinghu/FILES/tcom02v3p2.pdf)).
  • Darüber hinaus wird als ein Decodier-Algorithmus mit demselben Grad an Decodierleistung wie der Summenproduktalgorithmus, dessen Kalkulationsbetrag im Vergleich zum Min-Summenalgorithmus größer ist, der δ-Min-Algorithmus vorgeschlagen (siehe beispielsweise R. Sakai et al, „Low complexity decoding algorithm for LDPC codes and its descretized density evolution", RCS2005-42 (2005-7), Seiten 13-18, Okayama, Juli 2005).
  • Jedoch werden bei den oben erwähnten Algorithmen Operationen für alle Zeilen beendet, und dann werden Operationen für alle Spalten durchgeführt, durch einen Decodierprozess. Daher tritt das Problem auf, dass eine für den Decodierprozess erforderliche Verzögerungszeit mit Anwachsen der Anzahl von Iterationen des Decodierprozesse länger wird.
  • Als Algorithmus zum Lösen der oben erwähnten Probleme gibt es den Shuffled_BP-Algorithmus, bei dem die Anzahl von Iterationen des Decodierprozesses reduziert ist. Beim Shuffled_BP-Algorithmus werden Berechnung und Aktualisierung von Wahrscheinlichkeitsinformationen, die durch eine Zeilenoperation und eine Spaltenoperation erhalten werden, für jedes Wort ausgeführt. Daher wird die Propagierung einer Wahrscheinlichkeitsinformation effizient durchgeführt, um rascher zu konvergieren, aber es wird Speicher zum Halten entsprechender Knoten erforderlich, was die Speichergröße um einen Betrag eines Zeilengewichts und eines Spaltengewichts vergrößert (siehe beispielsweise Juntan Zhang et al, Shuffled belief propagation decoding", (online), ermittelt am 28.09.2004, (URL: http://lester.univubs.fr:8080/-boutillon/Journee_GDR_LDPC/Fossorier1_GDR_LDPC.p df)).
  • Im Gegensatz dazu wird vorgeschlagen ein zyklischer approximierter Min-Algorithmus, der durch Verbessern des Min-Summenalgorithmus erhalten wird, des zyklischen Aktualisierens nur der Absolutwerte von LLR mit einer angemessenen Anzahl von Minimalwerten (was eine angemessene Anzahl bedeutet, die von einem Minimalwert aus in aufsteigender Reihenfolge beginnt), das heißt, dass die Decodierung nicht unter Verwendung eines genauen Minimalwertes, sondern unter Verwendung eines approximierten Minimalwerts durchgeführt wird. Der Einsatz des zyklischen approximierten Min-Algorithmus ermöglicht eine Reduktion der Speichergröße um einen größeren Betrag im Vergleich zum Shuffled-BP_Algorithmus (siehe beispielsweise Internationale Offenlegungsschrift WO 2007/018066A1 ).
  • Druckschrift EP 1 819 056 A1 , 15 August 2007, bezieht sich auf eine Dekodiervorrichtung mit einem Dekodiermittel zum Durchführen einer Berechnung und einer Aktualisierung von Wahrscheinlichkeitsinformationen mit Zeilenverarbeitung und Spaltenverarbeitung gemäß eines Min-Sum-Algorithmus bei einem empfangenen Signal, das Low-Density-Parity-Check-Codiert ist (LDPC)in Mengen von 1 Bit als ein Schiebeverarbeitungsschema für eine Belief-Propagation-Dekodierung oder von einer vorbestimmten Zahl von Bits als ein Gruppenschiebeverarbeitungsschema für eine Belief-Propagation-Dekodierung.
  • Druckschrift US 2007/118 786 A1 , 24 Mai 2007, bezieht sich auf ein Verfahren und ein Vorrichtung zum Empfangen von Daten in einem Empfänger eines Kommunikationssystems. In dem Empfänger berechnet ein erster Rechner einen Log-Likelihood-Verhältnis (LLR)-Wert von Daten, die von einem Sender übertragen werden, und ein Dekodier führt eine iterative Dekodierung der übertragenen Daten unter Verwendung des von dem ersten Rechner berechneten LLR-Wertes durch. Ein zweiter Rechner ermittelt, durch Berechnung eines Fehlers der vom Dekodier dekodierten Daten, ob in den dekodierten Daten ein Fehler vorliegt. Ein Speicher speichert einen LLR-Wert der dekodierten Daten gemäß dem Bestimmungsergebnis des zweiten Rechners. Ein Addierer summiert den vom ersten Rechner berechneten LLR-Wert und den im Speicher gespeicherten LLR-Wert.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Bei einer Decodiervorrichtung und einem Decodierverfahren konventioneller Art, die den oben erwähnten Decodier-Algorithmus verwenden, muss die Anzahl an iterativem Decodierprozessen angehoben werden, um eine hohe Decodierleistung zu erhalten, was zu dem Problem führt, dass zusammen mit dem Ansteigen bei der Anzahl von Iterationen auch die Verzögerungszeit länger wird.
  • Die vorliegende Erfindung hat daher die Aufgabe, eine Decodiervorrichtung und eine Decodierverfahren bereitzustellen, die zur Reduktion der Anzahl von Iterationen des Decodierprozesses in der Lage sind, durch Durchführen einer hoch effizienten Belief-Propagation, um die Konvergenz von Berechnungsergebnissen zu beschleunigen.
  • Eine Decodiervorrichtung gemäß der vorliegenden Erfindung beinhaltet: eine Decodiereinheit 1, die iterativ an zu verarbeitenden Daten eine Berechnung durchführt, die eine Zeilenoperation und eine Spaltenoperation beinhaltet, in Übereinstimmung mit einem Summenproduktalgorithmus, um einen Wert von Wahrscheinlichkeitsinformation zu berechnen und zu aktualisieren; und eine Zuverlässigkeitsveränderungseinheit 2, die basierend auf einem Vergleich zwischen einem ersten Wert, welches der Wert eines Teils der Wahrscheinlichkeitsinformation ist, die durch die Decodiereinheit 1 berechnet oder aktualisiert ist, und einem zweiten Wert, der ein Wert von stochastischer Zuverlässigkeitsinformation der zu verarbeitenden Daten ist, den zweiten Wert ändert und den veränderten zweiten Wert am ersten Wert reflektiert, um den ersten Wert zu korrigieren.
  • Dementsprechend wird eine hoch effiziente Belief-Propagation durchgeführt, um die Konvergenz der Berechnungsergebnisse zu beschleunigen, wodurch es möglich wird, die Anzahl von Iterationen des Decodierprozesses zu reduzieren.
  • Diese und andere Aufgaben, Merkmale, Aspekte und Vorteile der vorliegenden Erfindung werden aus der nachfolgenden detaillierten Beschreibung der vorliegenden Erfindung ersichtlicher werden, wenn zusammen mit den beigefügten Zeichnungen betrachtet.
  • Figurenliste
    • 1 ist eine Blockdiagramm einer Decodiervorrichtung gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung; und
    • 2 ist ein Flussdiagramm eines Betriebs der Decodiervorrichtung gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Eine bevorzugte Ausführungsform der vorliegenden Erfindung wird unten unter Bezugnahme auf die Zeichnungen beschrieben.
  • Bei der bevorzugten Ausführungsform der vorliegenden Erfindung werden eine Decodiervorrichtung und ein Decodierverfahren, die auf den Summenproduktalgorithmus adaptiert sind, als ein Beispiel eines Decodier-Algorithmus für LDPC-Codes beschrieben.
  • 1 ist ein Blockdiagramm einer Decodiervorrichtung gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung. Wie in 1 gezeigt, ist die Decodiervorrichtung gemäß der vorliegenden Ausführungsform dadurch gekennzeichnet, dass sie eine Decodiereinheit 1 und eine Zuverlässigkeitsänderungseinheit 2 enthält. Die Decodiereinheit 1 führt einen Decodierprozess an durch einen LDPC-Code codierten Daten durch und führt iterativ eine Berechnung durch, die eine Zeilenoperation und eine Spaltenoperation in Übereinstimmung mit dem Summenproduktalgorithmus an den zu verarbeitenden Daten beinhaltet, um dadurch einen Wert von Belief-Information zu berechnen und zu aktualisieren. Die Zuverlässigkeitsänderungseinheit 2 ändert, basierend auf einem Vergleich zwischen einem ersten Wert, der ein Wert eines Stückes von Wahrscheinlichkeitsinformation ist, die durch die Decodiereinheit berechnet oder aktualisiert ist, und einem zweiten Wert, der ein Wert von stochastischer Zuverlässigkeitsinformation von zu verarbeitenden Daten ist, den zweiten Wert und reflektiert den geänderten zweiten Wert am ersten Wert, um dadurch den ersten Wert zu korrigieren. Die Decodiereinheit 1 enthält eine LLR-Berechnungseinheit 1, eine Zuverlässigkeitsinformations-Berechnungsergebnishalteeinheit 12, eine Zeilenverarbeitungseinheit 13, eine Spaltenverarbeitungseinheit 14, eine Steuereinheit 15 und eine Decodierergebnis-Entscheidungseinheit 16, in der an der LLR-Berechnungseinheit 11 eingegebene Eingabeinformationen einem Decodierprozess durch die Decodiereinheit 1 und die Zuverlässigkeitsänderungseinheit 2 unterworfen werden und dann als Decodierergebnisse aus der Decodierergebnis-Entscheidungseinheit 16 ausgegeben werden.
  • Als Nächstes wird ein Betrieb der Decodiervorrichtung gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung beschrieben.
  • 2 ist ein Flussdiagramm des Betriebs der Decodiervorrichtung gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung. Wie in 2 gezeigt, wird LDPCcodierte Eingabeinformation (zu verarbeitende Daten) an der LLR-Berechnungseinheit 11 eingegeben (Schritt S1). Die LLR-Berechnungseinheit 11 berechnet einen LLR-Wert aus der Eingabeinformation, die eingegeben worden ist (Schritt S2). Der berechnete LLR-Wert wird jeweils an die Zuverlässigkeitsinformations-Berechnungsergebnishalteeinheit 12 und die Zuverlässigkeitsänderungseinheit 2 ausgegeben. Der durch die LLR-Berechnungseinheit 11 berechnete LLR-Wert wird als Anfangswert in der Zuverlässigkeitsinformations-Berechnungsergebnishalteeinheit 12 eingestellt und gleichzeitig wird die Anzahl von Iterationen des Decodierprozesses in der Steuereinheit 15 so initialisiert, dass I=1 (Schritt S3).
  • Nach Schritt S3 führt die Zeilenverarbeitungseinheit 13 bezüglich entsprechenden Zeilen, die von der ersten Zeile einer Kontrollmatrix von LDPC-Code beginnt, in der Reihenfolge die Zeilenoperation gemäß Ausdruck (1) durch (Schritt S4).
    (Ausdruck 1) α m n ( i ) = 2 tanh 1 { n ' A ( m ) / n tanh ( β m n ' ( i l ) 2 ) }
    Figure DE102010003144B4_0001
  • Die Definition von Ausdruck (1) wird unten beschrieben.
  • Anzahl von Iterationen
  • A(m): Satz von Spaltennummern n, deren Matrixkomponente eine in einer m-ten Zeile einer Kontrollmatrix H ist
  • A(m)\n: Satz, der ein Element n aus dem Satz A(m) exkludiert α m n ( i ) :
    Figure DE102010003144B4_0002
    Wahrscheinlichkeitsinformation, die aus einem Prüfknoten der m-ten Zeile zu einem variablen Knoten der n-ten Spalte in der i-ten Iteration gesendet wird β m n ( 1 ) :
    Figure DE102010003144B4_0003
    Wahrscheinlichkeitsinformation, die aus dem variablen Knoten der n-ten Spalte zum Prüfknoten der m-ten Zeile in der i-ten Iteration gesendet wird.
  • Hier ist Ausdruck (1) ein Ausdruck durch den Summenproduktalgorithmus und ein anderer Ausdruck als Ausdruck 1 wird durch andere Decodier-Algorithmen erhalten. Jedoch gibt es keine essentielle Differenz dazwischen und der Ausdruck durch einen anderen Decodier-Algorithmus ist ebenfalls anwendbar.
  • Nach Schritt S4 führt die Spaltenverarbeitungseinheit 14, basierend auf der, der Zeilenoperation durch die Zellenverarbeitungseinheit 13 unterworfenen Wahrscheinlichkeitsinformation eine Spaltenoperation gemäß Ausdruck (2) hinsichtlich entsprechender Spalten durch, die mit der ersten Spalte der Kontrollmatrix der LDPC-Codes beginnen, in Reihenfolge (Schritt S5). Ein als Ergebnis der Spaltenoperation berechneter Wert wird an die Zuverlässigkeitsänderungseinheit 2 ausgegeben. Bei dieser Gelegenheit wird gleichzeitig die Berechnung von Ausdruck (3) durchgeführt.
    (Ausdruck 2) β m n ( 1 ) = m ' B ( n ) / m α m ' n ( 1 )
    Figure DE102010003144B4_0004
    (Ausdruck 3) β n ( 1 ) = m ' B ( n ) α m n ( 1 )
    Figure DE102010003144B4_0005
  • Die Definitionen von Ausdruck (2) und Ausdruck (3) werden unten beschrieben. Man beachte, dass die Beschreibung jener mit derselben Definition wie der oben erwähnten Definition weggelassen wird.
  • B(n): Satz von Zeilennummern m, deren Matrixkomponente eine in der n-ten Spalte der Kontrollmatrix H ist
  • B(n)\m: Satz, der ein Element m aus dem Satz B(n) exkludiert
  • B n ( i ) :
    Figure DE102010003144B4_0006
    Posteriori Wahrscheinlichkeitsinformation in der i-ten Iteration
  • In der Zuverlässigkeitsänderungseinheit 2 hat der durch die LLR-Berechnungseinheit 11 berechnete LLR-Wert (zweiter Wert) eine niedrigere Zuverlässigkeit als der in Übereinstimmung mit Ausdruck (2) durch die Spaltenverarbeitungseinheit 14 berechnete Wert (erster Wert). Aus diesem Grund wird in einem Fall, bei dem diese zwei Werte sich signifikant voneinander unterscheiden, die Zuverlässigkeit des durch die LLR-Berechnungseinheit 11 berechneten LLR-Wertes geändert (das heißt, Effekte auf die Berechnung werden verändert), und der veränderte LLR-Wert wird dem aus Ausdruck (2) berechneten Wert hinzu addiert, um der zu sein, der durch Ausdruck (4) angezeigt wird, und wird durch die Zuverlässigkeitsinformations-Berechnungsergebnishalteeinheit 12 gehalten, wie unten durch ein spezifisches Beispiel beschrieben (Schritt S6). Bei dieser Gelegenheit wird auch gleichzeitig die Berechnung von Ausdruck (5) durchgeführt.
    (Ausdruck 4) β m n ( i ) = λ n ' m ' B ( n ) / m α m ' n ( i )
    Figure DE102010003144B4_0007
    (Ausdruck 5) β n ( i ) = λ n ' + m ' B ( n ) α m n ( i )
    Figure DE102010003144B4_0008
  • Die Definitionen von Ausdruck (4) und Ausdruck (5) werden unten beschrieben. Man beachte, dass die Beschreibung jener mit derselben Definition wie den oben erwähnten Definitionen weggelassen wird.
  • λ n ' :
    Figure DE102010003144B4_0009
    LLR-Wert, nachdem die Zuverlässigkeit des durch die LLR-Berechnungseinheit 11 berechneten LLR-Werts geändert ist.
  • Beispielsweise in einem Fall, wo der aus der LLR-Berechnungseinheit 11 ausgegebene LLR-Wert (zweiter Wert), und der in Übereinstimmung mit Gleichung (2) durch die Spaltenverarbeitungseinheit 14 berechnete Wert (erster Wert) denselben Code aufweisen und ein Absolutwert des aus der LLR-Berechnungseinheit 11 ausgegebenen LLR-Werts (zweiter Wert) viel kleiner als ein Absolutwert des in Übereinstimmung mit Ausdruck (2) durch die Spaltenverarbeitungseinheit 14 berechneten Wert (erster Wert) ist, wird ein Wert des aus der LLR-Berechnungseinheit 11 ausgegebenen LLR-Werts (zweiter Wert) größer gemacht (d.h. es wird eine Korrektur durchgeführt). Andererseits wird in einem Fall, bei dem der aus der LLR-Berechnungseinheit 11 ausgegebene LLR-Wert (zweiter Wert) und der in Übereinstimmung mit Ausdruck (2) durch die Spaltenverarbeitungseinheit 14 berechnete Wert (erster Wert) voneinander abweichenden Code aufweisen und der Absolutwert des aus der LLR-Berechnungseinheit 11 ausgegebenen LLR-Werts (zweiter Wert) viel größer als der Absolutwert des in Übereinstimmung mit Ausdruck (2) durch Spaltenverarbeitungseinheit 14 berechneten Werts (erster Wert) ist, der Wert des aus der LLR-Berechnungseinheit 11 ausgegebenen LLR-Werts kleiner gemacht (d.h. es wird eine Korrektur vorgenommen).
  • Man beachte, dass in dem Fall, bei dem der Wert des LLR-Wertes verändert wird, ein fester Wert verwendet werden kann, oder es kann eine konstante Zahl von Werten des LLR-Wertes durch irgendeine von Addition, Subtraktion, Division und Multiplikation oder Kombination einer Mehrzahl derselben verwendet werden.
  • Alternativ kann der Wert des LLR-Wertes durch ein Register geeignet verändert werden. Ein Beispiel der vorliegenden Ausführungsform ist oben illustriert und die vorliegende Erfindung ist nicht darauf beschränkt. Man beachte, dass bezüglich der oben beschriebenen Änderung des LLR-Werts die Operation von „Größer machen im Falle des viel kleineren Absolutwerts“ oder „Kleiner machen im Falle des viel größeren Absolutwerts“ mit einer vorgegebenen Regel durchgeführt werden kann.
  • Die Decodierergebnis-Entscheidungseinheit 16 trifft eine harte Entscheidung zu Posteriori Wahrscheinlichkeitsinformationen, die in Übereinstimmung mit Ausdruck (5) durch die Zuverlässigkeitsänderungseinheit 2 berechnet sind (wenn jedoch keine Korrektur durch die Zuverlässigkeitsänderungseinheit 2 gemacht wird, in Übereinstimmung mit Ausdruck (5) unter Verwendung des durch die LLR-Berechnungseinheit 11 berechneten Anfangs-LLR-Werts berechnete Posteriori-Wahrscheinlichkeitsinformation), um Decodierergebnisse zu berechnen und führt eine Paritätsprüfung durch, basierend auf den berechneten Ergebnissen. Die Decodierergebnis-Entscheidungseinheit 16 entscheidet, ob eine Bedingung für „korrekte Paritätsprüfergebnisse (inneres Produkt von Kontrollmatrix und Decodierspalte = 0)“ oder eine Bedingung für „Maximalwert der Anzahl von Iterationen (I=Imax)“ erfüllt ist. Falls irgendeine Bedingung erfüllt ist, beendet die Decodierergebnis-Entscheidungseinheit 16 den Decodierprozess und gibt die Decodierergebnisse aus. Zwischenzeitlich, falls die Decodierbedingung nicht erfüllt ist, erhöht die Decodierergebnis-Entscheidungseinheit 16 die Anzahl von Iterationen I um Eins und bringt die Prozesse von Schritt S4 bis Schritt S7 zur iterativen Ausführung (Schritt S7).
  • Aus dem Obigen werden Effekte des aus der Eingabeinformation berechneten LLR-Wertes in der Spaltenoperation durch den Summenproduktalgorithmus verändert, wodurch es möglich ist, die Konvergenz der Berechnungsergebnisse durch höher effiziente Belief-Propagation im Vergleich zum konventionellen Fall zu beschleunigen, um die Anzahl von Iterationen des Decodierprozesses zu reduzieren. Zusätzlich wird die Anzahl von Iterationen des Decodierprozesses reduziert, was zu einer Reduktion bei der Decodierverzögerung führt.
  • Während der Summenproduktalgorithmus als der Decodier-Algorithmus für einen LDPC-Code in der bevorzugten Ausführungsform der vorliegenden Erfindung beschrieben worden ist, können dieselben Effekte wie jene der vorliegenden Ausführungsform durch Verwenden irgendeines von Min-Summenalgorithmus, normalisierten BP-Algorithmus, Offset_BP-Algorithmus, δ-min-Algorithmus, Shuffled_BP-Algorithmus und zyklischen approximierten Min-Algorithmus anstelle des Summenproduktalgorithmus erhalten werden.
  • Während die Erfindung im Detail gezeigt und beschrieben worden ist, ist die vorstehende Beschreibung in allen Aspekten illustrativ und nicht beschränkend. Es versteht sich daher, dass zahlreiche Modifikationen und Variationen vorstellbar sind, ohne vom Schutzumfang der Erfindung abzuweichen.

Claims (14)

  1. Decodiervorrichtung, einen Decodierprozess an durch einen Low-Density Parity-Check (LDPC)-Code codierten Daten durchführend, umfassend: eine Decodiereinheit (1), die iterativ an zu verarbeitenden Daten eine Berechnung durchführt, die eine Zeilenoperation und eine Spaltenoperation beinhaltet, in Übereinstimmung mit einem Summenproduktalgorithmus, um einen Wert von Wahrscheinlichkeitsinformation zu berechnen und zu aktualisieren; und eine Zuverlässigkeitsänderungseinheit (2), die basierend auf einem Vergleich zwischen einem ersten Wert, welches der Wert eines Teils der Wahrscheinlichkeitsinformation ist, die durch die Decodiereinheit (1) berechnet oder aktualisiert ist, und einem zweiten Wert, der ein Wert von stochastischer Zuverlässigkeitsinformation der zu verarbeitenden Daten ist, den zweiten Wert ändert und den veränderten zweiten Wert am ersten Wert reflektiert, um den ersten Wert zu korrigieren.
  2. Decodiervorrichtung gemäß Anspruch 1, wobei die Decodiereinheit (1) einen Min-Sum-Algorithmus anstelle des Summenproduktalgorithmus verwendet.
  3. Decodiervorrichtung gemäß Anspruch 1, wobei die Decodiereinheit (1) einen normalisierten BP-Algorithmus anstelle des Summenproduktalgorithmus verwendet.
  4. Decodiervorrichtung gemäß Anspruch 1, wobei die Decodiereinheit (1) einen Offset_BP-Algorithmus anstelle des Summenproduktalgorithmus verwendet.
  5. Decodiervorrichtung gemäß Anspruch 1, wobei die Decodiereinheit (1) einen δ-Min-Algorithmus anstelle des Summenproduktalgorithmus verwendet.
  6. Decodiervorrichtung gemäß Anspruch 1, wobei die Decodiereinheit (1) einen Shuffled_BP-Algorithmus anstelle des Summenproduktalgorithmus verwendet.
  7. Decodiervorrichtung gemäß Anspruch 1, wobei die Decodiereinheit (1) einen zyklischen approximierten Min-Algorithmus anstelle des Summenproduktalgorithmus verwendet.
  8. Decodierverfahren zum Durchführen eines Decodierprozesses an durch einen Low-Density Parity-Check-(LDPC)-Code codierten Daten, umfassend die Schritte: (a) iteratives Durchführen, an den zu prozessierenden Daten, einer Berechnung, die eine Zeilenoperation und eine Spaltenoperation enthält, in Übereinstimmung mit einem Summenproduktalgorithmus, um einen Wert von Wahrscheinlichkeitsinformationen zu berechnen und zu aktualisieren; und (b) Ändern, basierend auf dem Vergleich zwischen einem ersten Wert, der ein Wert eines Stückes von Wahrscheinlichkeitsinformation ist, der durch den Schritt (a) berechnet oder aktualisiert ist, und einem zweiten Wert, der ein Wert von stochastischer Wahrscheinlichkeitsinformation der zu prozessierenden Daten ist, des zweiten Werts und Reflektieren des geänderten zweiten Werts am ersten Wert, um den ersten Wert zu korrigieren.
  9. Decodierverfahren gemäß Anspruch 8, wobei in Schritt (a) ein Min-Sum-Algorithmus anstelle des Summenproduktalgorithmus verwendet wird.
  10. Decodierverfahren gemäß Anspruch 8, wobei Schritt (a) ein normalisierter BP-Algorithmus anstelle des Summenproduktalgorithmus verwendet wird.
  11. Decodierverfahren gemäß Anspruch 8, wobei Schritt (a) ein Offset_BP-Algorithmus anstelle des Summenproduktalgorithmus verwendet wird.
  12. Decodierverfahren gemäß Anspruch 8, wobei Schritt (a) ein δ-Min-Algorithmus anstelle des Summenproduktalgorithmus verwendet wird.
  13. Decodierverfahren gemäß Anspruch 8, wobei Schritt (a) ein Shuffled_BP-Algorithmus anstelle des Summenproduktalgorithmus verwendet wird.
  14. Decodierverfahren gemäß Anspruch 8, wobei Schritt (a) ein zyklischer approximierter Min- Algorithmus anstelle des Summenproduktalgorithmus verwendet wird.
DE102010003144.5A 2009-04-03 2010-03-23 Decodiervorrichtung und Decodierverfahren Active DE102010003144B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009090940A JP4545217B1 (ja) 2009-04-03 2009-04-03 復号装置および復号方法
JP2009-090940 2009-04-03

Publications (2)

Publication Number Publication Date
DE102010003144A1 DE102010003144A1 (de) 2010-10-07
DE102010003144B4 true DE102010003144B4 (de) 2019-01-31

Family

ID=42675172

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102010003144.5A Active DE102010003144B4 (de) 2009-04-03 2010-03-23 Decodiervorrichtung und Decodierverfahren

Country Status (3)

Country Link
JP (1) JP4545217B1 (de)
CN (1) CN101860370A (de)
DE (1) DE102010003144B4 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5310701B2 (ja) * 2010-10-29 2013-10-09 株式会社Jvcケンウッド 復号装置および復号方法
JP5794939B2 (ja) * 2012-03-15 2015-10-14 三菱電機株式会社 誤り訂正復号装置および誤り訂正復号方法
CN112953558B (zh) 2017-07-21 2024-06-04 华为技术有限公司 一种Polar码编码方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007018066A1 (ja) 2005-08-10 2007-02-15 Mitsubishi Electric Corporation 検査行列生成方法、符号化方法、復号方法、通信装置、通信システム、符号化器および復号器
US20070118786A1 (en) 2005-11-21 2007-05-24 Samsung Electronics Co., Ltd. Method and apparatus for receiving data in a communication system
EP1819056A1 (de) 2004-12-02 2007-08-15 Mitsubishi Denki Kabushiki Kaisha Decodierungseinrichtung und kommunikationseinrichtung

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005166089A (ja) * 2003-11-28 2005-06-23 Toshiba Corp ディスク記憶装置、データ再生装置及びデータ再生方法
JP4519694B2 (ja) * 2005-03-29 2010-08-04 財団法人北九州産業学術推進機構 Ldpc符号検出装置及びldpc符号検出方法
CN101064591B (zh) * 2006-04-24 2010-05-12 中兴通讯股份有限公司 低密度奇偶校验码的译码方法及其校验节点更新电路
JP2008167357A (ja) * 2007-01-04 2008-07-17 Kddi Corp 低密度パリティ検査符号データを復号する復号方法、装置及びプログラム
JP2008219528A (ja) * 2007-03-05 2008-09-18 Keio Gijuku Ldpc符号検出装置及びプログラム
CN100550656C (zh) * 2007-12-27 2009-10-14 华为技术有限公司 信道译码方法、装置和低密度奇偶校验码译码器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1819056A1 (de) 2004-12-02 2007-08-15 Mitsubishi Denki Kabushiki Kaisha Decodierungseinrichtung und kommunikationseinrichtung
WO2007018066A1 (ja) 2005-08-10 2007-02-15 Mitsubishi Electric Corporation 検査行列生成方法、符号化方法、復号方法、通信装置、通信システム、符号化器および復号器
US20070118786A1 (en) 2005-11-21 2007-05-24 Samsung Electronics Co., Ltd. Method and apparatus for receiving data in a communication system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
R. Sakai et al, „Low complexity decoding algorithm for LDPC codes and its descretized density evolution", RCS2005-42 (2005-7), Seiten 13-18, Okayama, Juli 2005

Also Published As

Publication number Publication date
JP4545217B1 (ja) 2010-09-15
JP2010245736A (ja) 2010-10-28
CN101860370A (zh) 2010-10-13
DE102010003144A1 (de) 2010-10-07

Similar Documents

Publication Publication Date Title
US20180357530A1 (en) Deep learning decoding of error correcting codes
DE602004001548T2 (de) Verfahren und Vorrichtung zur Decodierung eines Low Density Partity Check (LDPC) Codes in einem Kommunikationssystem
DE102015122429A1 (de) Paritätsprüfcodierer niedriger Dichte
DE102010035210B4 (de) Verfahren zur Rückgewinnung verlorener Daten und zur Korrektur korrumpierter Daten
DE102007038114A1 (de) Fehlerkorrekturschaltung, Halbleiterspeicherelement und Fehlerkorrekturverfahren
DE102010003144B4 (de) Decodiervorrichtung und Decodierverfahren
DE102014215252B9 (de) Wirksame fehlerkorrektur von mehrbitfehlern
DE102016102590B4 (de) Datenverarbeitungseinrichtungen und verfahren zum rekonstruieren eines puf-werts
DE102005022107B9 (de) Vorrichtung und Verfahren zum Bestimmen einer Position eines Bitfehlers in einer Bitfolge
DE19719654B4 (de) Fehlerdekodierverfahren und -vorrichtung für Reed-Solomon-Codes
DE102015111729B4 (de) Verfahren und decoder zum bestimmen eines fehlervektors für ein datenwort gemäss einem reed-muller-code
DE102017216264A1 (de) Decodierverfahren
DE102014118531B4 (de) Verfahren und Datenverarbeitungseinrichtung zum Ermitteln eines Fehlervektors in einem Datenwort
DE102021109391B3 (de) Multibytefehler-Erkennung
DE102013201422B3 (de) Verfahren zum Wiederherstellen verlorengegangener und/ oder beschädigter Daten
DE102015121646B4 (de) Fehlerkorrektur
DE102022111624B4 (de) Fehlerkorrektur mit schneller Syndromberechnung
DE112008002060T5 (de) Koordinatenanstiegsverfahren für Linear-Programmierung-Decodierung
DE102015118668B4 (de) Fehlerkorrektur
DE102022118280A1 (de) Fehlerverarbeitung und Korrektur benachbarter 2-Bitfehler
DE102011102503B3 (de) Verfahren zum Berichtigen beschädigter Daten
DE102013223801B4 (de) Verfahren zum Wiederherstellen verloren gegangener und/oder beschädigter Daten
DE102019124889A1 (de) Verfahren zur Übertragung von Daten und Empfangsvorrichtung zum Empfangen von Daten
DE102022111623A1 (de) Fehlerkorrektur mit schneller Syndromberechnung
DE102011110121B3 (de) Kanalcodierungsverfahren mit Decodierungsverfahren

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R084 Declaration of willingness to licence
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final