You are on page 1of 52

EDA-Group

FIR system design

12/4/2014

FIR system design


Authors: Ha Van Phu
Phuhvk54@edabk.org

Rev. 0.1
December 4, 2014

EDA-Group

FIR system design

4.12.2014

This Page is Intentionally Blank

http://edabk.org/

Rev 0.1

EDA-Group

FIR system design

4.12.2014

Lch s thay i
Rev.
0.0
0.1

Date
04/11/14
01/12/14

http://edabk.org/

Author
Ha Van Phu
Ha Van Phu

Description
First Draft

Rev 0.1

EDA-Group

FIR system design

4.12.2014

Contents
1 ......................................................................................................................................................................... 4
GII THIU .................................................................................................................................................... 4
1.1 M U ............................................................................................................................................... 4
1.1.1
B lc FIR .................................................................................................................................. 5
1.2 CC THNG S CA B LC ................................................................................................................. 5
1.2.1
Ch tiu k thut ......................................................................................................................... 5
1.2.2
Mt s thng s nh gi b lc: ............................................................................................... 6
1.3 B LC FIR PHA TUYN TNH ............................................................................................................... 6
2 ......................................................................................................................................................................... 9
CC PHNG PHP TNG HP B LC (FIR) ................................................................................... 9
2.1
2.2
2.3

PHNG PHP CA S.......................................................................................................................... 9


PHNG PHP LY MU TN S ........................................................................................................ 23
PHNG PHP LP ............................................................................................................................. 32

3 ....................................................................................................................................................................... 37
CC KIN TRC B LC FIR ................................................................................................................. 37
3.1
3.2
3.3

KIN TRC DIRECT............................................................................................................................. 37


KIN TRC CASCADE ......................................................................................................................... 44
KIN TRC LATTICE ........................................................................................................................... 48

http://edabk.org/

Rev 0.1

EDA-Group

FIR system design

4.12.2014

1
Gii thiu
1.1 M u
1.2
Mt b lc s l mt h thng tuyn tnh bt bin trong min bin s n c biu din
bng phng trnh:
N

k 1

k 0

y (n) ak y (n k ) bk x(n k )

(1.1.1)

Trong min Z, h thng c c trng bi hm truyn H(Z):


M

H (Z )

b z

k 0
N

1 ak z

(1.1.2)
k

k 1

T phng trnh (1.1.2), da vo vic thay i gi tr , , chng ta c th xc nh c


tnh p ng tn s ca h thng.
mt h thng thc hin c v mt vt l th n phi nhn qu v n nh. Quan h
gia u vo, u ra v p ng xung ca h thng phi tha mn iu kin sau:

k 0

k 0

y (n) bk x(n k ) h(k ) x(n k )

| h ( n) |
n 0

Cc quan h ny ni rng chiu di ca p ng xung () rt quan trng, cc h s ()


c trng cho h thng.
V th chng ta c th phn loi cc h thng thnh hai loi ln ty theo chiu di ca p
ng xung (). Hai loi ny nh sau:

Loi th nht: H thng c c trng bi p ng xung c chiu di hu hn. N


c gi l h thng c p ng xung chiu di hu hn (FIR), tc l () ch khc
0 trong mt khong c chiu di hu hn N (t 0 n 1).

http://edabk.org/

Rev 0.1

EDA-Group

FIR system design

4.12.2014

Loi th hai: H thng c c trng bi p ng xung c chiu di v hn. H


thng c gi l h thng c p ng xung chiu di v hn (IIR), tc l ()
khc 0 trong mt khong v hn t 0 n

Ti liu ny ch cp vo vic thit k b lc s c p ng xung chiu di hu hn


(FIR).

1.2.1 B lc FIR
Mt b lc FIR c m hnh ha bng phng trnh:
M 1

y (n) bk x n k

(1.1.3)

k 0

Hoc, tng ng, ta c hm p ng ca b lc FIR trong min Z (System function):


M 1

H ( z ) bk z k

(1.1.4)

k 0

V hm p ng ca b lc FIR trong min ri rc:


b ,
h( n) n
0,

0 n M 1
otherwise

(1.1.5)

Trong :

M: di ca b lc FIR

, : H s ca b lc

1.3 Cc thng s ca b lc
1.3.1 Ch tiu k thut

Figure 1. Tham s ca b lc. a) tnh theo gi tr tuyt i. b) tnh theo gi tr tng


i so vi 1+

Tn s ct ( )

http://edabk.org/

Rev 0.1

EDA-Group

FIR system design

Tn s gii hn (bin tn) di chn ( )

Tn s gii hn (bin tn) di thng ( )

Di thng (0, )

Di chuyn tip ( , )

Di chn ( , )

gn di thng 1

gn di chn 2

4.12.2014

K hiu:

p: passband

s: stopband

1.3.2 Mt s thng s nh gi b lc:


C hai thng s nh gi b lc:

1 1
)[dB]
1 1

Rp: gn di thng (Passband ripple): R p 20log(

As: gn di chn (Stopband ripple): As 20log(

2
)[dB]
1 1

Biu din bng hnh nh:

Figure 2 Passband ripple and Stopband attenuation

1.4 B lc FIR pha tuyn tnh

http://edabk.org/

Rev 0.1

EDA-Group

FIR system design

4.12.2014

iu kin b lc FIR c pha tuyn tnh

() i xng: () = ( 1 )

() phn i xng:
o () = ( 1 ) vi chn
o () = ( 1 ) v h(

M 1
) 0 vi l
2

Phn loi b lc pha tuyn tnh:


M l (odd)
Loi 1
Loi 3

h(n) i xng
h(n) phn i xng

M chn (even)
Loi 2
Loi 4

p ng tn s:
Loi 1:

H1 (e j ) e

M 1
2

M 3

2
M

1
M 1
h(
) 2 h(n) cos (
n)

2
2
n 0

(1.3.1)

Loi 2:
H 2 (e j ) e

http://edabk.org/

M 1
2

M
1
2

2 h(n) cos (
n 0

Rev 0.1

M 1
n)
2

(1.3.2)

EDA-Group

FIR system design

4.12.2014

Loi 3:
H 3 (e j ) e

j [

M 1
]
2
2

M 3
2

2 h(n)sin (
n 0

M 1
n)
2

(1.3.3)

M 1
n)
2

(1.3.4)

Loi 4:
j

H 4 (e ) e

http://edabk.org/

j [

M 1
]
2
2

M
1
2

2 h(n)sin (
n 0

Rev 0.1

EDA-Group

FIR system design

4.12.2014

2
Cc phng php tng
hp b lc (FIR)
2.1 Phng php ca s
j

Gi s cn thit k b lc c p ng tn s mong mun H d (e ) tha mn cc ch tiu k


thut. Khi :

1 e j ,| | c
H d (e )
c | |
0,
j

hd (n)

1
2

(e j )e j n d

(2.1.1)
(2.1.2)

h d (n)

1 c
j jn
1 e e d
2
c

h d (n)

Tuy nhin, trong trng hp l tng,


chng ta dch i

sin[c (n )]
(n )

hd (n) c chiu di v hn v khng nhn qu nn

M 1
mu v nhn vi hm ca s w(n)
2
h(n) hd (n

M 1
) w(n)
2

(2.1.3)

Trong :
w(n) 0, n 0, n ( M 1)

2.1.1 Cc bc thit k

http://edabk.org/

Rev 0.1

EDA-Group

FIR system design

4.12.2014

1. Cho cc ch tiu k thut: 1 , 2 , ,


2. Chn loi ca s v tnh () vi chiu di M, tm i xng ti ( 1)/2
3. Tnh cc h s () ca b lc l tng, sau tnh cc h s () nh tr v
nhn vi hm ca s ()
4. So snh ( ) vi cc ch tiu k thut. Nu khng tha mn, tng M v quay li
bc 2

2.1.2 Cc tham s ca ca s ph
1. B rng ca nh trung tm
2. T s ca bin ca nh th cp u tin v bin ca nh trung tm
Trong thc t, t s ny thng c nh gi theo dB bng cch nh sau:
20 log10

W(e jx )
[dB]
W(e j0 )

Trong x l tn s gia nh th cp u tin ca ca s ph


p ng tn s ca ()
Ngi ta cng nh gi ca s ph

(2.1.4)

H(e j ) , W(e js ) l

W(e j ) bng dB nh sau:

G(e j ) 20 log10

W(e j )
W(e j0 )

(2.1.5)

2.1.3 Cc loi ca s
Ca s ch nht
Trong min n, ca s ch nht c nh ngha nh sau:

0 n M 1

1,
w(n)
0,

otherwise

(2.1.6)

p ng tn s ca b lc:
M
) j(M 1)
2
W(e )
e 2

sin( )
2
j

http://edabk.org/

sin(

Rev 0.1

(2.1.7)

10

EDA-Group

FIR system design

4.12.2014

Figure 3 Ca s ch nht. Vi M = 45

Ca s tam gic (Bartlett window)


2n
M 1 ,

2n

w(n) 2
,
M

0,

http://edabk.org/

Rev 0.1

0n

M 1
2

M 1
n M 1
2
otherwise

(2.1.8)

11

EDA-Group

FIR system design

4.12.2014

Figure 4 Ca s tam gic, vi M = 45

Ca s Hanning

http://edabk.org/

Rev 0.1

12

EDA-Group

FIR system design

2n

)],
0.5[1 cos(
w(n)
M 1
0,

0 n M 1

4.12.2014

(2.1.9)

otherwise

Figure 5 Ca s Hanning, vi M = 45

Ca s Hamming
Ca s Hamming gn ging ca s Hanning. N ch khc mt phn nh b gin on
(Xem hnh)

2n

)],
0 n M 1
0.54 0.46 cos(
w(n)
M 1
0,
otherwise

http://edabk.org/

Rev 0.1

(2.1.10)

13

EDA-Group

FIR system design

4.12.2014

Figure 6 Ca s Hamming, vi M = 45

Ca s Blackman
Loi ca s ny gn ging vi hai ca s trn. Tuy nhin, n cha thm mt phn t lm
hai bin ca ca s tin v 0 hi ha hn.

2n
4n

)] 0.08cos(
),
0.42 0.5cos(
w(n)
M 1
M 1
0,

http://edabk.org/

Rev 0.1

0 n M 1

(2.1.11)

otherwise

14

EDA-Group

FIR system design

4.12.2014

Figure 7 Ca s Blackman, vi M=45

Ca s Kaiser
2

2n

I0 1 1

M 1

w(n)
,
I0 []

http://edabk.org/

Rev 0.1

0 n M 1

(2.1.12)

15

EDA-Group

FIR system design

4.12.2014

Trong ,

I0 [] : l hm Bessel bin dng loi mt bc khng

: L gi tr c th thay i thay i t l gia v

Figure 8 Ca s Kaiser, vi M = 45
t c hiu qu cao nht khi thit k b lc FIR pha tuyn tnh, gi tr phi chn
trong khong t 4 n 9:
49

Chun ha rng di chuyn tip f

s p
2

, ta c th tnh bc ca b lc:

A s 7.95
1
14.36f

(2.1.13)

Tnh ton tham s :

A s 50
0.1102(A s 8.7),
Parameter
0.4
0.5842(A s 21) 0.07886(A s 21), 21 A s 50

Tng kt:

http://edabk.org/

Rev 0.1

16

EDA-Group

FIR system design

4.12.2014

Chng ta c bng tng kt sau:


Table 1 Tng kt cc tham s ca b lc
rng di chuyn tip

Tn ca s

Gi tr c lng

Gi tr chnh xc

Suy hao di
chn nh nht

Ca s ch nht

4
M

1.8
M

21 dB

Ca s tam gic

8
M

6.1
M

25 dB

Hanning

8
M

6.2
M

44 dB

Hamming

8
M

6.6
M

53 dB

Blackman

12
M

11
M

74 dB

2.1.4 Thit k trn Matlab


Trn Matlab cung cp cc hm to ca s nh sau:
Ca s ch nht: w=boxcar(M)
Ca s tam gic: w=triang(M)
Ca s Hanning: w=hanning(M)
Ca s Hamming: w=hamming(M)
Ca s Blackman: w=blackman(M)
Ca s Kaiser: w=kaiser(M,beta)
u tin, chng ta s dng MATLAB thit k th cng b lc FIR da vo phng
php ca s. Sau , chng ta s tm hiu cc hm c sn ca Matlab gip thit k b
lc nhanh hn.
Trc khi thit k b lc, chng ta to hai hm: Hm p ng xung l tng
hm to p ng ln (magnitude response)

Hd (n) v

H(e j ) , p ng pha (phase response) ()

, v p ng tr nhm (group delay response) (Tm thi tham s ny cha c quan tm


trong ti liu ny).

http://edabk.org/

Rev 0.1

17

EDA-Group

FIR system design

4.12.2014

Hm 1:
function hd = ideal_lp(wc,M);
% Ideal LowPass filter computation
% [hd] = ideal_lp(wc,M)
% hd = ideal impulse response between 0 to M-1
% wc = cutoff frequency in radians
% M = length of the ideal filter
alpha = (M-1)/2;
n = [0:1:(M-1)];
m = n - alpha + eps; % add smallest number to avoid divide by zero
hd = sin(wc*m)./(pi*m);

Hm 2:
function [db,mag,pha,grd,w] = freqz_m(b,a);
% Modified version of freqz subroutine
% -----------------------------------% [db,mag,pha,grd,w] = freqz_m(b,a);
% db - Relative magnitude in dB computed over 0 to pi radians
% mag - absolute magnitude computed over 0 to pi radians
% pha = Phase response in radians over 0 to pi radians
% grd = Group delay over 0 to pi radians
% w = 501 frequency samples between 0 to pi radians
% b = numerator polynomial of H(z) (for FIR: b=h)
% a = denominator polynomial of H(z) (for FIR: a=[1])
[H,w] = freqz(b,a,1000,'whole');
H = (H(1:1:501))'; w = (w(1:1:501))';
mag = abs(H);
db = 20*log10((mag+eps)/max(mag));
pha = angle(H);
grd = grpdelay(b,a,w);

Gii thch nh ngha:


Relative magnitude: Chun ha trong deciben p ng ln theo gi tr ln nht ca p
| H(e j ) |
)
ng ln tuyt i: db 20 log10 (
| H(e j ) |max
absolute magnitude: p ng ln tuyt i

| H(e j ) |

b: a thc t s ca hm. Trong FIR, chng ta hiu l p ng xung h(n)


a: a thc mu s ca hm. Trong FIR, chng ta hiu l a thc mu s bc 0, tc a=[1]
Tip theo, chng ta i vo mt s v d thit k b lc FIR
V d 1:
Thit k b lc s FIR thng thp vi thng s sau:

http://edabk.org/

p 0.2,

R p 0.25dB

s 0.3,

A s 50dB

Rev 0.1

18

EDA-Group

FIR system design

4.12.2014

Cch lm: u tin, da vo suy hao di chn l 50dB, bng 1, ta chn c hai loi
ca s ph hp l ca s Hamming v Blackman. Chng ta s chn loi ca s Hamming
v c rng di chuyn tip nh hn. Mc d, chng ta s khng s dng thng s R p
trong thit k nhng chng ta s kim tra gi tr ny xem c tha mn khng. Di y l
b lc FIR tha mn yu cu bi c vit bng MATLAB code.
% design a digital FIR filter LPF:
% wp=0.2pi, ws=0.3pi, Rp=0.25dB, As=50dB
% using Hamming window
wp = 0.2*pi; ws = 0.3*pi;
tr_width = ws-wp; % transition width
M = ceil(6.6*pi/tr_width) + 1; % M=67
n = [0:1:M-1];
wc = (ws+wp)/2; % Ideal LPF cutoff frequency
hd = ideal_lp(wc,M);
w_ham = (hamming(M))';
h = hd.*w_ham;
[db,mag,pha,grd,w] = freqz_m(h,[1]);
delta_w = 2*pi/1000;
Rp = -(min(db(1:1:wp/delta_w+1))); % Actual Passband Ripple
As = -round(max(db(ws/delta_w+1:1:501))); % Min Stopband attenuation
%Plot
subplot(1,1,1);
subplot(2,2,1); stem(n,hd); title('Ideal Impulse Response');
axis([0 M-1 -0.1 0.3]); xlabel('n'); ylabel('hd(n)');
subplot(2,2,2); stem(n,w_ham); title('Hamming window');
axis([0 M-1 0 1.1]); xlabel('n'); ylabel('w(n)');
subplot(2,2,3); stem(n,h); title('Actual Impulse Response');
axis([0 M-1 -0.1 0.3]); xlabel('n'); ylabel('h(n)');
subplot(2,2,4); plot(w/pi,db); title('Magnitude Response in dB');grid;
axis([0 1 -100 10]); xlabel('frequency in pi units'); ylabel('dB');

Figure 9 Hnh v cho v d 1

http://edabk.org/

Rev 0.1

19

EDA-Group

FIR system design

4.12.2014

V d 2:
Thit k b lc thng thp v d 1 bng ca s Kaiser.
Di y l code Matlab. Chng ta p dng cng thc nu trong phn ca s Kaiser
tnh ton ra bc ca b lc v
% design a digital FIR filter LPF:
% wp=0.2pi, ws=0.3pi, Rp=0.25dB, As=50dB
% using Kaiser window
wp = 0.2*pi; ws = 0.3*pi;As = 50;
tr_width = ws-wp; % transition width
M = ceil((As-7.95)/(14.36*tr_width/(2*pi))+1)+1; % M=61
n = [0:1:M-1];
beta = 0.1102*(As-8.7);%beta = 4.5513
wc = (ws+wp)/2; % Ideal LPF cutoff frequency
hd = ideal_lp(wc,M);
w_kai = (kaiser(M,beta))';
h = hd.*w_kai;
[db,mag,pha,grd,w] = freqz_m(h,[1]);
delta_w = 2*pi/1000;
Rp = -(min(db(1:1:wp/delta_w+1))); % Actual Passband Ripple
%test As:
As = -round(max(db(ws/delta_w+1:1:501))); % Min Stopband attenuation
%Plot
subplot(1,1,1);
subplot(2,2,1); stem(n,hd); title('Ideal Impulse Response');
axis([0 M-1 -0.1 0.3]); xlabel('n'); ylabel('hd(n)');
subplot(2,2,2); stem(n,w_kai); title('Kaiser window');
axis([0 M-1 0 1.1]); xlabel('n'); ylabel('w(n)');
subplot(2,2,3); stem(n,h); title('Actual Impulse Response');
axis([0 M-1 -0.1 0.3]); xlabel('n'); ylabel('h(n)');
subplot(2,2,4); plot(w/pi,db); title('Magnitude Response in dB');grid;
axis([0 1 -100 10]); xlabel('frequency in pi units'); ylabel('dB');

Figure 10 Hnh v cho v d 2

http://edabk.org/

Rev 0.1

20

EDA-Group

FIR system design

4.12.2014

Trong Matlab, chng ta c th s dng hm fir1 thit k b lc s dng phng php


ca s:
Hm fir1 dng thit k cc loi b lc FIR pha tuyn tnh. N c th thit k cc loi b
lc thng cao, thng thp, v thng di. ch mc nh, p ng ln ca b lc
(Magnitude response

| H(e j ) | ) ti tn s trung tm ca di thng c chun ha l 0dB.

Cng thc chun ha:

| H(e j ) |norm. 20 log10

| H(e j ) |
| H(e j0 ) |

Hm MATLAB:
b
b
b
b
b

=
=
=
=
=

fir1(n,Wn)
fir1(n,Wn,'ftype')
fir1(n,Wn,window)
fir1(n,Wn,'ftype',window)
fir1(...,'normalization')

Hm fir1 tr li p ng xung ca b lc
b = fir1(n,Wn)

n: bc ca b lc
Wn: Tn s ct (cutofff) c chun ha theo tn s Nyquist Wf.
o Nu Wn=[w1 w2], fir1 s tr v p ng xung ca b lc thng di bc n.

w1 w 2
o Nu Wn=[w1 w2 wn], fir1 s tr v p ng xung ca b lc nhiu di
(multipass) bc n. 0 < < w1, w1 < < w2,..., wn < < 1.
b = fir1(n,Wn,'ftype')

ftype: Loi b lc
o ftype=high: b lc thng cao vi tn s cutoff = Wn
o ftype=stop: b lc chn di, nu Wn=[w1 w2]. Khi khong [w1 w2]
chnh l di chn
o DC-1: di u tin ca b lc nhiu di (multipass filter) l di thng
o DC-0: di u tin ca b lc nhiu di (multipass filter) l di chn
V d:
b=fir1(50,[0.1 0.2 0.3 0.4],'DC-1');
freqz(b,1,512);

http://edabk.org/

Rev 0.1

21

EDA-Group

FIR system design

4.12.2014

b=fir1(50,[0.1 0.2 0.3 0.4],'DC-0');


freqz(b,1,512);

b = fir1(n,Wn,window)

window: Vector window phi c n+1 phn t. nu khng c ca s c ch ra n


s s dng ca s Hamming c di n+1.

b = fir1(n,Wn,'ftype',window)

Chp nhn c 2 tham s ftype v window

b = fir1(...,'normalization')

normalization=scale (default): p ng ln ca b lc ti tn s trung tm ca


di thng c chun ha l 0dB

normalization=noscale: Khng chun ha

V d 3:
Thit k b lc v d 1 bng hm fir1
% design a digital FIR filter LPF:
% wp=0.2pi, ws=0.3pi, Rp=0.25dB, As=50dB
wp = 0.2*pi; ws = 0.3*pi;
wc = (wp + ws)/2; % Assume
wc_norm = wc/pi; % Normalize cut-off frequency
N = 25; % Order of filter
b = fir1(N,wc_norm);
freqz(b,1,512);

http://edabk.org/

Rev 0.1

22

EDA-Group

FIR system design

4.12.2014

Figure 11 Hnh v cho v d 3

2.2 Phng php ly mu tn s


Trong phng php ca s m chng ta xt trn c hn ch l vi cng mt ch tiu
k thut th thng chiu di ca b lc N ln hn chiu di cn thit tha mn ch tiu
cho.
Vic tm ra ca s gim hin tng Gibbs cng khng phi l n gin. V khi dng
ca s trong min n rt phc tp, th vic kho st trong min tn s s gp nhiu kh
khn. By gi chng ta nghin cu c trng c bn ca phng php ly mu tn s
Chng ta bit rng p ng xung h d (n) ca b lc s thc t FIR c chiu di hu hn N:

0,
h d (n)
0,

0 n M 1
otherwise

(2.2.1)\

C s: Trong phng php ly mu tn s, chng ta lm gn ng H(e j ) bng mt hm

Hd (e j ) ca b lc thc t. Hd (e j ) thu c qua vic ni suy gia cc mu H(k) ly trn

H(e j ) ti cc tn s k

2
k
M

Ta c:

http://edabk.org/

Rev 0.1

23

EDA-Group

FIR system design

4.12.2014

M
M 1
j
k
1
j
2
H d (e ) H d (k)
e 2 M

M k 0
sin( k)
2 M
M
sin
M 1

M 1
j

j
k
1
2
e 2 H d (k)e M

M k 0
sin( k)
2 M
sin

M 1

(2.2.2)

Trong H(k):
H(k) H(

2k j H(k )
)e
M

(2.2.3)

k0
H(0),
2k
H(
) 2(M k)
M
H(
), k 1,..., M 1

(2.2.4)

M 1 2k
M 1
k 0,...,
2 M ,

2
H(k)
M 1 2 (M k), k M 1 1,..., N 1
2 M
2

, (Type1& 2) (2.2.5)

M 1 2k
M 1
k 0,...,
2 2 M ,

2
H(k)
M 1 2 (M k), k M 1 1,..., M 1
2 2 M
2

, (Type 3 & 4) (2.2.6)

Nhc li: i vi FIR pha tuyn tnh (Xem li mc 1.3), ta c:


h(n) h(M 1 n), n 0,1,..., M 1

Du dng i vi FIR pha tuyn loi 1 v loi 2


Du m i vi FIR pha tuyn tnh loi 3 v 4
Biu thc (2.2.2) ch ng vi dy c chiu di hu hn N. Cn i vi b lc s l tng
th p ng xung h(n) c chiu di v hn. Khi p ng xung l:
j

H(e )

h(n)e

jn

Nh vy ta ly gn ng p ng xung Hd (e j ) . Sai s ca php gn ng ny bng 0


ti cc tn s k v hu hn i vi cc tn s khc.
Tc l:

H(e j )

H d (e j )

Nh vy qua php gn ng, b lc s l tng


http://edabk.org/

Rev 0.1

24

EDA-Group

FIR system design

1
H(e j )
0

4.12.2014

pass band
stop band

S tr thnh khng l tng bi cng thc ni suy sau y:


H(e j ) H d (e j ) e

M 1
2

M
sin

j k
1 M 1
2
H d (k)e M

M k 0
sin( k)
2 M

Tm li, chng ta c th ly t N mu ca p ng tn s H(e j ) ca b lc s l tng


cho (thng thp, thng cao, ) thu c p ng tn s ca b lc s thc t Hd (e j ) .
Khi ta thu c h(n):
h(n) IDFT[H(k)]

(2.2.7)

Kt lun: Phng php ly mu tn s c cc bc thc hin nh sau. Chng ta chn


mt b lc thng thp l tng H(e j ) , chn chiu di ca b lc l N. Sau chng
2
ta ly mu H(e j ) ti N im tn s k
k cch u nhau t 0 n 2 ta thu c
M
H(k). Cui cng ta c Hd (e j ) bng vic ni suy t H(k). Nh Figure 12

Figure 12 M t phng php ly mu tn s


T hnh 12, ta c nhng nhn xt sau:
2
k)
M
2. Sai s xp x ti nhng tn s khc ph thuc vo hnh dng ca p ng l tng
3. Li ln ti cnh ca cc bng tn, v nh hn ti nhng tn s trong bng tn

1. Sai s xp x (approximation error) bng 0 ti nhng mu tn s ( k

T y c hai phng php thit k. Mt l, chng ta s dng cch nh trnh by phn


trn m khng constraint sai s xp x. Phng php ny gi l naive design. Hai l, chng
ta gim sai s xp x bng cch bin i cc mu trong di chuyn tip. Phng php ny
gi l optimum design
NAIVE DESIGN:
Trong phng php ny, chng ta thu H(k) H(e j2 k/M ) , k=0,,M-1. Sau s dng
cng thc t (2.2.3) n (2.2.6) v (2.2.7) thu c p ng xung h(n)
V d 4: Thit k b lc thng thp s dng phng php ly mu tn s

http://edabk.org/

Rev 0.1

25

EDA-Group

FIR system design

4.12.2014

p 0.2,

R p 0.25dB

s 0.3,

A s 50dB

Gii
Chn M = 20, chng ta c mu tn s di thng p l k=2:
p 0.2

2
2
20

s 0.3

2
3
20

Tng t di chn s c k=3

Nh vy chng ta c 3 mu di thng [ 0 p ] v 7 mu di chn [ s ].


Nh vy chng ta c phn bin ca H(k) l:
| H(k) | [1,1,1,0,...,0,1,1],

15zeros

Khi M = 20, h(n) l i xng. Vy y l b lc FIR loi 2, ta c:


2

9.5 k 0.95k, 0 k 9
H(k)
20

10 k 19
0.95(20 k),

Di y l code Matlab cho v d trn


M = 20; alpha = (M-1)/2; l = 0:M-1; wl = (2*pi/M)*l;
Hrs = [1,1,1,zeros(1,15),1,1]; % Ideal Amp Res sampled
Hdr = [1,1,0,0]; wdl = [0,0.25,0.26,1]; %Ideal Amp Res for plotting
k1 = 0:floor((M-1)/2); k2 = floor((M-1)/2)+1:M-1;
angH = [-alpha*(2*pi)/M*k1,alpha*(2*pi)/M*(M-k2)];
H = Hrs.*exp(j*angH);
h = real(ifft(H,M));
[db,mag,pha,grd,w] = freqz_m(h,[1]);
[Hr,ww,a,L] = Hr_Type2(h);
subplot(2,2,1);plot (wl(1:11)/pi ,Hrs(1:11),'o',wdl,Hdr);
axis([0,1,-0.1,1.1]) ; title('Frequency Samples: M=20');
xlabel('frequency in pi units'); ylabel('Hr(k)');
subplot(2,2,2);stem(l,h); axis([-1,M,-0.1,0.3]);grid;
title('Impulse response'); xlabel('n'); ylabel('h(n)');
subplot(2,2,3); plot(ww/pi,Hr,wl(1:11)/pi,Hrs(1:11),'o');grid;
axis([0,1,-0.2,1.2]); title('Amplitude Response');
xlabel('frequency in pi units'); ylabel('Hr(w)');
subplot(2,2,4); plot(w/pi,db); axis([0,1,-60,60]); grid;
title('Magnitude Response'); xlabel('frequency in pi units');

http://edabk.org/

Rev 0.1

26

EDA-Group

FIR system design

4.12.2014

ylabel('Decibels');

Hnh Figure 13 biu din b lc trn min thi gian v min tn s. Ta thy suy hao di
chn nh nht l khong 16dB, s suy hao ny vn cn qu ln.

Figure 13 Hnh v cho v d 4


OPTIMUM DESIGN:
thu c suy hao ln hn, chng ta s tng M ln sao cho c mt s mu nm trong
di chuyn tip. Bn cnh , chng ta s thay i gi tr ca mu nm trong di chuyn
tip thu c suy hao ln nht c th.
V d 5: S dng li bi trong v d 4
Gii:
Chn M = 40, chng ta c 1 mu nm trong di chuyn tip ( 0.2 0.3 ). Nh vy
khi 1 2 / 40 , mu di chuyn tip l k=5 v k=40-5. Ta thu c p ng bin
ca H(k). Chng ta nh ngha gi tr nm trong di chuyn tip l T1 ( 0 T1 1 )
| H(k) | [1,1,1,1,1,T1 ,0,...,0,T1 ,1,1,1,1],

29 zeros

M=40 (chn), h(n) i xng, nn y l dng FIR loi 2 ta c:


2

19.5 k 0.975k,
H(k)
40

0.975(40 k),

0 k 19
20 k 39

By gi chng ta s chn T1 sao cho thu c suy hao di chn l nhiu nht.
Chn T1=0.5
% T1=0.5
T1=0.5;
M = 40; alpha = (M-1)/2; l = 0:M-1; wl = (2*pi/M)*l;

http://edabk.org/

Rev 0.1

27

EDA-Group

FIR system design

4.12.2014

Hrs = [ones(1,5),T1,zeros(1,29),T1,ones(1,4)]; % Ideal Amp Res sampled


Hdr = [1,1,T1,0,0]; wdl = [0,0.25,0.255,0.26,1]; %Ideal Amp Res for
plotting
k1 = 0:floor((M-1)/2); k2 = floor((M-1)/2)+1:M-1;
angH = [-alpha*(2*pi)/M*k1,alpha*(2*pi)/M*(M-k2)];
H = Hrs.*exp(j*angH);
h = real(ifft(H,M));
[db,mag,pha,grd,w] = freqz_m(h,[1]);
[Hr,ww,a,L] = Hr_Type2(h);
subplot(2,2,1);plot (wl(1:21)/pi ,Hrs(1:21),'o',wdl,Hdr);
axis([0,1,-0.1,1.1]) ; title('Frequency Samples: M=40, T1=0.5');
xlabel('frequency in pi units'); ylabel('Hr(k)');
subplot(2,2,2);stem(l,h); axis([-1,M,-0.1,0.3]);grid;
title('Impulse response'); xlabel('n'); ylabel('h(n)');
subplot(2,2,3); plot(ww/pi,Hr,wl(1:21)/pi,Hrs(1:21),'o');grid;
axis([0,1,-0.2,1.2]); title('Amplitude Response');
xlabel('frequency in pi units'); ylabel('Hr(w)');
subplot(2,2,4); plot(w/pi,db); axis([0,1,-100,10]); grid;
title('Magnitude Response'); xlabel('frequency in pi units');
ylabel('Decibels');

Hnh Figure 14, ta c suy hao di chn l 30dB, tt hn phng php Naive design tuy
nhin vn cha t c 50dB. Chng ta chn T1=0.39

Figure 14 Hnh v cho v d 5 vi T1=0.5


Chn T1=0.39
% T1=0.39
T1=0.39;
M = 40; alpha = (M-1)/2; l = 0:M-1; wl = (2*pi/M)*l;
Hrs = [ones(1,5),T1,zeros(1,29),T1,ones(1,4)]; % Ideal Amp Res sampled
Hdr = [1,1,T1,0,0]; wdl = [0,0.25,0.255,0.26,1]; %Ideal Amp Res for
plotting
k1 = 0:floor((M-1)/2); k2 = floor((M-1)/2)+1:M-1;
angH = [-alpha*(2*pi)/M*k1,alpha*(2*pi)/M*(M-k2)];

http://edabk.org/

Rev 0.1

28

EDA-Group

FIR system design

4.12.2014

H = Hrs.*exp(j*angH);
h = real(ifft(H,M));
[db,mag,pha,grd,w] = freqz_m(h,[1]);
[Hr,ww,a,L] = Hr_Type2(h);
subplot(2,2,1);plot (wl(1:21)/pi ,Hrs(1:21),'o',wdl,Hdr);
axis([0,1,-0.1,1.1]) ; title('Frequency Samples: M=40, T1=0.5');
xlabel('frequency in pi units'); ylabel('Hr(k)');
subplot(2,2,2);stem(l,h); axis([-1,M,-0.1,0.3]);grid;
title('Impulse response'); xlabel('n'); ylabel('h(n)');
subplot(2,2,3); plot(ww/pi,Hr,wl(1:21)/pi,Hrs(1:21),'o');grid;
axis([0,1,-0.2,1.2]); title('Amplitude Response');
xlabel('frequency in pi units'); ylabel('Hr(w)');
subplot(2,2,4); plot(w/pi,db); axis([0,1,-100,10]); grid;
title('Magnitude Response'); xlabel('frequency in pi units');
ylabel('Decibels');

T hnh Figure 15, ta thu c suy hao di chn nh nht l 43dB. R rng, tng suy
hao di chn, chng ta cn thay i nhiu hn 1 mu trong di chuyn tip.

Figure 15 Hnh v cho v d 5, T1=0.39


By gi chng ta s tng M=60, s c 2 mu trong di chuyn tip l T1=0.5925 v
T2=0.1099.
Ta c p ng bin ca H(k) l:
| H(k) | [1,...,1,T1 ,T2 , 0,...,0,T2 ,T1,1,...,1]
7ones

43zeros

6ones

% T1=0.5925, T2=0.1099
T1=0.5925;
T2=0.1099;
M = 60; alpha = (M-1)/2; l = 0:M-1; wl = (2*pi/M)*l;
Hrs = [ones(1,7),T1,T2,zeros(1,43),T2,T1,ones(1,6)]; % Ideal Amp Res
sampled
Hdr = [1,1,0,0]; wdl = [0,0.25,0.26,1]; %Ideal Amp Res for plotting

http://edabk.org/

Rev 0.1

29

EDA-Group

FIR system design

4.12.2014

k1 = 0:floor((M-1)/2); k2 = floor((M-1)/2)+1:M-1;
angH = [-alpha*(2*pi)/M*k1,alpha*(2*pi)/M*(M-k2)];
H = Hrs.*exp(j*angH);
h = real(ifft(H,M));
[db,mag,pha,grd,w] = freqz_m(h,[1]);
[Hr,ww,a,L] = Hr_Type2(h);
subplot(2,2,1);plot (wl(1:31)/pi ,Hrs(1:31),'o',wdl,Hdr);
axis([0,1,-0.1,1.1]) ; title('Frequency Samples: M=60, T1=0.5925,
T2=0.1099');
xlabel('frequency in pi units'); ylabel('Hr(k)');
subplot(2,2,2);stem(l,h); axis([-1,M,-0.1,0.3]);grid;
title('Impulse response'); xlabel('n'); ylabel('h(n)');
subplot(2,2,3); plot(ww/pi,Hr,wl(1:31)/pi,Hrs(1:31),'o');grid;
axis([0,1,-0.2,1.2]); title('Amplitude Response');
xlabel('frequency in pi units'); ylabel('Hr(w)');
subplot(2,2,4); plot(w/pi,db); axis([0,1,-100,10]); grid;
title('Magnitude Response'); xlabel('frequency in pi units');
ylabel('Decibels');

Chng ta thu c suy hao di chn 63dB

Figure 16 Hnh v cho v d 5, M=60, T1=0.5925 v T2=0.1099.


Trong Matlab, chng ta c th thit k b lc theo phng php ly mu tn s bng hm
fir2
b = fir2(n,f,m)
b = fir2(n,f,m,window)
b = fir2(n,f,m,npt)
b = fir2(n,f,m,npt,window)
b = fir2(n,f,m,npt,lap)
b
=
fir2(n,f,m,npt,lap,window)

fir2 thit k b lc FIR theo phng php ly mu tn s vi p ng tn s c dng ty .

http://edabk.org/

Rev 0.1

30

EDA-Group

FIR system design

4.12.2014

b = fir2(n, f, m) tr ra vector b cha n+1 h s ca b lc FIR bc n. c tnh ln tn s


ca b lc ph thuc vo f, m.
f l vector tn s trong khong t 0 n 1. Ni 1 tng ng vi tn s Nyquist. im u
tin ca f phi l 0 v im cui cng phi l 1. im tn s phi t theo th t tng dn.
m l mt vector cha p ng bin mong mun ti im f.
f v m phi cng chiu di.
Cho php im tn s trng nhau, tng ng vi p ng tn s.
H s u ra b lc, b, c sp xp tng dn theo ly tha ca z.
b(z) = b(1) + b(2)z-1 ++ b(n+1)z-n
fir2 lun lun s dng bc b lc chn cho cu hnh vi passband tn s Nyquist. Bi v
cho bc l th p ng tn s tn s Nyquist th thng 0. Nu bc l fir2 tng n bi 1.
b = fir2(n,f,m,window) s dng ca s c ch r trong vector window. Vector window
phi c n+1 phn t. Nu window khng c ch ra fir2 s dng ca s Hamming c
chiu di n+1.
b = fir2(n,f,m,npt,lap) v b = fir2(n,f,m,npt,lap,window) ch ra kch c ca vng, lap, rng
fir2 chn xung quanh im tn s trng lp, c hoc khng ca s c ch ra.
V d: Thit k b lc thng thp, trong fs = 3KHz, fcutoff = 400 Hz, bc b lc l 20.
n = 20;
fcut=400/3000;
f = [0 fcut fcut 1];
m = [1 1 0 0];
b = fir2(n, f, m);
[h,w] = freqz(b,1,128);
plot(f,m,w/pi,abs(h))
legend('Ideal','fir2 Designed')
title('Comparison of Frequency Response Magnitudes')

http://edabk.org/

Rev 0.1

31

EDA-Group

FIR system design

4.12.2014

2.3 Phng php lp (Equiripple)


tng hp c b lc FIR pha tuyn tnh ti u (tc l b lc s c bc ti thiu) chng
ta c th s dng phng php lp
Hai phng php, ca s v ly mu tn s kh n gin hiu v trin khai. Tuy nhin,
chng c mt vi bt li. u tin, chng ta khng th xc nh chnh xc p v s ; iu
ny c ngha l, chng ta phi chp nhn gi tr m chng ta thu c sau khi thit k. Th
hai, chng ta khng th xc nh chnh xc c h s gn di thng 1 v gn di
chn 2 . Hoc l chng ta c 1 2 trong phng php ca s, hoc ch optimize c
2 trong phng php ly mu tn s. Th ba, sai s xp x (approximation error) l s

khc nhau gia p ng l tng v p ng thc t khng ging nhau trn ton di. Li
ny ln khi bin ca di tn s v nh hn khi trong di tn s. Bng vic phn tn sao
cho li ny tng i ging nhau trn cc di tn, chng ta thu c b lc c p ng
xung nh hn p ng c yu cu t ra. Tn ti phng php c th loi b c ba
vn bn trn. Kt qu ca phng php ny s l ti u, nhng chng ta phi tr gi l
vic tnh ton s kh phc tp.
i vi b lc FIR pha tuyn tnh, c th ly c mt tp hp cc iu kin gii php
thit k l ti u trong vic gim thiu ti a sai s xp x. Chng ta coi vic tng hp mt
b lc nh l mt bi ton gn ng theo ngha chebyschev. B lc ny c gi l
equiripple bi v sai s xp x c phn tn ng u trn c di thng v di chn.
thit k b lc equiripple, chng ta s dng mt thut ton ni suy a thc, thut ton
ny c tn l Parks-McClellan
Di y chng ta s xt cch biu din ca Ad (e j ) (ca b lc thc t) ca c 4 loi lc
s FIR theo dng:

Ad (e j ) Q(e j ).P(e j )

(2.3.1)

Chng ta c bng tng kt sau:

Ad (e j ) Q(e j ).P(e j )
Loi b lc

http://edabk.org/

Q(e j )

Rev 0.1

P(e j )

32

EDA-Group

FIR system design

4.12.2014

N 1
2

a(n) cos n
n 0

cos

N
1
2

b(n) cos n
n 0

sin

N 1
1
2

c(n) cos n
n 0

sin

N
1
2

d(n) cos n
n 0

Q(e j ) l mt hm c nh bit, cn P(e j ) l a thc theo cos n . V vy chng ta


phi i tm cc h s n ca P(e j ) sao cho sai s gia p ng tn s ca b lc thc t
v b lc s l tng l nh nht.
Sai s ca b lc thc t v b lc l tng c nh gi nh sau:
() = ()[() ()]
y:
E(): sai s
A(): p ng tn s ca ln ca b lc s l tng
Ad(): p ng tn s ca ln ca b lc s l tng
W(): hm trng s trn sai s l tng
() = (). () ; () = ()
Vi
()
Ta c th vit sai s nh sau:
()[() ()]
() =
Gii bi ton gn ng y l ch chng ta phi tm thy mt tp hp cc h s (k)
sao cho ti thiu ha gi tr tuyt i ca sai s E(). gii bi ton xp x ny, Parks v
McClellan ng dng mt nh l trong l thuyt gn ng ca Chebyschev, nh l ny

http://edabk.org/

Rev 0.1

33

EDA-Group

FIR system design

4.12.2014

gi l nh l xoay chiu (Tham kho trong sch x l s tn hiu Nguyn Quc Trung,
tp 1)
Tm li
Da trn c s bi ton gn ng theo ngha Chebyschev ny, Parks v McClellan s
dng nh l xoay chiu a ra phng php tnh ton b lc s FIR pha tuyn tnh.
Nguyn tc chung ca phng php ny gm nhng bc sau y:
1. Chn loi b lc s l tng, tc l chn p ng tn s ca ln A(), sau chn
hm trng s W() (da theo cc ch tiu k thut ca b lc thc t), cui cng s chn
bc ca b lc s N.
(), (), ().
2. Xc nh bi ton gn ng, tc l tm
3. Gii bi ton gn ng bng cch s dng thut ton thay i Remez.
4. Tnh ton cc h s ca b lc.

Trong MATLAB, chng ta c th s dng hm firpm


b = firpm(n,f,a)
b = firpm(n,f,a,w)
b = firpm(n,f,a, 'ftype')
b = firpm(n,f,a,w, 'ftype')
b = firpm(...,{lgrid})
[b,err] = firpm(...)
[b,err,res] = firpm(...)
b = firpm(n,f,@fresp,w)
b = firpm(n,f,@fresp,w,'ftype')

firpm thit k mt FIR pha tuyn tnh s dng thut ton Park-McClellan. Thut ton ParkMaClellan s dng thut ton thay i Remez nh lut xp x Chebyshev thit k b
lc ti u ph hp gia p ng xung mong i v thc t. B lc c ti u c ngha l
sai s ln nht gia p ng xung thc t v l tng l ln nht. B lc c thit k theo
cch ny i khi c gi l enquiripple.
b = firpm (n, f, a) tr li vector hng cha n+1 h s ca b lc FIR c bc n, c tnh tn
s, bin c cho bi vector f v a.
Cc h s output b c tnh cht i xng:
b(k) = b(n + 2 k) k = 1, 2, , n + 1
http://edabk.org/

Rev 0.1

34

EDA-Group

FIR system design

4.12.2014

Vector f v a xc nh c tnh bin tn s ca b lc:


f l mt vector ca cc cp im tn s bnh thng, c xc nh trong khong 0 n 1.
Trong 1 tng ng vi tn s Nyquist. Tn s phi sp xp theo th t tng dn.
a l vector cha bin mong i ng vi f.
f v a phi cng di. di phi l s chn.

b = firpm (n, f, a, w) s dng vector trng lng w ph hp cho mi bang tn. di


vector w bng di vector f v a.

b = firpm (n, f, a, ftype) v b = firpm (n, f, a, w, ftype) xc nh loi b lc, vi ftype


l:
hilbert, cho b lc pha tuyn tnh i xng v l (loi III v IV)
differentiator, cho b lc loi III v IV s dng k thut trng lng c bit.
[b, err] = firpm () tr li gi tr chiu cao gn sng vo err.

[b, err, res] = firpm () tr li cu trc res vi cc trng sau.


res.fgrid

Vector li tn s c s dng cho ti u thit k b lc

res.des

p ng tn s mong mun cho mi im res.fgrid

res.wt

Trng lng cho mi im opt.fgrid

res.H

p ng tn s thc t cho mi im trong res.fgrid

res.error

Li mi im trong res.fgrid

res.iextr

Vector ch s trong res.fgrid cho cc tn s cc tr

res.fextr

Vector cc tn s cc tr

http://edabk.org/

Rev 0.1

35

EDA-Group

FIR system design

4.12.2014

Thit k b lc thng thp vi fs = 2kHz, fpass = 400 Hz, fstop = 400 Hz, bc b
lc l 20.
Code Matlab
n = 20; % bc b lc
f = [0 0.4 0.5 1]; % vector tn s
m = [1 1 0 0]; % bin tng ng
h_firpm = firpm(n, f, m);
freqz(h_firpm,1);

http://edabk.org/

Rev 0.1

36

EDA-Group

FIR system design

4.12.2014

3
Cc kin trc b lc FIR
3.1 Kin trc Direct (Cu trc chun tc)
3.1.1 L thuyt
Loi cu trc ny c suy trc tip t phng trnh sai phn biu din quan h vo ra ca
b lc. Quan h vo ra ca b lc FIR c biu din bng cng thc tng chp:
M 1

y(n) h(k)x(n k)

(3.1.1)

k 0

Kin trc ca b lc c biu din hnh Figure 17. Chng ta cn M-1 b nh lu M-1
u vo, M b nhn, M-1 b cng

Figure 17 Kin trc Direct-form


c tnh i xng hoc bt i xng ca b lc FIR pha tuyn tnh c dng gim s
b nhn xung cn mt na
Nhc li: c 4 loi b lc FIR pha tuyn tnh
h(n) i xng
h(n) phn i xng

M l (odd)
Loi 1
Loi 3

M chn (even)
Loi 2
Loi 4

FIR loi 1:

http://edabk.org/

Rev 0.1

37

EDA-Group

FIR system design

M 1

H(z) h(n)z

n 0

M 1
1
2

h(n)[z +z

(M 1 n )

n 0

4.12.2014

M 1

M 1
]+h(
)z
2

(3.1.2)

T cng thc (3.1.2) ta c cu trc nh hnh Figure 18

Figure 18 Direct-form, FIR 1


FIR loi 2:
M 1

M
1
2

n 0

n 0

H(z) h(n)z n h(n)[z n +z (M 1n) ]

(3.1.3)

T cng thc (3.1.3) ta c cu trc nh hnh Figure 19

Figure 19 Direct-form, FIR 2


http://edabk.org/

Rev 0.1

38

EDA-Group

FIR system design

4.12.2014

FIR loi 3:
M 1

M 1
1
2

n 0

n 0

H(z) h(n)z n

h(n)[z n -z (M 1 n ) ]

(3.1.4)

T cng thc (3.1.4) ta c cu trc nh hnh Figure 20

Figure 20 Direct-form, FIR 3


FIR loi 4:
M 1

M
1
2

n 0

n 0

H(z) h(n)z n h(n)[z n -z (M 1n ) ]

(3.1.5)

T cng thc (3.1.5) ta c cu trc nh hnh

Figure 21 Direct-form, FIR 4

http://edabk.org/

Rev 0.1

39

EDA-Group

FIR system design

4.12.2014

3.1.2 Thit k simulink


thit k simulink, u tin chng ta phi la chn phng php thit k b lc (phng
php ca s, phng php ly mu tn s, phng php lp). T cc phng php ny,
chng ta xc nh bc ca b lc M, p ng xung h(n). T chng ta la chn tng
ng vi loi b lc pha trn
V d: chng ta thit k b lc thng thp, fs = 20KHz, fc = 1KHz. Gi s chng ta s
dng phng php ca s, la chn ca s Hamming, chn bc ca b lc l M=20.
Nh vy, M chn, h(n) i xng. Chng ta chn b lc FIR loi 2.
S dng cng c fdatool thit k b lc:

Chng ta thu c h s lc
h(n)=b=[
3.6942106777713809e-19
0.0013272228969113322
0.0046502522506579463
0.011749802608142372
0.02377922195610704
0.040723451189874783
0.061156926116234529
0.082403674188359047
0.10108221115667204
0.11389737880049784

http://edabk.org/

Rev 0.1

40

EDA-Group

FIR system design

4.12.2014

0.11845971767308625
0.11389737880049784
0.10108221115667204
0.082403674188359047
0.061156926116234529
0.040723451189874783
0.02377922195610704
0.011749802608142372
0.0046502522506579463
0.0013272228969113322
3.6942106777713809e-19]

Sau ta cho tn hiu bao gm hai tn s: Tn s thp = 200Hz, tn s cao = 4000Hz

Setup:

http://edabk.org/

Rev 0.1

41

EDA-Group

FIR system design

4.12.2014

Cui cng ta thu c:

http://edabk.org/

Rev 0.1

42

EDA-Group

FIR system design

4.12.2014

3.1.3 p ng tn s ca b lc

3.1.4 Kch thc b lc


i vi b lc bt k: Chng ta cn M-1 b nh lu M-1 u vo, M b nhn, M-1 b
cng.
i vi b lc FIR pha tuyn tnh: S b nhn gim xung cn mt na, s b cng gi
nguyn M-1

3.1.5 Tr tn hiu v pha

http://edabk.org/

Rev 0.1

43

EDA-Group

FIR system design

4.12.2014

Phase Delay

Phase Delay (samples)

10.5

Normalized Frequency: 0.2459717


Phase Delay: 10

10

9.5

0.1

0.2

0.3

0.4
0.5
0.6
0.7
Normalized Frequency ( rad/sample)

0.8

0.9

Tr pha 10 mu. Tc l u ra tr hn 10 mu so vi u vo.

3.2 Kin trc Cascade (kin trc dng tng)


3.2.1 L thuyt
Chng ta c th phn hoch hm H(Z) thnh tch ca cc hm c s bc mt hoc bc hai.
Vic phn hoch ny tng ng vi cu trc dng tng.
Gi s chng ta c th phn H(Z) thnh cc h bc hai nh sau:
M 1

n 0

k 1

H(z) h(n)z n 0k 1k z 1 2k z 2

T y ta thu c cu trc dng tng

d:

H(z) (1 1.017z 1 2.3469)(1 2.017z 1 1.7045z 2 )

H(z) 1 z 1 2z 2 3z 3 4z 4
Chng ta s phn tch H(z) thnh tch ca cc a thc bc 1 hoc bc 2
Trong Matlab c hm roots tm cc im khng ca mt a thc

http://edabk.org/

Rev 0.1

44

EDA-Group

FIR system design

4.12.2014

>> roots([1 1 2 3 4])


ans =
0.5085 + 1.4451i
0.5085 - 1.4451i
-1.0085 + 0.8291i
-1.0085 - 0.8291i
Nh vy ta thu c:
H(z) (1 (0.5085 + 1.4451i)z 1 )(1 (0.5085 - 1.4451i)z 1 )
(1 (1.0085 + 0.8291i)z 1 )(1 ( 1.0085 - 0.8291i)z 1 )

H(z) (1 1.017z 1 2.3469z 2 )(1 2.017z 1 1.7045z 2 )

3.2.2 Xy dng Simulink


Ty theo cc phng php thit k, chng ta s dng cc hm ca matlab tm ra p
ng xung ca b lc. Sau chuyn i tn hiu sang min Z v phn tch thnh tch ca
cc hm a thc bc 1 hoc bc 2
V d: Lm li v d phn 3.1. Thit k b lc thng thp, fs = 20KHz, fc = 1KHz. Gi
s chng ta s dng phng php ca s, la chn ca s Hamming, chn bc ca b lc
l M=20.
Ta c:
h(n)=b=[
0.0013272228969113322
0.0046502522506579463
0.011749802608142372
0.02377922195610704
0.040723451189874783
0.061156926116234529
0.082403674188359047
0.10108221115667204
0.11389737880049784
0.11845971767308625
0.11389737880049784
0.10108221115667204
0.082403674188359047

http://edabk.org/

Rev 0.1

45

EDA-Group

FIR system design

4.12.2014

0.061156926116234529
0.040723451189874783
0.02377922195610704
0.011749802608142372
0.0046502522506579463
0.0013272228969113322
3.6942106777713809e-19]
Sau s dng hm roots, chng ta thu c cc im 0. Tuy nhin thu c hm
H(z), sau khi qui v dng tch, chng ta phi ly h s t s t do, y l 1, chia cho h
s t do ca hm H(z) ban u, y l 0.0013272228969113322.
-0.9877 + 0.1561i
-0.9877 - 0.1561i
-0.8915 + 0.4531i
-0.8915 - 0.4531i
-0.7080 + 0.7062i
-0.7080 - 0.7062i
-0.4542 + 0.8909i
-0.4542 - 0.8909i
0.6587 + 0.7524i
0.6587 - 0.7524i
-0.1502 + 0.9887i
-0.1502 - 0.9887i
0.2189 + 1.0757i
0.2189 - 1.0757i
0.3805 + 0.9248i
0.3805 - 0.9248i
0.1816 + 0.8927i
0.1816 - 0.8927i
-0.0000 + 0.0000i
T phn tch c thnh:
H(z) (1 1.9754z 1 z 2 )(1 1.783z 1 z 2 )(1 1.416z 1 z 2 )(1 0.9084z 1 z 2 )
(1 1.3174z 1 z 2 )(1 0.3004z 1 z 2 )(1 0.4378z 1 1.205z 2 )(1 0.761z 1 z 2 )
(1 0.3632z 1 0.8299z 2 ) / 0.0013272228969113322

T cng thc trn, chng ta xy dng c cu trc trong Simulink

http://edabk.org/

Rev 0.1

46

EDA-Group

FIR system design

4.12.2014

3.2.3 p ng tn s ca b lc

3.2.4 Kch thc b lc


http://edabk.org/

Rev 0.1

47

EDA-Group

FIR system design

4.12.2014

3.2.5 Tr tn hiu v pha


Phase Delay

Phase Delay (samples)

10.5

Normalized Frequency: 0.2459717


Phase Delay: 10

10

9.5

0.1

0.2

0.3

0.4
0.5
0.6
0.7
Normalized Frequency ( rad/sample)

0.8

0.9

Tr pha 10 mu. Tc l u ra tr hn 10 mu so vi u vo.

3.3 Kin trc Lattice (cu trc mt co)


3.3.1 L thuyt
Cu trc Lattice c th dng thc hin b lc FIR v IIR. Trong mc ny, chng ta s
nghin cu i vi b lc FIR. Kin trc Lattice c cu trc sau

Trong trng hp tng qut, ta c h s:

k m h M (m)
Trong :
h m 1 (0)

1
1 h m2 (m) 1
1 k 2m

h m 1 (1)

1
h m (1) h m (m)h m (m 1)
1 k 2m

...

http://edabk.org/

Rev 0.1

48

EDA-Group

h m 1 (m 1)

FIR system design

4.12.2014

1
h m (m 1) h m (m)h m (1)
1 k 2m

Vy ta c:
h m 1 (i)

1
h m (i) h m (m)h m (m i)
1 h 2m (m)

y:
k m h m (m)
k m 1 h m 1 (m 1)

3.3.2 Thit k Simulink


Lm li bi ton mc 3.1
Xy dng cu trc tng step

Ghp ni cc step

http://edabk.org/

Rev 0.1

49

EDA-Group

FIR system design

4.12.2014

3.3.3 p ng tn s ca b lc

3.3.4 Kch thc b lc


S b nhn: 2M

http://edabk.org/

Rev 0.1

50

EDA-Group

FIR system design

4.12.2014

S b cng: 2M
Delay: M cng

3.3.5 Tr tn hiu v pha


Phase Delay

Phase Delay (samples)

10.5

Normalized Frequency: 0.2459717


Phase Delay: 10

10

9.5

0.1

0.2

0.3

0.4
0.5
0.6
0.7
Normalized Frequency ( rad/sample)

0.8

0.9

Tr pha 10 mu. Tc l u ra tr hn 10 mu so vi u vo.

http://edabk.org/

Rev 0.1

51

You might also like