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

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

From LNTwww
 
(10 intermediate revisions by 4 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 GF(q)=GF(2m) 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  GF(q)=GF(2m).   
* 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:   ${\rm RSC}\ (n, \ k, \ d_{\rm min})_q$.
+
* m=5  (blue font),
  
 +
* m=6  (green font).
  
Die Parameter haben folgende Bedeutung:
 
* n gibt die Anzahl der Symbole eines Codewortes c_ an &nbsp; &#8658; &nbsp; <b>Länge</b> des Codes,
 
* k gibt die Anzahl der Symbole eines Informationsblocks u_ an &nbsp; &#8658; &nbsp; <b>Dimension</b> des Codes,
 
* dmin kennzeichnet die <b>minimale Distanz </b> zwischen zwei Codeworten (bei allen Reed&ndash;Solomon&ndash;Codes gleich nk+1),
 
* q gibt einen Hinweis auf die Verwendung des Galoisfeldes GF(q).
 
  
 +
A Reed&ndash;Solomon code is generally denoted as follows: &nbsp; RSC (n, k, dmin)q.
  
Rechts daneben ist die Binärrepräsentation des gleichen Codes angegeben:  
+
The parameters have the following meaning:
*Bei dieser Realisierung eines RS&ndash;Codes wird jedes Informations&ndash; und Codesymbol durch $m$ Bit dargestellt.  
+
# 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.
*Beispielsweise erkennt man aus der ersten Zeile, dass die minimale Distanz hinsichtlich der Bits ebenfalls $d_{\rm min} = 5$ ist, wenn in ${\rm GF}(2^m)$ die minimale Distanz $d_{\rm min} = 5$ beträgt.  
+
# 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.
*Damit können bis zu $t = 2$ Bitfehler (oder Symbolfehler) korrigiert und bis zu $e = 4$ Bitfehler (oder Symbolfehler) erkannt werden.
+
# The parameter&nbsp; dmin&nbsp; denotes the&nbsp; <b> minimum distance </b>&nbsp; between two code words <br>(for all Reed&ndash;Solomon codes equal&nbsp; nk+1).
 +
# The parameter&nbsp; $q$&nbsp; gives an indication of the use of the Galois field&nbsp; ${\rm GF}(q)$.
  
  
 +
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; dmin=5&nbsp; if in&nbsp; GF(2m)&nbsp; the minimum distance is&nbsp; dmin=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).
  
  
''Hinweise:''
 
* Die Aufgabe gehört zum Kapitel [[Kanalcodierung/Erweiterungsk%C3%B6rper| Erweiterungskörper]].
 
* Bezug genommen wird aber auch auf das 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.
 
  
  
  
===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:n = { 15 }
 
m=4:n = { 15 }
Line 41: Line 46:
 
m=6:n = { 63 }
 
m=6:n = { 63 }
  
{Im Folgenden werden zwei spezielle RS&ndash;Codes RSC 1 (m=4, t=4) und RSC 2 (m=5, t=8) betrachtet. <br>Mit welchem RS&ndash;Parameter k lassen sich genau t Symbolfehler korrigeren?
+
{Two specific Reed-Solomon codes &nbsp; RSC 1 (m=4, t=4) &nbsp; and &nbsp; 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="{}"}
 
RSC 1:k = { 7 }
 
RSC 1:k = { 7 }
 
RSC 2:k = { 15 }
 
RSC 2:k = { 15 }
  
{Welche Bezeichnungen sind für RSC1 bzw. RSC 2 richtig?
+
{Which designations are correct for &nbsp; $\rm RSC \ 1$ &nbsp; resp. &nbsp; RSC 2?
 
|type="[]"}
 
|type="[]"}
+ RSC 1 nennt man auch RSC(15,7,9)16.
+
+ RSC 1&nbsp; is also called&nbsp; RSC(15,7,9)16.
- RSC 1 nennt man auch RSC(15,7,4)4.
+
- RSC 1&nbsp; is also called&nbsp; RSC(15,7,4)4.
- RSC 2 nennt man auch RSC(31,17,15)32.
+
- RSC 2&nbsp; is also called&nbsp; RSC(31,17,15)32.
+ RSC 2 nennt man auch RSC(31,15,17)32.
+
+ RSC 2&nbsp; is also called&nbsp; RSC(31,15,17)32.
  
{Wieviele Symbolfehler (e) können höchstens erkannt werden?  
+
{How many symbol errors&nbsp; (e)&nbsp; can be detected at most?  
 
|type="{}"}
 
|type="{}"}
 
RSC 1:e = { 8 }
 
RSC 1:e = { 8 }
 
RSC 2:e = { 16 }
 
RSC 2:e = { 16 }
  
{Wie lauten die betrachteten Codes in Binärschreibweise?
+
{What are the codes under consideration in binary notation?
 
|type="[]"}
 
|type="[]"}
- RSC 1 entspricht dem Code RSC(60,28,36)2.
+
- RSC 1&nbsp; corresponds to the code&nbsp; RSC(60,28,36)2.
+ RSC 1 entspricht dem Code RSC(60,28,9)2.
+
+ RSC 1&nbsp; corresponds to the code&nbsp; RSC(60,28,9)2.
+ RSC 2 entspricht dem Code RSC(155,75,17)2.
+
+ RSC 2&nbsp; corresponds to the code&nbsp; RSC(155,75,17)2.
- RSC 2 entspricht dem Code RSC(124,60,17)2.
+
- RSC 2&nbsp; corresponds to the code&nbsp; RSC(124,60,17)2.
 
</quiz>
 
</quiz>
  
===Musterlösung===
+
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
'''(1)'''&nbsp; Für die Codelänge der Reed&ndash;Solomon&ndash;Codes gilt allgemein.
+
'''(1)'''&nbsp; For the code length of Reed&ndash;Solomon codes,&nbsp; 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},  
 
:$$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}  
 
\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}. $$
 
m = 6 {\rm :}\hspace{0.2cm} n \hspace{0.15cm}\underline {= 63} \hspace{0.05cm}. $$
  
'''(2)'''&nbsp; Um t Symbolfehler korrigieren zu können, muss die minimale Distanz dmin=2t+1 betragen. Der Reed&ndash;Solomon&ndash;Code ist ein sogenannter MDS&ndash;Code (<i>Maximum Distance Separable</i>). Für diese gilt:
+
 
 +
'''(2)'''&nbsp; To be able to correct&nbsp; t&nbsp; symbol errors,&nbsp; the minimum distance must be&nbsp; dmin=2t+1.  
 +
*The Reed&ndash;Solomon code is a so-called&nbsp; "Maximum Distance Separable&nbsp; $\rm (MDS)$&nbsp; code".
 +
 +
*For this applies:
 
:dmin=nk+1=2t+1k=n2t=2m(2t+1).
 
:dmin=nk+1=2t+1k=n2t=2m(2t+1).
  
Damit erhält man für den
+
*This gives for the
* RSC 1 (mit m=4, t=4):k=24(24+1) =7_,
+
** $\rm RSC \ 1$&nbsp; $($with&nbsp; m=4, t=4):k=24(24+1) =7_,
* RSC 2 (mit m=5, t=8):k=25(28+1) =15_.
+
** $\rm RSC \ 2$&nbsp; $($with&nbsp; m=5, t=8):k=25(28+1) =15_.
  
  
'''(3)'''&nbsp; Die Bezeichnung eines Reed&ndash;Solomon&ndash;Codes lautet RSC(n,k,dmin)q mit q=2m=n+1. Richtig sind die <u>Lösungsvorschläge 1 und 4</u>:
 
* RSC 1RSC(15,7,9)16,
 
* RSC 2RSC(31,15,17)32.
 
  
 +
'''(3)'''&nbsp; The denotation of a Reed&ndash;Solomon code is&nbsp; RSC(n,k,dmin)q&nbsp; with&nbsp; q=2m=n+1.
  
'''(4)'''&nbsp; Bezeichnet dmin die minimale Distanz eines Blockcodes, so können damit e=dmin1 Symbolfehler erkannt und t=e/2 Symbolfehler korrigiert werden:
+
*Correct are the&nbsp; <u>solutions 1 and 4</u>:
 +
** RSC 1RSC(15,7,9)16,
 +
** RSC 2RSC(31,15,17)32.
 +
 
 +
 
 +
 
 +
'''(4)'''&nbsp; If&nbsp; dmin&nbsp; denotes the minimum distance of a block code,&nbsp; it can be used to detect&nbsp; e=dmin1&nbsp; symbol errors and to correct&nbsp; t=e/2&nbsp; symbol errors:
 
* RSC 1:dmin=  9, t=4, e=8_,
 
* RSC 1:dmin=  9, t=4, e=8_,
 
* RSC 2:dmin=17, t=8, e=16_.
 
* RSC 2:dmin=17, t=8, e=16_.
  
  
'''(5)'''&nbsp; Richtig sind die beiden mittleren <u>Lösungsvorschläge 2 und 3</u>:  
+
 
*Bei RSC 1(m=4) entsprechen n=15 Codesymbolen aus GF(25) gleich 60 Bit und k=7 Informationssymbole genau 28 Bit:
+
'''(5)'''&nbsp; Correct are the two middle&nbsp; <u>solutions 2 and 3</u>:  
:* RSC 1RSC(15,7,9)16RSC(60,28,9)2,
+
*For&nbsp; RSC 1(m=4): &nbsp; n=15&nbsp; code symbols from&nbsp; GF(25)&nbsp; correspond to&nbsp; 60&nbsp; bits and&nbsp; k=7&nbsp; information symbols are exactly&nbsp; 28&nbsp; bits:
:* RSC 2RSC(31,15,17)32RSC(155,75,17)2.
+
** RSC 1RSC(15,7,9)16RSC(60,28,9)2,
*Für die minimale Distanz auf Bitebene &nbsp; &rArr; &nbsp; GF(2) ergeben sich mit dmin=9 bzw. dmin=17 die gleichen Werte wie auf Symbolebene &nbsp; &rArr; &nbsp; $\rm GF(2^4)bzw.\rm GF(2^5)$ (siehe [[Kanalcodierung/Definition_und_Eigenschaften_von_Reed%E2%80%93Solomon%E2%80%93Codes#Codebezeichnung_und_Coderate|Theorieteil]]).
+
** RSC 2RSC(31,15,17)32RSC(155,75,17)2.
 +
*For the minimum distance on bit level &nbsp; &rArr; &nbsp; GF(2),&nbsp; dmin=9&nbsp; resp.&nbsp; dmin=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 Zu den Reed–Solomon–Codes^]]
+
[[Category:Channel Coding: Exercises|^2.3 Reed–Solomon Codes^]]

Latest revision as of 17: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  GF(q)=GF(2m)

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:   RSC (n, k, dmin)q.

The parameters have the following meaning:

  1. The parameter  n  specifies the number of symbols of a code word  c_    ⇒   length of the code.
  2. Tthe parameter  k  specifies the number of symbols of an information block  u_    ⇒   dimension  of the code.
  3. The parameter  dmin  denotes the  minimum distance   between two code words
    (for all Reed–Solomon codes equal  nk+1).
  4. The parameter  q  gives an indication of the use of the Galois field  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  dmin=5  if in  GF(2m)  the minimum distance is  dmin=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  ciGF(2m).  Which Reed-Solomon code parameters  n  result?

m=4:n = 

m=5:n = 

m=6:n = 

2

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

RSC 1:k = 

RSC 2:k = 

3

Which designations are correct for   RSC 1   resp.   RSC 2?

RSC 1  is also called  RSC(15,7,9)16.
RSC 1  is also called  RSC(15,7,4)4.
RSC 2  is also called  RSC(31,17,15)32.
RSC 2  is also called  RSC(31,15,17)32.

4

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

RSC 1:e = 

RSC 2:e = 

5

What are the codes under consideration in binary notation?

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


Solution

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

n=q1=2m1m=4:n=15_,m=5:n=31_,m=6:n=63_.


(2)  To be able to correct  t  symbol errors,  the minimum distance must be  dmin=2t+1.

  • The Reed–Solomon code is a so-called  "Maximum Distance Separable  (MDS)  code".
  • For this applies:
dmin=nk+1=2t+1k=n2t=2m(2t+1).
  • This gives for the
    • RSC 1  (with  m=4, t=4):k=24(24+1) =7_,
    • RSC 2  (with  m=5, t=8):k=25(28+1) =15_.


(3)  The denotation of a Reed–Solomon code is  RSC(n,k,dmin)q  with  q=2m=n+1.

  • Correct are the  solutions 1 and 4:
    • RSC 1RSC(15,7,9)16,
    • RSC 2RSC(31,15,17)32.


(4)  If  dmin  denotes the minimum distance of a block code,  it can be used to detect  e=dmin1  symbol errors and to correct  t=e/2  symbol errors:

  • RSC 1:dmin=  9, t=4, e=8_,
  • RSC 2:dmin=17, t=8, e=16_.


(5)  Correct are the two middle  solutions 2 and 3:

  • For  RSC 1(m=4):   n=15  code symbols from  GF(25)  correspond to  60  bits and  k=7  information symbols are exactly  28  bits:
    • RSC 1RSC(15,7,9)16RSC(60,28,9)2,
    • RSC 2RSC(31,15,17)32RSC(155,75,17)2.
  • For the minimum distance on bit level   ⇒   GF(2)dmin=9  resp.  dmin=17  result in the same values as on symbol level   (see "theory section").