Processing math: 100%

Difference between revisions of "Aufgaben:Exercise 4.12: Regular and Irregular Tanner Graph"

From LNTwww
Line 1: Line 1:
 
{{quiz-Header|Buchseite=Kanalcodierung/Grundlegendes zu den Low–density Parity–check Codes}}
 
{{quiz-Header|Buchseite=Kanalcodierung/Grundlegendes zu den Low–density Parity–check Codes}}
  
[[File:P_ID3072__KC_A_4_12_v1.png|right|frame|Vorgegebener Tanner–Graph für Code A]]
+
[[File:P_ID3072__KC_A_4_12_v1.png|right|frame|Vorgegebener Tanner–Graph für Code $\rm A$]]
Dargestellt ist ein Tanner–Graph eines Codes A mit
+
Dargestellt ist ein Tanner–Graph eines Codes $\rm A$ mit
* den <i>Variable Nodes</i> (abgekürzt VNs) V1, ... , V6, wobei Vi das i&ndash;te Codewortbit kennzeichnet (egal, ob Informations &ndash; oder Paritybit) und der i&ndash;ten Spalte der Prüfmatrix entspricht;
+
* den <i>Variable Nodes</i> (abgekürzt VNs) $V_1, \hspace{0.05cm} \text{...} \hspace{0.05cm} , \ V_6,wobeiV_idasi&ndash;te Codewortbit kennzeichnet (egal, ob Informations &ndash; oder Paritybit) und deri$&ndash;ten Spalte der Prüfmatrix entspricht;
* den <i>Check Nodes</i> (abgekürzt CNs) C1, ... , C3, die die Zeilen der HA&ndash;Matrix und damit die Prüfgleichungen repräsentieren.
+
* den <i>Check Nodes</i> (abgekürzt CNs) $C_1, \hspace{0.05cm} \text{...} \hspace{0.05cm} , \ C_3,diedieZeilender\mathbf{H}_{\rm A}$&ndash;Matrix und damit die Prüfgleichungen repräsentieren.
  
  
Eine Verbindungslinie (englisch: <i>Edge</i>) zwischen Vi und Cj zeigt an, dass das i&ndash;te Codewortsymbol an der j&ndash;ten Prüfgleichung beteiligt ist. In diesem Fall ist das Element hj,i der Prüfmatrix gleich 1.
+
Eine Verbindungslinie (englisch: <i>Edge</i>) zwischen Vi und Cj zeigt an, dass das i&ndash;te Codewortsymbol an der j&ndash;ten Prüfgleichung beteiligt ist. In diesem Fall ist das Element $h_{j,\hspace{0.05cm}i}derPrüfmatrixgleich1$.
  
In der Aufgabe soll der Zusammenhang zwischen dem oben dargestellten Tanner&ndash;Graphen (gültig für den Code A) und der Matrix HA angegeben werden. Außerdem ist der Tanner&ndash;Graph zu einer Prüfmatrix HB aufzustellen, die sich aus HA durch Hinzufügen einer weiteren Zeile ergibt. Diese ist so zu ermitteln, dass der zugehörige Code B regulär ist. Das bedeutet:
+
 
 +
In der Aufgabe soll der Zusammenhang zwischen dem oben dargestellten Tanner&ndash;Graphen (gültig für den Code $\rm A$) und der Matrix HA angegeben werden. Außerdem ist der Tanner&ndash;Graph zu einer Prüfmatrix HB aufzustellen, die sich aus HA durch Hinzufügen einer weiteren Zeile ergibt. Diese ist so zu ermitteln, dass der zugehörige Code $\rm B$ regulär ist. Das bedeutet:
 
* Von allen <i>Variable Nodes</i> Vi (mit 1 &#8804; i &#8804; n) gehen gleich viele Linien (<i>Edges</i>) ab, ebenso von allen <i>Check Nodes</i> Cj (mit 1 &#8804; j &#8804; m).
 
* Von allen <i>Variable Nodes</i> Vi (mit 1 &#8804; i &#8804; n) gehen gleich viele Linien (<i>Edges</i>) ab, ebenso von allen <i>Check Nodes</i> Cj (mit 1 &#8804; j &#8804; m).
 
* Die Hamming&ndash;Gewichte aller Zeilen von HB sollen jeweils gleich sein (wZ), ebenso die Hamming&ndash;Gewichte aller Spalten (wS).
 
* Die Hamming&ndash;Gewichte aller Zeilen von HB sollen jeweils gleich sein (wZ), ebenso die Hamming&ndash;Gewichte aller Spalten (wS).
* Für die Rate des zu konstruierenden regulären Codes B gilt dann die folgende untere Schranke:
+
* Für die Rate des zu konstruierenden regulären Codes $\rm B$ gilt dann die folgende untere Schranke:
 
:$$R \ge 1 - \frac{w_{\rm S}}{w_{\rm Z}}
 
:$$R \ge 1 - \frac{w_{\rm S}}{w_{\rm Z}}
 
\hspace{0.05cm}.$$
 
\hspace{0.05cm}.$$
 +
 +
 +
 +
  
 
''Hinweis:''  
 
''Hinweis:''  
 
* Die Aufgabe gehört zum Themengebiet des Kapitels [[Kanalcodierung/Grundlegendes_zu_den_Low%E2%80%93density_Parity%E2%80%93check_Codes|Grundlegendes zu den Low&ndash;density Parity&ndash;check Codes]].
 
* Die Aufgabe gehört zum Themengebiet des Kapitels [[Kanalcodierung/Grundlegendes_zu_den_Low%E2%80%93density_Parity%E2%80%93check_Codes|Grundlegendes zu den Low&ndash;density Parity&ndash;check Codes]].
 +
*Bezug genommen wird insbesondere auf die Seite [[Kanalcodierung/Grundlegendes_zu_den_Low–density_Parity–check_Codes#Zweiteilige_LDPC.E2.80.93Graphenrepr.C3.A4sentation_.E2.80.93_Tanner.E2.80.93Graph|Zweiteilige LDPC&ndash;Graphenrepräsentation &ndash; Tanner&ndash;Graph]].
 
* Sollte die Eingabe des Zahlenwertes &bdquo;0&rdquo; erforderlich sein, so geben Sie bitte &bdquo;0.&rdquo; ein.
 
* Sollte die Eingabe des Zahlenwertes &bdquo;0&rdquo; erforderlich sein, so geben Sie bitte &bdquo;0.&rdquo; ein.
 +
  
  
Line 26: Line 33:
 
{Wieviele Zeilen (m) und Spalten (n) hat die Prüfmatrix HA?
 
{Wieviele Zeilen (m) und Spalten (n) hat die Prüfmatrix HA?
 
|type="{}"}
 
|type="{}"}
m = { 3 3% }
+
$m \hspace{0.18cm} = \ ${ 3 }
n = { 6 3% }
+
$n \hspace{0.3cm} = \ ${ 6 }
  
 
{Welche Aussagen sind aufgrund des Tanner&ndash;Graphen zutreffend?
 
{Welche Aussagen sind aufgrund des Tanner&ndash;Graphen zutreffend?
 
|type="[]"}
 
|type="[]"}
+ Die erste Zeile der HA&ndash;Matrix ist &bdquo;1 1 0 1 0 0&rdquo;..
+
+ Die Zeile 1 der HA&ndash;Matrix ist &bdquo;1 1 0 1 0 0&rdquo;.
- Die zweite Zeile der HA&ndash;Matrix ist &bdquo;1 0 1 0 0 1&rdquo;.
+
- Die Zeile 2 der HA&ndash;Matrix ist &bdquo;1 0 1 0 0 1&rdquo;.
+ Die dritte Zeile der HA&ndash;Matrix ist &bdquo;0 1 1 0 0 1&rdquo;.
+
+ Die Zeile 3 der HA&ndash;Matrix ist &bdquo;0 1 1 0 0 1&rdquo;.
  
{Welche Eigenschaften weist der Code A auf?
+
{Welche Eigenschaften weist der Code $\rm A$ auf?
 
|type="[]"}
 
|type="[]"}
 
+ Der Code ist systematisch.
 
+ Der Code ist systematisch.
Line 42: Line 49:
 
- Die Coderate ist R=1/3.
 
- Die Coderate ist R=1/3.
  
{Die Matrix HB ergibt sich aus HA durch Hinzufügen einer weiteren Zeile. Durch welche Zeile 4 ergibt sich ein regulärer Code B?
+
{Die Matrix HB ergibt sich aus HA durch Hinzufügen einer weiteren Zeile. Durch welche vierte Zeile ergibt sich ein regulärer Code $\rm B$?
 
|type="[]"}
 
|type="[]"}
 
+ Durch Hinzufügen von &bdquo;0 0 0 1 1 1&rdquo;.
 
+ Durch Hinzufügen von &bdquo;0 0 0 1 1 1&rdquo;.
Line 48: Line 55:
 
- Durch Hinzufügen irgend einer anderen Zeile.
 
- Durch Hinzufügen irgend einer anderen Zeile.
  
{Welche Eigenschaften weist der Code B auf?
+
{Welche Eigenschaften weist der Code $\rm B$ auf?
 
|type="[]"}
 
|type="[]"}
 
- Der Code ist systematisch.
 
- Der Code ist systematisch.

Revision as of 13:20, 2 February 2018

Vorgegebener Tanner–Graph für Code A

Dargestellt ist ein Tanner–Graph eines Codes A mit

  • den Variable Nodes (abgekürzt VNs) V1,..., V6, wobei Vi das i–te Codewortbit kennzeichnet (egal, ob Informations – oder Paritybit) und der i–ten Spalte der Prüfmatrix entspricht;
  • den Check Nodes (abgekürzt CNs) C1,..., C3, die die Zeilen der HA–Matrix und damit die Prüfgleichungen repräsentieren.


Eine Verbindungslinie (englisch: Edge) zwischen Vi und Cj zeigt an, dass das i–te Codewortsymbol an der j–ten Prüfgleichung beteiligt ist. In diesem Fall ist das Element hj,i der Prüfmatrix gleich 1.


In der Aufgabe soll der Zusammenhang zwischen dem oben dargestellten Tanner–Graphen (gültig für den Code A) und der Matrix HA angegeben werden. Außerdem ist der Tanner–Graph zu einer Prüfmatrix HB aufzustellen, die sich aus HA durch Hinzufügen einer weiteren Zeile ergibt. Diese ist so zu ermitteln, dass der zugehörige Code B regulär ist. Das bedeutet:

  • Von allen Variable Nodes Vi (mit 1in) gehen gleich viele Linien (Edges) ab, ebenso von allen Check Nodes Cj (mit 1jm).
  • Die Hamming–Gewichte aller Zeilen von HB sollen jeweils gleich sein (wZ), ebenso die Hamming–Gewichte aller Spalten (wS).
  • Für die Rate des zu konstruierenden regulären Codes B gilt dann die folgende untere Schranke:
R1wSwZ.



Hinweis:



Fragebogen

1

Wieviele Zeilen (m) und Spalten (n) hat die Prüfmatrix HA?

m= 

n= 

2

Welche Aussagen sind aufgrund des Tanner–Graphen zutreffend?

Die Zeile 1 der HA–Matrix ist „1 1 0 1 0 0”.
Die Zeile 2 der HA–Matrix ist „1 0 1 0 0 1”.
Die Zeile 3 der HA–Matrix ist „0 1 1 0 0 1”.

3

Welche Eigenschaften weist der Code A auf?

Der Code ist systematisch.
Der Code ist regulär.
Die Coderate ist R=1/2.
Die Coderate ist R=1/3.

4

Die Matrix HB ergibt sich aus HA durch Hinzufügen einer weiteren Zeile. Durch welche vierte Zeile ergibt sich ein regulärer Code B?

Durch Hinzufügen von „0 0 0 1 1 1”.
Durch Hinzufügen von „1 1 1 1 1 1”.
Durch Hinzufügen irgend einer anderen Zeile.

5

Welche Eigenschaften weist der Code B auf?

Der Code ist systematisch.
Der Code ist regulär.
Die Coderate ist R=1/2.
Die Coderate ist R=1/3.


Musterlösung

(1)  Die Anzahl der HA–Zeilen ist gleich der Anzahl der Check Nodes Cj im Tanner–Graphen  ⇒  m=3_, und die Anzahl n=6_ der Variable Nodes Vi ist gleich der Spaltenzahl.


(2)  Richtig sind die Antworten 1 und 3 im Gegensatz zur Aussage 2: Die zweite HA–Zeile lautet vielmehr „1 0 1 0 1 0”. Somit liegt dieser Aufgabe die folgende Prüfgleichung zugrunde:

Zugrunde liegende Prüfgleichungen
HA=(110100101010011001).

Im Schaubild sind die Prüfgleichungen als rote (Zeile 1), grüne (Zeile 2) bzw. blaue (Zeile 3) Gruppierung veranschaulicht.


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

  • Die H–Matrix endet mit einer 3×3–Diagonalmatrix  ⇒  systematischer Code.
  • Damit sind die Hamming–Gewichte der drei letzten Spalten wS(4)=wS(5)=wS(6)=1, während für die ersten drei Spalten gilt: wS(1)=wS(2)=wS(3)=2  ⇒  irregulärer Code.
  • Die drei Matrixzeilen sind linear unabhängig. Damit gilt k=nm=63=3 und R=k/n=1/2.


(4) 
Modifizierter Tanner–Graph für den Code B
Betrachtet man den bisherigen Tanner–Graphen, so erkennt man, dass der Lösungsvorschlag 1 richtig ist. Durch Hinzufügen der Zeile „0 0 0 1 1 1” zur HA–Matrix erhält man:
HB=(110100101010011001000111).

Die Modifikationen sind in nebenstehender Grafik rot markiert: Durch den neu hinzugefügten Check Node C4 und die Verbindungen mit V4, V5 und V6 gehen nun

  • von allen Variable Nodes Vi zwei Linien ab, und
  • von allen Check Nodes Cj einheitlich vier.


(5)  Die Konstruktion in Teilaufgabe (4) liefert einen regulären Code. Die Hamming–Gewichte der Zeilen bzw. Spalten sind wZ=3 und wS=2. Damit ergibt sich als untere Schranke für die Coderate:

R1wSwZ=12/3=1/3.

Durch die H–Manipulation ändert sich nichts an der Generatormatrix G. Gesendet wird weiterhin der gleiche Code mit der Coderate R=1/2. Richtig sind demnach die Lösungsvorschläge 2 und 3.