odkrivanje napak

Post on 22-Jan-2016

54 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

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

TRANSCRIPT

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)

top related