Implementing IIR/FIR Filters
Implementing IIR/FIR Filters
Implementing IIR/FIR Filters
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Difference Equation<br />
yn ( ) = 2{ α[ x(<br />
n)<br />
+ 2x( n – 1)<br />
+ xn ( – 2)]<br />
+ γyn ( – 1)<br />
– βyn ( – 2)<br />
}<br />
X:(R0)<br />
2α<br />
α<br />
γ<br />
– β<br />
α<br />
Data Structures<br />
Y:(R4)<br />
Y:(R5)<br />
Total Instruction Cycles<br />
6 Icyc @ 20 MHz = 600ns<br />
x(n-1)<br />
x(n-2)<br />
y(n-1)<br />
y(n-2)<br />
DSP56001 Code<br />
;Y1=x(n) (Input)<br />
;X0=α<br />
MPY<br />
MAC<br />
MAC<br />
MAC<br />
MAC<br />
MOVE<br />
X0,Y1,A<br />
X0,Y0,A<br />
X0,Y0,A<br />
X0,Y0,A<br />
X0,Y0,A<br />
X:(R0)+,X0<br />
X:(R0)+,X0<br />
X:(R0)+,X0<br />
X:(R0)+,X0<br />
X:(R0)+,X0<br />
A,X1<br />
Y:(R4)+,Y0<br />
Y:(R4),Y0<br />
Y:(R5)+,Y0<br />
Y:(R5),Y0<br />
Y1,Y:(R4)<br />
A,Y:(R5)<br />
;A=αx(n)<br />
;A=A+2αx(n-1)<br />
;A=A+αx(n-2)<br />
;A=A+γy(n-1)<br />
;A=A-βy(n-2)<br />
;y(n-2)=2A (assumes scaling<br />
;mode is set).<br />
;X1 is Output.<br />
Figure 2-12<br />
Figure 2-12 DSP56001 Code and Data Structures for Second-Order Direct-Form<br />
Implementation of a Lowpass <strong>IIR</strong> Filter<br />
MOTOROLA 2-15