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

From LNTwww
 
(23 intermediate revisions by 5 users not shown)
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 Bits 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)$.   
* $m = 4$ (rote Schrift),
 
* $m = 5$ (blaue Schrift),
 
* $m = 6$ (grüne Schrift).
 
  
 +
The parameter  $m$  specifies with how many bits a Reed–Solomon code symbol is represented.  It is valid:
 +
* $m = 4$  (red font),
  
Ein Reed–Solomon–Code wird wie folgt bezeichnet:
+
* $m = 5$  (blue font),
# <span style="color: rgb(204, 0, 0);">${\rm RSC}(n, \ k, \ d_{\rm min})_q$</span>
 
  
 +
* $m = 6$&nbsp; (green font).
  
Die Parameter haben folgende Bedeutung:
 
* $n$ gibt die Anzahl der Symbole eines Codewortes $\underline{c}$ an &nbsp;&#8658;&nbsp; <span style="color: rgb(204, 0, 0);"><b>Länge</b></span> des Codes,
 
* $k$ gibt die Anzahl der Symbole eines Informationsblocks $\underline{u}$ an &nbsp;&#8658;&nbsp; <span style="color: rgb(204, 0, 0);"><b>Dimension</b></span> des Codes,
 
* $d_{\rm min}$ kennzeichnet die <span style="color: rgb(204, 0, 0);"><b>minimale Distanz </b></span> zwischen zwei Codeworten (stets gleich $n-k+1$),
 
* $q$ gibt einen Hinweis auf die Verwendung des Galoisfeldes <span style="color: rgb(204, 0, 0);">${\rm GF}(q)$</span>
 
  
 +
A Reed&ndash;Solomon code is generally denoted as follows: &nbsp; ${\rm RSC}\ (n, \ k, \ d_{\rm min})_q$.
  
Rechts daneben ist die Binärrepräsentation des gleichen Codes angegeben. Bei dieser Realisierung eines RS&ndash;Codes wird jedes Informations&ndash; und Codesymbol durch $m \ \rm Bit$ dargestellt. Beispielsweise erkennt man aus der ersten Zeile, dass die minimale Distanz hinsichtlich der Bits ebenfalls $d_{\rm min} = 5$ ist, wenn die minimale Distanz in ${\rm GF}(2^m) \, d_{\rm min} = 5$ beträgt. Damit können bis zu $t = 2$ Bitfehler (oder Symbolfehler) korrigiert und bis zu $e = 4$ Bitfehler (oder Symbolfehler) erkannt werden.
+
The parameters have the following meaning:
 +
# The parameter&nbsp; $n$&nbsp; specifies the number of symbols of a code word&nbsp; $\underline{c}$&nbsp; &nbsp; &#8658; &nbsp; <b>length</b> of the code.
 +
# Tthe parameter&nbsp; $k$&nbsp; specifies the number of symbols of an information block&nbsp; $\underline{u}$&nbsp; &nbsp; &#8658; &nbsp; <b>dimension</b>&nbsp; of the code.
 +
# The parameter&nbsp; $d_{\rm min}$&nbsp; denotes the&nbsp; <b> minimum distance </b>&nbsp; between two code words <br>$($for all Reed&ndash;Solomon codes equal&nbsp; $n-k+1)$.
 +
# The parameter&nbsp; $q$&nbsp; gives an indication of the use of the Galois field&nbsp; ${\rm GF}(q)$.
  
''Hinweise:''
 
* Die Aufgabe gehört zum Kapitel [[Kanalcodierung/Definition_und_Eigenschaften_von_Reed%E2%80%93Solomon%E2%80%93Codes| Definition und Eigenschaften von Reed&ndash;Solomon&ndash;Codes]]
 
* Sollte die Eingabe des Zahlenwertes &bdquo;0&rdquo; erforderlich sein, so geben Sie bitte &bdquo;0.&rdquo; ein.
 
  
 +
To the right,&nbsp; there is the binary representation of the same code:
 +
# In this realization of a Reed&ndash;Solomon code,&nbsp; each information and code symbol is represented by&nbsp; $m$&nbsp; bits.
 +
# For example,&nbsp; 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$.
 +
# This code can correct up to &nbsp; $t = 2$ &nbsp; bit errors&nbsp; $($or symbol errors$)$&nbsp; and detect up to &nbsp; $e = 4$ &nbsp; bit errors&nbsp; $($or symbol errors$)$.
  
  
===Fragebogen===
+
 
 +
 
 +
 
 +
Hints:
 +
* This exercise belongs to the chapter&nbsp; [[Channel_Coding/Definition_and_Properties_of_Reed-Solomon_Codes| "Definition and Properties of Reed-Solomon Codes"]].
 +
 
 +
* However,&nbsp; reference is also made to the chapter&nbsp; [[Channel_Coding/Extension_Field| "Extension Field"]].
 +
 +
 
 +
 
 +
 
 +
===Questions===
 
<quiz display=simple>
 
<quiz display=simple>
{Es gelte $c_i &#8712; {\rm GF}(2^m)$. Welche RS&ndash;Codeparameter $n$ ergeben sich?
+
{It holds&nbsp; $c_i &#8712; {\rm GF}(2^m)$.&nbsp; Which Reed-Solomon code parameters&nbsp; $n$&nbsp; result?
 
|type="{}"}
 
|type="{}"}
$m = 4 \text{:} \hspace{0.2cm} n \ = \ ${ 15 3% }
+
$m = 4 \text{:} \hspace{0.4cm} n \ = \ ${ 15 }
$m = 5 \text{:} \hspace{0.2cm} n \ = \ ${ 31 3% }
+
$m = 5 \text{:} \hspace{0.4cm} n \ = \ ${ 31 }
$m = 6 \text{:} \hspace{0.2cm} n \ = \ ${ 63 3% }
+
$m = 6 \text{:} \hspace{0.4cm} n \ = \ ${ 63 }
  
{Im Folgenden werden zwei spezielle RS&ndash;Codes ($\rm RSC \ 1, \ RSC \ 2$) betrachtet. Mit welchem RS&ndash;Parameter $k$ lassen sich genau $t$ Symbolfehler korrigeren?
+
{Two specific Reed-Solomon codes &nbsp; ${\rm RSC} \ 1 \ (m = 4, \ t = 4)$ &nbsp; and &nbsp; ${\rm RSC} \ 2 \ (m = 5, \ t = 8)$ &nbsp; are considered below. <br>Which parameter&nbsp; $k$&nbsp; can be used to correct exactly&nbsp; $t$&nbsp; symbol errors?
 
|type="{}"}
 
|type="{}"}
${\rm RSC} \ 1 \ (m = 4, \ t = 4) \text{:} \hspace{0.2cm} k \ = \ ${ 7 3% }
+
${\rm RSC} \ 1 \text{:} \hspace{0.4cm} k \ = \ ${ 7 }
${\rm RSC} \ 1 \ (m = 5, \ t = 8) \text{:} \hspace{0.2cm} k \ = \ ${ 15 3% }
+
${\rm RSC} \ 2 \text{:} \hspace{0.4cm} k \ = \ ${ 15 }
  
{Welche Bezeichnungen sind für $\rm RSC 1$ bzw. $\rm RSC \ 2$ richtig?
+
{Which designations are correct for &nbsp; $\rm RSC \ 1$ &nbsp; resp. &nbsp; $\rm RSC \ 2$?
 
|type="[]"}
 
|type="[]"}
+ $\rm RSC \ 1$ nennt man auch $\rm RSC \, (15, \, 7, \, 9)_{16}$.
+
+ $\rm RSC \ 1$&nbsp; is also called&nbsp; $\rm RSC \, (15, \, 7, \, 9)_{16}$.
- $\rm RSC \ 1$ nennt man auch $\rm RSC \, (15, \, 7, \, 4)_4$.
+
- $\rm RSC \ 1$&nbsp; is also called&nbsp; $\rm RSC \, (15, \, 7, \, 4)_4$.
- $\rm RSC \ 2$ nennt man auch $\rm RSC \, (31, \, 17, \, 15)_{32}$.
+
- $\rm RSC \ 2$&nbsp; is also called&nbsp; $\rm RSC \, (31, \, 17, \, 15)_{32}$.
+ $\rm RSC \ 2$ nennt man auch $\rm  RSC \, (31, \, 15, \, 17)_{32}$.
+
+ $\rm RSC \ 2$&nbsp; is also called&nbsp; $\rm  RSC \, (31, \, 15, \, 17)_{32}$.
  
{Wieviele Symbolfehler können höchstens erkannt werden?
+
{How many symbol errors&nbsp; $(e)$&nbsp; can be detected at most?  
 
|type="{}"}
 
|type="{}"}
${\rm mit \ RSC \ 1} \text{:} \hspace{0.2cm} e \ = \ ${ 8 3% }
+
${\rm RSC} \ 1 \text{:} \hspace{0.4cm} e \ = \ ${ 8 }
${\rm mit \ RSC \ 2} \text{:} \hspace{0.2cm} e \ = \ ${ 16 3% }
+
${\rm RSC} \ 2 \text{:} \hspace{0.4cm}e \ = \ ${ 16 }
  
{Wie lauten die betrachteten Codes in Binärschreibweise?
+
{What are the codes under consideration in binary notation?
 
|type="[]"}
 
|type="[]"}
- $\rm RSC \ 1$ entspricht dem Code $\rm RSC \, (60, \, 28, \, 36)_2$.
+
- $\rm RSC \ 1$&nbsp; corresponds to the code&nbsp; $\rm RSC \, (60, \, 28, \, 36)_2$.
+ $\rm RSC \ 1$ entspricht dem Code $\rm RSC \, (60, \, 28, \, 9)_2$.
+
+ $\rm RSC \ 1$&nbsp; corresponds to the code&nbsp; $\rm RSC \, (60, \, 28, \, 9)_2$.
+ $\rm RSC \ 2$ entspricht dem Code $\rm RSC \, (155, \, 75, \, 17)_2$.
+
+ $\rm RSC \ 2$&nbsp; corresponds to the code&nbsp; $\rm RSC \, (155, \, 75, \, 17)_2$.
- $\rm RSC \ 2$ entspricht dem Code $\rm RSC \, (124, \, 60, \, 17)_2$.
+
- $\rm RSC \ 2$&nbsp; corresponds to the code&nbsp; $\rm RSC \, (124, \, 60, \, 17)_2$.
 
</quiz>
 
</quiz>
  
===Musterlösung===
+
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
'''(1)'''&nbsp;  
+
'''(1)'''&nbsp; For the code length of Reed&ndash;Solomon codes,&nbsp; the following applies in general:
'''(2)'''&nbsp;  
+
:$$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},
'''(3)'''&nbsp;  
+
\hspace{0.4cm}m = 5 {\rm :}\hspace{0.2cm} n \hspace{0.15cm}\underline {= 31} \hspace{0.05cm},\hspace{0.4cm}
'''(4)'''&nbsp;  
+
m = 6 {\rm :}\hspace{0.2cm} n \hspace{0.15cm}\underline {= 63} \hspace{0.05cm}. $$
'''(5)'''&nbsp;  
+
 
 +
 
 +
'''(2)'''&nbsp; To be able to correct&nbsp; $t$&nbsp; symbol errors,&nbsp; the minimum distance must be&nbsp; $d_{\rm min} = 2t + 1$.
 +
*The Reed&ndash;Solomon code is a so-called&nbsp; "Maximum Distance Separable&nbsp; $\rm (MDS)$&nbsp; code".
 +
 +
*For this applies:
 +
:$$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}. $$
 +
 
 +
*This gives for the
 +
** $\rm RSC \ 1$&nbsp; $($with&nbsp; $m = 4, \ t = 4) \text{:} \hspace{0.2cm} k = 2^4 - (2 \cdot 4 + 1) \ \underline{= 7}$,
 +
** $\rm RSC \ 2$&nbsp; $($with&nbsp; $m = 5, \ t = 8) \text{:} \hspace{0.2cm} k = 2^5 - (2 \cdot 8 + 1) \ \underline{= 15}$.
 +
 
 +
 
 +
 
 +
'''(3)'''&nbsp; The denotation of a Reed&ndash;Solomon code is&nbsp; ${\rm RSC} \, (n, \, k, \, d_{\rm min})_q$&nbsp; with&nbsp; $q = 2^m = n + 1$.
 +
 
 +
*Correct are the&nbsp; <u>solutions 1 and 4</u>:
 +
** $\rm RSC \ 1 \Rightarrow RSC \, (15, \, 7, \, 9)_{16}$,
 +
** $\rm RSC \ 2 \Rightarrow RSC \, (31, \, 15, \, 17)_{32}$.
 +
 
 +
 
 +
 
 +
'''(4)'''&nbsp; If&nbsp; $d_{\rm min}$&nbsp; denotes the minimum distance of a block code,&nbsp; it can be used to detect&nbsp; $e = d_{\rm min} - 1$&nbsp; symbol errors and to correct&nbsp; $t = e/2$&nbsp; symbol errors:
 +
* ${\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)'''&nbsp; Correct are the two middle&nbsp; <u>solutions 2 and 3</u>:
 +
*For&nbsp; ${\rm RSC} \ 1 \, (m = 4)$: &nbsp; $n = 15$&nbsp; code symbols from&nbsp; $\rm GF(2^5)$&nbsp; correspond to&nbsp; $60$&nbsp; bits and&nbsp; $k = 7$&nbsp; information symbols are exactly&nbsp; $28$&nbsp; bits:
 +
** $\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$.
 +
*For the minimum distance on bit level &nbsp; &rArr; &nbsp; $\rm GF(2)$,&nbsp; $d_{\rm min} = 9$&nbsp; resp.&nbsp; $d_{\rm min} = 17$&nbsp; result in the same values as on symbol level &nbsp;  $($see [[Channel_Coding/Definition_and_Properties_of_Reed-Solomon_Codes#Code_name_and_code_rate|"theory section"]]$)$.
 
{{ML-Fuß}}
 
{{ML-Fuß}}
  
  
  
[[Category:Aufgaben zu  Kanalcodierung|^2.3 Definition und Eigenschaften von Reed–Solomon–Codes^]]
+
[[Category:Channel Coding: Exercises|^2.3 Reed–Solomon Codes^]]

Latest revision as of 16:40, 10 October 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 Reed–Solomon 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:

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


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

  1. In this realization of a Reed–Solomon code,  each information and code symbol is represented by  $m$  bits.
  2. 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$.
  3. This code can correct up to   $t = 2$   bit errors  $($or symbol errors$)$  and detect up to   $e = 4$   bit errors  $($or symbol errors$)$.



Hints:



Questions

1

It holds  $c_i ∈ {\rm GF}(2^m)$.  Which Reed-Solomon code parameters  $n$  result?

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

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

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

2

Two specific Reed-Solomon codes   ${\rm RSC} \ 1 \ (m = 4, \ t = 4)$   and   ${\rm RSC} \ 2 \ (m = 5, \ t = 8)$   are considered below.
Which parameter  $k$  can be used to correct exactly  $t$  symbol errors?

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

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

3

Which designations are correct for   $\rm RSC \ 1$   resp.   $\rm RSC \ 2$?

$\rm RSC \ 1$  is also called  $\rm RSC \, (15, \, 7, \, 9)_{16}$.
$\rm RSC \ 1$  is also called  $\rm RSC \, (15, \, 7, \, 4)_4$.
$\rm RSC \ 2$  is also called  $\rm RSC \, (31, \, 17, \, 15)_{32}$.
$\rm RSC \ 2$  is also called  $\rm RSC \, (31, \, 15, \, 17)_{32}$.

4

How many symbol errors  $(e)$  can be detected at most?

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

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

5

What are the codes under consideration in binary notation?

$\rm RSC \ 1$  corresponds to the code  $\rm RSC \, (60, \, 28, \, 36)_2$.
$\rm RSC \ 1$  corresponds to the code  $\rm RSC \, (60, \, 28, \, 9)_2$.
$\rm RSC \ 2$  corresponds to the code  $\rm RSC \, (155, \, 75, \, 17)_2$.
$\rm RSC \ 2$  corresponds to the code  $\rm RSC \, (124, \, 60, \, 17)_2$.


Solution

(1)  For the code length of Reed–Solomon codes,  the following applies in general:

$$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)  To be able to correct  $t$  symbol errors,  the minimum distance must be  $d_{\rm min} = 2t + 1$.

  • The Reed–Solomon code is a so-called  "Maximum Distance Separable  $\rm (MDS)$  code".
  • For this applies:
$$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}. $$
  • This gives for the
    • $\rm RSC \ 1$  $($with  $m = 4, \ t = 4) \text{:} \hspace{0.2cm} k = 2^4 - (2 \cdot 4 + 1) \ \underline{= 7}$,
    • $\rm RSC \ 2$  $($with  $m = 5, \ t = 8) \text{:} \hspace{0.2cm} k = 2^5 - (2 \cdot 8 + 1) \ \underline{= 15}$.


(3)  The denotation of a Reed–Solomon code is  ${\rm RSC} \, (n, \, k, \, d_{\rm min})_q$  with  $q = 2^m = n + 1$.

  • Correct are the  solutions 1 and 4:
    • $\rm RSC \ 1 \Rightarrow RSC \, (15, \, 7, \, 9)_{16}$,
    • $\rm RSC \ 2 \Rightarrow RSC \, (31, \, 15, \, 17)_{32}$.


(4)  If  $d_{\rm min}$  denotes the minimum distance of a block code,  it can be used to detect  $e = d_{\rm min} - 1$  symbol errors and to correct  $t = e/2$  symbol errors:

  • ${\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)  Correct are the two middle  solutions 2 and 3:

  • For  ${\rm RSC} \ 1 \, (m = 4)$:   $n = 15$  code symbols from  $\rm GF(2^5)$  correspond to  $60$  bits and  $k = 7$  information symbols are exactly  $28$  bits:
    • $\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$.
  • For the minimum distance on bit level   ⇒   $\rm GF(2)$,  $d_{\rm min} = 9$  resp.  $d_{\rm min} = 17$  result in the same values as on symbol level   $($see "theory section"$)$.