Table Of ContentMartin Werner
Information und Codierung
Aus dem Programm Informations- und
Kommunikationstechnik
Einführung in die Systemtheorie
von B. Girod, R. Rabenstein und A.K.E. Stenger
Information und Kommunikation
von M. Hufschmid
Digitale Signalverarbeitung
von K. D. Kammeyer und K. Kroschel
Nachrichtenübertragung
von K. D. Kammeyer
Grundlagen der Informationstechnik
von M. Meyer
Kommunikationstechnik
von M. Meyer
Signalverarbeitung
von M. Meyer
Digitale Sprachsignalverarbeitung
von P. Vary, U. Heute und W. Hess
Mobilfunknetze und ihre Protokolle 1 und 2
von B. Walke
Grundlagen der Kommunikationstechnik
von H. Weidenfeller
Digitale Signalverarbeitung mit MATLAB®
von M. Werner
Digitale Signalverarbeitung mit MATLAB®-Praktikum
von M. Werner
Nachrichtentechnik
von M. Werner
Nachrichten-Übertragungstechnik
von M. Werner
Signale und Systeme
von M. Werner
Digitale Audiosignalverarbeitung
von U. Zölzer
www.viewegteubner.de
Martin Werner
Information
und Codierung
Grundlagen und Anwendungen
2., vollständig überarbeitete und erweiterte Auflage
Mit 162 Abbildungen und 72 Tabellen
STUDIUM
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der
Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über
<http://dnb.d-nb.de> abrufbar.
1. Auflage 2002
2.,vollständig überarbeitete und erweiterte Auflage 2008
Alle Rechte vorbehalten
© Vieweg+Teubner|GWV Fachverlage GmbH, Wiesbaden 2008
Lektorat: Reinhard Dapper | Andrea Broßler
Vieweg+Teubner ist Teil der Fachverlagsgruppe Springer Science+Business Media.
www.viewegteubner.de
Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Jede
Verwertung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne
Zustimmung des Verlags unzulässig und strafbar. Das gilt insbesondere für
Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung
und Verarbeitung in elektronischen Systemen.
Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk
berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im
Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher
von jedermann benutzt werden dürften.
Umschlaggestaltung:KünkelLopka Medienentwicklung, Heidelberg
Druck und buchbinderische Verarbeitung: Wilhelm &Adam, Heusenstamm
Gedruckt auf säurefreiem und chlorfrei gebleichtem Papier.
Printed in Germany
ISBN 978-3-8348-0232-3
V
Vorwort
Information im technischen Sinne und ihr Schutz gegen Übertragungsfehler gehören heute zur
Grundbildung von Ingenieuren und Informatikern. „Information und Codierung“ will dazu
wichtige Grundlagen und Methoden in kompakter Form vorstellen.
Im ersten Teil steht der Begriff Information im Mittelpunkt. Der Ansatz, dass Information
Ungewissheit auflöst, führt vom Zufallsexperiment zur Entropie. Informationsquellen werden
zu Zufallsexperimenten und Information wird zur messbaren Größe. Wichtige Fragen zur
Optimierung des Informationsflusses in technischen Systemen werden formuliert und be-
antwortet.
Im zweiten Teil wird die Information durch die Kanalcodierung gegen Übertragungsfehler
geschützt. Ohne Hinzufügen von Prüfzeichen wäre die Kommunikation mit Mobiltelefonen
oder das Laden von Software für den PC über das Internet nicht denkbar. So werden fehler-
hafte Daten im Empfänger erkannt und/oder korrigiert.
Beide Teile sind so organisiert, dass sie unabhängig voneinander gelesen werden können.
Das Buch begleitet eine vierstündige Lehrveranstaltung an der Hochschule Fulda im vierten
Fachsemester des Bachelor-Studienganges Elektrotechnik und Informationstechnik. Viele
Jahre Erfahrung in der Lehre zeigen, dass sich die Studierenden in die zunächst ungewohnte
Art des Stoffes hineindenken müssen. Ist die Hürde erst mal genommen, fallen die weiteren
Schritte leichter. Allen Leserinnen und Lesern wünsche ich deshalb ein offenes Herangehen an
„Information und Codierung“.
Zur 2. Auflage
Die 2. Auflage bot Gelegenheit, das Buch vollständig zu überarbeiten und zu ergänzen. So ist
der Umfang des Buches um die Hälfte gewachsen. Der erste Teil wurde vor allem durch
Anwendungen ergänzt, wie die Golomb- und Rice-Codes und ein Programmbeispiel für die
arithmetische Codierung in der Integer-Arithmetik. Im zweiten Teil wurde besonders das
Thema Faltungscodes vertieft, unter anderem wird den Turbo-Codes und dem Viterbi-
Entzerrer größerer Platz eingeräumt.
Neue Beispiele und Aufgaben mit ausführlichen Lösungen bieten zusätzliche Unterstützung
bei der Einarbeitung und Anwendung des Lehrstoffes. Einige Programmbeispiele mit
MATLAB®1 weisen auf die Umsetzung in die Praxis hin.
Mein Dank gilt dem Vieweg+Teubner Verlag für die Bereitschaft, die Erweiterung des Buches
mitzutragen, und den Mitarbeitern des Verlages für die gute Zusammenarbeit.
Fulda, im August 2008 Martin Werner
1 MATLAB(cid:2) ist ein eingetragenes Wahrenzeichen der Firma The MathWorks, Inc., USA. Für mehr
Informationen siehe www.mathworks.com oder www.mathworks.de.
Inhaltsverzeichnis VII
Inhaltsverzeichnis
Teil I: ENTROPIE UND QUELLENCODIERUNG
1 Einführung.............................................................................................................. 1
2 Information, Entropie und Redundanz........................................................... 3
2.1 Information als messbare Größe................................................................................ 3
2.2 Informationsgehalt eines Zeichens............................................................................. 3
2.3 Entropie und Redundanz............................................................................................ 5
3 Quellencodierung für diskrete gedächtnislose Quellen............................. 13
3.1 Quellencodierungstheorem 1..................................................................................... 13
3.2 Huffman-Codierung................................................................................................... 18
3.3 Golomb- und Rice-Codes........................................................................................... 26
4 Entropie von Verbundquellen............................................................................ 31
4.1 Wechselseitiger und bedingter Informationsgehalt.................................................... 31
4.2 Verbundentropie und bedingte Entropie.................................................................... 33
4.3 Zusammenfassung...................................................................................................... 37
5 Stationäre diskrete Quellen mit Gedächtnis................................................... 39
5.1 Einführung................................................................................................................. 39
5.2 Entropie...................................................................................................................... 40
5.3 Quellencodierungstheorem 2..................................................................................... 43
6 Markov-Quellen.................................................................................................... 46
6.1 Einführung................................................................................................................. 46
6.2 Zeitdiskrete Markov-Ketten....................................................................................... 46
6.3 Diskrete endliche Markov-Quelle mit Rückwirkung r.............................................. 55
6.4 Entropie stationärer Markov-Quellen........................................................................ 60
6.5 Codierung stationärer Markov-Quellen..................................................................... 64
6.6 Zusammenfassung...................................................................................................... 69
7 Datenkompression................................................................................................. 72
7.1 Einführung................................................................................................................. 72
7.2 Arithmetische Codierung........................................................................................... 73
7.2.1 Prinzip der arithmetischen Codierung.................................................................. 73
7.2.2 Arithmetische Codierung mit Integer-Arithmetik................................................ 74
7.2.3 Decodierung mit Integer-Arithmetik.................................................................... 82
7.3 Lempel-Ziv-Codierung.............................................................................................. 84
VIII Inhaltsverzeichnis
8 Diskrete gedächtnislose Kanäle und Transinformation............................... 87
8.1 Einführung................................................................................................................. 87
8.2 Symmetrischer Binärkanal......................................................................................... 87
8.3 Transinformation........................................................................................................ 89
8.4 Zusammenfassung...................................................................................................... 97
8.5 Kanalkapazität............................................................................................................ 99
8.5.1 Kanalkapazität des symmetrischen Binärkanals................................................... 99
8.5.2 Kanalkapazität des symmetrischen Binärkanals mit Auslöschung....................... 100
8.6 Kanalcodierungstheorem für diskrete gedächtnislose Kanäle.................................... 102
8.7 Beispiele zu Abschnitt 8............................................................................................. 103
9 Kontinuierliche Quellen und Kanäle................................................................ 108
9.1 Differentielle Entropie................................................................................................ 108
9.2 Kanalkapazität und Shannon-Grenze......................................................................... 112
9.3 Beispiele zu Abschnitt 9............................................................................................. 116
10 Übungsaufgaben zu Teil I: Entropie und Quellencodierung...................... 122
10.1 Aufgaben.................................................................................................................... 122
10.2 Lösungen.................................................................................................................... 127
Teil II: CODIERUNG ZUM SCHUTZ GEGEN
ÜBERTRAGUNGSFEHLER
1 Einführung.............................................................................................................. 133
2 Paritätscodes........................................................................................................... 134
2.1 Einfache binäre Paritätscodes..................................................................................... 134
2.2 Paritätscodes mit Erkennung von Vertauschungsfehlern........................................... 136
3 Lineare Blockcodes............................................................................................... 139
3.1 Kanalcodierung zum Schutz gegen Übertragungsfehler............................................ 139
3.2 Galois-Körper............................................................................................................. 141
3.3 Generatormatrix......................................................................................................... 142
3.4 Syndrom-Decodierung............................................................................................... 144
3.5 Eigenschaften linearer Blockcodes............................................................................ 148
3.5.1 Hamming-Distanz und Fehlerkorrekturvermögen................................................ 148
3.5.2 Perfekte Codes und Hamming-Grenze................................................................. 150
3.5.3 Restfehlerwahrscheinlichkeit................................................................................ 151
3.5.4 Hamming-Codes......................................................................................................... 154
3.5.5 Erweiterte Hamming-Codes....................................................................................... 156
3.6 Aufgaben zu Abschnitt 2 und 3.................................................................................. 158
3.6.1 Aufgaben.............................................................................................................. 158
3.6.2 Lösungen.............................................................................................................. 159
Inhaltsverzeichnis IX
4 Zyklische Codes..................................................................................................... 162
4.1 Einführung................................................................................................................. 162
4.2 Definition und grundlegende Eigenschaften binärer zyklischer Codes..................... 163
4.3 Systematischer zyklischer Code................................................................................. 169
4.4 Generatormatrix und Prüfmatrix................................................................................ 171
4.5 Encoder-Schaltung..................................................................................................... 175
4.6 Syndrom und Fehlerdetektion.................................................................................... 180
4.7 Fehlerbündel.............................................................................................................. 184
4.8 Decoder-Schaltung: Meggitt-Decoder....................................................................... 186
4.9 Zyklische Hamming-Codes........................................................................................ 189
4.10 Golay-Codes.............................................................................................................. 193
4.11 CRC-Codes................................................................................................................ 193
4.12 Verkürzte Codes......................................................................................................... 194
4.13 Anwendungen............................................................................................................ 201
4.13.1 ATM HEC............................................................................................................ 201
4.13.2 Bluetooth FEC Rate 2/3........................................................................................ 204
4.14 Übungen zu Abschnitt 4............................................................................................. 207
4.14.1 Aufgaben.............................................................................................................. 207
4.14.2 Lösungen.............................................................................................................. 208
5 Faltungscodes......................................................................................................... 214
5.1 Einführung................................................................................................................. 214
5.2 Encoder-Schaltung und Impulsantwort...................................................................... 214
5.3 Polynomdarstellung................................................................................................... 219
5.4 Zustandsbeschreibung................................................................................................ 221
5.5 Maximum-Likelihood-Decodierung.......................................................................... 226
5.5.1 Viterbi-Algorithmus............................................................................................. 226
5.5.2 Soft-Input Viterbi-Algorithmus............................................................................ 234
5.6 Struktur der Faltungscodes......................................................................................... 238
5.6.1 Gewichtsfunktion................................................................................................. 238
5.6.2 Freie Distanz......................................................................................................... 244
5.6.3 Katastrophale Faltungscodes................................................................................ 248
5.6.4 Generatormatrix.................................................................................................... 250
5.6.5 Systematischer nichtrekursiver Encoder.............................................................. 253
5.6.6 Systematischer rekursiver Encoder...................................................................... 256
5.7 Fortgeschrittene Verfahren........................................................................................ 259
5.7.1 Turbo-Codes......................................................................................................... 259
5.7.2 Punktierte Faltungscodes für ungleichmäßigen Fehlerschutz.............................. 262
5.7.3 Tail-biting Codes.................................................................................................. 265
5.8 Aufgaben zu Abschnitt 5............................................................................................ 267
5.8.1 Aufgaben.............................................................................................................. 267
5.8.2 Lösungen.............................................................................................................. 269
X Inhaltsverzeichnis
6 Viterbi-Entzerrer................................................................................................... 273
6.1 Zeitdiskretes äquivalentes Kanalmodell..................................................................... 273
6.1.1 Übertragungsmodell............................................................................................. 273
6.1.2 Dekorrelationsfilter............................................................................................... 276
6.1.3 Zeitdiskretes äquivalentes Kanalmodell mit AWGN........................................... 279
6.2 Decodierung mit dem Viterbi-Algorithmus............................................................... 280
6.2.1 Zustandsbeschreibung des Ersatzkanals............................................................... 280
6.2.2 Decodierung im Netzdiagramm............................................................................ 282
6.2.3 Viterbi-Coprozessor............................................................................................. 283
6.3 Aufgaben zu Abschnitt 6............................................................................................ 285
6.3.1 Aufgaben.............................................................................................................. 285
6.3.2 Lösungen.............................................................................................................. 286
Abkürzungen und Formelzeichen................................................................................ 288
Literaturverzeichnis......................................................................................................... 292
Sachwortverzeichnis........................................................................................................ 296
1
TEIL I: ENTROPIE UND QUELLENCODIERUNG
1 Einführung
Die Informationstheorie beschreibt mit den Mitteln der Wahrscheinlichkeitsrechnung die
Darstellung, Codierung und Übertragung von Information, um ihren Fluss in technischen Sys-
temen zu analysieren und zu optimieren. Wichtig dabei ist die Abgrenzung des naturwissen-
schaftlich-technischen Begriffs der Information vom alltäglichen Sprachgebrauch.
Als Beispiel sei eine zufällig ausgewählte Datenleitung genannt, bei der wir einen Bitstrom,
einen Fluss aus den logischen Symbolen „0“ und „1“, beobachten können. Wir wissen nicht,
woher die Daten ursprünglich kommen und letzten Endes gehen. Eine Interpretation der Daten
ist somit nicht möglich. Welche Möglichkeiten zur Beschreibung des Bitstromes stehen noch
zur Verfügung?
Zur Abgrenzung des technischen Informationsbegriffs von unserem alltäglichen Sprachge-
brauch helfen die in der Linguistik verwendeten Begriffe Syntax, Semantik und Pragmatik1.
Vereinfacht gesprochen können die Syntax und Semantik als Daten im technischen Sinne
verstanden werden. Dabei legt die Syntax die zugelassenen Zeichen und Zeichenfolgen fest.
Die Semantik beschreibt die Bedeutung der Zeichen und Zeichenfolgen. Die eigentliche Be-
deutung in der Anwendung wird durch die Pragmatik beschrieben. Erst der Sinnzusammen-
hang der Pragmatik macht aus den Daten der technischen Information die Information im
üblichen Sinne. Letzteres unterstreicht das deutsche Wort für Information die „Nachricht“, eine
„Mitteilung, um sich danach zu richten“.
(cid:3) Syntax + Semantik (cid:2) Daten, Information im technischen Sinn
(cid:3) Daten + Pragmatik (cid:2) Nachricht, Information für „Menschen“
Grundlage der weiteren Überlegungen ist ein Informationsbegriff, der Information zu einer
experimentell erfassbaren Größe macht, wie wir es auch in der Physik voraussetzen. Claude E.
Shannon2 hat in „The Mathematical Theory of Communication“ 1948 den Anstoß dazu
gegeben [Sha48]. Darin definiert er den Informationsbegriff der modernen Informationstheorie
und skizziert die begrifflichen Grundlagen der heutigen Informationstechnik.
Shannon führte als Beispiel die damals weit verbreiteten Lochkarten an. Eine Lochkarte mit N
möglichen Positionen für ein bzw. kein Loch kann genau 2N verschiedene Nachrichten aufneh-
men. Nimmt man zwei Lochkarten, so gibt es bereits 22(cid:4)N Möglichkeiten. Die Zahl der mögli-
chen Nachrichten steigt also quadratisch an. Andererseits sollte man erwarten, dass zwei Loch-
karten zusammen doppelt soviel Information speichern können als eine.
Hier drängt sich die Kombination aus der Zahl der Möglichkeiten und der Logarithmusfunktion
zur Beschreibung des Informationsgehaltes auf.
1 Siehe Semiotik, zu griechisch sema für Zeichen.
2 Claude E. Shannon: *1916/†2001, U.S.-amerikanischer Mathematiker und Ingenieur, grundlegende
Arbeiten zur Informationstheorie und Codierung.