Documente Academic
Documente Profesional
Documente Cultură
Noiuni generale
La modul general, pentru a descrie transformarea pe care codorul o realizeaz, se poate
utiliza un tabel de coresponden ntre intrarea i ieirea acestuia. Dac aceast transformare se
realizeaz conform unor reguli simple rezult avantaje privind elaborarea codurilor i operaia de
codare. De aceea prezint interes codurile cu verificarea paritii, dei aceast restricie conduce
la o diminuare a performanelor. Codorul pentru astfel de coduri primete la intrare un bloc de k
simboluri de informaie, calculeaz n sume modulo 2 cu diferite simboluri ale acestui bloc i,
eventual, cu ale altor blocuri anterioare, transfernd rezultatele celor n sume, reprezentnd
cuvntul de cod, la ieirea sa. Randamentul codului este k /n.
Pentru un cod cu controlul sistematic al paritii primele k simboluri transmise sunt
identice cu simbolurile de informaie. Celelalte n k simboluri sunt numite simboluri de control
sau de paritate. Se disting dou mari clase de coduri: coduri bloc i coduri convoluionale sau
recurente.
Pentru codurile bloc cele n k simboluri de control depind numai de cele k simboluri de
informaie ale blocului la care se ataeaz. Pentru codurile convoluionale cele n k simboluri de
control depind i de simboluri de informaie ce aparin unor blocuri anterioare. Lungimea de
constrngere l este numrul de blocuri verificate de simbolurile de control ataate unui bloc.
Codurile bloc pot fi asimilate unor coduri convoluionale cu lungimea de constrngere l =1.
n afara acestor coduri, a cror teorie a fost elaborat i sistematizat dup publicarea de
ctre Shannon a teoriei matematice a comunicaiilor, s-au utilizat i nc se utilizeaz coduri
foarte simple, detectoare de erori. Astfel, o metod foarte simpl de codare, frecvent utilizat,
const n a completa cuvintele de cod reprezentnd caracterele (n codul ASCII spre exemplu) cu
un bit suplimentar, numit bit de paritate. Acest bit este stabilit n aa fel nct numrul total de bi i
1 din fiecare cuvnt s fie par (sau impar). Codul astfel format detecteaz erorile care apar n
numr impar. Un exemplu este prezentat n figura 2.1.
A 1000001 1000001 0
C 1100001 1100001 1
9 1001110 1001110 0
generator g(x) al unui cod polinomial (n, k) se obine restul r(x) de grad cel mult nk1:
x n k d ( x) r ( x)
= q ( x) + (2.2)
g ( x) g ( x)
Aceast relaie arat c polinomul x nk d ( x) + r ( x ) este divizibil prin g(x), este de grad
mai mic dect n i, ca urmare, este un polinom de cod n codul generat de g(x). Mai mult, primele
k simboluri ale cuvntului sunt chiar simbolurile de date, n aceeai ordine, deci acest cuvnt este
cuvntul de cod corespunztor blocului de date d. Simbolurile de control sunt coeficienii restului
mpririi polinomului x nk d (x) prin polinomul generator g(x).
Operaia de decodare pentru detecia erorilor const n a mpri polinomul asociat
cuvntului recepionat la polinomul generator. Dac mprirea d rest nseamn c au intervenit
erori, dac nu d rest se consider c n-au intervenit erori (corespunztor capacitii de detecie a
codului).
O clas particular de coduri polinomiale o reprezint clasa codurilor ciclice. Un cod
ciclic este un cod bloc liniar la care orice permutare ciclic a unui cuvnt de cod este tot un
cuvnt de cod. Se arat c un cod ciclic este un cod polinomial al crui polinom generator este
divizor al lui x n + 1 .
Proprietile codurilor polinomiale privind detecia erorilor
1. Dac polinomul generator al unui cod polinomial are un numr par de termeni, codul va
detecta toate modelele de erori cu un numr impar de erori. Este evident c n aceste cazuri
polinomul eroare, dat de relaia c'(x)=c(x)+e(x), are un numr impar de termeni, prin urmare nu
este divizibil printr-un polinom cu un numr par de termeni i, n consecin, nici polinomul c'(x)
asociat cuvntului recepionat nu va fi divizibil prin polinomul generator g(x). Aceast proprietate
asigur capacitatea de a detecta jumtate din toate modelele posibile de erori.
2. Dac polinomul generator are cel puin doi termeni i nu-l divide pe x m + 1 (m<n)
codul corespunztor detecteaz toate erorile duble. Unei erori duble i corespunde polinomul
e( x) = x i + x j = x i (1 + x j i ) (cu i<j) i acest polinom nu se divide prin g(x) pentru c ji<n.
3. Codurile polinomiale (n, k) permit detectarea tuturor pachetelor de erori de lungime l
nk. Polinomul corespunztor unui pachet de erori de lungime l se poate scrie ca x i p (x) , unde
polinomul p(x) are gradul maxim l1<nk i nu este divizibil prin g(x), de grad nk.
Detectarea erorilor este mai simpl dect corectarea direct a lor, deoarece necesit doar
calculul corectorului, ceea ce, n cazul codurilor polinomiale, se reduce la mprirea a dou
polinoame. n plus, codurile polinomiale au o foarte bun capacitate de detecie a erorilor
independente i a erorilor n pachete i, pentru aceste motive, sunt foarte utilizate pentru a asigura
protecia datelor la erori.
tp tp - timp de propagare
tei tei - timp de emisie a cadrului de informaie
tr1 tr1 - timp de prelucrare a cadrului de informaie la
tec recepie i de schimbare a sensului de transmisiune
tp tec - timp de emisie a cadrului de confirmare
tr2 tr2 - timp de prelucrare a cadrului de confirmare i
de schimbare a sensului de transmisiune
Sunt dou variante de realizare a acestei strategii, numite (1) retransmitere implicit i (2)
cerere explicit. n retransmiterea implicit staia de destinaie transmite numai confirmri
pozitive (pentru cadrele recepionate fr erori). Faptul c, ntr-un anumit interval de timp, staia
surs nu primete confirmarea de recepie reprezint un indiciu c precedentul cadru n-a fost
recepionat corect i-l va retransmite. n cea de a doua variant staia de destinaie va transmite, n
cazul recepiei eronate a unui cadru, confirmare negativ pentru a solicita, explicit, retransmiterea
acelui cadru (figura 2.3).
Unul din criteriile de comparaie a diferitelor strategii de control al erorii este eficiena
(randamentul) utilizrii capacitii de transmisiune a legturii de date. Notnd cu D debitul
datelor n transmisiunea pe circuitul de date i cu De debitul efectiv al datelor corespunztor
protocolului de comunicaie utilizat pe legtura de date, reprezentat de numrul mediu de bii de
date transmii n unitatea de timp, innd seama de timpul de ateptare i de posibilele
retransmiteri ale cadrelor, randamentul protocolului este definit de relaia =De/D. Pentru
calculul randamentului se vor face urmtoarele ipoteze i notaii:
- erorile sunt independente i vor fi toate detectate la recepie;
- cadrele de confirmare nu sunt eronate (ipotez justificat de faptul c aceste cadre sunt
foarte scurte - posibil trei caractere);
- numrul de retransmiteri este nelimitat; n realitate numrul retransmiterilor aceluiai
cadru este limitat, dar este foarte puin probabil ca, ntr-o funcionare normal, s
apar necesitatea retransmiterii aceluiai cadru de un numr mare de ori;
- numrul biilor de informaie (date) dintr-un cadru este k, cel al biilor suplimentari,
necesitai de protocolul utilizat, este s, iar probabilitatea de eroare pe bit este pe.
Numrul total de bii ntr-un cadru fiind k+s, probabilitatea de recepie corect a unui
cadru este Pc = (1 pe ) k + s . Pentru a determina timpul mediu necesar pentru transmiterea i
recepia corect a unui cadru se ine seama de timpul cheltuit n fiecare din cazurile posibile i de
probabilitatea de realizare a cazului respectiv, aa cum se arat n tabelul urmtor.
Timpul mediu se calculeaz ca o medie ponderat:
iT (1 P )
i1
Tm = t c Pc = Tt / Pc (2.3)
i=1
1 Tt Pc
2 2Tt (1 Pc ) Pc
..... ..... .....
i iTt (1 Pc )i 1 Pc
(k+u) reprezentnd totalul biilor ce ar putea fi transmi i, cu debitul D, n intervalul Tt. Din (2.4)
rezult randamentul protocolului:
= De D = Pc k (k + u ) (2.5)
Deoarece probabilitatea de recepie corect a unui cadru Pc scade pe msur ce k, numrul biilor
de date din cadru, crete, exist o valoare optim a lui k pentru care randamentul este maxim.
Punnd condiia k = 0 rezult valoarea optim a lui k:
12
1 4u
ko = u 2 u ln(1 pe ) (2.6)
2 ln(1 pe )
Exemplu. Fie o legtur pe un circuit terestru cu o lungime de cca. 500 km, cu urmtorii
parametri: timpul de propagare tp = 2 ms, debitul D = 4800 b/s, tr1=tr2=100 ms, s=40 bii, tec=5
ms. Pentru pe=104 rezult ko=2760 bii, De=2625 b/s i =54%, iar pentru pe=105 rezult
ko=9740 bii, De=3930 b/s i =82% [MAC 87].
Staia
N+1
secundar
tp tec tp
strategie pentru controlul erorii, confirmrile de recepie pot fi incluse n cadrele de informaie
transmise n sens invers.
Exemplu. Fie o transmisie pe un circuit realizat prin intermediul unui satelit, cu un debit de 48
kb/s i un timp de propagare de 300 ms. Considernd c numrul biilor de informaie dintr-un
cadru este k =1000, cel al biilor suplimentari este s =40, iar cadrul de confirmare are 24 bii,
rezult t1=1040/48 ms= 21,7 ms, t2=2tp + tec = 600+24/48=600,5 ms i m 1+600,5/21,8.
Valoarea minim pentru m va fi 29.
2.4.1 Randamentul strategiei cu ntoarcere la N (Go-back-N)
n cazul primirii unei confirmri negative staia surs retransmite toate cadrele de
informaie ncepnd cu cel recepionat eronat. Pentru calculul randamentului se vor considera, la
fel ca la retransmiterea cu oprire i ateptare, situaiile posibile i probabilitile de realizare ale
acestora, menionate n tabelul ce urmeaz.
Numrul de transmiteri Timpul cheltuit Probabilitatea de
pentru recepia corect a realizare a acestei
cadrului situaii
1 t1 Pc
2 t1(1+m) (1 Pc ) Pc
..... ..... .....
i+1 t1(1+im) (1 Pc )i Pc
t P (1 P ) (im + 1) = t m(1 Pc )
Tm = 1 c c
i
1 + 1 (2.9)
i =0 Pc
1 t1 Pc
2 2t1 (1 Pc ) Pc
..... ..... .....
i it1 (1 Pc )i 1 Pc
it P (1 P )
i 1 t1
Tm = 1 c c = (2.12)
i =1 Pc
rezultnd debitul efectiv
kD
De = Pc (2.13)
k+s
i randamentul acestei strategii
k
= Pc (2.14)
k+s
Dup cum se poate observa, randamentul strategiei cu repetare selectiv nu depinde de debit i de
timpul de propagare.
Pentru circuite cu timp de propagare mic rezult m mic (circuitul terestru n tabel) i cele
dou strategii de retransmitere continu au performane apropiate deoarece, n cazul unei
confirmri negative, se retransmit puine cadre i n strategia cu ntoarcere la N (dou pentru
exemplul din tabel).