Top Banner
http://vision.fe.uni-lj.si Komunikacije v avtomatiki Ciklično kodiranje - CRC Stanislav Kovačič Univerza v Ljubljani Fakulteta za elektrotehniko 2007/08
15

Odkrivanje napak

Jan 22, 2016

Download

Documents

Hachi

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
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Odkrivanje napak

http://vision.fe.uni-lj.si

Komunikacije v avtomatikiCiklično kodiranje - CRC

Stanislav Kovačič

Univerza v Ljubljani

Fakulteta za elektrotehniko

2007/08

Page 2: Odkrivanje napak

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)

Page 3: Odkrivanje napak

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

Page 4: Odkrivanje napak

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

Page 5: Odkrivanje napak

Ciklično kodiranjeCiklično kodiranje

Začetek Konec101110010101010101010101011111001010 00........0

Page 6: Odkrivanje napak

Zagotavljanje deljivostiZagotavljanje deljivosti

Deljivo

brez

ostanka

Page 7: Odkrivanje napak

CRC, primerCRC, primer

Page 8: Odkrivanje napak

CRC, primerCRC, primer

Začetek Konec1 1 0 1 0 1 1 0 1 1 1 1 1 0

Page 9: Odkrivanje napak

Preverjanje deljivostiPreverjanje deljivosti

Začetek Konec101110010101010101010101011111001010 101.....01

Page 10: Odkrivanje napak

CRC, nekateri “dobri” polinomiCRC, nekateri “dobri” polinomi

Page 11: Odkrivanje napak

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

Page 12: Odkrivanje napak

CRC s tabelo ostankov 2/5CRC s tabelo ostankov 2/5

Page 13: Odkrivanje napak

R

CRC s tabelo 3/5CRC s tabelo 3/5

Page 14: Odkrivanje napak

CRC s tabelo 4/5CRC s tabelo 4/5

Page 15: Odkrivanje napak

CRC tabela (5/5)CRC tabela (5/5)