Difference between revisions of "Aufgaben:Exercise 2.09: Reed–Solomon Parameters"

From LNTwww
Line 1: Line 1:
{{quiz-Header|Buchseite=Kanalcodierung/Definition und Eigenschaften von Reed–Solomon–Codes}}
+
{{quiz-Header|Buchseite=Channel_Coding/Definition_and_Properties_of_Reed-Solomon_Codes}}
  
[[File:P_ID2523__KC_A_2_9_neu.png|right|frame|Einige Reed–Solomon–Codes]]
+
[[File:P_ID2523__KC_A_2_9_neu.png|right|frame|Some Reed-Solomon codes]]
Nebenstehend finden Sie eine unvollständige Liste möglicher Reed–Solomon–Codes, die bekanntlich auf einem Galoisfeld  ${\rm GF}(q) = {\rm GF}(2^m)$  basieren. Der Parameter  $m$  gibt an, mit wie vielen Bit ein RS–Codesymbol dargestellt wird. Es gilt:
+
Adjacent is an incomplete list of possible Reed–Solomon codes known to be based on a Galois field  ${\rm GF}(q) = {\rm GF}(2^m)$ . The parameter  $m$  specifies with how many bits a RS code symbol is represented. It is valid:
* $m = 4$  (rote Schrift),
+
* $m = 4$  (red font),
* $m = 5$  (blaue Schrift),
+
* $m = 5$  (blue font),
* $m = 6$  (grüne Schrift).
+
* $m = 6$  (green font).
  
  
Ein Reed–Solomon–Code wird allgemein wie folgt bezeichnet:   ${\rm RSC}\ (n, \ k, \ d_{\rm min})_q$.
+
A Reed–Solomon code is generally denoted as follows:   ${\rm RSC}\ (n, \ k, \ d_{\rm min})_q$.
  
  
Die Parameter haben folgende Bedeutung:
+
The parameters have the following meaning:
* $n$&nbsp; gibt die Anzahl der Symbole eines Codewortes&nbsp; $\underline{c}$&nbsp; an &nbsp; &#8658; &nbsp; <b>Länge</b> des Codes,
+
* $n$&nbsp; specifies the number of symbols of a codeword&nbsp; $\underline{c}$&nbsp; &nbsp; &#8658; &nbsp; <b>length</b> of the code,
* $k$&nbsp; gibt die Anzahl der Symbole eines Informationsblocks&nbsp; $\underline{u}$&nbsp; an &nbsp; &#8658; &nbsp; <b>Dimension</b> des Codes,
+
* $k$&nbsp; specifies the number of symbols of an information block&nbsp; $\underline{u}$&nbsp; &nbsp; &#8658; &nbsp; <b>dimension</b> of the code,
* $d_{\rm min}$&nbsp; kennzeichnet die&nbsp; <b>minimale Distanz </b>&nbsp; zwischen zwei Codeworten <br>$($bei allen Reed&ndash;Solomon&ndash;Codes gleich&nbsp; $n-k+1)$,
+
* $d_{\rm min}$&nbsp; denotes the&nbsp; <b> minimum distance </b>&nbsp; between two codewords <br>$($for all Reed&ndash;Solomon codes equal&nbsp; $n-k+1)$,
* $q$&nbsp; gibt einen Hinweis auf die Verwendung des Galoisfeldes&nbsp; ${\rm GF}(q)$.
+
* $q$&nbsp; gives an indication of the use of the Galois field&nbsp; ${\rm GF}(q)$.
  
  
Rechts daneben ist die Binärrepräsentation des gleichen Codes angegeben:  
+
To the right is the binary representation of the same code:  
*Bei dieser Realisierung eines RS&ndash;Codes wird jedes Informations&ndash; und Codesymbol durch&nbsp; $m$&nbsp; Bit dargestellt.  
+
*In this realization of a RS code, each information and code symbol is represented by&nbsp; $m$&nbsp; bits.  
*Beispielsweise erkennt man aus der ersten Zeile, dass die minimale Distanz hinsichtlich der Bits ebenfalls&nbsp; $d_{\rm min} = 5$&nbsp; ist, wenn in&nbsp; ${\rm GF}(2^m)$&nbsp; die minimale Distanz&nbsp; $d_{\rm min} = 5$&nbsp; beträgt.  
+
*For example, it can be seen from the first row that the minimum distance in terms of bits is also&nbsp; $d_{\rm min} = 5$&nbsp; if in&nbsp; ${\rm GF}(2^m)$&nbsp; the minimum distance is&nbsp; $d_{\rm min} = 5$&nbsp;.  
*Damit können bis zu&nbsp; $t = 2$&nbsp; Bitfehler (oder Symbolfehler) korrigiert und bis zu&nbsp; $e = 4$&nbsp; Bitfehler (oder Symbolfehler) erkannt werden.
+
*This can correct up to&nbsp; $t = 2$&nbsp; bit errors (or symbol errors) and detect up to&nbsp; $e = 4$&nbsp; bit errors (or symbol errors).
  
  
Line 29: Line 29:
  
  
''Hinweise:''
+
Hints:
 
* Die Aufgabe gehört zum Kapitel&nbsp; [[Channel_Coding/Definition_und_Eigenschaften_von_Reed%E2%80%93Solomon%E2%80%93Codes| Definition und Eigenschaften von Reed&ndash;Solomon&ndash;Codes]].
 
* Die Aufgabe gehört zum Kapitel&nbsp; [[Channel_Coding/Definition_und_Eigenschaften_von_Reed%E2%80%93Solomon%E2%80%93Codes| Definition und Eigenschaften von Reed&ndash;Solomon&ndash;Codes]].
 
* Bezug genommen wird aber auch auf das Kapitel&nbsp; [[Channel_Coding/Erweiterungsk%C3%B6rper| Erweiterungskörper]].
 
* Bezug genommen wird aber auch auf das Kapitel&nbsp; [[Channel_Coding/Erweiterungsk%C3%B6rper| Erweiterungskörper]].

Revision as of 18:40, 2 September 2022

Some Reed-Solomon codes

Adjacent is an incomplete list of possible Reed–Solomon codes known to be based on a Galois field  ${\rm GF}(q) = {\rm GF}(2^m)$ . The parameter  $m$  specifies with how many bits a RS code symbol is represented. It is valid:

  • $m = 4$  (red font),
  • $m = 5$  (blue font),
  • $m = 6$  (green font).


A Reed–Solomon code is generally denoted as follows:   ${\rm RSC}\ (n, \ k, \ d_{\rm min})_q$.


The parameters have the following meaning:

  • $n$  specifies the number of symbols of a codeword  $\underline{c}$    ⇒   length of the code,
  • $k$  specifies the number of symbols of an information block  $\underline{u}$    ⇒   dimension of the code,
  • $d_{\rm min}$  denotes the  minimum distance   between two codewords
    $($for all Reed–Solomon codes equal  $n-k+1)$,
  • $q$  gives an indication of the use of the Galois field  ${\rm GF}(q)$.


To the right is the binary representation of the same code:

  • In this realization of a RS code, each information and code symbol is represented by  $m$  bits.
  • For example, it can be seen from the first row that the minimum distance in terms of bits is also  $d_{\rm min} = 5$  if in  ${\rm GF}(2^m)$  the minimum distance is  $d_{\rm min} = 5$ .
  • This can correct up to  $t = 2$  bit errors (or symbol errors) and detect up to  $e = 4$  bit errors (or symbol errors).




Hints:



Fragebogen

1

Es gelte  $c_i ∈ {\rm GF}(2^m)$. Welche RS–Codeparameter  $n$  ergeben sich?

$m = 4 \text{:} \hspace{0.4cm} n \ = \ $

$m = 5 \text{:} \hspace{0.4cm} n \ = \ $

$m = 6 \text{:} \hspace{0.4cm} n \ = \ $

2

Im Folgenden werden zwei spezielle RS–Codes  ${\rm RSC} \ 1 \ (m = 4, \ t = 4)$  und  ${\rm RSC} \ 2 \ (m = 5, \ t = 8)$  betrachtet.
Mit welchem RS–Parameter  $k$  lassen sich genau  $t$  Symbolfehler korrigeren?

${\rm RSC} \ 1 \text{:} \hspace{0.4cm} k \ = \ $

${\rm RSC} \ 2 \text{:} \hspace{0.4cm} k \ = \ $

3

Welche Bezeichnungen sind für  $\rm RSC \ 1$  bzw.  $\rm RSC \ 2$  richtig?

$\rm RSC \ 1$  nennt man auch  $\rm RSC \, (15, \, 7, \, 9)_{16}$.
$\rm RSC \ 1$  nennt man auch  $\rm RSC \, (15, \, 7, \, 4)_4$.
$\rm RSC \ 2$  nennt man auch  $\rm RSC \, (31, \, 17, \, 15)_{32}$.
$\rm RSC \ 2$  nennt man auch  $\rm RSC \, (31, \, 15, \, 17)_{32}$.

4

Wieviele Symbolfehler  $(e)$  können höchstens erkannt werden?

${\rm RSC} \ 1 \text{:} \hspace{0.4cm} e \ = \ $

${\rm RSC} \ 2 \text{:} \hspace{0.4cm}e \ = \ $

5

Wie lauten die betrachteten Codes in Binärschreibweise?

$\rm RSC \ 1$  entspricht dem Code  $\rm RSC \, (60, \, 28, \, 36)_2$.
$\rm RSC \ 1$  entspricht dem Code  $\rm RSC \, (60, \, 28, \, 9)_2$.
$\rm RSC \ 2$  entspricht dem Code  $\rm RSC \, (155, \, 75, \, 17)_2$.
$\rm RSC \ 2$  entspricht dem Code  $\rm RSC \, (124, \, 60, \, 17)_2$.


Musterlösung

(1)  Für die Codelänge der Reed–Solomon–Codes gilt allgemein.

$$n = q -1 = 2^m -1 \hspace{0.3cm}\Rightarrow \hspace{0.3cm} m = 4 {\rm :}\hspace{0.2cm} n \hspace{0.15cm}\underline {= 15} \hspace{0.05cm}, \hspace{0.4cm}m = 5 {\rm :}\hspace{0.2cm} n \hspace{0.15cm}\underline {= 31} \hspace{0.05cm},\hspace{0.4cm} m = 6 {\rm :}\hspace{0.2cm} n \hspace{0.15cm}\underline {= 63} \hspace{0.05cm}. $$


(2)  Um $t$ Symbolfehler korrigieren zu können, muss die minimale Distanz $d_{\rm min} = 2t + 1$ betragen.

  • Der Reed–Solomon–Code ist ein sogenannter MDS–Code (Maximum Distance Separable).
  • Für diese gilt:
$$d_{\rm min} = n-k+1 = 2t+1 \hspace{0.3cm} \Rightarrow \hspace{0.3cm}k = n -2t = 2^m - ( 2t+1) \hspace{0.05cm}. $$
  • Damit erhält man für den
  • $\rm RSC \ 1$ (mit $m = 4, \ t = 4) \text{:} \hspace{0.2cm} k = 2^4 - (2 \cdot 4 + 1) \ \underline{= 7}$,
  • $\rm RSC \ 2$ (mit $m = 5, \ t = 8) \text{:} \hspace{0.2cm} k = 2^5 - (2 \cdot 8 + 1) \ \underline{= 15}$.


(3)  Die Bezeichnung eines Reed–Solomon–Codes lautet ${\rm RSC} \, (n, \, k, \, d_{\rm min})_q$ mit $q = 2^m = n + 1$.

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

  • $\rm RSC \ 1 \Rightarrow RSC \, (15, \, 7, \, 9)_{16}$,
  • $\rm RSC \ 2 \Rightarrow RSC \, (31, \, 15, \, 17)_{32}$.


(4)  Bezeichnet $d_{\rm min}$ die minimale Distanz eines Blockcodes, so können damit $e = d_{\rm min} - 1$ Symbolfehler erkannt und $t = e/2$ Symbolfehler korrigiert werden:

  • ${\rm RSC} \ 1 \text{:} \hspace{0.2cm} d_{\rm min} = \ \ 9, \ t = 4, \ \underline{e = 8}$,
  • ${\rm RSC} \ 2 \text{:} \hspace{0.2cm} d_{\rm min} = 17, \ t = 8, \ \underline{e = 16}$.


(5)  Richtig sind die beiden mittleren Lösungsvorschläge 2 und 3:

  • Bei ${\rm RSC} \ 1 \, (m = 4)$ entsprechen $n = 15$ Codesymbolen aus $\rm GF(2^5)$ gleich $60$ Bit und $k = 7$ Informationssymbole genau $28$ Bit:
  • $\rm RSC \ 1 \Rightarrow RSC \, (15, \, 7, \, 9)_{16} \Rightarrow RSC \, (60, \, 28, \, 9)_2$,
  • $\rm RSC \ 2 \Rightarrow RSC \, (31, \, 15, \, 17)_{32} \Rightarrow RSC \, (155, \, 75, \, 17)_2$.
  • Für die minimale Distanz auf Bitebene   ⇒   $\rm GF(2)$ ergeben sich mit $d_{\rm min} = 9$ bzw. $d_{\rm min} = 17$ die gleichen Werte wie auf Symbolebene  
    ⇒   $\rm GF(2^4)$ bzw. $\rm GF(2^5)$ (siehe Theorieteil).