Aufgaben:Aufgabe 2.12: Decodierung beim RSC (7, 4, 4) zur Basis 8: Unterschied zwischen den Versionen
Tasnad (Diskussion | Beiträge) K (Textersetzung - „* Sollte die Eingabe des Zahlenwertes „0” erforderlich sein, so geben Sie bitte „0.” ein. “ durch „“) |
|||
Zeile 1: | Zeile 1: | ||
{{quiz-Header|Buchseite=Kanalcodierung/Fehlerkorrektur nach Reed–Solomon–Codierung}} | {{quiz-Header|Buchseite=Kanalcodierung/Fehlerkorrektur nach Reed–Solomon–Codierung}} | ||
− | [[Datei:P_ID2553__KC_A_2_12_neu.png|right|frame|ELP–Belegungsschemata für $r = 1, \ r = 2, \ r = 3$]] | + | [[Datei:P_ID2553__KC_A_2_12_neu.png|right|frame|ELP–Belegungsschemata für $r = 1, \ r = 2, \ r = 3$]] |
− | Wir analysieren den Peterson–Algorithmus, der im Abschnitt [[Kanalcodierung/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung#Vorgehensweise_beim_.E2.80.9EBounded_Distance_Decoding.E2.80.9D| Vorgehensweise beim „Bounded Distance Decoding& | + | Wir analysieren den Peterson–Algorithmus, der im Abschnitt [[Kanalcodierung/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung#Vorgehensweise_beim_.E2.80.9EBounded_Distance_Decoding.E2.80.9D| Vorgehensweise beim „Bounded Distance Decoding]] ausführlich dargelegt ist. Vorausgesetzt wird der Reed–Solomon–Code mit den Parametern $n = 7, \ k = 4$ und $d_{\rm min} = 4$, wobei alle Codesymbole aus $\rm GF(2^3)$ stammen und alle Rechenoperationen demzufolge ebenfalls in $\rm GF(2^3)$ durchzuführen sind. |
Die Prüfmatrix dieses Codes lautet: | Die Prüfmatrix dieses Codes lautet: | ||
Zeile 12: | Zeile 12: | ||
\end{pmatrix} \hspace{0.05cm}.$$ | \end{pmatrix} \hspace{0.05cm}.$$ | ||
− | Im [[Kanalcodierung/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung#Schritt_.28A.29:_Auswertung_des_Syndroms_beim_BDD|Schritt | + | Im [[Kanalcodierung/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung#Schritt_.28A.29:_Auswertung_des_Syndroms_beim_BDD|Schritt $\rm (A)$]] des hier betrachteten Decodier–Algorithmus' muss das Syndrom $\underline{s} = \underline{y} \cdot \mathbf{H}^{\rm T}$ berechnet werden. Für das hier vorausgesetzte Empfangswort $\underline{y} = (\alpha^1, \, 0, \, \alpha^3, \, 0, \, 1, \, \alpha, \, 0)$ ergibt sich das Syndrom zu $\underline{s} = (\alpha^4, \, \alpha^5, \, \alpha^6)$, wie in der [[Aufgaben:Aufgabe_2.12Z:_Reed–Solomon–Syndromberechnung|Aufgabe 2.12Z]] noch gezeigt wird. |
− | Danach müssen die [[Kanalcodierung/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung#Schritt_.28D.29:_Abschlie.C3.9Fende_Fehlerkorrektur|ELP–Koeffizientenvektoren]] gemäß der nebenstehenden Abbildung aufgestellt und ausgewertet werden, wobei die Belegung davon abhängt, ob man von $r = 1, \ r = 2$ oder $r = 3$ Symbolfehlern im Empfangswort ausgeht. „ELP” steht für ''Error Locator Polynom''. | + | Danach müssen die [[Kanalcodierung/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung#Schritt_.28D.29:_Abschlie.C3.9Fende_Fehlerkorrektur|ELP–Koeffizientenvektoren]] gemäß der nebenstehenden Abbildung aufgestellt und ausgewertet werden, wobei die Belegung davon abhängt, ob man von $r = 1, \ r = 2$ oder $r = 3$ Symbolfehlern im Empfangswort ausgeht. „ELP” steht für ''Error Locator Polynom''. |
− | Sind für die angenommene Symbolfehlerzahl $r$ alle Gleichungen ${\it \underline{\Lambda}}_l \cdot \underline{s}^{\rm T} = 0$ erfüllt, so weist das Empfangswort $\underline{y}$ tatsächlich genau $r$ Symbolfehler auf. | + | Sind für die angenommene Symbolfehlerzahl $r$ alle Gleichungen ${\it \underline{\Lambda}}_l \cdot \underline{s}^{\rm T} = 0$ erfüllt, so weist das Empfangswort $\underline{y}$ tatsächlich genau $r$ Symbolfehler auf. |
Die weiteren Schritte können Sie dem Theorieteil entnehmen: | Die weiteren Schritte können Sie dem Theorieteil entnehmen: | ||
− | * Schritt | + | * Schritt $\rm (C)$: [[Kanalcodierung/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung#Schritt_.28C.29:_Lokalisierung_der_Fehlerstellen|Lokalisierung der Fehlerpositionen]], |
− | * Schritt | + | * Schritt $\rm (D)$: [[Kanalcodierung/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung#Schritt_.28D.29:_Abschlie.C3.9Fende_Fehlerkorrektur|Ermittlung der Fehlerwerte]]. |
− | '' | + | |
− | * Die Aufgabe bezieht sich auf das Kapitel [[Kanalcodierung/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung| Fehlerkorrektur nach Reed–Solomon–Codierung]]. | + | |
+ | |||
+ | |||
+ | ''Hinweis:'' | ||
+ | * Die Aufgabe bezieht sich auf das Kapitel [[Kanalcodierung/Fehlerkorrektur_nach_Reed%E2%80%93Solomon%E2%80%93Codierung| Fehlerkorrektur nach Reed–Solomon–Codierung]]. | ||
Zeile 33: | Zeile 37: | ||
<quiz display=simple> | <quiz display=simple> | ||
{Welche Belegungsschemata sind für diese Aufgabe relevant? | {Welche Belegungsschemata sind für diese Aufgabe relevant? | ||
− | |type=" | + | |type="()"} |
− | + Das blau hinterlegte Schema $(r = 1)$. | + | + Das blau hinterlegte Schema $(r = 1)$. |
− | - Das rot hinterlegte Schema $(r = 2)$. | + | - Das rot hinterlegte Schema $(r = 2)$. |
− | - Das grün hinterlegte Schema $(r = 3)$. | + | - Das grün hinterlegte Schema $(r = 3)$. |
− | {Wie groß ist die Länge $L$ der ELP–Koeffizientenvektoren ${\it \underline{\Lambda}}_l$? | + | {Wie groß ist die Länge $L$ der ELP–Koeffizientenvektoren ${\it \underline{\Lambda}}_l$? |
|type="{}"} | |type="{}"} | ||
$L \ = \ ${ 3 3% } | $L \ = \ ${ 3 3% } | ||
− | {Wieviele solcher Vektoren ${\it \underline{\Lambda}}_l$ mit Index $l = 1, \ ... \ , \ l_{\rm max}$ gibt es? | + | {Wieviele solcher Vektoren ${\it \underline{\Lambda}}_l$ mit Index $l = 1, \ ... \ , \ l_{\rm max}$ gibt es? |
|type="{}"} | |type="{}"} | ||
$l_{\rm max} \ = \ ${ 2 3% } | $l_{\rm max} \ = \ ${ 2 3% } | ||
− | {Das Syndrom ergibt sich zu $\underline{s} = (\alpha^4, \, \alpha^5, \, \alpha^6)$. Ist die Decodierung erfolgreich? | + | {Das Syndrom ergibt sich zu $\underline{s} = (\alpha^4, \, \alpha^5, \, \alpha^6)$. Ist die Decodierung erfolgreich? |
|type="()"} | |type="()"} | ||
+ JA. | + JA. | ||
- NEIN. | - NEIN. | ||
− | { | + | {Welches Symbol wurde verfälscht? |
− | |type=" | + | |type="()"} |
− | - Symbol 0, | + | - Das Symbol 0, |
− | + Symbol 1, | + | + das Symbol 1, |
− | - Symbol 6. | + | - das Symbol 6. |
− | {Geben Sie den Wert des verfälschten Symbols $e_i ≠ 0$ an. | + | {Geben Sie den Wert des verfälschten Symbols $e_i ≠ 0$ an. |
|type="()"} | |type="()"} | ||
- $e_i = \alpha^2$, | - $e_i = \alpha^2$, | ||
Zeile 63: | Zeile 67: | ||
- $e_i = 1$. | - $e_i = 1$. | ||
− | {Das Syndrom sei nun $\underline{s} = (\alpha^2, \, \alpha^4, \, \alpha^5)$. Ist damit die Decodierung erfolgreich? | + | {Das Syndrom sei nun $\underline{s} = (\alpha^2, \, \alpha^4, \, \alpha^5)$. Ist damit die Decodierung erfolgreich? |
|type="()"} | |type="()"} | ||
- JA. | - JA. |
Version vom 29. Mai 2019, 12:27 Uhr
Wir analysieren den Peterson–Algorithmus, der im Abschnitt Vorgehensweise beim „Bounded Distance Decoding ausführlich dargelegt ist. Vorausgesetzt wird der Reed–Solomon–Code mit den Parametern $n = 7, \ k = 4$ und $d_{\rm min} = 4$, wobei alle Codesymbole aus $\rm GF(2^3)$ stammen und alle Rechenoperationen demzufolge ebenfalls in $\rm GF(2^3)$ durchzuführen sind.
Die Prüfmatrix dieses Codes lautet:
- $${ \boldsymbol{\rm H}} = \begin{pmatrix} 1 & \alpha^1 & \alpha^2 & \alpha^3 & \alpha^4 & \alpha^5 & \alpha^6\\ 1 & \alpha^2 & \alpha^4 & \alpha^6 & \alpha^1 & \alpha^{3} & \alpha^{5}\\ 1 & \alpha^3 & \alpha^6 & \alpha^2 & \alpha^{5} & \alpha^{1} & \alpha^{4} \end{pmatrix} \hspace{0.05cm}.$$
Im Schritt $\rm (A)$ des hier betrachteten Decodier–Algorithmus' muss das Syndrom $\underline{s} = \underline{y} \cdot \mathbf{H}^{\rm T}$ berechnet werden. Für das hier vorausgesetzte Empfangswort $\underline{y} = (\alpha^1, \, 0, \, \alpha^3, \, 0, \, 1, \, \alpha, \, 0)$ ergibt sich das Syndrom zu $\underline{s} = (\alpha^4, \, \alpha^5, \, \alpha^6)$, wie in der Aufgabe 2.12Z noch gezeigt wird.
Danach müssen die ELP–Koeffizientenvektoren gemäß der nebenstehenden Abbildung aufgestellt und ausgewertet werden, wobei die Belegung davon abhängt, ob man von $r = 1, \ r = 2$ oder $r = 3$ Symbolfehlern im Empfangswort ausgeht. „ELP” steht für Error Locator Polynom.
Sind für die angenommene Symbolfehlerzahl $r$ alle Gleichungen ${\it \underline{\Lambda}}_l \cdot \underline{s}^{\rm T} = 0$ erfüllt, so weist das Empfangswort $\underline{y}$ tatsächlich genau $r$ Symbolfehler auf.
Die weiteren Schritte können Sie dem Theorieteil entnehmen:
- Schritt $\rm (C)$: Lokalisierung der Fehlerpositionen,
- Schritt $\rm (D)$: Ermittlung der Fehlerwerte.
Hinweis:
- Die Aufgabe bezieht sich auf das Kapitel Fehlerkorrektur nach Reed–Solomon–Codierung.
Fragebogen
Musterlösung
- Der betrachtete Reed–Solomon–Code $(7, \, 4, \, 4)_8$ kann wegen $d_{\rm min} = 4$ nur $t = ⌊(d_{\rm min} - 1)/2⌋ = 1$ Symbolfehler korrigieren.
- Relevant ist also nur das blau hinterlegte Schema, das für den Fall gilt, dass es genau einen Symbolfehler im Empfangswort gibt $(r = 1)$.
(2) Entsprechend der Grafik auf der Angabenseite besitzt der Vektor ${\it \underline{\Lambda}}_l$ hier $L = n - k \ \underline{= 3}$ Elemente.
(3) Es gibt nur die beiden ELP–Koeffizientenvektoren ${\it \underline{\Lambda}}_1 = (\lambda_0, \, 1, \, 0)$ und ${\it \underline{\Lambda}}_2 = (0, \, \lambda_0, \, 1) \ \Rightarrow \ l_{\rm max} \ \underline{= 2}$.
(4) Aus ${\it \underline{\Lambda}}_1$ und ${\it \underline{\Lambda}}_2$ ergeben sich zwei skalare Bestimmungsgleichungen ${\it \underline{\Lambda}}_l \cdot \underline{s}^{\rm T} = 0$ für den Parameter $\lambda_0$:
- $$\lambda_0 \cdot \alpha^4 + \alpha^5 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} 0 \hspace{0.3cm} \Rightarrow \hspace{0.3cm} \lambda_0 \cdot \alpha^4 = -\alpha^5 = \alpha^5 \hspace{0.3cm} \Rightarrow \hspace{0.3cm} \lambda_0 = \alpha \hspace{0.05cm},$$
- $$\lambda_0 \cdot \alpha^5 + \alpha^6 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} 0 \hspace{0.3cm} \Rightarrow \hspace{0.3cm} \lambda_0 = \alpha \hspace{0.05cm}.$$
Das Gleichungssystem ist eindeutig lösbar ⇒ Antwort JA.
(5) Mit dem Ergebnis der Teilaufgabe (4) ⇒ $\lambda_0 = \alpha$ erhält man für das Error Locator Polynom
- $${\it \Lambda}(x)=x \cdot \big ({\it \lambda}_0 + x \big ) =x \cdot \big (\alpha + x )$$
- $$\Rightarrow \hspace{0.3cm} {\it \Lambda}(\alpha^0 )\hspace{-0.15cm} \ = \ \hspace{-0.15cm} 1 \cdot \big ( \alpha + 1 \big ) = \alpha + 1 \ne 0 \hspace{0.3cm} \Rightarrow \hspace{0.3cm}{\rm Keine\hspace{0.15cm} Nullstelle}\hspace{0.05cm},$$
- $$\hspace{0.875cm} {\it \Lambda}(\alpha^1)\hspace{-0.15cm} \ = \ \hspace{-0.15cm}\alpha \cdot \big (\alpha + \alpha\big ) = 0 \hspace{0.3cm} \Rightarrow \hspace{0.3cm}{ \boldsymbol{\rm Nullstelle}}\hspace{0.05cm}.$$
Verfälscht wurde also das Symbol an der Position 1 ⇒ Lösungsvorschlag 2. Da die Berechnung in der Teilaufgabe (4) unter der Bedingung $r = 1$ erfolgte, wurden alle anderen Symbole richtig übertragen:
- $$\underline {e} = (0, e_1, 0, 0, 0, 0, 0)\hspace{0.05cm}. $$
(6) Aus der Bedingung $\underline{e} \cdot \mathbf{H}^{\rm T} = \underline{s}^{\rm T}$ folgt
- $$(0, e_1, 0, 0, 0, 0, 0) \cdot \begin{pmatrix} 1 & 1 & 1 \\ \alpha^1 & \alpha^2 & \alpha^3 \\ \alpha^2 & \alpha^4 & \alpha^6 \\ \alpha^3 & \alpha^6 & \alpha^9 \\ \alpha^4 & \alpha^8 & \alpha^{12} \\ \alpha^5 & \alpha^{10} & \alpha^{15} \\ \alpha^6 & \alpha^{12} & \alpha^{18} \end{pmatrix} \hspace{0.15cm}\stackrel{!}{=} \hspace{0.15cm} \begin{pmatrix} \alpha^4\\ \alpha^5\\ \alpha^6 \end{pmatrix} $$
- $$\Rightarrow \hspace{0.3cm} e_1 \cdot \alpha = \alpha^4\hspace{0.05cm},\hspace{0.4cm} e_1 \cdot \alpha^2 = \alpha^5\hspace{0.05cm},\hspace{0.4cm} e_1 \cdot \alpha^3 = \alpha^6\hspace{0.05cm}. $$
- Die Lösung führt stets zum Ergebnis $e_1 = \alpha^3$ ⇒ Antwort 2.
- Mit dem Empfangswort $\underline{y} = (\alpha^1, \, 0, \, \alpha^3, \, 0, \, 1, \, \alpha^1, \, 0)$ erhält man das Decodierergebnis $\underline{z} = (\alpha^1, \, \alpha^3, \, \alpha^3, \, 0, \, 1, \, \alpha^1, \, 0)$.
(7) Analog zur Teilaufgabe (4) lautet nun das Gleichungssystem:
- $$\lambda_0 \cdot \alpha^2 + \alpha^4 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} 0 \hspace{0.3cm} \Rightarrow \hspace{0.3cm} \lambda_0 = \alpha^2 \hspace{0.05cm},$$
- $$\lambda_0 \cdot \alpha^4 + \alpha^5 \hspace{-0.15cm} \ = \ \hspace{-0.15cm} 0 \hspace{0.3cm} \Rightarrow \hspace{0.3cm} \lambda_0 = \alpha \hspace{0.05cm}.$$
Die beiden Lösungen widersprechen sich. Bei der Übertragung müssen also mindestens zwei Symbole verfälscht worden sein und die Decodierung versagt ⇒ Antwort NEIN. Man müsste nun einen neuen Versuch gemäß dem roten Schema $(r = 2)$ starten.