第 9章 数字信号处理的实现第 9章 数字信号处理的实现
9.1 数字信号处理中的量化效应
9.2 数字信号处理技术的软件实现
9.3 数字信号处理的硬件实现第 9章 数字信号处理的实现
9.1 数字信号处理中的量化效应信号 x(n)值量化后用 Q[ x(n)] 表示,量化误差用
e(n)表示,
e(n)=Q[ x(n)] -x(n)
图 9.1.1 量化噪声 e(n)
(a) 截尾法; (b) 舍入法
- q 0
q
- 1
p [ e ( n ) ]
e ( n )
( a )
0
q
- 1
e ( n )
( b )
p [ e ( n ) ]
1
2
q-
1
2
q
第 9章 数字信号处理的实现
1,A/D变换器中的量化效应
A/D变换器的功能原理图如图 9.1.2(a)所示,图中
(n)是量化编码后的输出,如果未量化的二进制编码用 x(n)表示,那么量化噪声为 e(n)= (n)-x(n),因此
A/D变换器的输出 (n)为
^x
^x
^x
^ ( ) ( ) ( )x n x n e n (9.1.1)
那么考虑 A/D变换器的量化效应,其方框图如图
9.1.2(b)所示 。 这样,由于 e(n)的存在而降低了输出端的信噪比 。
第 9章 数字信号处理的实现图 9.1.2 A/DC
(a) A/DC变换器功能原理图; (b) 考虑量化效应的方框图采样 量化编码
x ( n )^x a ( t ) x a ( n T )
( a )
理想 A / D C
x a ( t ) x ( n )
( b )
e ( n )
x ( n )^
第 9章 数字信号处理的实现假设 A/D变换器输入信号 xa(t)不含噪声,输出
(n)中仅考虑量化噪声 e(n),信号 x-a(t) 平均功率用 表示,e(n)的平均功率用 表示,输出信噪比用 S/N表示,
^x
2x? 2e?
2
2
x
e
S
N

或者用 dB数表示
2
21 0 l g
x
e
S dB
N

(9.1.2)
A/D变换器采用定点舍入法,e(n)的统计平均值
me=0,方差
2 2 211 2
1 2 1 2
b
e q?

第 9章 数字信号处理的实现将 代入 (9.1.2)式,得到,
2e?
26,0 2 1 0,7 9 1 0 l g
x
S b
N
(9.1.3)
为充分利用其动态范围,取
,代入 (9.1.3)式,得
1
3x V
6,0 2 1,2 9S bN
第 9章 数字信号处理的实现
2,数字网络中系数的量化效应数字网络或者数字滤波器的系统函数用下式表示:
0
1
()
1
M
r
r
r
N
r
r
r
bz
Hz
az
式中的系数 br和 ar必须用有限位二进制数进行量化,
存贮在有限长的寄存器中,经过量化后的系数用和 表示,量化误差用 Δbr和 Δar表示,^^
rrba
^^,,
rrr r r ra a a b b b
第 9章 数字信号处理的实现对于 N阶系统函数的 N个系数 ar,都会产生量化误差 Δar,每一个系数的量化误差都会影响第 i个极点 Pi的偏移 。 可以推导出第 i个极点的偏移 ΔPi服从下面公式:
^
i iiP P P
(9.1.4)
1
1
1
()
NrN
i
ir
r il
l
l
P
Pa
PP

(9.1.5)
第 9章 数字信号处理的实现上式表明极点偏移的大小与以下因素有关:
(1) 极点偏移和系数量化误差大小有关。
(2) 极点偏移与系统极点的密集程度有关。
(3) 极点的偏移与滤波器的阶数 N有关,阶数愈高,
系数量化效应的影响愈大,因而极点偏移愈大 。
3,数字网络中的运算量化效应
1) 运算量化效应在图 9.1.3 中,有两个乘法支路,采用定点制时共引入两个噪声源,即 e1(n)和 e2(n),噪声 e2(n)直接输出,噪声 e1(n)经过网络 h(n)输出,输出噪声 ef(n)为第 9章 数字信号处理的实现图 9.1.3 考虑运算量化效应的一阶网络结构
e
1
( n ) e
2
( n )
x ( n )
a b
z - 1
y ( n )^ + e
f
( n )
第 9章 数字信号处理的实现
ef(n)=e1(n)*h(n)+e2(n)
如果尾数处理采用定点舍入法,则输出端噪声平均值为12
12
12
[ ( ) ( ) ] [ ( ) ]
[ ( ) ( ) ] [ ( ) ]
()
f
E
m
m E e n h n E e n
E h m e n m E e n
m h m m





上式中 E[ ] 表示求统计平均值,m1和 m2分别表示两个噪声源的统计平均值,这里 m1=m2=0,因此,
0fm?
第 9章 数字信号处理的实现由于 e1(n)和 e2(n)互不相关,求输出端噪声方差时,
可分别求其在输出端的方差,再相加 。 这里,每个噪声源的方差均为
22
22
2
22
12
1
,2
12
[ ( ( ) ) ]
[ ( ) ]
[ ( ) ] [ ( ) ]
b
e
f f f
f
ff
qq
E e n m
E e n
E e n E e n



输出端的噪声 ef(n)的方差为第 9章 数字信号处理的实现式中,e f1 (n)和 e f2 (n)分别表示 e1(n)和 e2(n)在输出端的输出;
22
2
2
1 1 1
00
11
00
2
00
22
0
2 2 2 2
0
[ ( ) ]
[ ( ) ] [ ( ) ( ) ( ) ( ) ]
( ) ( ) [ ( ) ( ) ]
( ) ( ) ( )
()
()
ef
f
ml
ml
e
ml
e
m
f e e
m
E e n
E e n E h m e n m h l e n l
h m h l E e n m e n l
h m h l m l
hm
hm















第 9章 数字信号处理的实现根据帕斯维尔定理 (2.5.29)式,也可以用下式计算:
2 2 1 2
1
1
1
( ) ( )
2
1
()
1
f e e
dz
H z H z
jz
bz
Hz
az


第 9章 数字信号处理的实现
2) 网络结构对输出噪声的影响例 9.1.1 已知网络系统函数为
1
12
0,4 0,2( ),0,9
1 1,7 0,7
zH z z
zz



网络采用定点补码制,尾数处理采用舍入法 。 试分别计算直接型,级联型和并联型结构输出噪声功率 。

1
12
1
11
11
0,4 0,2
()
1 1,7 0,7
0,4 0,2 1
1 0,9 1 0,8
5,6 5,2
1 0,9 1 0,8
z
Hz
zz
z
zz
zz







第 9章 数字信号处理的实现图 9.1.4 例 9.1.1 的网络结构图
e
2
( n ) e
1
( n )
x ( n )
1,7 0,2
z
- 1
e
0
( n )
e
3
( n )
z
- 1
0,4
0,7 2-
y ( n ) + e
f
( n )y ( n )
^

e
1
( n )
x ( n )
0,9
z
- 1
z
- 1
e
0
( n )
e
2
( n )
e
3
( n )
5,6
5,2-
( a ) ( c )
e
3
( n )
x ( n )
0,2
z
- 1
e
1
( n )
e
0
( n )
z
- 1
0,4
y ( n ) + e
f
( n )y ( n )
^

0,9 0,8
e
2
( n )
( b )
0,8
y ( n ) + e
f
( n )y ( n )
^

第 9章 数字信号处理的实现
(1) 直接型 。
0 1 2 3
2 2 2 1
( ) ( ) ( ) [ ( ) ( )] ( )
1 1 1
2 2 ( ) ( )
1 2 1 2 2
f
fc
e n e n e n e n e n h n
dz
q q H z H z
jz


式中
1
1
11
11
2 2 2 2
1 1 0,4 0,2 0,4 0,2
( ) ( )
2 2 ( 1 0,9 )( 1 0,8 ) ( 1 0,9 )( 1 0,8 )
R e [ ( ) ( ),0,9 ] R e [ ( ) ( ),0,8 ]
6 1,0 5 3 2 8,8 9 9 3 2,1 6 4
11
3 2,1 6 4 5,5 2 7
66
cc
f
d z z z d z
H z H z
j z j z z z z z
s H z H z s H z H z
q q q









第 9章 数字信号处理的实现
2) 级联型。
0 1 2 3 2
1
2 2 21
2 2 1 2 1
2
1
22 1
1
22
( ) ( ) ( ) [ ( ) ( ) ( ) ] ( )
1
( ),( ) [ ( ) ]
1 0.8
1 1 3 1
( ) ( ) ( )
12 2 12 2
1 1 1
( ) ( )
2 2 ( 1 0.8 ) ( 1 0.8 )
R e [ ( ) ( )
f
f c c
cc
e n e n h n e n e n e n h n
H z h z Z T H z
z
dz dz
q H z H z q H z
j z j z
dz dz
H z H z
j z j z z z
s H z H z z










1
,0.8 ] 2.778?
式中第 9章 数字信号处理的实现
3) 并联型。
0 1 1 0 1 2
1 1 11
2 2 21
2 2 2 2 2
12
00
22
22
2
( ) [ ( ) ( ) ] ( ) [ ( ) ( ) ] ( )
1
( ) [ ( ) ],( ) 0.9 ( )
1 0.9
1
( ) [ ( ) ],( ) 0.8 ( )
1 0.8
11
2 ( ) 2 ( )
12 12
1 1 1 1
6 1 0.9 6 1 0.8
1.34
f
n
n
f
nn
e n e n e n h n e n e n h n
H z Z T h n h n u n
z
H z Z T h n h n u n
z
q h n q h n
qq
q









第 9章 数字信号处理的实现输入信号 x(n)方差为,均值 mx=0,输出端信号功率用 表示,
2x?
2y?
2 2 2 2 1
0
1( ) ( ) ( )
2y y x cn
dzh n H z H z
jz

输出信噪比 S/N用信号和噪声的功率比计算
2
2
f
y
S
N

第 9章 数字信号处理的实现
3) 防止溢出的措施可以采用限制输入信号动态范围的方法来防止溢出 。 设网络节点用 vi表示,从输入节点 x(n)到 vi节点的单位取样响应为 hi(n),
0
m ax
0
( ) ( )
()
ii
m
ii
m
v h m x n m
v x h m

式中,xmax为 x(n)的最大绝对幅度值,为保证节点 vi不溢出,要求 |vi|<1,那么要求:
m a x
0
1
()i
m
x
hm
(9.1.6)
第 9章 数字信号处理的实现上式即是对输入信号动态范围的限制 。 例如,一阶 IIR网络,单位取样响应 h(n)=anu(n),|a|<1,
m a x
0
1
1
()n
n
xa
a u n

图 9.1.5 一阶滤波网络
x ( n )
z - 1
y ( n )A
a
第 9章 数字信号处理的实现例如,在图 9.1.5 中,为防止溢出,在输入支路上加衰减因子 A,
0
( ) ( ) ( )
m
y n A h m x n m

设 |x(n)|max=|xmax|,则有 m a x
0
m a x
0
( ) ( ),0
1
()
m
m
y n A x h m A
A
x h m

为防止溢出,要求 |y(n)|<1,即
(9.1.7)
第 9章 数字信号处理的实现对于该例,有
m a x
1 aA
x
(9.1.8)
对于级联型或并联型结构,可在每个基本节的输入支路加衰减因子,如图 9.16 所示 。 如果 |xmax|=1,
图中 A1和 A2均按下式计算:
0
1
()
m
A
hm
(9.1.9)
第 9章 数字信号处理的实现最后要指出的是按照 (9.1.7)式或 (9.1.9)式选择衰减因子是比较保守或者说是比较苛刻的 。 经常用下式计算:
1 / 22
0
1
[ ( )
m
A
hm?
(9.1.10)
式中,δ是大于 1 的数,如果输入信号是方差为 1
的白噪声,可选 δ≥5。
第 9章 数字信号处理的实现图 9.1.6 级联型与并联型的衰减因子
y ( n )
x ( n )
b
1
z
- 1
b
2
a
2
a
1
A
1
A
2
z
- 1
b
3
z
- 1
b
4
a
4
a
3
z
- 1
y ( n )x ( n ) A
1
b
1
z
- 1
b
2
a
2
a
1
z
- 1
z
- 1
a
A
2
第 9章 数字信号处理的实现
9.2 数字信号处理技术的软件实现一个数字网络或数字滤波器设计完毕,知道其差分方程,可根据差分方程直接编写其程序 。 图 9.2.1(a)
是一个一般二阶基本网络,其差分方程为
y(n)=a1y(n1)+a2y(n2)+b0x(n)+b1x(n1)+b2x(n2)
式中,a1,a2,b0,b1,b2是已知参数; x(n)是输入信号,一般 x(n)是一些离散的数据 。
第 9章 数字信号处理的实现图 9.2.1 二阶网络结构及其级联型
y ( n )x ( n )
b
1
b 2a 2
a
1
y ( n )x ( n )
b
1
b 2a 2
a
1
b
3
b
4
a 4
a
3
( a ) ( b )
b
0 w ( n )
b
0
b 5
第 9章 数字信号处理的实现
ω(n)=a1ω(n1)+a2ω(n2)+b0x(n)+b1x(n1)+b2x(n2)
y(n)=a3y(n1)+a4y(n2)+b3ω(n)+b4ω(n1)+b5ω(n2)
从 n=0开始加入 x(n)信号,x(-1)=0,x(-2)=0,初始条件为,ω(-1)=0,ω(-2)=0,y(-1)=0,y(-2)=0,a1,a2,a3,
a4,b0,b1,b2,b3,b4,b5均为已知参数,其软件流程图如图 9.2.2 所示 。
第 9章 数字信号处理的实现图 9.2.2 两个二阶网络的级联结构软件流程图
w ( - 1) = 0,w ( - 2) = 0,y ( - 1) = 0,y ( - 2) = 0,x ( - 1) = 0,x ( - 2) = 0
n > ( N - 1)
输出,y ( n )
结束
x ( n ),n = 0,1,2,3 … N - 1
a
1
,a
2
,a
3
,a
4
,b
0
,b
1
,b
2
,b
3
,b
4
,b
5
输入:
n = 0
w ( n ) = a
1
w ( n - 1) + a
2
w ( n - 2) + b
0
x ( n ) + b
1
x ( n - 1) + b
2
x ( n - 2)
y ( n ) = a
3
w ( n - 1) + a
4
y ( n - 2) + b
3
w ( n ) + b
4
w ( n - 1) + b
5
w ( n - 2)
n = n + 1
N
Y
第 9章 数字信号处理的实现图 9.2.1(a)的二阶网络排序如图 9.2.3所示,图中圆圈中的数字表示排序 。 其运算次序如下:起始数据:
v1=0,v2=0
(1)v3=a1v1+a2v2
v4=b1v1+b2v2;
(2) v5=x(n)+v3;
(3) v6=v5;
(4) v7=b0v6+v4;
(5) y(n)=v7;
(6) 数据更新,v2=v1,v1=v6
第 9章 数字信号处理的实现图 9.2.3 图 9.2.1(a)的节点排序
y ( n )x ( n )
b
1
b
2
a
2
a
1
b
0
v
6
v
5
v
7
z
- 1
z
- 1
0 2 3 4 5
1
v
4
0
v
2
1
v
3
0
v
1
第 9章 数字信号处理的实现图 9.2.4 图 9.2.3软件流程图输入,x ( n ),n = 0,1,2,3 … N
a
1
,a
2
,b
0
,b
1
,b
2
v
1
= 0,v
2
= 0
n = 0
v
3
= a
1
v
1
+ a
2
v
2
,v
4
= b
1
v
1
+ b
2
v
2
v
6
= x ( n ) + v
3
y ( n ) = b
0
v
6
+ v
4
v
2
= v
1
,v
1
= v
6
n = n + 1
n > N
输出,y ( n )
结束
N
Y
第 9章 数字信号处理的实现图 9.2.5 图 9.2.1(b)的节点排序
y ( n )x ( n )
b
1
b
2
a
2
a
1
b
0
v
6
v
5
v
7
z
- 1
z
- 1
0 2 3 4
1
v
4
0
v
2
1
v
3
0
v
1
b
4
b
5
a
4
a
3
b
3
v
13
v
14
z
- 1
z
- 1
6 7 8
1
v
11
0
v
9
1
v
10
0
v
8
5
v
12
第 9章 数字信号处理的实现图 9.2.6 图 9.2.5的软件流程图
x ( n ),n = 0,1,2,3 … N
a
1
,a
2
,a
3
,a
4
,b
0
,b
1
,b
2
,b
3
,b
4
,b
5
输入:
v
1
= 0,v
2
= 0,v
8
= 0,v
9
= 0
n = 0
v
3
= a
1
v
1
+ a
2
v
2
,v
4
= b
1
v
1
+ b
2
v
2
v
1 0
= a
3
v
8
+ a
4
v
9
,v
1 1
= b
4
v
8
+ b
5
v
9
v
6
= x ( n ) + v
3
v
7
= b
0
v
6
+ v
4
v
1 3
= v
7
+ v
10
y ( n ) = b
3
v
1 3
+ v
11
v
2
= v
1
,v
1
= v
6
,v
9
= v
8
,v
8
= v
13
n = n + 1
n > N
输出,y ( n )
结束
Y
N
第 9章 数字信号处理的实现
9.3 数字信号处理的硬件实现
9.3.1 专用数字信号处理集成电路
DSP56200 为 28 脚双列直插封装,其引脚可分为如下几类 (见图 9.3.1):
(1) 主计算机接口;
(2) 级联接口;
(3) 时钟;
(4) 电源 。
第 9章 数字信号处理的实现图 9.3.1 DSP56200 引脚信号分类数据总线地址总线
V C C G N D
C L O C K
S T A R T
S D O
S D I
S S O
S S I
S E ICS
WR
RD
D0 ~ D7
A0 ~ A3
计算机接口级联接口时钟
D S P 5 6 2 0 0
第 9章 数字信号处理的实现
1.主计算机接口
D0~D7 是与主计算机通信的双向数据总线。
A0~A3 为寄存器地址。
为片选信号引脚,为低电平时可访问
DSP56200 片上的有关寄存器 。
为读信号引脚,当 为低电平时,使有关寄存器的内容呈现在数据总线上 。
为写信号,该信号让主机将有关内容写入由
A0~A3 所决定的寄存器中 。
CS CS
RD RD
WR
第 9章 数字信号处理的实现
2.级联接口级联接口主要用于多片 DSP56200 的级联应用,如图 9.3.2 所示。
第 9章 数字信号处理的实现图 9.3.2 DSP56200的级联
D S P 5 6 2 0 0
CS S TA R T
S D OS D I
S S OS S I
C L K
D0 ~ D7 A0 ~ A3 WR RD S E I
D S P 5 6 2 0 0
CS S TA R T
S D I
S S O
S S I
C L K
D0 ~ D7 A0 ~ A3 WR RD S E I
译码电路
A4 ~ A 1 5
至主计算机
I N T
数据总线地址总线时 钟 电 路
S TA R T C L O C K
WR
RD
A0 ~ A3
D0 ~ D7
第 9章 数字信号处理的实现
SDI,串行数据输入引脚,用于级联模式。
SDO,串行数据输出引脚,与下一级 SDI连接。
SSI,串行和输入,用于接收前一级 SSO输出的部分和。
SSO,串行和输出,与下一级芯片的 SSI相连。
SEI,串行误差输入,用于自适应滤波模式。
第 9章 数字信号处理的实现
3,时钟与电源
CLOCK,时钟输入,用于接收时钟信号。
START,启动处理信号。
VCC,电源,+5 V。
GND,地 。
第 9章 数字信号处理的实现
9.3.2 通用数字信号处理器 (DSP)
1.DSP的主要特点及发展概况与普通单片机相比较,DSP具有以下特点:
(1) 采用增强的哈佛结构,将程序存储器和数据存储器分开,并有各自的总线结构 (程序总线和数据总线 ),这样就减少了系统对总线的压力,并可在执行指令时采用流水线操作,使读取指令,指令译码和执行指令等操作并行进行 。
第 9章 数字信号处理的实现
(2) 片内带有高速阵列乘法器等专用硬件,使得一条指令可同时完成乘法和累加等复杂运算 。
(3) 具有片上高速数据 RAM和程序存储器 。
(4) 具有高速 I/O接口,提高数据交换速率 。
(5) 具有满足数字信号处理要求的一些高效特殊指令 。 例如,在数字滤波和 FFT等运算过程中,最频繁的操作为如下运算:
y=ax+b
第 9章 数字信号处理的实现表 9.3.1 TI公司产品一览表第 9章 数字信号处理的实现
2,TMS320C25的结构特点
TMS320C25的结构是在 TMS320C20 的基础上发展起来的,它通过更快的指令周期及改进的附加功能增加了数字信号处理算法功能 。 ′C25 的目标代码与
′C20 完全兼容 。
第 9章 数字信号处理的实现图 9.3.3 TMS320C25 结构框图第 9章 数字信号处理的实现
TMS320C25,68 脚塑料封装,各引脚的信号及信号状态与功能请参阅产品使用手册 。
TMS320C25,内部可分为六大部分,下面分别介绍各部分的性能 。
1) 数据存储器
2) 程序存储器
3) 辅助寄存器组及辅助寄存器算术单元
4) 程序计数器和堆栈
5) 中央算术逻辑单元第 9章 数字信号处理的实现
(1) 定标移位器。
(2) ALU和 ACC。
(3) 乘法器,T寄存器和 P寄存器。
图 9.3.4 TMS320C25 指令执行的流水线方式
N - 1
预取译码执行
N
N - 2
N + 1
N
N - 1
N + 2
N + 1
N
n + 2n + 1n
第 9章 数字信号处理的实现
6) 系统控制
(1) 定时器。
(2) 中断。
(3) 复位。
(4) 维持功耗模式。
(5) 多道处理和直接存储器存取。
3.TMS320C25 的指令系统
1) TMS320C25 的寻址方式
2) TMS320C25 的指令集第 9章 数字信号处理的实现表 9.3.2 间接寻址的七种形式第 9章 数字信号处理的实现表 9.3.3 TMS320C25 指令系统中使用的符号和缩写说明第 9章 数字信号处理的实现第 9章 数字信号处理的实现第 9章 数字信号处理的实现第 9章 数字信号处理的实现第 9章 数字信号处理的实现表 9.3.4 TMS320C25 指令一览表第 9章 数字信号处理的实现第 9章 数字信号处理的实现第 9章 数字信号处理的实现第 9章 数字信号处理的实现第 9章 数字信号处理的实现第 9章 数字信号处理的实现第 9章 数字信号处理的实现
4,TMS320C25 的应用与开发
TMS320C25 的指令周期为 100 ns,用它来实现
FIR滤波器时,每一抽头的乘法累加运算以及数据移位操作仅需要 100 ns。 对于一个 256 抽头的 FIR滤波器,
其采样频率可接近 40 kHz。 TMS320C25 现已广泛应用于很多领域 。
第 9章 数字信号处理的实现下面举例说明 DSP在数字滤波方面的应用 。
如前面所述,FIR数字滤波器可用线性常系数差分方程来描述:
0
( ) ( )
M
k
k
y n b x n k

式中,bk为滤波器系数,M+1 为滤波器节数 (即
h(n)的长度 )。
第 9章 数字信号处理的实现使用重复指令 RPTK与 MACD指令对:
RPTK M
MACD pma,dma
指令 RPTK把一个 8 位立即数装入重复计数器
(RPTC)内,从而使下一条指令重复执行 M+1次 。
指令 MACD pma,dma完成下列操作:
(1) 把 pma值装入程序计数器;
(2) 用 B1 块中 dma单元的数值乘 B0 块中程序存储器 pma单元的内容;
(3) 将前次乘积值加到累加器中;
第 9章 数字信号处理的实现
(4) 把数据存储器 B1 中的数据复制到高一位地址
dma+1 的对应片内 RAM中,以实现 z-1的延时 。
(5) 每次乘 /累加后,程序计数器自动增加 1,指向下一个滤波器系数 bk。
图 9.3.5 用 TMS320C25实时滤波的存储配置
b
N - 1
B 0
低位地址
> FF 00
b
1
b
0
( 相乘)
高位地址滤波器长度为 N
加权系数 b
k
x ( n )
B 1
低位地址
> 3 FF
( 1 0 2 3 )
高位地址滤波器长度为 N
存储输入序列 x ( n )
x ( n - 1 )
x ( n - ( N - 1 ))
第 9章 数字信号处理的实现用 TMS320C25 汇编语言写的 5 节 FIR数字滤波器程序如下 。 程序中用 XN代表 x(n),用 XNM1 代表
x(n1),YN代表 y(n)。
CNFP ;设置 B0 为程序存储器
NXTPTIN XN,PA0 ; 由端口 PA0 取入新样本 x(n)
LRLKAR1,>3FF ; 设定 B1 高地址
LARPAR1 ; 选 AR1 为当前间址寄存器
MPYK0 ; P寄存器置 0
ZAC ; 累加器清 0
RPTK4 ; 重复 5 次第 9章 数字信号处理的实现
MACD>FF00,* - ; 乘 /累加,AR1减 1,移位
APAC ; 累加最后一次乘积
SACHYN,1 ; 累加器高 16 位存入 YN单元
OUTYN,PA1 ; 输出滤波结果 y(n)值
B NXTPT ; 转入下一个 y(n)值的滤波运算处理第 9章 数字信号处理的实现
N节 FIR数字滤波器程序如下:
YN EQU 45
MODE EQU 46
CLOKC EQU 47
XN EQU 48
*;
AORG 0;
B START;
第 9章 数字信号处理的实现
*;
CTABLE AORG 32 ; 20H;
CH0 DATA >H0;
CH1 DATA >H1;
CH2 DATA >H2;
…;
CHN1 DATA >HN-1;
MD DATA >000A;
SMP DATA >01F3 ; 采样率 10 kHz;
START EQU $
第 9章 数字信号处理的实现
*初始化模拟接口板
LOPK 7 ; 选 DM第 7 页 (DP← 7);
LACK MD
TBLR MODE
OUT MODE,PA0
LACK SMP
TBLR CLOCK ;
OUT CLOCK,PA1
第 9章 数字信号处理的实现
*装入滤波器系数并进行滤波处理
LARP AR0 ; 由 AR0寻址
LRLK AR0,>200 ; 指向 B0
RPTK >N ; 重复次数为 h(n)长度 (十六进制 )N;
BLKP CTABLE,*+ ; 装入从 CTABLE开始的 N个系数
CNFP ; B0为程序区
WAIT BIOZ NXTPT ; 新样值有效
B WAIT ; 新样值有效第 9章 数字信号处理的实现
NXTPT IN XN,PA2 ; 指到新样值 XN
LRLKAR1,>3FF ; 指向 B1 末端 ;
LARP AR1
MPYK 0
ZAC
RPTK >N
MACD >FF00,*-
APAC;
SACH YN,1;
OUT YN,PA2 ; 输出 y(n)
B WAIT ; 指向下一个点
END