Documente Academic
Documente Profesional
Documente Cultură
Convoluia secvenelor
Lucrarea 4
Convoluia Secvenelor
n aceast lucrare se vor trata sisteme discrete, liniare, invariante n timp (SDLIT),
care sunt complet caracterizate n domeniul timp de rspunsul la impuls.
Exist dou metode de baz, folosite n analiza rspunsului sistemelor discrete liniare
la un semnal de intrare dat. Una se bazeaz pe obinerea soluiei din ecuaia intrare ieire
care caracterizeaz sistemul, care are, n general, forma
N
k 1
k 0
yn a k yn k bk xn k
unde ak i bk sunt parametri constani care caracterizeaz sistemul i independeni de xn i
yn . Relaia de mai sus se numete ecuaie cu diferene a sistemului discret, liniar, invariant
n timp.
A doua metod se bazeaz pe folosirea rspunsului la impuls al sistemului. Ca o
consecin a proprietilor de liniaritate i invarian n timp, rspunsul sistemului la un
semnal de intrare arbitrar poate fi exprimat n funcie de rspunsul su la impuls cu ajutorul
sumei de convoluie. Pentru determinarea rspunsului unui sistem liniar la un semnal de
intrare dat, acesta se descompune ntr-o sum de semnale elementare componente i, folosind
proprietatea de liniaritate a sistemului, rspunsurile sistemului la semnalele elementare se
sumeaz pentru a forma rspunsul total
y n x h n h x n
x k h n k
h h n , n 0, L 1
x x n , n 0, N 1
(4.1)
L 1
k 0
k 0
y n x h n h x n x k h n k h k x n k
(4.2)
y y n , n 0, N L 2
X ( z ) x[k ] z k , cu grad X ( z ) N -1
k 0
L 1
H ( z ) h[k ] z k , cu gradH ( z ) L -1
i 0
34
(4.3)
PNS Lucrarea 4
Convoluia secvenelor
h h n , n 0, N 1
x x n , n 0, N 1
(4.4)
(4.5)
N 1
k 0
k 0
(4.6)
n k , pentru n k
[n k ]( N ) n k modulo N
n k N , pentru n k
Dac secvenele sunt reprezentate (ntr-o perioad) prin polinoamele:
N 1
X ( z ) x[k ] z k , cu grad X ( z ) N -1
k 0
N 1
H ( z ) h[k ] z k , cu grad H ( z ) N -1
i 0
(4.7)
g g n , n 0, L 1 , cu L N
d d n , n 0, N 1
rdg [n ]
rgd [n ]
d [k ]g [k n ]
g[k ]d [k n ]
d [k n]g[k ],
g[k n ]d [k ]
35
(4.8)
PNS Lucrarea 4
Convoluia secvenelor
unde
N 1
N 1
k 0
k 0
(4.9)
Se bazeaz pe proprietatea:
def
N 1
x[n]e
2 k n
N
n 1
H k TFD h[n ] n, k 0, N 1
2se calculeaz: Y k X k H k k 0, N 1
3se calculeaz: y[n ] TFDI Y k
def
2 k n
j
1 N 1
N
[
]
Y
k
e
.
N k 1
Dup cum se poate observa din relaiile (4.5) i (4.6), pentru efectuarea direct a
convoluiei ciclice ntre dou secvene cu coeficieni reali, sunt necesare N 2 nmuliri reale i
N ( N 1) adunri reale.
Eficiena metodei depinde de eficiena algoritmului rapid pentru calculul TFD i TFDI
utilizat n etapele 1 i 3. n cazul calculului convoluiei cu ajutorul TFD vom avea un numr
de 8 N 2 4 N nmuliri ( 2 2N 2 la pasul 1, 4N la pasul 2 i 2 2N 2 la pasul 3).
TFD se poate realiza i utiliznd algoritmi rapizi. Dac N este de forma 2 m , pentru
calculul TFD n N puncte a unei secvene este nevoie de 2 N log 2 N nmuliri reale i
3 N log 2 N adunri reale. Vor fi deci necesare:
36
PNS Lucrarea 4
Convoluia secvenelor
inverse TFDI.
n total, utiliznd TFD rapid, se vor efectua N (6log 2 N 4) nmuliri i
N (9log 2 N 4) adunri reale.
De exemplu pentru N 210 avem:
- 220 nmuliri i 220 adunri reale prin efectuarea direct a convoluiei;
- 8 220 4 210 2 23 nmuliri reale prin utilizarea TFD;
- 210 (6 10 4) 216 nmuliri i 210 (9 10 2) 216,5 adunri reale prin utilizarea
TFD Rapide.
4.2. Algoritmul Cook-Toom pentru calculul convoluiei liniare
Y ( z)
N L2
i 0
Y i
N L2
z j
j 0, j i
i j
unde produsul se face dup toi divizorii lui N ( d / N reprezint toi divizorii lui N inclusiv 1
i N).
Algoritmul Winograd cuprinde, principial, trei etape:
1se calculeaz reziduurile polinoamelor X(z) i H(z):
X ( k ) ( z ) RM
H ( k ) ( z ) RM
(z)
(z)
X ( z ) X ( z )mod M
H ( z ) H ( z )mod M
(k )
( z ), k 0, K 1
(k )
( z ), k 0, K 1
Y ( k ) ( z ) X ( z ) H ( z )mod M ( k ) ( z ) RM
37
( z)
(k )
( z ) H ( k ) ( z ) , k 0, K 1
PNS Lucrarea 4
Convoluia secvenelor
3se calculeaz polinomul convoluiei Y(z) din reziduurile sale Y(k)(z), pe baza
teoremei chineze a resturilor:
K 1
Y ( z ) Y ( k ) ( z )S ( k ) ( z ) mod M ( z )
k 0
(k )
unde S ( z ) pot fi gsite tabelate pentru diveri N (valorile coeficienilor acestor polinoame
pot fi stocate ntr-o memorie de date).
Numrul minim de multiplicri necesare pentru a realiza o convoluie ciclic de
ordinul N, este 2 N D( N ) , unde D( N ) reprezint numrul de divizori ai lui N.
5. Aplicaii rezolvate
Exemplul 1. S se calculeze convoluia liniar ntre secvenele:
x x[0], x[1], x[2] X ( z ) x[0] x[1]z x[2]z 2 ,cu N 3
y y[0], y[1], y[2], y[3] x[0]h[0], x[0]h[1] x[1]h[0], x[1]h[1] x[2]h[0], x[2]h[1]
Folosind reprezentrile polinomiale X (z ) i H (z ) ale secvenelor, rezult:
y[0] 1
y[1] 3
y[2] 5
y[3] 3
38
PNS Lucrarea 4
Convoluia secvenelor
N 1
adic y 7, 5.
Observaie. Dac cele dou secvene au lungimi mai mici dect numrul de puncte n care
trebuie calculat convoluia circular, L, secvenele vector x i h se completeaz cu zerouri
pn la lungimea dorit.
Exemplul 4. S se calculeze corelaia liniar pentru secvenele:
d d [0], d [1] i g g [0], g[1], g[2] cu N 2, L 3 .
39
PNS Lucrarea 4
Convoluia secvenelor
pentru n 2, 1,0, 1 ,
astfel
cu
rdg [ 1] d [0]g[1] d [1]g[2] , rdg [0] d [0]g [0] d [1]g [1] , iar rdg 1 d [1]g[0] .
Similar
1
rgd rgd [n ] g[k n ]d [k ] g[n ]d [0] g[1 n ]d [1] , pentru n 1,0, 1,2 ,
astfel
k 0
cu
rgd [0] g [0]d [0] g[1]d [1] , rgd 1 g [1]d [0] g[2]d [1] , iar rgd [2] g[2]d [0] .
De exemplu, pentru secvenele d 1,1 i g 1,2,3 rezult:
cu
rdg [1] d [1]g[0] d [2]g[1] d [0]g[2] , iar rdg [2] d [2]g[0] d [0]g[1] d [1]g[2] i
rgd rgd [0], rgd [1], rgd [2],
cu
rgd [1] g[1]d [0] g[2]d [1] g[0]d [2] , iar rgd [2] g[2]d [0] g[1]d [1] g[0]d [2] .
Se observ c se verific relaia rdg [n ] rgd [ n ]( N ) rgd [ N n ] , adic
rdg [0] rgd [3 0](3) rgd [0] , rdg [1] rgd [3 1](3) rgd [2] i rdg [2] rgd [3 2](3) rgd [1] .
40
PNS Lucrarea 4
Convoluia secvenelor
z ( z 1)
z ( z 1)
( z 1)( z 1)
Y (1)
Y (1)
1
2
2
2
x[0]h[0] ( x[0]h[1] x[1]h[0]) z x[1]h[1]z
Observaie. Algoritmul necesit doar 3 multiplicri: X (0) H (0), X (1) H (1) i X (1) H (1) i 3
adunriscderi: x[0] x[1], Y (1) Y (0) Y ( 1) , considernd c (h[0] h[1]) poate fi
precalculat. Calculul direct al convoluiei ar necesita 4 multiplicri i o adunare.
Exemplul 6. S se realizeze descompunerea polinomului M ( z ) z N 1 n factori de
polinoame ireductibile.
Rezult: M ( z ) z N 1 M ( d ) ( z ) , produsul fiind efectuat pentru toi divizorii d ai
d N
( z Wdi ) cu
i d ,( i , d ) 1
Wd e
2 j
41
PNS Lucrarea 4
Convoluia secvenelor
M ( 6) ( z ) ( z W61 )( z W65 ) z 2 z 1 .
C i ( z ) RM ( i ) ( z ) C ( z ) C ( z ) mod M (i ) ( z ), i 0, K
C ( z ) C (i ) ( z )n (i ) ( z )m ( i ) ( z ) mod M (z )
i 0
unde
K
M ( z ) M (i ) ( z )
i 0
m ( z ) M ( z ) M (i ) ( z )
iar n ( i ) ( z ) este polinomul soluie a ecuaiei:
n (i ) ( z ) m (i ) ( z ) N (i ) ( z ) M (i ) ( z ) 1
sau, echivalent, n ( i ) ( z ) rezult din relaiile:
n ( i ) ( z )m ( i ) ( z ) 1 mod M ( i ) ( z )
(i )
y[0], y[1], y[2], y[3] x[0], x[1], x[2], x[3] h[0], h[1], h[2], h[3]
care este reprezentat polinomial prin:
Y ( z ) X ( z ) H ( z )mod z 4 1
unde
42
PNS Lucrarea 4
Convoluia secvenelor
Y (1) ( z ) X (1) ( z ) H (1) (z) mod M (1) ( z ) (x[0] x[1] x[2] x[3])(h[0] h[1] h[2] h[3])
Y (2) ( z ) X (2) ( z ) H (2) (z) mod M (2) ( z ) (x[0] x[1] x[2] x[3])(h[0] h[1] h[2] h[3])
Y (4) ( z ) X (4) ( z ) H (4) (z) mod M (4) ( z ) (x[0] x[2])(h[0] h[2]) ( x[1] x[3])(h[1] h[3])
6. Aplicaii propuse
1. Se dau secvenele:
1, dac n 0,1, 2
x n
0, n rest
5 n , dac n 0,1, 2,3, 4
h n
n rest
0 ,
43
PNS Lucrarea 4
Convoluia secvenelor
3. Se dau secvenele:
44