Documente Academic
Documente Profesional
Documente Cultură
c x
n 1
i
ci x
i 0
c 0 c1 x c 2 x 2 ... c n 1 x n1 ,
(2.1)
sau, prescurtat:
c= (c0, c1, , cn-1).
(2.2)
Orice cuvnt al codului ciclic este deplasarea ciclic (cu o poziie) a unui alt cuvnt de cod.
De exemplu, (cn-1, c0, c1, , cn-2) este deplasarea ciclic (n dreapta) a vectorului (2.2). La nivel
de implementare o deplasare ciclic este uor asociat cu o deplasare ciclic ntr-un registru.
Codurile ciclice au proprietatea c dac v(x) este un cuvnt cu sens, atunci orice permutare
ciclic a simbolurilor sale este un cuvint cu sens.
De asemenea, cuvintele de cod snt privite ca elemente ale unei algebre lineare (+, )
modulo p(x)= xn+1. Cuvintele cu sens (n numr de 2k) snt elemente ale idealului generat de
polinomu ireductibil primitiv g(x) (numit polinom generator, divizor al polinomului p(x)) de grad
m:
v(x)= a(x) g(x),
iar cuvintele fr sens (n numr de 2n-2k) alctuiesc cele 2m clase de resturi modulo p(x).
Relaiile matriceale deduse n cazul codurilor grup rmn valabile, codurile ciclice fcnd
parte, de asemenea, din categoria codurilor lineare.
Codarea este operaiunea de determinare a polinomului simbolurilor de control c(x) n
funcie de polinomul simbolurilor de informaie a(x). Simbolurile de control introduc o
redundan care faciliteaz detecia i corecia erorilor.
1
x m a( x)
g ( x)
x m a( x)
.
g ( x)
p( x)
.
g ( x)
hk
...
hk
...
h1
0
...
...
...
hx
...
hk 1
...
...
...
h0
...
hk 1
...
h0
h0
...
h0
0
.
...
Codul Hamming ciclic este un cod perfect (n=2m-1), corector de o eroare (dmin=3) i
sistematic, adic are proprietatea ca simbolurile de informaie snt delimitate de simbolurile de
control i snt plasate succesiv la sfritul cuvntului de cod.
Decodarea este operaia invers codrii i const n gsirea unei corespondene ntre
cuvntul eronat recepionat v(x) i erorile introduse de canal e(x):
v / ( x ) v ( x ) e( x ).
v / ( x)
e( x )
rest
,
g ( x)
g ( x)
x m a ( x)
.
g ( x)
Codurile ciclice cu distana minim 3 pot fi utilizate fie pentru corecia erorilor singulare,
fie pentru detecia erorilor duble. n ambele cazuri, se prelucreaz valoarea corectorului,
folosindu-se diverse circuite pentru efectuarea codrii i a decodrii.
4.2.Codarea prin circute de divizare
Coderul este format dintr-un circuit de divizare cu celule de memorare pe 1 bit i
sumatoare modulo 2 interioare. Circuitul de divizare are conexiunile buclei de reacie realizate
conform coeficienilor polinomului generator g(x).
Schema bloc a codorului cu circuit de divizare prin g(x) este prezentat n figura 2.1
Pe durata primelor k tacte, comutatorul K este n poziia 1, astfel cei k bii de informaie de
1 MX
p0
p1
r0
p2
r1
pn-k
0/1
rn-k
2
1 M
X
za dispozitivOUT
deDETECTOR
DE ERORI
la intrare se gsesc n cuvntul de la ieire. Celulele codorului vor conine dup k tacte
simbolurile de control.
Dup terminarea introducerii simbolurilor de informaie, comutatorul K este trecut n
poziia 2 i coninutul celulelor este evacuat, completndu-se ultimii m bii din cuvntul de cod,
care reprezint simbolurile de control.
(7, 4) schema decoderului este prezentat n Figura 2.21. Circuitul D1 calculeaz restul r(x) de la
mprirea vectorului de intrare v(x) la polinomul p(x).
Restul de la mprire r(x) 0 se transcrie n registrul divizorului circuitului de corectare
D2. Poarta logic I din D2 are funcia de a genera 1 cnd registrul de deplasare tranziteaz n
starea potrivit. ntr-adevr, deoarece puterea elementului i al cmpului indic poziia j a erorii,
atunci, cnd eroarea va fi n celula i=0 a registrului de acumulare, divizorul din D2 va fi n starea
corespunztoare (v. Tabelul 2.5.). Cum semnalul log.1 apare la ieirea E a circuitului D2,
simbolul din poziia eronat va fi corectat i, totodat, acest semnal va reseta divizorul din D2.
V(x)- cuvintul-cheie
()- valoarea in registre
r(x)- restul
k=5, 6, 7, 8, 9, 10, 11, 12.
g(x)=1+x+x4;
g(x)=1+x3+x4;
g(x)=1+x2+x5;
g(x)=1+x3+x5;
Date initiale:
g ( x) 1 x x 3 1101;
x m a ( x)
x 3 (1 x 2 x 3 )
x 3 (1 x 2 x 3 )
g ( x)
1 x x3
x3 x5 x6
1001011
1 x x3
5. 0010000/1011=110
2. 0000010/1011=010
6. 0100000/1011=111
3. 0000100/1011=100
7. 1000000/1011=101
4. 0001000/1011=011
Fig. 5 Schema decoderul cu eroare i corectare. troducem eroare in cuvintul chee 1001011
8