• Keine Ergebnisse gefunden

CRC Idee

N/A
N/A
Protected

Academic year: 2022

Aktie "CRC Idee"

Copied!
16
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

CRC Idee

1010010000 : 1101

(2)

n‐k Nullen an Datenblock D anhängen:

Bestimmen von FCS F:

Zu versendender Frame T:

Cyclic‐Redundancy‐Check (CRC)

1010001101

n‐Bit‐Frame T

k‐Bit‐Datenblock D (n‐k)‐Bit‐FCS F

01110 110101

(n‐k+1)‐Pattern P T ist immer durch P teilbar:

(3)

Auswirkung von Fehlern

Ein Fehler mit nicht teilbarem Fehler‐Pattern wird erkannt:

1010001101 01110

1000011101 01011

T

T

r

E

Sender

Empfänger

(4)

Darstellung von Datenblock und Pattern als Polynom:

Datenblock um n‐k Stellen (also hier 4 Stellen) verschieben:

Berechnung der FCS:

Darstellung des zu versendenden Frames T

CRC mit Polynomen

110011

k‐Bit Datenblock D

11001

(n‐k+1)‐Pattern P

(5)

Polynom‐Division Modulo 2

X

6

+ X

4

+ X

2

+ X

1

+ 1 : X

3

+ X

2

+ 1 =

(6)

00101

Auswirkung von Fehlern

10100

10001

T

T

r

E

Sender

Empfänger

Für Generator P(X) und T(X)/P(X) = Q(X) werden nicht teilbare Fehler‐Pattern erkannt:

(7)

Erkennbare und nicht erkennbare Fehler

Ein Fehler ist nicht erkennbar genau dann wenn:

Single‐Bitfehler ist immer erkennbar, wenn P(X) mindestens zwei Terme enthält

Bitfehler‐Burst < Anzahl Check‐Bits ist immer erkennbar, wenn P(X) den Term 1 enthält

(8)

Weitere CRC‐Fakten

Double‐Bitfehler immer erkennbar, wenn P(X) einen Faktor mit drei Termen  besitzt (ohne Beweis)

Ungeradzahlige Bitfehler immer erkennbar, solange P(X) einen Faktor (X+1)  enthält  (ohne Beweis)

Beliebte Polynome

CRC‐12 =  X

12

+ X

11

+ X

3

+ X

2

+ 1 CRC‐16 =  X

16

+ X

15

+ X

2

+ 1

CRC‐CCITT =  X

16

+ X

12

+ X

5

+ 1

CRC‐32 =  X

32

+ X

26

+ X

23

+ X

22

+ X

16

+ X

12

+ X

11

+ X

10

+ X

8

+ X

7

+ X

5

+ X

4

+ X

2

+ X + 1

(9)

Fehlerkorrektur

(10)

Ablauf der Fehlerkorrektur

(11)

Beispiel Two‐Dimensional‐Parity

0 1 0 1

1 1 1 0

0 1 1 0

1 0 0 1

(12)

Erkenn‐ und Korrigierbarkeit von Fehlern

0 1 0 1 0 1 1 1 0 1 0 1 1 0 0 1 0 0 1 0 0 1 0 0 1

0 1 0 1 0 1 1 1 0 1 0 1 1 0 0 1 0 0 1 0 0 1 0 0 1

Ein‐Bit‐Fehler immer korrigierbar

0 1 0 1 0 1 1 1 0 1 0 1 1 0 0 1 0 0 1 0 0 1 0 0 1

Zwei‐Bit‐Fehler nicht immer korrigierbar

0 1 0 1 0 1 1 1 0 1 0 1 1 0 0 1 0 0 1 0 0 1 0 0 1

Zwei‐Bit‐Fehler immer erkennbar Nicht‐erkennbarer Fehler

(13)

Hamming‐Distanz

Hamming‐Distanz d(v1, v2) zwischen zwei n‐Bit‐Sequenzen v1 und v2

Beispiel: vier 4‐Bit‐Sequenzen mit einer  paarweisen Hamming‐Distanz von 

mindestens 2

Wieviele Bit‐Fehler können erkannt  werden?

(14)

Allgemein:

Ablauf der Übertragung im Falle keiner Bitfehler

Block‐Codes

Datenblock Codewort 00 -> 00000 01 -> 00111 10 -> 11001 11 -> 11110

Erkennen von Bit‐Fehlern: Es sei Code = {b1,...,bk} und es werde b empfangen: 

Sender

Empfänger

f : Datenblock 

Codewort

(15)

Korrigieren von Bit‐Fehlern: Es sei Code = {b

1

,...,b

k

} und es werde b empfangen: 

Korrigieren von Bitfehlern

Empfangen        Nächstes gültiges CW       Daten Datenblock Codewort

00 -> 00000

01 -> 00111

10 -> 11001

11 -> 11110

(16)

Für k Daten‐Bits und n‐Bit Code‐Wörter gilt

Eindeutiges C‐Wort für jeden D‐Block, also

Benötigte Anzahl gültiger Code‐Wörter

Redundante Bits und Code‐Redundanz

Code‐Rate

Code‐Distanz für Code {b1,...,bk

Benötigtes Verhältnis zwischen k und r=n‐

k zum Korrigieren von allen 1‐Bit‐Fehlern?

Referenzen

ÄHNLICHE DOKUMENTE

Jede Teilaufgabe a)-j) gibt einen Punkt, wenn alle Kreuzchen richtig gesetzt sind, −1 falls nicht alle Kreuzchen richtig sind und 0 falls sie unbeantwortet bleibt.. [10 Punkte]

Er sezt sich ans Fenster, schaut hinaus und ruft alle zwei Minuten: «Das grüne nach oben!» Der Kellner fragt ihn besorgt, ob es ihm nicht gut gehe.. Darauf der Gärtner:

Die Idee von CRC-Codes. An

Ein Fehler ist nicht

Ein Fehler ist nicht

Ein Fehler ist nicht

Ein Fehler ist nicht

[r]