Explorați Cărți electronice
Categorii
Explorați Cărți audio
Categorii
Explorați Reviste
Categorii
Explorați Documente
Categorii
Victor Moraru
Detectarea erorilor : principiu
EDC= Biti de Corectare si de Detectare a erorilor
D = Date “protejate” (date utile + antet)
• Nu e fiabil 100%!
• Protocoalele pot lasa erori nedetectate
• Un camp EDC mai mare fiabilitate sporita
Coduri systemice
Cod sistemic: mesajul este împărțit în
blocuri, fiecare bloc este însoțit de o
informație de control, calculată din câmpul
de date
1 bloc
M R
01101011101000 01101
Regula 1 :
Pentru a detecta p erori,
tebuie ca dmin > p
011 111
M R
0 0 0
001 101
1 1 1
000 100
Paritate
Bit de paritate: Paritate bi-dimensionala :
Detecteaza o singura Detecteza si corecteaza o singura erroare
eroare
Even = par
Odd = impar
0 0
Detectarea erorilor:
Cyclic Redundancy Check
Fie ansamblul de biti de date D ca un numar binar
Selectam un polinom generator G
scopul: sa adugam r biti CRC, R, pentru ca
ansamblul <D,R> sa fie divizibil cu G (modulo 2) fara de rest
Receptorul cunoaste G, divizeaza <D,R> la G. Daca restul = 0:
nu exista erori, in caz contrar sunt detectate erori
Detecteaza suite de errori pana la r+1 biti
Foarte utilizat in practica
Coduri polinomiale
Mesaj M = 1 1 0 0 1 1
= 1 x5 + 1 x4 + 0 x3 + 0 x2 + 1 x1 + 1 x0
= x5 + x4 + x + 1
Polynôm G = 1 0 0 1 = x3 + 1 4 biti
Numarul de biti de control: 4 - 1 =3
xr M = x8 + x7 + x 4 + x3
x8 + x7 + x4 + x3 x3 + 1
x8 + x5
x5 + x4 + x2 + 1
x7 + x5
x7 + x4
x5
x5 + x2
x3 + x2
x3 + 1
x2 +1 Rest = R = 1 0 1
bitii
de paritate (CRC)
Calcul CRC
110011000 1001
1001 110101
1011
1001
M R
1010 canal
1001 110011 101
1100
1001
101 Bitii CRC
CRC calculat de catre receptor
Calcul CRC in serie
CRC calculat
de catre
emitator
CRC
Proprietati CRC pe 16 bits
pe 2 biti
Numar par de biti
Serie
Numar
de pana
par de
la 17
bitibiti
Serie de 17 biti
Serie de 18 biti si mai mult
Exemple coduri polinomiale
Cod CCITT V41, polinom generator
G(x) = x16 + x12 + x5 + 1
utilizat in HDLC
Cod CRC 16, polinom generatorr
G(x) = x16 + x15 + x2 + 1
utilizare in procedura BSC, cu un codaj pe EBCDIC
Code CRC 12, polinom generator
G(x) = x12 + x11 + x3 + x2 + x + 1
utilizare in procedura BSC, cu un codaj pe 6 biti
Cod ARPA, polinom generator
G(x) = x24 + x23+ x17 + x16 + x15 + x13 + x11 + x10 + x9 + x8 + x5 + x3 + 1
Cod Ethernet, polinom generator
G(x) = x32+ x26+ x23+ x22+ x16+ x12+ x11+ x10+ x8+ x7+ x5+ x4+ x2+ x+1
Coduri CRC – exemplu
Coduri CRC – exemplu
Exercitii