Upload
hachi
View
54
Download
0
Embed Size (px)
DESCRIPTION
Kontrolna vsota. Vsebina okvirja. Začetek. Konec. Odkrivanje napak. Oddajnik vsebini okvirja po določenem pravilu doda “kontrolno vsoto” Okvir pošlje v komunikacijski kanal Med prenosom lahko pride do napake na okvirju Sprejemnik preveri, če kontrolna vsota ustreza danemu pravilu - PowerPoint PPT Presentation
Citation preview
http://vision.fe.uni-lj.si
Komunikacije v avtomatikiCiklično kodiranje - CRC
Stanislav Kovačič
Univerza v Ljubljani
Fakulteta za elektrotehniko
2007/08
Odkrivanje napakOdkrivanje napak
Začetek KonecVsebina okvirja Kontrolna vsota
• Oddajnik vsebini okvirja po določenem pravilu doda “kontrolno vsoto”• Okvir pošlje v komunikacijski kanal• Med prenosom lahko pride do napake na okvirju• Sprejemnik preveri, če kontrolna vsota ustreza danemu pravilu• V primeru, da kontrolna vsota ne ustreza pravilu,
javi napako, zahteva ponovitev istega okvirja, zavrže okvir
Kontrolna vsota:• Največkrat t.i. vzdolžno preverjanje parnosti
(LRC – Longitudinal Redundancy ckeck)• Ciklično preverjanje• (CRC – Cyclic Redundancy Check)
Vzdolžno preverjanje parnostiVzdolžno preverjanje parnosti
Začetek KonecVsebina okvirja LRC
• Imamo vsebino okvirja – niz bajtov: B0, B1, B2, .... , Bk, .... BK
• Oddajnik izračuna kontrolno vsoto• B0 + B1 + B2 + .... + Bk + .... + BK + LRC = 0 (seštevanje po modulu 2)
LRC je potemtakem dodatni bajt (tipično eden ali dva bajta)• Sprejemnik preveri pogoj “parnosti”
0: ni napake (ali ni odkrita)
• B0 + B1 + B2 + .... + Bk + .... BK + LRC = ≠0: odkrita napaka
Ciklično preverjanjeCiklično preverjanje
Začetek KonecVsebina okvirja CRC
• Imamo vsebino okvirja – niz podatkov: B0, B1, B2, .... , Bk, .... BK
• Oddajnik deli niz podatkov z delilnim zaporedjem – “generatorjem” G• (B0 B1 B2 .... Bk .... BK ) : G = Rezultat deljenja Q + Ostanek R• Ostanek “pripnemo” deljencu:
B0 B1 B2 .... Bk .... BK R• Sprejemnik preveri pogoj “deljivosti”
B0 B1 B2 .... Bk .... BK R) : G = Rezultat deljenja Q’+ Ostanek R’
0: ni napake (ali ni odkrita)• R’ =
≠0: odkrita napaka
Ciklično kodiranjeCiklično kodiranje
Začetek Konec101110010101010101010101011111001010 00........0
Zagotavljanje deljivostiZagotavljanje deljivosti
Deljivo
brez
ostanka
CRC, primerCRC, primer
CRC, primerCRC, primer
Začetek Konec1 1 0 1 0 1 1 0 1 1 1 1 1 0
Preverjanje deljivostiPreverjanje deljivosti
Začetek Konec101110010101010101010101011111001010 101.....01
CRC, nekateri “dobri” polinomiCRC, nekateri “dobri” polinomi
CRC s tabelo ostankov 1/5CRC s tabelo ostankov 1/5
Z K
Zamisel:
Dodajamo bajt za bajtom in delimo, vsakič dobimo rezultat deljenja in ostanek
Vprašanje:
Ko dodamo naslednji bajt, ali se da zgolj iz dodanega bajta in tekočega ostanka
izračunati nov ostanek?
B0
Del vsebine okvirja: P(x)
P’(x) = P(x) . x8 + B(x) B(x)
B1 B2 .... .... .... .... B
CRC s tabelo ostankov 2/5CRC s tabelo ostankov 2/5
R
CRC s tabelo 3/5CRC s tabelo 3/5
CRC s tabelo 4/5CRC s tabelo 4/5
CRC tabela (5/5)CRC tabela (5/5)