Digitalsignalübertragung/Redundanzfreie Codierung: Unterschied zwischen den Versionen
Ayush (Diskussion | Beiträge) |
Ayush (Diskussion | Beiträge) |
||
Zeile 25: | Zeile 25: | ||
{{Beispiel}}''':''' Bei den Pseudoternärcodes wird durch die Erhöhung der Stufenzahl von <i>M<sub>q</sub></i> = 2 auf <i>M<sub>c</sub></i> = 3 bei gleicher Symboldauer (<i>T<sub>c</sub></i> = <i>T<sub>q</sub></i>) eine relative Redundanz von 1 – 1/log<sub>2</sub>(3) ≈ 37% hinzugefügt. Im Gegensatz dazu arbeiten die so genannten 4B3T–Codes auf Blockebene mit den Codeparametern <nobr><i>m<sub>q</sub></i> = 4,</nobr> <i>M<sub>q</sub></i> = 2, <i>m<sub>c</sub></i> = 3, <i>M<sub>c</sub></i> = 3 und besitzen eine relative Redundanz von ca. 16%. Das Sendesignal ist hier wegen <i>T<sub>c</sub></i>/<i>T<sub>q</sub></i> = 4/3 niederfrequenter als bei uncodierter Übertragung, was die oft teuere Bandbreite verringert und zudem für viele Nachrichtenkanäle auch aus übertragungstechnischer Sicht von Vorteil ist.{{end}}<br> | {{Beispiel}}''':''' Bei den Pseudoternärcodes wird durch die Erhöhung der Stufenzahl von <i>M<sub>q</sub></i> = 2 auf <i>M<sub>c</sub></i> = 3 bei gleicher Symboldauer (<i>T<sub>c</sub></i> = <i>T<sub>q</sub></i>) eine relative Redundanz von 1 – 1/log<sub>2</sub>(3) ≈ 37% hinzugefügt. Im Gegensatz dazu arbeiten die so genannten 4B3T–Codes auf Blockebene mit den Codeparametern <nobr><i>m<sub>q</sub></i> = 4,</nobr> <i>M<sub>q</sub></i> = 2, <i>m<sub>c</sub></i> = 3, <i>M<sub>c</sub></i> = 3 und besitzen eine relative Redundanz von ca. 16%. Das Sendesignal ist hier wegen <i>T<sub>c</sub></i>/<i>T<sub>q</sub></i> = 4/3 niederfrequenter als bei uncodierter Übertragung, was die oft teuere Bandbreite verringert und zudem für viele Nachrichtenkanäle auch aus übertragungstechnischer Sicht von Vorteil ist.{{end}}<br> | ||
+ | |||
+ | == Redundanzfreies Ternär– und Quaternärsignal (1) == | ||
+ | <br> | ||
+ | Ein Sonderfall eines Blockcodes ist die redundanzfreie Codierung. Ausgehend vom redundanzfreien binären Quellensignal <i>q</i>(<i>t</i>) mit Bitdauer <i>T<sub>q</sub></i> wird ein <i>M<sub>c</sub></i>–stufiges Codersignal <i>c</i>(<i>t</i>) generiert, wobei die Symboldauer <i>T<sub>c</sub></i> = <i>T<sub>q</sub></i> · log<sub>2</sub>(<i>M<sub>c</sub></i>) beträgt. Somit ergibt sich für die relative Redundanz: | ||
+ | |||
+ | :<math>r_c = 1- \frac{T_c}{T_q \cdot {\rm log_2} (M_c)} = 1- \frac{m_q}{m_c \cdot {\rm log_2} (M_c)}= 0 \hspace{0.05cm}.</math> | ||
+ | |||
+ | Dabei gilt: | ||
+ | *Ist <i>M<sub>c</sub></i> eine Potenz zur Basis 2, so werden <i>m<sub>q</sub></i> = log<sub>2</sub>(<i>M<sub>c</sub></i>) zu einem einzigen Codesymbol (<i>m<sub>c</sub></i> = 1) zusammengefasst.<br> | ||
+ | *Ist <i>M<sub>c</sub></i> keine Zweierpotenz, so ist eine hundertprozentig redundanzfreie Blockcodierung nicht möglich. Codiert man beispielweise <i>m<sub>q</sub></i> = 3 Binärsymbole durch <i>m<sub>c</sub></i> = 2 Ternärsymbole und setzt <i>T<sub>c</sub></i> = 1.5 · <i>T<sub>q</sub></i>, so verbleibt eine relative Redundanz von 1 – 1.5/log<sub>2</sub>(3) ≈ 5%.<br> | ||
+ | *Codiert man einen Block von 128 Binärsymbolen mit 81 Ternärsymbolen, so ergibt sich eine relative Coderedundanz von weniger als 0.3%.<br><br> | ||
+ | |||
+ | Zur Vereinfachung der Schreibweise und zur Nomenklaturanpassung an das Kapitel 1 verwenden wir im Folgenden die Bitdauer <i>T</i><sub>B</sub> = <i>T<sub>q</sub></i> des redundanzfreien binären Quellensignals, die Symboldauer <i>T</i> = <i>T<sub>c</sub></i> von Codersignal und Sendesignal sowie die Stufenzahl <i>M</i> = <i>M<sub>c</sub></i>.<br> | ||
+ | |||
+ | Damit ergibt sich für das Sendesignal die identische Form wie bei der Binärübertragung, jedoch mit anderen Amplitudenkoeffizienten: | ||
+ | |||
+ | :<math>s(t) = \sum_{\nu = -\infty}^{+\infty} a_\nu \cdot g_s ( t - \nu \cdot T)\hspace{0.3cm}{\rm mit}\hspace{0.3cm} a_\nu \in \{ a_1, ... , a_\mu , ... , a_{ M}\}\hspace{0.05cm}.</math> | ||
+ | |||
+ | Die Amplitudenkoeffizienten <i>a<sub>ν</sub></i> können prinzipiell beliebig – aber eindeutig – den Codersymbolen <i>c<sub>ν</sub></i> zugeordnet werden. Es ist zweckmäßig, die Abstände zwischen benachbarten Amplituden gleich groß zu wählen. Bei bipolarer Signalisierung (–1 ≤ <i>a<sub>μ</sub></i> ≤ +1) gilt somit für die möglichen Amplitudenkoeffizienten mit dem Laufindex <i>μ</i> = 1, ... , <i>M</i>: | ||
+ | |||
+ | :<math>a_\mu = \frac{2\mu - M - 1}{M-1} \hspace{0.05cm}.</math> | ||
+ | |||
+ | Unabhängig von der Stufenzahl <i>M</i> erhält man hieraus für die äußeren Amplitudenkoeffizienten <i>a</i><sub>1</sub> = –1 und <i>a<sub>M</sub></i> = +1. Bei einem ternären Signal (<i>M</i> = 3) sind die möglichen Amplitudenkoeffizienten –1, 0 und +1, während bei einem Quaternärsignal (<i>M</i> = 4) folgende Koeffizienten auftreten: –1, –1/3, +1/3, +1.<br> | ||
Version vom 20. Dezember 2016, 22:42 Uhr
Blockweise und symbolweise Codierung
Bei der Übertragungscodierung unterscheidet man zwischen zwei Arten, der symbolweisen und der blockweisen Codierung. Bei symbolweiser Codierung, die im Kapitel 2.4 im Detail beschrieben ist, wird mit jedem ankommenden Quellensymbol qν ein Codesymbol cν erzeugt, das außer vom aktuellen Symbol qν auch von vorangegangenen Symbolen abhängen kann.
Typisch für alle Übertragungscodes zur symbolweisen Codierung ist, dass die Bitdauer Tq der als binär und redundanzfrei angenommenen Nachrichtenquelle mit der Symboldauer Tc des meist mehrstufigen und redundanten Codersignals c(t) übereinstimmt.
Dagegen wird bei der blockweisen Codierung jeweils einem Block von mq binären Quellensymbolen (Mq = 2) der Bitdauer Tq eine ein–eindeutige Sequenz von mc Codesymbolen aus einem Alphabet mit dem Codesymbolumfang Mc ≥ 2 zugeordnet. Für die Symboldauer eines Codesymbols gilt dann
\[T_c = \frac{m_q}{m_c} \cdot T_q \hspace{0.05cm},\]
und die relative Redundanz eines Blockcodes beträgt allgemein
\[r_c = 1- \frac{R_q}{R_c} = 1- \frac{T_c}{T_q} \cdot \frac{{\rm log_2} (M_q)}{{\rm log_2} (M_c)} = 1- \frac{T_c}{T_q \cdot {\rm log_2} (M_c)}\hspace{0.05cm}.\]
Genauere Angaben zu den Blockcodes finden Sie im Kapitel 2.3.
Redundanzfreies Ternär– und Quaternärsignal (1)
Ein Sonderfall eines Blockcodes ist die redundanzfreie Codierung. Ausgehend vom redundanzfreien binären Quellensignal q(t) mit Bitdauer Tq wird ein Mc–stufiges Codersignal c(t) generiert, wobei die Symboldauer Tc = Tq · log2(Mc) beträgt. Somit ergibt sich für die relative Redundanz:
\[r_c = 1- \frac{T_c}{T_q \cdot {\rm log_2} (M_c)} = 1- \frac{m_q}{m_c \cdot {\rm log_2} (M_c)}= 0 \hspace{0.05cm}.\]
Dabei gilt:
- Ist Mc eine Potenz zur Basis 2, so werden mq = log2(Mc) zu einem einzigen Codesymbol (mc = 1) zusammengefasst.
- Ist Mc keine Zweierpotenz, so ist eine hundertprozentig redundanzfreie Blockcodierung nicht möglich. Codiert man beispielweise mq = 3 Binärsymbole durch mc = 2 Ternärsymbole und setzt Tc = 1.5 · Tq, so verbleibt eine relative Redundanz von 1 – 1.5/log2(3) ≈ 5%.
- Codiert man einen Block von 128 Binärsymbolen mit 81 Ternärsymbolen, so ergibt sich eine relative Coderedundanz von weniger als 0.3%.
Zur Vereinfachung der Schreibweise und zur Nomenklaturanpassung an das Kapitel 1 verwenden wir im Folgenden die Bitdauer TB = Tq des redundanzfreien binären Quellensignals, die Symboldauer T = Tc von Codersignal und Sendesignal sowie die Stufenzahl M = Mc.
Damit ergibt sich für das Sendesignal die identische Form wie bei der Binärübertragung, jedoch mit anderen Amplitudenkoeffizienten:
\[s(t) = \sum_{\nu = -\infty}^{+\infty} a_\nu \cdot g_s ( t - \nu \cdot T)\hspace{0.3cm}{\rm mit}\hspace{0.3cm} a_\nu \in \{ a_1, ... , a_\mu , ... , a_{ M}\}\hspace{0.05cm}.\]
Die Amplitudenkoeffizienten aν können prinzipiell beliebig – aber eindeutig – den Codersymbolen cν zugeordnet werden. Es ist zweckmäßig, die Abstände zwischen benachbarten Amplituden gleich groß zu wählen. Bei bipolarer Signalisierung (–1 ≤ aμ ≤ +1) gilt somit für die möglichen Amplitudenkoeffizienten mit dem Laufindex μ = 1, ... , M:
\[a_\mu = \frac{2\mu - M - 1}{M-1} \hspace{0.05cm}.\]
Unabhängig von der Stufenzahl M erhält man hieraus für die äußeren Amplitudenkoeffizienten a1 = –1 und aM = +1. Bei einem ternären Signal (M = 3) sind die möglichen Amplitudenkoeffizienten –1, 0 und +1, während bei einem Quaternärsignal (M = 4) folgende Koeffizienten auftreten: –1, –1/3, +1/3, +1.
\(\)
[[Datei:||class=fit]]