Ein (7,4)-Code-Beispiel Generator-Polynom: P(X) = X 3 + X 2 + 1 Bemerkung: Es ist 7 = 2^3-1, also nach voriger Überlegung sind alle 1-Bit-Fehler korrigierbar Beachte auch d min der Codewörter ist 3, also in der Tat alle 1-Bit-Fehler korrigierbar William Stallings, Wireless Communications & Networks, 2nd edition, Prentice Hall, 2005 119
Wie implementiert man eigentlich die Polynom-Division? Beispiel: Block-Syndrom Generator für X n-k + A n-k-1 x n-k-1 +... + A 2 X 2 + A 1 X + 1 Mittels Linear-Feedback-Shift-Register (LFSR) William Stallings, Wireless Communications & Networks, 2nd edition, Prentice Hall, 2005 120
Konkrete CRC-Beispiele Bose-Chaudhuri-Hocquenhem (BCH) Hier keine genauen Details wie diese konstruiert werden Nur generell: es können für gegebene m und t geeignete binäre (n,k)-bch-codes mit folgenden Parametern konstruiert werden Blocklänge: n = 2 m 1 Anzahl Check-Bits: n k m t Minimale Distanz der Codewörter: d min 2t + 1 Code kann dann alle Kombinationen von t oder weniger fehlerhaften Bits korigieren Beispiele von BCH-Generator-Polynomen Reed-Solomon-Codes (RS) sind eine BCH-Subklasse (hier sei nur der Code-Name genannt; keine weiteren Details) William Stallings, Wireless Communications & Networks, 2nd edition, Prentice Hall, 2005 121
Übersicht Elektromagnetische Wellen Frequenzen und Regulierungen Antennen Signale Signalausbreitung Multiplex Modulation Bandspreizverfahren Codierung Rauschen und Übertragungsfehler Fehlerdetektion Block-Codes Faltungs-Codes 122
Faltungscodes Idee von (n,k,k)-faltungs-codes Teile zu übertragenden Bitstrom in (sehr kleine) k-bit-blöcke Überführe jeden k-bit-block in n-bit-block n-bit-block ist der k-bit-block mit zusätzlicher Redundanz Die letzten K-1 zu übertragenden k-bit-blöcke fließen in die Redundanzberechnung des aktuellen n-bit-blockes ein Korrigiere empfangene k-bit-blöcke im empfangenen Bitstrom direkt modulo einer kleinen Fenstergröße z.b. K=4 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 Die Idee an einem konkreten Beispiel: Viterbi-Algorithmus c1 c2 c3 c4 c5 123
Beispiel eines (2,1,3)-Encoders Übertrage die Output- Bits Empfänger muss hierzu die Eingabe-Bits rekonstruieren William Stallings, Wireless Communications & Networks, 2nd edition, Prentice Hall, 2005 124
Decodierung: Vorüberlegung Trellis-Diagramm: Skizze an der Tafel 125
Output-Bits des Senders beschreiben einen Pfad im Trellis; Beispiel Zu senden: 1 1 0 1 0 0 0 Erzeugt: 11 01 01 00 10 11 00 William Stallings, Wireless Communications & Networks, 2nd edition, Prentice Hall, 2005 126
Decoding: zunächst ohne Fehler Gesendet: 11 01 01 00 10 11 00 Empfangen: 11 01 01 00 10 11 00 also: 1 1 0 1 0 0 0 William Stallings, Wireless Communications & Networks, 2nd edition, Prentice Hall, 2005 127
Decoding: jetzt mit einem Fehler Gesendet: 11 01 01 00 10 11 00 Empfangen: 11 01 01 01 10 11 00 also: 1 1 0? William Stallings, Wireless Communications & Networks, 2nd edition, Prentice Hall, 2005 128
Viterbi-Algorithmus Prinzipielle Idee: finde den Pfad im Trellis, der von der empfangenen Bit- Folge am wenigsten abweicht Distanzmetrik erlaubt verschiedene Varianten Wir betrachten hier die Hamming-Distanz Algorithmus für eine Fenstergröße b Schritt 0: markiere Trellis- Startzustand mit 0 Schritt i: finde für jeden Trellis-Zustand den/die Pfad/e der/die folgende Gleichung minimiert/minimieren Gewicht des Vorgängerzustands + Hamming-Distanz zwischen der letzten Kante und der empfangenen Kantenbeschriftung Schritt b: wenn alle so gefundenen Pfade eine erste gemeinsame Kante haben, dann ist die Eingabe für diese Kante das Ergebnis; sonst nicht korrigierbarer Fehler Ein Beispiel!!!! 129
Ein Beispiel für Fenstergröße 7 10 01 01 00 10 11 00 William Stallings, Wireless Communications & Networks, 2nd edition, Prentice Hall, 2005 130
Randbemerkung: Turbo-Codes Häufig eingesetzt in 3G-Drahtlossystemen (deswegen hier zumindest mal genannt) Reichen nahe an die Shannon-Schranke heran Es gibt viele Arten von Turbo-Codes Viele basieren auf dem Prinzip der Faltungs-Codes Keine weiteren Details an diese Stelle (Thema einer Informations- und Codierungstheorie-Veranstaltung) 131
Zusammenfassung und Literatur Elektromagnetische Wellen Frequenzen und Regulierungen Antennen Signale Signalausbreitung Multiplex Modulation Bandspreizverfahren Codierung 132
Zusammenfassung Was lernen wir als Informatiker daraus? Wir können nicht erwarten, dass die E- und Nachrichtentechniker uns Kanäle zaubern, die so gut wie die drahtgebundenen sind Insbesondere: je größer die Mobilität (Geräte selber, aber auch die Umgebung) desto Fehleranfälliger wird der Kanal Wir müssen auf allen darauf aufbauenden Schichten für solche Störfälle gewappnet sein Gute Kenntnis der unteren Schichten ist auch notwendig um für das betrachtete Einsatzgebiet die richtigen Systemannahmen für höhere Schichten treffen zu können Einflussnahme von Algorithmen auf die untersten Schichten: Leistungseinstellung, Gerätepositionierung (vgl. demnächst angebotene Sensor-Roboter-Projekt) Die hier vorgestellten Modelle eignen sich auch gut für die analytische Bewertung und Computer-Simulation von Protokolle die in den Schichten darüber liegen 133
Literatur [Schiller2003] Jochen Schiller, Mobilkommunikation, 2te überarbeitete Auflage, 2003 Kapitel 2: Drahtlose Übertragung [Rappaport2002] Theodore Rappaport, Wireless Communications, Principles and Practice, Second Edition, Prentice Hall, 2002 4.2 Free Space Propagation Model 4.3 Relating Power to Electric Field (ignorieren Sie einfach die Formeln 4.10, 4.11 und 4.12 und den Begriff intrinsic impedance ) 4.9.1 Log-distance Path Loss Model 4.9.2 Log-normal Shadowing [Schwartz2005] Mischa Schwartz, Mobile Wireless Communications, Cambride University Press, 2005 2.2 Wireless Case [Stallings2002] William Stallings, Wireless Communications & Networks, 2nd edition, Prentice Hall, 2005 5.1 Antennas 8.2 Block Error Correction Codes (den dort auch beschriebenen Hamming-Code haben wir hier aber nicht behandelt) 8.3 Convolutional Codes [Bronstein2008] I. N. Bronstein, K. A. Semendjajew, G. Musiol, H. Mühlig, Taschenbuch der Mathematik, 7. vollständig überarbeitete und ergänzte Auflage, Verlag Harri Deutsch, 2008 1.5 Komplexe Zahlen (falls Sie eine Auffrischung dieses Wissens benötigen) 134