Exercise 2.15: Block Error Probability with AWGN

From LNTwww
Revision as of 12:53, 19 December 2017 by Hussain (talk | contribs)

Unvollständige Ergebnistabelle

Am Beispiel des $\rm RSC \, (7, \, 3, \, 5)_8$ mit den Parametern

  • $n = 7$ (Anzahl der Codesymbole),
  • $k =3$ (Anzahl der Informationssymbole),
  • $t = 2$ (Korrekturfähigkeit)


soll die Berechnung der Blockfehlerwahrscheinlichkeit beim Bounded Distance Decoding (BDD) gezeigt werden. Die entsprechende Gleichung lautet:

$${\rm Pr(Blockfehler)} =$$
$$ = \sum_{f = t + 1}^{n} {n \choose f} \cdot {\varepsilon_{\rm S}}^f \cdot (1 - \varepsilon_{\rm S})^{n-f} \hspace{0.05cm}.$$

Die Berechnung erfolgt für den AWGN–Kanal, der durch den Parameter $E_{\rm B}/N_0$ gekennzeichnet ist. Dieser Quotient lässt sich über die Beziehung

$$\varepsilon = {\rm Q} \big (\sqrt{\frac{2 \cdot R \cdot E_{\rm B}}{N_0}} \big ) $$

in das BSC–Modell übeführen, wobei $R$ die Coderate bezeichnet (hier: $R = 3/7$) und ${\rm Q}(x)$ und Komplementäre Gaußsche Fehlerintegral angibt. Da aber beim betrachteten Code die Symbole aus $\rm GF(2^3)$ entstammen, muss das BSC–Modell mit Parameter $\epsilon$ ebenfalls noch an die Aufgabenstellung adaptiert werden. Für die Verfälschungwahrscheinlichkeit des m–BSC–Modells gilt:

$$\varepsilon_{\rm S} = 1 - (1 - \varepsilon)^m \hspace{0.05cm},$$

wobei hier $m = 3$ zu setzen ist (3 Bit pro Codesymbol).

Für einige $E_{\rm B}/N_0$–Werte sind alle Ergebnisse bereits in obiger Tabelle eingetragen. Die gelb hinterlegten Zeilen werden hier kurz erläutert.

  • Für $10 \cdot \lg {E_{\rm B}/N_0} = 4 \ \rm dB$ ergibt sich $\epsilon \approx {\rm Q}(1.47) \approx 0.071$ und $\epsilon_{\rm S} \approx 0.2$. Der einfachste Weg zur Berechnung der Blockfehlerwahrscheinlichkeit führt hier über das Kompliment:
$${\rm Pr(Blockfehler)} = 1 - \big [ {7 \choose 0} \cdot 0.8^7 + {7 \choose 1} \cdot 0.2 \cdot 0.8^6 + {7 \choose 2} \cdot 0.2^2 \cdot 0.8^5\big ] \approx 0.148 \hspace{0.05cm}.$$
  • Für $10 \cdot \lg {E_{\rm B}/N_0} = 12 \ \rm dB$ erhält man $\epsilon \approx 1.2 \cdot 10^{-4}$ und $\epsilon_{\rm S} \approx 3.5 \cdot 10^{-4}$. Mit dieser sehr kleinen Verfälschungswahrscheinlichkeit dominiert der $f = 3$–Term und man erhält
$${\rm Pr(Blockfehler)} \approx {7 \choose 3} \cdot (3.5 \cdot 10^{-4})^3 \cdot (1- 3.5 \cdot 10^{-4})^4 \approx 1.63 \cdot 10^{-9} \hspace{0.05cm}.$$

In dieser Aufgabe sollen Sie für die rot hinterlegten Zeilen $(10 \cdot \lg {E_{\rm B}/N_0} = 5 \ \rm dB, \ 8 \ dB$ und $10 \ \rm dB)$ die Blockfehlerwahrscheinlichkeiten berechnen.

Die blau hinterlegten Zeilen zeigen einige Ergebnisse der Zusatzaufgabe Z2.15. Dort wird ${\rm Pr}(\underline{\upsilon} ≠ \underline{u})$ für $\epsilon_{\rm S} = 10\%, \ 1\%$ und $0.1\%$ berechnet. In den Teilaufgaben (4) und (5) sollen Sie den Zusammenhang zwischen dieser Größe $\epsilon_{\rm S}$ und dem AWGN–Parameter $E_{\rm B}/N_0$ herstellen und somit die obige Tabelle vervollständigen.

Hinweise:

  1. Komplementäre Gaußsche Fehlerfunktionen
  2. Wahrscheinlichkeiten der Binomialverteilung
  • Sollte die Eingabe des Zahlenwertes „0” erforderlich sein, so geben Sie bitte „0.” ein.



Fragebogen

1

Wie groß ist die Blockfehlerwahrscheinlichkeit für $10 \cdot \lg {E_{\rm B}/N_0} = 5 \ \rm dB$?

$E_{\rm B}/N_0 = 5 \ \rm dB \text{:} \hspace{0.2cm} Pr(Blockfehler) \ = \ $

$\ \cdot 10^{-2}$

2

Wie groß ist die Blockfehlerwahrscheinlichkeit für $10 \cdot \lg {E_{\rm B}/N_0} = 8 \ \rm dB$?

$E_{\rm B}/N_0 = 8 \ \rm dB \text{:} \hspace{0.2cm} Pr(Blockfehler) \ = \ $

$\ \cdot 10^{-4}$

3

Wie groß ist die Blockfehlerwahrscheinlichkeit für $10 \cdot \lg {E_{\rm B}/N_0} = 10 \ \rm dB$?

$E_{\rm B}/N_0 = 10 \ \rm dB \text{:} \hspace{0.2cm} Pr(Blockfehler) \ = \ $

$\ \cdot 10^{-6}$

4

Wie hängt $\epsilon_{\rm S} = 0.1$ mit $10 \cdot \lg {E_{\rm B}/N_0}$ zusammen? Hinweis: Verwenden Sie das angegebene Flash–Modul zur Berechnung von ${\rm Q}(x)$.

$\epsilon_{\rm S} = 0.1 \text{:} \hspace{0.2cm} 10 \cdot \lg {E_{\rm B}/N_0} \ = \ $

$\ \rm dB$

5

Ermitteln Sie auch die $E_{\rm B}/N_0$–Werte (in $\rm dB$) für $\epsilon_{\rm S} = 0.01$ und $\epsilon_{\rm S} = 0.001$ und vervollständigen Sie die Tabelle.

$\epsilon_{\rm S} = 0.01 \text{:} \hspace{0.2cm} 10 \cdot \lg {E_{\rm B}/N_0} \ = \ $

$\ \rm dB$
$\epsilon_{\rm S} = 0.001 \text{:} \hspace{0.2cm} 10 \cdot \lg {E_{\rm B}/N_0} \ = \ $

$\ \rm dB$


Musterlösung

(1)  Aus der Tabelle auf der Angabenseite kann der BSC–Parameter $\epsilon = 0.0505$ abgelesen werden. Damit erhält man für die Symbolverfälschungswahrscheinlichkeit $\epsilon_{\rm S}$ mit $m = 3$:

$$1 - \varepsilon_{\rm S} = (1 - 0.0505)^3 \approx 0.856 \hspace{0.3cm}\Rightarrow \hspace{0.3cm} \varepsilon_{\rm S} \approx 0.144 \hspace{0.05cm}.$$

Der schnellste Weg zur Berechnung der Blockfehlerwahrscheinlichkeit führt hier über die Formel

$${\rm Pr(Blockfehler)} \hspace{-0.15cm} \ = \ \hspace{-0.15cm} 1 - {\rm Pr}(f=0) - {\rm Pr}(f=1) - {\rm Pr}(f=2) =$$
$$\hspace{3cm} \ = \ \hspace{-0.15cm} 1 - 1 \cdot 0.856^7 - 7 \cdot 0.144^1 \cdot 0.856^6 - 21 \cdot 0.144^2 \cdot 0.856^5 =$$
$$\hspace{2.65cm} \ = \ \hspace{-0.15cm} 1 - 0.3368 - 0.3965 - 0.2001 \hspace{0.15cm} \underline{=0.0666} \hspace{0.05cm}.$$


(2)  Nach gleichem Rechengang wie in Teilaufgabe (1) ergibt sich mit $\epsilon_{\rm S} \approx 0.03 \ \Rightarrow \ 1 - \epsilon_{\rm S} = 0.97$:

$${\rm Pr(Blockfehler)} \hspace{-0.15cm} \ = \ \hspace{-0.15cm} 1 - 1 \cdot 0.97^7 - 7 \cdot 0.03^1 \cdot 0.97^6 - 21 \cdot 0.03^2 \cdot 0.97^5 =$$
$$\hspace{-0.15cm} \ = \ \hspace{-0.15cm} 1 - 0.8080 - 0.1749 - 0.0162= 1 - 0.9991 = 9 \cdot 10^{-4} \hspace{0.05cm}.$$

Man sieht, dass hier die Differenz zwischen zwei fast gleich großen Zahlen gebildet werden muss, so dass das Ergebnis mit einem Fehler behaftet sein könnte. Deshalb berechnen wir noch folgende Größen:

$${\rm Pr}(f=3) \hspace{-0.15cm} \ = \ \hspace{-0.15cm} {7 \choose 3} \cdot \varepsilon_{\rm S}^3 \cdot (1 - \varepsilon_{\rm S})^4 = 35 \cdot 0.03^3 \cdot 0.97^4 = 8.366 \cdot 10^{-4}\hspace{0.05cm},$$
$${\rm Pr}(f=4) \hspace{-0.15cm} \ = \ \hspace{-0.15cm} {7 \choose 4} \cdot \varepsilon_{\rm S}^4 \cdot (1 - \varepsilon_{\rm S})^3 = 35 \cdot 0.03^4 \cdot 0.97^3 = 0.259 \cdot 10^{-4}\hspace{0.05cm},$$
$${\rm Pr}(f=5) \hspace{-0.15cm} \ = \ \hspace{-0.15cm} {7 \choose 5} \cdot \varepsilon_{\rm S}^5 \cdot (1 - \varepsilon_{\rm S})^2 = 21 \cdot 0.03^5 \cdot 0.97^2 = 0.005 \cdot 10^{-4}$$
$$\Rightarrow \hspace{0.3cm} {\rm Pr(Blockfehler)} \approx {\rm Pr}(f=3) + {\rm Pr}(f=4) + {\rm Pr}(f=5) \hspace{0.15cm} \underline{=8.63 \cdot 10^{-4}} \hspace{0.05cm}.$$

Auf die Terme für $f = 6$ und $f = 7$ kann hier verzichtet werden. Sie liefern keinen relevanten Beitrag.


(3)  Hier ist bereits $\epsilon_{\rm S} = 0.005 \ \Rightarrow \ 1 - \epsilon_{\rm S} = 0.995$ in der Tabelle vorgegeben. Der (weitaus) dominierende Term bei der Berechnung der Blockfehlerwahrscheinlichkeit ist ${\rm Pr}(f = 3)$:

$${\rm Pr(Blockfehler)} \approx {\rm Pr}(f=3) = {7 \choose 3} \cdot 0.005^3 \cdot 0.995^4 \hspace{0.15cm} \underline{\approx 4.3 \cdot 10^{-6}} \hspace{0.05cm}.$$


(4)  Für den BSC–Parameter $\epsilon$ gilt mit $\epsilon_{\rm S} = 0.1$:

$$\varepsilon = 1 -(1 - \varepsilon_{\rm S})^{1/3} = 1 - 0.9^{1/3} \approx 0.0345 \hspace{0.05cm}.$$

Der Zusammenhang zwischen $\epsilon$ und $E_{\rm B}/N_0$ lautet:

$$\varepsilon = {\rm Q}(x)\hspace{0.05cm}, \hspace{0.5cm} x = \sqrt{2 \cdot R \cdot E_{\rm B}/N_0}\hspace{0.05cm}.$$

Die Inverse $x = {\rm Q}^{-1}(0.0345)$ ergibt sich mit dem Programm Gaußsche Fehlerfunktionen zu $x = 1.82$. Damit erhält man weiter:

$$E_{\rm B}/N_0 = \frac{x^2}{2R} = \frac{1.82^2}{2R \cdot 3/7} \approx 3.864 \hspace{0.3cm} \Rightarrow \hspace{0.3cm} 10 \cdot {\rm lg}\hspace{0.15cm}(E_{\rm B}/N_0) \hspace{0.15cm} \underline{\approx 5.87 \,\, {\rm dB}} \hspace{0.05cm}. $$


(5)  Nach gleicher Rechnung erhält man

  • für $\epsilon_{\rm S} = 10^{-2} \ \Rightarrow \ \epsilon \approx 0.33 \cdot 10^{-2} \ \Rightarrow \ x = {\rm Q}^{-1}(\epsilon) = 2.71$
$$E_{\rm B}/N_0 = \frac{x^2}{2R} = \frac{2.71^2}{2R \cdot 3/7} \approx 8.568 \hspace{0.3cm} \Rightarrow \hspace{0.3cm} 10 \cdot {\rm lg}\hspace{0.15cm}(E_{\rm B}/N_0) \hspace{0.15cm} \underline{\approx 9.32 \,\, {\rm dB}} \hspace{0.05cm}, $$
  • für $\epsilon_{\rm S} = 10^{-3} \ \Rightarrow \ \epsilon \approx 0.33 \cdot 10^{-3} \ \Rightarrow \ x = {\rm Q}^{-1}(\epsilon) = 3.4$:
$$E_{\rm B}/N_0 = \frac{x^2}{2R} = \frac{3.4^2}{2R \cdot 3/7} \approx 13.487 \hspace{0.3cm} \Rightarrow \hspace{0.3cm} 10 \cdot {\rm lg}\hspace{0.15cm}(E_{\rm B}/N_0) \hspace{0.15cm} \underline{\approx 11.3 \,\, {\rm dB}} \hspace{0.05cm}. $$
Ergebnisse zur $\rm RSC \, (7, \, 3, \, 5)_8$–Decodierung

Die Grafik zeigt den Verlauf der Blockfehlerwahrscheinlichkeit in Abhängigkeit von $10 \cdot \lg {E_{\rm B}/N_0}$ sowie die vollständig ausgefüllte Ergebnistabelle. Man erkennt das deutlich ungünstigere (asymptotische) Verhalten dieses kurzen (grünen) Codes $\rm RSC \, (7, \, 5, \, 3)_8$ gegenüber dem (roten) Vergleichscode $\rm RSC \, (255, \, 223, \, 33)_8$.

Für Abszissenwerte kleiner als $10 \ \rm dB$ ergibt sich sogar ein schlechteres Ergebnis als ohne Codierung. Deshalb soll hier nochmals darauf hingewiesen werden, dass dieser $\rm RSC \, (7, \, 3, \, 5)_8$ wenig praktische Bedeutung hat. Er wurde für diese Aufgabe nur deshalb ausgewählt, um mit vertretbarem Aufwand die Berechnung der BDD–Blockfehlerwahrscheinlichkeit demonstrieren zu können.