DE102004053656B4 - Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes - Google Patents

Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes Download PDF

Info

Publication number
DE102004053656B4
DE102004053656B4 DE102004053656A DE102004053656A DE102004053656B4 DE 102004053656 B4 DE102004053656 B4 DE 102004053656B4 DE 102004053656 A DE102004053656 A DE 102004053656A DE 102004053656 A DE102004053656 A DE 102004053656A DE 102004053656 B4 DE102004053656 B4 DE 102004053656B4
Authority
DE
Germany
Prior art keywords
variable
matrix
node
variable node
test
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE102004053656A
Other languages
English (en)
Other versions
DE102004053656A1 (de
Inventor
Ernesto Zimmermann
Prakash Pattisapu
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.)
Technische Universitaet Dresden
Original Assignee
Technische Universitaet Dresden
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 Technische Universitaet Dresden filed Critical Technische Universitaet Dresden
Priority to DE102004053656A priority Critical patent/DE102004053656B4/de
Publication of DE102004053656A1 publication Critical patent/DE102004053656A1/de
Application granted granted Critical
Publication of DE102004053656B4 publication Critical patent/DE102004053656B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/1148Structural properties of the code parity-check or generator matrix
    • H03M13/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3738Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with judging correct decoding

Landscapes

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

Abstract

Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes, wobei die als eine möglicherweise gestörte Kanalinformation übertragenen Signale empfangsseitig in einem LDPC-Decoder unter Anwendung eines solchen Codes, der durch eine LDPC-Paritätsprüfmatrix repräsentiert und einem korrespondierenden Tannergraphen zugeordnet wird, dekodiert werden, indem durch iterativen Nachrichtenaustausch von Variablenknoten- und Prüfknoten-Zustandsinformationen als Wahrscheinlichkeitswerte der Bit-Belegung jeweiliger Variablenknoten und Prüfknoten des zugeordneten Tannergraphen Übertragungsfehler erfasst und durch die in den Iterationsschritten des LDPC-Decoders fortgeführte quellenstatistische Bewertung der Bit-Belegung der Knoten und durch daraus resultierende Aktualisierungen der Zustandsinformationen des jeweiligen Variablenknotens Bit-Fehlerkorrekturen am Ende eines Iterationsschrittes vorgenommen werden, dadurch gekennzeichnet, dass innerhalb eines Iterationsschrittes des LDPC-Decoders (12) der jeweilig aktive Variablenknoten (1) die Variablenknoten-Zustandsinformation (4) neben dem Prüfknoten (2) auch einem Schwellwertregler (8) mitteilt, dass der Schwellwertregler die Variablenzustandsinformation (4) mit einem eingegebenen Schwellwert (6) vergleicht, dass für den Fall des Erreichens des Schwellwertes (6) oder Überschreitens der Variablenzustandsinformation (4) über den Schwellwert...

Description

  • Die Erfindung betrifft Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes, wobei die als eine möglicherweise gestörte Kanalinformation übertragenen Signale empfangsseitig in einem LDPC (Low-Density Parity-Check)-Decoder unter Anwendung eines solchen Codes, der durch eine LDPC-Paritätsprüfmatrix repräsentiert und einem korrespondierenden Tannergraphen zugeordnet wird, dekodiert werden, indem durch iterativen Nachrichtenaustausch von Variablenknoten- und Prüfknoten-Zustandsinformationen als Wahrscheinlichkeitswerte der Bit-Belegung jeweiliger Variablenknoten und Prüfknoten des zugeordneten Tannergraphen Übertragungsfehler erfasst und durch die in den Iterationsschritten des LDPC-Decoders fortgeführte quellenstatistische Bewertung der Bit-Belegung der Knoten und daraus resultierend Aktualisierung der Zustandsinformationen des jeweiligen Variablenknoten eine Bit-Fehlerkorrektur am Ende eines Iterationsschrittes vorgenommen wird.
  • Die Erfindung betrifft weiterhin ein Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes, wobei sendeseitig beim Kodieren eines Nutzsignals mittels eines solchen Codes, welcher durch eine LDPC-Paritätsprüfmatrix repräsentiert wird, durch Hinzufügen von erzeugten Paritätsbits zu einem Nutzsignal s eine Kanalinformation erstellt wird, bei der nach Übertragung der Signale im Kommunikationskanal auftretende Übertragungsfehler empfangsseitig beim Dekodieren durch Anwendung dieses Codes erkannt und korrigiert werden, wobei am Sender eine Prüfmatrix verwendet wird, die aus der LDPC-Paritätsprüfmatrix umgeformt wurde und zur Erzeugung der Paritätsbitsignale mit zwei Berechnungsschritten dient, bei denen zuerst das höherwertige Paritätsbitsignal g aus dem Nutzsignal s mittels der umgeformten Prüfmatrix berechnet wird und anschließend das niederwertige Paritätsbitsignal p aus dem Nutzsignal s und dem zuvor berechneten höherwertigen Paritätsbitsignal g mittels Teilmatrizen der umgeformten Prüfmatrix berechnet wird.
  • Für die Erkennung oder/und Korrektur von Fehlern, die im Kommunikationskanal aufgetreten sind, ist die Kanalkodierung ein häufig benutztes Werkzeug für eine sichere Datenkommunikation in der Nachrichtentechnik.
  • Zur Reduzierung von Bit-Fehlern bei der Übertragung von Daten-Bit-Folgen sind unterschiedliche Kodierungsverfahren bekannt.
  • Diese Bit-Fehler korrigierenden Kodierungsverfahren können eine bestimmte Anzahl von Bit-Fehlern korrigieren. Dazu werden sendeseitig durch einen Kodiervorgang den Datenbits als Nutzinformation weitere Bits, sogenannte Prüf- oder Paritätsbits, hinzugefügt.
  • Optimalerweise werden nur so viele Paritätsbits beim Kodieren hinzugefügt, wie zur Korrektur erwarteter fehlerhafter Bits, welche bei der Übertragung der Bits der Kanalinformationen im Übertragungskanal auftreten, notwendig sind. Die Daten- und Paritätsbits bilden zusammen eine Codewort. Mehrere Codewörter bilden den Code.
  • Dabei werden die Bit-Folgen bzw. Struktur des Codes vor dem Senden bzw. nach dem Empfangen d. h. beim Kodieren bzw. Dekodieren vorzugsweise in Matrixform abgelegt und verarbeitet.
  • Die Kodierung wird auf die jeweiligen Zeilen und Spalten dieser Matrizen angewandt, wobei bei der Verarbeitung einerseits in jeder Spalte die Symbole der Codeworte und anderseits in jeder Reihe die Koeffizienten der Prüfgleichungen vorliegen.
  • Bei der Kodierung besteht das Problem, aus bestimmten Bits eines Nutzsignals unter Zuhilfenahme der Paritätsprüf- bzw. Generatormatrix mit möglichst geringer Komplexität die zugeordneten Paritätsbits zu bestimmen.
  • Dies ist insbesondere ein Problem, wenn die Paritätsprüfmatrix nicht in systematischer Form vorliegt, d.h. der zu den Paritätsbits korrespondierende Teil der Matrix keine Einheitsmatrix darstellt. Dies ist bei einer LDPC-Matrix i.A. der Fall.
  • Um diesen Nachteil zu vermeiden, ist es üblich, dass eine solche Paritätsprüfmatrix zum Kodieren verwendet wird, die als systematische Matrix gestaltet ist. Eine LDPC-Prüfmatrix kann z.B. durch Gauß-Elimination in systematische Form umgeformt werden, wobei jedoch ihre schwache Besetztheit verloren geht.
  • Es ist bekannt, dass die Kodierungskomplexität mit der Wortlänge n quadratisch ansteigt, sofern die in systematischer Form vorliegende Paritätsprüfmatrix in dem zu den Datenbits des Nutzsignals korrespondierenden Teil nicht schwach besetzt ist.
  • Daher besteht ein weiteres Vorgehen zur Verringerung der Kodierungskomplexität darin, zumindest einen Teil der umgeformten Paritätsprüfmatrix in schwach besetzter Matrixform zu erhalten.
  • Mit der Veröffentlichung von T.J. Richardson und R.L Urbanke, "Efficient Encoding of Low-Density Parity-Check Codes", (IEEE Transactions on Information Theory, vol 47, No. 2, pp 638-656, Feb. 2001) wird eine Lösung aufgezeigt, durch solche Umformung von Teilen einer Paritätsprüfmatrix den Kodieraufwand zu verringern und die Komplexität des Kodieraufwandes, die quadratisch mit der Blocklänge n ansteigt, möglichst wenig ansteigen zulassen.
  • Hierbei wird eine Matrix verwendet, die aus der LDPC- Paritätsprüfmatrix umgeformt wurde und zur Erzeugung der Paritätsbitsignale in zwei Berechnungsschritten dient.
  • Zuerst wird das höherwertige Paritätsbitsignal g aus dem Nutzsignal s mittels der umgeformten Prüfmatrix berechnet. gT = –(–ET–1B + D)–1 (– ET–1A + C)sT
  • Anschließend wird das niederwertige Paritätsbitsignal p aus dem Nutzsignal s und dem zuvor berechneten höherwertigen Paritätsbitsignal g mittels Teilmatrizen der umgeformten Prüfmatrix berechnet. PT = –T–1(A sT + B gT)
  • sVorteilhaft dabei ist, dass nur durch Vertauschen von Zeilen ein großer Teil der Prüfmatrix in systematische Form gebracht werden kann und dabei weiterhin schwach besetzt bleibt. Der verbleibende, weitaus kleinere Teil kann durch Gauß-Elimination in systematische Form gebracht werden, wobei er dann stark besetzt wird. Dadurch wird erreicht, dass bei einem großen Teil der Verarbeitungsschritte z.B. Matrizenaddition bzw. Matrizemultiplikation mit schwach besetzten Matrizen gearbeitet wird und somit die Komplexität bei der Berechnung nur linear mit der Länge n der zu verarbeitenden Blöcke verknüpft ist.
  • Weiterhin wird zur Einsparung des Berechnungsaufwandes in der jeweiligen Teilmatrix, in der eine linear ansteigende Komplexität bei der Berechnung nicht realisierbar ist, die Anzahl der Reihen dieser umgeformten Teilmatrix klein gestaltet. Auf diese Weise wird der erforderliche komplexe Berechnungsaufwand, der wegen der dichten Besetztheit dieser Teilmatrix betrieben werden muss, weitestgehend minimiert.
  • Im Gegenzug wird der Teil, der nach Umformung als ein systematischer und schwach besetzter Teil vorliegt, zur Aufwandsminimierung groß gestaltet.
  • Diese Lösung des Standes der Technik bringt den Vorteil, das durch die gezielte Umformung von Teilen der ursprünglichen Paritätsprüfmatrix zur Berechnung der Paritätsbits ein verringerter Kodieraufwand anfällt, da größtenteils nur eine linear mit der Blocklänge ansteigende Komplexität vorliegt.
  • Trotzdem besteht der beim Stand der Technik verbleibende Nachteil darin, dass sendeseitig noch immer eine zu hohe Komplexität der Berechnung beim Kodieren notwendig ist. Weiterhin ist der vorgeschlagene Algorithmus nicht in zufrieden stellendem Maße parallelisierbar, was für zukünftige parallelverarbeitende Systeme einen signifikanten Nachteil darstellt.
  • Empfangsseitig werden die Codewörter nach Erfassung der Kanalinformation einem Decoder zugeführt. Dieser stellt in einem Decodiervorgang mit der damit verbundenen Fehlerkorrektur ein jeweiliges korrigiertes Codewort bzw. die darin enthaltenen korrigierten Datenbits als relevante Nutzinformation zur Weiterverarbeitung bereit.
  • Um empfangsseitig die Korrekturfähigkeit bei der Dekodierung zu erhöhen, können z.B. sogenannte Produktcodes oder Turbo-Codes eingesetzt werden.
  • Bezüglich unterschiedlicher Code-Arten ist mit der von R.G. Gallager herausgegebenen Veröffentlichung „Low-Density-Parity-Check Codes", (Cambridge, Massachusetts: M.I.T. Press, 1963) der Low-Density-Parity-Check(LDPC)-Code als ein effizientes spezielles Kodierungsverfahren bekannt.
  • Beim Dekodieren mittels LDPC-Code weisen die in der Kanalinformation enthalten Codeworte ein solches Format auf, beim dem im vorherigen senderseitigen Kodiervorgang jeweils ein Block Datenbits, die Nutzinformation und ein Block Prüfbits zusammengefügt sind. In diesem Format werden die Codeworte in den Decoder übernommen.
  • Ebenfalls werden bei Anwendung dieser Code-Art die Paritäts bits, welche eine den Datenbits zugefügte Redundanz repräsentiert, zum Dekodieren/zur Fehlerkorrektur verwendet.
  • Weiterhin ist allgemein bekannt, dass die Prüfgleichungen zur Prüfsummenbildung aus Paritätsbits und einer bestimmten Menge Datenbits in Matrixform abgelegt werden. Hierbei bilden die vorliegenden Koeffizienten der Prüfgleichungen die sogenannte Generator-Matrix. In dieser Generator-Matrix, die den angewendeten Code charakterisiert, verbergen sich die Zusammenhänge zwischen den Datenbits und den Prüfbits.
  • Speziell bei der Anwendung eines LDPC(Low-Density-Parity-Check)-Code ist es günstig, diesen Code mittels der zur Generatormatrix korrespondierende Prüf-Matrix darzustellen, die die Zusammenhänge/Abhängigkeiten zwischen den Datenbits und den Prüfbits gut erkennbar abbildet.
  • Diese Prüfmatrix eines LDPC-Codes mit den binären Elementen (0; 1) enthält viele Elemente 0 und eine geringe Anzahl Elemente 1. Von der damit beschriebenen geringen Dichte der Matrix rührt auch ihre Bezeichnung „schwach besetzte" (Low Density) Prüfmatrix her. Besteht in allen Spalten und allen Reihen jeweils eine gleiche durch die Anzahl j, k benannte Dichte, wird diese LDPC-Prüfmatrix als reguläre LDPC-Matrix mit der Dichte (j, k) bzw. der beschriebene Code als regulärer LDPC-Code bezeichnet. Andernfalls wird der Code irregulär genannt.
  • Die Spalten der Prüfmatrix korrespondieren direkt mit den Bits in dem Codewort. Die Zeilen entsprechen den Koeffizienten der Prüf-Gleichungen, mit deren Berechnung die einzelnen Bits des empfangenen Codeworts nach der Übertragung im gestörten Kanal überprüft und fehlerkorrigiert werden.
  • Jedem LDPC-Code kann ein Graph, der so genannte Tannergraph, zugeordnet werden. In diesem Graphen gibt es zwei Klassen von Knoten: Variablenknoten und Prüfknoten. Die Klasse der Variablenknoten mit den Elementen v = {1, .. n} als jeweilige Co desymbole korrespondieren mit den Spalten der Prüfmatrix und die Klasse der Prüfknoten mit den Elementen c = {1, .. m} als Koeffizienten der Prüf-Gleichungen der Paritäts-Bit-Erzeugung korrespondieren mit den Reihen der Prüfmatrix.
  • Beide Klassen sind mit sogenannten Kanten verbunden, durch die die bestimmten Relationen zwischen Variablenknoten und Prüfknoten grafisch als Tannergraph dargestellt werden.
  • So lassen sich anhand des Tanner-Graphen wesentliche Eigenschaften der LDPC-Prüfmatrix grafisch gut ablesen, da jede 1 der LDPC-Matrix eine Verbindung/Kante zwischen Variablen- und Prüfknoten repräsentiert. Außerdem ist am Tanner-Graphen einer LDPC-Prüfmatrix ihre vergleichsweise geringe Komplexität ersichtlich, die auf ihre natürliche Einfachheit als schwach besetzte Matrix zurückzuführen ist.
  • Beim Stand der Technik gibt es unterschiedliche Algorithmen beim Dekodieren mit LDPC-Decoder.
  • So ist wird in der Veröffentlichung von T.J Richardson, M. Shokrollahi und R.L. Urbanke, „Design of Capacity-Approaching irregular Low-Density Parity-Check Codes" (IEEE Transactions on Information Theory, Feb. 2001) der Message Passing Algorithmus (MPA) als ein effizienter iterativer Dekodier-Algorithmus vorgestellt.
  • Mit der Anwendung des LDPC-Code in Verbindung mit dem Message Passing Algorithmus als iterative Dekodierung wird eine hohe Effizienz realisiert. Das zeigt sich insbesondere bei großen Codewortlängen (Blocklängen) n.
  • Der bei üblichen Lösungen sonst vorliegende Nachteil, dass mit steigender Codewortlänge (Blocklänge) zur Dekodierung die Komplexität der Decoder exponentiell ansteigt, wird hierbei vermieden. Es besteht zwar grundsätzlich eine hohe Decoderkomplexität, die aber nur linear mit der Codewortlänge (Blocklänge) ansteigt. Somit ist der Dekodieraufwand je dekodierten Daten-Bit unabhängig von der Codewortlänge.
  • Beim Message Passing Algorithmus in einem LDPC-Decoder werden Nachrichten entlang der Kanten ausgetauscht und in den jeweiligen Knoten so berechnet, dass eine Fehlerkorrektur bezüglich des gestörten Übertragungskanals vorgenommen werden kann.
  • Bei der binären Variante des MPA geschieht dies dadurch, dass in einem ersten Schritt den jeweiligen Variablenknoten die Bit-Belegungen des empfangenen Codewortes zugeführt werden. Dabei können ein Teil dieser Bits bei einer gestörten Übertragung verfälscht worden sein. Hierbei werden alle Bit-Belegungen der Variablen-Eingangs-Information, die an dem jeweiligen Variablenknoten anliegen, als Zustandswerte der Bit-Belegung (0, 1) erfasst.
  • Nachfolgend wird beim Dekodieren mit dem Message Passing Algorithmus jeder Teil des Decoders, der für ein bestimmtes Bit zuständig ist, diese vorliegenden Zustandswerte der als unsicher geltenden Bit-Belegungen überprüfen und verifizieren.
  • Dazu werden beim Message Passing Algorithmus sukzessive in Iterationsschritten Nachrichten entlang der Kanten des Graphen ausgetauscht.
  • In der binären Variante solcher LDPC-Decoder werden die Nachrichten entlang der Kanten als digital Symbole (0, 1) aufgefasst, sodass eine Summenbildung zur Verknüpfung in den jeweiligen Knoten als eine modulo 2 Summe erfolgt. Als schaltungstechnische Realisierung dieses Summenbildung ist bekannt, dass diese Verknüpfung z.B. durch jeweilige Exklusiv-ODER (EXOR) vorgenommen wird.
  • Von größerer Bedeutung sind die Dekodierverfahren mit Anwendungen von „soft-Decision". Das bedeutet hierbei für die LDPC-Decoder, dass jede dieser Nachrichten einerseits als Wahr scheinlichkeitswert für die Schätzung der Zustände der Bit-Belegung des jeweiligen Variablenknotens, der über seine (z.B. drei) Kanten mit Prüfknoten verbunden ist, aufgefasst wird.
  • Anderseits wird jede der von der von den Prüf- und Variablenknoten gesendeten Nachrichten als Rückschlusswahrscheinlichkeitswert der Zustände der Bit-Belegung in den Variablenknoten nach Prüfsummenbildung in den Prüfknoten, die ihrerseits mit weiteren Kanten mit anderen Variablenknoten verbunden sind, aufgefasst.
  • Mittels Quellenstatistik der verbundenen Knoten werden diese Nachrichten bewertend bereitgestellt. Diese Quellenstatistik wird weiterhin in den nachfolgenden Iterationen des Nachrichtenaustausches bei allen anderen auch mittelbar verbundenen Knoten fortgeführt.
  • Bzgl. dieser Wahrscheinlichkeitswerte ist anzumerken, dass bei einer hinreichend zuverlässigen digitalen Übertragung diese Schätzungen als Zustandswerte mit hoher Wahrscheinlichkeit (belief) aufzufassen sind, d. h. die relevanten Wahrscheinlichkeitswerte treten nicht beliebig zwischen null und 1 auf, sondern sind sehr nahe 0 beziehungsweise sehr nahe 1.
  • Zu Beginn des iterativen Dekodier-Prozesses werden den Variablenknoten die entsprechenden intrinsischen Wahrscheinlichkeitswerte (direkte Informationen) zugeordnet, die anhand des jeweiligen Wertes der Kanalinformationen als Variablen-Eingangsinformation übernommen wird. V(t)kj = Lk für t = 0
  • Dem nachfolgend, wird der MPA Iterationsschritt so ausgeführt, dass einerseits alle Variablenknoten, die Nachrichten aus der mit ihnen verbundenen Klasse der Prüfknoten empfangen, aus diesen extrinsischen Informationen zusammen mit dem Zustandswert des jeweiligen Knotens nach dem Prinzip der Majorität einen aktualisierten Wert für den (a-priori) Zustandswert bestimmen.
    Figure 00100001
  • Lk
    – Quellenstatistik für Bit k
    V (t) / kj
    – im Iterationsschritt t mitgeteilter Wahrscheinlichkeitswert vom Variablenknoten zum Prüfknoten
    μ (t–1) / jk
    – im Iterationsschritt t–1 mitgeteilter RückschlussWahrscheinlichkeitswert vom Prüfknoten zum Variablenknoten
    j
    – Elemente von Ak (nur benachbarte Prüfknoten der Variablenknoten k kommen in Betracht)
    Ak
    – Index verbundener Prüfknoten Ak ⊂ {1, ... m}
    t
    – Iterationsschritt
  • Der Majoritätsentscheidung liegt eine für den jeweiligen Variablenknoten geführte Quellenstatistik zugrunde.
  • Dem nachfolgend, werden alle MPA Iterationsschritte so fortgeführt, dass die jeweils beteiligten Prüfknoten die Nachrichten der mit ihnen über Kanten verbundenen Variablenknoten empfangen und die Prüfknoten erfassen aus diesen (extrinsischen) Informationen die Rückschlusswahrscheinlichkeitswerte für den an den jeweiligen Variablenknoten mitzuteilenden wahrscheinlichen (geschätzten) Zustandswert. Mit diesem Zustandswert wird über die fortgeführte Quellenstatistik der Zustandswerte des Variablenknotens aktualisiert.
  • Beim Stand der Technik ist weiterhin bekannt, dass dieser Vorgang in den Iterationsschritten so lange fortgesetzt wird, bis alle Prüfgleichungen der Prüfmatrix erfüllt sind, oder eine vordefinierte Anzahl von Iterationen erreicht worden ist. (A.Shokrollahi, „LDPC Codes: An Introduction" Fremont, 02.04.2003)
  • Dabei ist bei den Lösungen des Standes der Technik besonders nachteilig, dass bei jeder Iterationen alle Zustände in den Va riablenknoten und Prüfknoten berechnet werden. Das bedeutet ein Rechenwerk, das für das Dekodieren zuständig ist, zu dessen Ausführung für alle Knoten aktiv werden muss. Das bedeutet weiterhin, dass der hohen Komplexität der realisierenden Hardware (großer vorgehaltener Speicherbereich) auch der Energieverbrauch für die Funktion des Decoders sehr hoch ist. Damit verbunden ist ein begrenzter maximaler Datendurchsatz der realisierten Decoder.
  • Dabei ist zu ersehen, dass die Decoderkomplexität abhängig ist von:
    • - der Anzahl der Operationen je Knoten
    • - der mittleren Anzahl der Iterationsschritte
    • - der Anzahl aktiver Knoten in jeder Iteration.
  • Die Patentschrift EP 1 258 999 A2 beschreibt ein Verfahren zur Auswertung eines Fehlerkorrekturcodes für einen Datenblock begrenzter Größe in einem binären und gedämpften Kanal oder einem Kanal mit zusätzlichem weißem Gaußschem Rauschen. Das dort beschriebene Verfahren zielt auf die Optimierung der Fehlerkorrekturcodes ab, indem nach einem Fehlerkorrekturcode für eine festgelegte Datenblockgröße und Übertragungsrate mit der besten Leistung hinsichtlich der Dekodierfehler als Funktion des Rauschens gesucht wird. Die Dekodierfehlerraten der gesendeten variablen Bits werden dabei zur Steuerung der Suche nach einem optimalen Code genutzt.
  • Es besteht somit die Aufgabe, ein Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes anzugeben, welche sich bei Beibehaltung einer hohen Leistungsfähigkeit für die Fehlerkorrektur durch niedrige Komplexität von angewandter Soft- und Hardware auszeichnet.
  • Gemäß der Erfindung wird die Aufgabe dadurch gelöst, dass innerhalb eines Iterationsschrittes des LDPC-Decoders der jeweilig aktive Variablenknoten die Variablenknoten-Zustandsinformation neben dem Prüfknoten auch einem Schwellwertregler mitteilt. Der Schwellwertregler vergleicht die Va riablenzustandsinformation mit einem eingegebenen Schwellwert.
  • Für den Fall des Erreichens oder Überschreitens der Variablenzustandsinformation über den Schwellwert sendet der Schwellwertregler eine Deaktivierungsmitteilung an den Variablenknoten und den Prüfknoten aus und damit wird der Variablenknoten in diesem Iterationsschritt sofort und der Prüfknoten erst nach dem alle direkt mit ihm verbundenen Variablenknoten ihre Deaktivierungsmitteilung erhalten haben, deaktiviert. Mit der Deaktivierungsmitteilung an den Variablenknoten wird ein endgültiger Wert am jeweiligen Ausgang des jeweiligen Variablenknotens bereitgestellt.
  • Für den Fall eines Unterschreitens der Variablenzustandsinformation unter den Schwellwert überträgt der Prüfknoten eine erfasste Prüfknoten-Zustandsinformationen dem Variablenknoten. Nachfolgend wird der vorliegende Iterationsschritt vollständig ausgeführt und es schließt sich danach ein weiterer Iterationsschritt an.
  • Die Erfindung zielt darauf ab, die Zahl der aktiven Knoten weitestgehend niedrig zuhalten, um auf diese Weise die Nachteile, insbesondere die hohe Decoder-Komplexität, des Standes der Technik zu vermeiden. Bei dem eingegebenen Schwellwert ist zu berücksichtigen, dass er sowohl abhängig von der aktuellen Iteration als auch abhängig von der Verbindungsanzahl und Komplexität des aktuell betrachteten Variablenknotens gestaltet werden kann.
  • Auch die maximal Anzahl von Iterationen kann reduziert werden. So steigt die Decoder-Komplexität nicht mehr linear mit der Anzahl der Iterationen. Dies kann an der rechnerischen Beziehung der Komplexität von LDPC-Decodern gezeigt werden:
    Figure 00130001
    wobei gilt
  • NA,i
    – Anzahl der aktiven Knoten im Iterationsschritt i
    Pr(NI ≥ i)
    – Wahrscheinlichkeit, dass die i-te Iteration erreicht wird
    θ
    – Dekoderkomplexität
    NB
    – Anzahl der Variablenknoten
  • Bei geeignetem Schwellwert wird die ursprüngliche Leistungsfähigkeit der Decoder fast erreicht.
  • Dies kann vorteilhaft deswegen erzielt werden, da die jeweiligen Zustandswerte bei den angewandten LDPC-Code gegen einen festen Wert konvergieren. Dies bedeutet, dass sich die Zustandswerte in vielen Variablen- und Prüfknoten mit steigender Anzahl der Iterationen nicht mehr ändern. Unter Inkaufnahme eines gewissen Anstiegs der Bit-Fehlerrate kann ein Teil der in den Iterationen ausgeführten Berechnungen daher vorzeitig abgebrochen werden. D. h. die Bereitstellung der korrigierten Bit-Belegung am jeweiligen Variablenknoten setzt nicht die Lösung aller Prüfgleichungen voraus. Die Berechnung der Zustandswerten erfolgt mittels des Schwellwertregler nur noch in den Knoten, die substanziell zum Decoder-Ergebnis beitragen.
  • Besonders vorteilhaft ist dabei die Tatsache, dass die technischen Eigenschaften des Decoders, wie z.B. die Fehlerkorrektur austauschbar werden mit den Eigenschaften der Decoderkomplexität. Die bringt besondere Vorteile bei dem Entwurf solcher Fehlerkorrektur-Decoder. Sie können auf den jeweiligen Anwendungsfall sehr genau angepasst entworfen werden.
  • Eine Ausgestaltung des Erfindung sieht vor, dass die Variablenknoten-Zustandsinformation, die über die Variablen-Eingangsinformation als fehlerfrei (sicher) gekennzeichnet ist, sofort deaktiviert wird und Iterationsschritte nur für die nicht gekennzeichneten Variablenknoten-Zustandsinformation (4) erfolgen.
  • Diese Lösung bewirkt, dass variablen, bei denen die Zustandswerte von vornherein klar darstellbar sind, keinerlei Aufwand zur Bearbeitung verbrauchen und die Aufwandsminimierung bei der Berechnung erheblich verbessert wird.
  • Eine weitere Ausgestaltung der Erfindung wird dadurch vorgenommen, dass mit dem Eintreffen der Deaktivierungsmitteilung der Zustandswert des jeweiligen Variablenknotens entsprechend der fortgeführten Quellenstatistik mit dem resultierenden Zustandswert aktualisiert und als endgültiger Wert am jeweiligen Ausgang des Variablenknotens bereitgestellt wird.
  • Die Lösung bringt vorteilhaft zur Geltung, dass bei einer so beschleunigten Konvergenz sich auch der Umstand günstig auswirkt, dass beim Reduzieren der aktiven Knoten durch Erreichen und Überschreiten des Schwellwertes nicht nur allein die Knoten deaktiviert werden, sondern es wird vor dem Deaktivieren der betreffenden Knoten sein wahrscheinlichster Wert in diesem aktuellen Iterationsschritt noch verarbeitet. Auf diese Weise besteht die Möglichkeit, die Konvergenz zusätzlich zu beschleunigen. Besonders vorteilhaft erweist es sich, dass mit der fortgeführten Quellenstatistik der resultierende Zustandswert als maximal möglicher und sicherster Zustandswert aktualisiert werden kann.
  • Ein weiterer Vorteil ergibt sich bei der Erfindung dadurch, dass durch die beschleunigte Konvergenz nicht dekodierbare Blöcke schnell detektiert werden können.
  • Dies wird dadurch hervorgerufen, dass bei (potenziell) nicht dekodierbaren Blöcken einige Variablenknoten im Tannergraphen zu falschen Zustandswerten konvergieren.
  • Durch die beschleunigte Konvergenz ist dieses Verhalten wesentlich früher zu detektieren, da es zu Konflikten bei der Aktualisierung der Quellenstatistiken führt.
  • Eine zusätzliche Ausgestaltung des Erfindung sieht vor, dass mit dem Eintreffen der Deaktivierungsmitteilung der gerade vorliegende Zustandswert des jeweiligen Variablenknotens gespeichert und als endgültiger Wert am jeweiligen Ausgang des Variablenknotens bereitgestellt wird.
  • Es wird bei dieser Lösung darauf abgestellt, dass zwar auf eine zusätzliche Beschleunigung der Konvergenz verzichtet wird, aber es wird dafür die Bitfehlerrate (BER) gering gehalten.
  • Günstig wird die Erfindung auch dadurch gestaltet, dass bereitgestellte Zustandswerte des Variablenknotens in einem Bit-Flipping Decoder korrigiert werden. Dem nachfolgend, werden die korrigierten Zustandswerte als Decoder-Ergebnis des LDPC- Decoders ausgegeben.
  • Bei dieser Erfindung ist besonders vorteilhaft, dass die Leistungsfähigkeit herkömmlicher LDPC-Decoder in Bezug auf niedrige Bitfehlerrate erreicht werden kann, ohne deren Komplexität aufzuwenden. Hierbei werden die technischen Eigenschaften des erfindungsgemäßen Decoders besonders gut an die technische Anwendungen angepasst.
  • Hierzu wird insbesondere die Kenntnis über Konflikte bei der Fortführung der Quellenstatistik genutzt, um den Bit Flipping Decoder nur auf eine kleine Anzahl von Variablenknoten anwenden zu müssen.
  • Eine Variante der Erfindung wird derart gestaltet, dass die Erzeugung der Paritätsbitsignale in zwei unterschiedlichen Schritten erfolgt. Einerseits wird das höherwertige Paritätsbitsignal g aus dem Nutzsignal s mittels der umgeformten Prüfmatrix berechnet. Hierbei ist die umgeformten Prüfmatrix aus der LDPC-Paritätsprüfmatrix so transformiert, dass sie jeweils aus einer oberen und unteren ersten Teilmatrix A, B besteht, welche die Koeffizienten zur Verknüpfung des Nutzsignals s enthält. Außerdem ist die umgeformten Prüfmatrix zusätzlich zu einer oberen und unteren zweiten Teilmatrix C, D geformt, welche die Koeffizienten zur Verknüpfung des höherwertigen Paritätsbitsignals g enthält, und weiterhin besteht die umgeformte Prüfmatrix aus einer oberen und unteren dritten Teilmatrix T, E, welche die Koeffizienten zur Verknüpfung des niederwertigen Paritätsbitsignals p enthält.
  • Dabei ist nach Vertauschen von Zeilen und Gauß-Elimination die obere dritte Teilmatrix T eine untere Dreiecksmatrix und schwach bzw. die untere dritte Teilmatrix E stark besetzt.
  • Weiterhin erfolgt die Ermittlung des niederwertigen Paritätsbitsignal p durch Dekodieren, indem das Nutzsignal s und das zuvor berechnete höherwertige Paritätsbitsignal g als fehlerfreie gekennzeichnete Signale und ein unsicheres niederwertiges Paritätsbitsignal p* als fehlerbehaftet gekennzeichnet in die Variablenknoten des LDPC-Decoders als Variablen-Eingangsinformation eingegeben werden.
  • Nachfolgend werden diese Signale im LDPC-Decoder unter Verwendung eines Schwellwertes, der die Konvergenz der Dekodierung beschleunigt, dekodiert und das unsichere niederwertige Paritätsbitsignal p* wird korrigiert und als niederwertiges Paritätsbitsignal p am Ausgang des LDPC-Decoders bereitgestellt. Zusammen mit dem vorliegenden Nutzsignal s und dem höherwertigen Paritätsbitsignal g bilden sie die Kanalinformation am Ausgang des Encoders.
  • In dieser Erfindung wird vorteilhaft realisiert, dass der hohe Berechnungs-Aufwand beim Kodieren durch Nutzung der erfindungsgemäßen Decoderarchitektur reduziert werden kann. Diese Aufwandsreduzierung kann nur durch die Anwendung des erfindungsgemäßen Decoders mit seiner verstärkten Konvergenz (Forced Convergence) erreicht werden, da eine Anwendung üblicher Decoder mit ihren eigenem naturgemäß hohen Aufwand eine Verwendung in Encodern nicht sinnvoll ist.
  • Eine zusätzliche Variante der Erfindung wird derart gestaltet, dass der Schwellwert mit einem encoder-spezifischen Wert in den LDPC-Decoder des Encoders eingegeben wird.
  • Bei dieser Lösung wird darauf abgestellt, dass mit einem solchem encoder-spezifischen Schwellwert eines Decoders mit verstärkter Konvergenz ein angepasstes Dekodier-Verhalten an den Bit-Erasure-Channel (BEC) realisierbar wird. Dadurch können mit diesem Teil des Encoders die niederwertigen Paritätsbits p in wenigen Iterationsschritten bestimmt werden. Vorzugsweise wird ein encoder-spezifischer Schwellwert 0,5 eingegeben.
  • Die Erfindung wird nachfolgend anhand eines Ausführungsbeispiels näher erläutert. Dabei zeigt:
  • 1 Ein Blockschaltbild des Verfahrens mit blockbasierten Fehlerschutzkodes zum Dekodieren in einem LDPC-Decoder 12,
  • 2 Ein Blockschaltbild des Encoders 21 für das Verfahrens zum Kodieren mit blockbasierten Fehlerschutzkodes unter Verwendung des LDPC-Decoders 12.
  • In 1 ist das Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes ersichtlich, bei dem eine Kanalinformation 5, welche möglicherweise fehlerbehaftet übertragene Signale enthält, empfangsseitig als Variablen-Eingangsinformation 3 zum Dekodieren in einem LDPC-Decoder 12 bereitgestellt wird.
  • Das Dekodieren geschieht unter Anwendung eines solchen Codes, der durch eine LDPC-Paritätsprüfmatrix repräsentiert und einem Tannergraphen zugeordnet wird. Dabei wird durch einen iterativen Nachrichtenaustausch von Variablenknoten- und Prüfknoten-Zustandsinformation 4; 7 als Wahrscheinlichkeitswerte der Bit-Belegung jeweiliger Variablenknoten 1 und Prüfknoten 2 des zugeordneten Tannergraphen Übertragungsfehler erfasst.
  • Weiterhin teilt innerhalb eines Iterationsschrittes des LDPC-Decoders 12 der jeweilig aktive Variablenknoten 1 die Variablenknoten-Zustandsinformation 4 neben dem Prüfknoten 2 auch einem Schwellwertregler 8 mit. Der Schwellwertregler 8 vergleicht die Variablenzustandsinformation 4 mit einem eingegebenen Schwellwert 6.
  • Für den Fall des Erreichens des Schwellwertes 6 oder Überschreitens der Variablenzustandsinformation 4 über den Schwellwert 6 wird der Schwellwertregler 8 eine Deaktivierungsmitteilung 9 an den Variablenknoten 1 und nach Abschluss aller Iterationen auch an den Prüfknoten 2 aussenden. Damit wird der Variablenknoten 1 in diesem Iterationsschritt sofort und der Prüfknoten 2 erst nach dem alle auch mittelbar verbundenen Variablenknoten 1 ihre Deaktivierungsmitteilung 9 erhalten haben deaktiviert.
  • Der Zustandswert des jeweiligen Variablenknotens 1 wird entsprechend der fortgeführten Quellenstatistik mit seinem resultierenden Zustandswert aktualisiert und als endgültiger Wert am jeweiligen Ausgang des Variablenknotens 1 bereitgestellt. Durch die daraus resultierende Aktualisierung der Zustandsinformationen 4 des jeweiligen Variablenknotens werden Bit-Fehlerkorrekturen am Ende eines Iterationsschrittes realisiert. Damit gilt der vorliegende Iterationsschritt als vollständig ausgeführt. Danach schließt sich ein weiterer Iterationsschritt an. Die auf diese Weise bereitgestellten Zustandswerte des Variablenknotens 1 werden in einem Bit-Flipping Decoder 10 korrigiert. Danach werden korrigierten Zustandswerte als Nutzsignal 11 (Decoder-Ergebnis) des LDPC-Decoders 12 ausgegeben.
  • In 2 ist das Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes ersichtlich, bei dem eine Kanalinformation 5 kodiert wird, indem sendeseitig das Kodieren mittels eines solchen Codes bewirkt wird, welcher durch eine Paritätsprüfmatrix repräsentiert wird.
  • Durch Hinzufügen von erzeugten Paritätsbits zu einem Nutzsignal 11 wird die Kanalinformation 5 erstellt, bei der nach Übertragung der Signale im Kommunikationskanal auftretende Übertragungsfehler empfangsseitig beim Dekodieren durch Anwendung dieses Codes erkannt und korrigiert werden.
  • Hierbei wird eine Prüfmatrix verwendet, die aus der LDPC-Paritätsprüfmatrix umgeformt wurde und zur Erzeugung der Paritätsbitsignale dient.
  • Die Erzeugung der Paritätsbitsignale erfolgt in zwei unterschiedlichen Schritten, bei denen einerseits das höherwertige Paritätsbitsignal g 16 aus dem Nutzsignal s 11 mittels der umgeformten Prüfmatrix 13 berechnet wird, wobei die umgeformten Prüfmatrix 13 eine Spaltenanzahl n, welche der Blocklänge entspricht, und Reihenanzahl m, welche die Anzahl der Prüfgleichungen repräsentiert, aufweist. Hierbei wird die umgeformte Prüfmatrix 13 aus der LDPC-Paritätsprüfmatrix so transformiert, dass sie jeweils aus einer oberen und unteren ersten Teilmatrix A, C, 14; 15 bestehen, welche die Koeffizienten zur Verknüpfung des Nutzsignals s 11 enthält.
  • Es erfolgt die Transformationen außerdem so, dass die umgeformte Prüfmatrix 13 weiterhin aus einer oberen und unteren zweiten Teilmatrix B, D, 18; 19, welche die Koeffizienten zur Verknüpfung des höherwertigen Paritätsbitsignals g 16 enthält, und aus einer oberen und unteren dritten Teilmatrix T, E 20; 23, welche die Koeffizienten zur Verknüpfung des niederwertigen Paritätsbitsignals p 17 enthält, besteht.
  • Hierbei ist nach Vertauschen und Gauß-Elimination die obere Teilmatrix T 20 eine untere Dreiecksmatrix und schwach besetzt und die untere dritte Teilmatrix E 23 stark besetzt.
  • Es wird damit berechnet: gT = –(–ET–1B + D)–1 (–ET–1A + C)sT
  • Außerdem erfolgt die Ermittlung des niederwertigen Paritätsbitsignal p 17 durch Dekodieren, indem das Nutzsignal s 11 und das zuvor berechnete höherwertige Paritätsbitsignal g 16 (16) als fehlerfrei gekennzeichnete Signale und ein unsicheres niederwertiges Paritätsbitsignal p* 22 als fehlerbehaftet gekennzeichnet in die Variablenknoten 1 des LDPC-Decoders 12 als Variablen-Eingangsinformation 3 eingegeben werden.
  • Nachfolgend werden diese Signale im LDPC-Decoder 12 dekodiert und das unsichere niederwertige Paritätsbitsignal p* 22 korrigiert.
  • Dieses wird dann als niederwertiges Paritätsbitsignal p 17 am Ausgang des LDPC-Decoders 12 bereitgestellt. Zusammen mit dem vorliegenden Nutzsignal s 11 und dem höherwertigen Paritätsbitsignal g 16 bilden sie die Kanalinformation 5 am Ausgang des Encoders 21.
  • 1
    Variablenknoten
    2
    Prüfknoten
    3
    Variablen-Eingangsinformation
    4
    Variablenknoten-Zustandsinformation
    5
    Kanalinformation
    6
    Schwellwert
    7
    Prüfknoten-Zustandsinformationen
    8
    Schwellwertregler
    9
    Information der inaktiven Knoten
    10
    Bit-Flipping Decoder
    11
    Nutzsignal s (Decoder-Ergebnis)
    12
    LDPC-Decoder
    13
    umgeformte Prüfmatrix (zur Erzeugung der höherwertigen
    Paritätsbits g durch Berechnung)
    14
    obere erste Teilmatrix A
    15
    untere erste Teilmatrix C
    16
    höherwertiges Paritätsbitsignal g
    17
    niederwertiges Paritätsbitsignal p
    18
    obere zweite Teilmatrix B
    19
    untere zweite Teilmatrix D
    20
    obere dritte Teilmatrix T
    21
    Encoder
    22
    unsicheres niederwertiges Paritätsbitsignal p*
    23
    untere dritte Teilmatrix E

Claims (7)

  1. Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes, wobei die als eine möglicherweise gestörte Kanalinformation übertragenen Signale empfangsseitig in einem LDPC-Decoder unter Anwendung eines solchen Codes, der durch eine LDPC-Paritätsprüfmatrix repräsentiert und einem korrespondierenden Tannergraphen zugeordnet wird, dekodiert werden, indem durch iterativen Nachrichtenaustausch von Variablenknoten- und Prüfknoten-Zustandsinformationen als Wahrscheinlichkeitswerte der Bit-Belegung jeweiliger Variablenknoten und Prüfknoten des zugeordneten Tannergraphen Übertragungsfehler erfasst und durch die in den Iterationsschritten des LDPC-Decoders fortgeführte quellenstatistische Bewertung der Bit-Belegung der Knoten und durch daraus resultierende Aktualisierungen der Zustandsinformationen des jeweiligen Variablenknotens Bit-Fehlerkorrekturen am Ende eines Iterationsschrittes vorgenommen werden, dadurch gekennzeichnet, dass innerhalb eines Iterationsschrittes des LDPC-Decoders (12) der jeweilig aktive Variablenknoten (1) die Variablenknoten-Zustandsinformation (4) neben dem Prüfknoten (2) auch einem Schwellwertregler (8) mitteilt, dass der Schwellwertregler die Variablenzustandsinformation (4) mit einem eingegebenen Schwellwert (6) vergleicht, dass für den Fall des Erreichens des Schwellwertes (6) oder Überschreitens der Variablenzustandsinformation (4) über den Schwellwert (6) der Schwellwertregler (8) eine Deaktivierungsmitteilung (9) an den Variablenknoten (1) und den Prüfknoten (2) ausgesendet und damit der Variablenknoten (1) in diesem Iterationsschritt sofort deaktiviert wird und ein endgültiger Wert am jeweiligen Ausgang des Variablenknotens (1) bereitgestellt wird, dass der Prüfknoten (2), erst nachdem alle direkt mit ihm verbundenen Variablenknoten (1) ihre Deaktivierungsmitteilung (9) erhalten haben, deaktiviert wird, dass für den Fall eines Unterschreitens der Variablenzustandsinformation (4) unter den Schwellwert (6) der Prüfknoten (2) eine erfasste Prüfknoten-Zustandsinformationen (7) dem Variablenknoten (1) überträgt und nachfolgend der vorliegende Iterationsschritt vollständig ausgeführt wird und sich danach ein weiterer Iterationsschritt anschließt.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Variablenknoten-Zustandsinformation (4), die über die Variablen-Eingangsinformation als fehlerfrei (sicher) gekennzeichnet ist, sofort deaktiviert wird und Iterationsschritte nur für die nicht gekennzeichneten Variablenknoten-Zustandsinformation (4) erfolgen.
  3. Verfahren nach Ansprüchen 1 oder 2, dadurch gekennzeichnet, dass mit dem Eintreffen der Deaktivierungsmitteilung (9) der Zustandswert des jeweiligen Variablenknotens (1) entsprechend der fortgeführten Quellenstatistik mit dem resultierenden wahrscheinlichsten Zustandswert aktualisiert und als endgültiger Wert am jeweiligen Ausgang des Variablenknotens (1) bereitgestellt wird.
  4. Verfahren nach Ansprüchen 1 oder 2, dadurch gekennzeichnet, dass mit dem Eintreffen der Deaktivierungsmitteilung (9) der gerade vorliegende Zustandswert des jeweiligen Variablenknotens (1) gespeichert und als endgültiger Wert am jeweiligen Ausgang des Variablenknotens (1) bereitgestellt wird.
  5. Verfahren nach einem der Ansprüche 1 bis 4 dadurch ge kennzeichnet, dass bereitgestellte Zustandswerte des Variablenknotens (1) in einem Bit-Flipping Decoder (10) korrigiert werden und dem nachfolgend werden die korrigierten Zustandswerte als Nutzsignal (11) (Decoder-Ergebnis) des LDPC-Decoders (12) ausgegeben.
  6. Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes, wobei sendeseitig beim Kodieren eines Nutzsignals mittels eines solchen Codes, welcher durch eine LDPC-Paritätsprüfmatrix repräsentiert wird, durch Hinzufügen von erzeugten Paritätsbits zu einem Nutzsignal s eine Kanalinformation erstellt wird, bei der nach Übertragung der Signale im Kommunikationskanal auftretende Übertragungsfehler empfangsseitig beim Dekodieren durch Anwendung dieses Codes erkannt und korrigiert werden, wobei eine Prüfmatrix verwendet wird, die aus der LDPC-Paritätsprüfmatrix umgeformt wurde und zur Erzeugung der Paritätsbitsignale mit zwei Berechnungsschritten dient, bei denen zuerst das höherwertige Paritätsbitsignal g aus dem Nutzsignal s mittels der umgeformten LDPC-Paritätsprüfmatrix berechnet wird und anschließend das niederwertige Paritätsbitsignal p aus dem Nutzsignal s und dem zuvor berechneten höherwertigen Paritätsbitsignal g mittels Teilmatrizen der umgeformten Prüfmatrix berechnet wird, dadurch gekennzeichnet, dass die Erzeugung der Paritätsbitsignale in zwei unterschiedlichen Schritten erfolgt, bei denen einerseits das höherwertige Paritätsbitsignal g (16) aus dem Nutzsignal s (11) mittels der umgeformten Prüfmatrix (13) berechnet wird, wobei die umgeformten Prüfmatrix (13) aus der LDPC-Paritätsprüfmatrix so transformiert ist, dass sie jeweils aus einer oberen und unteren ersten Teilmatrix A, C (14), (15), welche die Koeffizienten zur Verknüpfung des Nutzsignals s (11) enthält, aus einer oberen und unteren zweiten Teilmatrix B, D, (18), (19) welche die Koeffizienten zur Verknüpfung des höherwertigen Paritätsbitsignals g (16) enthält, und aus einer oberen und unteren dritten Teilmatrix T, E (20), (23), welche die Koeffizienten zur Verknüpfung des niederwertigen Paritätsbitsignals p (17) enthält, wobei nach Gauß-Elimination die obere dritte Teilmatrix T (20) schwach und die untere dritte Teilmat rix E (23) stark besetzt ist, dass anderseits die Ermittlung des niederwertigen Paritätsbitsignal p (17) durch Dekodieren erfolgt, indem das Nutzsignal s (11) und das zuvor berechnete höherwertige Paritätsbitsignal g (16) als fehlerfrei gekennzeichnete Signale und ein unsicheres niederwertiges Paritätsbitsignal p* (22) als fehlerbehaftet gekennzeichnet in die Variablenknoten (1) des LDPC-Decoders (12) als Variablen-Eingangsinformation (3) eingegeben werden, dass nachfolgend diese Signale im LDPC-Decoder (12) unter Verwendung eines die Konvergenz der Dekodierung beschleunigenden Schwellwertes (6) dekodiert und dass das unsichere niederwertige Paritätsbitsignal p* (22) korrigiert und als niederwertiges Paritätsbitsignal p (17) am Ausgang des LDPC-Decoders (12) bereitgestellt wird und zusammen mit den vorliegenden Nutzsignal s (11) und dem höherwertigen Paritätsbitsignal g (16) die Kanalinformation (5) am Ausgang des Encoders (21) bilden.
  7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass der Schwellwert (6) mit einem encoder-spezifischen Wert in den LDPC-Decoder (12) des Encoders (21) eingegeben wird.
DE102004053656A 2004-09-10 2004-11-03 Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes Expired - Fee Related DE102004053656B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102004053656A DE102004053656B4 (de) 2004-09-10 2004-11-03 Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102004044276.2 2004-09-10
DE102004044276 2004-09-10
DE102004053656A DE102004053656B4 (de) 2004-09-10 2004-11-03 Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes

Publications (2)

Publication Number Publication Date
DE102004053656A1 DE102004053656A1 (de) 2006-03-30
DE102004053656B4 true DE102004053656B4 (de) 2006-11-30

Family

ID=36011705

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004053656A Expired - Fee Related DE102004053656B4 (de) 2004-09-10 2004-11-03 Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes

Country Status (1)

Country Link
DE (1) DE102004053656B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009017540B4 (de) * 2008-05-23 2011-01-20 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zum Wiederherstellen verlorener und/oder beschädigter Daten

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103888148B (zh) * 2014-03-20 2016-10-26 山东华芯半导体有限公司 一种动态阈值比特翻转的ldpc码硬判决译码方法
CN113162634B (zh) * 2021-04-20 2023-01-20 中山大学 一种基于比特翻转的码长自适应极化码译码方法
CN115441988A (zh) * 2022-07-15 2022-12-06 安徽师范大学 一种基于Rateless LDPC码的可靠WiFi反射通信系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1258999A2 (de) * 2001-05-16 2002-11-20 Mitsubishi Denki Kabushiki Kaisha Bewärtung und Optimisierung von fehlerkorrigierenden Kodes mit Anwendung einer Wiedernormalisierung von Gruppentransformation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1258999A2 (de) * 2001-05-16 2002-11-20 Mitsubishi Denki Kabushiki Kaisha Bewärtung und Optimisierung von fehlerkorrigierenden Kodes mit Anwendung einer Wiedernormalisierung von Gruppentransformation

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
GALLAGER,Robert G.: Low-Density Parity-Check Co- des. Cambridge, Mass.: M.I.T. Press, 1963 *
RICHARDSON,Thomas J., SHOKROLLAHI,M.Amin, URBANKE,Rüdiger L.: Design of capacity-approaching irregular low-density parity-check codes. In: IEEE Trans. on Information Theory, Feb.2001, Bd.47, Nr.2, S.619-637
RICHARDSON,Thomas J., SHOKROLLAHI,M.Amin, URBANKE,Rüdiger L.: Design of capacity-approachingirregular low-density parity-check codes. In: IEEE Trans. on Information Theory, Feb.2001, Bd.47, Nr.2, S.619-637 *
RICHARDSON,Thomas J.; URBANKE,Rüdiger L.: Effi- cient encoding of low density parity-check codes. In: IEEE Trans. on Information Theory, Feb. 2001, Bd.47, Nr.2, S.638-656
RICHARDSON,Thomas J; URBANKE,Rüdiger L.: Effi- cient encoding of low density parity-check codes. In: IEEE Trans. on Information Theory, Feb. 2001, Bd.47, Nr.2, S.638-656 *
SHOKROLLAHI,Amin: LDPC Codes: An Introduction, Publikation der Digital Fountain, Inc., Fremont, 1.Feb. 2003 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009017540B4 (de) * 2008-05-23 2011-01-20 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zum Wiederherstellen verlorener und/oder beschädigter Daten

Also Published As

Publication number Publication date
DE102004053656A1 (de) 2006-03-30

Similar Documents

Publication Publication Date Title
DE112005003790B4 (de) Verallgemeinerter Mehrschwellen-Decodierer für Codes für Paritätsprüfungen geringer Dichte
DE102009017540B4 (de) Verfahren zum Wiederherstellen verlorener und/oder beschädigter Daten
DE602004001548T2 (de) Verfahren und Vorrichtung zur Decodierung eines Low Density Partity Check (LDPC) Codes in einem Kommunikationssystem
DE69936908T2 (de) Iterative dekodierung von produktkoden
DE102017110389B4 (de) Verfahren und Decoder zur Softinput Decodierung von verallgemeinerten verketteten Codes
DE60316428T2 (de) Verfahren, Kodierer und Kommunikationsvorrichtung zur Kodierung von parallel verketteten Daten
DE102004053656B4 (de) Verfahren zur Verarbeitung von Signalen nach Verfahren mit blockbasierten Fehlerschutzcodes
DE102017216264B4 (de) Decodierverfahren
DE69823307T2 (de) Digitales Übertragungssystem, Dekoder und Dekodierungsverfahren
DE19539343C2 (de) Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird
DE102013201422B3 (de) Verfahren zum Wiederherstellen verlorengegangener und/ oder beschädigter Daten
DE102022111624B4 (de) Fehlerkorrektur mit schneller Syndromberechnung
DE102014208996B3 (de) Verfahren zum Wiederherstellen verlorengegangener und/oder beschädigter Daten
DE102011102503B3 (de) Verfahren zum Berichtigen beschädigter Daten
DE102013223813B4 (de) Verfahren zur Wiederherstellung verloren gegangener und/oder beschädigter Daten
DE102014214451B4 (de) Verfahren zum Wiederherstellen von verloren gegangenen und/oder beschädigten Daten
DE102014215015B3 (de) Verfahren zum Wiederherstellen verlorengegangener und /oder beschädigter Daten
DE102013223413B4 (de) Verfahren zum Wiederherstellen verloren gegangener und/oder beschädigter Daten
DE102019200941B4 (de) Decodierverfahren
DE102014218384B3 (de) Rückgewinnung eines binären Response-Musters von einem verrauschten Kanal
DE102013223801B4 (de) Verfahren zum Wiederherstellen verloren gegangener und/oder beschädigter Daten
DE102012223040B3 (de) Verfahren zum Wiederherstellen verloren gegangener und/oder beschädigter Daten
DE102017206718B4 (de) Verfahren zur Erzeugung einer Klasse von non-binary LDPC-Codes
DE102019124889A1 (de) Verfahren zur Übertragung von Daten und Empfangsvorrichtung zum Empfangen von Daten
EP2608414A2 (de) Kanalcodierungsverfahren und Decodierungsverfahren

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20130601