Beruflich Dokumente
Kultur Dokumente
Zavod za komunikacije
KOMUNIKACIJSKE MREE
Laboratorijske vjebe
Prezime i ime studenta, broj indeksa:
Datum:
(popunjava student)
(popunjava asistent)
Pregledano:
Izvor informacija generira ogranieni skup simbola. Niz takvih simbola predstavlja informaciju.
Postupkom kodiranja nastoji se izvornu informaciju pretvoriti u oblik pogodan za obradu i prijenos preko
komunikacijskog kanala. Takoer, kodiranjem se nastoji u to veoj mjeri neutralizirati djelovanje
smetnji na komunikacijskom kanalu. Zadaa pretvaraa je pripremiti izlaz iz kodera za prijenos medijem,
tj. pretvoriti primljene kodne rijei u niz analognih ili digitalnih simbola.
Kodiranje se (prema mjestu provoenja) moe podijeliti na dva osnovna tipa. To su:
kodiranje izvora: provodi se na izvoru informacije s ciljem smanjivanja koliine podataka koji e
se prenositi komunikacijskim kanalom (tj. izdvajanjem redundancije provodi se saimanje
podataka);
kodiranje kanala: provodi se prije prijenosa informacije preko komunikacijskog kanala i slui za
zatitu informacija od utjecaja smetnji koje se neizostavno javljaju u svakom realnom
komunikacijskom kanalu.
Postoji vie razliitih vrsta zatitnih kodova. Izbor odreene vrste zatitnog koda uvelike ovisi o vrsti
komunikacijskog kanala. Openito, zatitni kodovi mogu se svrstati u dvije skupine. Prvu skupinu ine
zatitni kodovi za otkrivanje pogreaka, dok u drugu spadaju kodovi za otkrivanje i ispravljanje
pogreaka.
Komunikacijske mree LV2 Sloj linka podataka (2013)
U praksi se ulazne informacije uvijek grupiraju u okvire nad kojima se potom provodi postupak
zatitnog kodiranja. Postupak upravljanja pogrekama (error control) obuhvaa mehanizme za otkrivanje
i ispravljanje pogreaka koje nastaju tijekom prijenosa podatkovnih okvira preko komunikacijskog
kanala. Kao rezultat djelovanja smetnji prilikom prijenosa mogu nastati dva karakteristina tipa pogreke:
izgubljeni okvir (lost frame) podatkovni okvir uope ne stie na odredite budui da se pod
utjecajem smetnji toliko izobliio da ga prijemnik na odreditu nije u stanju prepoznati kao
ispravan podatkovni okvir;
oteeni okvir (damaged frame) podatkovni okvir raspoznatljiv dolazi na odredite ali je na
nekim njegovim bitovima dolo do pogreke.
Postoje dvije osnovne skupine metoda za otkrivanje i ispravljanje pogreaka:
BEC (Backward Error Correction) otkrivanje pogreaka u prijemniku nakon ega slijedi
retransmisija pogreno primljenog podatkovnog okvira;
FEC (Forward Error Control) ispravljanje pogreaka u prijemniku.
FEC metoda podrazumijeva koritenje zatitnih kodova koji osim detekcije omoguavaju i
ispravljanje pogreaka. Iako FEC metoda bitno smanjuje broj retransmisija, BEC metoda se i dalje vrlo
esto koristi zbog jednostavnije i jeftinije implementacije.
Primjer:
Niz bitova 101011 bit e pomou binarnog polinoma prikazan na sljedei nain:
101011 1 x 5 + 0 x 4 + 1 x 3 + 0 x 2 + 1 x1 + 1 x 0 = x 5 + x 3 + x + 1
Pomou binarnog polinoma dobivenog iz niza informacijskih bitova P(x) i zadanog generatorskog
polinoma G(x) dobije se zatitni niz bitova (CRC) koji se pridruuje izvornom nizu informacijskih bitova
na predajnoj strani. Na prijemnoj strani se ponovno izraunava CRC koji mora odgovarati primljenoj
vrijednosti ukoliko nije dolo do pogreke. Postupak se odvija kroz nekoliko koraka:
1. Iz niza informacijskih bitova formira se binarni polinom P(x) koji reprezentira podatke.
2. Polinom P(x) mnoi se sa vrijednou xp gdje p predstavlja stupanj generatorskog polinoma.
3. Dobiveni umnoak P(x)*xp dijeli se sa generatorskim polinomom G(x) pri emu se dobije kolinik
Q(x) i ostatak R(x).
4. Dobiveni polinom ostatka R(x) predstavlja CRC, pa se onda polinom T(x) koji predstavlja podatak
za slanje dobije na sljedei nain: T(x) = P(x)*xp + R(x)
Napomena: sve operacije s polinomima provode se po modulo-2 aritmetici!
Primjer:
Izraunati CRC za sljedei niz informacijskih bitova: 1010010111 uz zadani generatorski
polinom G(x) = x4 + x2 + 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 + x 8 + x 6 + x 5 + x 4 ) ( x 4 + x 2 + x + 1) = x 9 + x 6 + x 5 + x 2
x13 + x11 + x 10 + x 9
x10 + x 9 + x 8 + x 6 + x 5 + x 4
x10 + x 8 + x 7 + x 6
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
4. T(x) = P(x) * xp + R(x) = x13 + x11 + x8 + x6 + x5 + x4 + x3 + x2
Dakle, niz bitova za slanje je: 1 0 1 0 0 1 0 1 1 1 1 1 0 0
Hammingov kod
Jedan od najee koritenih zatitnih kodova za otkrivanje i ispravljanje pogreaka je
Hammingov kod. Od izvora informacije uzima se k informacijskih bitova i dodaje im se m zatitnih
(paritetnih) bitova. Komunikacijskim kanalom prenose se blokovi od n=k+m simbola. Hammingovim
kodom (n,k) nazivaju se kodovi za koje vrijedi n=2m-1, k=2m-1-m (m=3,4,5,). Tako niz Hammingovih
kodova ine kodovi (7,4), (15,11), (31,26) Unutar bloka duljine n bita Hammingov kod moe ispraviti
jednostruku pogreku.
Komunikacijske mree LV2 Sloj linka podataka (2013)
Kod Hammingovog (7,4) koda na 4 informacijska bita dolaze 3 zatitna (paritetna) bita. Paritetni
bitovi u kodnim rijeima Hammingovog koda dolaze na mjesta koja su potencije broja 2 (dakle na 1., 2.
4., 8. itd.) Prema tome, u 7-bitnoj kodnoj rijei kod Hammingovog (7,4) koda prvi, drugi i etvrti bit su
zatitni bitovi (oznaimo ih sa C1, C2 i C4), dok su preostali bitovi informacijski (I3, I5, I6 i I7). Dakle, 7bitna kodna rije izgleda ovako: C1 C2 I3 C4 I5 I6 I7.
Paritetni bitovi odreuju se na sljedei nain:
C1 = I 3 I 5 I 7
C2 = I 3 I 6 I 7
C4 = I 5 I 6 I 7
gdje operacija predstavlja logiku operaciju XOR (iskljuivo ILI). Paritet je paran, to znai 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 = I 3 I 5 I 7 = 1 0 0 = 1
C2 = I 3 I 6 I 7 = 1 1 0 = 0
C4 = I 5 I 6 I 7 = 0 1 0 = 1
Prema tome, Hammingova kodna rije glasi: 1 0 1 1 0 1 0.
Na prijemnoj strani vri se provjera pariteta. Ukoliko je za neke od kontrolnih bitova paritet
naruen znai da je dolo do pogreke prilikom prijenosa. Kod Hammingovog koda (7,4) mogue je
ispravljanje jednostruke pogreke. Potrebno je odrediti za koje od kontrolnih suma (C1, C2, C4) je naruen
paritet i na temelju sljedee tablice mogue je odrediti lokaciju neispravnog bita:
C4
C2
X
X
X
X
X
X
C1
X
X
X
X
X
Neispravan bit
C1
C2
I3
C4
I5
I6
I7
Primjer:
Na prijemnoj strani primljena je sljedea kodna rije: 1 0 1 1 0 1 1. Provjeriti ispravnost
primljene rijei. Ukoliko je dolo do pogreke potrebno je ispraviti pogreku ako je to mogue.
Lako je utvrditi da je parni paritet naruen za sva tri kontrolna (paritetna) bita C1, C2, C4. Iz tablice
vidimo da to znai da je pogreka nastala na bitu I7. Dakle, poslana kodna rije glasila je: 1 0 1 1 0 1 0.
PRIPREMA ZA VJEBU
ZADACI
1. CIKLIKA PROVJERA ZALIHOSTI (CRC Cyclic Redundancy Check)
Pomou programa hammdec u Matlab-u dekodirati sljedee kodne rijei Hammingovog (7,4)
koda:
a) 0 0 1 1 0 0 1
b) 0 1 1 0 0 0 1
c) 0 1 0 1 0 1 0
d) 0 0 1 1 0 0 0
Na kojim bitovima je dolo do pogreke? Je li dekoder uspio ispraviti pogreku?
3. PRIJENOSNI MEDIJ
3.1. MODEL KANALA SA SMETNJOM
Konfiguracija modela sastoji se od izvora signala, kanala sa smetnjom i detektora pogreke. Svaki
element predstavljen je kroz blok u modelu. Izvor signala predstavlja Bernoulli-ev binarni generator
sekvenci sluajnih brojeva. Blok kanala predstavlja simulirani kanal sa doprinosom u smetnjama.
Uvedena je varijabla za pojavljivanje sluajnih pogreaka u opsegu 0 1 i obrnuto. Trei blok
predstavlja izraun pogreke s obzirom na poetnu poslanu vrijednost. Konfiguracijom izlaza kao port
sekvence na displeju je potrebno oitati stanja prema sljedeim zadacima:
3.2.
Slika 4. Simulacijski model kanala prijenosnog medija sa smetnjama koristei CRC enkoder i dekoder
Slika 5. Simulacijski model kanala prijenosnog medija sa smetnjama koristei Hammingov enkoder i
dekoder
ZAKLJUAK
Napisati vlastita zapaanja i zakljuke sa vjebe. U emu je bitna razlika izmeu CRC-a i
Hammingovog koda?