Paritätsbit

Inhaltsverzeichnis

1 Erzeugung N Paritätsbits
2 Empfang des Codewortes mit N Paritätsbits
3 Anwendungsbereich
4 Gerade und ungerade Parität
5 Siehe auch
6 Weblinks

Paritätskontrolle (parity check)

Die Paritätskontrolle dient der Erkennung fehlerhaft übertragener Informationsworte. Als Informationswort wird hier eine Folge von Bits bezeichnet. Die Paritätskontrollcodierung hängt dem Informationswort ein (N=1) Paritätskontrollbit auch Paritybit genannt an. Das Ergebnis, welches um N=1 Stelle länger ist als das Informationswort, wird hier Codewort genannt. Die Methode der Fehlererkennung mittels Paritätsbits heißt Paritätsprüfung. Da nicht bekannt ist wo innerhalb des Codewortes der Fehler aufgetreten ist, ist keine Fehlerkorrektur möglich. Ausserdem ist bei einem Paritätsbit N=1 nur eine ungerade Anzahl von Bitfehlern in einem Codewort feststellbar. Eine gerade Anzahl von Bitfehlern wird nicht festgestellt.

Hierfür gibt es Weiterentwicklungen wie den Hamming-Code oder das ECC-Verfahren. Mit diesen Verfahren ist auch eine Fehlerkorrektur möglich.

Erzeugung N Paritätsbits

Beim Sender werden alle Bits eines Datenblocks (hier Informationswort) modulo N addiert. Entsprechend lassen sich bis zu N Bitfehler erkennen. Für N=1 wird die Summe der Einsen (Paritätssumme) im Informationswort berechnet. Ist diese Summe gerade wird bei Even-Parity das Paritätsbit zu Null. Entsprechend ergibt eine ungerade Summe des Informationswortes das Paritätsbit Eins (Even-Parity).

Beispiel:

Empfang des Codewortes mit N Paritätsbits

Der Empfänger addiert die Bits des empfangenen Codewortes ebenfalls und überprüft, ob er denselben Code berechnet hat. N ist spezifisch für das jeweilige Datenübertragungsverfahren. Wenn N = 1, dann besteht der Parity-Check-Code aus genau einem Paritätsbit, bei N = 2 aus 2 Paritätsbit, etc.

Bei der asynchronen Datenübertragung über eine serielle RS232-Schnittstelle ist die Blockgröße gewöhnlich 8 Bit und N = 1. Sollte ein Bit verfälscht werden (eine Null in eine Eins oder eine Eins in eine Null), so ist die Paritätssumme des resultierenden Codewortes ungerade, und der Dekodierer erkennt, dass es zu einem Fehler gekommen ist. Es ist aber für den Dekodierer nicht möglich, den Fehler zu korrigieren, da nicht bekannt ist, welches Bit verfälscht wurde. Wurde jedoch mehr als ein Bit verfälscht, so ist es eventuell gar nicht möglich, den Fehler zu erkennen, da die Paritätssumme dann auch gerade sein kann. Man sagt: Der Paritätskontrollcode ist 1-fehlererkennend und 0-fehlerkorrigierend.

Anwendungsbereich

Paritätsbits finden u.a. in der DFÜ, Netzwerktechnik und bei Speichermodulen Verwendung.

Die ursprüngliche Form der ASCII-Zeichentabelle besteht aus 128 Zeichen, jedes Zeichen ist durch eine Folge von sieben Bits eindeutig festgelegt. Da ein Rechner acht Bits zu einem Byte zusammenfasst, wird dieses achte Bit gerne verwendet, um ein Paritätskontrollbit anzuhängen.

Gerade und ungerade Parität

Unterschieden wird zwischen zwei Paritätsprotokollen: even (gerade) und odd (ungerade). In beiden Fällen wird die Anzahl der Einsen innerhalb des zugeordneten Worts ermittlelt. Ist die Parität "even" (gerade) eingestellt, so wird das Paritätsbit gesetzt, falls eine ungerade Anzahl Datenbits im Zeichen gesetzt ist. Im Falle "odd" (ungerade) wird das Bit gesetzt, falls eine gerade Anzahl Datenbits innerhalb des Zeichens gesetzt ist. Mit "gerade" oder "ungerade" ist also die Anzahl gesetzter Datenbits inklusive des Paritätsbits gemeint.

Beispiel:
Im Beispiel soll eine ungerade ("Odd")Parität hergestellt werden:

"Wort" Paritätsbit
0100.1110 1 Da das "Wort" bereits 4 Einsen enthält + Parity und somit das Codewort ungerade ist
1011.0110 0 Da das "Wort" 5 Einsen enthält und durch das Paritätsbit ungerade bleibt
0100.0000 1 Das Codewort hat hier 2 Einsen obwohl die Anzahl ungerade sein sollte. Fehler


Ist das Paritätsbit immer 1, dann spricht man von einer Mark-Parität (enth. keine Information).

Siehe auch

Hash-Funktion, Kreuzsicherung

Weblinks

See also: Paritätsbit, ASCII, Asynchrone Datenübertragung, Bit, Byte, Datenfernübertragung, Error-correcting code, Fehlererkennung, Hamming-Abstand, Hash-Funktion