Difference between revisions of "Examples of Communication Systems/Entire GSM Transmission System"

From LNTwww
 
(42 intermediate revisions by 6 users not shown)
Line 2: Line 2:
 
{{Header
 
{{Header
 
|Untermenü=GSM – Global System for Mobile Communications
 
|Untermenü=GSM – Global System for Mobile Communications
|Vorherige Seite=Sprachcodierung
+
|Vorherige Seite=Speech Coding
|Nächste Seite=Weiterentwicklungen des GSM
+
|Nächste Seite=Further Developments of the GSM
 
}}
 
}}
  
  
==Komponenten der Sprach– und Datenübertragung== 
+
==Speech and data transmission components== 
 +
<br>
 +
On the right you can see the block diagram of the GSM transmission system at the transmitting end,&nbsp; which is
 +
 +
*suitable for both digitized speech signals &nbsp;$($sampling rate:&nbsp; $8 \ \rm kHz$,&nbsp; quantization:&nbsp; $13$ bit &nbsp; ⇒ &nbsp; data rate:&nbsp; $104 \ \rm kbit/s)$
 +
 +
*as well as being suitable for&nbsp; $9.6 \ \rm kbit/s$&nbsp; data signals.
  
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$)
 
*als auch für $9.6 \ \rm kbit/s$–Datensignale geeignet ist.
 
  
 +
Here is a brief description of each component:
 +
[[File:Bei_T_3_4_S4_v2.png|right|frame|Components of the speech and data communication with GSM&nbsp; &ndash; &nbsp; components for speech are shown in blue,&nbsp; those for data in red, and common blocks in green<br><br><br><br><br><br><br>|class=fit]]
  
Die Komponenten für die Sprachübertragung sind blau, die für Daten rot und gemeinsame Blöcke grün dargestellt.
+
#Speech signals are compressed by speech coding by factor&nbsp; $8$ &nbsp; &rArr; &nbsp; from&nbsp; $104 \ \rm kbit/s$&nbsp; to&nbsp; $13 \ \rm kbit/s$.&nbsp; The bit rate given in the graph is for the full rate codec,&nbsp; which delivers  exactly&nbsp; $260$&nbsp; bits per speech frame&nbsp; $($duration&nbsp; $T_{\rm R} = 20\ \rm ms)$&nbsp;.
 +
#The&nbsp; &raquo;'''AMR codec'''&laquo;&nbsp; delivers in highest mode&nbsp; $R_{\rm B}=12.2 \ \rm kbit/s$ &nbsp; &rArr; &nbsp; $244$&nbsp; bits per speech frame.&nbsp; However,&nbsp; the speech codec must also transmit additional information regarding the mode &nbsp; &rArr; &nbsp; so the data rate before channel coding is&nbsp; $13 \ \rm kbit/s$&nbsp;.
 +
#Task of the dashed&nbsp; &raquo;'''Voice Activity Detection'''&laquo;&nbsp; is to decide whether the current speech frame actually contains a speech signal or just a  pause during which the power of the transmit amplifier should be turned down.
 +
#By&nbsp; &raquo;'''channel coding'''&laquo;&nbsp; redundancy is added again to allow error correction at the receiver &nbsp; &rArr; &nbsp;  the channel encoder&nbsp; outputs&nbsp; $456$&nbsp; bits per frame,&nbsp; resulting in the data rate&nbsp; $22.8 \ \rm kbit/s$&nbsp;. The more important bits are specially protected.
 +
#The&nbsp; &raquo;'''interleaver'''&laquo;&nbsp; scrambles the resulting bit sequence to reduce burst error influence.&nbsp; The&nbsp; $456$&nbsp; input bits are split into four time frames of&nbsp; $114$&nbsp; bits each.&nbsp; Thus,&nbsp; two consecutive bits are always transmitted in two different bursts.
 +
#A&nbsp; &raquo;'''data channel'''&laquo;&nbsp; &ndash; marked in red in the figure &ndash; differs from a speech channel&nbsp; $($marked in blue$)$&nbsp; only by the different input rate&nbsp; $(9.6 \ \rm kbit/s$&nbsp; instead of&nbsp; $104 \ \rm kbit/s)$&nbsp; and the use of a second,&nbsp; outer channel encoder instead of the speech encoder.
  
[[File:P_ID1216__Bei_T_3_4_S1_v1.png|center|frame|Komponenten der Sprach– und –Datenübertragung bei GSM]]
 
  
Hier eine kurze Beschreibung der einzelnen Komponenten:
+
The components highlighted in green apply equally to speech and data transmission.  
*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 wird.
 
*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.
 
*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.
 
  
 +
&rArr; &nbsp; The first common system component for speech and data transmission in the block diagram of the GSM transmitter is the&nbsp; &raquo;'''encryption'''&laquo;,&nbsp; which is intended to prevent unauthorized persons from gaining access to the data.&nbsp; There are two fundamentally different encryption methods:
 +
*&raquo;'''Symmetric encryption'''&laquo;:&nbsp; This knows only one secret key,&nbsp; which is used both for encrypting and enciphering the messages in the transmitter and for decrypting and deciphering them in the receiver.&nbsp; The key must be generated prior to communication and exchanged between the communication partners via a secure channel.&nbsp; The advantage of this encryption method used in conventional GSM is that it works very quickly.
  
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.
+
*&raquo;'''Asymmetric encryption'''&laquo;:&nbsp; This method uses two independent but matching asymmetric keys.&nbsp; It is not possible to use one key to calculate the other.&nbsp; The&nbsp; "public key"&nbsp; is publicly available and is used for encryption.&nbsp; The&nbsp; "private key"&nbsp; is secret and used for decryption.&nbsp; In contrast to the symmetric encryption methods,&nbsp; the asymmetric methods are much slower,&nbsp; but also offer higher security.
  
  
Dabei gibt es zwei grundsätzlich unterschiedliche Verschlüsselungsverfahren:
+
&rArr; &nbsp; The second green block is the&nbsp; &raquo;'''burst composition'''&laquo;,&nbsp; where there are different burst types.&nbsp; In a&nbsp; "normal burst"&nbsp; the&nbsp; $114$&nbsp; encoded,&nbsp; scrambled and encrypted bits are mapped to&nbsp; $156.25$&nbsp; bits by&nbsp; $($duration&nbsp; $T_{\rm burst} = 576.9 \ \rm &micro; s)$&nbsp; adding the&nbsp; "guard period",&nbsp; signaling bits,&nbsp; etc.  
*'''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.
 
  
 +
These are transmitted within a time slot of duration&nbsp; $T_{\rm Z} = T_{\rm burst}$&nbsp; by means of the&nbsp; modulation method&nbsp; "GMSK".&nbsp; This results in the gross data rate&nbsp; $270.833 \ \rm kbit/s$.
  
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$.
+
At the receiver side there are in reverse order the blocks&nbsp; "demodulation" &ndash; "burst de-composition" &ndash; "de-cryption" &ndash; "de-interleaving" &ndash"channel decoding" &ndash; "speech decoding".  
  
Beim Empfänger gibt es in umgekehrter Reihenfolge die Blöcke
 
*Demodulation,
 
*Burstzerlegung,
 
*Entschlüsselung,
 
*De–Interleaving,
 
*Kanaldecodierung,
 
*Sprachdecodierung.
 
  
 
+
In the next sections all blocks of the above transmission scheme are presented in detail.
Auf den nächsten Seiten werden alle Blöcke von obigem Übertragungsschema im Detail vorgestellt.
 
  
 
   
 
   
==Codierung bei Sprachsignalen== 
+
==Encoding for speech signals== 
 +
<br>
 +
Uncoded radio data transmission leads to bit error rates in the percentage range.&nbsp; However,&nbsp; with&nbsp; [[Channel_Coding|$\text{channel coding}$]]&nbsp; some transmission errors can be detected or even corrected at the receiver.&nbsp; The bit error rate can thus be reduced to values smaller than&nbsp; $10^{-5}$.
  
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 $<10^{–5}$ reduzieren.
+
First,&nbsp; we consider GSM channel encoding for speech channels,&nbsp; assuming as speech encoder the&nbsp; [[Examples_of_Communication_Systems/Speech_Coding#GSM_Full_Rate_Vocoder|$\text{Full Rate Codec}$]].&nbsp; The channel coding of a speech frame of&nbsp; $20\ \rm ms$&nbsp; duration is done in four consecutive steps according to the diagram.
  
[[File:P_ID1219__Bei_T_3_4_S2_v1.png|center|frame|Zur Codierung von Sprachsignalen bei GSM]]
+
From the description in chapter&nbsp; [[Examples_of_Communication_Systems/Voice_Coding|"Speech Coding"]]&nbsp; it can be seen that not all&nbsp; $260$&nbsp; bits have the same influence on the subjectively perceived speech quality.
 +
[[File:EN_Bei_T_3_4_S2.png|right|frame|For coding speech signals in GSM ]]
 +
 +
*Therefore,&nbsp; the data are divided into classes according to their importance: &nbsp; The&nbsp; $50$&nbsp; most important bits form the&nbsp; "Class 1a",&nbsp; other&nbsp; $132$&nbsp; are assigned to&nbsp; "Class 1b"&nbsp; and the remaining&nbsp; $78$&nbsp; bits result in the less important&nbsp; "Class 2".
  
Zunächst betrachten wir die GSM-Kanalcodierung für die Sprachkanäle, wobei als Sprachcoder der [[Beispiele_von_Nachrichtensystemen/Sprachcodierung#GSM_Fullrate_Vocoder_.E2.80.93_Vollraten.E2.80.93Codec|Vollraten–Codec]] vorausgesetzt wird. Die Kanalcodierung eines Sprachrahmens von $20\ \rm ms$ Dauer erfolgt in vier aufeinander folgenden Schritten entsprechend obiger Grafik.
+
*In the next step,&nbsp; a three-bit long&nbsp; [[Examples_of_Communication_Systems/Methods_to_Reduce_the_Bit_Error_Rate_in_DSL#Cyclic_Redundancy_Check|$\text{Cyclic Redundancy Check}$]]&nbsp; $\rm (CRC)$&nbsp; checksum is calculated for the&nbsp; $50$&nbsp;  class 1a bits using a feedback shift register.&nbsp; The generator polynomial for this CRC check is:
 +
:$$G_{\rm CRC}(D) = D^3 + D +1\hspace{0.05cm}. $$
 +
 +
*Subsequently,&nbsp; four (yellow)&nbsp; "tail bits" $(0000)$&nbsp; are added to the total of&nbsp; $185$&nbsp; bits of class 1a and 1b including the three&nbsp; $($red$)$&nbsp; CRC parity bits.&nbsp; These bits initialize the four memory registers of the following convolutional encoder with&nbsp; zeros,&nbsp; so that for each speech frame a defined status can be assumed.
 +
 
 +
*The rate&nbsp; $1/2$ convolutional&nbsp; encoder doubles these&nbsp; $189$&nbsp; most important bits to&nbsp; $378$&nbsp; bits and thus protects them significantly against transmission errors.&nbsp; Then the&nbsp; $78$&nbsp; bits of the less important class 2 are appended unprotected.
  
  
Aus der Beschreibung im Kapitel [[Beispiele_von_Nachrichtensystemen/Sprachcodierung|Sprachcodierung]] ist zu ersehen, dass nicht alle 260 Bits den gleichen Einfluss auf die subjektiv empfundene Sprachqualität haben.
+
This way,&nbsp; there are exactly&nbsp; $456$&nbsp; bits per&nbsp; $20 \ \rm ms$ speech frame after channel coding.  
*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 und die restlichen $78$ Bits ergeben die eher unwichtige '''Klasse 2'''.
+
#This corresponds to a&nbsp; $($encoded$)$&nbsp; data rate of&nbsp; $22.8\ \rm kbit/s$&nbsp; compared to&nbsp; $13\ \rm kbit/s$&nbsp; after the speech coding.  
*Im nächsten Schritt wird für die 50 besonders wichtigen Bits der Klasse 1a mit einem rückgekoppelten Schieberegister eine drei Bit lange [[Beispiele_von_Nachrichtensystemen/Verfahren_zur_Senkung_der_Bitfehlerrate_bei_DSL#Cyclic_Redundancy_Check|Cyclic Redundancy Check]] (CRC)–Prüfsumme berechnet. Das Generatorpolynom für diese CRC–Überprüfung lautet:
+
#The effective channel coding rate is thus&nbsp; $260/456 = 57\%$.
:$$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.
 
*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.
 
*Auf diese Weise ergeben sich nach der Kanalcodierung pro $20 \ \rm ms$–Sprachrahmen genau $456$ Bits. 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==   
+
==Interleaving for speech signals==   
 +
<br>
 +
The result of convolutional decoding depends not only on the frequency of the transmission errors,&nbsp; but also on their distribution.
 +
*To achieve good correction results,&nbsp; the channel should not have any memory,&nbsp; but should provide statistically independent bit errors as far as possible.
  
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.
+
*In mobile radio systems, however,&nbsp; transmission errors usually occur in blocks&nbsp; $($"error bundles"$)$.&nbsp;
  
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.
+
*By using the interleaving technique,&nbsp; such&nbsp; "bundle errors"&nbsp; are evenly distributed over several bursts and thus their effects are mitigated.
  
[[File: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:
+
[[File:EN_Bei_T_3_4_S3_v2.png|right|frame|Interleaving in GSM speech signals]]
*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.
+
For a speech channel,&nbsp; the interleaver works in the following way:
*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 )$.
+
#The&nbsp; $456$&nbsp; input bits per speech frame are divided into four blocks of&nbsp; $114$&nbsp; bits each according to a fixed algorithm.&nbsp; We denote these for the&nbsp; $n$&ndash;th&nbsp; speech frame by&nbsp; $A_n$,&nbsp; $B_n$,&nbsp; $C_n$&nbsp; and&nbsp; $D_n$.&nbsp; The index&nbsp; $n-1$&nbsp; denotes the preceding frame and&nbsp; $n+1$&nbsp; the succeeding one.<br>
*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 )$.
+
#The block&nbsp; $A_n$&nbsp; is further divided into two sub-blocks&nbsp; $A_{{\rm g},\hspace{0.08cm}n}$&nbsp; and&nbsp; $A_{{\rm u},\hspace{0.08cm}n}$&nbsp; of&nbsp; $57$&nbsp; bits each,&nbsp; where&nbsp; $A_{{\rm g},\hspace{0.08cm}n}$&nbsp; denote only the even&nbsp; $($German:&nbsp; "gerade" &nbsp; &rArr; &nbsp; "g"$)$&nbsp;  and&nbsp; $A_{{\rm u},\hspace{0.08cm}n}$&nbsp; denote the odd&nbsp; $($German:&nbsp; "ungerade"&nbsp; &rArr; &nbsp; "u"$)$&nbsp; bit positions.&nbsp; In the graph,&nbsp; one recognizes&nbsp; $A_{{\rm g},\hspace{0.08cm}n}$&nbsp; and&nbsp; $A_{{\rm u},\hspace{0.08cm}n}$&nbsp; by red resp. blue backgrounds.
 +
#The subblock&nbsp; $A_{{\rm g},\hspace{0.08cm}n}$&nbsp; of the&nbsp; $n$-th speech frame is identified with the block&nbsp; $A_{{\rm u},\hspace{0.05cm}n-1}$&nbsp; of the previous frame and gives the&nbsp; $114$&nbsp; payload of a&nbsp; "normal burst":&nbsp; $\left (A_{{\rm g},\hspace{0.08cm}n}, A_{{\rm u},\hspace{0.08cm}n-1}\right )$.&nbsp; The same applies to the next three bursts:&nbsp; $\left (B_{{\rm g},\hspace{0.08cm}n},\hspace{0.12cm} B_{{\rm u},\hspace{0.08cm}n-1}\right )$,&nbsp; $\left (C_{{\rm g},\hspace{0.08cm}n}, C_{{\rm u},\hspace{0.08cm}n-1}\right )$,&nbsp; $\left (D_{{\rm g},\hspace{0.08cm}n}, D_{{\rm u},\hspace{0.08cm}n-1}\right )$.
 +
#In the same way,&nbsp; the odd subblocks of the&nbsp; $n$-th speech frame are nested with the even sub-blocks of the following frame:&nbsp; $\left (A_{{\rm g},\hspace{0.08cm}n+1},\hspace{0.12cm} A_{{\rm u},\hspace{0.08cm}n}\right )$, ... ,&nbsp; $\left (D_{{\rm g},\hspace{0.08cm}n+1},\hspace{0.12cm} D_{{\rm u},\hspace{0.08cm}n}\right )$.
  
  
 
{{BlaueBox|TEXT=
 
{{BlaueBox|TEXT=
$\text{Fazit:}$&nbsp; Die hier beschriebene Verwürfelungsart wird ''block-diagonales Interleaving'' genannt, hier speziell vom Grad $8$:  
+
$\text{Conclusions:}$&nbsp; The scrambling type described here is called&nbsp; "block-diagonal interleaving"&nbsp; specifically of degree&nbsp; $8$:  
*Dieses vermindert die Störanfälligkeit gegenüber Bündelfehlern.  
+
#This reduces the susceptibility to bundle errors.  
*So werden niemals zwei aufeinander folgende Bits eines Datenblocks direkt hintereinander gesendet.  
+
#So two consecutive bits of a data block are never sent directly after each other.  
*Mehrbitfehler treten nach dem De–Interleaver isoliert auf und können so wirkungsvoller korrigiert werden.}}
+
#Multi-bit errors occur in isolation after the de-interleaver and can thus be corrected more effectively.}}
  
 
 
 
 
==Codierung und Interleaving bei Datensignalen ==
+
==Encoding and interleaving for data signals ==
 +
<br>
 +
For GSM data transmission,&nbsp; each subscriber only has a net data rate of&nbsp; $9.6\ \rm kbit/s$&nbsp; available.&nbsp; Two methods are used for error protection:
 +
*&raquo;'''Forward Error Correction'''&laquo;&nbsp; $\rm (FEC)$&nbsp; is implemented at the physical layer by applying convolutional codes.
 +
 
 +
*&raquo;'''Automatic Repeat Request'''&laquo;&nbsp; $\rm (ARQ)$&nbsp; where defective packets that cannot be corrected are re-requested at the link layer.
  
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.
 
  
[[File:P_ID1221__Bei_T_3_4_S4_v1.png|center|frame|Zur Verdeutlichung von Codierung und Interleaving bei Datensignalen]]
+
The graph illustrates channel coding and interleaving for the data channel with&nbsp; $9.6\ \rm kbit/s$,&nbsp; which in contrast to the channel coding of the speech channel&nbsp; $($with bit error rate&nbsp; $10^{-5}$... $10^{-6})$&nbsp; allows an almost error-free reconstruction of the data.&nbsp; Note:
  
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:
+
[[File:EN_Bei_T_3_4_S4.png|right|frame|Illustration of coding and interleaving for data signals]]
  
*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.
+
[[File:EN_Bei_T_3_4_S4b.png|right|frame|Convolutional encoder of rate&nbsp; $1/2$&nbsp; used by GSM&nbsp; $1/2$]]
*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$:
 
  
[[File:P_ID1227__Bei_T_3_4_S4b_v1.png|center|frame|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$ Bits am Ausgang des Faltungscodierers noch $32$ Bits an den Positionen $15 · {\rm j} – 4 \ ( j = 1$, ... ,$ 32 )$ entfernt („Punktierung”).
+
#The data bit rate of &nbsp; $9.6\ \rm kbit/s$ &nbsp; is first increased in the&nbsp; "Terminal Equipment"&nbsp; of the mobile station through non-GSM specific channel encoding  by&nbsp; $25\%$&nbsp; to &nbsp; $12\ \rm kbit/s$ &nbsp; to allow error detection in circuit-switched networks.<br><br>
*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.
+
#In data transmission,&nbsp;  all bits are equivalent,&nbsp; so unlike speech channel coding, there are no classes.&nbsp; The&nbsp; $240$&nbsp; bits&nbsp; per&nbsp; $20 \rm ms$ time frame are combined together with four tailbits&nbsp; "$0000$"&nbsp; to form a single data frame.<br><br>
*Danach werden die $456$ 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.
+
#These&nbsp; $244$&nbsp; bits are doubled to&nbsp; $488$&nbsp; bits by a convolutional encoder of rate&nbsp; $1/2$&nbsp; as in speech channels.&nbsp; Two encoded symbols are generated per incoming bit,&nbsp; e.g. according to the generator polynomials&nbsp; $G_0(D) = 1 + D^3 + D^4$&nbsp; $($red marks in the second graph$)$&nbsp; and&nbsp; $G_1(D) = 1 + D + D^3 + D^4$.<br><br>
 +
#The following interleaver expects as output&nbsp; &ndash; just like a&nbsp; "speech interleaver" &ndash; only&nbsp; $456$&nbsp; bits per frame.&nbsp; Therefore,&nbsp; from the&nbsp; $488$&nbsp; bits at the output of the convolutional encoder still&nbsp; $32$&nbsp; bits at the positions&nbsp; $15 \cdot j \cdot 4 \ \ ( j = 1$, ... ,&nbsp; $32)$&nbsp; are removed&nbsp; $($"puncturing"$)$.<br><br>
 +
#Since data transmission is less time-critical than speech transmission,&nbsp; a higher interleaving degree is chosen here.&nbsp; The&nbsp; $456$&nbsp; bits are distributed over up to&nbsp; $24$&nbsp; interleaver blocks&nbsp; of&nbsp; $19$&nbsp; bits each,&nbsp; which would not be possible for speech services for reasons of real-time transmission.<br><br>
 +
#Then the&nbsp; $456$&nbsp; bits are split into four consecutive&nbsp; "normal bursts"&nbsp; and sent.&nbsp; When packing in the bursts,&nbsp; groupings of even and odd bits are again formed,&nbsp; similar to interleaving in the speech channel.
 
   
 
   
  
==Empfängerseite – Decodierung ==  
+
==Receiver side of the GSM link - Decoding ==  
 +
<br>
 +
The GSM receiver&nbsp; $($highlighted in yellow$)$&nbsp; includes GMSK demodulation,&nbsp; burst decomposition,&nbsp; decoding,&nbsp; de-interleaving,&nbsp; and channel and speech decoding.
 +
 
 +
Regarding the last two blocks in the graph,&nbsp; it should be noted:
 +
[[File:EN_Bei_T_3_4_S6_neu.png|right|frame|Receiver-side data processing for GSM<br><br><br><br><br>]]
 +
 
 +
*The decoding method is not prescribed by the GSM specification, but is left to the individual network operators. The performance depends on the error correction algorithm used.
 +
 
 +
*For example,&nbsp; with the decoding procedure&nbsp; "Maximum Likelihood Sequence Estimation"&nbsp; $\rm (MLSE)$,&nbsp; the most probable bit sequence is determined using the Viterbi algorithm or a MAP receiver&nbsp; $($"Maximum A-posteriori Probability"$)$.
 +
 
 +
*After error correction,&nbsp; the&nbsp; "Cyclic Redundancy Check"&nbsp; $\rm (CRC)$&nbsp; is performed,&nbsp; where for the full rate codec the degree of the used CRC generator polynomial is&nbsp; $G= 3$.&nbsp; This will detect all error patterns up to weight&nbsp; $3$&nbsp; and all bundle errors up to length&nbsp; $4$.
 +
 
 +
*CRC is used to decide the usability of each speech frame.&nbsp; With positive test result,&nbsp; the speech signals are synthesized from the&nbsp; $260$&nbsp; parameters per frame in the subsequent speech decoder.
  
Der GSM–Empfänger (gelb hinterlegt) beinhaltet die GMSK-Demodulation, die Burstzerlegung, die Entschlüsselung, das De–Interleaving sowie die Kanal– und Sprachdecodierung.
+
*If frames are failed,&nbsp; parameters of earlier frames detected as correct are used for interpolation &nbsp; &rArr; &nbsp; "error concealment".&nbsp;
  
Zu den beiden letzten Blöcken in obigem Bild ist anzumerken:
+
*If several incorrect speech frames occur in succession,&nbsp; the output is continuously lowered to mute.
*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 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.
 
*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.
 
*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.
 
  
 
 
 
 
== Aufgabe zum Kapitel==   
+
== Exercise for the chapter==   
 
+
<br>
[[Aufgaben:3.7_Komponenten_des_GSM–Systems|Aufgabe 3.7: Komponenten des GSM–Systems]]
+
[[Aufgaben:Exercise_3.7:_GSM_System_Components|Exercise 3.7: GSM System Components]]
  
  
  
 
{{Display}}
 
{{Display}}

Latest revision as of 15:10, 20 February 2023


Speech and data transmission components


On the right you can see the block diagram of the GSM transmission system at the transmitting end,  which is

  • suitable for both digitized speech signals  $($sampling rate:  $8 \ \rm kHz$,  quantization:  $13$ bit   ⇒   data rate:  $104 \ \rm kbit/s)$
  • as well as being suitable for  $9.6 \ \rm kbit/s$  data signals.


Here is a brief description of each component:

Components of the speech and data communication with GSM  –   components for speech are shown in blue,  those for data in red, and common blocks in green






  1. Speech signals are compressed by speech coding by factor  $8$   ⇒   from  $104 \ \rm kbit/s$  to  $13 \ \rm kbit/s$.  The bit rate given in the graph is for the full rate codec,  which delivers exactly  $260$  bits per speech frame  $($duration  $T_{\rm R} = 20\ \rm ms)$ .
  2. The  »AMR codec«  delivers in highest mode  $R_{\rm B}=12.2 \ \rm kbit/s$   ⇒   $244$  bits per speech frame.  However,  the speech codec must also transmit additional information regarding the mode   ⇒   so the data rate before channel coding is  $13 \ \rm kbit/s$ .
  3. Task of the dashed  »Voice Activity Detection«  is to decide whether the current speech frame actually contains a speech signal or just a pause during which the power of the transmit amplifier should be turned down.
  4. By  »channel coding«  redundancy is added again to allow error correction at the receiver   ⇒   the channel encoder  outputs  $456$  bits per frame,  resulting in the data rate  $22.8 \ \rm kbit/s$ . The more important bits are specially protected.
  5. The  »interleaver«  scrambles the resulting bit sequence to reduce burst error influence.  The  $456$  input bits are split into four time frames of  $114$  bits each.  Thus,  two consecutive bits are always transmitted in two different bursts.
  6. A  »data channel«  – marked in red in the figure – differs from a speech channel  $($marked in blue$)$  only by the different input rate  $(9.6 \ \rm kbit/s$  instead of  $104 \ \rm kbit/s)$  and the use of a second,  outer channel encoder instead of the speech encoder.


The components highlighted in green apply equally to speech and data transmission.

⇒   The first common system component for speech and data transmission in the block diagram of the GSM transmitter is the  »encryption«,  which is intended to prevent unauthorized persons from gaining access to the data.  There are two fundamentally different encryption methods:

  • »Symmetric encryption«:  This knows only one secret key,  which is used both for encrypting and enciphering the messages in the transmitter and for decrypting and deciphering them in the receiver.  The key must be generated prior to communication and exchanged between the communication partners via a secure channel.  The advantage of this encryption method used in conventional GSM is that it works very quickly.
  • »Asymmetric encryption«:  This method uses two independent but matching asymmetric keys.  It is not possible to use one key to calculate the other.  The  "public key"  is publicly available and is used for encryption.  The  "private key"  is secret and used for decryption.  In contrast to the symmetric encryption methods,  the asymmetric methods are much slower,  but also offer higher security.


⇒   The second green block is the  »burst composition«,  where there are different burst types.  In a  "normal burst"  the  $114$  encoded,  scrambled and encrypted bits are mapped to  $156.25$  bits by  $($duration  $T_{\rm burst} = 576.9 \ \rm µ s)$  adding the  "guard period",  signaling bits,  etc.

These are transmitted within a time slot of duration  $T_{\rm Z} = T_{\rm burst}$  by means of the  modulation method  "GMSK".  This results in the gross data rate  $270.833 \ \rm kbit/s$.

At the receiver side there are in reverse order the blocks  "demodulation" – "burst de-composition" – "de-cryption" – "de-interleaving" – "channel decoding" – "speech decoding".


In the next sections all blocks of the above transmission scheme are presented in detail.


Encoding for speech signals


Uncoded radio data transmission leads to bit error rates in the percentage range.  However,  with  $\text{channel coding}$  some transmission errors can be detected or even corrected at the receiver.  The bit error rate can thus be reduced to values smaller than  $10^{-5}$.

First,  we consider GSM channel encoding for speech channels,  assuming as speech encoder the  $\text{Full Rate Codec}$.  The channel coding of a speech frame of  $20\ \rm ms$  duration is done in four consecutive steps according to the diagram.

From the description in chapter  "Speech Coding"  it can be seen that not all  $260$  bits have the same influence on the subjectively perceived speech quality.

For coding speech signals in GSM
  • Therefore,  the data are divided into classes according to their importance:   The  $50$  most important bits form the  "Class 1a",  other  $132$  are assigned to  "Class 1b"  and the remaining  $78$  bits result in the less important  "Class 2".
  • In the next step,  a three-bit long  $\text{Cyclic Redundancy Check}$  $\rm (CRC)$  checksum is calculated for the  $50$  class 1a bits using a feedback shift register.  The generator polynomial for this CRC check is:
$$G_{\rm CRC}(D) = D^3 + D +1\hspace{0.05cm}. $$
  • Subsequently,  four (yellow)  "tail bits" $(0000)$  are added to the total of  $185$  bits of class 1a and 1b including the three  $($red$)$  CRC parity bits.  These bits initialize the four memory registers of the following convolutional encoder with  zeros,  so that for each speech frame a defined status can be assumed.
  • The rate  $1/2$ convolutional  encoder doubles these  $189$  most important bits to  $378$  bits and thus protects them significantly against transmission errors.  Then the  $78$  bits of the less important class 2 are appended unprotected.


This way,  there are exactly  $456$  bits per  $20 \ \rm ms$ speech frame after channel coding.

  1. This corresponds to a  $($encoded$)$  data rate of  $22.8\ \rm kbit/s$  compared to  $13\ \rm kbit/s$  after the speech coding.
  2. The effective channel coding rate is thus  $260/456 = 57\%$.


Interleaving for speech signals


The result of convolutional decoding depends not only on the frequency of the transmission errors,  but also on their distribution.

  • To achieve good correction results,  the channel should not have any memory,  but should provide statistically independent bit errors as far as possible.
  • In mobile radio systems, however,  transmission errors usually occur in blocks  $($"error bundles"$)$. 
  • By using the interleaving technique,  such  "bundle errors"  are evenly distributed over several bursts and thus their effects are mitigated.


Interleaving in GSM speech signals

For a speech channel,  the interleaver works in the following way:

  1. The  $456$  input bits per speech frame are divided into four blocks of  $114$  bits each according to a fixed algorithm.  We denote these for the  $n$–th  speech frame by  $A_n$,  $B_n$,  $C_n$  and  $D_n$.  The index  $n-1$  denotes the preceding frame and  $n+1$  the succeeding one.
  2. The block  $A_n$  is further divided into two sub-blocks  $A_{{\rm g},\hspace{0.08cm}n}$  and  $A_{{\rm u},\hspace{0.08cm}n}$  of  $57$  bits each,  where  $A_{{\rm g},\hspace{0.08cm}n}$  denote only the even  $($German:  "gerade"   ⇒   "g"$)$  and  $A_{{\rm u},\hspace{0.08cm}n}$  denote the odd  $($German:  "ungerade"  ⇒   "u"$)$  bit positions.  In the graph,  one recognizes  $A_{{\rm g},\hspace{0.08cm}n}$  and  $A_{{\rm u},\hspace{0.08cm}n}$  by red resp. blue backgrounds.
  3. The subblock  $A_{{\rm g},\hspace{0.08cm}n}$  of the  $n$-th speech frame is identified with the block  $A_{{\rm u},\hspace{0.05cm}n-1}$  of the previous frame and gives the  $114$  payload of a  "normal burst":  $\left (A_{{\rm g},\hspace{0.08cm}n}, A_{{\rm u},\hspace{0.08cm}n-1}\right )$.  The same applies to the next three bursts:  $\left (B_{{\rm g},\hspace{0.08cm}n},\hspace{0.12cm} B_{{\rm u},\hspace{0.08cm}n-1}\right )$,  $\left (C_{{\rm g},\hspace{0.08cm}n}, C_{{\rm u},\hspace{0.08cm}n-1}\right )$,  $\left (D_{{\rm g},\hspace{0.08cm}n}, D_{{\rm u},\hspace{0.08cm}n-1}\right )$.
  4. In the same way,  the odd subblocks of the  $n$-th speech frame are nested with the even sub-blocks of the following frame:  $\left (A_{{\rm g},\hspace{0.08cm}n+1},\hspace{0.12cm} A_{{\rm u},\hspace{0.08cm}n}\right )$, ... ,  $\left (D_{{\rm g},\hspace{0.08cm}n+1},\hspace{0.12cm} D_{{\rm u},\hspace{0.08cm}n}\right )$.


$\text{Conclusions:}$  The scrambling type described here is called  "block-diagonal interleaving"  specifically of degree  $8$:

  1. This reduces the susceptibility to bundle errors.
  2. So two consecutive bits of a data block are never sent directly after each other.
  3. Multi-bit errors occur in isolation after the de-interleaver and can thus be corrected more effectively.


Encoding and interleaving for data signals


For GSM data transmission,  each subscriber only has a net data rate of  $9.6\ \rm kbit/s$  available.  Two methods are used for error protection:

  • »Forward Error Correction«  $\rm (FEC)$  is implemented at the physical layer by applying convolutional codes.
  • »Automatic Repeat Request«  $\rm (ARQ)$  where defective packets that cannot be corrected are re-requested at the link layer.


The graph illustrates channel coding and interleaving for the data channel with  $9.6\ \rm kbit/s$,  which in contrast to the channel coding of the speech channel  $($with bit error rate  $10^{-5}$... $10^{-6})$  allows an almost error-free reconstruction of the data.  Note:

Illustration of coding and interleaving for data signals
Convolutional encoder of rate  $1/2$  used by GSM  $1/2$


  1. The data bit rate of   $9.6\ \rm kbit/s$   is first increased in the  "Terminal Equipment"  of the mobile station through non-GSM specific channel encoding by  $25\%$  to   $12\ \rm kbit/s$   to allow error detection in circuit-switched networks.

  2. In data transmission,  all bits are equivalent,  so unlike speech channel coding, there are no classes.  The  $240$  bits  per  $20 \rm ms$ time frame are combined together with four tailbits  "$0000$"  to form a single data frame.

  3. These  $244$  bits are doubled to  $488$  bits by a convolutional encoder of rate  $1/2$  as in speech channels.  Two encoded symbols are generated per incoming bit,  e.g. according to the generator polynomials  $G_0(D) = 1 + D^3 + D^4$  $($red marks in the second graph$)$  and  $G_1(D) = 1 + D + D^3 + D^4$.

  4. The following interleaver expects as output  – just like a  "speech interleaver" – only  $456$  bits per frame.  Therefore,  from the  $488$  bits at the output of the convolutional encoder still  $32$  bits at the positions  $15 \cdot j \cdot 4 \ \ ( j = 1$, ... ,  $32)$  are removed  $($"puncturing"$)$.

  5. Since data transmission is less time-critical than speech transmission,  a higher interleaving degree is chosen here.  The  $456$  bits are distributed over up to  $24$  interleaver blocks  of  $19$  bits each,  which would not be possible for speech services for reasons of real-time transmission.

  6. Then the  $456$  bits are split into four consecutive  "normal bursts"  and sent.  When packing in the bursts,  groupings of even and odd bits are again formed,  similar to interleaving in the speech channel.


Receiver side of the GSM link - Decoding


The GSM receiver  $($highlighted in yellow$)$  includes GMSK demodulation,  burst decomposition,  decoding,  de-interleaving,  and channel and speech decoding.

Regarding the last two blocks in the graph,  it should be noted:

Receiver-side data processing for GSM




  • The decoding method is not prescribed by the GSM specification, but is left to the individual network operators. The performance depends on the error correction algorithm used.
  • For example,  with the decoding procedure  "Maximum Likelihood Sequence Estimation"  $\rm (MLSE)$,  the most probable bit sequence is determined using the Viterbi algorithm or a MAP receiver  $($"Maximum A-posteriori Probability"$)$.
  • After error correction,  the  "Cyclic Redundancy Check"  $\rm (CRC)$  is performed,  where for the full rate codec the degree of the used CRC generator polynomial is  $G= 3$.  This will detect all error patterns up to weight  $3$  and all bundle errors up to length  $4$.
  • CRC is used to decide the usability of each speech frame.  With positive test result,  the speech signals are synthesized from the  $260$  parameters per frame in the subsequent speech decoder.
  • If frames are failed,  parameters of earlier frames detected as correct are used for interpolation   ⇒   "error concealment". 
  • If several incorrect speech frames occur in succession,  the output is continuously lowered to mute.


Exercise for the chapter


Exercise 3.7: GSM System Components