Difference between revisions of "Aufgaben:Exercise 2.14: Petersen Algorithm?"

From LNTwww
Line 1: Line 1:
{{quiz-Header|Buchseite=Kanalcodierung/Fehlerkorrektur nach Reed–Solomon–Codierung}}
+
{{quiz-Header|Buchseite=Channel_Coding/Error_Correction_According_to_Reed-Solomon_Coding}}
  
[[File: P_ID2580__KC_A_2_14_v1.png|right|frame|Grafik aus [Bos98]: <br>'''(1)''' &nbsp; Schneller Decodieralgorithmus für RS–Codes. <br>'''(2)''' &nbsp; Es ist somit nicht der Petersen&ndash;Algorithmus!]]
+
[[File: P_ID2580__KC_A_2_14_v1.png|right|frame|Grafik aus [Bos98]: <br>'''(1)''' &nbsp; Fast decoding algorithm for RS codes. <br>'''(2)''' &nbsp; It is therefore not the Petersen algorithm!]]
Im Kapitel&nbsp; [[Channel_Coding/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung|Fehlerkorrektur nach Reed–Solomon–Codierung]]&nbsp; wurde die Decodierung von Reed&ndash;Solomon&ndash;Codes mit dem <i>Petersen&ndash;Algorithmus</i>&nbsp; behandelt.
+
In the chapter&nbsp; [[Channel_Coding/Error_Correction_According_to_Reed-Solomon_Coding|"Error correction after Reed-Solomon coding"]]&nbsp; the decoding of Reed&ndash;Solomon codes with the <i>Petersen algorithm</i>&nbsp; was treated.
* Dessen Vorteil ist, dass die einzelnen Schritte nachvollziehbar sind.
+
* Its advantage is that the individual steps are traceable.
* Sehr von Nachteil ist aber der immens hohe Decodieraufwand.
+
* Very much of disadvantage is however the immensely high decoding expenditure.
  
  
Schon seit der Erfindung der Reed&ndash;Solomon&ndash;Codierung im Jahre 1960 beschäftigten sich viele Wissenschaftler und Ingenieure mit der Entwicklung möglichst schneller Algorithmen zur Reed&ndash;Solomon&ndash;Decodierung, und auch heute ist die <i>Algebraische Decodierung</i>&nbsp; noch ein hochaktuelles Forschungsgebiet.
+
Already since the invention of Reed&ndash;Solomon coding in 1960, many scientists and engineers were engaged in the development of algorithms for Reed&ndash;Solomon decoding as fast as possible, and even today <i>Algebraic Decoding</i>&nbsp; is still a highly topical field of research.
  
In dieser Aufgabe sollen einige diesbezügliche Begriffe erklärt werden. Auf eine genaue Erklärung dieser Verfahren wurde in&nbsp; $\rm LNTwww $&nbsp; verzichtet.
+
In this exercise, some related concepts will be explained. A detailed explanation of these procedures has been omitted in&nbsp; $\rm LNTwww $&nbsp;.
  
  
Line 15: Line 15:
  
  
''Hinweise:''
+
Hints:
 
* Die Aufgabe gehört zum Kapitel&nbsp; [[Channel_Coding/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung| Fehlerkorrektur nach Reed&ndash;Solomon&ndash;Codierung]].  
 
* Die Aufgabe gehört zum Kapitel&nbsp; [[Channel_Coding/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung| Fehlerkorrektur nach Reed&ndash;Solomon&ndash;Codierung]].  
 
* Die Grafik zeigt das Flussdiagramm eines der bekanntesten Verfahren zur Decodierung von Reed&ndash;Solomon&ndash;Codes. Um welchen Algorithmus es sich dabei handelt, wird in der Musterlösung zu dieser Aufgabe genannt.
 
* Die Grafik zeigt das Flussdiagramm eines der bekanntesten Verfahren zur Decodierung von Reed&ndash;Solomon&ndash;Codes. Um welchen Algorithmus es sich dabei handelt, wird in der Musterlösung zu dieser Aufgabe genannt.
Line 22: Line 22:
  
  
===Fragebogen===
+
===Questions===
 
<quiz display=simple>
 
<quiz display=simple>
{Bei welchen Codes wird die Syndromdecodierung eingesetzt? Bei
+
{For which codes is syndrome decoding used? For
 
|type="[]"}
 
|type="[]"}
+ binären Blockcodes,
+
+ binary block codes,
- Reed&ndash;Solomon&ndash;Codes,
+
- Reed&ndash;Solomon codes,
- Faltungscodes.
+
- convolutional codes.
  
{Was ist beim Petersen&ndash;Algorithmus am aufwändigsten?
+
{What is most complex in the Petersen algorithm?
 
|type="()"}
 
|type="()"}
- Überprüfung, ob überhaupt (ein oder mehrere) Fehler vorliegen,
+
- Checking if there are (one or more) errors at all,
+ die Lokalisierung der Fehler,
+
+ the localization of the errors,
- die Fehlerwertbestimmung.
+
- the determination of the error value.
  
{Welche Begriffe beziehen sich auf die Reed&ndash;Solomon&ndash;Decodierung?
+
{Which terms refer to Reed&ndash;Solomon decoding?
 
|type="[]"}
 
|type="[]"}
+ Der Berlekamp&ndash;Massey&ndash;Algorithmus,
+
+ The Berlekamp&ndash;Massey algorithm,
- der BCJR&ndash;Algorithmus,
+
- the BCJR algorithm,
+ der Euklidische Algorithmus,
+
+ the Euclidean algorithm,
+ Frequenzbereichsverfahren, basierend auf der DFT,
+
+ frequency domain methods based on the DFT,
- der Viterbi&ndash;Algorithmus.
+
- the Viterbi algorithm.
 
</quiz>
 
</quiz>
  
===Musterlösung===
+
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
'''(1)'''&nbsp; Richtig ist die <u>Antwort 1</u>:  
+
'''(1)'''&nbsp; Correct is the <u>answer 1</u>:  
*Prinzipiell wäre ein Syndromdecoder auch bei RS&ndash;Codes möglich, aber bei den hier üblichen großen Codewortlängen $n$ ergäben sich extrem lange Decodierzeiten.  
+
*In principle, a syndrome decoder would also be possible with RS codes, but with the large codeword lengths $n$ common here, extremely long decoding times would result.  
*Bei Faltungscodes (diese arbeiten seriell) macht Syndromdecodierung gar keinen Sinn.
+
*For convolutional codes (these work serially) syndrome decoding makes no sense at all.
  
  
  
'''(2)'''&nbsp; Wie aus den Ausführungen im Theorieteil hervorgeht, ist die Fehlerlokalisierung mit dem weitaus größten Aufwand verbunden &nbsp; &#8658; &nbsp; <u>Antwort 2</u>.
+
'''(2)'''&nbsp; As can be seen from the discussion in the theory section, error localization involves by far the greatest effort &nbsp; &#8658; &nbsp; <u>Answer 2</u>.
  
  
  
'''(3)'''&nbsp; Richtig sind die <u>Antworten 1, 3 und 4</u>:  
+
'''(3)'''&nbsp; Correct <u>answers 1, 3, and 4</u>:  
*Diese Verfahren sind auf der Seite [[Channel_Coding/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung#Schnelle_Reed.E2.80.93Solomon.E2.80.93Decodierung| Schnelle Reed&ndash;Solomon&ndash;Decodierung]] zusammengefasst.  
+
*These procedures are summarized on the [[Channel_Coding/Error_Correction_According_to_Reed-Solomon_Coding#Fast_Reed-Solomon_decoding| "Fast Reed&ndash;Solomon decoding"]] page.  
*Der BCJR&ndash; und der Viterbi&ndash;Algorithmus beziehen sich dagegen auf die [[Channel_Coding/Decodierung_von_Faltungscodes|Decodierung von Faltungscodes]].
+
*The BCJR&ndash; and Viterbi algorithms, on the other hand, refer to [[Channel_Coding/Decoding_of_Convolutional_Codes|"Decoding of convolutional codes"]].
*Die Grafik auf der Angabenseite zeigt den Berlekamp&ndash;Massey&ndash;Algorithus (BMA).  
+
*The graphic on the information page shows the Berlekamp&ndash;Massey algorithm (BMA).  
*Die Erklärung zu dieser Abbildung finden Sie im Fachbuch  [Bos98]: "Bossert, M.: Kanalcodierung. Stuttgart: B. G. Teubner, 1998" ab Seite 73.
+
*The explanation of this figure can be found in the reference book [Bos98]: "Bossert, M.: Kanalcodierung. Stuttgart: B. G. Teubner, 1998" from page 73.
 
{{ML-Fuß}}
 
{{ML-Fuß}}
  

Revision as of 19:02, 12 September 2022

Grafik aus [Bos98]:
(1)   Fast decoding algorithm for RS codes.
(2)   It is therefore not the Petersen algorithm!

In the chapter  "Error correction after Reed-Solomon coding"  the decoding of Reed–Solomon codes with the Petersen algorithm  was treated.

  • Its advantage is that the individual steps are traceable.
  • Very much of disadvantage is however the immensely high decoding expenditure.


Already since the invention of Reed–Solomon coding in 1960, many scientists and engineers were engaged in the development of algorithms for Reed–Solomon decoding as fast as possible, and even today Algebraic Decoding  is still a highly topical field of research.

In this exercise, some related concepts will be explained. A detailed explanation of these procedures has been omitted in  $\rm LNTwww $ .



Hints:

  • Die Aufgabe gehört zum Kapitel  Fehlerkorrektur nach Reed–Solomon–Codierung.
  • Die Grafik zeigt das Flussdiagramm eines der bekanntesten Verfahren zur Decodierung von Reed–Solomon–Codes. Um welchen Algorithmus es sich dabei handelt, wird in der Musterlösung zu dieser Aufgabe genannt.
  • Die Grafik wurde dem Fachbuch [Bos98]:   "Bossert, M.: Kanalcodierung. Stuttgart: B. G. Teubner, 1998" entnommen. Wir danken dem Autor Martin Bossert für die Erlaubnis, die Grafik verwenden zu dürfen.


Questions

1

For which codes is syndrome decoding used? For

binary block codes,
Reed–Solomon codes,
convolutional codes.

2

What is most complex in the Petersen algorithm?

Checking if there are (one or more) errors at all,
the localization of the errors,
the determination of the error value.

3

Which terms refer to Reed–Solomon decoding?

The Berlekamp–Massey algorithm,
the BCJR algorithm,
the Euclidean algorithm,
frequency domain methods based on the DFT,
the Viterbi algorithm.


Solution

(1)  Correct is the answer 1:

  • In principle, a syndrome decoder would also be possible with RS codes, but with the large codeword lengths $n$ common here, extremely long decoding times would result.
  • For convolutional codes (these work serially) syndrome decoding makes no sense at all.


(2)  As can be seen from the discussion in the theory section, error localization involves by far the greatest effort   ⇒   Answer 2.


(3)  Correct answers 1, 3, and 4:

  • These procedures are summarized on the "Fast Reed–Solomon decoding" page.
  • The BCJR– and Viterbi algorithms, on the other hand, refer to "Decoding of convolutional codes".
  • The graphic on the information page shows the Berlekamp–Massey algorithm (BMA).
  • The explanation of this figure can be found in the reference book [Bos98]: "Bossert, M.: Kanalcodierung. Stuttgart: B. G. Teubner, 1998" from page 73.