Professional Documents
Culture Documents
ЦОС DSP
ЦОС DSP
4.1.
.
4.2. ().
4.3. .
4.4. MATLAB
4.1.
,
.
h(n)
x(n).
y(n).
,
x(n).
u0 ( n )
h( n )
u0 ( n m )
h( n m )
x( m )u0 ( n m )
x( m ) h( n m )
m
( m) 0( nm)
( m) ( nm)
y( n )
x
y( n ) ( n ) x( m) h( nm) y( n ) x( n ) * h( n )
m
:
= n-p
y( n)
y( n )
( n p ) ( p )
( p ) ( n p )
( m) ( nm)
p = n-m, m
h( n) x( n)
h( n ) x( n )
n=0
y( n )
( m) ( nm)
y( 0)
( m ) ( 0 m )
17.
1. .
2. .
.
3. -
.
1.
-.
, -.
, -
, ,
.
,
.
.
,
.6, -
,
, ,
.
- , ( -
).
.
,
,
.
,
,
,
,
(, ,
.).
2.
:
(), (),
() ()
() ().
(
)
,
.
24.
1. .
2.
.
3.
.
1.
-
,
().
.
M
y( n ) h( m ) x( n m )
m 0
, L =
+ 1 .
,
, L
,
.
,
-1
z
.
,
,
.
2.
L , 0
L. ,
1, 0,
0 1, .
,
.
,
0 p
p .p
(a )
0 K ( ) a 1
p a
.
h(m) x(0-m)
y(0)
= 2x1 = 2 .
y(1).
n = 1
y(1)
( m ) (1 m )
h(m) x(1-m)
y(1) = 2 2 + 2 x 1=6
- n = 2, 3, 4, 5 .
x(2-m)
x(5-m). n>5
.
.
, a , p , p a ,
p
.
p = p .
p pass
a attenuation -
,
- p
,
,
1 p K( ) . 1 p
( 0 a )
0 K .
( )
(),
.
h( 0 ) , h(1) ....... h( M )
.
, -
.
.
(pointh=0 pointx=0)
:
1. pointx
1 L
x(n);
2.
y(n);
3.
y( n ) y(.n ) h( m ) x( n m ) , m 0, 1,..., M
h(m) x(n-m) pointh
pointx, 1
L .
pointh h(0) ,
pointx x(n);
4. y(n) ;
1.
-
y(26).
y(25).
.................
pointx = 6 1
5
x(10)
x(26).
y(26) .3
15
y( 26) h( m ) x( 26 m ) h( 0 ) x( 26) h(1) x( 25) h( 2 ) x( 24) ... h(14) x(12) h(15) x(11)
m 0
4.2.
.
p1 p 2,
0 p1 p 2
.
0
a1
y(n)
.
:
Ly = Lh + Lx 1
Ly = 3 + 4 1 = 6
a2
a1 a 2 .
p1
p2
...........................
3. ...
,
.
,
.7
.
( . ).
4.3.
(
)
y( n ) h( n ) * x( n ) x( n ) * h( n )
-
h(n)
x( n ) * [h1( n ) h2 ( n ) ] x( n ) * h1( n ) x( n ) * h2 ( n )
()
a1 a 2 .
.
K ( ) a 1
- 0 p1
,
(.15),
.
,
N. N,
, N = (610)L,
l
N = 2 , l .
N
N1 N L. 1
N
H(k) (
).
,
.
.
p2
.
-
II
yi(n) = ifft(Yi(k)) ifft(Xi(k) H(k)) = ifft(fft(xi(n))
fft(h(n))).
y
y
[ x1( n ) x2 ( n ) ] * h( n ) x1( n ) * h( n ) x2 ( n ) * h( n )
4.4. MATLAB
i 0
,
,
i 1
A 20 lg
= filter(b, a, x);
:
b = [b0 b1 b2 ... bM ]
= [1 1 2 ... N ]
i(n)
Ap 20 lg(1 p ), dB
A 20 lg(1 p ), dB
y( n) bi x( ni ) ai y( ni )
(n)
N = 256
,
( ,
)
,
,
0.1
0
-1
-1
-0.1
-2
100 200
-2
100 200
100 200
100
200
300
400
500
100
200
300
400
500
- 22 ,
,
.
2
Aa
d
B
20
10
1
-2
2
25.
-
()
0.
1
0.
3
0.
5
0.
7
0.
9
-2
1. z .
2.
.
3. .
4. .
1. z .17 e o
-
,
.
,
.
,
-
() .
,
.
()
,
9
= 64 dB = 20 + 20 + 20
+3+1
4
3. ..
.
, ,
.
, .
() y(n)
n
x(n) ,
x(n-i) .
,
,
x(n-i) ,
bi , i 0,..., M,
Y( z )
X(z)
H (z)
B( z )
A( z )
i 0
N
bi z i
ai z i
kz
(z q )
y( n ) b0 x( n ) b1 x( n 1) ... bM x( n M ) bi x( n i )
N M
i 1
N
i 0
(z p )
i 0
() y(n-i)
, ..
.
qi pi
i 1
-
.
z
j
M
=e
j
K ( ) H ( e j ) ke j ( N M )
(e
qi )
i 1
N
(e p )
j
i 1
. z-
j
j
e , e - qi
j
e - pi qi pi
.
Qi i Pi i
.
j
ji
j
ji
e qi = Qie
e pi = Pie
i 1
N
i 1
K ( )
K ( ) k
i 1
N
i 0
i 1
Q e
Pe
, L
= +1 ,
.
,
-
M
j i
j
K ( ) K ( ) e ( ) ke j ( N M )
y( n ) bi x( n i ) ai y( n i )
(), -
().
,
. ,
,
ai
.
-
.
.
. -
27.
-
1. .
2.
.
3. .
4. .
1.
-
-,
. ..
.
:
1) j s-
-
z-.
;
2) s-
- z.
;
3)
-.
,
2. >
,
h(n) = kha(nt).
= t .
-
-
ha(t).
,
|()| = 0, s /2.
.
,
,
,
.
()
,
, = /t
Ki( )
.
( ) arg(k ) ( N M ) i i
i 1
K ( ) K ( ) k
i 1
= 30,
N = 5 .
- !
i 1
N
i 1
Pi Qi
.
0 ,
..
.
Qi
qi , .
,
Pi
pi
.
, -
, - .
= 0
,
, .
,
. p1
P1 .
(
- ).
P1 ,
q1
Q1,
j
-, e = q1 , Q1 = 0
.
q1
=
, ,
.
, q3
, ,
, Q3
,
.
,
,
,
.
.5
i
i
=
30: ) , ) , ) ;
N = 5: ) , ) , )
.
,
, .
-
,
( ).
-
.
.
26.
1. O
.
2.
(Butterworth).
3.
(Bessel).
4. .
5. .
1. O
,
,
,
,
.
-
()
.
.
3.
H(z)
Ha(s)
2 1 z 1
s
t 1 z 1
, - .
z- s-
j
z = e
s a j
2 1 e j
t 1 e j
j
2 1 e j e 2 2 e 2 e 2
2
j tg
j
j
t 1 e
t j 2 j 2
t 2
e 2
e e
,
s-
2
tg
t 2
t
2 arctg
2
,
0 ,
0 , ..
z
s-,
-
.
,
-
.
s () z ()
.
q1,
.
q1
.
1 .
-
:
fp = 1000 Hz, f = 2000 Hz, Ap = 1 dB
(
) A = 60 dB.
2. ...
0
-5
-50
-100
2. ... .
H(z).
|H(z)|
z-,
,
M
Y( z )
X(z)
H (z)
B( z )
A( z )
bi z
i 0
N
(z q )
ai z i
kz
i 0
N M i 1
N
(z p )
i
i 1
z = qi , |H(z)| = 0
z-, z = pi
|H(z)|=
- z-.
z-
|H(z)| ,
.
>3.
.
-
- .
V
0= /2.
1
0.5
0
0.5
-0.5
-1
-1
-15
0
0.5
0
0
10
N = 11:
) ; )
;
) ; )
().
,
o
-.
.
.
,
-
.
-
.
4. ...
0
-50
-5
-100
-2
-10
-10
0
4.
( )
.
q1 q2
-
-
.
)
,
,
.
,
.
,
- p
-
p
- . ,
-,
p .
4.
:
.
-2
-4
0
0
1
0.2
0.1
0
-0.1
0.5
0
0
10
10
N = 7:
) ) ; )
; ) ;
) ;
) .
K a ( )
1
1 j
H a(s)
1
1 s
= RC e .
0.5
0
0.5
-0.5
-1
-1
-2
28.
1.
,
.
2.
.
3. .
28.1.
MATLAB, .
MATLAB
.
MATLAB
,
,
buttord, butter
;
cheb1ord, cheby1
I
;
cheb2ord, cheby2
II
;
ellipord, ellip
.
- .
,
.
:
Fp -
,
Fa -
,
fs - ,
Ap [dB] -
,
Aa [dB] -
.
fp = 2*Fp/fs fa = 2*Fa/fs.
:
[N, wc] = buttord(fp, fa, Ap, Aa);
[b, a] = butter(N, wc);
N , wc
, b
.
(
)
.
.
,
.
,
fp=1000 Hz.
.
-
,
.
.
N = 7: ) ; )
; ) ; )
.
.
.
.
,
-
.
5. ... >
H(z)
1
2 1 z 1
1
t 1 z 1
2
2 f s 1
t
1
1
H(z)
z 1
1 k
1 k 1
1
z
1 k
1 k
b0 b1
1
1 k
H ( z ) b0
1 k
1 k
1 z 1
z 1 B( z )
; H ( z ) b0
1
1 a1 z
z a1 A( z )
.
,
,
. q1= -1
= .
0
= . p1= - a1 > 0.
-50
-5
-100
2
0
-2
-4
0
1
2 2 cos
1 k 1 2a1 cos a12
0.2
0.1
0
-0.1
K ( ) H ( e j )
0.5
0
0
10
10
N = 5: ) ) ; )
; ) ; ) ; ) .
.
(
)
.
.
high:
[b, a] = butter(N, wc, high);
Fp
Fa,
,
,
,
stop:
[b, a] = butter(N, wc, stop);
F = [ 2000 2500 ], F = [ 1500 3000 ].
I
:
[N, wc] = cheb1ord(fp, fa, Ap, Aa);,
[b, a] = cheby1(N, Ap, wc);
II
:
[N, wc] = cheb2ord(fp, fa, Ap, Aa);,
[b, a] = cheby2(N, A, wc);
A
.
,
Ap Aa:
[N, wc] = ellipord(fp, fa, Ap, Aa);,
[b, a] = ellip(N, Ap, A, wc);
28.2.
freqz .
[H, w] = freqz( b, a, Nf );
b
b = [b0
b1 b2 ... bM ] , = [1 1 2 ... N ].
H Nf ,
w, Nf
,
[0 ].
[H, f ]=freqz( b, a, Nf, fs );
fs e ,
f .
abs K = abs( H );
angle phi = angle( H );.
grpdelay [gd, w] = grpdelay( b, a, Nf );
impz
impz( b, a, Ns )
Ns .
-
,
,
.
.
-
.
,
.
29. ()
1. .
2. .
3. .
4. .
29.1.
()
,
, ..
.
- , .
,
,
,
, -
90.
-
,
, ,
,
.
-
-
-
.
-
-
.
29.2.
K ( )
,
,
pi z 1
1
i 1 1 pi z
pi ri e ji i- ,
M
H ( z )
pi ri e ji
.
30.
1. .
2.
.
3. .
4. .
30.1.
.
-
y ( n ) a 2 ( x( n ) y ( n 2) )
a1 ( x( n 1) y ( n1) ) x( n2)
.
,
. ,
- ,
M+N+1 .
30.2.
.
.
,
km ,
m = 1,,M,
.
roots
q = roots ( b ); -
p = roots ( a ); -
b a
unstableFlag = any(abs(roots(a))>1)
abs
.
-
zplane zplane( b, a )
28.3. >
%
fs = 8000;
Fp = 1000; Fa = 1500;
Ap = 1; Aa = 50; %
%
fp = 2*Fp/fs; % 0 < fp < 1
fa = 2*Fa/fs; % 0 < fa < 1
%
[N,wc] = ellipord(fp,fa,Ap,Aa);
[b,a] = ellip(N,Ap,Aa,wc);
%
[H,f] = freqz(b,a,500,fs);
KL = 20*log10(abs(H) + eps); % .
plot(f,KL), grid
axis([0 fs/2 -80 1])
xlabel('F, Hz')
ylabel('K(f), dB')
title(['Frequency response @ elliptic
approximation, order N = '
int2str(N)])
%
figure(2)
zplane(b,a)
title(['Pole-Zero
plot
@
elliptic
approximation, N = ' int2str(N)])
Hi( z)
H i (e j )
e j ( )
-10
-20
K(f), dB
-30
-40
-50
-60
-70
-80
500
1000
1500
2000
F, Hz
2500
3000
3500
0
-1
-2
1 ri e j ( i )
1 ri e j ( i )
Ki ( ) H i (e j )
| 1 ri e j ( i ) |
| 1 ri e j ( i ) |
, K i ( ) 1
.
, ,
.
-
.
II p2 p1 ,
1
1
H (z)
p1 z
p z
1 1
1
1 p1 z 1 p1 z
,
, m = 1,...,M.
Y( z )
e
H( z) H M ( z)
(z)
,
m-
Ym ( z )
H m( z )
,
H 0( z )
Y0( z )
X 0( z )
X m( z )
.
,
,
km.
p1 p1 ( p1 p1 ) z 1 z 2
1 ( p1 p1 ) z 1 p1 p1 z 2
a 2 a1 z 1 z 2
1 a1 z 1 a 2 z 2
a2 p1 p1
a1 ( p1 p1 )
.
-
.
-
.
29.3.
1
.
p r e ji ,
i
-3
K(f), dB
4000
j
pi e j
j 1 pi e
1 pi e j
1 pi e j
pi z 1
1 pi z 1
- - ,
m -
- m-1.
-
, .
z 1 pi,
..
-4
-5
-6
qi
-7
-8
0
200
400
600
F, Hz
800
1000
1
1
1
j i e j i
pi ri e
ri
, ,
,
.
X m 1( z ) X m ( z )
,
.
.
, ,
- ,
.
Imaginary Part
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
X m 1( z ) X m ( z ) k m z 1Ym 1( z )
X m ( z ) k m z 1 H m 1( z ) X m 1( z )
X m1( z ) (1 km z 1H m1( z ) ) X m( z )
X m1( z )
-1
-1
-0.5
0
Real Part
0.5
X m( z )
1 km z 1H m1( z )
,
.
.
29.4.
.
Ym ( z )
X ( )
K ( )
( )
( )
( e j )
Ey
1
2
1
2
( )
( )
d E x
,
.
M ( ) 0
H m( z )
( )
Y( ) X
( )
1 km z 1 H m1( z )
X m( z )
Y( )
.
Y K
X
,
km z 1 H m1( z )
km z 1H m1( z )
1 km z 1H m1( z )
- (m = 1),
H0(z) = 1
H1( z )
k1 z 1
1 k1 z 1
: II .
m = 2
H 2( z )
k 2 z 1 H 1( z )
1 k 2 z 1 H 1( z )
k1 z 1
k2 z
1 k1 z 1
1
1 k1 z
1 k2 z
1 k1 z 1
1
k 2 k1 (1 k 2 ) z 1 z 2
1 k1 (1 k 2 ) z 1 k 2 z 2
,
a1 k1 (1 k 2 )
0
-2
-4
-6
-8
0
0.5
1.5
2.5
: ) I ; )
II ; ) III .
a2 k 2
30.2.
9 :
) k 0
m
.
,
-1
z .
m-
,
;
k m 1 .
km z 1H m1( z )
H m( z )
1 km z 1H m1( z )
, H m ( z ) 1 X m ( z ) Ym ( z )
m ,
H
1
m( z)
m- .
-, km = 1
km = -1.
30.4.
.
1 km2
1 km2
km.
km = 0 ,
.
, ,
. k m 1
,
.