Blockcode - LinkFang.de





Blockcode


Ein Blockcode ist eine Art von Kanalkodierung, gekennzeichnet dadurch, dass die benutzten Codewörter alle dieselbe Anzahl an Symbolen aus einem Alphabet, z. B. Bits haben.

Obwohl Blockcodes häufig nicht optimal im Sinne einer minimalen mittleren Codewortlänge sind, schränkt man sich oft auf Blockcodes ein, da die Erforschung von Codes mit beliebiger Länge weitaus schwieriger ist. Eine weitere Spezialisierung stellen die linearen Codes dar.

Wichtige Parameter eines Blockcodes sind die Informationsrate (eine Kenngröße für die in einer festen Datenmenge enthaltenen Informationsmenge) sowie die Korrekturrate (Hamming-Abstand - eine Kenngröße für die Fehlerresistenz bei einer festen Datenmenge). Es ist im Allgemeinen nicht möglich, diese Eigenschaften gleichzeitig zu optimieren. Deshalb muss in der Praxis stets neu entschieden werden, welcher Blockcode den besten Kompromiss für eine bestimmte Anwendung bietet.

Die Spannung zwischen Effizienz (große Informationsrate) und Korrekturfähigkeit lässt sich auch durch den Versuch erkennen, bei einer bestimmten Anzahl Bits pro Codewort und einer bestimmten Korrekturrate (dargestellt durch den Hamming-Abstand d) die gesamte Anzahl der Codewörter zu maximieren.

Man bezeichnet allgemein [math]\mathcal C[/math] als einen (n,d,q)-Code ,falls

  • A ein Alphabet mit [math] |A|=q [/math] ist,
  • für den Code [math] \mathcal C \subseteq A^n [/math],
  • für den Minimalabstand [math] d(\mathcal C) \geq d[/math] gilt.

Betrachtet man lineare Codes, so spricht man von (n,k,d,q)-Codes, wobei k hier die Dimension von [math]\mathcal C[/math] über dem Körper [math]\mathbb F_q[/math] ist. n und d haben dabei die gleiche Bedeutung wie bei Blockcodes.

Man interessiert sich also nun für Max(n,d,q):=max{ |[math]\mathcal C[/math]| : [math]\mathcal C[/math] ist (n,d,q)-Code }, da hierbei eine bei gegebenem n,d,q optimale Informationsrate erzielt wird. Siehe hierzu Singleton-Schranke (MDS-Code), Hamming-Schranke (Perfekter Code), Plotkin-Schranke, Optimaler Code.

Definition

Formal heißt der Code [math] \mathcal C \subseteq A^n [/math] Blockcode, wobei [math]A[/math] als Alphabet bezeichnet wird und [math]n[/math] die Länge eines Codewortes [math]w \in \mathcal C[/math] ist.

Blockcodes, die aus [math]m[/math] Informationssymbolen am Blockanfang und [math]k[/math] Prüfsymbolen am Blockende bestehen werden Systematische Blockcodes genannt (siehe Abbildung).

Informationsrate für Blockcodes

Sei [math]\mathcal C \subseteq A^n[/math] ein Blockcode und es gelte [math]|A|=q[/math], das Alphabet habe also q verschiedene Elemente. Dann lautet für [math]\mathcal C[/math] die Definition der Informationsrate:

[math]\frac{\log_q(|\mathcal C|)}{\log_q(|A|^n)}=\frac{\log_q(|\mathcal C|)}{n}[/math].

Ist z.B. [math]\mathcal C[/math] ein binärer Code mit [math]s[/math] verschiedenen Elementen, dann benötigt man höchstens [math]\log_2(s) +1[/math] Bits, um [math]s[/math] verschiedene Codewörter zu erhalten. Die Informationsrate setzt daher die tatsächlich benötigte Anzahl an Zeichen mit der geringstmöglichen Anzahl an Zeichen ins Verhältnis.

Wenn beispielsweise die ersten [math]k[/math] Bits eines binären Codeworts Informationsbits sind, die in allen theoretisch möglichen Kombinationen existieren, dann ist die Informationsrate:

[math]\frac{\log_2(2^k)}{n}=\frac{k}{n}[/math].

Fehlerkorrektur

Blockcodes können zur Fehlererkennung und Fehlerkorrektur bei der Übertragung von Daten über fehlerbehaftete Kanäle verwendet werden. Dabei ordnet der Sender dem zu übertragenen Informationswort der Länge [math]m[/math] ein Codewort der Länge [math]n[/math] zu, wobei [math]n \gt m[/math]. Durch das Hinzufügen der [math]n-m[/math] zusätzlichen Symbole entsteht Redundanz und die Informationsrate sinkt; jedoch kann der Empfänger die redundante Information nun dazu nutzen Übertragungsfehler zu erkennen und zu korrigieren.

Verwendet man beispielsweise, im Fall der Binärkodierung, die Zuordnung

Informationswort Codewort
0 000
1 111

so können empfangene Codewörter mit genau einem Bitfehler korrigiert werden, indem man mit Hilfe einer Mehrheitsfunktion das abweichende Bit umkehrt:

Fehlerhaftes Codewort Korrigiertes Codewort Zugeordnetes Informationswort
001 000 0
010 000 0
011 111 1
100 000 0
101 111 1
110 111 1

Sind in diesem Falle jedoch 2 Bits falsch, so wird der Fehler "falsch korrigiert".


Kategorien: Kodierungstheorie

Quelle: Wikipedia - http://de.wikipedia.org/wiki/Blockcode (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.