Coduri de Linie
Coduri de Linie
Coduri de Linie
CAPITOLUL II
CODURI DE LINIE
II.1 Introducere
Pentru transmisie se foloseşte cel mai adesea forma de undă rectangulară a impulsului s(t) de
amplitudine A şi durată T, durata fiind cunoscută ca interval de bit. Avantajul principal al impulsului
rectangular este uşurinţa de generare la viteze ridicate, folosind dispozitive ce lucrează în comutaţie.
În telecomunicaţii se specifică puterea livrată de un semnal unui rezistor cu valoarea de 1 ohm prin
u2 , pătratul tensiunii semnalului. Evident,
P =U2 / R (2.1)
2
şi pentru R = 1 ohm, rezultă P = U . Energia de bit este definită ca
E b = A2 ⋅ T (2.2)
Informaţia ce urmează a fi transmisă, denumită pe scurt date se notează cu {ak},
{ak} = {…, a-2, a-1, a0, a1, a2, a3, …, ak, …}, ak ε {0, 1}
simbolurile ak sunt binare şi iau valorile 0 şi 1.
În transmisie lor li se asociază fie valorile 0 şi A, variantă denumită simplu curent sau unipolară, fie
valorile -A and +A , variantă denumită dublu curent sau polară. Varianta polară este cunoscută şi sub
denumirea de antipodală deoarece foloseşte valori în opoziţie (+A şi -A sau +1 şi -1).
23
Capitolul II
+∞
x(t ) = ∑ a k s(t − kT ) (2.3)
−∞
Procesul de emisie este ilustrat in Fig. 2.1 unde se evidenţiază prezenţa impulsurilor rectangulare
emise la momente de timp multiplu de T.
Relaţia (2.3) mai poate fi scrisă ca
+∞
x (t ) = s (t ) * ∑ a k δ (t − kT ) (2.4)
−∞
24
CODURI DE LINIE
Necesitatea de a putea extrage din spectrul semnalului de date frecvenţa de bit folosită în receptor
pentru detecţia informaţiei a condus de asemenea la înlocuirea pentru transmisie a codului NRZ-L cu
alte coduri, denumite coduri de linie sau coduri de modulaţie. Acestea trebuie să satisfacă, parţial sau
în totalitate, următoarele condiţii
Componentă de c.c. nulă, pentru a nu încărca inutil linia şi repetoarele;
Valoare mică a variaţiei sumei digitale (DSV) pentru atenuarea componentelor de joasă
frecvenţă;
Să fie de tip RLL (lungime de fugă limitată) pentru o sincronizare fără probleme;
Să prezinte un număr suficient de tranziţii pe durata simbolurilor de ieşire pentru uşurarea
sincronizării de tact;
Să poată fi folosite în reţele tip inel sau de alte tipuri;
Să asigure o propagare limitată a erorilor;
Să permitonitorizarea şi detecţia unor tipuri de erori;
Să prezinte complexitate şi eficienţă rezonabile;
Să poată fi implementat cu circuite simple, fiabile şi la un preţ de cost redus.
Să prezinte nuluri spectrale la anumite frecvenţe
Câteva coduri binare, de interes larg, folosite în sistemele moderne de telecomunicaţii sunt
prezentate în continuare şi sunt ilustrate în figura 2.4.
II.1.1 Codul RZ
În codarea RZ (Return to Zero) bitul 1 este reprezentat prin HL (nivelul logic H pe prima jumătate a
intervalului de bit şi nivelul logic L pe cea de a doua jumătate) iar bitul 0 este reprezentat prin nivelul
logic L pe tot intervalul de bit. Această reprezentare dezechilibrată, cu valoarea medie a semnalului
diferită de zero pentru o transmisie echiprobabilă conduce la crearea în spectrul semnalului de
componente discrete (linii) pe armonicele frecvenţei de bit. În acest caz se poate extrage semnalul de
tact necesar la recepţie cu un circuit PLL calat pe frecvenţa de bit.
În codarea NRZ_M (Non Return to Zero - Mark) bitul 1 este reprezentat alternativ prin nivelele
logice H şi L iar bitul 0 este reprezentat prin nivelul logic utilizat pentru reprezentarea ultimului bit 1,
sau cu alte cuvinte bitul 1 este reprezentat printr-o tranziţie la începutul sau mijlocul intervalului de bit
iat bitul 0 prin absenţa tranziţiei.
Această codare diferenţială sau prin tranziţii rezolvă problema ambiguităţii de fază care poate apare
prin inversarea firelor unei linii de transmisie, ceea ce conduce la obţinerea informaţiei negate, în cazul
utilizării codului NRZ-L. Aceeaşi situaţie apare la transmisiile de tip MA cu purtătoare suprimată,
inclusiv PSK, unde sincronizarea se face pe un multiplu al frecvenţei purtătoare. În codarea NRZ_S
(Non Return to Zero - Space), accepţia este inversă, biţii 1 şi 0 schimbându-şi rolurile.
25
Capitolul II
Codarea bifazică M provine din asocirea codării bifazice L cu o precodare NRZ-S. Astfel, bitul 1
este reprezentat prin elementele HL şi LH iar bitul 0 este reprezentat alternativ prin nivelele logice L şi
H . În codarea bifazică S convenţia este inversă.
În codarea CMI (Coded Mark Inversion) bitul 1 este reprezentat alternativ prin nivelele logice L şi
H iar bitul 0 este reprezentat prin elementele LH. Această codare asigură prezenţa unei componente
discrete pe frecvenţa de bit în spectrul semnalului, facilitând procesul de sincronizare.
În codarea Miller sau DM (Delay Modulation) bitul 1 este reprezentat alternativ prin elementele HL
şi LH iar bitul 0 este reprezentat ca absenţa unei tranziţii, repetând ultimul nivel logic din
reprezentarea bitului 1 anterior, dacă apare ca zero unic, între doi biţi 1. Pentru mai mulţi biţi zero suc-
cesivi, toate zerourile, cu excepţia ultimului sunt codate printr-o tranziţie la sfârşitul intervalului de bit.
Codarea Miller provine dintr-un precodor bifazic L urmat de un bistabil tip T care înjumătăţeşte
tranziţiile semnalului bifazic. Prezenţa
bistabilului tip T, care în general se
foloseşte pentru divizarea cu 2 a
frecvenţei, determină o micşorarea a
lăţimii spectrului semnalului codat şi
deplasarea componentelor spectrale spre
frecvenţe joase.
În figura 2.4 sunt exemplificate toate
aceste tipuri de coduri de linie. În figura
2.5 sunt ilustrate spectrele de putere ale
codurilor NRZ-L, RZ, Bifazic L, CMI şi
Miller pentru cazul echiprobabil. În figura
Figura 2.6 Factori de codare C(f)
2.6 sunt reprezentaţi factorii de codare C(f)
pentru aceste coduri, tot în cazul echiprobabil p =0.5, p reprezentând aici probabilitatea de apariţie a
unui bit 1.
Să considerăm cazul unei transmisii polare, reprezentată în figura 2.7 şi că linia a fost ruptă, iar
conexiunea a fost restabilită, dar nu în forma originală, conductoarele liniei fiind inversate între ele.
27
Capitolul II
În cazul reprezentării informaţiei prin nivele codare NRZ-L situaţia descrisă mai sus conduce la
obţinerea informaţiei negate (bitul 0 devine 1 şi invers). O situaţie similară apare la transmisiile cu
modulare-demodulare cu purtătoare suprimată, denumită problema ambiguităţii de fază.
Pentru a rezolva aceste probleme se foloseşte codarea diferenţială (NRZ-M sau S) sau prin tranziţii.
În codarea diferenţială NRZ-M (Non-Return-to-Zero Mark) un bit 1 este reprezentat de o tranziţie
(nivel opus celui transmis în intervalul de bit anterior) iar un bit 0 este codat prin absenţa tranziţiei
(acelaşi nivel cu cel transmis în intervalul de bit anterior). În codarea NRZ-S (Non-Return-to-Zero
Space) convenţia este inversă. Formele de undă asociate sunt prezentate în figura 2.8.
Se observă existenţa a două forme de undă posibile a şi b (b este forma de undă a negată logic)
pentru semnalele codate NRZ-M sau S. Semnalul codat NRZ-M yk poate fi scris ca
y k = x k ⊕ y k −1 (2.7)
unde xk reprezintă semnalul codat NRZ-L iar ⊕ operaţia logică SAU EXCLUSIV (sumare modulo-2).
Dacă xk = 0 → y k = y k −1 şi nu apare tranziţie, în timp ce pentru
xk = 1, → yk = yk −1 şi există tranziţie. Coderul diferenţial sau NRZ-M este
reprezentat în figura 2.9a.
Pentru decodarea unui semnal codat NRZ-M ec. (2.7) poate fi rescrisă ca
y k ⊕ y k −1 = xk ⊕ y k −1 ⊕ y k −1
sau x k = y k ⊕ y k −1 (2.8)
ţinând cont că y k −1 ⊕ y k −1 = 0 . Decodorul diferenţial este reprezentat în figura 2.9b.
Un codor NRZ-M este prezentat în figura 2.10. În acest caz tranziţia apare pe mijlocul intervalului
de bit, adică se produce o întârziere cu T/2 a semnalului codat faţă de situaţia prezentată în figura 2.4,
iar codul este cunoscut sub denumirea de NRZI (Non-Return-to-Zero Inverted).
28
CODURI DE LINIE
Dacă semnalul x(t) este un semnal de energie şi poate lua valori complexe,
+∞
R (τ ) = ∫ x(t ) x (t − τ )dt
∗
−∞
prin * înţelegând conjugata complexă. Timpul de întârziere τ are rolul de parametru de baleiaj iar
timpul fizic t este o variabilă de integrare ce dispare în procesul de integrare. Funcţia AKF e scrisă ca
+∞
R (τ ) = ∫ x(t + τ ) x
∗
(t )dt (2.10)
−∞
Ecuaţiile (2.9) şi (2.10) integrează produsul lui x(t) cu o replică a sa decalată, fie întârziată cu τ şi
notată cu x(t - τ) sau în avans cu τ şi notată cu x(t + τ) . Dacă semnalul x(t) ia valori complexe, funcţia
AKF rezultantă este şi ea cu valori complexe. Pe baza celor două relaţii de mai sus rezultă că funcţia
AKF va prezenta simetrie de tipul:
R (τ ) = R ∗ (−τ ) (2.11)
partea reală a lui R(τ) având simetrie pară iar cea imaginară prezentând simetrie impară. Funcţia AKF
va avea două componente:
o componentă neperiodică Rc(τ) ce determină o densitate spectrală de putere (d.s.p.) cu un
caracter continuu;
o componentă periodică Rd(τ) ce determină o densitate spectrală de putere discretă (spectru
de linii).
Spectrul de energie al semnalului x(t) se compune dintr-o distribuţie continuă Wc(f),
+∞
Wc ( f ) =
−∞
∫ R (τ ) cos 2π fτ dτ
c (2.12)
∞
Rd (τ ) = ∑a cos 2π fkt
2
când k (2.14)
k = −∞
Pentru calculul d.s.p. a semnalului codat se pleacă de la funcţia de autocorelaţie R(τ) a semnalului
codat x(t) produs de un semnal aleator de date şi se foloseşte teorema Wiener-Hincin, care spune că
funcţia de autocorelaţie R(τ) şi densitatea spectrală de putere formează o pereche Fourier.
+∞
∫ R(τ )e
− j 2πfτ
W( f ) = dτ (2.15)
−∞
+∞
şi reciproc R(τ ) = ∫ W ( f )e j 2πft df (2.16)
−∞
29
Capitolul II
Sistemele de comunicaţii necesită semnale care să prezinte nuluri spectrale la frecvenţa zero
(absenţa componentei de c.c.) sau frecvenţa Nyquist din motive de eficienţă şi uşurinţa sincronizării.
Considerând semnalul codat NRZ-L polar produs de secvenţa de date {ak} reprezentat în figura
2.11, valoarea sa medie poate fi calculată ca
m1 = p ⋅ (+ A) + (1 − p ) ⋅ (− A) = (2 p − 1) ⋅ A (2.17)
unde p este probabilitatea de apariţie a unui bit 1 în secvenţa de date {ak}.
[ ] [ ]
2
2⎧ ⎫
∞ ∞
m1 1
Wx ( f ) =
T
∑δ ( f − k / T ) +
k = −∞ T
S ( f ) ⎨ R(0) − m1 + 2∑ R(k ) − m1 cos 2πfkT ⎬
⎩
2
k =1
2
⎭
(2.18)
unde δ (t ) este un impuls Dirac, m1 este valoarea medie a procesului, S ( f ) este transformata Fourier a
formei de undă s(t) folosită pentru semnalizare, R (k ) este valoarea funcţiei de autocorelaţie evaluată la
momentele kT iar T este durata bitului.
Primul termen reprezintă un spectru discret sau de linii iar al doilea unul continuu. Dacă diferenţa
dintre R(0) şi valoarea medie m1 a procesului este nulă, aceasta determină faptul că nu vor exista
componente discrete sau linii la frecvenţa 0 (c.c.). Vom nota
[ ] [ ]
∞
C ( f ) = R(0) − m1 + 2∑ R(k ) − m1 cos 2πfkT
2 2
(2.19)
k =1
şi îl vom denumi factorul de codare (densitatea spectrală de putere pentru impulsuri Dirac aplicate la
intrarea circuitului codor). El mai este cunoscut şi ca factor de discriminare.
1 2
Factorul S ( f ) reprezintă factorul de formă.
T
Pentru codul NRZ polar şi cazul echiprobabil p = 1 - p = 0.5, valoarea sa medie dată de rel. (2.17)
este zero. Această condiţie asigură numai inexistenţa unei componente discrete la frecvenţa zero (c.c.)
dar nu asigură şi un nul la frecvenţa zero pentru partea continuă. Având în vedere posibilitatea
apariţiei de secvenţe lungi de biţi 1 sau zero consecutivi, componenta de c.c. nu poate fi zero.
Exemplul I!.1 Fie codul AMI sau bipolar nr.1 definit astfel: bitul 1 este reprezentat alternativ prin
nivelele +A şi –A, iar bitul 0 prin nivelul 0.
Valoarea lui R(0) este p întrucât numai biţii 1 contribuie la energia semnalulului, biţii zero fiind
reprezentaţi prin nivelul zero. Valoarea medie este evident nulă, biţii 1 fiind reprezentaţi alternativ prin
nivelele +A şi –A, care se compensează.
Dacă m1 = 0 codul este denumit cunoscut ca echilibrat, dar aceasta nu antrenează după sine şi o
componentă de c.c. nulă.
30
CODURI DE LINIE
Componenta de c.c. a semnalului de date codat într-un cod de linie depinde de disparitatea
semnalului (acumulările produse de a k într-un interval de lungime finită) sau suma digitală curentă
RDS (Running Digital Sum) (acumulările produse de a k într-un interval de lungime finită oarecare).
Ea determină existenţa componentei de c.c. Vom considera o secvenţă de date polară
{ak} = {…, a-2, a-1, a0, a1, a2, a3, …, ak, …}, ak ε {-1, 1}
Suma digitală curentă este definită ca
i
ri = ∑ak = ri −1 + a i = RDS(i) (2.20)
k = −∞
31
Capitolul II
+∞
iar X ( f ) = S( f ) ⋅ ∑a e
k = −∞
k
− jk 2πfT
(2.23)
Densitatea spectrală de putere W(f) asociată codorului ce produce semnalul de date {a k } are
valoarea medie
⎡1 N 2
⎤
W ( f ) = lim E ⎢ ∑ a k e − j 2πfk / f s
⎥ (2.24)
N →∞
⎢⎣ N k =0 ⎥⎦
în care f s = 1 / T este frecvenţa de bit sau simbol iar E (expected value) este operatorul speranţă
matematică şi se aplică mulţimii de secvenţe {ai }, i ≥ 0 generate de căile prin diagrama de tranziţie
cu stări finite G asociată codului, iar limita este interpretată în sensul distribuţiei.
Evident, dacă W ( f ) f =0
= 0 , vom avea un nul în c.c. Dacă RDS este mai mică decât o valoare
finită B, atunci d.s.p. tinde la zero pentru f tinzând la zero ( c.c.). Să presupunem
N
∑a
k =0
k ≤ B, B < ∞ (2.25)
2
1 N
B2
Atunci
N
∑ ak
k =0
≤
N
⎡1 N 2
⎤
şi lim E ⎢ ∑a k ⎥=0 q.e.d. (2.26)
⎣⎢ N
N →∞
k =0
⎦⎥
Codul NRZ-L polar ilustrat în figurile 2.4 şi 2.8 nu are RDS mărginită şi deci prezintă
componentă de c.c, deşi valoarea sa medie este zero pentru cazul echiprobabil, rel.(2.17). Această
condiţie asigură numai inexistenţa unei componente discrete la frecvenţa zero (c.c.).
Gradul de suprimare al componentei de c.c. este indicat de variaţia sumei digitale curente DSV
(Running Digital Sum Variation)
DSV = RDS max − RDS min (2.27)
care reprezintă şi numărul total de valori pe care îl poate lua suma digitală curentă asociată secvenţei
codate. Pentru un interval de timp finit oarecare, DSV este definită ca
DSV = max r[I, J ] (2.28)
I ,J
Variaţia sumei digitale curente DSV a unui cod este diferenţa dintre valorile minime şi maxime ale
sarcinii acumulate, presupunând cuplaj în c.a. pentru circuitul de codare, echivalent cu variaţia maxi-
mă a integralei curente din semnalul codat, cunoscută sub denumirea RSV (Running Sum Variation).
Parametrul DSV este determinat de lungimea seriilor de simboluri codate prin acelaşi nivel (run
length). O valoare finită a lui DSV se obţine prin impunerea unei constrângeri asupra lungimii seriei de
simboluri consecutive 0 sau 1, ceea ce determină o componentă de c.c. nulă. Cu cât valoarea DSV este
mai mică, cu atât gradul de suprimare al componentei de c.c. este mai bun.
Din formula lui Bennett factorul de codare sau d.s.p normalizată pentru impulsuri Dirac în
domeniul de frecvenţă normalizat este dat de
32
CODURI DE LINIE
∞
R(k )
Wˆ x ( f ) = 1 + 2∑ cos 2 π kf (2.29)
k =1 R (0)
R (0)
cos 2 π kf (2.34)
∞
1 ˆ " R(k )
2
W x (0) = −4π 2 f 2
∑k
k =1
2
R(0)
∞
R(k )
şi Wˆ x ( f ) = −4π 2 f 2
∑k
k =1
2
R (0)
(2.35)
(−1) k p 2 (2 p − 1) k −1 2
∞ ∞
Atunci Δ = −∑ k = p ∑ k 2 (1 − 2 p ) k −1
k =1 p k =1
Ţinând cont că
∞
∑k
k =1
2
x k −1 = x 0 + 4 x + 9 x 2 + 16 x3 + 25 x 4 + 36 x5 +
= x0 + x + x 2 + x3 + x 4 + x5 +
+ 3( x + x 2 + x3 + x 4 + x 5 + )
+ 5( x 2 + x3 + x 4 + x5 + )
+ 7( x 3 + x 4 + x 5 + )
+ 9( x 4 + x 5 + ) +…
33
Capitolul II
∞
x0 x x2 x3 x4
∑ k 2 x k −1
k =1
=
1− x
+3
1− x
+5
1− x
+7
1− x
+9
1− x
+…
1
= (1 + x + x 2 + x 3 + x 4 + x 5 + ) +
1− x
2
+ ( x + 2 x 2 + 3x3 + 4 x 4 + 5 x5 + )
1− x
1 2x 1+ x
= + =
(1 − x) (1 − x)
2 3
(1 − x)3
şi x = 1 − 2 p avem
∞
1+1− 2 p 1− p
Δ( p ) = p ∑ k 2 (1 − 2 p ) k −1 = p = (2.38)
k =1 (1 − 1 + 2 p ) 3
4 p2
Figura 2.13 Variaţia lui Δ cu p
Pentru p = 0.5 avem Δ = 1 / 2 .
În figura 2.13 este ilustrată dependenţa lui Δ ( p ) în funcţie de p, pentru p variind în intervalul 0.05 şi
0.95 în cazul codului bipolar nr. 1 sau AMI.
La valori mici ale lui p sunt mai multe zerouri care sunt reprezentate prin nivelul ternar zero, iar
suprimarea componentei de c.c. este mai puternică. La valori mari ale lui p suprimarea componentei de
c.c. este mai slabă.
Conform IEEE (Institute of Electric and Electronic Engineers) un cod este definit ca “un plan de
reprezentare a unui număr finit de valori sau simboluri sau a unui aranjament particular sau secvenţă
de condiţii discrete sau evenimente”. Codul poate fi definit în multe moduri: prin legea de codare,
grafuri de fluenţă, matrici, diagrama de tranziţii de stare, diagrama trelis, etc.
Un exemplu de lege de codare pentru codul diferenţial NRZ-M este următorul: un bit 1 este
reprezentat de o tranziţie (nivel opus celui transmis în intervalul de bit anterior) iar un bit 0 este codat
prin absenţa tranziţiei.
Dacă maparea
secvenţei de date {ak} pe
formele de undă
analogice de ieşire sau
simboluri se face fără
constrângeri referitoare
la simbolurile transmise
anterior, atunci circuitele
de codare şi decodare
sunt fără memorie
(memoryless).
Figura 2.14 Diagrama de stări de tranziţie a codului NRZ-L
Codul mai poate fi
definit de un graf de
34
CODURI DE LINIE
fluenţă denumit diagramă de tranziţie a stărilor (lanţ Markov). De exemplu, codul NRZ-L este
specificat complet de diagrama de tranziţie a stărilor reprezentată în figura 2.14.
Aceste diagrame de tranziţie a stărilor sunt de tipul Moore. Într-un automat Moore sau maşină cu
stări finite FSM (finite-state machine) cuvântul codat de ieşire este o funcţie doar de stare şi nu
depinde de simbolurile digitale de la intrare sau cuvintele sursă. O altă reprezentare este cea de tip
Mealy-type FSSM (finite-state sequential machine) ce implică existenţă unor stări interne.
Fiecare cerc din figura 2.14 reprezintă o stare a automatului Moore. Numerele asociate la exterior
etichetează starea, iar cele din interior, la numărătorul fracţiei reprezintă bitul sau simbolul de intrare.
La numitor se reprezintă simbolurile de ieşire emisie în starea respectivă.
Tranziţiile dintr-o stare în alta sunt reprezentate prin săgeţi şi sunt etichetate cu probabilităţile de
tranziţie din starea curentă în cea de destinaţie. Codul NRZ-M code este descris de diagrama de
tranziţii reprezentată in figura 2.15. Numărul stării este înscris într-un cerc. Modelul Moore este mai
direct şi mai uşor de construit.
35
Capitolul II
Exemplul II.3 Să considerăm codul bifazic L sau Manchester, în care bitul 1 este reprezentat de o
tranziţie negativă sau descendentă pe mijlocul intervalului de bit iar bitul 0 de o tranziţie ascendentă
Atunci un bit 1 este reprezentat prin nivelul H urmat de L, pe scurt HL iar bitul 0 prin LH. Diagrama de
tranziţie este reprzsentată în figura 2.17 (modelul Moore). Acest codor nu are memorie.
Un alt mod de descriere face apel la 2 matrici. O primă matrice este cea de tranziţie, notată cu T:
t 11 ...... t 1n
T = t i1 ... t ij ... t in (2.39)
t n1 ...... t nn
Elementul tij aflat la intersecţia liniei i cu coloana j semnifică probabilitatea de tranziţie din starea i
în starea j. Pentru codul NRZ-L , matricea T este
p 1− p
T=
p 1− p
Exemplul II.4 Fie codul NRZ-M descris de diagrama din figura 2.15. Matricea de tranziţie asociată
codului NRZ-M este:
0 1− p p 0
0 1− p p 0
T= (2.40)
p 0 0 1− p
p 0 0 1− p
Pentru a specifica complet codul se foloseşte o a doua matrice E, denumită matrice de ieşire. În
general,
T
E = E1, E 2, En (2.41)
unde Ei este semnalul emis în starea i.
Exemplul II.5 Fie codul bifazic L sau Manchester descris de diagrama din figura 2.17. Matricea de ieşire
este dată de
H L + 1,−1 1 0
E= sau E= în cazul polar şi E = în cazul unipolar.
L H − 1,+1 0 1
Pentru calculele privind densitatea spectrală de putere matricile de ieşire E pot fi scrise sub forma
mai multor vectori Ai , câte unul pentru fiecare simbol de ieşire.
36
CODURI DE LINIE
Un alt mod de specificare a unui cod face apel la diagrame de tip trelis, care oferă aceleaşi
informaţii despre evoluţia semnalului ca şi diagramele de tranziţii. În plus ele indică şi câteva evoluţii
posibile în timp ale semnalului.
Semnalul de date ce urmează a fi transmis nu este cunoscut a priori, şi nu are caracter determinist.
Spunem că are un caracter stohastic sau aleator. Ceea ce se
cunoaşte a priori este că semnalele transmise aparţin unei
anumite mulţimi sau ansamblu.
Exemplul II.6 Să considerăm codul Miller sau DM (Delay
Modulation) descris de diagrama de tranzitii din figura 2.21. În
figura 2.22 sunt prezentate formele de undă aferente şi suma
digitală curentă RDS.
37
Capitolul II
figura 2.10 sunt cunoscute ca funcţii eşantion sau membri ai unui ansamblu de secvenţe binare de
lungime L (L=2 în situaţia considerată aici).
În general, totalitatea semnalelor de ieşire posibile a ki este denumită ansamblu, în acest caz
ansamblul este {+ −, − +, − −, + +} .
În cel mai simplu caz, cel al semnalului NRZ-L polar, L = 1 şi ansamblul este {+ 1, − 1} sau pe
scurt {+, −}. Analiza spectrală directă a semnalului de date este dificilă. Datele fiind aleatoare,
semnalul codat nu este repetitiv şi nu se poate dezvolta într-o serie Fourier. Semnalul are o putere
finită dar prezintă componente finite într-un interval de timp infinit, iar integralele Fourier implicate
nu sunt convergente.
E 2 ( f , Δf )
W ( f ) = lim (2.42)
Δf →0 Δf
ak1 +
E ( f , Δf ) este valoarea medie pătratică a tensiunii ce ar
-
apare la ieşirea unui filtru cu frecvenţa centrală f şi bandă Δf .
Densitatea spectrală de putere poate fi exprimată ca W(θ),
ak2 +
frecvenţa fiind considerată ca θ ⋅ f , unde f este frecvenţa de
-
simbol. Ea exprimă atunci puterea conţinută la frecvenţa θ ⋅ f .
ak3
⎡ 1 m
⎤ - -
W (θ ) = lim E ⎢ ∑ a k e − j 2πkθ ⎥ (2.43)
m →∞
⎣ 2m + 1 k = − m ⎦
Aici E este operatorul speranţă matematică iar {ak} este ak4 +
ansamblul cuvintelor de cod la ieşirea codorului. Procesul aleator +
cu parametri discreţi asociat secvenţei de simboluri codate{ak} Figura 2.23 Ansamblu de ieşire
are funcţia de autocorelaţie
R (n) = E{a k ⋅ a k + n } (2.44)
presupusă staţionară în sens larg. Ea poate fi considerată ca rezultatul corelaţiei încrucişate pe
ansamblul secvenţelor{xk} de simboluri codate într-un cod de linie.
+∞ +∞
Rx (t + τ , t ) = ∑ ∑ R(k − l )s(t + τ − k )s(t − lT )
k =−∞ l =−∞
(2.45)
ce este o funcţie atât de t cât şi de τ. Deoarece Rx (t + τ , t ) depinde de t, semnalul codat x(t) nu este
staţionar în sens larg. Bennett a arătat în 1958 că Rx (t + τ , t ) fiind periodică în t, cu perioada T,
semnalul codat este un proces ciclostaţionar cu d.s.p. având distribuţia continuă dată de (2.46),
38
CODURI DE LINIE
2⎧
[ ] [ ⎫
]
∞
1
W x ( f ) = S ( f ) ⎨ R(0) − m1 + 2∑ R(k ) − m1 cos 2πfkT ⎬
2 2
(2.46)
T ⎩ k =1 ⎭
Funcţia de autocorelaţie prezintă simetrie pară, R (k ) = R(− k ) şi putem nota simplificat
R ( k ) = Rk (2.47)
Aplicând transformata z relaţiei (2.46) pentru m1 = 0 avem
∞ −∞
C ( z ) = R0 + ∑ Rk z k + ∑ Rk z − k (2.48)
k =1 k = −1
Se obţine C ( z ) = R0 + f ( z ) + f ( z −1 ) (2.50)
∞
unde f ( z ) = ∑ Rk z k (2.51)
k =1
În cazul general un cod bloc este o mapare a m biţi de intrare în n simboluri de ieşire şi este
desemnat ca mI-nO (m Input n Output).
În majoritatea cazurilor avem de a face cu semnale digitale compuse din impulsuri rectangulare şi
suntem interesaţi doar de valorile funcţiei AKF R(τ) evaluate la valori întregi multipli ai intervalului
de semnalizare Ts, de tipul R(kTs) . Simbolurile de ieşire pot fi binare, xi ∈ {0,1} sau xi ∈ {− 1, + 1},
ternare – {-1, 0, +1}, cuaternare – {± 1, ± 3} , etc.
Cazul cel mai simplu este definit de m = 1 şi n= 1; codorul mapând un bit de intrare într-un
simbol de ieşire. Câteva exemple sunt codurile NRZ-L, NRZ-M şi –S în cazul 1B-1B (1 Binar – 1
Binar), codul bipolar nr. 1 sau AMI (Alternate Mark Inversion) şi MLT3 and MLT3-n de tip 1B-1T (1
Binar 1 - Ternar). În aceste cazuri, intervalul de semnalizare şi viteza de simbol la ieşirea coderului
sunt egale cu cele de la intrare.Deoarece în acest caz simplu codul de line este fără redundanţă,
semnalul codat va fi staţionar şi aleatoriu cu digiţi independenţi şi proprietăţi statistice simple. De
exemplu, dacă p=0.5 R(k) va fi zero dacă n>1. Pentru cazul 1B-1B, Ts = T, unde T este durata bitului.
Dacă {x} este un semnal digital aleator , x1 , x 2 , xu , , compus din elemente de durată T
codate conform unui cod de linie, funcţia R(kT) , pe scurt R(k), este dată de (2.9) care în varianta
discretă devine
n
1
R (k ) = lim
m → ∞ 2m + 1
∑ xn ⋅ xn+ k
n=− m
(2.52)
not
şi notăm R(kT ) = R(k ) (2.53)
Deoarece semnalizarea se face cu impulsuri rectangulare, x(t ) = ± A , funcţia AKF va prezenta o
variaţie liniară între două valori succesive discrete, având în vedere că funcţia de autocorelaţie a
impulsului rectangular are o formă triunghiulară. Dacă τ = 0, atunci
39
Capitolul II
T /2
1
T →∞ T ∫
R(0) = lim x(t ) x(t ) dt (2.54)
−T / 2
∞
2
sau R(0) = ∫ x(t ) dt (2.55)
−∞
1 1 1 0 1 0 0 1 1 0 0 0
x(t) t
x(t) t
x2(t) + + + + + + + + + + + +
t
p p p (1-p) p (1-p) (1-p) p p (1-p) (1-p) (1-p)
Aici p şi 1-p sunt probabilităţile de apariţie a biţilor 1 şi respectiv 0. Pe baza fig. 2.24 putem scrie
R (0) = p ⋅ A 2 + (1 − p) ⋅ A 2 = A 2 (2.58)
Pentru cazul transmisiei unipolare, x(t ) ∈ {0, A} avem
R (0) = p ⋅ A 2 + (1 − p) ⋅ 0 = p ⋅ A 2 (2.59)
Calculul funcţiei de autocorelaţie pentru k =1, R(1) este illustrată în figura 2.25. Vom presupune
A = 1. Se identifică patru contribuţii distincte ce corespund celor patru valori ale dibitului ak ak-1,
prezentate în tabelul II.3. Valoarea lui R(1) rezultă ca
R (1) = + p 2 + (1 − p) 2 − 2 p(1 − p) = (1 − 2 p) 2 (2.60)
Pentru calculul lui R(2) vom considera toate combinaţiile posibile de doi biţi separate de un bit, de
tipul 0X0, 0X1, 1X0, 1X1 unde X este 0 sau 1. Valoarea lui R(2) rezultă din suma a 8 contribuţii
R (2) = (1 − p)3 − p(1 − p ) 2 + p (1 − p ) 2 − p 2 (1 − p ) − p (1 − p ) 2 +
(2.61)
p 2 (1 − p ) − p 2 (1 − p ) + p 3 = (1 − 2 p ) 2
Pentru calculul lui R(3) vom considera toate combinaţiile posibile de doi biţi separate de doi biţi,
de tipul 0XY0, 0XY1, 1XY0 şi 1XY1, unde XY poate lua valorile 00, 01, 10 şi 11 . Valoarea lui R(3)
rezultă din suma a 16 contribuţii. Efectuând calculele se obţine,
40
CODURI DE LINIE
R (3) = (1 − 2 p) 2 (2.62)
DATE 1 1 1 0 1 0 0 1 1 0 0 0
x(t) t
x(t-T)
+ + + - - - + - + - + +
x(t) . x(t-T) t
-p(1-p) + p2 +p2 -p(1-p) -p(1-p) -p(1-p) +(1-p)2 -p(1-p) + p2 -p(1-p) + (1-p)2 + (1-p)2
Calculele pot fi mecanizate şi scrise într-o formă elegantă folosind matrici. Astfel, putem scrie
R(k) = Tr (d ⋅ Π k ⋅ Z) (2.63)
unde d este o matrice diagonală ce conţine probabilităţile staţionare
d = diag {p (1),. p (2), p ( I )} (2.64)
⎡ P1 0 0⎤
⎢ 0⎥
sau d =P =⎢0 P2
⎥
⎢0 0 PI ⎥⎦
⎣
unde I este numărul stărilor în diagrama de Figura 2.26 Diagrama de stări pentru NRZ-L
tranziţie a stărilor,
Π este matricea probabilităţilor de tranziţie a stărilor,
Z este o matrice de corelaţie iar
Tr semnifică urma matricii (trace), adică suma elementelor de pe diagonala principală.
Dacă simbolurile de ieşire asociate celor I stări sunt ai , i = 1,2, I , atunci elementul zij al
matricii Z este dat de aiaj.
z ij = ai ⋅ a j (2.65)
Exemplul II.7 Să considerăm codarea NRZ-L, cu diagrama de stări de tranziţie având 2 stări (I=2)
prezentată în figura.2.26.
⎡p 0 ⎤ ⎡ p 1 − p⎤ ⎡ 1 − 1⎤
d=⎢ Π =⎢ Z=⎢
⎣0 1 − p⎥⎦ ⎥
⎣ p 1 − p⎦
⎥
⎣− 1 1 ⎦
Atunci
⎛ ⎡ p2 p(1 − p) ⎤ ⎡ 1 −1⎤ ⎞
R (1) = Tr (d ⋅ Π ⋅ Z) = Tr ⎜ ⎢ ⋅
2⎥ ⎢ ⎥ ⎟⎟ =
⎜
⎝ ⎣ p(1 − p) (1 − p) ⎦ ⎣ −1 1 ⎦ ⎠
41
Capitolul II
R (1) = p 2 − p (1 − p) − p(1 − p) + (1 − p) 2 = (1 − 2 p ) 2
Rezultul este identic cu cel dat de rel.(2.60).
Să considerăm un alt exemplu de cod 1B1T, de tip AMI, bitul 1 este codat alternativ ca +1, -1 în
timp ce 0 este reprezentat prin nivelul ternar zero, cu diagrama de tranziţii reprezentată în figura 2.27.
Exemplul II.8 Să determinăm matricile d, Π, Z şi valorile funcţiei AKF R(1) pentru codul AMI . Avem,
⎡ p/2 0 0 0 ⎤
⎢ 0 (1 − p)/2 0 0 ⎥
d =⎢
0 0 p/2 0 ⎥
⎢⎣ 0 0 0 (1 − p)2 ⎥⎦
⎡0 1 − p p 0 ⎤
⎢0 0 p 1 − p⎥
Π =⎢
p 0 0 1 − p⎥
⎢⎣ p 1 − p 0 0 ⎥⎦
⎡1 0 -1 0⎤
Z = ⎢ -01 0
0
0
1
0⎥
0⎥
⎢
Figura 2.27 Diagrama codului AMI
⎣⎢ 0 0 0 0 ⎦⎥
R (1) = Tr (d ⋅ Π ⋅ Z ) =
⎡⎡ 0 p(1 - p)/2
2
p /2 0 ⎤ ⎤
⎢⎢ ⎥⎡ 1 0 -1 0⎤⎥
⎢ 2
= Tr ⎢ ⎢⎢
0 0 p(1 − p)/2 (1 − p) /2 ⎥ ⎢ 0 0 0 0⎥⎥ =
2
p(1 − p)/2
⎥ ⎢- 1 0 1 0⎥⎥
⎢⎢ p / 2 0 0
⎥ ⎣⎢ 0 0 0 0 ⎦⎥ ⎥
⎢ ⎢⎣ p(1 − p)/2 (1 − p) 2 /2 0 0 ⎥⎦ ⎥
⎣ ⎦
= − p2 / 2 − p2 / 2 = − p2
Funcţia AKF poate fi calculată plecând de la kernelul d ⋅ Π k
şi matricea A a simbolurilor de
ieşire. În cazul codării NRZ-L, matricea de ieşire A este un vector coloană AT = [1 − 1] , unde
indicele superior T semnifică operaţia de transpunere a matricii.
Putem înlocui matricea Z in ec.(2.63) prin multiplicarea kernelului d ⋅ Π k
la stânga cu A* şi la
dreapta cu A, unde A* reprezintă conjugata transpusă (hermitică).
R (k ) = A∗ ⋅ (d ⋅ Π k ) ⋅ A (2.66)
42
CODURI DE LINIE
O altă abordare de calcul al coeficienţilor R(k) ai funcţiei AKF se bazează pe utilizarea vectorilor
de intrare e şi plecare d care sunt I-dimensionali. În acest caz,
R (k ) = e ⋅ Π k −1 ⋅ d ' (2.68)
Componenta i a vectorului de intrare e este suma ponderată a simbolurilor ce pot fi transmise la
intrarea în starea i.
I
ei = ∑ p k ⋅ t ki ⋅ a ki (2.69)
k =1
unde pk este probabilitatea staţionară asociată stării k, tki este probabilitatea de tranziţie din starea k în
starea i iar aki este simbolul ce se transmite la trecerea din starea k în starea i.
Componentele vectorului d sunt sume ponderate de simboluri ce pot fi transmise la plecarea din
starea curentă i. Componenta i a vectorului d este dată de:
I
d i = ∑ t ik aik (2.70)
k =1
Exemplul II.10 Să considerăm codul AMI descris de diagrama de tranziţii din figura 2.27 şi să calculăm
valorile funcţiei AKF folosind (2.68). Avem
e = [ p/2, 0, -p/2, 0 ]
d = [ − p, − p, p, p]
⎡0 1 − p p 0 ⎤
⎢0 0 p 1 − p⎥
Π =⎢
p 0 0 1 − p⎥
⎢⎣ p 1 − p 0 0 ⎥⎦
R (1) = e ⋅ d ' = − p 2
R (2) = e ⋅ Π ⋅ d ' = p 2 (−1 + 2 p)
R (3) = e ⋅ Π 2 ⋅ d ' = p 2 (−1 + 2 p) 2
R (n) = e ⋅ Π n −1 ⋅ d ' = p 2 (−1 + 2 p ) n −1
43
Capitolul II
1. Se corelează forme de undă aparţinând intervalelor de bit n şi n+k (a doua jumătate a lui xn+k
notată ca aj2 şi prima jumătate a lui xn denumită ai1);
2. Formele de undă implicate aparţin intervalelor de bit n şi n+k+1 (prima jumătate a lui xn+k+1
denumită ap1 şi a doua jumătate a lui xn denumită ai2).
Procedând ca mai sus, funcţia de autocorelaţie evaluată la momente de timp multiplu de T este
R(k ) = Tr (d ⋅ Π k ⋅ Z ) (2.71)
unde, Z este o matrice de corelaţie pe intervalul de bit T. Elementul zij, aflat la intersecţia liniei i cu
coloana j este dat de
ai1 ⋅ a j1 + ai 2 ⋅ a j 2
z ij = (2.72)
2
unde ai1 şi ai2 reprezintă primul şi cel de al doilea simbol de ieşire transmise în starea i.
Pentru codul 1B-1B studiat mai sus sau orice cod 1I-1O (1 Input 1 Output),
ai1 = ai 2 = ai and a j1 = a j 2 = a j (2.73)
şi zij este dat de rel.(2.72).
Calculul lui R(k+1/2) decurge într-un mod similar şi avem
R (k + 1 2) = Tr (d ⋅ Π k ⋅ X ) + Tr (d ⋅ Π k +1 ⋅ Y ) =
(2.74)
= Tr (d ⋅ Π k ⋅ ( X + Π ⋅ X T )
sau R(k + 1 2) = Tr (d ⋅ Π k ⋅ S ) (2.75)
not
unde S = X +Π⋅XT (2.76)
Matricile X şi Y (transpusa lui X) sunt matrici de corelaţie pe jumătate de interval de bit.
Elementul xij, care se află la intersecţia liniei i şi coloanei j este dat de
xij = ai 2 ⋅ a j1 / 2 , y ij = a j 2 ⋅ ai1 / 2 (2.77)
Evident, y ij = x ji şi Y = XT (2.78)
Exemplul II.11 Să considerăm codul DM sau Miller descris de diagrama de tranziţii din figura 2.21 şi să
calculăm R(1/2). Acest caz particular implică corelaţii între elemente aparţinând aceluiaşi interval de bit
(k = 0) sau la două intervale succesive de bit (k = 1), aşa cum se arată în figura 2.29. Rezulatele
corelaţiei sunt indicate cu + şi –, formele de undă implicate fiind rectangulare, iar dedesubt este indicată
44
CODURI DE LINIE
probabilitatea de apariţie a evenimentului. Valoarea lui R(1/2) rezultă din suma tuturor contribuţiilor
posibile ponderate cu probabilităţile lor de apariţie
R (1 2) =
1
2
[ ]
− p + (1 − p ) + p 2 + p (1 − p) + p(1 − p ) − (1 − p ) 2 = p − p 2 (2.79)
⎡0 1 - p p 0 ⎤
⎢0 0 p 1 - p⎥
Π =⎢ ⎥
⎢p 0 0 1- p
⎥
⎣⎢ p 1 - p 0 0 ⎦⎥
Figura 2.30 Ilustrarea corelaţiei pentru coduri 1B-2B
⎡ p/2 0 0 0 ⎤ ⎡ - 1 + 1 + 1 - 1 ⎤
⎢ 0 (1 − p)/2 0 0 ⎥ ⎢ - 1 + 1 + 1 - 1 ⎥
d=⎢ = ⎢ ⎥
0 0 p/2 0 ⎥ Z
⎢ + 1 - 1 - 1 + 1 ⎥
⎢⎣ 0 0 0 (1 − p)2 ⎥⎦ ⎢ ⎥
⎣ + 1 - 1 - 1 + 1 ⎦
Dacă scriem două matrici de ieşire A1 şi A2 ce conţin primul şi respectiv al doilea simbol de ieşire
pentru fiecare stare de la 1 la I (I fiind numărul stărilor din diagrama de tranziţie), putem calcula pe
R(k+1/2) conform figurii 2.30 şi ca,
R (k + 1 2) = 0.5 ⋅ A*1 ⋅ d ⋅ Π k ⋅ A2 + 0.5 ⋅ A*2 ⋅ d ⋅ Π k +1 ⋅ A1 (2.80)
Exemplul II.12 Să considerăm iar codul DM sau Miller şi să calculăm R(3/2) folosind ec. (2.80). Avem
R(3 2) = 0.5 ⋅ A1* ⋅ d ⋅ Π ⋅ A2 + 0.5 ⋅ A2* ⋅ d ⋅ Π 2 ⋅ A1
⎡ 2 ⎤
⎡+ 1⎤ ⎡ − 1⎤ 0 p(1 − p)/2 p /2 0
⎢ - 1⎥ ⎢ - 1⎥ ⎢ 2 ⎥
0 0 p(1 − p)/2 (1 − p) /2 ⎥
A1 = ⎢ ⎥ A 2 = ⎢ ⎥ d.Π = ⎢ 2
⎢ - 1⎥ ⎢+ 1⎥ ⎢ p /2 0 0 p(1 − p)/2 ⎥
⎣⎢ ⎦⎥
+ 1 ⎢⎣ ⎥⎦
+ 1 ⎢ 2 ⎥
⎣ p(1 − p)/2 (1 − p) /2 0 0 ⎦
⎡ p 3 /2 0
2
p (1 − p)/2 p(1 − p)/2 ⎤
⎢ 3 2 ⎥
p(1 − p)/2 (1 − p) /2 p(1 − p) /2 ⎥
d ⋅Π = ⎢
2 0
⎢ p 2 (1 − p)/2 p(1 − p)/2 3
p /2 0 ⎥
⎢ 2 3 ⎥
⎣ 0 p(1 − p) /2 p(1 − p)/2 (1 − p) /2 ⎦
45
Capitolul II
şi în final R(3 2 ) = −3 p + 5 p 2 − 2 p 3
Pe baza relaţiilor găsite până acum se obţin următoarele valori pentru funcţia de autocorelaţie a
codului Miller:
R(0) = 1
R(1 2) = p(1 − p)
R(1) = −1 + 2 p − 2 p 2
R(3 2) = −3 p + 5 p 2 − 2 p 3
R(2) = (1 − 2 p) 2 (2.83)
R(5 2) = 3 p − 7 p 2 + 6 p 3 − 2 p 4
R(3) = −1 + 6 p − 10 p 2 + 8 p 3 − 4 p 4
R(7 2) = −3 p + 13 p 2 − 22 p 3 + 16 p −4 − 4 p 5
R(4) = 1 − 8 p + 20 p 2 − 24 p 3 + 12 p 4
R(9 2) = 3 p − 19 p 2 + 42 p 3 − 42 p 4 + 20 p 5 − 4 p 6
46
CODURI DE LINIE
∫ s(t )e ∫ s(t )e
− j 2πt f t − j 2πt f t
S( f ) = dt = dt (2.87)
−∞ −T / 2
Puterea medie a semnalului în intervalul [−T / 2, T / 2] rezultă aplicând teorema lui Parseval
1 +T / 2 2 1 +∞ 2
T −T∫/ 2 T −∫∞
P= s (t ) dt = S ( f ) df (2.88)
+∞
Deoarece P = ∫ W ( f ) df (2.89)
−∞
1 2
obţinem W( f ) = S( f ) (2.90)
T
Funcţia de autocorelaţie a codului Miller are valorile date de (2.83). În cazul echiprobabil p=0.5 şi
relaţia (2.83) devine
R(0) = 1 R(1 2) = 1 / 4
R(1) = −1 / 2 R(3 2) = −1 / 2
R(2) = 0 R(5 2) = 3 / 8 (2.91)
R(3) = 1 / 4 R(7 2) = −1 / 8
R(4) = −1 / 4 R(9 2) = −1 / 16
Bazându-ne pe relaţia (2.85) pentru p=0.5 şi introducând notaţia R(k)=R(2n), obţinem următoarea
relaţie de recurenţă ce leagă valorile funcţiei de autocorelaţie a codului Miller
1
R (k + 8) = − R(k ) (2.92)
4
Funcţia de autocorelaţie a codului Miller pentru p=0.5 este reprezentată în figura 2.32. Pe baza ei,
plecând de la formula lui Bennet (2.46), obţinem
∞ ⎡ 8 ∞ ⎛ 1 ⎞k ⎤
S = ∑ R(k + 1) ⋅ cos(k + 1)x = Re ⎢∑∑ ⎜ − ⎟ ⋅ R(l ) ⋅ z 8 k + l ⎥
k =0 ⎢⎣ l =1 k =0 ⎝ 4 ⎠ ⎥⎦
8 ∞ k k
⎛ 1⎞ 8 8
⎛ 1 ⎞
S1 = ∑∑ ⎜ − ⎟ ⋅ R(l ) ⋅ z 8 k +l = ∑ R(l ) ⋅ z l ∑ ⎜ − ⋅ z 8 ⎟
l =1 k = 0 ⎝ 4⎠ l =1 l =1 ⎝ 4 ⎠
unde z = e j⋅ x .
Ultima relaţie mai poate fi scrisă ca
47
Capitolul II
8
1 4 ⎛1 1 1 3 1 1 1 ⎞
S1 = ∑ R(l ) ⋅ z l ⋅ = 8 ⎜
⋅ ⋅ z − ⋅ z 2 − ⋅ z3 + ⋅ z5 + ⋅ z6 − ⋅ z7 − ⋅ z8 ⎟
1 4+ z ⎝4 2 2 8 4 8 4 ⎠
l =1
1+ ⋅ z8
4
z − 2 ⋅ z − 2 ⋅ z 3 + 1.5 ⋅ z 5 + z 6 − 0.5 ⋅ z 7 − z 8
2
sau S1 =
z8 + 4
4 + z − 2 ⋅ z 2 − 2 ⋅ z 3 + 1.5 ⋅ z 5 + z 6 − 0.5 ⋅ z 7
S1 = −1
z8 + 4
* 4 + z − 2 ⋅ z 2 − 2 ⋅ z 3 + 1.5 ⋅ z 5 + z 6 − 0.5 ⋅ z 7
S1 + S1 = −2 +
z8 + 4
4 + z −1 − 2 ⋅ z − 2 − 2 ⋅ z −3 + 1.5 ⋅ z −5 + z −6 − 0.5 ⋅ z −7
+
z8 + 4
S 1 + S1
*
= −2 +
(4 + z )⋅ (4 + z − 2 ⋅ z
−8 2
− 2 ⋅ z 3 + 1.5 ⋅ z 5 + z 6 − 0.5 ⋅ z 7
+
)
(
16 + z 8 ⋅ z −8 + 4 ⋅ z 8 − z −8 )
+
(4 + z )⋅ (4 + z8 −1
− 2 ⋅ z − 2 − 2 ⋅ z − 3 + 1.5 ⋅ z − 5 + z − 6 − 0.5 ⋅ z − 7 )
(
16 + z 8 ⋅ z −8 + 4 ⋅ z 8 − z −8 )
48
CODURI DE LINIE
*
S1 + S1 = −2 +
( ) ( ) ( ) ( ) (
32 + 4 ⋅ z 8 − z −8 − z 7 − z −7 + 2 ⋅ z 6 − z −6 + 4 ⋅ z 5 − z −5 − 6.5 ⋅ z 3 − z −3
+
)
17 + 8 ⋅
z 8 − z −8 ( )
2
+
( )
− 7 ⋅ z 2 − z − 2 + 35 ⋅ z − z −1 ( )
17 + 8 ⋅
(
z 8 − z −8 )
2
Din ultima relaţie
1 ⎛ 32 + 8 cos (8 ⋅ x ) − 2 cos (7 ⋅ x ) + 4 cos(6 ⋅ x ) + 8 cos (5 ⋅ x )
C (x ) = ⋅ ⎜⎜ − 2 + +
2 ⎝ 17 + 8 cos(8 ⋅ x )
− 13 cos (4 ⋅ x ) − 14 cos (2 ⋅ x ) + 7 cos x ⎞
+ ⎟⎟
17 + 8 cos(8 ⋅ x ) ⎠
1 ⎛ − 2 − 8 cos(8 ⋅ x ) − 2 cos(7 ⋅ x ) + 4 cos(6 ⋅ x ) + 8 cos(5 ⋅ x )
C (x ) = ⋅⎜ +
2 ⎜⎝ 17 + 8 cos(8 ⋅ x )
(2.94)
− 13 cos(4 ⋅ x ) − 14 cos(2 ⋅ x ) + 7 cos x ⎞
+ ⎟⎟
17 + 8 cos(8 ⋅ x ) ⎠
unde x = πfT
Factorul de codare al
codului DM sau Miller este
reprezentat în figura 2.33
împreună cu d.s.p.
(semnalizare cu impulsuri
rectangulare) pentru cazul
echiprobabil p=0.5, în funcţie
de frecvenţa normalizată fn
fn = f / f bit = f ⋅ T
Să considerăm o
semnalizare digitală folosind
impulsuri rectangulare s(t) Figura 2.33 D.s.p şi factorul de codare al codului Miller
cum ar fi codul NRZ-L polar.
Energia transportată de semnal într-un interval de bit va fi denumită energie de bit şi este dată de
T /2
Eb = ∫s (t )dt = A 2T
2
(2.95)
−T / 2
unde A este amplitudinea impulsului rectangular iar T este durata bitului. Ne reamintim că puterea
semnalului este dată de s 2 (t ) şi se măsoară în V 2 . [ ]
Dacă pentru transmisie se foloseşte o altă formă de undă cu aceeaşi amplitude A, cum ar fi lobul de
cosinus reprezentat în figura 2.34 descris de
49
Capitolul II
⎧ A cos(π t / 2T ) t ≤T /2
g (t ) = ⎨ (2.96)
⎩ 0 in rest
energia sa de bit este
T /2 T /2
Eb = ∫
−T / 2
g 2 (t ) dt = ∫
−T / 2
A2 cos 2 (π t / 2T ) dt = A2T / 2 (2.97)
Pe măsură ce forma de undă g(t) folosită pentru semnalizare se abate de la cea rectangulară s(t),
comportarea sa în palier nu mai are loc pe tot
intervalul de bit. În consecinţă porţiunile
haşurate din figura 2.34 ce reprezintă
diferenţa dintre impulsul rectangular s(t) şi
cel de tip lob de cosinus g(t) nu vor mai
contribui la energia semnalului.
Energia de bit va descreşte şi pentru a
avea aceleaşi performanţe va trebui să
utilizăm aceeaşi energie de bit. Aceata face
necesară introducerea unei constante de Figura 2.34 Impuls rectangular şi lob de cosinus
normalizare notată cu k pentru amplitudinea
semnalului.
Ea este definită ca:
T /2
∫s
2
(t ) dt
−T / 2
k= T /2
(2.98)
∫g
2
(t ) dt
−T / 2
AT 2
k= 2
=2
T /2
⎛A 2πt ⎞ 3
∫ ⎜ (1 + cos(
−T / 2 ⎝
2
) ⎟ dt
T ⎠
50
CODURI DE LINIE
Cea mai utilizată formă de undă utilizată în comunicaţiile digitale este o aproximaţie a impulsului
rectangular ideal, având în vedere uşurinţa generării sale. În transmisie se foloseşte o variantă filtrată a
sa. Transformata Fourier a impulsului rectangular are o viteză de scădere relativ lentă, proporţională
cu 1/f datorită caracterului discontinuu al formei de undă, iar d.s.p. descreşte proporţional cu f −2 .
Teoremă: dacă forma de undă s(t) folosită pentru semnalizare este continuă şi egală cu zero la
capetele intervalului de definiţie (± T / 2 ) şi are un număr k-1 de derivate care sunt continue şi egale
− ( k +1)
cu zero la capetele intervalului, atunci transformata Fourier va avea o viteză de scădere f . În
−2 ( k +1)
consecinţă, d.s.p. va avea o viteză de scădere a componentelor spectrale cu frevenţa de tipul f .
Exemplul II.14 Să considerăm un impuls de tip cosinus ridicat ilustrat în figura 2.35, descris de relaţia
g (t ) = {(1+cos 2π t ) / 2 t ≤T / 2
0 in rest
(2.100)
El satisface condiţiile
g (t ) t = ± T / 2 = 0 (2.101)
iar g " (t ) ≠0
t = ±T / 2
Transformata Fourier a lui Figura 2.36 D.s.p pentru impuls rectangular şi cosinus ridicat
g(t) este dată de
1 sin πfT
G( f ) = (2.103)
2 fπ (1 − f 2 T 2 )
Există numeroase forme de undă care prezintă viteza de scădere (roll-off rate) mai rapidă a
componentelor spectrale cu frecvenţa în comparaţie cu impulsul rectangular, de exemplu impulsul
triunghiular, lob de cosinus, impuls exponenţial sau în formă de trapez.
Pentru generarea lor se pot folosi tehnici numerice (la viteze mai mici) sau analogice (la viteze
ridicate). Impulsul de tip lob de cosinus, de lătime dublă faţă de cel descris de rel. (2.96) este întâlnit
în comunicaţiile cu modulaţie digitală tip FSK sau MSK.
51
Capitolul II
Metoda a fost introdusă de Bilardi ş.a. [1983] pentru coduri descrise de automate de tip Moore.
Factorul de codare C(f) este dat de:
C ( z ) = R0 + f ( z ) + f ( z −1 ) (2.104)
∞
unde f ( z ) = ∑ Rk z k (2.105)
k =1
iar Rk = R ( k ) = A ∗ ⋅ (d ⋅ Π ) k ⋅ A (2.106)
Vom introduce notaţia
r (k ) = d ⋅ Π k (2.107)
unde Π este matricea probabilităţilor de tranziţie asociată unui lanţ Markov ergodic. Ea este o matrice
stohastică ireductibilă având următoarele proprietăţi:
Toate valorile proprii sunt în modul mai mici sau egale cu unitatea;
= I + z −1 M + z − 2 M 2 + … + z − n M n + … (2.108)
… − z −1 M − z − 2 M 2 + … − z − n M n + … = I
unde I este matricea unitate, devine:
( )
∞
I
∑M
−1
k
zk = −1
= I − Mz −1 (2.109)
k =0 I − Mz
şi
( )
∞
∑M
−1
k
z k = I − Mz −1 −I (2.110)
k =1
Având în vedere că matricea Π are toate valorile proprii în interiorul cercului de rază egală cu 1,
putem exprima factorul de codare ca:
c( z ) = d ⋅ ( I − z −1 Π ) −1 + ( I − zΠ ' ) −1 ⋅ d − d (2.111)
deoarece progresiile geometrice de matrici implicate sunt infinit descrescătoare cu raţie mai mică decât
1 şi au sumă finită, iar matricele inverse există. Factorul de codare c(z) poate fi scris sub forma
simetrică:
c( z ) = ( z −1 I − Π ' ) −1 ⋅ C ⋅ ( zI − Π) −1 (2.112)
iar
C = d − Π' ⋅ d ⋅ Π (2.113)
unde polii correspunzători valorilor proprii ale lui Π de modul 1 sunt anulaţi în mod automat.
52
CODURI DE LINIE
Exemplul II.15 Să calculăm d.s.p. a codului NRZ-L folosind această abordare. Plecând de la diagrama
de tranziţii din figura 2.26 putem scrie:
⎡1 − p 0 ⎤ ⎡1 − p p⎤
d=⎢ şi Π=⎢ ⎥
⎣ 0 p⎥⎦ ⎣1 − p p⎦
⎡ p(1 - p) - p(1 - p)⎤
C = d − Π ' ⋅d ⋅Π = ⎢
⎣ - p(1 - p) p(1 - p) ⎥⎦
⎡ z (1 − pz ) (1 − p) z 2 ⎤
⎢ ⎥
( z −1 I − Π ' ) −1 = ⎢ 1 − 2z 1− z ⎥
⎢ pz (1 − z + pz ) z ⎥
⎢⎣ 1 − z 1− z ⎥⎦
⎡ p−z −p ⎤
⎢ z (1 − z ) z (1 − z ) ⎥
( zI − Π ) −1 =⎢ ⎥
⎢ p −1 1− p − z ⎥
⎢⎣ z (1 − z ) z (1 − z ) ⎥⎦
c(z) = ( z −1 I − Π ' ) −1 ⋅ C ⋅ ( zI − Π ) −1 = ⎡⎢
p(1 - p) - p(1 - p)⎤
⎣ - p(1 - p) p(1 - p) ⎥⎦
şi în final
⎡0 1 − p p 0 ⎤
⎢0 0 p 1 − p⎥
Π =⎢ ⎥
0 1− p
⎢p 0 ⎥
⎣⎢p 1 − p 0 0 ⎦⎥
⎡ p(1 − p) p(1 − p) 2 p 2 (1 − p) ⎤
⎢ − 0 − ⎥
⎢ 2 2 2 ⎥
⎢ p(1 − p) 2 p(1 − p) p 2 (1 − p) ⎥
⎢− − 0 ⎥
C=⎢ 2 2 2 ⎥
⎢ p 2 (1 − p) p(1 − p) p(1 − p) 2 ⎥
⎢ 0 − − ⎥
⎢ 2 2 2 ⎥
⎢ p 2 (1 − p) p(1 − p) 2 p(1 − p) ⎥
⎢⎣− 2
0 −
2 2 ⎥⎦
53
Capitolul II
A* = [1 − z -1 − (1 + z -1 ) − 1 + z -1 1 + z -1 ]
Se obţine
w( z ) = 4 pz ( p 2 − p 3 + z (2 p − 4 p 2 + 2 p 3 ) + z 2 (−1 + 2 p + p 2 − 4 p 3 + 2 p 4 ) +
z 3 (2 − 4 p + 4 p 2 − 2 p 3 ) + z 4 (−1 + 2 p + p 2 − 4 p 3 + 2 p 4 ) +
z 5 (2 p − 4 p 2 + 2 p 3 ) + z 6 ( p 2 − p 3 ) /((−2 p + 2 p 2 − z 2 − z 4 )(−1 − z 2 − 2 pz 4 + 2 p 2 z 4 )
jπf
Înlocuind z = e = cos πf + j sin πf în relaţia precedentă şi simplificând obţinem
4 (p - 1 ) p (-1 + p - p 2 + (p - 4 p 2 + 2 p3 ) ⋅ cos x + (-2 p + 2 p 2 ) ⋅ cos 2 x + ( 1 - 2 p + 2 p 2 ) ⋅ cos 3x
c( f,p ) =
1 + 2 p 2 - 4 p3 + 2 p 4 + ( 1 + 2 p - 2 p 2 ) ⋅ cos 2 z + ( 2 p - 2 p 2 ) ⋅ cos 4 x
unde x = π f T . Pentru cazul echiprobabil, p=0,5, rezultatul este echivalent cu cel dat de (2.94).
În cele mai multe cazuri codul este definit de un automat de tip Mealy, având în vedere simplitatea
acestuia (număr mai mic de stări). Unele metode de calcul a densităţii spectrale de putere fac apel la
descrierea codului ca automat Moore. Pentru codurile descrise de matrici de tranziţie de dimensiuni
mici (I = 2 sau 4) trecerea este destul de directă, operaţia putându-se efectua manual. În cazul codurilor
complexe, descrise de matrici de tranziţie de dimensiuni mari (I >10), operaţia este mai complicată şi
se preferă a se efectua mecanizat.
Vom descrie conversia automatului de tip Mealy într-un automat Moore echivalent pe baza unui
exemplu. Să considerăm codul bipolar nr.2 descris de diagrama de tranziţie de tip Mealy reprezentată
în figura 2.37. Acest cod este un cod fără componentă de c.c. fiind descris ca o codare cu răspuns
parţial descrisă de polinomul 1 − D 2 şi precodare de tip diferenţial de ordinul 2. Acesta poate fi
considerat ca fiind obţinut din intercalarea a două coduri de tip bipolar nr. 1 sau AMI. Inexistenţa
componentei de c.c. este confirmată de faptul că suma simbolurilor emise este nulă pe orice contur
închis (buclă) din diagrama de tranziţie, ceea ce face ca suma digitală curentă să fie mărginită.
Matricea de tranziţie asociată codului rezultă din figura 2.37 ca
⎡q p 0 0⎤
⎢0 0 p q ⎥⎥
T =⎢
⎢0 0 q p⎥
⎢ ⎥
⎣p q 0 0⎦
Având în vedere că transmisia se face binar, utilizând alfabetul
de intrare binar compus din 2 simboluri (0 şi 1), vom deduce din
matricea T două matrici, notate cu E1 şi E2, asociate celor două
simboluri de informaţie prezente la intrare (0 şi 1) care conţin
numai elementele 0 şi 1, în modul următor: prezenţa lui 1
marchează existenţa unei tranziţii iar cu 0 se marchează absenţa
tranziţiei. În consecinţă,
Figura 2.37 Cod bipolar nr.2
54
CODURI DE LINIE
⎡1 0 0 0⎤ ⎡0 1 0 0⎤
⎢0 0 0 1⎥⎥ ⎢0 0 1 0⎥⎥
E1 = ⎢ E2 = ⎢
⎢0 0 1 0⎥ ⎢0 0 0 1⎥
⎢ ⎥ ⎢ ⎥
⎣0 1 0 0⎦ ⎣1 0 0 0⎦
Avem astfel pentru bitul 0 tranziţii din stările 2 în 4 şi invers precum şi din 1 în 1 şi din 3 în 3. Bitul
1 prezent la intrarea circuitului de codare bipolară nr.1 determină tranziţii din starea 1 în 2, din 2 în 3,
din 3 în 4 şi din 4 în 1.
Vom construi apoi matricea de tranziţie asociată automatului Moore sub forma:
⎡p E p 2 E1 ⎤
Π =⎢ 1 1
⎣ p1 E 2 p 2 E 2 ⎥⎦
unde p1 şi p2 reprezintă probabilităţile de apariţie ale celor două simboluri de date (0 şi 1).
p1 = p p2 = 1 − p
⎡ p E1 (1 − p ) E1 ⎤
Π =⎢
⎣ p E2 (1 − p ) E2 ⎥⎦
şi detaliat
⎡1 − p 0 0 0 p 0 0 0⎤
⎢ 0 0 0 1− p 0 0 0 p ⎥⎥
⎢
⎢ 0 0 1− p 0 0 0 p 0⎥
⎢ ⎥
⎢ 0 1− p 0 0 0 p 0 0⎥
Π =⎢ ⎥
⎢ ⎥
⎢ 0 1− p 0 0 0 p 0 0⎥
⎢ 0 0 1− p 0 0 0 p 0⎥
⎢ ⎥
⎢ 0 0 0 1− p 0 0 0 p⎥
⎢1 − p 0 0 0 p 0 0 0 ⎥⎦
⎣
Automatul Moore echivalent descris de matricea de tranziţie de mai sus este cel reprezentat în
figura 2.38. S-a notat q = 1 − p pentru concizia exprimării.
55
Capitolul II
Pentru asignarea simbolurilor de ieşire trebuie să mai luăm în consideraţie şi legea de codare.
Întrucât codul provine din intercalarea a 2 coduri bipolare nr.1, în care bitul 1 este reprezentat
alternativ prin simbolurile +1 şi –1, rezultă că două stări asociate biţilor 1 ce sunt separate de un număr
impar de stări asociate biţilor 0, trebuie să producă simboluri de ieşire de semn contrar, de exemplu
stările 5 şi 8, care sunt separate prin secvenţe de zerouri de lungime impară (5-2-8, 5-2-4-2-8, etc.).
O dată cu apariţia ISDN-ului (Integrated Services Digital Network) au apărut coduri pentru
comunicaţii digitale full-duplex între centrala digitală şi abonat, folosind în acest scop perechile
torsadate din cablul simetric.
Folosind tehnologia FDDI (Fiber Distributed Data Interface) se pot realiza viteze de 100 Mbit/s.
Codul de linie utilizat trebuie să aibă următoarele proprietăţi:
să aibe componenta de c.c. nulă;
spectrul său sa fie limitat astfel ca radiaţia la frecvenţe înalte şi interferenţa în canalele
alăturate (perechile torsadate din imediata proximitate) să fie reduse ca intensitate;
componentele spectrale peste 30 MHz trebuie să fie sub un anumit nivel impus în SUA de
FCC (Federal Communications Comission)
să fie adecvat caracteristicilor canalului pentru a minimiza interferenţele intersimbol.
Primele tipuri de reţele LAN (Ethernet LAN) au fost gândite pentru comunicaţii de date şi foloseau
un cod bifazic L (Manchester).
O dată cu apariţia aplicaţiilor multi-media, s-au introdus două noi variante ce lucrează la 100 Mbps,
Fast Ethernet, reglementat de standardul IEEE 802.3u şi 100VG-AnyLAN definit de IEEE 802.12.
VG-AnyLAN nu mai utilizează protocolul CSMA/CD ci un protocol nou (Demand Priority media
access method), utilizând aceeaşi interfaţă de servicu pentru MAC (Medium Access Control).
56
CODURI DE LINIE
57
Capitolul II
În standardul 100BASE-T4 pentru transmisii cu 100 Mbps se folosesc 4 perechi torsadate categoria
3 şi o frecvenţă de clock maximă corespunzătoare lui 30 Mbps. Codul utilizat este cunoscut ca 8B6T.
Cuvintele de cod sunt echilibrate şi au cel puţin 2 tranziţii pentru o sincronizare uşoară .
Transmisia are loc la o viteză de 25 MHz, prin demultiplexarea pe 3 căi a semnalului codat, aşa
cum se arată în figura 2.43 şi conform relaţiei de mai jos.
61
100 = 25 MHz
83
Din cele 36 = 729 cuvinte de cod posibile au fost selecţionate 267 ce prezintă disparitate zero sau
1. Anularea componentei de c.c. se realizează prin inversarea alternativă a cuvintelor cu disparitate 1.
Cele 256 de cuvinte corespunzatoare octeţilor de intrare au rezultat prin eliminarea a 5 cuvinte din cele
267 care prezentau mai puţin de 2 tranziţii şi a 6 cuvinte ce începeau sau se terminau cu 4 zerouri,
evident pentru a nu avea probleme cu sincronizarea. Codul 8B6T este descris de tabelul II.6.
Tabelul II.6 Reguli de codare pentru 8B6T
58
CODURI DE LINIE
59
Capitolul II
II.18 Probleme
60
CODURI DE LINIE
Figura 2.46 Impuls parabolic Figura 2.47 Alt impuls parabolic Figura 2.48 Alt impuls
61
Capitolul II
II.10 Fie semnalele g(t) de tip lob de cosinus şi h(t) de tip impuls rectangular, definite mai jos.
⎧⎪ πt T ⎧⎪ T
A cos t ≤ A t ≤
g (t ) = ⎨ 2T 2 h(t ) = ⎨ 2
⎪⎩ 0 in rest ⎪⎩ 0 in rest
a. Determinaţi şi reprezentaţi semnalul s (t ) = g (t ) * h(t ) , unde * reprezintă operaţia de convoluţie
a celor două semnale.
b. Care este transformata Fourier a semnalului s(t)?
c. Ce formă de undă cunoscută reprezintă semnalul s(t)?
d. Determinaţi şi reprezentaţi d.s.p. a semnalizării antipodale echiprobabile cu impulsuri de tip s(t).
Indicaţie: dualitatea timp-frecvenţă conduce la înlocuirea produsului de convoluţie dintr-un
domeniu cu produsul transformatelor Fourier în celălalt domeniu.
II.11 Fie forma de undă s(t) rezultată din convoluţia a două impulsuri g(t) de tip cosinus ridicat cu
durata T, definite de rel.(2.99).
a. Care este durata impulsului s (t ) = g (t ) * g (t )
b. Care este numărul maxim de derivate continui şi egale cu zero la capetele intervalului de
definiţie şi care va fi viteza de scădere a componentelor spectrale cu frecvenţa pentru d.s.p. a
semnalizării antipodale echiprobabile cu impulsuri de tip s(t).
c. Determinaţi expresia analitică a semnalului s(t), transformata sa Fourier S(f) şi constanta de
normalizare a amplitudinii k.
II.12 Scrieţi matricea de tranziţie E a codurilor RZ şi PPM definite de diagramele de tranziţie din
figura 2.51 recurgând la transformata z .
62
CODURI DE LINIE
II.14 Fie impulsul cu simetrie pară care este egal cu zero în afara intervalului de definiţie, descris de
⎧ ⎛ 2 ⎛ t ⎞ 2 1 ⎛ t ⎞3 ⎞
⎪T ⎜ − ⎜ ⎟ + ⎜ ⎟ ⎟ t ∈ [0 ; T ]
⎪ ⎜ 3 ⎝T ⎠ 2⎝T ⎠ ⎟
g (t ) = ⎨ ⎝ ⎠
3
⎪T ⎛ t ⎞
⎪ ⎜2 − ⎟ t ∈ [T ;2T ]
⎩6 ⎝ T ⎠
a. Scrieţi expresiile lui g(t) pe intervalele [-T, 0} şi {-2T, T];
b. Verificaţi continuitatea la momentele t = T şi t = 2T pentru semnalul g(t) şi derivatele sale;
c. Determinaţi numărul de derivate care sunt continue şi egale cu zero la capetele intervalului de
definiţie;
d. Determinaţi viteza de scădere a componentelor spectrale pentru transformata Fourier a lui g(t) şi
d.s.p a semnalizării binare polare echiprobabile antipodale folosind forma de undă g(t).
e. Redefiniţi forma de undă astfel încât ea să fie definită pe intervalul [− T / 2, T / 2] .
II.16 Scrieţi matricea de tranziţie E a codului NRZ-M definit de diagrama de tranziţie din figura 2.15
făcând apel la transformata z .
II.17 Reprezentaţi grafic forma de undă g(t) definită anterior în problema IV.14 şi calculaţi constanta
sa de normalizare a amplitudinii.
63
Capitolul II
II.20 Fie semnalul cu răspuns parţial descris de Figura 2.52 Coder de linie
polinomul:
F(D) = A0 + A1 D + A2 D2 + A3 D3
a. Determinaţi coeficienţii A0 , A1 , A2 , A3 astfel incât F(D) să aibă un zerou dublu la frecvenţa
1/T şi unul simplu la frecvenţa 1/2T (T - perioada de bit);
b. Desenaţi circuitul;
c. Reprezentaţi grafic |F(f)| în banda [-1/T, 1/T].
64
Surse de semnal
65