Zum Inhalt springen

Faltungscode

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 12. August 2006 um 22:11 Uhr durch Fink (Diskussion | Beiträge) (-redundante kats). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Faltungscodes sind Codes zur Kanalkodierung auf stark störanfälligen Übertragungssystemen (z. B. im Mobilfunk und in der Raumfahrt) und ermöglichen es dem Empfänger, Übertragungsfehler zu korrigieren. Durch die Faltung wird die Bitrate vervielfacht.

Faltungscodes haben nichts mit der ähnlich klingenden Code-Faltung zu tun.

Beschreibung

Für b eingangsseitige Informationsbits erzeugt ein Faltungs-Codierer c Codebits an seinem Ausgang. Das Verhältnis von Informationsbits zu Codebits wird als Coderate R bezeichnet.

Der zweite wichtige Parameter zur Charakterisierung eines Faltungscodes ist die Gedächtnisordnung k. Bei einer technischen Realisierung mittels Schieberegister entspricht k der Anzahl der Speicherzellen. Der Wert k + 1 wird als Einflusslänge bezeichnet.

Prinzipiell bildet der Faltungskodierer halb-unendliche Informationssequenzen auf halbunendliche Codesequenzen ab. Sollen endliche Informationsworte codiert werden, so wendet man die Techniken Terminierung, Truncation oder Tail-Biting an.

Es existieren mehrere Algorithmen zur Dekodierung von Faltungscodes. Für relative kleine Werte von k wird meist der Viterbi-Algorithmus verwendet. Falls eine Soft-Dekodierung erwünscht ist, verwendet man meist den BCJR-Algorithmus. Für große Gedächtnisordnungen verwendet man sequentielle Dekodierer.

Technische Realisierung

Ein Schieberegister hält die jeweils k letzten Datenbits gespeichert. Es gibt 1/r Modulo-2 Addierer von denen jeder zwei oder auch mehrere Bits im Schieberegister miteinander verknüpft. Pro Datenbit am Eingang werden die Ausgänge aller Addierer einmal abgefragt und als Ausgangsdatenstrom zusammengesetzt. Hierdurch entsteht die Vervielfachung der Datenrate.

Anwendungsbeispiele

  • Im GSM- und UMTS-Mobilfunk werden unterschiedliche Faltungscodes eingesetzt.
  • Das Raumflugprogramm Voyager verwendete eine Schieberegisterlänge k von 7 und eine Rate r = 1/2.
  • Die Raumflugprogramme Mars Pathfinder, Mars Exploration Rover und Cassini probe verwendeten eine Schieberegisterlänge k von 15 und eine Rate r = 1/6.

Siehe auch

Werden mehrere Faltungskodierer parallel oder seriell verkettet, spricht man von Turbo-Codes.

Weitere fehlerkorrigierende Codes finden sich auf der Liste fehlerkorrigierender Codes.