Beispiele von Nachrichtensystemen/Gesamtes GSM–Übertragungssystem: Unterschied zwischen den Versionen

Aus LNTwww
Wechseln zu:Navigation, Suche
 
(8 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 8: Zeile 8:
  
 
==Komponenten der Sprach– und Datenübertragung== 
 
==Komponenten der Sprach– und Datenübertragung== 
 
+
<br>
 
Nachfolgend sehen Sie das Blockschaltbild des sendeseitigen GSM–Übertragungssystems, das  
 
Nachfolgend sehen Sie das Blockschaltbild des sendeseitigen GSM–Übertragungssystems, das  
*sowohl für digitalisierte Sprachsignale (Abtastrate: $8 \ \rm kHz$, Quantisierung: $13$ Bit &nbsp; ⇒ &nbsp; Datenrate: $104 \ \rm kbit/s$)
+
*sowohl für digitalisierte Sprachsignale &nbsp;$($Abtastrate:&nbsp; $8 \ \rm kHz$,&nbsp; Quantisierung:&nbsp; $13$ Bit &nbsp; ⇒ &nbsp; Datenrate:&nbsp; $104 \ \rm kbit/s)$  
*als auch für $9.6 \ \rm kbit/s$–Datensignale geeignet ist.  
+
*als auch für&nbsp; $9.6 \ \rm kbit/s$–Datensignale geeignet ist.  
  
  
Zeile 19: Zeile 19:
  
 
Hier eine kurze Beschreibung der einzelnen Komponenten:
 
Hier eine kurze Beschreibung der einzelnen Komponenten:
*Sprachsignale werden durch die Sprachcodierung von $104 \ \rm kbit/s$ auf $13 \ \rm kbit/s$ – also um den Faktor $8$ – komprimiert. Die in der Grafik angegebene Bitrate gilt für den Vollraten–Codec, der pro Sprachrahmen (Dauer $T_{\rm R} = 20\ \rm  ms$) genau $260$ Bit liefert.
+
*Sprachsignale werden durch die Sprachcodierung von&nbsp; $104 \ \rm kbit/s$&nbsp; auf&nbsp; $13 \ \rm kbit/s$&nbsp; – also um den Faktor&nbsp; $8$ – komprimiert. Die in der Grafik angegebene Bitrate gilt für den Vollraten–Codec, der pro Sprachrahmen $($Dauer&nbsp; $T_{\rm R} = 20\ \rm  ms)$&nbsp; genau&nbsp; $260$&nbsp; Bit liefert.
*Der ''AMR–Codec'' liefert im höchsten Modus $12.2 \ \rm kbit/s$ ($244$ Bit pro Sprachrahmen). Der Sprachcodec muss aber zusätzlich auch Informationen hinsichtlich des aktuellen Modus übertragen, so dass die Datenrate vor der Kanalcodierung ebenfalls $13 \ \rm kbit/s$ beträgt.
+
*Der&nbsp; '''AMR–Codec'''&nbsp; liefert im höchsten Modus&nbsp; $12.2 \ \rm kbit/s$&nbsp; $(244$&nbsp; Bit pro Sprachrahmen$)$. Der Sprachcodec muss aber zusätzlich auch Informationen hinsichtlich des aktuellen Modus übertragen, so dass die Datenrate vor der Kanalcodierung ebenfalls&nbsp; $13 \ \rm kbit/s$&nbsp; beträgt.
*Aufgabe der gestrichelt eingezeichneten ''Voice Activity Detection'' ist es zu entscheiden, ob der aktuelle Sprachrahmen tatsächlich ein Sprachsignal enthält oder nur eine Sprachpause, während der die Leistung des Sendeverstärkers heruntergefahren wird.
+
*Aufgabe der gestrichelt eingezeichneten&nbsp; '''Voice Activity Detection'''&nbsp; ist es zu entscheiden, ob der aktuelle Sprachrahmen tatsächlich ein Sprachsignal enthält oder nur eine Sprachpause, während der die Leistung des Sendeverstärkers heruntergefahren werden sollte.
*Durch die ''Kanalcodierung'' wird wieder Redundanz hinzugefügt, um Fehlerkorrektur beim Empfänger zu ermöglichen. Pro Sprachrahmen gibt der Kanalcoder $456$ Bit ab, woraus sich die Datenrate $22.8 \ \rm kbit/s$ ergibt. Die wichtigeren Bits werden besonders geschützt.
+
*Durch die&nbsp; '''Kanalcodierung'''&nbsp; wird wieder Redundanz hinzugefügt, um Fehlerkorrektur beim Empfänger zu ermöglichen. Pro Sprachrahmen gibt der Kanalcoder&nbsp; $456$&nbsp; Bit ab, woraus sich die Datenrate&nbsp; $22.8 \ \rm kbit/s$&nbsp; ergibt. Die wichtigeren Bit werden besonders geschützt.
*Der ''Interleaver'' verwürfelt die entstehende Bitfolge, um den Einfluss von Bündelfehlern zu vermindern. Die $456$ Eingangsbit werden auf vier Zeitrahmen zu je $114$ Bit aufgeteilt. Zwei aufeinander folgende Bits werden somit immer in zwei verschiedenen Bursts übertragen.
+
*Der&nbsp; '''Interleaver'''&nbsp; verwürfelt die entstehende Bitfolge, um den Einfluss von Bündelfehlern zu vermindern. Die&nbsp; $456$&nbsp; Eingangsbit werden auf vier Zeitrahmen zu je&nbsp; $114$&nbsp; Bit aufgeteilt. Zwei aufeinander folgende Bits werden somit immer in zwei verschiedenen Bursts übertragen.
*Ein ''Datenkanal'' – im Bild rot markiert – unterscheidet sich von einem Sprachkanal (blau gekennzeichnet) nur durch die unterschiedliche Eingangsrate ($9.6 \ \rm kbit/s$ statt $104 \ \rm kbit/s$) und die Verwendung eines zweiten, äußeren Kanalcoders anstelle des Sprachcodierers.
+
*Ein&nbsp; '''Datenkanal'''&nbsp; – im Bild rot markiert – unterscheidet sich von einem Sprachkanal (blau gekennzeichnet) nur durch die unterschiedliche Eingangsrate&nbsp; $(9.6 \ \rm kbit/s$&nbsp; statt&nbsp; $104 \ \rm kbit/s)$&nbsp; und die Verwendung eines zweiten, äußeren Kanalcoders anstelle des Sprachcodierers.
  
  
Die grün hinterlegten Komponenten gelten für die Sprach– und Datenübertragung gleichermaßen. Die erste gemeinsame Systemkomponente für Sprach– und Datenübertragung im Blockschaltbild des GSM–Senders auf der ersten Seite dieses Abschnitts ist die '''Verschlüsselung''', die verhindern soll, dass Unbefugte Zugriff auf die Daten erhalten.
+
Die grün hinterlegten Komponenten gelten für die Sprach– und Datenübertragung gleichermaßen. Die erste gemeinsame Systemkomponente für Sprach– und Datenübertragung im Blockschaltbild des GSM–Senders ist die&nbsp; '''Verschlüsselung''', die verhindern soll, dass Unbefugte Zugriff auf die Daten erhalten.
  
  
 
Dabei gibt es zwei grundsätzlich unterschiedliche Verschlüsselungsverfahren:
 
Dabei gibt es zwei grundsätzlich unterschiedliche Verschlüsselungsverfahren:
*'''Symmetrische Verschlüsselung''': Diese kennt nur einen einzigen geheimen Schlüssel, der sowohl zur Verschlüsselung und Chiffrierung der Nachrichten im Sender als auch zur Entschlüsselung und Dechiffrierung im Empfänger benutzt wird. Der Schlüssel muss vor der Kommunikation erzeugt und zwischen den Kommunikationspartnern über einen sicheren Kanal ausgetauscht werden. Der Vorteil dieses im herkömmlichen GSM angewendeten Verschlüsselungsverfahrens ist, dass es sehr schnell arbeitet.
+
*'''Symmetrische Verschlüsselung''':&nbsp; Diese kennt nur einen einzigen geheimen Schlüssel, der sowohl zur Verschlüsselung und Chiffrierung der Nachrichten im Sender als auch zur Entschlüsselung und Dechiffrierung im Empfänger benutzt wird. Der Schlüssel muss vor der Kommunikation erzeugt und zwischen den Kommunikationspartnern über einen sicheren Kanal ausgetauscht werden. Der Vorteil dieses im herkömmlichen GSM angewendeten Verschlüsselungsverfahrens ist, dass es sehr schnell arbeitet.
*'''Asymmetrische Verschlüsselung''': Dieses Verfahren benutzt zwei unabhängige, aber zueinander passende asymmetrische Schlüssel. Es ist nicht möglich, mit einem Schlüssel den anderen zu berechnen. Der „Public Key” ist öffentlich zugänglich und dient der Verschlüsselung. Der „Private Key” ist geheim und wird bei der Entschlüsselung verwendet. Im Gegensatz zu den symmetrischen Verschlüsselungsverfahren sind die asymmetrischen Methoden wesentlich langsamer, bieten dafür aber auch eine höhere Sicherheit.
+
*'''Asymmetrische Verschlüsselung''':&nbsp; Dieses Verfahren benutzt zwei unabhängige, aber zueinander passende asymmetrische Schlüssel. Es ist nicht möglich, mit einem Schlüssel den anderen zu berechnen. Der&nbsp; „Public Key”&nbsp; ist öffentlich zugänglich und dient der Verschlüsselung. Der&nbsp; „Private Key”&nbsp; ist geheim und wird bei der Entschlüsselung verwendet. Im Gegensatz zu den symmetrischen Verschlüsselungsverfahren sind die asymmetrischen Methoden wesentlich langsamer, bieten dafür aber auch eine höhere Sicherheit.
  
  
Der zweite grüne Block ist die '''Burstbildung''', wobei es verschiedene Burstarten gibt. Beim ''Normal Burst'' werden die $114$ codierten, verwürfelten und verschlüsselten Bits durch Hinzufügen von ''Guard Period'', Signalisierungsbits, etc. auf $156.25$ Bit abgebildet. Diese werden innerhalb eines Zeitschlitzes der Dauer $T_{\rm Z} = 576.9 \ \rm &micro; s$ mittels des ''Modulationsverfahrens'' GMSK übertragen. Daraus ergibt sich die Brutto–Datenrate $270.833  \ \rm kbit/s$.
+
Der zweite grüne Block ist die&nbsp; '''Burstbildung''', wobei es verschiedene Burstarten gibt. Beim&nbsp; ''Normal Burst''&nbsp; werden die&nbsp; $114$&nbsp; codierten, verwürfelten und verschlüsselten Bit durch Hinzufügen von&nbsp; ''Guard Period'', Signalisierungsbits, etc. auf&nbsp; $156.25$&nbsp; Bit abgebildet. Diese werden innerhalb eines Zeitschlitzes der Dauer&nbsp; $T_{\rm Z} = 576.9 \ \rm &micro; s$&nbsp; mittels des&nbsp; ''Modulationsverfahrens''&nbsp; &bdquo;GMSK&rdquo; übertragen. Daraus ergibt sich die Brutto–Datenrate&nbsp; $270.833  \ \rm kbit/s$.
  
 
Beim Empfänger gibt es in umgekehrter Reihenfolge die Blöcke  
 
Beim Empfänger gibt es in umgekehrter Reihenfolge die Blöcke  
Zeile 50: Zeile 50:
 
   
 
   
 
==Codierung bei Sprachsignalen== 
 
==Codierung bei Sprachsignalen== 
 +
<br>
 +
Uncodierte Funkdatenübertragung führt zu Bitfehlerraten im Prozentbereich. Mit&nbsp; [[Kanalcodierung]]&nbsp; (englisch:&nbsp; ''Channel Coding'') können aber manche Übertragungsfehler beim Empfänger erkannt oder sogar korrigiert werden. Die Bitfehlerrate lässt sich so auf Werte kleiner als&nbsp;  $10^{–5}$ reduzieren.
  
Uncodierte Funkdatenübertragung führt zu Bitfehlerraten im Prozentbereich. Durch Anwendung von '''Kanalcodierung''' (englisch: ''Channel Coding'') können aber manche Übertragungsfehler beim Empfänger erkannt oder sogar korrigiert werden. Die Bitfehlerrate lässt sich so auf Werte von $10^{–5}$ bis $10^{–6}$ reduzieren.
+
[[Datei:P_ID1219__Bei_T_3_4_S2_v1.png|right|frame|Zur Codierung von Sprachsignalen bei GSM ]]
  
Zunächst betrachten wir die GSM-Kanalcodierung für die Sprachkanäle, wobei als Sprachcoder der Vollraten–Codec vorausgesetzt wird. Die Kanalcodierung eines Sprachrahmens der Dauer 20 ms erfolgt in vier aufeinander folgenden Schritten entsprechend obiger Grafik:
+
Zunächst betrachten wir die GSM-Kanalcodierung für die Sprachkanäle, wobei als Sprachcoder der&nbsp; [[Beispiele_von_Nachrichtensystemen/Sprachcodierung#GSM_Fullrate_Vocoder_.E2.80.93_Vollraten.E2.80.93Codec|Vollraten–Codec]]&nbsp; vorausgesetzt wird. Die Kanalcodierung eines Sprachrahmens von&nbsp; $20\ \rm  ms$&nbsp; Dauer erfolgt in vier aufeinander folgenden Schritten entsprechend der Grafik.
*Aus der Beschreibung in Kapitel 3.3 ist zu ersehen, dass nicht alle 260 Bits den gleichen Einfluss auf die subjektiv empfundene Sprachqualität haben. Deshalb werden die Daten entsprechend ihrer Wichtigkeit in drei Klassen aufgeteilt: Die 50 wichtigsten Bits bilden die '''Klasse 1a''', weitere 132 werden der '''Klasse 1b''' zugeteilt. Die restlichen 78 Bits ergeben die eher unwichtige '''Klasse 2'''.
+
<br clear=all>
*Im nächsten Schritt wird für die 50 besonders wichtigen Bits der Klasse 1a mit einem rückgekoppelten Schieberegister eine drei Bit lange '''Cyclic Redundancy Check''' (CRC)–Prüfsumme berechnet. Das Generatorpolynom für diese CRC–Überprüfung lautet:
+
Aus der Beschreibung im Kapitel&nbsp; [[Beispiele_von_Nachrichtensystemen/Sprachcodierung|Sprachcodierung]]&nbsp; ist zu ersehen, dass nicht alle&nbsp; $260$&nbsp; Bit den gleichen Einfluss auf die subjektiv empfundene Sprachqualität haben.  
 +
*Deshalb werden die Daten entsprechend ihrer Wichtigkeit in drei Klassen aufgeteilt: &nbsp; Die&nbsp; $50$&nbsp; wichtigsten Bit bilden die&nbsp; '''Klasse 1a''', weitere&nbsp; $132$&nbsp; werden der&nbsp; '''Klasse 1b'''&nbsp; zugeteilt und die restlichen&nbsp; $78$&nbsp; Bit ergeben die eher unwichtige&nbsp; '''Klasse 2'''.
 +
*Im nächsten Schritt wird für die&nbsp; $50$&nbsp; besonders wichtigen Bit der Klasse 1a mit einem rückgekoppelten Schieberegister eine drei Bit lange&nbsp; [[Beispiele_von_Nachrichtensystemen/Verfahren_zur_Senkung_der_Bitfehlerrate_bei_DSL#Cyclic_Redundancy_Check|Cyclic Redundancy Check]]&nbsp; (CRC)–Prüfsumme berechnet. Das Generatorpolynom für diese CRC–Überprüfung lautet:
 +
:$$G_{\rm CRC}(D) = D^3 + D +1\hspace{0.05cm}. $$
 
   
 
   
*Anschließend werden den insgesamt 185 Bits der Klasse 1a und 1b inclusive den drei (rot eingezeichneten) CRC–Paritätsbits noch vier (gelbe) '''Tailbits''' „0000” angehängt. Diese vier Bits initialisieren die vier Speicherregister des nachfolgenden Faltungscoders jeweils mit 0, so dass für jeden Sprachrahmen von einem definierten Status ausgegangen werden kann.
+
*Anschließend werden den insgesamt&nbsp; $185$&nbsp; Bit der Klasse 1a und 1b inclusive den drei (rot eingezeichneten) CRC–Paritätsbits noch vier (gelbe)&nbsp; ''Tailbits'' „0000”&nbsp; angehängt. Diese vier Bit initialisieren die vier Speicherregister des nachfolgenden Faltungscoders jeweils mit&nbsp; $0$, so dass für jeden Sprachrahmen von einem definierten Status ausgegangen werden kann.
*Der Faltungscode mit der Coderate $R_{\rm C}$ = 1/2 verdoppelt diese 189 wichtigsten Bits auf 378 Bits und schützt diese somit signifikant gegen Übertragungsfehler. Anschließend werden noch die 78 Bits der unwichtigeren Klasse 2 ungeschützt angehängt.
+
*Der Faltungscode mit der Coderate&nbsp; $R_{\rm C} = 1/2$&nbsp; verdoppelt diese&nbsp; $189$&nbsp; wichtigsten Bit auf&nbsp; $378$&nbsp; Bit und schützt diese somit signifikant gegen Übertragungsfehler. Anschließend werden noch die&nbsp; $78$&nbsp; Bit der unwichtigeren Klasse 2 ungeschützt angehängt.
*Auf diese Weise ergeben sich nach der Kanalcodierung pro 20 ms–Sprachrahmen genau 456 Bits. Dies entspricht einer (codierten) Datenrate von 22.8 kbit/s gegenüber 13 kbit/s nach der Sprachcodierung. Die effektive Kanalcodierungsrate beträgt somit 260/456 = 0.57.
+
*Auf diese Weise ergeben sich nach der Kanalcodierung pro&nbsp; $20 \ \rm ms$–Sprachrahmen genau&nbsp; $456$&nbsp; Bit. Dies entspricht einer (codierten) Datenrate von&nbsp; $22.8\ \rm  kbit/s$&nbsp; gegenüber&nbsp; $13\ \rm  kbit/s$&nbsp; nach der Sprachcodierung. Die effektive Kanalcodierungsrate beträgt somit&nbsp; $260/456 = 57\%$.
  
 
   
 
   
 
==Interleaving bei Sprachsignalen==   
 
==Interleaving bei Sprachsignalen==   
 +
<br>
 +
Das Ergebnis der Faltungsdecodierung hängt nicht nur von der Häufigkeit der Übertragungsfehler ab, sondern auch von deren Verteilung. Um gute Korrekturergebnisse zu erzielen, sollte der Kanal kein Gedächtnis besitzen, sondern möglichst statistisch unabhängige Bitfehler liefern.
  
Das Ergebnis der Faltungsdecodierung hängt nicht nur von der Häufigkeit der Übertragungsfehler ab, sondern auch von deren Verteilung. Um gute Korrekturergebnisse zu erzielen, sollte der Kanal kein Gedächtnis besitzen, sondern möglichst statistisch unabhängige Bitfehler liefern.
+
Bei Mobilfunksystemen treten Übertragungsfehler aber meist in Blöcken&nbsp; (''Error Bursts'')&nbsp; auf. Durch den Einsatz der Interleaving–Technik werden solche Bündelfehler über mehrere Bursts gleichmäßig verteilt und so deren Auswirkungen abgeschwächt.
  
Bei Mobilfunksystemen treten Übertragungsfehler aber meist in Blöcken (''Error Bursts'') auf. Durch den Einsatz der Interleaving–Technik werden solche Bündelfehler über mehrere Bursts gleichmäßig verteilt und so deren Auswirkungen abgeschwächt.
+
[[Datei:P_ID1226__Bei_T_3_4_S2b_v1.png|center|frame|Interleaving bei  GSM&ndash;Sprachsignalen]]
  
 
Bei einem Sprachkanal arbeitet der Interleaver in folgender Weise:
 
Bei einem Sprachkanal arbeitet der Interleaver in folgender Weise:
*Die 456 Eingangsbit pro Sprachrahmen werden nach einem festen Algorithmus auf vier Blöcke zu je 114 Bit aufgeteilt. Im Folgenden werden diese für den $n$–ten Sprachrahmen mit $A_n$, $B_n$, $C_n$ und $D_n$ bezeichnet. Der Index $n$–1 bezeichnet den vorhergehenden Rahmen, $n$+1 den nachfolgenden.
+
*Die&nbsp; $456$&nbsp; Eingangsbit pro Sprachrahmen werden nach einem festen Algorithmus auf vier Blöcke zu je&nbsp; $114$&nbsp; Bit aufgeteilt. Wir bezeichnen diese für den&nbsp; $n$–ten Sprachrahmen mit&nbsp; $A_n$,&nbsp; $B_n$,&nbsp; $C_n$&nbsp; und&nbsp; $D_n$. Der Index&nbsp; $n-1$&nbsp; bezeichnet den vorhergehenden Rahmen und&nbsp; $n+1$&nbsp; den nachfolgenden.
*Der Block $A_n$ wird weiterhin in zwei Unterblöcke $A_{g,n}$ und $A_{u,n}$ zu je 57 Bit unterteilt, wobei $A_{g,n}$ nur die geraden Bitpositionen und $A_{u,n}$ die ungeraden Bitpositionen von $A_n$ bezeichnet. In der Grafik sind $A_{g,n}$ und $A_{u,n}$ an der roten bzw. blauen Hinterlegung zu erkennen.
+
*Der Block&nbsp; $A_n$&nbsp; wird weiterhin in zwei Unterblöcke&nbsp; $A_{{\rm g},\hspace{0.05cm}n}$&nbsp; und&nbsp; $A_{{\rm u},\hspace{0.05cm}n}$&nbsp; zu je&nbsp; $57$&nbsp; Bit unterteilt, wobei&nbsp; $A_{{\rm g},\hspace{0.05cm}n}$&nbsp; nur die geraden Bitpositionen und&nbsp; $A_{{\rm u},\hspace{0.05cm}n}$&nbsp; die ungeraden Bitpositionen von&nbsp; $A_n$&nbsp; bezeichnen. In der Grafik sind&nbsp; $A_{{\rm g},\hspace{0.05cm}n}$&nbsp; und&nbsp; $A_{{\rm u},\hspace{0.05cm}n}$&nbsp; an der roten bzw. blauen Hinterlegung zu erkennen.
*Der Unterblock $A_{g,n}$ des $n$–ten Sprachrahmens wird mit dem Block $A_{u,n–1}$ des vorangegangenen Rahmens zusammengefügt und ergibt die 114 Bit Nutzdaten eines Normal Bursts mit 156.25 Bit: $(A_{g,n}, A_{u,n–1})$. Gleiches gilt entsprechend der Skizze für die drei nächsten Bursts: $(B_{g,n}, B_{u,n–1}), (C_{g,n}, C_{u,n–1}), (D_{g,n}, D_{u,n–1})$.
+
*Der Unterblock&nbsp; $A_{{\rm g},\hspace{0.05cm}n}$&nbsp; des&nbsp; $n$–ten Sprachrahmens wird mit dem Block&nbsp; $A_{{\rm u},\hspace{0.05cm}n-1}$&nbsp; des vorherigen Rahmens zusammengefügt und ergibt die&nbsp; $114$&nbsp; Nutzdaten eines&nbsp; ''Normal Bursts'':&nbsp; $\left (A_{{\rm g},\hspace{0.05cm}n}, A_{{\rm u},\hspace{0.05cm}n-1}\right )$.&nbsp; Gleiches gilt für die drei nächsten Bursts:&nbsp; $\left (B_{{\rm g},\hspace{0.05cm}n}, B_{{\rm u},\hspace{0.05cm}n-1}\right )$,&nbsp; $\left (C_{{\rm g},\hspace{0.05cm}n}, C_{{\rm u},\hspace{0.05cm}n-1}\right )$,&nbsp; $\left (D_{{\rm g},\hspace{0.05cm}n}, D_{{\rm u},\hspace{0.05cm}n-1}\right )$.
*In gleicher Weise werden die ungeraden Unterblöcke des $n$–ten Sprachrahmens mit den geraden Unterblöcken des nachfolgenden Rahmens verschachtelt: $(A_{g,n+1}, A_{u,n}), ... , (D_{g,n+1}, D_{u,n})$.
+
*In gleicher Weise werden die ungeraden Unterblöcke des&nbsp; $n$–ten Sprachrahmens mit den geraden Unterblöcken des nachfolgenden Rahmens verschachtelt:&nbsp; $\left (A_{{\rm g},\hspace{0.05cm}n+1}, A_{{\rm u},\hspace{0.05cm}n}\right )$, ... ,&nbsp; $\left (D_{{\rm g},\hspace{0.05cm}n+1}, D_{{\rm u},\hspace{0.05cm}n}\right )$.
*Diese Verwürfelungsart wird '''block-diagonales Interleaving''' genannt, hier speziell vom Grad 8. Es vermindert die Störanfälligkeit gegenüber Bündelfehlern. So werden niemals zwei aufeinander folgende Bits eines Datenblocks direkt hintereinander gesendet. Mehrbitfehler treten nach dem De–Interleaver isoliert auf und können so wirkungsvoller korrigiert werden.
+
 
 +
 
 +
{{BlaueBox|TEXT=
 +
$\text{Fazit:}$&nbsp; Die hier beschriebene Verwürfelungsart wird&nbsp; ''block-diagonales Interleaving''&nbsp; genannt, hier speziell vom Grad&nbsp; $8$:
 +
*Dieses vermindert die Störanfälligkeit gegenüber Bündelfehlern.  
 +
*So werden niemals zwei aufeinander folgende Bit eines Datenblocks direkt hintereinander gesendet.  
 +
*Mehrbitfehler treten nach dem De–Interleaver isoliert auf und können so wirkungsvoller korrigiert werden.}}
  
 
 
 
 
 
==Codierung und Interleaving bei Datensignalen ==
 
==Codierung und Interleaving bei Datensignalen ==
 +
<br>
 +
Für die GSM–Datenübertragung steht jedem Teilnehmer lediglich eine Nettodatenrate von&nbsp; $9.6\ \rm  kbit/s$&nbsp; zur Verfügung. Zur Fehlersicherung werden zwei Verfahren eingesetzt:
 +
*'''Forward Error Correction'''&nbsp; (FEC, deutsch:&nbsp; Vorwärtsfehlerkorrektur)&nbsp; wird auf der physikalischen Schicht durch Anwendung von Faltungscodes realisiert.
 +
*'''Automatic Repeat Request'''&nbsp; (ARQ); dabei werden auf der Sicherungsschicht defekte und nicht korrigierbare Pakete neu angefordert.
  
Für die GSM–Datenübertragung steht jedem Teilnehmer lediglich eine Nettodatenrate von 9.6 kbit/s zur Verfügung. Zur Fehlersicherung werden zwei Verfahren eingesetzt:
 
*'''Forward Error Correction'' (FEC, deutsch: Vorwärtsfehlerkorrektur) wird auf der physikalischen Schicht durch Anwendung von Faltungscodes realisiert.
 
*'''Automatic Repeat Request''' (ARQ); dabei werden auf der Sicherungsschicht defekte und nicht korrigierbare Pakete neu angefordert.
 
  
Die Grafik verdeutlicht Kanalcodierung und Interleaving für den Datenkanal mit 9.6 kbit/s, die im Gegensatz zur Kanalcodierung des Sprachkanals (mit Bitfehlerrate $10^{–5}$... $10^{–6}$) eine nahezu fehlerfreie Rekonstruktion der Daten erlaubt.
+
[[Datei:P_ID1221__Bei_T_3_4_S4_v1.png|center|frame|Zur Verdeutlichung von Codierung und Interleaving bei Datensignalen]]
  
Aus den beiden oberen Skizzen dieser Grafik erkennt man:
+
Die Grafik verdeutlicht Kanalcodierung und Interleaving für den Datenkanal mit&nbsp; $9.6\ \rm  kbit/s$, die im Gegensatz zur Kanalcodierung des Sprachkanals&nbsp; $($mit Bitfehlerrate&nbsp; $10^{–5}$... $10^{–6})$&nbsp; eine nahezu fehlerfreie Rekonstruktion der Daten erlaubt:
*Die Datenbitrate von 9.6 kbit/s wird zuerst im ''Terminal Equipment'' der Mobilstation durch eine nicht GSM–spezifische Kanalcodierung um 25% auf 12 kbit/s erhöht, um eine Fehlererkennung in leitungsvermittelten Netzen zu ermöglichen.
 
*Bei der Datenübertragung sind alle Bit gleichwertig, so dass es im Gegensatz zur Codierung des Sprachkanals keine Klassen gibt. Die 240 Bit pro 20 ms–Zeitrahmen werden zusammen mit vier Tailbits „0000” zu einem einzigen Datenrahmen zusammengefasst.
 
  
 +
*Die Datenbitrate von&nbsp; $9.6\ \rm  kbit/s$&nbsp; wird zuerst im&nbsp; ''Terminal Equipment''&nbsp; der Mobilstation durch eine nicht GSM–spezifische Kanalcodierung um&nbsp; $25\%$&nbsp; auf&nbsp; $12\ \rm  kbit/s$&nbsp; erhöht, um eine Fehlererkennung in leitungsvermittelten Netzen zu ermöglichen.
 +
*Bei der Datenübertragung sind alle Bit gleichwertig, so dass es im Gegensatz zur Codierung des Sprachkanals keine Klassen gibt. Die&nbsp; $240$ Bit&nbsp; pro&nbsp; $20 \ \rm ms$–Zeitrahmen werden zusammen mit vier Tailbits&nbsp; $0000$&nbsp; zu einem einzigen Datenrahmen zusammengefasst.
 +
*Diese&nbsp; $244$&nbsp; Bit werden wie bei Sprachkanälen durch einen Faltungscoder der Rate&nbsp; $1/2$&nbsp; auf&nbsp; $488$&nbsp; Bit verdoppelt. Pro einlaufendem Bit werden zwei Codesymbole erzeugt, zum Beispiel gemäß den Generatorpolynomen&nbsp;  $G_0(D) = 1 + D^3 + D^4$&nbsp; und&nbsp; $G_1(D) = 1 + D + D^3 + D^4$:
  
Aus den Skizzen 3 – 6 der obigen Grafik erkennt man:
 
*Diese 244 Bit werden wie bei Sprachkanälen durch einen Faltungscoder der Rate 1/2 auf 488 Bit verdoppelt. Pro einlaufendem Bit werden zwei Codesymbole erzeugt, zum Beispiel gemäß den Generatorpolynomen $G_0(D) = 1 + D^3 + D^4$ und $G_1(D) = 1 + D + D^3 + D^4$:
 
  
*Der nachfolgende Interleaver erwartet – ebenso wie ein „Sprach–Interleaver” – als Eingabe nur 456 Bit pro Rahmen (20 ms). Deshalb werden von den 488 Bits am Ausgang des Faltungscoders noch 32 Bits an den Positionen 15 · $j$ – 4 ( $j$ = 1, ..., 32 ) entfernt („Punktierung”).
+
[[Datei:P_ID1227__Bei_T_3_4_S4b_v1.png|center|frame|Bei GSM verwendeter Faltungscoder der Rate&nbsp; $1/2$]]
*Da die Datenübertragung weniger zeitkritisch ist als die Sprachübertragung, wird hier ein höherer Interleaving–Grad gewählt. Die 456 Bit werden auf bis zu 24 Interleaver–Blöcke zu je 19 Bit verteilt, was bei Sprachdiensten aus Gründen der Echtzeitübertragung nicht möglich wäre.
+
 
*Danach werden sie auf vier aufeinander folgende ''Normal Bursts'' (4 · 2 · 57 Bit) aufgeteilt und versandt. Beim Einpacken in die Bursts werden wieder Gruppierungen gerader und ungerader Bits gebildet, ähnlich dem Interleaving im Sprachkanal.
+
*Der nachfolgende Interleaver erwartet – ebenso wie ein „Sprach–Interleaver” – als Eingabe nur&nbsp; $456$&nbsp; Bit pro Rahmen. Deshalb werden von den&nbsp; $488$&nbsp; Bit am Ausgang des Faltungscodierers noch&nbsp; $32$&nbsp; Bit an den Positionen&nbsp; $15 · j - 4 \ ( j = 1$, ... ,$ 32 )$&nbsp; entfernt („Punktierung”).
 +
*Da die Datenübertragung weniger zeitkritisch ist als die Sprachübertragung, wird hier ein höherer Interleaving–Grad gewählt. Die&nbsp; $456$&nbsp; Bit werden auf bis zu&nbsp; $24$ Interleaver–Blöcke&nbsp; zu je&nbsp; $19$&nbsp; Bit verteilt, was bei Sprachdiensten aus Gründen der Echtzeitübertragung nicht möglich wäre.
 +
*Danach werden die&nbsp; $456$&nbsp; Bit auf vier aufeinander folgende&nbsp; ''Normal Bursts''&nbsp; aufgeteilt und versandt. Beim Einpacken in die Bursts werden wieder Gruppierungen gerader und ungerader Bits gebildet, ähnlich dem Interleaving im Sprachkanal.
 
   
 
   
  
==Empfängerseite – Decodierung ==  
+
==Empfängerseite der GSM&ndash;Strecke – Decodierung ==  
 +
<br>
 +
Der GSM–Empfänger (gelb hinterlegt) beinhaltet die GMSK-Demodulation, die Burstzerlegung, die Entschlüsselung, das De–Interleaving sowie die Kanal– und Sprachdecodierung.
  
Der GSM–Empfänger (gelb hinterlegt) beinhaltet die GMSK-Demodulation, die Burstzerlegung, die Entschlüsselung, das De–Interleaving sowie die Kanal– und Sprachdecodierung.
+
[[Datei:P_ID1223__Bei_T_3_4_S6_v1.png|center|frame|Empfängerseitige Datenverarbeitung bei GSM]]
  
 
Zu den beiden letzten Blöcken in obigem Bild ist anzumerken:
 
Zu den beiden letzten Blöcken in obigem Bild ist anzumerken:
 
*Das Decodierverfahren wird durch die GSM–Spezifikation nicht vorgeschrieben, sondern ist den einzelnen Netzbetreibern überlassen. Die Leistungsfähigkeit ist vom eingesetzten Algorithmus zur Fehlerkorrektur abhängig.
 
*Das Decodierverfahren wird durch die GSM–Spezifikation nicht vorgeschrieben, sondern ist den einzelnen Netzbetreibern überlassen. Die Leistungsfähigkeit ist vom eingesetzten Algorithmus zur Fehlerkorrektur abhängig.
*Zum Beispiel wird beim Decodierverfahren '''Maximum Likelihood Sequence Estimation''' (MLSE) die wahrscheinlichste Bitsequenz unter Verwendung des Viterbi–Algorithmus oder eines MAP–Empfängers (''Maximum A–posteriori Probability'') ermittelt.
+
*Zum Beispiel wird beim Decodierverfahren&nbsp; ''Maximum Likelihood Sequence Estimation''&nbsp; (MLSE) die wahrscheinlichste Bitsequenz unter Verwendung des Viterbi–Algorithmus oder eines MAP–Empfängers&nbsp; (''Maximum A–posteriori Probability'')&nbsp; ermittelt.
*Nach der Fehlerkorrektur wird der ''Cyclic Redundancy Check'' (CRC) durchgeführt, wobei beim Vollraten–Codec der Grad G des verwendeten CRC–Generatorpolynoms gleich 3 ist. Damit werden alle Fehlermuster bis zum Gewicht 3 und alle Bündelfehler bis zur Länge 4 erkannt.
+
*Nach der Fehlerkorrektur wird der&nbsp; ''Cyclic Redundancy Check''&nbsp; (CRC) durchgeführt, wobei beim Vollraten–Codec der Grad des verwendeten CRC–Generatorpolynoms&nbsp; $G= 3$&nbsp; ist. Damit werden alle Fehlermuster bis zum Gewicht&nbsp; $3$&nbsp; und alle Bündelfehler bis zur Länge $4$ erkannt.
*Anhand des CRC wird über die Verwendbarkeit eines jeden Sprachrahmens entschieden. Ist das Testergebnis positiv, so werden im nachfolgenden Sprachdecoder aus den Sprachparametern (260 Bit pro Rahmen) die Sprachsignale synthetisiert.
+
*Anhand des CRC wird über die Verwendbarkeit eines jeden Sprachrahmens entschieden. Ist das Testergebnis positiv, so werden im nachfolgenden Sprachdecoder aus den Sprachparametern&nbsp; $(260$ Bit pro Rahmen$)$&nbsp; die Sprachsignale synthetisiert.
*Falls ausgefallen sind, werden die Parametersätze vorangegangener, als korrekt erkannter Rahmen zur Sprachinterpolation verwendet („''Fehlerverschleierung''”). Treten mehrere nicht korrekte Sprachrahmen in Folge auf, so wird die Leistung kontinuierlich bis hin zur Stummschaltung abgesenkt.
+
*Sind Rahmen ausgefallen, so werden die Parameter früherer, als korrekt erkannter Rahmen zur Interpolation verwendet &nbsp; &rArr; &nbsp; ''Fehlerverschleierung''. Treten mehrere nicht korrekte Sprachrahmen in Folge auf, so wird die Leistung kontinuierlich bis hin zur Stummschaltung abgesenkt.
  
 
 
 
 
 
== Aufgabe zum Kapitel==   
 
== Aufgabe zum Kapitel==   
 
+
<br>
 
[[Aufgaben:3.7_Komponenten_des_GSM–Systems|Aufgabe 3.7: Komponenten des GSM–Systems]]
 
[[Aufgaben:3.7_Komponenten_des_GSM–Systems|Aufgabe 3.7: Komponenten des GSM–Systems]]
  

Aktuelle Version vom 25. Januar 2023, 17:34 Uhr


Komponenten der Sprach– und Datenübertragung


Nachfolgend sehen Sie das Blockschaltbild des sendeseitigen GSM–Übertragungssystems, das

  • sowohl für digitalisierte Sprachsignale  $($Abtastrate:  $8 \ \rm kHz$,  Quantisierung:  $13$ Bit   ⇒   Datenrate:  $104 \ \rm kbit/s)$
  • als auch für  $9.6 \ \rm kbit/s$–Datensignale geeignet ist.


Die Komponenten für die Sprachübertragung sind blau, die für Daten rot und gemeinsame Blöcke grün dargestellt.

Komponenten der Sprach– und –Datenübertragung bei GSM

Hier eine kurze Beschreibung der einzelnen Komponenten:

  • Sprachsignale werden durch die Sprachcodierung von  $104 \ \rm kbit/s$  auf  $13 \ \rm kbit/s$  – also um den Faktor  $8$ – komprimiert. Die in der Grafik angegebene Bitrate gilt für den Vollraten–Codec, der pro Sprachrahmen $($Dauer  $T_{\rm R} = 20\ \rm ms)$  genau  $260$  Bit liefert.
  • Der  AMR–Codec  liefert im höchsten Modus  $12.2 \ \rm kbit/s$  $(244$  Bit pro Sprachrahmen$)$. Der Sprachcodec muss aber zusätzlich auch Informationen hinsichtlich des aktuellen Modus übertragen, so dass die Datenrate vor der Kanalcodierung ebenfalls  $13 \ \rm kbit/s$  beträgt.
  • Aufgabe der gestrichelt eingezeichneten  Voice Activity Detection  ist es zu entscheiden, ob der aktuelle Sprachrahmen tatsächlich ein Sprachsignal enthält oder nur eine Sprachpause, während der die Leistung des Sendeverstärkers heruntergefahren werden sollte.
  • Durch die  Kanalcodierung  wird wieder Redundanz hinzugefügt, um Fehlerkorrektur beim Empfänger zu ermöglichen. Pro Sprachrahmen gibt der Kanalcoder  $456$  Bit ab, woraus sich die Datenrate  $22.8 \ \rm kbit/s$  ergibt. Die wichtigeren Bit werden besonders geschützt.
  • Der  Interleaver  verwürfelt die entstehende Bitfolge, um den Einfluss von Bündelfehlern zu vermindern. Die  $456$  Eingangsbit werden auf vier Zeitrahmen zu je  $114$  Bit aufgeteilt. Zwei aufeinander folgende Bits werden somit immer in zwei verschiedenen Bursts übertragen.
  • Ein  Datenkanal  – im Bild rot markiert – unterscheidet sich von einem Sprachkanal (blau gekennzeichnet) nur durch die unterschiedliche Eingangsrate  $(9.6 \ \rm kbit/s$  statt  $104 \ \rm kbit/s)$  und die Verwendung eines zweiten, äußeren Kanalcoders anstelle des Sprachcodierers.


Die grün hinterlegten Komponenten gelten für die Sprach– und Datenübertragung gleichermaßen. Die erste gemeinsame Systemkomponente für Sprach– und Datenübertragung im Blockschaltbild des GSM–Senders ist die  Verschlüsselung, die verhindern soll, dass Unbefugte Zugriff auf die Daten erhalten.


Dabei gibt es zwei grundsätzlich unterschiedliche Verschlüsselungsverfahren:

  • Symmetrische Verschlüsselung:  Diese kennt nur einen einzigen geheimen Schlüssel, der sowohl zur Verschlüsselung und Chiffrierung der Nachrichten im Sender als auch zur Entschlüsselung und Dechiffrierung im Empfänger benutzt wird. Der Schlüssel muss vor der Kommunikation erzeugt und zwischen den Kommunikationspartnern über einen sicheren Kanal ausgetauscht werden. Der Vorteil dieses im herkömmlichen GSM angewendeten Verschlüsselungsverfahrens ist, dass es sehr schnell arbeitet.
  • Asymmetrische Verschlüsselung:  Dieses Verfahren benutzt zwei unabhängige, aber zueinander passende asymmetrische Schlüssel. Es ist nicht möglich, mit einem Schlüssel den anderen zu berechnen. Der  „Public Key”  ist öffentlich zugänglich und dient der Verschlüsselung. Der  „Private Key”  ist geheim und wird bei der Entschlüsselung verwendet. Im Gegensatz zu den symmetrischen Verschlüsselungsverfahren sind die asymmetrischen Methoden wesentlich langsamer, bieten dafür aber auch eine höhere Sicherheit.


Der zweite grüne Block ist die  Burstbildung, wobei es verschiedene Burstarten gibt. Beim  Normal Burst  werden die  $114$  codierten, verwürfelten und verschlüsselten Bit durch Hinzufügen von  Guard Period, Signalisierungsbits, etc. auf  $156.25$  Bit abgebildet. Diese werden innerhalb eines Zeitschlitzes der Dauer  $T_{\rm Z} = 576.9 \ \rm µ s$  mittels des  Modulationsverfahrens  „GMSK” übertragen. Daraus ergibt sich die Brutto–Datenrate  $270.833 \ \rm kbit/s$.

Beim Empfänger gibt es in umgekehrter Reihenfolge die Blöcke

  • Demodulation,
  • Burstzerlegung,
  • Entschlüsselung,
  • De–Interleaving,
  • Kanaldecodierung,
  • Sprachdecodierung.


Auf den nächsten Seiten werden alle Blöcke von obigem Übertragungsschema im Detail vorgestellt.


Codierung bei Sprachsignalen


Uncodierte Funkdatenübertragung führt zu Bitfehlerraten im Prozentbereich. Mit  Kanalcodierung  (englisch:  Channel Coding) können aber manche Übertragungsfehler beim Empfänger erkannt oder sogar korrigiert werden. Die Bitfehlerrate lässt sich so auf Werte kleiner als  $10^{–5}$ reduzieren.

Zur Codierung von Sprachsignalen bei GSM

Zunächst betrachten wir die GSM-Kanalcodierung für die Sprachkanäle, wobei als Sprachcoder der  Vollraten–Codec  vorausgesetzt wird. Die Kanalcodierung eines Sprachrahmens von  $20\ \rm ms$  Dauer erfolgt in vier aufeinander folgenden Schritten entsprechend der Grafik.
Aus der Beschreibung im Kapitel  Sprachcodierung  ist zu ersehen, dass nicht alle  $260$  Bit den gleichen Einfluss auf die subjektiv empfundene Sprachqualität haben.

  • Deshalb werden die Daten entsprechend ihrer Wichtigkeit in drei Klassen aufgeteilt:   Die  $50$  wichtigsten Bit bilden die  Klasse 1a, weitere  $132$  werden der  Klasse 1b  zugeteilt und die restlichen  $78$  Bit ergeben die eher unwichtige  Klasse 2.
  • Im nächsten Schritt wird für die  $50$  besonders wichtigen Bit der Klasse 1a mit einem rückgekoppelten Schieberegister eine drei Bit lange  Cyclic Redundancy Check  (CRC)–Prüfsumme berechnet. Das Generatorpolynom für diese CRC–Überprüfung lautet:
$$G_{\rm CRC}(D) = D^3 + D +1\hspace{0.05cm}. $$
  • Anschließend werden den insgesamt  $185$  Bit der Klasse 1a und 1b inclusive den drei (rot eingezeichneten) CRC–Paritätsbits noch vier (gelbe)  Tailbits „0000”  angehängt. Diese vier Bit initialisieren die vier Speicherregister des nachfolgenden Faltungscoders jeweils mit  $0$, so dass für jeden Sprachrahmen von einem definierten Status ausgegangen werden kann.
  • Der Faltungscode mit der Coderate  $R_{\rm C} = 1/2$  verdoppelt diese  $189$  wichtigsten Bit auf  $378$  Bit und schützt diese somit signifikant gegen Übertragungsfehler. Anschließend werden noch die  $78$  Bit der unwichtigeren Klasse 2 ungeschützt angehängt.
  • Auf diese Weise ergeben sich nach der Kanalcodierung pro  $20 \ \rm ms$–Sprachrahmen genau  $456$  Bit. Dies entspricht einer (codierten) Datenrate von  $22.8\ \rm kbit/s$  gegenüber  $13\ \rm kbit/s$  nach der Sprachcodierung. Die effektive Kanalcodierungsrate beträgt somit  $260/456 = 57\%$.


Interleaving bei Sprachsignalen


Das Ergebnis der Faltungsdecodierung hängt nicht nur von der Häufigkeit der Übertragungsfehler ab, sondern auch von deren Verteilung. Um gute Korrekturergebnisse zu erzielen, sollte der Kanal kein Gedächtnis besitzen, sondern möglichst statistisch unabhängige Bitfehler liefern.

Bei Mobilfunksystemen treten Übertragungsfehler aber meist in Blöcken  (Error Bursts)  auf. Durch den Einsatz der Interleaving–Technik werden solche Bündelfehler über mehrere Bursts gleichmäßig verteilt und so deren Auswirkungen abgeschwächt.

Interleaving bei GSM–Sprachsignalen

Bei einem Sprachkanal arbeitet der Interleaver in folgender Weise:

  • Die  $456$  Eingangsbit pro Sprachrahmen werden nach einem festen Algorithmus auf vier Blöcke zu je  $114$  Bit aufgeteilt. Wir bezeichnen diese für den  $n$–ten Sprachrahmen mit  $A_n$,  $B_n$,  $C_n$  und  $D_n$. Der Index  $n-1$  bezeichnet den vorhergehenden Rahmen und  $n+1$  den nachfolgenden.
  • Der Block  $A_n$  wird weiterhin in zwei Unterblöcke  $A_{{\rm g},\hspace{0.05cm}n}$  und  $A_{{\rm u},\hspace{0.05cm}n}$  zu je  $57$  Bit unterteilt, wobei  $A_{{\rm g},\hspace{0.05cm}n}$  nur die geraden Bitpositionen und  $A_{{\rm u},\hspace{0.05cm}n}$  die ungeraden Bitpositionen von  $A_n$  bezeichnen. In der Grafik sind  $A_{{\rm g},\hspace{0.05cm}n}$  und  $A_{{\rm u},\hspace{0.05cm}n}$  an der roten bzw. blauen Hinterlegung zu erkennen.
  • Der Unterblock  $A_{{\rm g},\hspace{0.05cm}n}$  des  $n$–ten Sprachrahmens wird mit dem Block  $A_{{\rm u},\hspace{0.05cm}n-1}$  des vorherigen Rahmens zusammengefügt und ergibt die  $114$  Nutzdaten eines  Normal Bursts:  $\left (A_{{\rm g},\hspace{0.05cm}n}, A_{{\rm u},\hspace{0.05cm}n-1}\right )$.  Gleiches gilt für die drei nächsten Bursts:  $\left (B_{{\rm g},\hspace{0.05cm}n}, B_{{\rm u},\hspace{0.05cm}n-1}\right )$,  $\left (C_{{\rm g},\hspace{0.05cm}n}, C_{{\rm u},\hspace{0.05cm}n-1}\right )$,  $\left (D_{{\rm g},\hspace{0.05cm}n}, D_{{\rm u},\hspace{0.05cm}n-1}\right )$.
  • In gleicher Weise werden die ungeraden Unterblöcke des  $n$–ten Sprachrahmens mit den geraden Unterblöcken des nachfolgenden Rahmens verschachtelt:  $\left (A_{{\rm g},\hspace{0.05cm}n+1}, A_{{\rm u},\hspace{0.05cm}n}\right )$, ... ,  $\left (D_{{\rm g},\hspace{0.05cm}n+1}, D_{{\rm u},\hspace{0.05cm}n}\right )$.


$\text{Fazit:}$  Die hier beschriebene Verwürfelungsart wird  block-diagonales Interleaving  genannt, hier speziell vom Grad  $8$:

  • Dieses vermindert die Störanfälligkeit gegenüber Bündelfehlern.
  • So werden niemals zwei aufeinander folgende Bit eines Datenblocks direkt hintereinander gesendet.
  • Mehrbitfehler treten nach dem De–Interleaver isoliert auf und können so wirkungsvoller korrigiert werden.


Codierung und Interleaving bei Datensignalen


Für die GSM–Datenübertragung steht jedem Teilnehmer lediglich eine Nettodatenrate von  $9.6\ \rm kbit/s$  zur Verfügung. Zur Fehlersicherung werden zwei Verfahren eingesetzt:

  • Forward Error Correction  (FEC, deutsch:  Vorwärtsfehlerkorrektur)  wird auf der physikalischen Schicht durch Anwendung von Faltungscodes realisiert.
  • Automatic Repeat Request  (ARQ); dabei werden auf der Sicherungsschicht defekte und nicht korrigierbare Pakete neu angefordert.


Zur Verdeutlichung von Codierung und Interleaving bei Datensignalen

Die Grafik verdeutlicht Kanalcodierung und Interleaving für den Datenkanal mit  $9.6\ \rm kbit/s$, die im Gegensatz zur Kanalcodierung des Sprachkanals  $($mit Bitfehlerrate  $10^{–5}$... $10^{–6})$  eine nahezu fehlerfreie Rekonstruktion der Daten erlaubt:

  • Die Datenbitrate von  $9.6\ \rm kbit/s$  wird zuerst im  Terminal Equipment  der Mobilstation durch eine nicht GSM–spezifische Kanalcodierung um  $25\%$  auf  $12\ \rm kbit/s$  erhöht, um eine Fehlererkennung in leitungsvermittelten Netzen zu ermöglichen.
  • Bei der Datenübertragung sind alle Bit gleichwertig, so dass es im Gegensatz zur Codierung des Sprachkanals keine Klassen gibt. Die  $240$ Bit  pro  $20 \ \rm ms$–Zeitrahmen werden zusammen mit vier Tailbits  $0000$  zu einem einzigen Datenrahmen zusammengefasst.
  • Diese  $244$  Bit werden wie bei Sprachkanälen durch einen Faltungscoder der Rate  $1/2$  auf  $488$  Bit verdoppelt. Pro einlaufendem Bit werden zwei Codesymbole erzeugt, zum Beispiel gemäß den Generatorpolynomen  $G_0(D) = 1 + D^3 + D^4$  und  $G_1(D) = 1 + D + D^3 + D^4$:


Bei GSM verwendeter Faltungscoder der Rate  $1/2$
  • Der nachfolgende Interleaver erwartet – ebenso wie ein „Sprach–Interleaver” – als Eingabe nur  $456$  Bit pro Rahmen. Deshalb werden von den  $488$  Bit am Ausgang des Faltungscodierers noch  $32$  Bit an den Positionen  $15 · j - 4 \ ( j = 1$, ... ,$ 32 )$  entfernt („Punktierung”).
  • Da die Datenübertragung weniger zeitkritisch ist als die Sprachübertragung, wird hier ein höherer Interleaving–Grad gewählt. Die  $456$  Bit werden auf bis zu  $24$ Interleaver–Blöcke  zu je  $19$  Bit verteilt, was bei Sprachdiensten aus Gründen der Echtzeitübertragung nicht möglich wäre.
  • Danach werden die  $456$  Bit auf vier aufeinander folgende  Normal Bursts  aufgeteilt und versandt. Beim Einpacken in die Bursts werden wieder Gruppierungen gerader und ungerader Bits gebildet, ähnlich dem Interleaving im Sprachkanal.


Empfängerseite der GSM–Strecke – Decodierung


Der GSM–Empfänger (gelb hinterlegt) beinhaltet die GMSK-Demodulation, die Burstzerlegung, die Entschlüsselung, das De–Interleaving sowie die Kanal– und Sprachdecodierung.

Empfängerseitige Datenverarbeitung bei GSM

Zu den beiden letzten Blöcken in obigem Bild ist anzumerken:

  • Das Decodierverfahren wird durch die GSM–Spezifikation nicht vorgeschrieben, sondern ist den einzelnen Netzbetreibern überlassen. Die Leistungsfähigkeit ist vom eingesetzten Algorithmus zur Fehlerkorrektur abhängig.
  • Zum Beispiel wird beim Decodierverfahren  Maximum Likelihood Sequence Estimation  (MLSE) die wahrscheinlichste Bitsequenz unter Verwendung des Viterbi–Algorithmus oder eines MAP–Empfängers  (Maximum A–posteriori Probability)  ermittelt.
  • Nach der Fehlerkorrektur wird der  Cyclic Redundancy Check  (CRC) durchgeführt, wobei beim Vollraten–Codec der Grad des verwendeten CRC–Generatorpolynoms  $G= 3$  ist. Damit werden alle Fehlermuster bis zum Gewicht  $3$  und alle Bündelfehler bis zur Länge $4$ erkannt.
  • Anhand des CRC wird über die Verwendbarkeit eines jeden Sprachrahmens entschieden. Ist das Testergebnis positiv, so werden im nachfolgenden Sprachdecoder aus den Sprachparametern  $(260$ Bit pro Rahmen$)$  die Sprachsignale synthetisiert.
  • Sind Rahmen ausgefallen, so werden die Parameter früherer, als korrekt erkannter Rahmen zur Interpolation verwendet   ⇒   Fehlerverschleierung. Treten mehrere nicht korrekte Sprachrahmen in Folge auf, so wird die Leistung kontinuierlich bis hin zur Stummschaltung abgesenkt.


Aufgabe zum Kapitel


Aufgabe 3.7: Komponenten des GSM–Systems