Notice: Unexpected clearActionName after getActionName already called in /var/www/html/includes/context/RequestContext.php on line 338
Low-Density-Parity-Check-Code – Wikipedia (Deutsch) – Lokale Kopie Zum Inhalt springen

Low-Density-Parity-Check-Code

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von LDPC)

Low-Density-Parity-Check-Codes, auch als LDPC oder Gallager-Codes bezeichnet, sind lineare Blockcodes zur Vorwärtsfehlerkorrektur. Sie wurden 1962 von Robert Gray Gallager im Rahmen seiner Dissertation am MIT entwickelt<ref>Robert G. Gallager: <templatestyles src="Webarchiv/styles.css" />{{#if:20070316184924

      | {{#ifeq: 20070316184924 | *
    | Vorlage:Webarchiv/Wartung/Stern{{#if: Low-Density Parity-Check Codes. | {{#invoke:WLink|getEscapedTitle|Low-Density Parity-Check Codes.}} | {{#invoke:Webarchiv|getdomain|http://www.sps.ele.tue.nl/members/F.M.J.Willems/TEACHING_files/5p340/ldpc/itjan62.pdf}} }} (Archivversionen)
    | {{#iferror: {{#time: j. F Y|20070316184924}}
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/DatumDer Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
         | {{#if: Low-Density Parity-Check Codes. | {{#invoke:WLink|getEscapedTitle|Low-Density Parity-Check Codes.}} | {{#invoke:Webarchiv|getdomain|http://www.sps.ele.tue.nl/members/F.M.J.Willems/TEACHING_files/5p340/ldpc/itjan62.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y|20070316184924}} im Internet Archive{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
      }}
  }}
      | {{#if:
          | {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
    | {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
       | 16= {{#if: Low-Density Parity-Check Codes. | {{#invoke:WLink|getEscapedTitle|Low-Density Parity-Check Codes.}} | {{#invoke:Webarchiv|getdomain|http://www.sps.ele.tue.nl/members/F.M.J.Willems/TEACHING_files/5p340/ldpc/itjan62.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | 9 = {{#if: Low-Density Parity-Check Codes. | {{#invoke:WLink|getEscapedTitle|Low-Density Parity-Check Codes.}} | {{#invoke:Webarchiv|getdomain|http://www.sps.ele.tue.nl/members/F.M.J.Willems/TEACHING_files/5p340/ldpc/itjan62.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!Vorlage:Webarchiv/Wartung/webcitation{{#if:  || }}
      }}
    | c|{{{webciteID}}}}} {{#if: Low-Density Parity-Check Codes. | {{#invoke:WLink|getEscapedTitle|Low-Density Parity-Check Codes.}} | {{#invoke:Webarchiv|getdomain|http://www.sps.ele.tue.nl/members/F.M.J.Willems/TEACHING_files/5p340/ldpc/itjan62.pdf}} }} (Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
  }}
          | {{#if: 
              | Vorlage:Webarchiv/Today
              | {{#if:
                      | Vorlage:Webarchiv/Generisch
                      | {{#if: Low-Density Parity-Check Codes. | {{#invoke:WLink|getEscapedTitle|Low-Density Parity-Check Codes.}} | {{#invoke:Webarchiv|getdomain|http://www.sps.ele.tue.nl/members/F.M.J.Willems/TEACHING_files/5p340/ldpc/itjan62.pdf}} }}  
                 }}}}}}}}{{#if:
    | Vorlage:Webarchiv/archiv-bot
  }}{{#invoke:TemplatePar|check
     |all      = url=
     |opt      = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
     |cat      = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
     |errNS    = 0
     |template = Vorlage:Webarchiv
     |format   = *
     |preview  = 1
  }}{{#ifexpr: {{#if:20070316184924|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
  }}{{#if: 
    | {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
        | web.archive.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}} 
        | webcitation.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}} 
        | archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
      }}{{#if: 
         | {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
             | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
          |  }} 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
      }}
    | {{#if: 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
      }}
  }}{{#if:{{#invoke:URLutil|isHostPathResource|http://www.sps.ele.tue.nl/members/F.M.J.Willems/TEACHING_files/5p340/ldpc/itjan62.pdf}}
    || {{#if:  || }}
  }}{{#if: Low-Density Parity-Check Codes.
    | {{#if: {{#invoke:WLink|isBracketedLink|Low-Density Parity-Check Codes.}}
        | {{#if:  || }}
      }}
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Linktext_fehlt
  }}{{#switch: 
    |addlarchives|addlpages= {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/Parameter}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
  }}{{#ifeq: {{#invoke:Str|find|http://www.sps.ele.tue.nl/members/F.M.J.Willems/TEACHING_files/5p340/ldpc/itjan62.pdf%7Carchiv}} |-1
    || {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://www.sps.ele.tue.nl/members/F.M.J.Willems/TEACHING_files/5p340/ldpc/itjan62.pdf%7C4}}%7Chttp}} |-1
         || {{#switch: {{#invoke:Webarchiv|getdomain|http://www.sps.ele.tue.nl/members/F.M.J.Willems/TEACHING_files/5p340/ldpc/itjan62.pdf }}
              | abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org = 
              | #default = {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/URL}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
            }} 
       }}
  }} (PDF; 1,1 MB) in IRE Transactions on Information Theory, Seiten 21 bis 28, 1962</ref><ref>Robert G. Gallager: Low-Density Parity-Check Codes. – 1963</ref>.

Low-Density-Parity-Check-Codes beschreiben mit Hilfe einer Matrix viele zusammenhängende Paritätsprüfungen. Es wird dabei das Prinzip einer Kontrollmatrix angewandt: <math>H\cdot b^T= 0</math>, wobei <math>H</math> die Kontrollmatrix (parity-check matrix) und <math>b</math> die Folge der empfangenen Codesymbole (repräsentiert als Zeilenvektor) darstellt. H ist nur dünn besetzt (daher die Bezeichnung low-density).

Nachdem sie lange vergessen waren, erlebten sie eine Renaissance, als Rüdiger Urbanke und Thomas J. Richardson 2001 zeigten, dass sie nahe der Shannon-Grenze operieren konnten und als irreguläre LDPC effizient implementiert werden konnten. Zu den irregulären LDPC gehören die Tornado Codes für Erasure Coding (Michael Luby, Michael Mitzenmacher, Daniel A. Spielman, Amin Shokrollahi 2001).

Notation

<math>(n,l,R)\;\text{LDPC}</math>

  • <math>n</math> = Codewortlänge
  • <math>k</math> = Anzahl der Paritätsbits
  • <math>l</math> = Anzahl an Informationsstellen
  • <math>R</math> = Coderate

Begriffsdefinition

  • <math>a^*</math> oder <math>a_l</math> Quellcodewort (Infowort)
  • <math>a_k</math> redundanter Teil des Kanalcodewortes
  • <math>a</math> Kanalcodewort
  • <math>b</math> Empfangsfolge
  • <math>H</math> Kontrollmatrix

Reguläre und nicht reguläre Codes

Wichtige Kennzeichen des LDPC-Codes sind die Anzahl der 1-Bits pro Zeile (<math>w_r</math>) sowie die 1-Bits pro Spalte (<math>w_c</math>) in der Kontrollmatrix <math>H</math>. Für diese Kennzeichen gilt:

<math>w_r \ll n </math> sowie <math>w_c \ll k </math>

Ist <math>w_r</math> konstant für alle Zeilen und <math>w_c</math> konstant für alle Spalten von <math>H</math>, so wird dieser Code regulär genannt.

Für einen regulären LDPC-Code gilt <math> w_r = w_c \cdot (l+k)/k </math>.

Variiert die Anzahl der Einsen, handelt es sich um einen irregulären Code. Typischerweise sind irreguläre LDPC-Code leistungsfähiger als reguläre.

Codierung

Es gilt eine zu sendende Folge <math>a</math> zu finden, die der Gleichung <math> H\cdot a^T = 0 </math> genügt.

Eine mögliche Form der Codierung funktioniert folgendermaßen: Das Kanalcodewort <math>a</math> ist zusammengesetzt aus den zu sendenden Daten <math>a_l</math> (welche bekannt sind) und dem redundanten Teil <math>a_k</math>. Da <math>a</math> oben genannte Formel erfüllen muss, muss <math>a_k</math> entsprechend berechnet werden:

  • Sei <math> a=[a_k,a_l] </math> und <math>H=[H_k,H_l]</math>
  • Es soll gelten: <math>[H_k,H_l]*[a_k,a_l]^T=0</math>
  • Dies kann umgeformt werden: <math>[H_k][a_k] = [H_l][a_l]</math>
  • Daraus ergibt sich <math>a_k^T=H_k^{-1}\cdot H_l\cdot a_l</math>

In Worten ausgedrückt muss dabei der invertierte quadratische – der erste – Teil Hk der Kontrollmatrix mit dem verbleibenden Rest Hl der Kontrollmatrix und den zu sendenden Daten al multipliziert werden.

Decodierung

Hierbei gilt es ebenso, das Problem <math> H\cdot b^T = 0</math> zu lösen. Hierzu werden häufig iterative Graph-basierte Algorithmen gewählt. Nach der Übertragung des Kanalcodewortes <math>a</math> über einen Übertragungskanal, z. B. einen AWGN-Kanal (additives weißes gaußsches Rauschen), wird in der Regel das Wort <math>b_M</math>, bestehend aus reellen Werten, empfangen. Aus diesen wird, im Regelfall mit Hilfe eines iterativen Verfahrens, eine Näherungslösung berechnet. Durch die Gleichungsmatrix H werden N Gleichungen vorgegeben; jede dieser Gleichungen erlaubt es, unabhängige Informationen zu den enthaltenen Elementen zu berechnen. Nun werden diese Informationen in den anderen Gleichungsberechnungen wiederverwendet. Zu beachten ist dabei, dass die Informationen, die mit einer Gleichung berechnet wurden, in der nächsten Iteration vor der erneuten Berechnung entfernt werden müssen.

Konstruktion von LDPC-Codes

LDPC-Codes werden durch ihre Kontrollmatrix H beschrieben. Einen LDPC-Code zu entwickeln heißt also, eine geeignete Kontrollmatrix zu finden oder zu konstruieren. Die zum Erstellen von Codewörtern benötigte Generatormatrix G kann mit Hilfe des Gauß-Jordan Verfahrens aus H hergeleitet werden. Zur Generierung von Kontrollmatrizen eignen sich u. a. die folgenden Verfahren, welche teilweise darauf basieren, die Kontrollmatrix als Tanner-Graph<ref>Jian Sun: <templatestyles src="Webarchiv/styles.css" />{{#if:20120113064035

      | {{#ifeq: 20120113064035 | *
    | Vorlage:Webarchiv/Wartung/Stern{{#if: An Introduction to Low Density Parity Check (LDPC) Codes | {{#invoke:WLink|getEscapedTitle|An Introduction to Low Density Parity Check (LDPC) Codes}} | {{#invoke:Webarchiv|getdomain|http://www.csee.wvu.edu/wcrl/public/slideldpc.pdf}} }} (Archivversionen)
    | {{#iferror: {{#time: j. F Y|20120113064035}}
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/DatumDer Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
         | {{#if: An Introduction to Low Density Parity Check (LDPC) Codes | {{#invoke:WLink|getEscapedTitle|An Introduction to Low Density Parity Check (LDPC) Codes}} | {{#invoke:Webarchiv|getdomain|http://www.csee.wvu.edu/wcrl/public/slideldpc.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y|20120113064035}} im Internet Archive{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
      }}
  }}
      | {{#if:
          | {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
    | {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
       | 16= {{#if: An Introduction to Low Density Parity Check (LDPC) Codes | {{#invoke:WLink|getEscapedTitle|An Introduction to Low Density Parity Check (LDPC) Codes}} | {{#invoke:Webarchiv|getdomain|http://www.csee.wvu.edu/wcrl/public/slideldpc.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | 9 = {{#if: An Introduction to Low Density Parity Check (LDPC) Codes | {{#invoke:WLink|getEscapedTitle|An Introduction to Low Density Parity Check (LDPC) Codes}} | {{#invoke:Webarchiv|getdomain|http://www.csee.wvu.edu/wcrl/public/slideldpc.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!Vorlage:Webarchiv/Wartung/webcitation{{#if:  || }}
      }}
    | c|{{{webciteID}}}}} {{#if: An Introduction to Low Density Parity Check (LDPC) Codes | {{#invoke:WLink|getEscapedTitle|An Introduction to Low Density Parity Check (LDPC) Codes}} | {{#invoke:Webarchiv|getdomain|http://www.csee.wvu.edu/wcrl/public/slideldpc.pdf}} }} (Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
  }}
          | {{#if: 
              | Vorlage:Webarchiv/Today
              | {{#if:
                      | Vorlage:Webarchiv/Generisch
                      | {{#if: An Introduction to Low Density Parity Check (LDPC) Codes | {{#invoke:WLink|getEscapedTitle|An Introduction to Low Density Parity Check (LDPC) Codes}} | {{#invoke:Webarchiv|getdomain|http://www.csee.wvu.edu/wcrl/public/slideldpc.pdf}} }}  
                 }}}}}}}}{{#if:
    | Vorlage:Webarchiv/archiv-bot
  }}{{#invoke:TemplatePar|check
     |all      = url=
     |opt      = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
     |cat      = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
     |errNS    = 0
     |template = Vorlage:Webarchiv
     |format   = *
     |preview  = 1
  }}{{#ifexpr: {{#if:20120113064035|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
  }}{{#if: 
    | {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
        | web.archive.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}} 
        | webcitation.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}} 
        | archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
      }}{{#if: 
         | {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
             | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
          |  }} 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
      }}
    | {{#if: 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
      }}
  }}{{#if:{{#invoke:URLutil|isHostPathResource|http://www.csee.wvu.edu/wcrl/public/slideldpc.pdf}}
    || {{#if:  || }}
  }}{{#if: An Introduction to Low Density Parity Check (LDPC) Codes
    | {{#if: {{#invoke:WLink|isBracketedLink|An Introduction to Low Density Parity Check (LDPC) Codes}}
        | {{#if:  || }}
      }}
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Linktext_fehlt
  }}{{#switch: 
    |addlarchives|addlpages= {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/Parameter}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
  }}{{#ifeq: {{#invoke:Str|find|http://www.csee.wvu.edu/wcrl/public/slideldpc.pdf%7Carchiv}} |-1
    || {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://www.csee.wvu.edu/wcrl/public/slideldpc.pdf%7C4}}%7Chttp}} |-1
         || {{#switch: {{#invoke:Webarchiv|getdomain|http://www.csee.wvu.edu/wcrl/public/slideldpc.pdf }}
              | abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org = 
              | #default = {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/URL}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
            }} 
       }}
  }}</ref> zu versinnbildlichen und diesen unter Zuhilfenahme verschiedener Algorithmen zu bearbeiten:
  • Progressive Edge Growth (PEG)<ref>Alex Balatsoukas-Stimming: <templatestyles src="Webarchiv/styles.css" />{{#if:20121030123356
      | {{#ifeq: 20121030123356 | *
    | Vorlage:Webarchiv/Wartung/Stern{{#if: The Progressive Edge Growth Algorithm | {{#invoke:WLink|getEscapedTitle|The Progressive Edge Growth Algorithm}} | {{#invoke:Webarchiv|getdomain|http://www.telecom.tuc.gr/~alex/lectures/lecture8.pdf}} }} (Archivversionen)
    | {{#iferror: {{#time: j. F Y|20121030123356}}
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/DatumDer Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
         | {{#if: The Progressive Edge Growth Algorithm | {{#invoke:WLink|getEscapedTitle|The Progressive Edge Growth Algorithm}} | {{#invoke:Webarchiv|getdomain|http://www.telecom.tuc.gr/~alex/lectures/lecture8.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y|20121030123356}} im Internet Archive{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
      }}
  }}
      | {{#if:
          | {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
    | {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
       | 16= {{#if: The Progressive Edge Growth Algorithm | {{#invoke:WLink|getEscapedTitle|The Progressive Edge Growth Algorithm}} | {{#invoke:Webarchiv|getdomain|http://www.telecom.tuc.gr/~alex/lectures/lecture8.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | 9 = {{#if: The Progressive Edge Growth Algorithm | {{#invoke:WLink|getEscapedTitle|The Progressive Edge Growth Algorithm}} | {{#invoke:Webarchiv|getdomain|http://www.telecom.tuc.gr/~alex/lectures/lecture8.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!Vorlage:Webarchiv/Wartung/webcitation{{#if:  || }}
      }}
    | c|{{{webciteID}}}}} {{#if: The Progressive Edge Growth Algorithm | {{#invoke:WLink|getEscapedTitle|The Progressive Edge Growth Algorithm}} | {{#invoke:Webarchiv|getdomain|http://www.telecom.tuc.gr/~alex/lectures/lecture8.pdf}} }} (Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
  }}
          | {{#if: 
              | Vorlage:Webarchiv/Today
              | {{#if:
                      | Vorlage:Webarchiv/Generisch
                      | {{#if: The Progressive Edge Growth Algorithm | {{#invoke:WLink|getEscapedTitle|The Progressive Edge Growth Algorithm}} | {{#invoke:Webarchiv|getdomain|http://www.telecom.tuc.gr/~alex/lectures/lecture8.pdf}} }}  
                 }}}}}}}}{{#if:
    | Vorlage:Webarchiv/archiv-bot
  }}{{#invoke:TemplatePar|check
     |all      = url=
     |opt      = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
     |cat      = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
     |errNS    = 0
     |template = Vorlage:Webarchiv
     |format   = *
     |preview  = 1
  }}{{#ifexpr: {{#if:20121030123356|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
  }}{{#if: 
    | {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
        | web.archive.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}} 
        | webcitation.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}} 
        | archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
      }}{{#if: 
         | {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
             | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
          |  }} 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
      }}
    | {{#if: 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
      }}
  }}{{#if:{{#invoke:URLutil|isHostPathResource|http://www.telecom.tuc.gr/~alex/lectures/lecture8.pdf}}
    || {{#if:  || }}
  }}{{#if: The Progressive Edge Growth Algorithm
    | {{#if: {{#invoke:WLink|isBracketedLink|The Progressive Edge Growth Algorithm}}
        | {{#if:  || }}
      }}
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Linktext_fehlt
  }}{{#switch: 
    |addlarchives|addlpages= {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/Parameter}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
  }}{{#ifeq: {{#invoke:Str|find|http://www.telecom.tuc.gr/~alex/lectures/lecture8.pdf%7Carchiv}} |-1
    || {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://www.telecom.tuc.gr/~alex/lectures/lecture8.pdf%7C4}}%7Chttp}} |-1
         || {{#switch: {{#invoke:Webarchiv|getdomain|http://www.telecom.tuc.gr/~alex/lectures/lecture8.pdf }}
              | abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org = 
              | #default = {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/URL}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
            }} 
       }}
  }} (PDF; 261 kB)</ref><ref>David MacKay: C – Implementierung des PEG Algorithmus für LDPC Codes</ref>

Um die Anzahl der in der Matrix vorkommenden Einsen verhältnismäßig gering zu halten, können auch noch sogenannte Row Splitting und Column Splitting Algorithmen eingesetzt werden.<ref name="ldpcdesign">Design of LDPC Codes (PDF; 563 kB)</ref>

Im LDPC-Code können die Paritätsprüfungen als dünnbesetzte Paritätsprüfmatrix mit <math>n </math> Spalten und <math>n - k </math> Zeilen ausgedrückt werden. Das heißt, dass die Anzahl der Elemente 1 viel geringer ist als die Anzahl der Elemente 0. Es gibt drei Parameter, die die dünnbesetzte Paritätsprüfungsmatrix definieren, nämlich <math>n</math>, <math>w_c</math> und <math>w_r</math>. Dort ist <math>n</math> die Länge des Codeworts, <math>w_c</math> die Anzahl der Elemente 1 in jeder Spalte und <math>w_r</math> die Anzahl der Elemente 1 in jeder Zeile. Damit die Matrix als dünnbesetzt bezeichnet wird, muss <math>w_c \ll n \cdot (n - k) </math> und <math>w_r \ll n \cdot (n - k) </math> gelten. Damit diese Bedingungen erfüllt sind, muss die Paritätsprüfmatrix sehr groß sein.

Es gibt reguläre und irreguläre Paritätsprüfungsmatrixen. Eine Paritätsprüfungsmatrix ist regelmäßig, wenn die Anzahl <math>w_c</math> der Elemente 1 in jeder Spalte und die Anzahl <math>w_r</math> der Elemente 1 in jeder Zeile gleich ist. Wenn diese Anzahlen nicht gleich sind, ist die Paritätsprüfungsmatrix irregulär. Für reguläre Matrizen ist die Dekodierung weniger komplex.

Jede Spalte der Matrix <math>H </math> repräsentiert einen Bitknoten und jede Zeile der Matrix <math>H </math> repräsentiert einen Kontrollknoten. Bitknoten geben die Elemente des Codesworts an. Kontrollknoten geben die Bedingungen der Paritätsprüfung an. Jede 1 zeigt an, dass es eine Verbindung (Kante) zwischen dem Bitknoten und dem Kontrollknoten gibt. Ein Beispiel Paritätsprüfungsmatrix mit <math>n = 8</math>, <math>w_c = 2</math> und <math>w_r = 4</math> ist<ref>Saumya Borwankar, Dhruv Shah, Institute of technology, Nirma University: Low Density Parity Check Code (LDPC Codes) Overview</ref>

<math>H = \begin{pmatrix} 0 & 1 & 0 & 1 & 1 & 0 & 0 & 1 \\ 1 & 1 & 1 & 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 & 1 & 1 & 1 \\ 1 & 0 & 0 & 1 & 1 & 0 & 1 & 0 \\ \end{pmatrix}</math>

Tanner-Graphen

LDPC-Codes können auch mit bipartiten Graphen dargestellt werden. Weil bei LDPC-Codes nur sehr wenige Bits beteiligt sind, ergibt sich auf diese Weise eine einfache und elegante Darstellung, die sogenannten Tanner-Graphen. Dabei werden die Elemente der zwei Mengen in unterschiedliche Klassen von Knoten eingeteilt, wobei Verbindungen nur Knoten aus unterschiedlichen Klassen mit Kanten verbunden werden. Diese zwei Klassen von Knoten werden in einem Tanner-Graph als Bitknoten und Kontrollknoten bezeichnet. Von einem Kontrollknoten führen Kanten, entsprechend der zugehörigen Prüfgleichung, zu allen Bitknoten.

Jeder Bitknoten repräsentiert also eine Bitstelle im Codewort, während jeder Kontrollknoten für eine Paritätsgleichung steht. Die Verbindung eines Knotens im Tanner-Graph mit einem beliebigen anderen Knoten wird Kante genannt. Mehrere Kanten können einen Pfad in einem Tanner-Graph bilden, welcher auf sich zurückführt. Solche Knoten- bzw. Kantenfolgen, die wieder zum Ausgangspunkt zurückführen, werden als Zyklus bezeichnet. Die Länge des kürzesten Zyklus im Tanner-Graph ist die Taillenweite. Bedingt durch den Aufbau des Tanner-Graph ist die Taillenweite immer gerade und mindestens gleich 4. Generell aber gilt, dass sich kurze Zyklen negativ auf den iterativen Decodierungsprozess auswirken. Daher sollten kurze Zyklen vermieden werden.<ref>Michael Petter, Technische Universität Graz: Untersuchung und Simulation von Low-Density Parity-Check-Codes</ref>

Praktischer Einsatz von LDPC-Codes

LDPC-Codes werden in unterschiedlichen Gebieten der Technik angewendet. In der Regel werden sie verkettet eingesetzt. So dienen LDPC-Codes beispielsweise zur fehlerkorrigierenden Datenübertragung von digitalen Fernsehsignalen nach DVB-S2 und bei Digital Terrestrial Multimedia Broadcast (DTMB). Neben neueren WLAN-Standards wie dem IEEE 802.11n<ref>IEEE: <templatestyles src="Webarchiv/styles.css" />{{#if:20130203104520

      | {{#ifeq: 20130203104520 | *
    | Vorlage:Webarchiv/Wartung/Stern{{#if: IEEE Standard 802.11n | {{#invoke:WLink|getEscapedTitle|IEEE Standard 802.11n}} | {{#invoke:Webarchiv|getdomain|http://standards.ieee.org/getieee802/download/802.11n-2009.pdf}} }} (Archivversionen)
    | {{#iferror: {{#time: j. F Y|20130203104520}}
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/DatumDer Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
         | {{#if: IEEE Standard 802.11n | {{#invoke:WLink|getEscapedTitle|IEEE Standard 802.11n}} | {{#invoke:Webarchiv|getdomain|http://standards.ieee.org/getieee802/download/802.11n-2009.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y|20130203104520}} im Internet Archive{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
      }}
  }}
      | {{#if:
          | {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
    | {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
       | 16= {{#if: IEEE Standard 802.11n | {{#invoke:WLink|getEscapedTitle|IEEE Standard 802.11n}} | {{#invoke:Webarchiv|getdomain|http://standards.ieee.org/getieee802/download/802.11n-2009.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | 9 = {{#if: IEEE Standard 802.11n | {{#invoke:WLink|getEscapedTitle|IEEE Standard 802.11n}} | {{#invoke:Webarchiv|getdomain|http://standards.ieee.org/getieee802/download/802.11n-2009.pdf}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!Vorlage:Webarchiv/Wartung/webcitation{{#if:  || }}
      }}
    | c|{{{webciteID}}}}} {{#if: IEEE Standard 802.11n | {{#invoke:WLink|getEscapedTitle|IEEE Standard 802.11n}} | {{#invoke:Webarchiv|getdomain|http://standards.ieee.org/getieee802/download/802.11n-2009.pdf}} }} (Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
  }}
          | {{#if: 
              | Vorlage:Webarchiv/Today
              | {{#if:
                      | Vorlage:Webarchiv/Generisch
                      | {{#if: IEEE Standard 802.11n | {{#invoke:WLink|getEscapedTitle|IEEE Standard 802.11n}} | {{#invoke:Webarchiv|getdomain|http://standards.ieee.org/getieee802/download/802.11n-2009.pdf}} }}  
                 }}}}}}}}{{#if:
    | Vorlage:Webarchiv/archiv-bot
  }}{{#invoke:TemplatePar|check
     |all      = url=
     |opt      = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
     |cat      = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
     |errNS    = 0
     |template = Vorlage:Webarchiv
     |format   = *
     |preview  = 1
  }}{{#ifexpr: {{#if:20130203104520|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
  }}{{#if: 
    | {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
        | web.archive.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}} 
        | webcitation.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}} 
        | archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
      }}{{#if: 
         | {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
             | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
          |  }} 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
      }}
    | {{#if: 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
      }}
  }}{{#if:{{#invoke:URLutil|isHostPathResource|http://standards.ieee.org/getieee802/download/802.11n-2009.pdf}}
    || {{#if:  || }}
  }}{{#if: IEEE Standard 802.11n
    | {{#if: {{#invoke:WLink|isBracketedLink|IEEE Standard 802.11n}}
        | {{#if:  || }}
      }}
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Linktext_fehlt
  }}{{#switch: 
    |addlarchives|addlpages= {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/Parameter}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
  }}{{#ifeq: {{#invoke:Str|find|http://standards.ieee.org/getieee802/download/802.11n-2009.pdf%7Carchiv}} |-1
    || {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://standards.ieee.org/getieee802/download/802.11n-2009.pdf%7C4}}%7Chttp}} |-1
         || {{#switch: {{#invoke:Webarchiv|getdomain|http://standards.ieee.org/getieee802/download/802.11n-2009.pdf }}
              | abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org = 
              | #default = {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/URL}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
            }} 
       }}
  }}</ref> („n-WLAN“ oder „n-Draft WLAN“) implementiert auch der WLAN-ähnliche Standard 802.16e<ref>IEEE: IEEE Standard 802.16e</ref> (Wimax) LDPC-Codes. Weitere Standards sind GMR-1, IEEE 802.3an, IEEE 802.22, CMMB, sowie WiMedia 1.5.<ref>Liste standardisierter LDPC-Codes mit Eigenschaften und Erklärungen</ref> 

Im Amateurfunkdienst werden LDPC-Codes angewendet in den Übertragungsprotokollen FT8 und FT4 zur Fehlerkorrektur der Datenübertragung in Kombination mit einer zyklischen Redundanzprüfung (CRC) zur Fehlererkennung.

Literatur

  • Robert G. Gallager: Low-Density Parity-Check Codes. M.I.T. Press Classic Series, Cambridge MA, 1963 (M.I.T. Press research monographs 21, {{#if: {{#if: | {{#invoke:TemplUtl|faculty|{{{suffix}}}}} }}
 | {{#if:trim|597839-7}}. In: Zeitschriftendatenbank (ZDB).
 | {{#if: {{#if:  | {{#invoke:TemplUtl|faculty|{{{kurz}}}}} }}
     |
     | ZDB-ID 
   }}597839-7

}}{{#if: {{#invoke:TemplUtl|faculty|}} | | {{#if: {{#invoke:URIutil|isDNBvalid|597839-7|ZDB}} | | ZDB-ID ungültig{{#ifeq: 0 | 0 | }}}}}}), (andere Fassung; PDF; 655 kB).

  • David J. C. MacKay: Information theory, inference and learning algorithms. Cambridge University Press, Cambridge u. a. 2003, ISBN 0-521-64298-1 (auch online verfügbar).
  • Todd K. Moon: Error Correction Coding. Mathematical Methods and Algorithms. Wiley-Interscience, Hoboken NJ, 2005, ISBN 0-471-64800-0.
  • Amin Shokrollahi: LDPC Codes: An Introduction. In: Keqin Feng u. a. (Hrsg.): Coding, cryptography and combinatorics. Birkhäuser, Basel u. a. 2004, ISBN 3-7643-2429-5, S. 85–112 (Progress in computer science and applied logic 23), (PDF).

Einzelnachweise

<references />