Applets:Prinzip der 4B3T-Codierung: Unterschied zwischen den Versionen

Aus LNTwww
Wechseln zu:Navigation, Suche
Zeile 26: Zeile 26:
  
 
==Theoretischer Hintergrund==
 
==Theoretischer Hintergrund==
 +
 +
===Klassifizierung verschiedener Codierverfahren  ===
 +
<br>
 +
Wir betrachten das dargestellte digitale Übertragungsmodell.&nbsp; Wie aus diesem  Blockschaltbild zu erkennen ist, unterscheidet man je nach Zielrichtung zwischen drei verschiedenen Arten von Codierung, jeweils realisiert durch den sendeseitigen Codierer (Coder) und den zugehörigen Decodierer (Decoder) beim Empfänger:
 +
 +
[[Datei:P_ID2315__Inf_T_2_1_S1_neu.png|right|frame|Vereinfachtes Modell eines Nachrichtenübertragungssystems]]
 +
 +
*$\text{Quellencodierung:}$&nbsp; Entfernen (unnötiger) Redundanz, um Daten möglichst effizient speichern oder übertragen zu können  &nbsp; &rArr; &nbsp; Datenkomprimierung.&nbsp; Beispiel:&nbsp; Differentielle Pulscodemodulation&nbsp; $\rm (DPCM)$&nbsp; in der Bildcodierung.
 +
 +
*$\text{Kanalcodierung:}$&nbsp; Gezieltes Hinzufügen (sinnvoller) Redundanz, die man beim Empfänger zur Fehlererkennung oder  zur Fehlererkennung  nutzen kann.&nbsp; Wichtigste Vertreter:&nbsp; Blockcodes, Faltungscodes, Turbocodes.
 +
 +
*$\text{Leitungscodierung:}$&nbsp; Umcodierung der Quellensymbole, um das zu übertragende Signal an die spektralen Eigenschaften von Kanal und Empfangseinrichtungen anzupassen, etwa, um bei einem Kanal mit&nbsp; $H_{\rm K}(f = 0) = 0$&nbsp; ein gleichsignalfreies Sendesignal zu erreichen. &nbsp;
 +
<br clear=all>
 +
Bei den Leitungscodes unterscheidet man weiter:
 +
*$\text{Symbolweise Codierung:}$&nbsp; Mit jedem ankommenden Binärsymbol&nbsp; $q_ν$&nbsp; wird ein mehrstufiges (zum Beispiel: ternäres) Codesymbol&nbsp; $c_ν$&nbsp; erzeugt, das auch von den vorherigen Binärsymbolen abhängt.&nbsp; Die Symboldauern&nbsp; $T_q$&nbsp; und&nbsp; $T_c$&nbsp; sind hierbei identisch.&nbsp; Beispiel:&nbsp; Pseudoternärcodes (AMI&ndash;Code, Duobinärcode).
 +
 +
*$\text{Blockweise Codierung:}$&nbsp; Ein Block aus &nbsp;$m_q$&nbsp; Binärsymbolen &nbsp;$(M_q = 2)$&nbsp; wird durch eine Sequenz aus &nbsp;$m_c$&nbsp; höherstufigen Symbolen &nbsp;$(M_c > 2)$&nbsp; ersetzt. 
 +
 +
 +
 +
 +
Eine&nbsp; '''Leitungscodierung'''&nbsp; – manchmal auch als ''Übertragungscodierung''&nbsp; bezeichnet – verwendet man, um das Sendesignal durch eine Umcodierung der Quellensymbole an die spektralen Eigenschaften von Kanal und Empfangseinrichtungen anzupassen.&nbsp; Beispielsweise muss bei einem (analogen) Übertragungskanal, über den kein Gleichsignal übertragen werden kann – für den also&nbsp; $H_{\rm K}(f = 0) = 0$&nbsp; gilt – durch Leitungscodierung sicher gestellt werden, dass die Codesymbolfolge keine langen Folgen gleicher Polarität beinhaltet.
 +
 +
 +
  
 
=== Allgemeine Beschreibung von Blockcodes ===
 
=== Allgemeine Beschreibung von Blockcodes ===

Version vom 4. September 2020, 17:34 Uhr

Applet in neuem Tab öffnen

Programmbeschreibung


Das Applet behandelt die Eigenschaften der bekanntesten Pseudoternärcodes, nämlich:

  1.   Bipolarcode erster Ordnung bzw.  $\rm AMI$–Code  (von: Alternate Mark Inversion),  gekennzeichnet durch die Parameter  $N_{\rm C} = 1, \ K_{\rm C} = +1$,
  2.   Duobinärcode,  $(\rm DUOB)$,  Codeparameter:  $N_{\rm C} = 1, \ K_{\rm C} = -1$,
  3.   Bipolarcode zweiter Ordnung  $(\rm BIP2)$,  Codeparameter:  $N_{\rm C} = 2, \ K_{\rm C} = +1$.


Am Eingang liegt die redundanzfreie binäre bipolare Quellensymbolfolge  $\langle \hspace{0.05cm}q_\nu \hspace{0.05cm}\rangle \ \in \{+1, -1\}$   ⇒   Rechtecksignal  $q(t)$  an.  Verdeutlicht wird die Generierung

  • der binär–vorcodierten Folge  $\langle \hspace{0.05cm}b_\nu \hspace{0.05cm}\rangle \ \in \{+1, -1\}$,  dargestellt durch das ebenfalls redundanzfreie binäre bipolare Rechtecksignal  $b(t)$,
  • der pseudoternären Codefolge  $\langle \hspace{0.05cm}c_\nu \hspace{0.05cm}\rangle \ \in \{+1,\ 0, -1\}$,  dargestellt durch das redundante ternäre bipolare Rechtecksignal  $c(t)$,
  • das gleichermaßen redundante ternäre Sendesignal  $s(t)$, gekennzeichnet durch die Amplitudenkoeffizienten  $a_\nu $,  und den (Sende–) Grundimpuls  $g(t)$:
$$s(t) = \sum_{\nu = -\infty}^{+\infty} a_\nu \cdot g( t - \nu \cdot T)\hspace{0.05cm}.$$

Der Grundimpuls  $g(t)$  –  im Applet  „Rechteck”,  „Nyquist” und  „Wurzel–Nyquist”  –  bestimmt nicht nur die Form des Sendesignals, sondern auch den Verlauf

  • der Autokorrelationsfunktion  $\rm (AKF)$  $\varphi_s (\tau)$  und
  • des zugehörigen Leistungsdichtespektrums  $\rm (LDS)$  ${\it \Phi}_s (f)$.


Das Applet zeigt auch, dass das gesamte Leistungsdichtespektrum  ${\it \Phi}_s (f)$ aufgeteilt werden kann in den Anteil  ${\it \Phi}_a (f)$, der die statistischen Bindungen der Amplitudenkoeffizienten  $a_\nu$   berücksichtigt, und das Energiedichtespektrum $ {\it \Phi}^{^{\hspace{0.08cm}\bullet}}_{g}(f) = |G(f)|^2 $, gekennzeichnet durch die Impulsform  $g(t)$.

Anmerkung:   Im Applet wird kein Unterschied zwischen den Codersymbolen  $c_\nu \in \{+1,\ 0, -1\}$  und den Amplitudenkoeffizienten  $a_\nu \in \{+1,\ 0, -1\}$  gemacht.  Dabei sollte nicht vergessen werden, dass die  $a_\nu$  stets Zahlenwerte sind, während für die Codersymbole auch die Notation  $c_\nu \in \{\text{Plus},\ \text{Null},\ \text{Minus}\}$  zulässig wäre.

Theoretischer Hintergrund

Klassifizierung verschiedener Codierverfahren


Wir betrachten das dargestellte digitale Übertragungsmodell.  Wie aus diesem Blockschaltbild zu erkennen ist, unterscheidet man je nach Zielrichtung zwischen drei verschiedenen Arten von Codierung, jeweils realisiert durch den sendeseitigen Codierer (Coder) und den zugehörigen Decodierer (Decoder) beim Empfänger:

Vereinfachtes Modell eines Nachrichtenübertragungssystems
  • $\text{Quellencodierung:}$  Entfernen (unnötiger) Redundanz, um Daten möglichst effizient speichern oder übertragen zu können   ⇒   Datenkomprimierung.  Beispiel:  Differentielle Pulscodemodulation  $\rm (DPCM)$  in der Bildcodierung.
  • $\text{Kanalcodierung:}$  Gezieltes Hinzufügen (sinnvoller) Redundanz, die man beim Empfänger zur Fehlererkennung oder zur Fehlererkennung nutzen kann.  Wichtigste Vertreter:  Blockcodes, Faltungscodes, Turbocodes.
  • $\text{Leitungscodierung:}$  Umcodierung der Quellensymbole, um das zu übertragende Signal an die spektralen Eigenschaften von Kanal und Empfangseinrichtungen anzupassen, etwa, um bei einem Kanal mit  $H_{\rm K}(f = 0) = 0$  ein gleichsignalfreies Sendesignal zu erreichen.  


Bei den Leitungscodes unterscheidet man weiter:

  • $\text{Symbolweise Codierung:}$  Mit jedem ankommenden Binärsymbol  $q_ν$  wird ein mehrstufiges (zum Beispiel: ternäres) Codesymbol  $c_ν$  erzeugt, das auch von den vorherigen Binärsymbolen abhängt.  Die Symboldauern  $T_q$  und  $T_c$  sind hierbei identisch.  Beispiel:  Pseudoternärcodes (AMI–Code, Duobinärcode).
  • $\text{Blockweise Codierung:}$  Ein Block aus  $m_q$  Binärsymbolen  $(M_q = 2)$  wird durch eine Sequenz aus  $m_c$  höherstufigen Symbolen  $(M_c > 2)$  ersetzt.



Eine  Leitungscodierung  – manchmal auch als Übertragungscodierung  bezeichnet – verwendet man, um das Sendesignal durch eine Umcodierung der Quellensymbole an die spektralen Eigenschaften von Kanal und Empfangseinrichtungen anzupassen.  Beispielsweise muss bei einem (analogen) Übertragungskanal, über den kein Gleichsignal übertragen werden kann – für den also  $H_{\rm K}(f = 0) = 0$  gilt – durch Leitungscodierung sicher gestellt werden, dass die Codesymbolfolge keine langen Folgen gleicher Polarität beinhaltet.



Allgemeine Beschreibung von Blockcodes


Bei  Blockcodierung  wird jeweils eine Sequenz von  $m_q$  binären Quellensymbolen  $(M_q = 2)$  durch einen Block von  $m_c$  Codesymbolen mit dem Symbolumfang  $M_c$  dargestellt. Um eine jede Quellensymbolfolge  $\langle q_\nu \rangle$  in eine andere Codesymbolfolge  $\langle c_\nu \rangle$  umsetzen zu können, muss folgende Bedingung erfüllt sein:

$$M_c^{\hspace{0.1cm}m_c} \ge M_q^{\hspace{0.1cm}m_q}\hspace{0.05cm}.$$
  • Bei den im letzten Kapitel behandelten  redundanzfreien Codes  gilt in dieser Gleichung das Gleichheitszeichen, wenn  $M_q$  eine Zweierpotenz ist.
  • Mit dem Größerzeichen ergibt sich ein redundantes Digitalsignal, wobei die  relative Coderedundanz  wie folgt berechnet werden kann:
$$r_c = 1- \frac{m_q \cdot {\rm log_2}\hspace{0.05cm} (M_q)}{m_c \cdot {\rm log_2} \hspace{0.05cm}(M_c)} > 0 \hspace{0.05cm}.$$


Der bekannteste Blockcode zur Übertragungscodierung ist der  4B3T–Code  mit den Codeparametern

$$m_q = 4,\hspace{0.2cm}M_q = 2,\hspace{0.2cm}m_c = 3,\hspace{0.2cm}M_c = 3\hspace{0.05cm},$$

der bereits in den 1970–er Jahren entwickelt wurde und beispielsweise bei   ISDN  (Integrated Services Digital Networks ) eingesetzt wird.

Ein 4B3T–Code besitzt folgende Eigenschaften:

  • Wegen  $m_q \cdot T_{\rm B} = m_c \cdot T$  ist die Symboldauer  $T$  des Codersignals um den Faktor  $4/3$  größer als die Bitdauer  $T_{\rm B}$  des binären Quellensignals. Daraus ergibt sich die günstige Eigenschaft, dass der Bandbreitenbedarf um ein Viertel geringer ist als bei redundanzfreier Binärübertragung.
  • Die relative Redundanz kann mit obiger Gleichung berechnet werden und ergibt sich zu  $r_c \approx 16\%$. Diese Redundanz wird beim 4B3T–Code dazu verwendet, um Gleichsignalfreiheit zu erzielen.
  • Das 4B3T–codierte Signal kann somit ohne merkbare Beeinträchtigung auch über einen Kanal mit der Eigenschaft  $H_{\rm K}(f)= 0) = 0$  übertragen werden.


Die Umcodierung der sechzehn möglichen Binärblöcke in die entsprechenden Ternärblöcke könnte prinzipiell nach einer festen Codetabelle vorgenommen werden. Um die spektralen Eigenschaften dieser Codes weiter zu verbessern, werden bei den gebräuchlichen 4B3T–Codes, nämlich

  • dem 4B3T–Code nach Jessop und Waters,
  • dem MS43–Code (von:  $\rm M$onitored $\rm S$um $\rm 4$B$\rm 3$T–Code),
  • dem FoMoT–Code (von:  $\rm Fo$ur $\rm Mo$de $\rm T$ernary),

zwei oder mehrere Codetabellen verwendet, deren Auswahl von der  laufenden digitalen Summe  der Amplitudenkoeffizienten gesteuert wird. Das Prinzip wird auf der nächsten Seite erklärt.


Laufende digitale Summe


Nach der Übertragung von  l  codierten Blöcken gilt für die  laufende digitalen Summe  mit den ternären Amplitudenkoeffizienten  $a_\nu \in \{ -1, 0, +1\}$:

Codetabellen für drei 4B3T-Codes
$${\it \Sigma}_l = \sum_{\nu = 1}^{3 \hspace{0.02cm}\cdot \hspace{0.05cm} l}\hspace{0.02cm} a_\nu \hspace{0.05cm}.$$

Die Auswahl der Tabelle zur Codierung des  $(l + 1)$–ten Blocks erfolgt abhängig vom aktuellen Wert  ${\it \Sigma}_l$.

In der Tabelle sind die Codierregeln für die drei oben genannten 4B3T–Codes angegeben. Zur Vereinfachung der Schreibweise steht „+” für den Amplitudenkoeffizienten „+1” und „–” für den Koeffizienten „–1”.

  • Die zwei Codetabellen des Jessop–Waters–Codes sind so gewählt, dass die laufende digitale Summe  ${\it \Sigma}_l$  stets zwischen $0$ und $5$ liegt.


  • Bei den beiden anderen Codes (MS43, FoMoT) erreicht man durch drei bzw. vier alternative Tabellen die Beschränkung der laufenden digitalen Summe auf den Wertebereich  $0 \le {\it \Sigma}_l \le 3$.


AKF und LDS der 4B3T–Codes


Markovdiagramm zur Analyse des 4B3T-Codes (FoMoT)

Die Vorgehensweise zur Berechnung von AKF und LDS wird hier nur stichpunktartig skizziert:

(1)   Der Übergang der laufenden digitalen Summe von  ${\it \Sigma}_l$  nach  ${\it \Sigma}_{l+1}$  wird durch eine homogene stationäre Markovkette erster Ordnung mit sechs (Jessop–Waters) bzw. vier Zuständen (MS43, FoMoT) beschrieben. Für den FoMoT–Code gilt das rechts skizzierte Markovdiagramm.


(2)   Die Werte an den Pfeilen kennzeichnen die Übergangswahrscheinlichkeiten  ${\rm Pr}({\it \Sigma}_{l+1}|{\it \Sigma}_{l})$, die sich aus den jeweiligen Codetabellen ergeben. Die Farben korrespondieren zu den Hinterlegungen der Tabelle auf der letzten Seite. Aufgrund der Symmetrie des FoMoT–Markovdiagramms sind die vier Wahrscheinlichkeiten alle gleich:

$${\rm Pr}({\it \Sigma}_{l} = 0) = \text{...} = {\rm Pr}({\it \Sigma}_{l} = 3) = 1/4.$$


(3)   Die Autokorrelationsfunktion (AKF)  $\varphi_a(\lambda) = {\rm E}\big [a_\nu \cdot a_{\nu+\lambda}\big ]$  der Amplitudenkoeffizienten kann aus diesem Diagramm ermittelt werden. Einfacher als die analytische Berechnung, die eines sehr großen Rechenaufwands bedarf, ist die simulative Bestimmung der AKF–Werte mittels Computer.


Durch Fouriertransformation der AKF kommt man zum Leistungsdichtespektrum (LDS)  ${\it \Phi}_a(f)$  der Amplitudenkoeffizienten entsprechend der folgenden Grafik aus [ST85][1]. Das skizzierte LDS wurde für den FoMoT–Code ermittelt, dessen Markovdiagramm oben dargestellt ist. Die Unterschiede der einzelnen 4B3T–Codes sind nicht sonderlich ausgeprägt. So gilt für den MS43–Code  ${\rm E}\big [a_\nu^2 \big ] \approx 0.65$  und für die beiden anderen 4B3T-Codes (Jessop/Waters, MS43)  ${\rm E}\big [a_\nu^2 \big ] \approx 0.69$.

Leistungsdichtespektrum (der Ampltudenkoeffizienten) von 4B3T im Vergleich zu redundanzfreier und AMI-Codierung

Die Aussagen dieser Grafik kann man wie folgt zusammenfassen:

  • Die Grafik zeigt das LDS  ${\it \Phi}_a(f)$  der Amplitudenkoeffizienten  $a_\nu$  des 4B3T-Codes   ⇒   rote Kurve.
  • Das LDS  ${\it \Phi}_s(f)$  unter Einbeziehung des Sendegrundimpulses erhält man durch Multiplikation mit  $1/T \cdot |G_s(f)|^2$. Beispielsweise muss man  ${\it \Phi}_a(f)$  mit einer  $\rm si^2$–Funktion multiplizieren, wenn  $g_s(t)$  einen Rechteckimpuls beschreibt.
  • Bei redundanzfreier Binär– oder Ternärcodierung ergibt sich jeweils ein konstantes  ${\it \Phi}_a(f)$, dessen Höhe von der Stufenzahl  $M$  abhängt (unterschiedliche Signalleistung).
  • Dagegen weist das 4B3T–Leistungsdichtespektrum Nullstellen bei  $f = 0$  und Vielfachen von  $f = 1/T$  auf.
  • Die Nullstelle bei  $f = 0$  hat den Vorteil, dass das 4B3T–Signal ohne große Einbußen auch über einen so genannten Telefonkanal  übertragen werden kann, der aufgrund von Übertragern für ein Gleichsignal nicht geeignet ist.
  • Die Nullstelle bei  $f = 1/T$  hat den Nachteil, dass dadurch die Taktrückgewinnung am Empfänger erschwert wird. Außerhalb dieser Nullstellen weisen die 4B3T–Codes ein flacheres  ${\it \Phi}_a(f)$  auf als der im nächsten Kapitel behandelte  AMI–Code  (blaue Kurve), was von Vorteil ist.
  • Der Grund für den flacheren LDS–Verlauf bei mittleren Frequenzen sowie den steileren Abfall zu den Nullstellen hin ist, dass bei den 4B3T–Codes bis zu fünf  $+1$– bzw.  $-1$–Koeffizienten aufeinanderfolgen können. Beim AMI–Code treten diese Symbole nur isoliert auf.


Fehlerwahrscheinlichkeit der 4B3T-Codes


Wir betrachten nun die Symbolfehlerwahrscheinlichkeit bei Verwendung des 4B3T–Codes im Vergleich zu redundanzfreier Binär– und Ternärcodierung, wobei folgende Voraussetzungen gelten sollen:

  • Der Systemvergleich erfolgt zunächst unter der Nebenbedingung der „Spitzenwertbegrenzung”. Deshalb verwenden wir den rechteckförmigen Sendegrundimpuls, der hierfür optimal ist.
  • Der Gesamtfrequenzgang zeigt einen Cosinus–Rolloff mit bestmöglichem Rolloff–Faktor  $r = 0.8$. Die Rauschleistung  $\sigma_d^2$  ist somit um  $12\%$  größer als beim Matched-Filter (globales Optimum), siehe Grafik auf der Seite   Optimierung des Rolloff-Faktors bei Spitzenwertbegrenzung  im dritten Hauptkapitel.


Die folgende Grafik zeigt die  Augendiagramme  (mit Rauschen) der drei zu vergleichenden Systeme und enthält zusätzlich in Zeile  $\rm A$  die Gleichungen zur Berechnung der Fehlerwahrscheinlichkeit. Bei jedem Diagramm sind ca.  2000  Augenlinien gezeichnet.

Augendiagramm bei redundanzfreier bzw. 4B3T-Codierung

Die beiden ersten Zeilen der Tabelle beschreiben den Systemvergleich bei Spitzenwertbegrenzung. Für das Binärsystem ergibt sich die Rauschleistung (unter Berücksichtigung der  $12\%$–Erhöhung) zu

$$\sigma_d^2 = 1.12 \cdot {N_0}/({2 \cdot T}) = 0.56 \cdot {N_0}/{T} = \sigma_1^2 \hspace{0.05cm}.$$

Für das Augendiagramm und die nachfolgenden Berechnungen ist jeweils ein „Störabstand” von  $10 \cdot \lg \hspace{0.05cm}(s_0^2 \cdot T/N_0) = 13 \ \rm dB$  zugrunde gelegt. Damit erhält man:

$$10 \cdot {\rm lg } \hspace{0.1cm}{s_0^2 \cdot T}/{N_0} = 13 \, {\rm dB } \hspace{0.3cm} \Rightarrow \hspace{0.3cm}{s_0^2 \cdot T}/{N_0} = 10^{1.3} \approx 20 \hspace{0.3cm} \Rightarrow \hspace{0.3cm}\sigma_1^2 = 0.56 \cdot {s_0^2}/{20} \approx 0.028 \cdot s_0^2 \hspace{0.3cm} \Rightarrow \hspace{0.3cm}{ \sigma_1}/{s_0}\approx 0.167 \hspace{0.05cm}.$$

In der Zeile  $\rm B$  ist die dazugehörige Symbolfehlerwahrscheinlichkeit  $p_{\rm S} \approx {\rm Q}(s_0/\sigma_1) \approx {\rm Q}(6) = 10^{-9}$  angegeben.

Die beiden weiteren Augendiagramme lassen sich wie folgt interpretieren:

  • Beim redundanzfreien Ternärsystem ist die Augenöffnung nur halb so groß wie beim Binärsystem und die Rauschleistung  $\sigma_2^2$  ist um den Faktor  $\log_2 \hspace{0.05cm}(3)$  kleiner als  $\sigma_1^2$.
  • Der Faktor  $4/3$  vor der Q–Funktion berücksichtigt, dass die ternäre „0” in beiden Richtungen verfälscht werden kann. Damit ergeben sich folgende Zahlenwerte:
$$\frac{ \sigma_2}{s_0}\hspace{-0.05cm} =\hspace{-0.05cm} \frac{ \sigma_1/s_0}{\sqrt{{\rm log_2} (3)}}\hspace{-0.05cm} =\hspace{-0.05cm}\frac{ 0.167}{1.259} \approx 0.133 \hspace{0.3cm} \Rightarrow \hspace{0.3cm}p_{\rm S}\hspace{-0.05cm}=\hspace{-0.05cm} {4}/{3} \cdot {\rm Q}\left (\frac{ 0.5}{0.133}\right)\approx {4}/{3} \cdot {\rm Q}(3.76) \hspace{-0.05cm}= \hspace{-0.05cm}1.1 \cdot 10^{-4} .$$
  • Der 4B3T–Code liefert noch etwas ungünstigere Ergebnisse, da hier bei gleicher Augenöffnung die Rauschleistung  $(\sigma_3^2)$  weniger stark vermindert wird als beim redundanzfreien Ternärcode  $(\sigma_2^2)$:
$$\frac{ \sigma_3}{s_0} = \frac{ \sigma_1/s_0}{\sqrt{4/3}} =\frac{ 0.167}{1.155} \approx 0.145 \hspace{0.3cm} \Rightarrow \hspace{0.3cm}p_{\rm S}= {4}/{3} \cdot {\rm Q}\left (\frac{ 0.5}{0.145}\right)\approx {4}/{3} \cdot {\rm Q}(3.45) = 3.7 \cdot 10^{-4} \hspace{0.05cm}.$$

Die Symbolfehlerwahrscheinlichkeiten bei Leistungsbegrenzung sind für  $10 \cdot \lg \hspace{0.05cm}(E_{\rm B}/N_0) = 13 \ \rm dB$  in der Zeile $\rm C$ angegeben:

  • Beim Binärsystem mit NRZ–Rechteckimpulsen wird  $p_{\rm S}$  gegenüber der Zeile  $\rm B$  wegen  $E_{\rm B} = s_0^2 \cdot T$  nicht verändert:
$$p_\text{S, Leistungsbegrenzung} = p_\text{S, Spitzenwertbegrenzung} \approx 10^{-9}.$$
  • Für die beiden Ternärcodes gilt  ${\rm E}\big [a_\nu^2\big ] \approx 2/3$. Deshalb kann hier die Amplitude um den Faktor  $\sqrt{(3/2)} \approx 1.225$  vergrößert werden.
  • Für den redundanzfreien Ternärcode erhält man damit bei Leistungsbegrenzung eine um mehr als den Faktor  $4$  kleinere Fehlerwahrscheinlichkeit als bei Spitzenwertbegrenzung (vgl. die Zeilen  $\rm B$  und  $\rm C$  in obiger Tabelle):
$$p_\text{S, Leistungsbegrenzung} = 4/3 \cdot {\rm Q}(1.225 \cdot 3.76) \approx 2.9 \cdot 10^{-5} \approx 0.26 \cdot p_\text{S, Spitzenwertbegrenzung} .$$
  • Ähnliches (und sogar noch verstärkt) gilt auch für den 4B3T-Code:
$$p_\text{S, Leistungsbegrenzung} = 4/3 \cdot {\rm Q}(1.225 \cdot 3.45) \approx 1.5 \cdot 10^{-5} \approx 0.04 \cdot p_\text{S, Spitzenwertbegrenzung}.$$

Allgemeine Beschreibung der Pseudoternärcodes

Bei der symbolweisen Codierung wird mit jedem ankommenden Quellensymbol  $q_\nu$  ein Codesymbol  $c_\nu$  erzeugt, das außer vom aktuellen Eingangssymbol  $q_\nu$  auch von den  $N_{\rm C}$  vorangegangenen Symbolen  $q_{\nu-1}$, ... , $q_{\nu-N_{\rm C}} $  abhängt.  $N_{\rm C}$  bezeichnet man als die Ordnung  des Codes.

Blockschaltbild und Ersatzschaltbild eines Pseudoternärcodierers

Typisch für eine symbolweise Codierung ist, dass

  • die Symboldauer  $T$  des Codersignals (und des Sendesignals) mit der Bitdauer  $T_{\rm B}$  des binären Quellensignals übereinstimmt, und
  • Codierung und Decodierung nicht zu größeren Zeitverzögerungen führen, die bei Verwendung von Blockcodes unvermeidbar sind.

Besondere Bedeutung besitzen Pseudomehrstufencodes  – besser bekannt unter der englischen Bezeichnung Partial Response Codes

  • Im Folgenden werden ausschließlich Pseudoternärcodes   ⇒   Stufenzahl  $M = 3$  betrachtet, die durch das Blockschaltbild entsprechend der linken Grafik beschreibbar sind. 
  • In der rechten Grafik ist ein Ersatzschaltbild angegeben, das für eine Analyse dieser Codes sehr gut geeignet ist.


Man erkennt aus den beiden Darstellungen:

  • Der Pseudoternärcodierer kann in den nichtlinearen Vorcodierer und ein lineares Codiernetzwerk aufgespalten werden, wenn man – wie im rechten Ersatzschaltbild dargestellt – die Verzögerung um  $N_{\rm C} \cdot T$  und die Gewichtung mit  $K_{\rm C}$  zur Verdeutlichung zweimal zeichnet.
  • Der nichtlineare Vorcodierer  gewinnt durch eine Modulo–2–Addition  („Antivalenz”)  zwischen den Symbolen  $q_\nu$  und  $K_{\rm C} \cdot b_{\nu-N_{\rm C}} $  die vorcodierten Symbole  $b_\nu$, die ebenfalls binär sind:
$$q_\nu \in \{-1, +1\},\hspace{0.1cm} K_{\rm C} \in \{-1, +1\}\hspace{0.3cm}\Rightarrow \hspace{0.3cm}b_\nu \in \{-1, +1\}\hspace{0.05cm}.$$
  • Die Symbole  $b_\nu$  sind wie die Quellensymbole  $q_\nu$  statistisch voneinander unabhängig.  Der Vorcodierer fügt also keine Redundanz hinzu.  Er gestattet aber eine einfachere Realisierung des Decoders und verhindert eine Fehlerfortpflanzung nach einem Übertragungsfehler.
  • Die eigentliche Umcodierung von binär  $(M_q = 2)$  auf ternär  $(M = M_c = 3)$  bewirkt das lineare Codiernetzwerk  durch die herkömmliche Subtraktion
$$c(t) ={1}/{2} \cdot \big [b(t) - K_{\rm C} \cdot b(t- N_{\rm C}\cdot T)\big] \in \{-1, \ 0, +1\}\hspace{0.05cm},$$
das durch folgende  Impulsantwort  bzw.  Übertragungsfunktion  bezüglich dem Eingangssignal  $b(t)$  und dem Ausgangssignal  $c(t)$  beschrieben werden kann:
$$h_{\rm C}(t) = {1}/{2} \cdot \big [\delta(t) - K_{\rm C} \cdot \delta(t- N_{\rm C}\cdot T)\big] \ \ \ \circ\!\!-\!\!\!-\!\!\!-\!\!\bullet\ \ \ H_{\rm C}(f) ={1}/{2} \cdot \left [1 - K_{\rm C} \cdot {\rm e}^{- {\rm j}\hspace{0.05cm}\cdot\hspace{0.05cm} 2\pi \hspace{0.05cm}\cdot \hspace{0.05cm}N_{\rm C}\hspace{0.05cm}\cdot \hspace{0.05cm}T}\right]\hspace{0.05cm}. $$
  • Die relative Coderedundanz ist für alle Pseudoternärcodes gleich. Setzt man in die  allgemeine Definitionsgleichung  $M_q=2$,  $M_c=3$  und  $T_c =T_q$  ein, so erhält man
$$r_c = 1- \frac{R_q}{R_c} = 1- \frac{T_c}{T_q} \cdot \frac{{\rm log_2}\hspace{0.05cm} (M_q)}{{\rm log_2} \hspace{0.05cm}(M_c)} = 1- \frac{T_c}{T_q \cdot {\rm log_2} \hspace{0.05cm}(M_c)}\hspace{0.5cm}\Rightarrow \hspace{0.5cm} r_c = 1 -1/\log_2\hspace{0.05cm}(3) \approx 36.9 \%\hspace{0.05cm}.$$

Das  $\text{Sendesignal aller Pseudoternärcodes}$  wird im Folgenden stets wie folgt dargestellt:

$$s(t) = \sum_{\nu = -\infty}^{+\infty} a_\nu \cdot g( t - \nu \cdot T)\hspace{0.05cm}.$$
  • Die Eigenschaft des aktuellen Pseudoternärcodes spiegelt sich in den statistischen Bindungen zwischen den  $a_\nu$  wider.  In allen Fällen gilt  $a_\nu \in \{-1, \ 0, +1\}$.
  • Der Sendegrundimpuls  $g(t)$  stellt zum einen die erforderliche Energie bereit, hat aber auch Einfluss auf die statistischen Bindungen innerhalb des Signals.
  • Im Programm ausgewählt werden kann neben dem NRZ–Rechteckimpuls  $g_{\rm R}(t)$: 
  • der Nyquistimpuls   ⇒   Impulsantwort des Cosinus–Rolloff–Tiefpasses mit Rolloff–Faktor $r$:
$$g_{\rm Nyq}(t)={\rm const.} \cdot \frac{\cos(\pi \cdot r\cdot t/T)}{1-(2\cdot r\cdot t/T)^2} \cdot {\rm si}(\pi \cdot t/T) \ \ \ \circ\!\!-\!\!\!-\!\!\!-\!\!\bullet\ \ \ G_{\rm Nyq}(f),$$
  • der Wurzel–Nyquistimpuls   ⇒   Impulsantwort des Wurzel–Cosinus–Rolloff–Tiefpasses mit Rolloff–Faktor $r$:
$$g_{\sqrt{\rm Nyq} }(t)\ \ \ \circ\!\!-\!\!\!-\!\!\!-\!\!\bullet\ \ \ G_{\sqrt{\rm Nyq} }(f)={\rm const.} \cdot \sqrt{G_{\rm Nyq}(f)} .$$



Eigenschaften des AMI-Codes

Die Pseudoternärcodes unterscheiden sich in den Parametern  $N_{\rm C}$  und  $K_{\rm C}$.  Der bekannteste Vertreter ist der  Bipolarcode erster Ordnung  mit den Codeparametern  $N_{\rm C} = 1$  und  $K_{\rm C} = 1$, der auch unter der Bezeichnung  AMI–Code  (von: Alternate Mark Inversion) bekannt ist.

AMI– und HDB3–Codierung, jeweils dargestellt mit Rechtecksignalen

Dieser wird zum Beispiel bei  ISDN  (Integrated Services Digital Networks) auf der so genannten  $S_0$–Schnittstelle eingesetzt.

Die Grafik zeigt oben das binäre Quellensignal  $q(t)$. Im zweiten und dritten Diagramm sind dargestellt:

  • das ebenfalls binäre Signal  $b(t)$  nach dem Vorcodierer, und
  • das Codersignal  $c(t) = s(t)$  des AMI–Codes.


Man erkennt das einfache AMI–Codierprinzip:

  • Jeder Binärwert „-1” von  $q(t)$   ⇒   Symbol  $\rm L$  wird durch den ternären Koeffizienten  $a_\nu = 0$  codiert.
  • Der Binärwert „+1” von  $q(t)$   ⇒   Symbol  $\rm H$  wird alternierend mit  $a_\nu = +1$  und  $a_\nu = -1$  dargestellt.

Damit wird sichergestellt, dass im AMI–codierten Signal keine langen „+1”– und auch keine keine langen „–1”–Sequenzen enthalten sind, was bei einem gleichsignalfreien Kanal zu Problemen führen würde.

Dagegen ist das Auftreten langer Nullfolgen durchaus möglich, bei denen über einen längeren Zeitraum keine Taktinformation übertragen wird.

Um dieses zweite Problem zu vermeiden, wurden einige modifizierte AMI–Codes entwickelt, zum Beispiel der B6ZS–Code  und der HDB3–Code:

  • Beim HDB3–Code  (grüne Kurve in obiger Grafik) werden vier aufeinanderfolgende Nullen im AMI–codierten Signal durch eine Teilsequenz ersetzt, die die AMI–Codierregel verletzt.
  • Im grau hinterlegten Bereich ist dies die Folge „+ 0 0 +”, da das letzte Symbol vor der Ersetzung ein „Minus” war.
  • Damit ist beim HDB3–Code die Anzahl aufeinanderfolgender Nullen auf  $3$  begrenzt und beim  B6ZS–Code  auf  $5$.
  • Der Decoder erkennt diese Codeverletzung und ersetzt „+ 0 0 +” wieder durch „0 0 0 0”.



Zur AKF–Berechnung eines Digitalsignals

In der Versuchsdurchführung werden einige Größen und Zusamenhänge verwendet, die hier kurz eräutert werden sollen:

  •   Das (zeitlich unbegrenzte) Digitalsignal beinhaltet sowohl die Quellenstatistik $($Amplitudenkoeffizienten  $a_\nu$)  als auch die Sendeimpulsform  $g(t)$:
$$s(t) = \sum_{\nu = -\infty}^{+\infty} a_\nu \cdot g ( t - \nu \cdot T)\hspace{0.05cm}.$$
  •   Ist  $s(t)$  die Musterfunktion eines stationären und ergodischen Zufallsprozesses, so gilt für die  Autokorrelationsfunktion  $\rm (AKF)$:
$$\varphi_s(\tau) = {\rm E}\big [s(t) \cdot s(t + \tau)\big ] = \sum_{\lambda = -\infty}^{+\infty}{1}/{T} \cdot \varphi_a(\lambda)\cdot\varphi^{^{\bullet} }_{gs}(\tau - \lambda \cdot T)\hspace{0.05cm}.$$
  •   Diese Gleichung beschreibt die Faltung der diskreten AKF  $\varphi_a(\lambda) = {\rm E}\big [ a_\nu \cdot a_{\nu + \lambda}\big]$  der Amplitudenkoeffizienten mit der Energie–AKF des Grundimpulses:
$$\varphi^{^{\bullet} }_{g}(\tau) = \int_{-\infty}^{+\infty} g ( t ) \cdot g ( t + \tau)\,{\rm d} t \hspace{0.05cm}.$$
  • Der Punkt soll darauf hinweisen, dass  $\varphi^{^{\bullet} }_{g}(\tau)$  die Einheit einer Energie besitzt, während  $\varphi_s(\tau)$  eine Leistung angibt und  $\varphi_a(\lambda)$  dimensionslos ist.


Zur LDS-Berechnung eines Digitalsignals

Die Entsprechungsgröße zur AKF ist im Frequenzbereich das Leistungsdichtespektrum  $\rm (LDS)$  ${\it \Phi}_s(f)$, das mit  $\varphi_s(\tau)$  über das Fourierintegral fest verknüpft ist:

$$\varphi_s(\tau) \hspace{0.4cm}\circ\!\!-\!\!\!-\!\!\!-\!\!\bullet \hspace{0.4cm} {\it \Phi}_s(f) = \int_{-\infty}^{+\infty} \varphi_s(\tau) \cdot {\rm e}^{- {\rm j}\hspace{0.05cm} 2 \pi f \hspace{0.02cm} \tau} \,{\rm d} \tau \hspace{0.05cm}.$$
  • Das Leistungsdichtespektrum  ${\it \Phi}_s(f)$  kann unter Berücksichtigung der Dimensionsbereinigung  $(1/T)$  als Produkt zweier Funktionen dargestellt werden:
$${\it \Phi}_s(f) = {\it \Phi}_a(f) \cdot {1}/{T} \cdot |G_s(f)|^2 \hspace{0.05cm}.$$
  • Der erste Term  ${\it \Phi}_a(f)$  ist dimensionslos und beschreibt die spektrale Formung des Sendesignals durch die statistischen Bindungen der Quelle:
$$\varphi_a(\lambda) \hspace{0.4cm}\circ\!\!-\!\!\!-\!\!\!-\!\!\bullet \hspace{0.4cm}{\it \Phi}_a(f) = \sum_{\lambda = -\infty}^{+\infty}\varphi_a(\lambda)\cdot {\rm e}^{- {\rm j}\hspace{0.05cm} 2 \pi f \hspace{0.02cm} \lambda \hspace{0.02cm}T} = \varphi_a(0) + 2 \cdot \sum_{\lambda = 1}^{\infty}\varphi_a(\lambda)\cdot\cos ( 2 \pi f \lambda T) \hspace{0.05cm}.$$
  • ${\it \Phi^{^{\hspace{0.08cm}\bullet}}_{g}}(f)$  berücksichtigt die spektrale Formung durch  $g(t)$. Je schmaler dieser ist, desto breiter ist  $\vert G(f) \vert^2$  und um so größer ist damit der Bandbreitenbedarf:
$$\varphi^{^{\hspace{0.05cm}\bullet}}_{g}(\tau) \hspace{0.4cm}\circ\!\!-\!\!\!-\!\!\!-\!\!\bullet \hspace{0.4cm} {\it \Phi}^{^{\hspace{0.08cm}\bullet}}_{g}(f) = |G(f)|^2 \hspace{0.05cm}.$$
  • Das Energiedichtespektrum ${\it \Phi^{^{\hspace{0.08cm}\bullet}}_{g}}(f)$  hat die Einheit  $\rm Ws/Hz$  und das Leistungsdichtespektrum  ${\it \Phi_{s}}(f)$  nach der Division durch den Symbolabstand  $T$  die Einheit  $\rm W/Hz$.



Leistungsdichtespektrum des AMI-Codes

Der Frequenzgang des linearen Codiernetzwerks eines Pseudoternärcodes lautet allgemein:

$$H_{\rm C}(f) = {1}/{2} \cdot \big [1 - K_{\rm C} \cdot {\rm e}^{-{\rm j}\hspace{0.03cm}\cdot \hspace{0.03cm} 2\pi\hspace{0.03cm}\cdot \hspace{0.03cm}f \hspace{0.03cm}\cdot \hspace{0.03cm} N_{\rm C}\hspace{0.03cm}\cdot \hspace{0.03cm}T} \big] ={1}/{2} \cdot \big [1 - K \cdot {\rm e}^{-{\rm j}\hspace{0.03cm}\cdot \hspace{0.03cm} \alpha} \big ]\hspace{0.05cm}.$$

Damit ergibt sich für das Leistungsdichtespektrum (LDS) der Amplitudenkoeffizienten  $(K$  und  $\alpha$  sind Abkürzungen entsprechend obiger Gleichung$)$:

$$ {\it \Phi}_a(f) = | H_{\rm C}(f)|^2 = \frac{\big [1 - K \cos (\alpha) + {\rm j}\cdot K \sin (\alpha) \big ] \big [1 - K \cos (\alpha) - {\rm j}\cdot K \sin (\alpha) \big ] }{4} = \text{...} = {1}/{4} \cdot \big [2 - 2 \cdot K \cdot \cos (\alpha) \big ] $$
Leistungsdichtespektrum des AMI-Codes
$$ \Rightarrow \hspace{0.3cm}{\it \Phi}_a(f) = | H_{\rm C}(f)|^2 = {1}/{2} \cdot \big [1 - K_{\rm C} \cdot \cos (2\pi f N_{\rm C} T)\big ] \hspace{0.4cm}\bullet\!\!-\!\!\!-\!\!\!-\!\!\circ \hspace{0.4cm} \varphi_a(\lambda \cdot T)\hspace{0.05cm}.$$

Insbesondere erhält man für das Leistungsdichtespektrum (LDS) des AMI–Codes $(N_{\rm C} = K_{\rm C} = 1)$:

$${\it \Phi}_a(f) = {1}/{2} \cdot \big [1 - \cos (2\pi f T)\big ] = \sin^2 (\pi f T)\hspace{0.05cm}.$$

Die Grafik zeigt

  • das LDS  ${\it \Phi}_a(f)$  der Amplitudenkoeffizienten (rote Kurve), und
  • das LDS  ${\it \Phi}_s(f)$  des gesamten Sendesignals (blau), gültig für NRZ–Rechteckimpulse.


Man erkennt aus dieser Darstellung

  • die Gleichsignalfreiheit des AMI–Codes, da  ${\it \Phi}_a(f = 0) = {\it \Phi}_s(f = 0) = 0$  ist,
  • die Leistung  $P_{\rm S} = s_0^2/2$  des AMI–codierten Sendesignals (Integral über  ${\it \Phi}_s(f)$  von  $- \infty$  bis  $+\infty$).


Hinweise:

  • Das LDS von HDB3– und B6ZS–Code weicht von dem des AMI–Codes nur unwesentlich ab.
  • Die hier behandelte Thematik können Sie sich mit dem interaktiven Applet  Signale, AKF und LDS der Pseudoternärcodes  verdeutlichen.


Eigenschaften des Duobinärcodes

Leistungsdichtespektrum des Duobinärcodes

Der Duobinärcode ist durch die Codeparameter  $N_{\rm C} = 1$  und  $K_{\rm C} = -1$  festgelegt. Damit ergibt sich für das Leistungsdichtespektrum (LDS) der Amplitudenkoeffizienten bzw. für das LDS des Sendesignals:

$${\it \Phi}_a(f) ={1}/{2} \cdot \big [1 + \cos (2\pi f T)\big ] = \cos^2 (\pi f T)\hspace{0.05cm},$$
$$ {\it \Phi}_s(f) = s_0^2 \cdot T \cdot \cos^2 (\pi f T)\cdot {\rm si}^2 (\pi f T)= s_0^2 \cdot T \cdot {\rm si}^2 (2 \pi f T) \hspace{0.05cm}.$$

Die Grafik zeigt das Leistungsdichtespektrum

  • der Amplitudenkoeffizienten   ⇒   ${\it \Phi}_a(f)$  als rote Kurve,
  • des gesamten Sendsignals   ⇒   ${\it \Phi}_s(f)$  als blaue Kurve.

In der zweiten Grafik sind die Signale  $q(t)$,  $b(t)$  und  $c(t) = s(t)$  skizziert. Wir verweisen hier wieder auf das Applet  Signale, AKF und LDS der Pseudoternärcodes, das auch die Eigenschaften des Duobinärcodes verdeutlicht.

Signale bei Duobinärcodierung



Aus diesen Darstellungen geht hervor:

  • Beim Duobinärcode können beliebig viele Symbole mit gleicher Polarität („+1” bzw. „–1”) direkt aufeinanderfolgen.
  • Deshalb gilt  ${\it \Phi}_a(f = 0)=1$  und  ${\it \Phi}_s(f = 0) = 1/2 \cdot s_0^2 \cdot T$.
  • Dagegen tritt beim Duobinärcode die alternierende Folge „ ... , +1, –1, +1, –1, +1, ... ” nicht auf, die hinsichtlich Impulsinterferenzen besonders störend ist.
  • Deshalb gilt beim Duobinärcode:  ${\it \Phi}_s(f = 1/(2T) = 0$.
  • Das Leistungsdichtespektrum  ${\it \Phi}_s(f)$  des pseudoternären Duobinärcodes ist identisch mit dem LDS bei redundanzfreier Binärcodierung mit halber Rate $($Symboldauer  $2T)$.



Versuchsdurchführung

Aufgaben 2D-Gauss.png


  • Wählen Sie zunächst die Nummer  (12, ... )  der zu bearbeitenden Aufgabe.
  • Eine Aufgabenbeschreibung wird angezeigt. Die Parameterwerte sind angepasst.
  • Lösung nach Drücken von „Musterlösung”.
  • Die Nummer  0  entspricht einem „Reset”:  Einstellung wie beim Programmstart.



(1)  Betrachten und interpretieren Sie die binäre Vorcodierung beim AMI–Code anhand der Quellensymbolfolge  $\rm C$  unter der Annahme  $b_0 = +1$.

  • Die Modulo–2–Addition kann auch als Antivalenz aufgefasst werden.  Es gilt  $b_{\nu} = +1$, falls sich  $q_{\nu}$  und  $b_{\nu – 1}$  unterscheiden, andernfalls ist  $b_{\nu} = -1$  zu setzen:
  $b_1 = (q_1 = +1)\ {\rm XOR}\ (b_0= +1) = -1,\ \ b_2 = (q_2 = -1)\ {\rm XOR}\ (b_1= -1) = -1,\ \ b_3 = (q_3 = -1)\ {\rm XOR}\ (b_2= -1) = -1,$
  $b_4 = (q_4 = +1)\ {\rm XOR}\ (b_3= -1) = +1,\ \ b_5 = (q_5 = +1)\ {\rm XOR}\ (b_4= +1) = -1,\ \ b_6 = (q_6 = +1)\ {\rm XOR}\ (b_5= -1) = +1,\ \ b_7 = b_8 = \text{...} = -1.$
  • Mit der Startbedingung  $b_0 = -1$  ergibt sich die negierte Folge:  $b_4 = b_6 =-1$.  Alle anderen  $b_\nu = +1$.


(2)  Es gelte  $b_0 = +1$.  Betrachten Sie die AMI–Coderfolge  $\langle c_\nu \rangle$  der Quellensymbolfolge  $\rm C$  und geben Sie deren Ampltitudenkoeffizienten  $a_\nu$  an.

  • Es gilt:  $a_1= 0.5 \cdot (b_1-b_0) = -1$,  $a_2= 0.5 \cdot (b_2-b_1) =0$,  $a_3= 0.5 \cdot (b_3-b_2) =0$,  $a_4= +1$,  $a_5= -1$,  $a_6= +1$,  $a_7= -1$,  $a_8= a_9 = \text{...} = 0$.
  • Im Gegensatz zur Vorcodierung ist hier die herkömmliche Addition (Subtraktion) anzuwenden und nicht die Modulo–2– Addition.


(3)  Betrachten Sie nun die AMI–Codierung für mehrere Zufallsfolgen.  Welche Regeln lassen sich aus diesen Versuchen für die Ampltitudenkoeffizienten  $a_\nu$  ableiten?

  • Jeder Binärwert  „–1”  von  $q(t)$   ⇒   Symbol  $\rm L$  wird durch den ternären Koeffizienten  $a_\nu = 0$  codiert.  Es können beliebig viele  $a_\nu = 0$  aufeinanderfolgen.
  • Der Binärwert  „+1”  von  $q(t)$   ⇒   Symbol  $\rm H$  wird alternierend mit  $a_\nu = +1$  und  $a_\nu = -1$  dargestellt, beginnend mit  $a_\nu = -1$, falls  $b_0 = +1$.
  • Aus der Quellensymbolfolge  $\rm A$   ⇒   $\langle \hspace{0.05cm}q_\nu \equiv +1 \hspace{0.05cm}\rangle$  wird die Codesymbolfolge  $+1, -1, +1, -1, \text{...}$ . Lange Folgen  $\langle \hspace{0.05cm}a_\nu \equiv +1 \hspace{0.05cm}\rangle$  bzw.   $\langle \hspace{0.05cm}a_\nu \equiv -1 \hspace{0.05cm}\rangle$  sind ausgeschossen.


(4)  Weiterhin AMI–Codierung.  Interpretieren Sie die Autokorrelationsfunktion  $\varphi_a(\lambda)$  der Amplitudenkoeffizienten und das Leistungsdichtespektrum  $\Phi_a(f)$.

  • Die diskrete AKF  $\varphi_a(\lambda)$  der Amplitudenkoeffizienten ist nur für ganzzahlige  $\lambda$–Werte definiert.  Beim AMI–Code  $(N_{\rm C}=1)$  sind für  $|\lambda| > 1$  alle  $\varphi_a(\lambda)= 0$.
  • $\varphi_a(\lambda = 0)$  ist gleich dem quadratischen Mittelwert der Amplitudenkoeffizienten   ⇒   $\varphi_a(\lambda = 0) = {\rm Pr}(a_\nu = +1) \cdot (+1)^2 + {\rm Pr}(a_\nu = -1) \cdot (-1)^2 = 0.5.$
  • Zum Erwartungswert  ${\rm E}\big [a_\nu \cdot a_{\nu+1}\big]$  tragen nur die Kombinationen  $(+1, -1)$  und  $(-1, +1)$  bei.  Ergebnis:  $\varphi_a(\lambda = \pm 1)={\rm E}\big [a_\nu \cdot a_{\nu+1}\big]=-0.25.$
  • Das Leistungsdichtespektrum  ${\it \Phi}_a(f)$  ist die Fouriertransformierte der diskreten AKF  $\varphi_a(\lambda)$.  Das Ergebnis ist  ${\it \Phi}_a(f) = {1}/{2} \cdot \big [1 - \cos (2\pi f T)\big ] = \sin^2 (\pi f T)\hspace{0.05cm}.$
  • Aus der Gleichsignalfreiheit   ⇒  ${\it \Phi}_a(f = 0) = 0$  folgt:   Der AMI–Code ist insbesondere für Kanäle interessant, über die kein Gleichanteil übertragen werden kann.


(5)  Wir betrachten weiter die AMI–Codierung und den Rechteckimpuls.  Interpretieren Sie die AKF  $\varphi_s(\tau)$  des Sendesignals und das LDS  ${\it \Phi}_s(f)$.

  • $\varphi_s(\tau)$  ergibt sich aus der Faltung der diskreten AKF  $\varphi_a(\lambda)$  mit  $\varphi^{^{\hspace{0.05cm}\bullet}}_{g}(\tau)$.  Beim Rechteckimpuls  $($Dauer $T)$  ist die Energie–AKF  $\varphi^{^{\hspace{0.05cm}\bullet}}_{g}(\tau)$  ein Dreieck der Dauer  $2T$.
  • Es gilt  $\varphi_s(\tau = 0)= \varphi_a(\lambda = 0) =0.5, \ \varphi_s(\pm T)= \varphi_a( 1) =-0.25,\ , \ \varphi_s( \pm 2T)= \varphi_a(2) =0.$  Zwischen diesen diskreten Werten verläuft  $\varphi_{s}(\tau)$  stets linear.
  • Das LDS  ${\it \Phi}_s(f)$  ergibt sich aus  ${\it \Phi}_a(f) = \sin^2(\pi f T)$  durch Multiplikation mit ${\it \Phi}^{^{\hspace{0.08cm}\bullet}}_{g}(f) = {\rm si}^2(\pi f T).$  An den Nullstellen von  ${\it \Phi}_a(f)$  ändert sich dadurch nichts.


(6)  Was ändert sich bezüglich  $s(t)$,  $\varphi_s(\tau)$  und  ${\it \Phi}_s(f)$  mit dem Nyquistimpuls?  Variieren Sie hierbei den Rolloff–Faktor im Bereich  $0 \le r \le 1$.

  • Ein einzelner Nyquistimpuls kann mit der Quellensymbolfolge  $\rm B$  im  $s(t)$–Bereich dargestellt werden.  Man erkennt die äquidistanten Nulldurchgänge im Abstand  $T$.
  • Auch bei jeder AMI–Zufallsfolge entsprechen die Signalwerte  $s(t=\nu \cdot T)$  für jedes  $r$  genau ihren Solllagen.  Außerhalb dieser Punkte gibt es Abweichungen.
  • Im Sonderfall  $r=0$  ist das Energie–LDS  ${\it \Phi}^{^{\hspace{0.08cm}\bullet}}_{g}(f)$  im Bereich  $|f|<1/2T$  konstant.  Dementsprechend hat die Energie–AKF  ${\it \varphi}^{^{\hspace{0.08cm}\bullet}}_{g}(\tau)$  einen  $\rm si$–förmigen Verlauf.
  • Bei größerem  $r$  sind dagegen die Nullstellen von  ${\it \varphi}^{^{\hspace{0.08cm}\bullet}}_{g}(\tau)$  nicht mehr äqidistant, da zwar  $G(f)$  das erste Nyquistkriterium erfüllt, aber nicht  ${\it \Phi}^{^{\hspace{0.08cm}\bullet}}_{g}(f)= [G(f)]^2$.
  • Der wesentliche Vorteil des Nyquistimpulses ist die deutlich kleinere Bandbreite.  Hier muss nur der Frequenzbereich  $|f| < (1+r)/(2T)$  bereitgestellt werden.


(7)  Wiederholen Sie den letzten Versuch mit dem Wurzel–Nyquistimpuls anstelle des Nyquistimpulses und interpretieren Sie die Ergebnisse.

  • Im Sonderfall  $r=0$  sind die Ergebnisse wie in  (6). ${\it \Phi}^{^{\hspace{0.08cm}\bullet}}_{g}(f)$  ist im Bereich  $|f|<1/2T$  konstant, außerhalb Null;  ${\it \varphi}^{^{\hspace{0.08cm}\bullet}}_{g}(\tau)$  hat einen  $\rm si$–förmigen Verlauf.
  • Auch bei größerem  $r$  sind die Nullstellen von  ${\it \varphi}^{^{\hspace{0.08cm}\bullet}}_{g}(\tau)$  äqidistant  (aber nicht $\rm si$–förmig)   ⇒   ${\it \Phi}^{^{\hspace{0.08cm}\bullet}}_{g}(f)= [G(f)]^2$  erfüllt das erste Nyquistkriterium.
  • Dagegen erfüllt  $G(f)$  das erste Nyquistkriterium nicht  $($außer für  $r=0)$.  Es kommt vielmehr bereits beim Sendesignal  $s(t)$  zu Impulsinterferenzen.
  • Dies ist aber auch kein grundlegendes Problem.  Durch ein formgleiches Empfangsfilter wie  $G(f)$  werden Impulsinterferenzen vor dem Entscheider vermieden.


(8)  Betrachten und kontrollieren Sie die Vorcodierung  $(b_\nu)$  und die Amplitudenoeffizienten  $a_\nu$  beim Duobinärcode   $($Quellensymbolfolge  $\rm C$,  $b_0 = +1)$.

  • $b_1 = (q_1 = +1)\ {\rm XOR}\ (\overline{b_0}= -1) = +1,\ \ b_2 = (q_2 = -1)\ {\rm XOR}\ (\overline{b_1}= -1) = -1,\ \ b_3 = \text{...} =b_7 = +1,$  $b_8 = b_{10} = \text{...} =-1$,  $b_9 =b_{11} = \text{...}= +1$.
  • $a_1= 0.5 \cdot (b_1+b_0) = +1$,  $a_2= 0.5 \cdot (b_2+b_1) =0$,  $a_3= 0.5 \cdot (b_3+b_2) = 0$,  $a_4= \text{...}= a_7=+1$,  $a_8=a_9= \text{...}= 0$.
  • Mit der Startbedingung  $b_0 = -1$  ergibt sich wieder die negierte Folge:     $a_1= -1$,  $a_2= a_3= 0$,  $a_4= \text{...}= a_7=-1$,  $a_8=a_9= \text{...}= 0$.


(9)  Betrachten Sie nun die Duobinärodierung für mehrere Zufallsfolgen.  Welche Regeln lassen sich aus diesen Versuchen für die Ampltitudenkoeffizienten  $a_\nu$  ableiten?

  • Die diskreten AKF–Werte sind  $\varphi_a(\lambda = 0) = +0.5$,  $\varphi_a(\lambda = 1) = +0.25$,  $\varphi_a(\lambda = 2) = 0$   ⇒   ${\it \Phi}_a(f) = {1}/{2} \cdot \big [1 + \cos (2\pi f T)\big ] = \cos^2 (\pi f T)\hspace{0.05cm}.$
  • Im Gegensatz zur AMI–Codierung sind hier längere  $+1$–Folgen und  $-1$–Folgen möglich   ⇒   der Duobinärcode ist nicht gleichsignalfrei:  ${\it \Phi}_a(f= 0) = 1 \ (\ne 0).$
  • Ebenso wie beim AMI–Code sind auch hier längere Nullfolgen möglich, was wieder zu Synchronisationsproblemen führen kann.
  • Ausgeschlossen sind jedoch die Kombinationen  $a_\nu = +1, \ a_{\nu+1} = -1$  und   $a_\nu = -1, \ a_{\nu+1} = +1$,  erkennbar am LDS–Wert  ${\it \Phi}_a(f= 1/(2T)) = 0.$
  • Solche direkten Übergänge  $a_\nu = +1$   ⇒   $a_{\nu+1} = -1$  bzw.   $a_\nu = -1$   ⇒   $a_{\nu+1} = +1$  führen zu großen Impulsinterferenzen und damit zu einer höheren Fehlerrate.


(10)  Vergleichen Sie die Codierergebnisse von Bipolarcode zweiter Ordnung  $\rm (BIP2)$  und AMI–Code für verschiedene Quellensymbolfolgen.

  • Bei einem einzelnen  $+1$–Impuls   ⇒   Quellensymbolfolge  $\rm B$  führen beide Codes zum gleichen Codersignal.  Es ergibt sich jeweils ebenfalls ein Einzelimpuls.
  • Bei der Dauer–Eins–Folge  $\rm A$  ergibt sich nun die Coderfolge  $\langle c_\nu \rangle = \langle -1, -1, +1, +1, -1, -1, +1, +1, \text{...}\rangle $  statt   $\langle c_\nu \rangle = \langle -1, +1, -1, +1, -1, +1, -1, +1, \text{...}\rangle $.
  • Der einfache Decodieralgorithmus des AMI–Codes  $($die ternäre  $0$  wird zur binären  $-1$,  die ternären  $\pm 1$  zur binären  $+1)$  lässt sich bei  $\rm BIP2$  nicht anwenden.


(11)  Betrachten und interpretieren Sie die verschiedenen AKF– und LDS–Grafiken des  $\rm BIP2$  im Vergleich zum AMI–Code.

  • Bei  $\rm AMI$  ist  $\varphi_a(\lambda = \pm 1) = -0.25, \ \varphi_a(\lambda = \pm 2) = 0$.  Für  $\rm BIP2$  gilt  $\varphi_a(\lambda = \pm 1) = 0, \ \varphi_a(\lambda = \pm 2) = -0.25$.  In beiden Fällen ist  $\varphi_a(\lambda = 0) = 0.5$.
  • Aus dem  $\rm AMI$–LDS  ${\it \Phi}_a(f) = \sin^2 (\pi \cdot f T)$  folgt das  $\rm BIP2$–LDS  ${\it \Phi}_a(f) = \sin^2 (2\pi \cdot f T)$  durch Stauchung hinsichtlich  $f$–Achse.
  • Nullstelle bei  $f=0$:  Es folgen höchstens zwei  $+1$  direkt aufeinander, und auch maximal nur zwei  $-1$.  Beim AMI–Code treten  $+1$  und  $-1$  nur isoliert auf.
  • Nächste Nullstelle bei  $f=1/(2T)$:  Die unendlich lange  $(+1, -1)$–Folge ist bei diesem Code ebenso wie beim Duobinärcode ausgeschlossen.
  • Betrachten und interpretieren Sie auch die Funktionen  $\varphi_s(\tau)$  und  ${\it \Phi}_s(f)$  für die Impulse „Rechteck”, „Nyquist” und „Wurzel–Nyquist”.

Zur Handhabung des Applets


Anleitung abtast.png





    (A)     Auswahl eines von vier Quellensignalen

    (B)     Parameterwahl für Quellensignal  $1$  (Amplitude, Frequenz, Phase)

    (C)     Ausgabe der verwendeten Programmparameter

    (D)     Parameterwahl für Abtastung  $(f_{\rm G})$  und
                Signalrekonstruktion  $(f_{\rm A},\ r)$

    (E)     Skizze des Empfänger–Frequenzgangs  $H_{\rm E}(f)$

    (F)     Numerische Ausgabe  $(P_x, \ P_{\rm \varepsilon}, \ 10 \cdot \lg(P_x/ P_{\rm \varepsilon})$

    (G)     Darstellungsauswahl für Zeitbereich

    (H)     Grafikbereich für Zeitbereich

    ( I )     Darstellungsauswahl für Frequenzbereich

    (J)     Grafikbereich für Frequenzbereich

    (K)     Bereich für Übungen:  Aufgabenauswahl, Fragen, Musterlösung

Über die Autoren

Dieses interaktive Berechnungstool wurde am  Lehrstuhl für Nachrichtentechnik  der  Technischen Universität München  konzipiert und realisiert.

  • Die erste Version wurde 2010 von  Stefan Müller  im Rahmen seiner Diplomarbeit (LB) mit „FlashMX–Actionscript” erstellt (Betreuer:  Günter Söder).
  • 2020 wurde das Programm von  Carolin Mirschina  im Rahmen einer Werkstudententätigkeit auf „HTML5” umgesetzt und neu gestaltet (Betreuer:  Tasnád Kernetzky).


Die Umsetzung dieses Applets auf HTML 5 wurde durch die  Exzellenzinitiative  der TU München finanziell unterstützt. Wir bedanken uns.



Nochmalige Aufrufmöglichkeit des Applets in neuem Fenster

Applet in neuem Tab öffnen

  1. Söder, G.; Tröndle, K.: Digitale Übertragungssysteme - Theorie, Optimierung & Dimensionierung der Basisbandsysteme. Berlin – Heidelberg: Springer, 1985.