Difference between revisions of "Aufgaben:Exercise 2.07: Reed-Solomon Code (7, 3, 5) to Base 8"

From LNTwww
m (Text replacement - "[[Kanalcodierung" to "[[Channel_Coding")
 
(11 intermediate revisions by 3 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_ID2522__KC_A_2_7.png|right|frame|$\rm GF(2^3)$–Darstellung als Potenzen, Polynome, Vektoren]]
+
[[File:EN_KC_A_2_7.png|right|frame|$\rm GF(2^3)$ representation as powers, polynomials, vectors]]
Der hier betrachtete Reed–Solomon–Code mit der Bezeichnung  $\rm RSC \, (7, \, 3, \, 5)_8$
+
The Reed–Solomon code considered here,  denoted  $\rm RSC \, (7, \, 3, \, 5)_8$,
* codiert einen Informationsblock  $\underline{u} = (u_0, \, u_1, \, u_2)$  von  $k = 3$  Symbolen, wobei  $u_0, \, u_1, \, u_2 ∈ \rm GF(2^3)$  gilt, also keine Bits, sondern Symbole darstellen;
+
* encodes a block of information  $\underline{u} = (u_0, \, u_1, \, u_2)$  of  $k = 3$  symbols,  where  $u_0, \, u_1, \, u_2 ∈ \rm GF(2^3)$  applies,  representing symbols rather than bits;
* erzeugt ein Codewort  $\underline{c} = (c_0, \, c_1,\hspace{0.05cm} \text{...} \hspace{0.1cm} , c_6)$  der Länge  $n = 7$  mit Codesymbolen  $c_i$  ebenfalls aus dem Galoisfeld  $\rm GF(2^3)$,
 
* besitzt die freie Distanz  $d_{\rm min} = n - k + 1 = 5$, so dass bis zu  $e = 4$  Symbolfehler erkannt und bis zu  $t = 2$  Symbolfehler korrigiert werden können.
 
  
 +
* generates a code word   $\underline{c} = (c_0, \, c_1,\hspace{0.05cm} \text{...} \hspace{0.1cm} , c_6)$   of length  $n = 7$  with code symbols  $c_i$  also from the Galois field  $\rm GF(2^3)$;
  
Die Elemente des zugrunde liegenden Galoisfeldes lauten:
+
* has the free distance   $d_{\rm min} = n - k + 1 = 5$,  so that up to   $e = 4$   symbol errors can be detected and up to   $t = 2$   symbol errors can be corrected.
 +
 
 +
 
 +
The elements of the underlying Galois field are:
 
:$${\rm GF}(2^3) = \{\hspace{0.1cm} 0\hspace{0.05cm},\hspace{0.1cm} 1 \hspace{0.05cm},\hspace{0.1cm}
 
:$${\rm GF}(2^3) = \{\hspace{0.1cm} 0\hspace{0.05cm},\hspace{0.1cm} 1 \hspace{0.05cm},\hspace{0.1cm}
 
\alpha\hspace{0.05cm},\hspace{0.1cm} \alpha^{2}
 
\alpha\hspace{0.05cm},\hspace{0.1cm} \alpha^{2}
Line 17: Line 19:
 
\hspace{0.1cm}\}\hspace{0.05cm}.  $$
 
\hspace{0.1cm}\}\hspace{0.05cm}.  $$
  
Diese Elemente lassen sich entsprechend der Grafik auch als Polynome oder als Koeffizientenvektoren darstellen.
+
These elements can also be represented as polynomials or as coefficient vectors according to the graphic.  
 
 
Man erkennt aus obiger Tabelle, dass alle  $u_i ∈ \rm GF(2^3)$  und alle  $c_i ∈ \rm GF(2^3)$  auch durch  $m = 3 \ \rm Bit$  charakterisiert werden können, zum Beispiel  $\alpha^4$  durch „$110$”.  
 
  
Sie sollen in dieser Aufgabe für die binäre Eingangsfolge
+
# One can see from the above table that all  $u_i ∈ \rm GF(2^3)$  and all  $c_i ∈ \rm GF(2^3)$  can also be characterized by  $m = 3 \ \ \rm bits$,  for example  $\alpha^4$  by  "$110$".
:$$110 \hspace{0.09cm}001\hspace{0.09cm} 011\hspace{0.09cm} 000\hspace{0.09cm} 000\hspace{0.09cm} 000\hspace{0.09cm} 111 \hspace{0.05cm} \text{...} $$
+
# In this exercise,  you are to trace the encoding process for the binary input sequence
 +
::$$110 \hspace{0.09cm}001\hspace{0.09cm} 011\hspace{0.09cm} 000\hspace{0.09cm} 000\hspace{0.09cm} 000\hspace{0.09cm} 111 \hspace{0.05cm} \text{...} $$
  
den Codiervorgang nachvollziehen. Beachten Sie dabei:
+
Note that:
* Der Reed–Solomon–Coder arbeitet blockweise. Im ersten Codierschritt werden aus den drei ersten Informationssymbolen die Codesymbole  $c_0, \hspace{0.05cm} \text{...} \hspace{0.1cm} ,  c_6$  erzeugt, im zweiten Schritt dann aus dem Informationsblock  $\underline{u} = (u_3, \, u_4, \, u_5)$  die Symbole  $(c_7, \hspace{0.05cm} \text{...} \hspace{0.1cm} ,  c_{13})$  des zweiten Codewortes, usw.
+
* The Reed–Solomon coder works blockwise.  In the first coding step,  the code symbols   $c_0, \hspace{0.05cm} \text{...} \hspace{0.1cm} ,  c_6$   are generated,  then in the second step from the information block  $\underline{u} = (u_3, \, u_4, \, u_5)$  the symbols   $(c_7, \hspace{0.05cm} \text{...} \hspace{0.1cm} ,  c_{13})$   of the second code word, etc.
* Man beschreibt den Informationsblock  $\underline{u}$  durch das Polynom  $u(x) = u_0 + u_1 \cdot x + u_2 \cdot x^2$  vom Grad  $2$. Allgemein ergibt sich für das Galoisfeld  $\rm GF(2^m)$  der Grad des Polynoms zu  $m - 1$.
+
* One describes the information block  $\underline{u}$  by the polynomial   $u(x) = u_0 + u_1 \cdot x + u_2 \cdot x^2$   of degree  $2$.  In general,  for the Galois field  $\rm GF(2^m)$  the degree of the polynomial results to  $m - 1$.
* Die Codesymbole  $c_0, \hspace{0.05cm} \text{...} \hspace{0.1cm} , c_6$  erhält man, indem in das Polynom  $u(x)$  für  $x$  alle Elemente von  $\rm GF(2^3)$  mit Ausnahme des Nullelementes eingesetzt werden:
+
* The code symbols   $c_0, \hspace{0.05cm} \text{...} \hspace{0.1cm} , c_6$   are obtained by substituting into the polynomial  $u(x)$  for the parameter  $x$  all elements of  $\rm GF(2^3)$  except the zero element:
 
:$${\rm GF}(2^3)\hspace{-0.01cm}\setminus \hspace{-0.01cm}\{ 0\} = \{\hspace{0.1cm}\alpha^{0}\hspace{0.05cm},\hspace{0.1cm}
 
:$${\rm GF}(2^3)\hspace{-0.01cm}\setminus \hspace{-0.01cm}\{ 0\} = \{\hspace{0.1cm}\alpha^{0}\hspace{0.05cm},\hspace{0.1cm}
 
\alpha^1\hspace{0.05cm},\hspace{0.1cm} \alpha^{2}
 
\alpha^1\hspace{0.05cm},\hspace{0.1cm} \alpha^{2}
Line 36: Line 37:
 
\hspace{0.1cm}\}\hspace{0.05cm}. $$
 
\hspace{0.1cm}\}\hspace{0.05cm}. $$
  
Formal lässt sich der  $\rm RSC \, (7, \, 3, \, 5)_8$  wie folgt beschreiben:
+
*Formally, the  $\rm RSC \, (7, \, 3, \, 5)_8$  can be described as follows:
 
:$$C_{\rm RS} = \Big \{ \underline {c} =  \big ( u(\alpha^{0}) \hspace{0.05cm},\hspace{0.1cm} u(\alpha^{1})\hspace{0.05cm},\hspace{0.1cm}u(\alpha^{2})\hspace{0.1cm}  \big )
 
:$$C_{\rm RS} = \Big \{ \underline {c} =  \big ( u(\alpha^{0}) \hspace{0.05cm},\hspace{0.1cm} u(\alpha^{1})\hspace{0.05cm},\hspace{0.1cm}u(\alpha^{2})\hspace{0.1cm}  \big )
 
  \hspace{0.1cm} \big | \hspace{0.2cm} u(x) = \sum_{i = 0}^{2} u_i \cdot x^{i}\hspace{0.05cm},\hspace{0.2cm} u_i \in {\rm GF}(2^3)
 
  \hspace{0.1cm} \big | \hspace{0.2cm} u(x) = \sum_{i = 0}^{2} u_i \cdot x^{i}\hspace{0.05cm},\hspace{0.2cm} u_i \in {\rm GF}(2^3)
Line 44: Line 45:
  
  
 +
Hints:
 +
* This exercise belongs to the chapter  [[Channel_Coding/Definition_and_Properties_of_Reed-Solomon_Codes| "Definition and Properties of Reed–Solomon Codes"]].
  
 
+
* The  [[Aufgaben:Exercise_2.08:_Generator_Polynomials_for_Reed-Solomon|"Exercise 2.8"]]  is structured similarly to this one,  but  the generator matrix  $\mathbf{G}$  is then used to generate a code word  $\underline{c}$.
 
 
 
 
''Hinweise:''
 
* Die vorliegende Aufgabe gehört zum Kapitel  [[Channel_Coding/Definition_und_Eigenschaften_von_Reed%E2%80%93Solomon%E2%80%93Codes| Definition und Eigenschaften von Reed–Solomon–Codes]].
 
* Die  [[Aufgaben:Aufgabe_2.08:_Generatorpolynome_für_Reed-Solomon|Aufgabe 2.8]]  ist ähnlich strukturiert wie diese, aber zur Generierung eines Codewortes  $\underline{c}$  wird dann die Generatormatrix  $\mathbf{G}$  herangezogen.
 
  
  
Line 56: Line 54:
  
  
===Fragebogen===
+
===Questions===
 
<quiz display=simple>
 
<quiz display=simple>
{Wie lautet der binäre Informationsblock im ersten Codierschritt?
+
{What is the binary information block in the first coding step?
 
|type="()"}
 
|type="()"}
 
- $\underline{u}_{\rm bin} = (110)$,
 
- $\underline{u}_{\rm bin} = (110)$,
Line 64: Line 62:
 
- $\underline{u}_{\rm bin} = (110_|001_|0)$.
 
- $\underline{u}_{\rm bin} = (110_|001_|0)$.
  
{Wie lauten die Informationssymbole im ersten Codierschritt?
+
{What are the information symbols in the first coding step?
 
|type="[]"}
 
|type="[]"}
 
+ $u_0 = \alpha^4$,
 
+ $u_0 = \alpha^4$,
Line 73: Line 71:
 
- $u_2 = \alpha^2$.
 
- $u_2 = \alpha^2$.
  
{Wie lautet der Informationsblock als Polynom&nbsp; $u(x)$?
+
{What is the information block as a polynomial&nbsp; $u(x)$?
 
|type="()"}
 
|type="()"}
 
- $u(x) = \alpha^3 \cdot x + x^2 + \alpha^4 \cdot x^3$,
 
- $u(x) = \alpha^3 \cdot x + x^2 + \alpha^4 \cdot x^3$,
Line 79: Line 77:
 
+ $u(x) = \alpha^4 + x + \alpha^3 \cdot x^2$.
 
+ $u(x) = \alpha^4 + x + \alpha^3 \cdot x^2$.
  
{Wie lauten die Codesymbole&nbsp; $c_0, \hspace{0.05cm} \text{...} \hspace{0.1cm} ,\ c_6$&nbsp; für den ersten Codierschritt.
+
{What are the code symbols&nbsp; $c_0, \hspace{0.05cm} \text{...} \hspace{0.1cm} ,\ c_6$&nbsp; for the first coding step.
 
|type="[]"}
 
|type="[]"}
 
+ $c_0 = \alpha^2$,
 
+ $c_0 = \alpha^2$,
Line 89: Line 87:
 
+ $c_6 = 1$.
 
+ $c_6 = 1$.
  
{Wie lautet das binäre Codewort?  
+
{What is the binary code word?  
 
|type="()"}
 
|type="()"}
 
+ $\underline{c}_{\rm bin} = 100_|011_|011_|001_|110_|100_|001$,
 
+ $\underline{c}_{\rm bin} = 100_|011_|011_|001_|110_|100_|001$,
Line 95: Line 93:
 
- $\underline{c}_{\rm bin} = 100_|111_|0$.
 
- $\underline{c}_{\rm bin} = 100_|111_|0$.
  
{Welche Aussagen gelten für den zweiten Codierschritt?
+
{Which statements apply to the second coding step?
 
|type="[]"}
 
|type="[]"}
+ Es gilt&nbsp; $u_0 = u_1 = u_2 = 0$.
+
+ It holds&nbsp; $u_0 = u_1 = u_2 = 0$.
- Es gilt&nbsp; $u(x) = 1$.
+
- It holds&nbsp; $u(x) = 1$.
+ Das Codewort&nbsp; $\underline{c} &#8712; \rm GF(2^3)$&nbsp; besteht aus sieben Nullsymbolen.
+
+ The code word&nbsp; $\underline{c} &#8712; \rm GF(2^3)$&nbsp; consists of seven zero symbols.
+ Das binäre Codewort &nbsp; $\underline{c}_{\rm bin} &#8712; \rm GF(2)$&nbsp; besteht aus 21 Nullen.
+
+ The binary code word &nbsp; $\underline{c}_{\rm bin} &#8712; \rm GF(2)$&nbsp; consists of&nbsp; $21$&nbsp; zeros.
 
</quiz>
 
</quiz>
  
===Musterlösung===
+
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
'''(1)'''&nbsp; Richtig ist der <u>Lösungsvorschlag 2</u>:
+
'''(1)'''&nbsp; Correct is the&nbsp; <u>proposed solution 2</u>:
*Alle Informationssymbole entstammen hier dem Galoisfeld $\rm GF(2^3)$. In Binärschreibweise wird jedes Symbol durch drei Bit dargestellt.  
+
*All information symbols here come from the Galois field&nbsp; $\rm GF(2^3)$.&nbsp; In binary notation,&nbsp; each symbol is represented by three bits.
*Aufgrund des RS&ndash;Codeparameters $k = 3$ besteht ein Informationsblock aus drei Informationssymbolen: $\underline{u} = (u_0, \, u_1, \, u_2)$.  
+
*Dementsprechend beinhaltet der binäre Informationsblock $\underline{u}_{\rm bin}$ genau $3 \cdot 3 = 9$ Bit.
+
*Because of the Reed-Solomon code parameter&nbsp; $k = 3$,&nbsp; an information block consists of three information symbols:&nbsp; $\underline{u} = (u_0, \, u_1, \, u_2)$.
 +
 +
*Accordingly,&nbsp; the binary information block $\underline{u}_{\rm bin}$&nbsp; contains exactly &nbsp;$3 \cdot 3 = 9$&nbsp; bits.
  
  
'''(2)'''&nbsp; Entsprechend der Tabelle auf der Angabenseite besteht folgender Zusammenhang zwischen dem Koeffizientenvektor und der Exponentialdarstellung:
+
'''(2)'''&nbsp; According to the table on the information page,&nbsp; there is the following relationship between the coefficient vector and the exponential representation:
 
:$$(110)  \hspace{0.1cm} \Rightarrow  \hspace{0.2cm} u_0 = \alpha^{4}\hspace{0.05cm},\hspace{0.6cm}
 
:$$(110)  \hspace{0.1cm} \Rightarrow  \hspace{0.2cm} u_0 = \alpha^{4}\hspace{0.05cm},\hspace{0.6cm}
 
  (001) \hspace{0.1cm} \Rightarrow  \hspace{0.2cm} u_1 = \alpha^{0} = 1\hspace{0.05cm},\hspace{0.6cm}
 
  (001) \hspace{0.1cm} \Rightarrow  \hspace{0.2cm} u_1 = \alpha^{0} = 1\hspace{0.05cm},\hspace{0.6cm}
 
  (011) \hspace{0.1cm} \Rightarrow  \hspace{0.2cm} u_2 = \alpha^{3}\hspace{0.05cm}. $$
 
  (011) \hspace{0.1cm} \Rightarrow  \hspace{0.2cm} u_2 = \alpha^{3}\hspace{0.05cm}. $$
  
*Richtig sind also die <u>Lösungsvorschläge 1, 4 und 5</u>.  
+
*Correct  are the&nbsp; <u>proposed solutions 1, 4, and 5</u>.
*Der Informationsblock im ersten Codierschritt lautet $\underline{u} = (\alpha^4, \, 1, \, \alpha^3)$.
+
 +
*The information block in the first coding step is&nbsp; $\underline{u} = (\alpha^4, \, 1, \, \alpha^3)$.
  
  
  
'''(3)'''&nbsp; In Polynomdarstellung ergibt sich für den Informationsblock $\underline{u} = (\alpha^4, \, 1, \, \alpha^3)$:
+
'''(3)'''&nbsp; In polynomial representation,&nbsp; the information block&nbsp; $\underline{u} = (\alpha^4, \, 1, \, \alpha^3)$&nbsp; results in:
 
:$$u(x) =  u_0 + u_1 \cdot x + u_2 \cdot x^2 = \alpha^{4} + x + \alpha^{3}\cdot x^2 \hspace{0.05cm}. $$
 
:$$u(x) =  u_0 + u_1 \cdot x + u_2 \cdot x^2 = \alpha^{4} + x + \alpha^{3}\cdot x^2 \hspace{0.05cm}. $$
  
*Richtig ist demnach der <u>Lösungsvorschlag 3</u>.  
+
*Therefore the&nbsp; <u>proposed solution 3</u>&nbsp; is correct.
*Der erste Lösungsvorschlag kann schon allein deshalb nicht stimmen, da der Polynomgrad höchstens 2 sein kann, wenn alle Informations&ndash; und Codesymbole aus $\rm GF(2^3)$ entstammen.
+
 +
*The first proposed solution cannot be correct,&nbsp; since the polynomial degree can be at most&nbsp; $2$,&nbsp; if all information and code symbols originate from&nbsp; $\rm GF(2^3)$.
  
  
  
'''(4)'''&nbsp; Für die Codesymbole erhält man mit der Polynomdarstellung entsprechend der Angabenseite:
+
'''(4)'''&nbsp; For the code symbols you get with the polynomial representation according to the specification page:
 
:$$c_0 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u(x = \alpha^{0} = 1) =  \alpha^{4} + 1 + \alpha^{3}\cdot 1^2 =  
 
:$$c_0 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u(x = \alpha^{0} = 1) =  \alpha^{4} + 1 + \alpha^{3}\cdot 1^2 =  
 
(110) + (001) + (011)= (100) = \alpha^{2} \hspace{0.05cm},$$
 
(110) + (001) + (011)= (100) = \alpha^{2} \hspace{0.05cm},$$
Line 145: Line 147:
 
  (\alpha^{2} + \alpha) + (\alpha^2 +1) + \alpha = 1 \hspace{0.05cm}.$$
 
  (\alpha^{2} + \alpha) + (\alpha^2 +1) + \alpha = 1 \hspace{0.05cm}.$$
  
*Richtig sind also die <u>Lösungsvorschläge 1, 2, 3, 4, 7</u>.  
+
*So,&nbsp; correct  are the&nbsp; <u>proposed solutions 1, 2, 3, 4, 7</u>.
*Die Lösungen zu 5 und 6 sind genau vertauscht.
+
 +
*The solutions to 5 and 6 are exactly reversed.
  
  
  
'''(5)'''&nbsp; Richtig ist der <u>erste Lösungsvorschlag</u>:  
+
'''(5)'''&nbsp; The&nbsp; <u>first proposed solution</u>&nbsp; is correct:
*Dieser ergibt sich aus dem Ergebnis der Teilaufgabe '''(4)''' und der Zuordnung
+
*This results from the result of the subtask&nbsp; '''(4)'''&nbsp; and the assignment
 
:$$\alpha^2 &#8596 100, \ \alpha^3 &#8596 011, \ \alpha^3 &#8596 011, \ 1 &#8596 001, \ \alpha^4 &#8596 110, \ \alpha^2 &#8596 100, \ 1 &#8596 001. $$
 
:$$\alpha^2 &#8596 100, \ \alpha^3 &#8596 011, \ \alpha^3 &#8596 011, \ 1 &#8596 001, \ \alpha^4 &#8596 110, \ \alpha^2 &#8596 100, \ 1 &#8596 001. $$
*Der letzte Lösungsvorschlag kann schon allein deshalb nicht stimmen, da das binäre Codewort aus $n \cdot m = 7 \cdot 3 = 21$ Bit bestehen muss.
+
*The last proposed solution cannot be correct,&nbsp; since the binary code word must consist of&nbsp; $n \cdot m = 7 \cdot 3 = 21$&nbsp; bits.
* Selbst wenn Sie in der Teilaufgabe '''(4)''' nur das Ergebnis $c_0 = \alpha^2$ ermittelt haben, so wissen Sie schon, dass auch der Vorschlag 2 nicht der richtige sein kann.
+
 
 +
* Even if you have determined only the result&nbsp; $c_0 = \alpha^2$&nbsp; in the subtask&nbsp; '''(4)''',&nbsp; you already know that the second answer cannot be correct.
 +
 
  
  
 +
'''(6)'''&nbsp; The&nbsp; <u>statements 1, 3, 4</u>&nbsp; are correct:
 +
*The bits&nbsp; 10, ... , 18&nbsp; of the input sequence are all&nbsp; $0$&nbsp; and thus also the information symbols&nbsp; $u_0, \ u_1, \ u_2 &#8712; \rm GF(2^3)$.
  
'''(6)'''&nbsp; Die <u>Aussagen 1, 3, 4</u> sind richtig:
+
*Correspondingly,&nbsp; $u(x) = 0$,&nbsp; so that all code symbols&nbsp; $c_i = u(x = \alpha^i)$&nbsp; correspond to the zero symbol&nbsp; $($index: $0 &#8804; i &#8804; 6)$.
*Die Bit 10, ... , 18 der Eingangssequenz sind alle $0$ und damit auch die Informationssymbole $u_0, \ u_1, \ u_2 &#8712; \rm GF(2^3)$.
+
*Dementsprechend ist auch $u(x) = 0$, so dass alle Codesymbole $c_i = u(x = \alpha^i)$ dem Nullsymbol entsprechen (Index: $0 &#8804; i &#8804; 6$).  
+
*The binary code sequence thus consists of&nbsp; $n \cdot m = 21$&nbsp; "zeros".  
*Die binäre Codefolge besteht somit aus $n \cdot m = 21$ Nullen.
 
 
{{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 18:47, 7 October 2022

$\rm GF(2^3)$ representation as powers, polynomials, vectors

The Reed–Solomon code considered here,  denoted  $\rm RSC \, (7, \, 3, \, 5)_8$,

  • encodes a block of information  $\underline{u} = (u_0, \, u_1, \, u_2)$  of  $k = 3$  symbols,  where  $u_0, \, u_1, \, u_2 ∈ \rm GF(2^3)$  applies,  representing symbols rather than bits;
  • generates a code word   $\underline{c} = (c_0, \, c_1,\hspace{0.05cm} \text{...} \hspace{0.1cm} , c_6)$   of length  $n = 7$  with code symbols  $c_i$  also from the Galois field  $\rm GF(2^3)$;
  • has the free distance   $d_{\rm min} = n - k + 1 = 5$,  so that up to   $e = 4$   symbol errors can be detected and up to   $t = 2$   symbol errors can be corrected.


The elements of the underlying Galois field are:

$${\rm GF}(2^3) = \{\hspace{0.1cm} 0\hspace{0.05cm},\hspace{0.1cm} 1 \hspace{0.05cm},\hspace{0.1cm} \alpha\hspace{0.05cm},\hspace{0.1cm} \alpha^{2} \hspace{0.05cm},\hspace{0.1cm} \alpha^{3} \hspace{0.05cm},\hspace{0.1cm} \alpha^{4} \hspace{0.05cm},\hspace{0.1cm} \alpha^{5} \hspace{0.05cm},\hspace{0.1cm} \alpha^{6} \hspace{0.1cm}\}\hspace{0.05cm}. $$

These elements can also be represented as polynomials or as coefficient vectors according to the graphic.

  1. One can see from the above table that all  $u_i ∈ \rm GF(2^3)$  and all  $c_i ∈ \rm GF(2^3)$  can also be characterized by  $m = 3 \ \ \rm bits$,  for example  $\alpha^4$  by  "$110$".
  2. In this exercise,  you are to trace the encoding process for the binary input sequence
$$110 \hspace{0.09cm}001\hspace{0.09cm} 011\hspace{0.09cm} 000\hspace{0.09cm} 000\hspace{0.09cm} 000\hspace{0.09cm} 111 \hspace{0.05cm} \text{...} $$

Note that:

  • The Reed–Solomon coder works blockwise.  In the first coding step,  the code symbols   $c_0, \hspace{0.05cm} \text{...} \hspace{0.1cm} , c_6$   are generated,  then in the second step from the information block  $\underline{u} = (u_3, \, u_4, \, u_5)$  the symbols   $(c_7, \hspace{0.05cm} \text{...} \hspace{0.1cm} , c_{13})$   of the second code word, etc.
  • One describes the information block  $\underline{u}$  by the polynomial   $u(x) = u_0 + u_1 \cdot x + u_2 \cdot x^2$   of degree  $2$.  In general,  for the Galois field  $\rm GF(2^m)$  the degree of the polynomial results to  $m - 1$.
  • The code symbols   $c_0, \hspace{0.05cm} \text{...} \hspace{0.1cm} , c_6$   are obtained by substituting into the polynomial  $u(x)$  for the parameter  $x$  all elements of  $\rm GF(2^3)$  except the zero element:
$${\rm GF}(2^3)\hspace{-0.01cm}\setminus \hspace{-0.01cm}\{ 0\} = \{\hspace{0.1cm}\alpha^{0}\hspace{0.05cm},\hspace{0.1cm} \alpha^1\hspace{0.05cm},\hspace{0.1cm} \alpha^{2} \hspace{0.05cm},\hspace{0.1cm} \alpha^{3} \hspace{0.05cm},\hspace{0.1cm} \alpha^{4} \hspace{0.05cm},\hspace{0.1cm} \alpha^{5} \hspace{0.05cm},\hspace{0.1cm} \alpha^{6} \hspace{0.1cm}\}\hspace{0.05cm}. $$
  • Formally, the  $\rm RSC \, (7, \, 3, \, 5)_8$  can be described as follows:
$$C_{\rm RS} = \Big \{ \underline {c} = \big ( u(\alpha^{0}) \hspace{0.05cm},\hspace{0.1cm} u(\alpha^{1})\hspace{0.05cm},\hspace{0.1cm}u(\alpha^{2})\hspace{0.1cm} \big ) \hspace{0.1cm} \big | \hspace{0.2cm} u(x) = \sum_{i = 0}^{2} u_i \cdot x^{i}\hspace{0.05cm},\hspace{0.2cm} u_i \in {\rm GF}(2^3) \Big \} \hspace{0.05cm}.$$



Hints:

  • The  "Exercise 2.8"  is structured similarly to this one,  but the generator matrix  $\mathbf{G}$  is then used to generate a code word  $\underline{c}$.



Questions

1

What is the binary information block in the first coding step?

$\underline{u}_{\rm bin} = (110)$,
$\underline{u}_{\rm bin} = (110_|001_|011)$,
$\underline{u}_{\rm bin} = (110_|001_|0)$.

2

What are the information symbols in the first coding step?

$u_0 = \alpha^4$,
$u_0 = 0$,
$u_1 = \alpha^6$,
$u_1 = \alpha^0$,
$u_2 = \alpha^3$,
$u_2 = \alpha^2$.

3

What is the information block as a polynomial  $u(x)$?

$u(x) = \alpha^3 \cdot x + x^2 + \alpha^4 \cdot x^3$,
$u(x) = \alpha^3 + x + \alpha^4 \cdot x^2$,
$u(x) = \alpha^4 + x + \alpha^3 \cdot x^2$.

4

What are the code symbols  $c_0, \hspace{0.05cm} \text{...} \hspace{0.1cm} ,\ c_6$  for the first coding step.

$c_0 = \alpha^2$,
$c_1 = \alpha^3$,
$c_2 = \alpha^3$,
$c_3 = 1$,
$c_4 = \alpha^2$,
$c_5 = \alpha^4$,
$c_6 = 1$.

5

What is the binary code word?

$\underline{c}_{\rm bin} = 100_|011_|011_|001_|110_|100_|001$,
$\underline{c}_{\rm bin} = 011_|011_|001_|110_|100_|001_|100$,
$\underline{c}_{\rm bin} = 100_|111_|0$.

6

Which statements apply to the second coding step?

It holds  $u_0 = u_1 = u_2 = 0$.
It holds  $u(x) = 1$.
The code word  $\underline{c} ∈ \rm GF(2^3)$  consists of seven zero symbols.
The binary code word   $\underline{c}_{\rm bin} ∈ \rm GF(2)$  consists of  $21$  zeros.


Solution

(1)  Correct is the  proposed solution 2:

  • All information symbols here come from the Galois field  $\rm GF(2^3)$.  In binary notation,  each symbol is represented by three bits.
  • Because of the Reed-Solomon code parameter  $k = 3$,  an information block consists of three information symbols:  $\underline{u} = (u_0, \, u_1, \, u_2)$.
  • Accordingly,  the binary information block $\underline{u}_{\rm bin}$  contains exactly  $3 \cdot 3 = 9$  bits.


(2)  According to the table on the information page,  there is the following relationship between the coefficient vector and the exponential representation:

$$(110) \hspace{0.1cm} \Rightarrow \hspace{0.2cm} u_0 = \alpha^{4}\hspace{0.05cm},\hspace{0.6cm} (001) \hspace{0.1cm} \Rightarrow \hspace{0.2cm} u_1 = \alpha^{0} = 1\hspace{0.05cm},\hspace{0.6cm} (011) \hspace{0.1cm} \Rightarrow \hspace{0.2cm} u_2 = \alpha^{3}\hspace{0.05cm}. $$
  • Correct are the  proposed solutions 1, 4, and 5.
  • The information block in the first coding step is  $\underline{u} = (\alpha^4, \, 1, \, \alpha^3)$.


(3)  In polynomial representation,  the information block  $\underline{u} = (\alpha^4, \, 1, \, \alpha^3)$  results in:

$$u(x) = u_0 + u_1 \cdot x + u_2 \cdot x^2 = \alpha^{4} + x + \alpha^{3}\cdot x^2 \hspace{0.05cm}. $$
  • Therefore the  proposed solution 3  is correct.
  • The first proposed solution cannot be correct,  since the polynomial degree can be at most  $2$,  if all information and code symbols originate from  $\rm GF(2^3)$.


(4)  For the code symbols you get with the polynomial representation according to the specification page:

$$c_0 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u(x = \alpha^{0} = 1) = \alpha^{4} + 1 + \alpha^{3}\cdot 1^2 = (110) + (001) + (011)= (100) = \alpha^{2} \hspace{0.05cm},$$
$$c_1 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u(x = \alpha^{1}) = \alpha^{4} + \alpha + \alpha^{5}= (110) + (010) + (111) = (011) = \alpha^{3} \hspace{0.05cm},$$
$$c_2 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u(x = \alpha^{2}) = \alpha^{4} + \alpha^{2} + \alpha^{7}= (110) + (100) + (001) = (011) = \alpha^{3} \hspace{0.05cm},$$
$$c_3 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u(x = \alpha^{3}) = \alpha^{4} + \alpha^{3} + \alpha^{9}= (110) + (011) + (100) = (001) = 1 \hspace{0.05cm},$$
$$c_4 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u(x = \alpha^{4}) = \alpha^{4} + \alpha^{4} + \alpha^{11} = \alpha^{4} \hspace{0.05cm},$$
$$c_5 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u(x = \alpha^{5}) = \alpha^{4} + \alpha^{5} + \alpha^{13}= (110) + (111) + (101) = (100) = \alpha^{2} \hspace{0.05cm},$$
$$c_6 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u(x = \alpha^{6}) = \alpha^{4} + \alpha^{6} + \alpha^{15}= (\alpha^{2} + \alpha) + (\alpha^2 +1) + \alpha = 1 \hspace{0.05cm}.$$
  • So,  correct are the  proposed solutions 1, 2, 3, 4, 7.
  • The solutions to 5 and 6 are exactly reversed.


(5)  The  first proposed solution  is correct:

  • This results from the result of the subtask  (4)  and the assignment
$$\alpha^2 ↔ 100, \ \alpha^3 ↔ 011, \ \alpha^3 ↔ 011, \ 1 ↔ 001, \ \alpha^4 ↔ 110, \ \alpha^2 ↔ 100, \ 1 ↔ 001. $$
  • The last proposed solution cannot be correct,  since the binary code word must consist of  $n \cdot m = 7 \cdot 3 = 21$  bits.
  • Even if you have determined only the result  $c_0 = \alpha^2$  in the subtask  (4),  you already know that the second answer cannot be correct.


(6)  The  statements 1, 3, 4  are correct:

  • The bits  10, ... , 18  of the input sequence are all  $0$  and thus also the information symbols  $u_0, \ u_1, \ u_2 ∈ \rm GF(2^3)$.
  • Correspondingly,  $u(x) = 0$,  so that all code symbols  $c_i = u(x = \alpha^i)$  correspond to the zero symbol  $($index: $0 ≤ i ≤ 6)$.
  • The binary code sequence thus consists of  $n \cdot m = 21$  "zeros".