Fehlererkennung

Die einfachste Art der Fehlererkennung wird durch das Hinzufügen eines zusätzlichen Bits realisiert, dem Prüfbit. Es wird auch Parity Bit genannt. Es gibt zwei Varianten dieses Verfahrens. Bei Even Parity wird der Wert dieses Bits für jeden Block so gewählt, dass die Anzahl der auf $\num{1}$ gesetzten Bits immer gerade ist. Bei Odd Parity hingegen muss die Anzahl immer ungerade sein. Sender und Empfänger müssen sich vor der Übertragung einig sein, welche der beiden Varianten verwendet wird.

Nehmen wir an, wir wollen folgendes Byte mit Even Parity übertragen:

Dieser Alt-Text wurde noch nicht überprüft.

Kurz-Zusammenfassung: Eine horizontale Reihe aus acht schwarz umrandeten Kästchen mit den Ziffern 1 und 0.

Detailbeschreibung: Die Kästchen sind gleich groß, weiß hinterlegt und jeweils mit einer schwarzen Serifenziffer beschriftet. Von links nach rechts stehen die Ziffern: „1, 1, 0, 0, 1, 0, 1, 1“. Zwischen den Kästchen verlaufen schmale schwarze Trennlinien; es gibt keine weiteren Beschriftungen, Achsen oder Symbole.
Abbildung EA-12.18.1: Ein Byte

Wir zählen 5 Einsen, also eine ungerade Anzahl. Das Prüfbit muss demnach auf $\num{1}$ gesetzt werden, damit eine gerade Anzahl an Einsen herauskommt:

Dieser Alt-Text wurde noch nicht überprüft.

Zusammenfassung: Neun nebeneinander angeordnete Kästchen mit den Ziffern 1 und 0, wobei das rechte äußere Kästchen grau hinterlegt ist.

Detaillierte Beschreibung: Eine horizontale Reihe aus neun gleich großen, schwarz umrandeten Quadraten; in jedem steht mittig eine Ziffer. Von links nach rechts lauten die Ziffern: 1, 1, 0, 0, 1, 0, 1, 1, 1. Die ersten acht Felder sind weiß, das neunte (rechts außen) ist hellgrau gefüllt. Es gibt keine Achsen, keine weiteren Beschriftungen oder Symbole.
Abbildung EA-12.18.2: Das Byte mit Even Parity Bit

Wenn nun ein Übertragungsfehler ein Bit verändert (von $\num{1}$ zu $\num{0}$ oder umgekehrt), dann wird die Anzahl der Einsen ungerade. Der Empfänger erkennt daran, dass ein Fehler vorliegt.

Ein weiteres Beispiel folgt hier:

Dieser Alt-Text wurde noch nicht überprüft.

1) Kurze Zusammenfassung: Eine horizontale Reihe aus neun umrandeten Quadraten mit den Ziffern 0 und 1; das rechte Endfeld ist grau hinterlegt.

2) Detaillierte Beschreibung: Von links nach rechts sind neun gleich große, schwarz umrandete Kästchen zu sehen. In den ersten acht, weiß hinterlegten Kästchen stehen in schwarzer Schrift die Ziffern: 0, 0, 1, 0, 1, 0, 1, 1. Das neunte Kästchen am rechten Rand ist hellgrau hinterlegt und zeigt die schwarze Ziffer 0. Weitere Beschriftungen, Achsen oder Symbole sind nicht vorhanden.
Abbildung EA-12.18.3: Byte mit Even Parity

Im ursprünglichen Byte zählen wir 4 Einsen, was einer geraden Anzahl entspricht. Deshalb müssen wir als Prüfbit eine $\num{0}$ einfügen.

Dieses Verfahren stößt schnell an seine Grenzen, nämlich dann, wenn mehr als ein Fehler bei der Übertragung passiert. Werden bei der Übertragung zwei Bits verändert, so bleibt die Anzahl der Einsen gerade. Der Empfänger kann nicht mehr erkennen, dass Fehler aufgetreten sind. Treten bei der Übertragung drei Fehler auf, so entsteht wieder eine ungerade Anzahl von Einsen und der Empfänger erkennt die Fehler.

Odd Parity funktioniert im Prinzip genauso, mit einem einzigen Unterschied: Die Anzahl der Einsen muss nicht gerade, sondern immer ungerade sein. Für Odd Parity gilt genauso wie für Even Parity, dass nur eine ungerade Anzahl falsch übertragener Bits erkannt wird. Eine fehlerfreie Übertragung kann hingegen nicht von einer geraden Anzahl an Fehlern unterschieden werden.

AE411: Eine digitale Übertragung wird durch ein einzelnes Prüfbit (Parity Bit) abgesichert. Der Empfänger stellt bei der Paritätsprüfung einen Übertragungsfehler fest. Wie viele Bits einschließlich des Prüfbits wurden fehlerhaft übertragen?
AE412: Eine digitale Übertragung wird durch ein einzelnes Prüfbit (Parity Bit) abgesichert. Der Empfänger stellt bei der Paritätsprüfung keinen Übertragungsfehler fest. Was sagt dies über die Fehlerfreiheit der übertragenen Nutzdaten und des Prüfbits aus?

Um Mehrbitfehler zu erkennen, kann man weitere Prüfbits hinzufügen. Dies funktioniert sehr gut bei Nachrichten mit einer festen Länge. Ist die Länge der Daten variabel, verwendet man oft spezielle Prüfsummenverfahren wie die zyklische Redundanzprüfung (CRC), welche Fehler bis auf eine gewisse Restwahrscheinlichkeit erkennen. Ähnliche Verfahren sind auch im Alltag anzutreffen, beispielsweise bei Ausweisnummern oder der IBAN.

AE410: Was wird unter zyklischer Redundanzprüfung (CRC) verstanden?

Weiter zum nächsten Abschnitt: Fehlerkorrektur