Professional Documents
Culture Documents
INFORMACIJSKIH TEHNOLOGIJA
Stručni studij, 4. semestar
Zaštitno kodiranje
UVOD
Na slici 1 prikazana je blok-shema jednostavnog komunikacijskog sustava. Njega čine izvor
informacija, predajnik, komunikacijski kanal (prijenosni medij), prijemnik i odredište
informacija.
Izvor informacija generira ograničeni skup simbola. Niz takvih simbola predstavlja
informaciju. Postupkom kodiranja nastoji se izvornu informaciju pretvoriti u oblik pogodan za
obradu i prijenos preko komunikacijskog kanala. Također, kodiranjem se nastoji u što većoj
mjeri neutralizirati djelovanje smetnji na komunikacijskom kanalu. Zadaća pretvarača je
pripremiti izlaz iz kodera za prijenos medijem, tj. pretvoriti primljene kodne riječi u niz
analognih ili digitalnih simbola.
Kodiranje se (prema mjestu provođenja) može podijeliti na dva osnovna tipa. To su:
• kodiranje izvora: provodi se na izvoru informacije s ciljem smanjivanja količine
podataka koji će se prenositi komunikacijskim kanalom (tj. izdvajanjem redundancije
provodi se sažimanje podataka);
• kodiranje kanala: provodi se prije prijenosa informacije preko komunikacijskog
kanala i služi za zaštitu informacija od utjecaja smetnji koje se neizostavno javljaju u
svakom realnom komunikacijskom kanalu.
Postoji više različitih vrsta zaštitnih kodova. Izbor određene vrste zaštitnog koda uvelike
ovisi o vrsti komunikacijskog kanala. Općenito, zaštitni kodovi mogu se svrstati u dvije
skupine. Prvu skupinu čine zaštitni kodovi za otkrivanje pogrešaka, dok u drugu spadaju kodovi
za otkrivanje i ispravljanje pogrešaka.
U praksi se ulazne informacije uvijek grupiraju u okvire nad kojima se potom provodi
postupak zaštitnog kodiranja. Postupak upravljanja pogreškama (error control) obuhvaća
mehanizme za otkrivanje i ispravljanje pogrešaka koje nastaju tijekom prijenosa podatkovnih
okvira preko komunikacijskog kanala. Kao rezultat djelovanja smetnji prilikom prijenosa mogu
nastati dva karakteristična tipa pogreške:
• izgubljeni okvir (lost frame) – podatkovni okvir uopće ne stiže na odredište budući
da se pod utjecajem smetnji toliko izobličio da ga prijemnik na odredištu nije u
stanju prepoznati kao ispravan podatkovni okvir;
• oštećeni okvir (damaged frame) – podatkovni okvir raspoznatljiv dolazi na
odredište ali je na nekim njegovim bitovima došlo do pogreške.
FEC metoda podrazumijeva korištenje zaštitnih kodova koji osim detekcije omogućavaju i
ispravljanje pogrešaka. Iako FEC metoda bitno smanjuje broj retransmisija, BEC metoda se i
dalje vrlo često koristi zbog jednostavnije i jeftinije implementacije.
Ciklička provjera zalihosti (CRC, Cyclic Redundancy Check) predstavlja jednu od najčešćih
metoda za detekciju pogrešaka kod prijenosa podataka. Ova metoda postala je vrlo popularna
zbog vrlo dobre sposobnosti detekcije pogreške, jednostavne implementacije i relativno kratke
zaštitne sekvence koja se dodaje informacijskim bitovima.
Kod primjene CRC zaštitne metode svi nizovi bitova tretiraju se kao binarni polinomi. To su
polinomi čiji koeficijenti mogu biti 0 ili 1. Ukoliko niz bitova ima duljinu k, pripadajući
polinom bit će stupnja k-1. Pri tome će krajnji desni bit iz niza predstavljati najniži stupanj u
polinomu (nulti stupanj).
Primjer:
Niz bitova „101011“ bit će pomoću binarnog polinoma prikazan na sljedeći način:
101011≡1⋅ x5 + 0⋅ x4 +1⋅ x3 + 0⋅ x2 +1⋅ x1 +1⋅ x0 = x5 + x3 + x +1
1. P(x) = x9 + x7 + x4 + x2 + x + 1
2. P(x) * x4 = x13 + x11 + x8 + x6 + x5 + x4
3. ( P(x) * x4 ) : G(x)=
(x13 + x11 + x8 + x6 + x5 + x4) ÷(x4 + x2 + x +1) = x9 + x6 + x5 + x2
x13 + x11 + x10 + x9
x10 + x9 + x8 + x6 + x5 + x4
x10 + x8 + x7 + x6
x9 + x7 + x5 + x4
x9 + x7 + x6 + x5
x6 + x4
x6 + x4 + x3 + x2
x3 + x2
Q(x) = x9 + x6 + x5 + x2
R(x) = x3 + x2 CRC
Hammingov kod
Kod Hammingovog (7,4) koda na 4 informacijska bita dolaze 3 zaštitna (paritetna) bita.
Paritetni bitovi u kodnim riječima Hammingovog koda dolaze na mjesta koja su potencije broja
2 (dakle na 1., 2.
4., 8. itd.) Prema tome, u 7-bitnoj kodnoj riječi kod Hammingovog (7,4) koda prvi, drugi i
četvrti bit su zaštitni bitovi (označimo ih sa C1, C2 i C4), dok su preostali bitovi informacijski
(I3, I5, I6 i I7). Dakle, 7-bitna kodna riječ izgleda ovako: C1 C2 I3 C4 I5 I6 I7.
Paritetni bitovi određuju se na sljedeći način:
C1 = I3 ⊕ I5 ⊕ I7
C2 = I3 ⊕ I6 ⊕ I7
C4 = I5 ⊕ I6 ⊕ I7
gdje operacija ⊕ predstavlja logičku operaciju XOR (isključivo ILI). Paritet je paran, to znači
da u nizu koji tvore paritetni bit i informacijski bitovi koje on štiti mora biti paran broj
jedinica.
Primjer: Odrediti kodnu riječ Hammingovog (7,4) koda za niz informacijskih bitova „1 0 1 0“
I3 =1 I5 = 0 I6 =1 I7 = 0
C1 = I3 ⊕ I5 ⊕ I7 =1⊕ 0⊕ 0 = 1
C2 = I3 ⊕ I6 ⊕ I7 =1⊕ 1⊕ 0 = 0
C4 = I5 ⊕ I6 ⊕ I7 = 0⊕ 1⊕ 0 = 1
Na prijemnoj strani vrši se provjera pariteta. Ukoliko je za neke od kontrolnih bitova paritet
narušen znači da je došlo do pogreške prilikom prijenosa. Kod Hammingovog koda (7,4)
moguće je ispravljanje jednostruke pogreške. Potrebno je odrediti za koje od kontrolnih suma
(C1, C2, C4) je narušen paritet i na temelju sljedeće tablice moguće je odrediti lokaciju
neispravnog bita:
C4 C2 C1 Neispravan bit
X C1
X C2
X X I3
X C4
X X I5
X X I6
X X X I7
C1 ⊕I3 ⊕ I5 ⊕ I7 = 0
C2 ⊕I3 ⊕ I6 ⊕ I7 = 0
C4 ⊕I5 ⊕ I6 ⊕ I7 = 0
C1 ⊕I3 ⊕ I5 ⊕ I7 = 0
C2 ⊕I3 ⊕ I6 ⊕ I7 = 0
C4 ⊕I5 ⊕ I6 ⊕ I7 = 1
Dobili smo binarno 1 0 0, u dekadskom brojevnom sustavu 4, što znači da je pogreška nastala na 4.
bitu, a to je C4.
PRIPREMA ZA VJEŽBU
a) „1110“
b) „1001“
NAPOMENA:
1. U MATLAB-u postaviti radni direktorij - mjesto gdje su kopirane datoteke
iz priloga.
2. Format unosa podataka je, primjerice: [1 0 1 1 1 1]
ZAKLJUČAK: