Loading [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js

Exercise 4.11: Analysis of Parity-check Matrices

From LNTwww
Revision as of 12:38, 2 February 2018 by Guenter (talk | contribs)

Produktcode, beschrieben durch die Prüfmatrix

In nebenstehender Grafik ist oben ein Produktcode angegeben, der durch folgende Prüfgleichungen gekennzeichnet ist:

p1 = u1u2,p2=u3u4,p3 = u1u3,p4=u2u4.

Darunter sind die Prüfmatrizen H1, H2 und H3 angegeben. Zu prüfen ist, welche der Matrizen den gegebenen Produktcode entsprechend der Gleichung x_=u_HT richtig beschreiben, wenn von folgenden Definitionen ausgegangen wird:

  • dem Codewort x_=(u1,u2,u3,u4,p1,p2,p3,p4),
  • dem Codewort x_=(u1,p1,u2,p2,u3,p3,u4,p4).


Alle H–Matrizen beinhalten weniger Einsen als Nullen. Dies ist ein Kennzeichen der so genannten Low–density Parity–check Codes (kurz: LDPC–Codes). Bei den praxisrelevanten LDPC–Codes ist der Einsen–Anteil allerdings noch geringer als bei diesen Beispielen.

Weiterhin ist für die Aufgabe anzumerken:

  • Ein (n, k)–Blockcode ist systematisch, wenn die ersten k Bit des Codewortes das Informationswort u_ beinhaltet. Mit der Codewortdefinition x_=(u1,u2,u3,u4,p1,p2,p3,p4) muss dann die Prüfmatrix H mit einer k×k–Diagonalmatrix enden.
  • Ein regulärer Code (hinsichtlich LDPC–Anwendung) liegt vor, wenn das Hamming–Gewicht aller Zeilen   ⇒   wZ und das Hamming–Gewicht aller Spalten   ⇒   wS jeweils gleich ist. Andernfalls spricht man von einem irregulären LDPC–Code.
  • Die Prüfmatrix H eines herkömmlichen linearen (n, k)–Blockcodes besteht aus exakt m=nk Zeilen und n Spalten. Bei den LDPC–Codes lautet dagegen die Forderung: mnk. Das Gleichheitszeichen trifft dann zu, wenn die m Prüfgleichungen statistisch unabhängig sind.
  • Aus der Prüfmatrix H lässt sich eine untere Schranke für die Coderate R angeben:
R1E[wS]E[wZ]mitE[wS]=1nni=1wS(i)undE[wZ]=1mmj=1wZ(j).
  • Diese Gleichung gilt für reguläre und irreguläre LDPC–Codes gleichermaßen, wobei den regulären Codes E[wS]=wS und E[wZ]=wZ berücksichtigt werden kann.




Hinweise:


Fragebogen

1

Welche Prüfmatrix beschreibt den vorgegebenen Produktcode entsprechend der oberen Skizze?

H1 unter der Voraussetzung x_=(u1,u2,u3,u4,p1,p2,p3,p4).
H1 unter der Voraussetzung x_=(u1,p1,u2,p2,u3,p3,u4,p4).
H2 unter der Voraussetzung x_=(u1,p1,u2,p2,u3,p3,u4,p4).
H3 unter der Voraussetzung x_=(u1,p1,u2,p2,u3,p3,u4,p4).

2

Für die restlichen Teilaufgaben soll stets von x_=(u1,u2,u3,u4,p1,p2,p3,p4) ausgegangen werden.
Welche Aussagen gelten für die Prüfmatrix H1?

Der Code ist systematisch.
Der Code ist regulär.
Für die Coderate gilt R>1/2.
Für die Coderate gilt R=1/2.

3

Welche Aussagen gelten für die Prüfmatrix H3?

Es ist kein Zusammenhang zwischen H1 und H3 erkennbar.
Die H3–Zeilen sind Linearkombinationen von je zwei H1–Zeilen.
Die vier Prüfgleichungen gemäß H3 sind linear unabhängig.

4

Welche Aussagen gelten für den durch H3 gekennzeichneten Code?

Der Code ist systematisch.
Der Code ist regulär.
Für die Coderate gilt R1/2.
Für die Coderate gilt R=1/2.


Musterlösung

(1)  Richtig sind die Lösungsvorschläge 1 und 3:

  • Mit der Codewortdefinition x_=(u1,u2,u3,u4,p1,p2,p3,p4) bezeichnet die Prüfmatrix H1 folgende Prüfgleichungen:
u1u2p1=0,u3u4p2=0,u1u3p3=0,u2u4p4=0.
  • Dies entspricht genau den vorne getroffenen Annahmen. Das gleiche Ergebnis erhält man für H2 und der Codewortdefinition x_=(u1,p1,u2,p2,u3,p3,u4,p4).


Bei gleicher Codewortdefinition x_=(u1,p1,u2,p2,u3,p3,u4,p4) lifern die anderen Prüfmatrizen keinen sinnvollen Gleichungssatz:

  • Entsprechend Prüfmatrix H1:
u1p1u3=0,u2p2p3=0,u1u2u4=0,p1p2p4=0;
  • entsprechend Prüfmatrix H3:
u1p2u3p4=0,u1p2p3u4=0,p1u2u3u4=0,p1u2p3p4=0.


(2)  Richtig sind die Lösungsvorschläge 1 und 4:

  • Der Code ist systematisch, weil H1 mit einer 4×4–Diagonalmatrix endet.
  • Bei einem regulären (LDPC)–Code müssten in jeder Zeile und in jeder Spalte gleich viele Einsen sein. Die erste Bedingung ist erfüllt (wZ=3), nicht aber die zweite. Vielmehr gibt es (gleich oft) eine Eins bzw. zwei Einsen pro Spalte  ⇒  E[wS]=1.5.
  • Bei einem irregulären Code lautet die untere Schranke für die Coderate:
R1E[wS]E[wZ]=11.53=1/2.
  • Wegen der gegebenen Codestruktur (k=4 Informationsbits, m=4 Prüfbits  ⇒  n=8 Codebits) ist hier die Coderate auch in der herkömmlichen Form angebbar: R=k/n   ⇒   Richtig ist Lösungsvorschlag 4 im Gegensatz zur Antwort 3.


(3)  Die H3–Zeilen ergeben sich aus Linearkombinationen von H1–Zeilen:

  • Die erste H3–Zeile ist die Summe von Zeile 1 und Zeile 4.
  • Die zweite H3–Zeile ist die Summe von Zeile 2 und Zeile 3.
  • Die dritte H3–Zeile ist die Summe von Zeile 1 und Zeile 3.
  • Die vierte H3–Zeile ist die Summe von Zeile 2 und Zeile 4.


Durch Linearkombinationen werden aus den vier linear unabhängigen Gleichungen bezüglich H1 nun vier linear unabhängige Gleichungen bezüglich H3. Richtig sind also die Lösungsvorschläge 2 und 3.


(4)  Hier sind die Lösungsvorschläge 2, 3 und 4 richtig:

  • Wäre der durch H3 beschriebene Code systematisch, müsste H3 mit einer 4×4–Diagonalmatrix enden. Dies ist hier nicht der Fall.
  • Die Hamming–Gewichte aller Zeilen sind gleich (wZ=4) und auch alle Spalten haben jeweils das gleiche Hamming–Gewicht (wS=2)   ⇒   der Code ist regulär.
  • Daraus ergibt sich für die Coderate R12/4=1/2. Da aber auch die vier Zeilen von H3 vier unabhängige Gleichungen beschreiben, gilt ebenfalls das Gleichheitszeichen   ⇒   R=1/2.