Professional Documents
Culture Documents
8 Loc Thong Thap
8 Loc Thong Thap
BI THC TP CHUYN
KHO ST CC C TNH P NG B LC THNG THP
1. Mc ch
Mc ch ca bi th nghim ny l s dng mt b lc tch cc cng c thit
k nh l b lc thng thp 5 cc to thnh b lc c th thay i c, c c tnh
Butterwworth, hoc Chebyshev hay l Bessel .. N c tr khng li vo kh ln
(khong 10k) v tr khng li ra kh nh v v th hot ng ca n khng ph thuc
nhiu vo li vo v li ra ( Ch : Hy gi in p li vo di 5 Volt nh-nh
trnh qu ti ) , Bn cnh sinh vin dng chng trnh MATLAB Signal Processing
Toolbox thit k b lc ny v s dng bn mch Startup kit TMS320C50 DSP (B
s l s tn hiu) vi phn mm hp ng DSK to ra b lc p c cc c tnh trn.
S khi ca th nghim c m t nh sau :
a) S th nghim s dng b lc tch cc cng :
b) S th nghim s dng TMS320C50 DSP
120
2. Dng c thc nghim
i) My pht chc nng
ii) B lc tch cc vi ngun +/- 15
Volt
iii) Dao ng k
iv) Volt k RMS
v) My o phase
vi) My tnh vi phn mm DSK , MatLab
vii) Startup kit TMS320C50 DSP
viii) pht chc nng ( Function Generator);
A. PHN L THUYT
1. Cc c tnh p ng b lc thng thp
Trong phn ny sinh vin phi phn tch , nh gi cc c tnh tn s v p ng
truyn dn ca ng truyn c c trng lc Butterwworth, hoc Chebyshev hay l
Bessel theo cc ch dn di y :
o Vi p ng tn s , phi ch n gi tr suy hao ng k ti cc tn s no
. Cc tn s ny phi c o v v theo tn s c chun ho. Vi mi mt
b lc , cc tn s c chun ho c s dng v trn th sao cho chng
c th biu din dng iu chung nht ca b lc t xem xt c p ng
mi khi c mt s thay i tn s.
o T p ng tn s , cc tr pha ti cc tn s c la chn phi c o v cc
c tnh khuych i, chm phase , tr phase v tr nhm c tnh ton t
cc gi tr o c.
o Vi p ng truyn dn , p ng li ra ca mi b lc khi mt bc li vo c
s dng
a) Gii thiu :
Mi mt b lc bc-5 c mt hm truyn c chun ho di dng :
e
H(s) =
-------------------------------------------------------------------
S
5
+ a S
4
+ b S
3
+ c S
2
+ d S
1
+ e
Trong a, b, c, d, e l cc h s ca b lc
121
Butterworth c hm truyn (TF) c chun ho ti
c
= 1 rad/s
Chebyshev c 1 dB ripple ,
c
= cosh [ (1/n) cosh
-1
(1/e) ]
Do b lc bc-5 c n=5 v e=0.50885 v th
c
1.0338 v sao cho
r
khng
di -3dB th
r
= (20000/1.0338 ) = 19346 rad/s c do vy TF
c t li bng s/
r
= 20000/19346.
Bessel c chun ho ti thi gian tr T
0
= 1 sec m bo cho
c
=
20000rad/s th tr phi gim xung
t
o
= 1.21 x 10
-4
sec
TF c chun ho bng cch t li s = st
o
, trong t
0
l tr thit k
tr phase tn s zero c xc nh bng cch t s hay bng
zero v v vy ch cn h s bc-1 trong H(s) , xc nh tr phase kt qu ca biu
thc ( bng cch t s = j ) vi T
p
= -f()/
Cho b lc c th chuyn i thnh cc loi b lc Butterwworth, hoc
Chebyshev hay l Bessel cng vi cc thit b th nghim nu trn , sinh vin hy
tin hnh cc bc sau y :
b) tr phase tn s zero
Cc mu s c chun ho theo 3 hm truyn l
Butterworth S
5
+ 3.236 S
4
+ 5.236 S
3
+ 5.236 S
2
+ 3.236 S
1
+ 1
Chebyshev S
5
+ 0.908 S
4
+ 1.601 S
3
+ 0.889 S
2
+ 0.509 S
1
+ 0.104
Bessel S
5
+ 6.181 S
4
+ 17.827 S
3
+ 29.381 S
2
+ 27.238 S
1
+ 11.222
s dng tn s ln ti
0
= 20 000 rad/s ( f
0
= 3.18 KHz ) sao cho p ng tn
s mong i ph hp vi TF vi S c thay th bng j/20000. Hy s
dng cc thng tin ny tnh ton tr phase tn s zero / c tnh ca
mi mt b lc ( bng cch t 0 v th ch cn li i lng bc nht )
c) Cc tn s tim cn
122
Cc tn s ca cc b lc bc 5 ny c tnh ton theo hm truyn nu
trong mc (a) trn y
d) Quan st p ng tn s
Bin : Vi mi mt b lc, hy so snh in p li ra tnh theo n v
dB v ghi li cc tn s m ti c s suy hao ng k v bin li ra
, tc l vi Butterworth v Bessel, cc tn s cho -0.5dB, -1dB , -3dB ,
-10dB , -20dB , -30dB v -40dB , cn vi Chebyshev ti cc tn s
v gi tr suy hao ng vi gi tr ti a trong bng di v gi tr suy
hao ng vi gi tr ti thiu ti gn mp bng di , cc tn s cho cho -
0.5dB, -1dB , -3dB , -10dB , -20dB , -30dB v -40dB
Hy v p ng theo n v dB i li vi thang logarithm tn s
c chun ho
Hy dng my o phase chnh xc v ghi li s chm phase ca b lc
ti mi mt trng thi ca n ti cc tn s sau y
40, 120, 400, 480, 700, 780, 1000, 1080, 1300, 1380, 1600, 1680,
1900, 1980, 2100, 2180, 2300, 2380, 2700, 2780, 3000, 3080, 4000,
4080, 5000, 5080Hz
tr phase / c th c xem xt bn cnh cc tn s ny v gi tr
tng ng vi tr nhm ( / ) c th c tnh theo cc tn s
80, 440, 740, 1040, 1340, 1640, 1940, 2140, 2340, 2740, 3040,
4040, 5040Hz
Hy v s chm phase , tr phase v tr nhm ng vi mi mt trng
thi b lc khi dng cc thang tn s c chun ho tuyn tnh ri tnh cc
tr tn s zero
e) Quan st p ng truyn dn
Cho li vo b lc mt xung in th dng sng hnh vung , hy quan st
thi gian cn thit cho in th li ra t gi tr n nh sau mi mt
bc ca sng hnh vung
Vi mi mt b lc, hy quan st tr thi gian gia tn hiu li vo v
li ra khi li ra t c 50% gi tr cui cng ca n. Chng c th c
coi nh tr hiu dng ca b lc theo p ng li vo
f) M phng
Cho mch lc vi s theo hnh v di y :
123
Hy s dng phn mm PSPICE ( hay l ELECTR)NIC WORKBENCH)
a ra p ng tn s ca b lc
S dng cc phn mm MatLab hay Mathematica tnh p ng bin
v p ng phase ca b loc
Thay th 1 vi gi tr ca mt vi phn t trong b lc trn y ( theo yu cu
ca gio vin ) ri m phng v thu nhn li kt qu
2. Thit k b lc IIR dng mu Analog.
Mt lp quan trng thit k b lc s IIR l da trn bin i b lc tng t c in
Butterworth, Chebyshev I, Chebyshev II, v Cauter sang dng s tng ng. Phng
php c in thit k cc b lc s IIR c thc hin v nhng l do sau y:
a) u im ca thit k b lc IIR tng t. Do , rt thun tin s dng
th tc thit k c pht trin b lc tng t
b) C rt nhiu phng php thit k b lc tng t hu ch c cng thc
tht k dng n gin, phng php thit k mch lc s da trn cng thc
thit k tng t chun hn l n gin thc hin n, s dng c bin i
tng t hay bt k dng no.
124
c) Phng php xp x tiu chun ca b lc tng t khng cho ta cng thc
thit k n gin khi cc phng php ny c p dng trc tip thit
k b lc FIR.
Bn hm trong MATLAB
TM
SIGNAL PROCESSING TOOLBOX thit k b lc IIR
thng thp ni trn l :
[b,a]=butter(N,Wn)
[b,a]=cheby1(N,Rp,Wn)
[b,a]=cheby2(N,Rs,Wn)
[b,a]=ellip(N,Rp,Rs,Wn)
C 4 phng php thit k b lc thng thp bc N c tn s ct Wn,Wn nm trong
khong 0 v 1, vi 1.0 l mt na tn s ly mu( tn s Nyquist). Vi cheby1 v ellip,
bin Rp l decibel ca gn (ripple) trong di thng, vi cheby2 v ellip di chn c
t l Rs decibel tr xung t gi tr nh ca di thng.
Cc hm sau cho ta h s b lc c chiu di N+1 hng vector b v a. Cc h s b
lc l ly tha ca z:
n
n
z n a z a a
z n b z b b
z A
z B
z H
+ + +
+ + +
= =
) 1 ( ... ) 2 ( ) 1 (
) 1 ( ... ) 2 ( ) 1 (
) (
) (
) (
1
1
(12)
Cc gi tr nh hn ca gn Rp thng di v cc gi tr ln hn Rs chn di u
dn n qu ln hn (c trng ct ngn hn).
Nu Wm l vector 2 thnh phn, Wn=[w1,w2], thit k 4 hm b lc thng di bc
2N vi di w1< <w2.
B lc thng cao c thit k bng cch thm chui high vo sau cu lnh:
[b,a]=ellip(N,Rp,Rs,Wn,high)
B lc chn di c thit k bng cch thm chui stop vo cui cu lnh:
[b,a]=butter(N,Rp,Rs,Wn,stop)
l b lc chn di bc 2N nu Wn=[w1,w2]. Di chn l w1< <w2.
125
Bc b lc nh nht yu cu phi t c cc tnh cht thc hin c bit, c
nh ngha trong hnh 8.1, c th c tnh ton s dng mt hm chn bc b lc:
[N,Wn]=buttord(Wp,Ws,Rp,Rs)
[N,Wn]=cheb1ord(Wp,Ws,Rp,Rs)
[N,Wn]=cheb2ord(Wp,Ws,Rp,Rs)
[N,Wn]=ellipord(Wp,Ws,Rp,Rs)
Cc hm ny tr li N v Wn s dng trong butter, cheby1,cheby2, hay ellip. Cc
hm chn bc ny cng c dng thit k b lc chn di, thng di v thng cao.
Vi b lc thng cao, Wp>Ws, Vi b lc thng di v chn di, t Wp v Ws l vector
2 thnh phn xc nh tn s c 2 l ca b lc, l u trc l th 2. Wn, vi b lc
thng di, c tr li l vector hng c 2 thnh phn a vo hm thit k b lc.
Ex1: Chn bc b lc Butterworth, Rp =3dB, Kt qu l li ra Wn =Wp. D liu vi tn
s ly mu 1000 Hz, b lc thng thp c suy gim nh hn 3dB 100 Hz v gim
15 dB vi 150 Hz:
Wp=100/500;
Ws=150/500;
Rp=3;
Rs=15;
[N,Wn]=buttord(Wp,Ws,Rp,Rs)
[b,a]=butter(n,Wn);
126
Ex2: Thit k b lc thng di c di thng t 100 Hz n 200 Hz, c suy gim
nh hn 3 dB di thng v di 30 dB 50 Hz c 2 pha, gi s tn s ly
mu l 1000 Hz:
Wp=[100 200]/500;
Ws=[50 250]/500;
Rp=3;
Rs=30;
[N,Wn]=buttord(Wp,Ws,Rp,Rs)
[b,a]=butter(n,Wn);
Ex3: Chn bc b lc Chebyshev I, th tc cng ging nh trn D liu vi tn s ly
mu 1000 Hz, thit k b lc thng thp c suy gim nh hn 3dB 100 Hz v gim
15 dB vi 150 Hz:
Wp=100/500;
Ws=150/500;
Rp=3;
Rs=15;
[N,Wn]=cheb1ord(Wp,Ws,Rp,Rs)
[b,a]=cheby1(n,RpWn);
Ex4: Thit k b lc thng di Chebyshev loi I c di thng t 100 Hz n 200 Hz,
suy gim nh hn 3 dB di thng v di 30 dB 50 Hz c 2 pha, gi s tn
s ly mu l 1000 Hz:
Wp=[100 200]/500;
Ws=[50 250]/500;
Rp=3;
Rs=30;
[N,Wn]=cheb1ord(Wp,Ws,Rp,Rs)
[b,a]=cheby1(n,Rp,Wn);
Ex5: Chn bc b lc Chebyshev loi II, th tc cng ging nh trn D liu vi tn
s ly mu 1000 Hz, thit k b lc thng thp c suy gim nh hn 3dB 100 Hz v
gim 15 dB vi 150 Hz:
Wp=100/500;
Ws=150/500;
Rp=3;
Rs=15;
[N,Wn]=cheb2ord(Wp,Ws,Rp,Rs)
[b,a]=cheby2(n,Rs,Wn);
127
Ex6: Thit k b lc thng di Chebyshev loi I c di thng t 100 Hz n 200 Hz,
suy gim nh hn 3 dB di thng v di 30 dB 50 Hz c 2 pha, gi s tn
s ly mu l 1000 Hz:
Wp=[100 200]/500;
Ws=[50 250]/500;
Rp=3;
Rs=30;
[N,Wn]=cheb2ord(Wp,Ws,Rp,Rs)
[b,a]=cheby2(n,Rs,Wn);
Ex7: Chn bc b lc elliptic, th tc cng ging nh trn D liu vi tn s ly mu
1000 Hz, thit k b lc thng thp c suy gim nh hn 3dB 100 Hz v gim 15 dB
vi 150 Hz:
Wp=100/500;
Ws=150/500;
Rp=3;
Rs=15;
[N,Wn]=ellipord(Wp,Ws,Rp,Rs)
[b,a]=ellip(n,Rp,Rs,Wn);
Ex8: Thit k b lc thng di elliptic c di thng t 100 Hz n 200 Hz, suy gim
nh hn 3 dB di thng v di 30 dB 50 Hz c 2 pha, gi s tn s ly mu
l 1000 Hz:
Wp=[100 200]/500;
Ws=[50 250]/500;
Rp=3;
Rs=30;
[N,Wn]=ellipord(Wp,Ws,Rp,Rs)
[b,a]=ellip(n,Rp,Rs,Wn);
Thc hin b lc IIR
B lc p ng n xung v hn ( IIR ) c s dng rng ri trong cc ng dng
s l s tn hiu. Hm truyn ca b lc IIR c cho bi :
( )
( )
( ) z X
z Y
z a z a
z b z b b
z H
N
N
M
M
=
+ + +
+ + +
=
L
L
1
1
1
1 0
1
128
Hnh dI y cho ta gin khI ca b lc IIR ( kiu 2 ) bc-N Direction-form
. Trong min thi gian n mt b lc IIR bc N c biu din bI hai biu thc khc
nhau nh sau :
Ti khong thi gian th n
- x(n) l mu li vo hin hnh
- y(n) l mu li ra hin hnh
d(n) = x(n) d(n 1)a
1
... d(n N + 1)a
N-1
y(n) = d(n)b
0
+ d(n 1)b
1
+ ... + d(n N + 1)b
N-1
Hai biu thc trn d dng c s dng cho TMS320C50 khi dng cc lnh
nhn accumulator ( MAC, MACD, MADS, MADD ) . C rng biu thc th hai cng
i hi cc lnh di chuyn d liu nng cp ( update ) trng thi xu bin I c
d(n) .
thc hin b lc IIR trnh by phng trnh (9) trc tip. C 2 cch thc hin
b lc IIR trc tip l : Direct-Form I v Direct-Form II. Thc hin Direct-Form I
phng trnh sai phn bc N c ch ra trn hnh 8.2. Cu trc mng c ch ra trn
hnh 8.2 c phng trnh sai phn nh sau:
= =
+ =
M
k
k
N
k
k
k n x b k n y a n y
0 1
] [ ] [ ] [ (13)
129
vi x [n ] v y [n ] l li vo v li ra tng ng. Phng trnh ny cho thy li ra
ca b lc l tng cc trng s ca li vo v li ra ca b lc. S dng cc k thut
tng t vi b lc FIR, iu ny c th thc hin trc tip v c hiu qu trn
TMS320C50,
Thc hin Direct-Form II ca phong trnh sai phn bc N c cho trn hnh 8.3. V
dng Direct-Form II c tr nh nht ( cc nhnh c nhn
1
z ), n cn t thanh ghi lu tr
khi tnh ton. Cu trc ny rt thun li vi b nh d liu nh khi thc hin b lc IIR.
Phng trnh sai phn cho mng ny l:
=
+ =
N
k
k
k n d a n x n d
1
) ( ) ( ) ( (14)
=
=
N
k
k
k n d b n y
1
) ( ) ( (15)
vi x(n) v y(n) tng ng l li vo v li ra; d(n) l bin trung gian. Khi N=2, phng
trnh tr thnh:
) 2 ( ) 1 ( ) ( ) (
2 1
+ + = n d a n d a n x n d (16)
) 2 ( ) 1 ( ) ( ) (
2 1 0
+ + = n d b n d b n d b n y (17)
130
Cu trc mng ca n c cho trn hnh 8.4. Ch rng s dng Direct-Form II
ny, d(n) l tn s cn lu trong b lu gi tr tr. Sp xp lu gi tr delay-node cho
Direct-Form II IIR c trnh by trn hnh 8.5.
B. PHN THC NGHIM
1. Th tc
1) Tt ngun, ni bn mch vi cng PC RS232-C trn my tnh. Ni 9 Vac Adapter
vi bn mch v cm ra bn ngoi. Bt my tnh v thay i ng dn c cha
phn mm DSK.
2) Chy chng trnh DSKL( DSK5L) v kim tra l chng trnh DSK_COMM
c ti chnh xc. By gi thc hin AUTOTEST (lnh A) v xc minh l
kim tra vng lp. Nu DSK c kt ni v chc nng chnh xc th bn c th
bt u thc hin. Dng chng trnh DSKL.
3) Thit k b lc IIR thng thp. C cc yu cu nh sau:
passband 0-3 KHz
passband ripple 0.5db
stopband attenuation 45db
sampling frequency 15 KHz
transition width 450 Hz
Xc nh cc h s cho b lc s dng Matlab.
131
4) Lng t ha cc h s v lit k cc h s t l s c s dng chng trn.
Lit k cc h s t l ny v tt c cc h s, h s lng t. C th ph thuc vo
h s t l thit k.
5) Trc khi thc hin b lc, so snh p ng tn s ca h s tnh ton vi p ng
ca h s lng t , v chng minh rng lng t khng lm gim p ng tn s
ca b lc.
6) To ra cu trc thc hin v biu miu t b lc ging nh b lc thc hin
dng DSP.
7) To ra m ngun thc hin b lc. a 1 Vrms vo DSK v chy chng trnh.
Quan st li ra ca DSK trn dao ng k v xc nhn rng l xung sin khi tn
s li vo nm trong phn thng di ca b lc. o bin li ra khi tn s thay
i trong khong 50 Hz n 3500 Hz. Nu li ra l sng sin, dng my o in p
xoay chiu o bin . So snh ph o c ca b lc vi gi tr mong mun.
2. Yu cu tin hnh thc tp
Di y l cc chng trnh v d v b lc IIR . Chng trnh v d (*) di
y dng cho b lc IIR thng thp bc N=4 , tn s ct khong 3.4KHz, dng cc lnh
vng lp n ( RPT ) v nhn accumulator ( MAC, MACD ) Do bn cht c th hi quy
c ca mt b lc IIR nn vic lng t ho cc h s ca b lc c th gy ra s thay
i ln so vi p ng tn s mong mun. trnh c iu ny, hm chuyn i b
lc mong mun c th c b thnh cc phn c bc thp hn, lin tip nhau.
Cc v d (**) v chng trnh v d (***) di y cho ta thy mt ng dng
ca b lc IIR bc-2 N tng Cc h s b lcc v cc bin s trng thi c ct gi
trong b nh d liu. Lu vic s dng cc ch dn LTD v MPYA thc hin cc
hot ng di chuyn d liu v a tch ly.
Hy tn dng chng trnh ny tin hnh cc th nghim sau
1. Trong cc th nghim sau, tn s ly mu ca mch TMS320C50 cn t l
22,321 KHz v tn s ct cu b lc tng t thng thp ca mch l 10KHz. Cc
b lc IIR di y c thit k v thc hin, c suy gim 3 dB tn s thng
di v 30 dB tn s chn di.
2. B lc thng thp c tn s ct 2 KHz;
132
3. B lc thng cao c tn s ct 3.4 KHz;
4. B lc thng di c di thng nm trong khong 300 Hz v 3.4 KHz.
5. B lc chn di c di chn nm gia 2 KHz v 3 KHz.
Th nghim 2 v 4 l khng bt buc. Cc b lc Butterworth, Chebyshev I,II v
elliptic c th s dng. Hiu sut ca cc b lc IIR c th c kim tra so snh vi hiu
sut ca b lc FIR , ghi li v bo co nhng g bn thy.
Bi bo co phi trnh by th tc thit k v kt qu thc hin.
------------------------------------------------------------------------------------------------------------
V d (*). Nth-Order IIR Filter Using RPT and MACD Instructions
.title Nth Order IIR Type II Filter
.mmregs
N .set 4
N-1 .set 3
.ds 0f00h
TA .word 20 ;
RA .word 20 ; Freq Sampling 8KHz
TAp .word 1 ; not used
RAp .word 1 ; not used
TB .word 31 ; <10>
RB .word 31 ;
AIC_CTR .word 09h ;
YN .word 0
YN-1 .word 0
YNLAST .word 0
POUBY .word 0
MA .word 0 ;
XN .word 0,0,0,0 ; <20>
XNLAST .word 0
POUBX .word 0 ;
.ps 0980h
COEFFA .word -5249,19621,-30929,24108
COEEFB .word 186,-107,296,-107,186
133
;**************************************
; Set up the ISR vector *
;**************************************
.ps 080ah ;
rint: B RECEIVE ;0A ; Serial port receive interrupt
RINT.
xint: B TRANSMIT ;0C ; Serial port transmit interrupt
XINT.
;*********************************************
; TMS32C05X INITIALIZATION *
;*********************************************
.ps 0a00h
.entry
SETC INTM ; Disable interrupts
LDP #0 ; Set data page pointer
OPL #0834h,PMST ; OR the status register
LACC #0
SAMM CWSR ; Set software wait state to 0
SAMM PDWSR ;
SETC SXM
SPLK #022h,IMR ; Using XINT syn TX & RX
CALL AICINIT ; initialize AIC and enable interrupts
SPLK #12h,IMR ; Select serial port receive interrupt
CLRC OVM
SPM 0
CLRC INTM ; Enable interrupts
forever IDLE
B forever
;------- end of main program ----------;
;-------------------------- RECIEVER ISR --------------------------
RECEIVE:
LDP #XN
CLRC INTM
LAMM DRR ; get input in ACC
134
SACL XN
; start IIR
;********************************************************
;* This routine implements an Nth order type II IIR filter. *
;* d(n) = x(n) d(n1)a1 d(n2)a2 ... d(nN+1)aN1 *
;* y(n) = d(n)b0 + (dn1)b1 +...+ d(nN+1)bN1 *
;* Memory Requirement: State variables (low to high data memory): *
;* d(n) d(n1) ... d(nN+1) *
;* Coefficient (low to high program memory): *
;* a(N1) a(N2) ... a(1) b(N1) b(N2) ... b(1) b(0) *
;* Entry Conditions: *
;* AR0 > Input *
;* AR1 > d(nN+1) *
;* AR2 > Output *
;* COEFFA > a(N1) *
;* COEFFB > b(N1) *
;* ARP = AR0 *
;********************************************************
LAR AR0,#XN
LAR AR1,#XNLAST
LAR AR2,#YNLAST
IIR_N:
ZPR ; Clear P register
LACC *,15,AR1 ; Get Q15 input
RPT #3 ; For i=1,i<=N1,++i
MAC COEFFA,* ; Acc+=a(Ni))*d(nN+i)
APAC ; Final accumulation
SACH *,1 ; Save d(n)
ADRK 4 ; AR1 > d(nN+1)
LAMM BMAR ; Acc > a(N1)
ADD #4 ; Acc > b(N1)
SAMM BMAR ; BMAR > b(N1)
RPTZ #4 ; For i=1,i<=N,++i
MACD COEFFB,* ; Acc+=b(Ni)*d(nN+i)
LTA *,AR2 ; Final accumulation
SACH *,1 ; ??? Save Yn
LACC YNLAST
AND #0fffch ; and ls 2 bits of top 16 bits, for DAC.
SAMM DXR
RETE
135
;-------------------------- Transmit ISR --------------------------
TRANSMIT:
RETE
;********************************************************
;* DESCRIPTION: This routine initializes the TLC32040 for *
;* your sample rate and command word *
;********************************************************
;* aic initialization data
AICINIT:
SPLK #01h,PRD
SPLK #20h,TCR ; make a 10 mhz clock signal
MAR *,AR0
LACC #0008h ; Non continuous mode
SACL SPC ; FSX as input
LACC #00c8h ; 16 bit words
SACL SPC
LACC #080h ; Pulse AIC reset by setting it low
SACH DXR
SACL GREG
LAR AR0,#0FFFFh
RPT #10000 ; and taking it high after 10000 cycles
LACC *,0,AR0 ; (.5ms at 50ns)
SACH GREG
LDP #TA ;
SETC SXM ;
LACC TA,9 ; Initialized TA and RA register
ADD RA,2 ;
CALL AIC_2ND ;
;------------------------
LDP #TB
LACC TB,9 ; Initialized TB and RB register
ADD RB,2 ;
ADD #02h ;
CALL AIC_2ND ;
;------------------------
LDP #AIC_CTR
LACC AIC_CTR,2 ; Initialized control register
ADD #03h ;
;LACC #11100000b
CALL AIC_2ND ;
136
RET ;
AIC_2ND:
LDP #0
SACH DXR ;
CLRC INTM
IDLE
ADD #6h,15 ; 0000 0000 0000 0011 [X..X]
16
b
SACH DXR ;
IDLE
SACL DXR ;
IDLE
LACL #0 ;
SACL DXR ; make sure the word got sent
IDLE
SETC INTM
RET ;
.end
V d (**) Nth-Order IIR Filter Using RPT and MACD Instructions
.title Nth Order IIR Type II Filter
.mmregs
********************************************************
* This routine implements an Nth order type II IIR filter. *
* d(n) = x(n) d(n1)a1 d(n2)a2 ... d(nN+1)aN1 *
* y(n) = d(n)b0 + (dn1)b1 +...+ d(nN+1)bN1 *
* *
* Memory Requirement: *
* State variables (low to high data memory): *
* d(n) d(n1) ... d(nN+1) *
* *
* Coefficient (low to high program memory): *
* a(N1) a(N2) ... a(1) b(N1) b(N2) ... b(1) b(0) *
* *
* Entry Conditions: *
* AR0 > Input *
* AR1 > d(nN+1) *
* AR2 > Output *
* COEFFA > a(N1) *
* COEFFB > b(N1) *
* ARP = AR0 *
* *
137
********************************************************
IIR_N:
ZPR ;Clear P register
LACC *,15,AR1 ;Get Q15 input
RPT #(N2) ;For i=1,i<=N1,++i
MAC COEFFA,* ;Acc+=a(Ni))*d(nN+i)
APAC ;Final accumulation
SACH *,1 ;Save d(n)
ADRK N1 ;AR1 > d(nN+1)
LAMM BMAR ;Acc > a(N1)
ADD #N1 ;Acc > b(N1)
SAMM BMAR ;BMAR > b(N1)
RPTZ #(N1) ;For i=1,i<=N,++i
MACD COEFFB,* ;Acc+=b(Ni)*d(nN+i)
LTA *,AR2 ;Final accumulation
SACH *,1 ;Save Yn
V d (***). N Cascaded BiQuad IIR Filter Using LTD and MPYA Instructions
.title N Cascaded BiQuad IIR Filters
.mmregs
*****************************************************************
* This routine implements N cascaded blocks of biquad IIR canonic type II *
* filters. Each biquad requires 3 data memory locations d(n),d(n1),d(n2), *
* and 5 coefficients a1,a2,b0,b1,b2. *
* For each block: d(n) = x(n)d(n1)a1d(n2)a2 *
* y(n) = d(n)b0+d(n1)b1+d(n2)b2 *
* *
* Coefficients Storage (low to high data memory): *
* a2,a1,b2,b1,b0, ... ,a2,a1,b2,b1,b0 *
* 1st biquad Nth biquad *
* *
* State Variables (low to high data memory): *
* d(n),d(n1),d(n2), ... ,d(n),d(n1),d(n2) *
* Nth biquad 1st biquad *
* *
* Entry Conditions: *
* AR1 > d(n2) of 1st biquad *
* AR2 > a2 of 1st biquad *
138
* AR3 > input sample (Q15 number) *
* AR4 > output sample (Q15 number) *
* DP = 0, PM = 0, ARP = 3 *
*****************************************************************
BIQUAD: ;Setup variables
ZPR ;Clear P register
LACC *,15,AR1 ;Get Q15 input
SPLK #2,INDX ;Setup index register
SPLK #N1,BRCR ;Setup count
;Begin computation;
RPTB ELOOP1 ;Repeat for N biquads
LOOP:
LT *,AR2 ;T = d(n2)
MPYA *+,AR1 ;Acc = x(n), P = d(n2)a2
LTA *,AR2 ;Acc += d(n2)a2, T = d(n1)
MPY *+ ;P = d(n1)a1
LTA *+,AR1 ;Acc += d(n1)a1, T = b2
SACH *0+,1 ;Save d(n)
MPY * ;P = d(n2)b2
LACL #0 ;Acc = 0
LTD *,AR2 ;T = d(n1), d(n2) = d(n1)
MPY *+,AR1 ;Acc += d(n2)b2, P = d(n1)b1
LTD *,AR2 ;T = d(n), d(n1) = d(n)
MPY *+,AR1 ;Acc += d(n1)b1, P = d(n)b0
ELOOP:
LTA *,AR4 ;Final accumulation
SACH *,1 ;Save output in Q15 format
139
C. TI LIU THAM KHO
[1]. TMS320C50 Fixed-Point DSP Assembly Language Tools-Users Guide, Texas
Instruments Incorporated, 1990.
[2] Second- Generation TMS320- Users Guide, Texas Instruments, 1989.
[3] The ART Electronic Designed . MIT University , Boston 1996.
[4] Digital Signal Processing , Sanjit K. Mitra , University California . McGrawHill
2006
140
MC LC
A. PHN L THUYT (120)
3. Cc c tnh p ng b lc thng thp (120)
4. Thit k b lc IIR dng mu Analog. (123)
B. PHN THC NGHIM (130)
1. Th tc (130)
2. Yu cu tin hnh thc tp (131)
C. TI LIU THAM KHO (139)