Difference between revisions of "Aufgaben:Exercise 2.10Z: Code Rate and Minimum Distance"
Line 10: | Line 10: | ||
* $k$ gibt die Dimension an (Symbolanzahl eines Informationsblocks), | * $k$ gibt die Dimension an (Symbolanzahl eines Informationsblocks), | ||
* $d_{\rm min}$ bezeichnet die minimale Distanz zwischen zwei Codeworten. Für die Reed–Solomon–Codes gilt $d_{\rm min} = n - k + 1$. | * $d_{\rm min}$ bezeichnet die minimale Distanz zwischen zwei Codeworten. Für die Reed–Solomon–Codes gilt $d_{\rm min} = n - k + 1$. | ||
− | *Mit keinem anderen Code mit gleichem $k$ und $ | + | *Mit keinem anderen Code mit gleichem $k$ und $n$ ergibt sich ein größerer Wert. |
Line 50: | Line 50: | ||
===Musterlösung=== | ===Musterlösung=== | ||
{{ML-Kopf}} | {{ML-Kopf}} | ||
− | '''(1)''' Aus der Codelänge $n = 255$ folgt $q \ \underline{= 256}$. | + | '''(1)''' Aus der Codelänge $n = 255$ folgt $q \ \underline{= 256}$. |
− | |||
− | |||
− | Die minimale Distanz beträgt | + | Die Coderate ergibt sich zu $R = {223}/{255} \hspace{0.15cm}\underline {=0.8745}\hspace{0.05cm}.$ |
− | + | ||
− | \hspace{0.15cm}\underline {=33}\hspace{0.05cm}. | + | Die minimale Distanz beträgt $d_{\rm min} = n - k +1 = 255 - 223 +1 |
+ | \hspace{0.15cm}\underline {=33}\hspace{0.05cm}.$ | ||
Damit können | Damit können | ||
− | * $e = d_{\rm min} - 1 \ \underline{= 32}$ Symbolfehler erkannt werden, | + | * $e = d_{\rm min} - 1 \ \underline{= 32}$ Symbolfehler erkannt werden, und |
* $t = e/2$ (abgerundet), also $\underline{t = 16}$ Symbolfehler korrigiert werden. | * $t = e/2$ (abgerundet), also $\underline{t = 16}$ Symbolfehler korrigiert werden. | ||
− | '''(2)''' | + | '''(2)''' Der Code $\rm RSC \, (2040, \, 1784, \, d_{\rm min})_2$ ist die Binärrepräsentation des unter (1) behandelten ${\rm RSC} \, (255, \, 223, \, 33)_{256}$ mit genau der gleichen Coderate $R \ \underline{= 0.8745}$ und ebenfalls gleicher Minimaldistanz $d_{\rm min} \ \underline{= 33}$ wie dieser. Hier werden pro Codesymbol $8$ Bit (1 Byte) verwendet. |
− | '''(3)''' Aus $d_{\rm min} = 33$ folgt wieder $t = 16 \ \Rightarrow \ N_{ | + | '''(3)''' Aus $d_{\rm min} = 33$ folgt wieder $t = 16 \ \Rightarrow \ N_{3} \ \underline{= 16}$. |
+ | *Ist in jedem Codesymbol genau ein Bit verfälscht, so bedeutet dies gleichzeitig auch 16 Symbolfehler. | ||
+ | *Dies ist der maximale Wert, den der Reed–Solomon–Decoder noch verkraften kann. | ||
− | '''(4)''' Der RS–Decoder kann 16 verfälschte Codesymbole korrigieren, wobei es egal ist, ob in einem Codesymbol nur ein Bit oder alle $m = 8 | + | '''(4)''' Der RS–Decoder kann 16 verfälschte Codesymbole korrigieren, wobei es egal ist, ob in einem Codesymbol nur ein Bit oder alle $m = 8$ Bit verfälscht wurden. Deshalb können bei der günstigsten Fehlerverteilung bis zu $N_4 = 8 \cdot 16 \ \underline{= 128}$ Bit verfälscht sein, ohne dass das Codewort falsch decodiert wird. |
{{ML-Fuß}} | {{ML-Fuß}} | ||
Revision as of 15:57, 10 January 2018
Die von Irving Story Reed und Gustav Solomon Anfang der 1960er Jahre entwickelten Codes werden in diesem Tutorial wie folgt mit ${\rm RSC} \, (n, \, k, \, d_{\rm min}) _q.$ bezeichnet.
Die Codeparameter haben folgende Bedeutungen:
- $q = 2^m$ ist ein Hinweis auf die Größe des Galoisfeldes ⇒ ${\rm GF}(q)$,
- $n = q - 1$ ist die Codelänge (Symbolanzahl eines Codewortes),
- $k$ gibt die Dimension an (Symbolanzahl eines Informationsblocks),
- $d_{\rm min}$ bezeichnet die minimale Distanz zwischen zwei Codeworten. Für die Reed–Solomon–Codes gilt $d_{\rm min} = n - k + 1$.
- Mit keinem anderen Code mit gleichem $k$ und $n$ ergibt sich ein größerer Wert.
Hinweise:
- Die Aufgabe gehört zum Kapitel Definition und Eigenschaften von Reed–Solomon–Codes.
- Die für diese Aufgabe relevanten Informationen finden Sie am Ende des Theorieteils, nämlich auf der Seite Codebezeichnung und Coderate.
- Sollte die Eingabe des Zahlenwertes „0” erforderlich sein, so geben Sie bitte „0.” ein.
Fragebogen
Musterlösung
Die Coderate ergibt sich zu $R = {223}/{255} \hspace{0.15cm}\underline {=0.8745}\hspace{0.05cm}.$
Die minimale Distanz beträgt $d_{\rm min} = n - k +1 = 255 - 223 +1 \hspace{0.15cm}\underline {=33}\hspace{0.05cm}.$
Damit können
- $e = d_{\rm min} - 1 \ \underline{= 32}$ Symbolfehler erkannt werden, und
- $t = e/2$ (abgerundet), also $\underline{t = 16}$ Symbolfehler korrigiert werden.
(2) Der Code $\rm RSC \, (2040, \, 1784, \, d_{\rm min})_2$ ist die Binärrepräsentation des unter (1) behandelten ${\rm RSC} \, (255, \, 223, \, 33)_{256}$ mit genau der gleichen Coderate $R \ \underline{= 0.8745}$ und ebenfalls gleicher Minimaldistanz $d_{\rm min} \ \underline{= 33}$ wie dieser. Hier werden pro Codesymbol $8$ Bit (1 Byte) verwendet.
(3) Aus $d_{\rm min} = 33$ folgt wieder $t = 16 \ \Rightarrow \ N_{3} \ \underline{= 16}$.
- Ist in jedem Codesymbol genau ein Bit verfälscht, so bedeutet dies gleichzeitig auch 16 Symbolfehler.
- Dies ist der maximale Wert, den der Reed–Solomon–Decoder noch verkraften kann.
(4) Der RS–Decoder kann 16 verfälschte Codesymbole korrigieren, wobei es egal ist, ob in einem Codesymbol nur ein Bit oder alle $m = 8$ Bit verfälscht wurden. Deshalb können bei der günstigsten Fehlerverteilung bis zu $N_4 = 8 \cdot 16 \ \underline{= 128}$ Bit verfälscht sein, ohne dass das Codewort falsch decodiert wird.