|
Bei der seriellen Übertragung von digitalen Daten wird über einen Datenkanal pro Zeiteinheit ein Bit (0 oder 1)
übertragen. Aufgrund verschiedener Störfaktoren muss damit gerechnet werden, dass ein Bit mit einer gewissen
Fehlerwahrscheinlichkeit falsch übertragen wird. Durch Hinzufügen von Redundanz versucht man solche Fehler in
der Übertragung nach Möglichkeit zu erkennen. Bei der folgenden Codierung handelt es sich um einen
sog. One-Error-Detecting-Code, d. h. einen Code, welcher erkennt, wenn von einem übertragenen Byte ( 8 Bits)
ein Bit falsch übertragen wurde:
Je 7 Bits werden durch ein sog. Prüfbit oder Parity Bit so ergänzt, dass die Anzahl der
übertragenen 1 gerade ist.
Beispiel: Die 7 Bits 1011011 werden durch das Prüfbit 1 ergänzt und das Byte 10110111
übertragen. Die 7 Bits 1011010 werden durch das Prüfbit 0 ergänzt und das Byte 10110100
übertragen. Wird nun eines der acht Bits falsch übertragen, ist die Anzahl der vorkommenden
1 nicht mehr gerade und man weiss aufgrund des Parity Checks, dass ein Übertragungsfehler
vorliegt. In diesem Fall kann die Übertragung der Daten nochmals erfolgen.
Dieser fehlererkennende Code hat aber Grenzen. Beispielsweise werden zwei falsch übertragene Bits in einem Byte
nicht erkannt und das Byte als richtig eingestuft. Für kleine Fehlerwahrscheinlichkeiten handelt es sich aber
durchwegs um einen effizienten Code. Im folgenden gehen wir von aus, ein Wert der für PTT-Leitungen
etc. realistisch ist.
- Mit welcher Wahrscheinlichkeit wird ein Byte richtig übertragen?
- Mit welcher Wahrscheinlichkeit werden 5 oder mehr Bits eines Bytes falsch übertragen?
- Der Parity Check sagt für ein übertragenes Byte “ok”. Mit welcher Wahrscheinlichkeit wurde das Byte
tatsächlich richtig übertragen?
- Wird bei der Übertragung eines Bytes ein Fehler bemerkt, muss das Byte nochmals übertragen werden.
Wieviele Male muss im Durchschnitt ein Byte übertragen werden, bis die Übertragung als fehlerfrei
deklariert wird?
|