新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 用DSP实现FIR数字滤波器

用DSP实现FIR数字滤波器

作者:时间:2015-01-06来源:网络收藏

  2.卷积和运算的实现

本文引用地址:http://www.eepw.com.cn/article/267754.htm

  (1) h(n)序列N个点数值的存储

  由于h(n)是根据滤波性能要求已经设计好的有限长单位冲激响应,故其N个点的数值是已知的,因此可以存放在ROM或RAM当中,且对应着N个不同的地址,便于寻址。

  (2) 输入序列x(n)的移位寄存

  输入序列x(n)是不断变化的,因此只能对其进行移位寄存,寄存器的个数为N,即N个寄存器中分别存放着x(n)、x(n-1)……x(n-N+1),它们都随着n的变化而变化。

  (3) 乘法器

  用以完成两个数值的乘法,即h(m)x(n-m),也就是将存储器中N地址所对应的N个固定数值h(m)分别与N个移位寄存器中的不断变化的N个变化数值x(n-m)相乘。

  (4) 累加器

  用以实现N个乘积的累加,即将当前x(n)所对应的N个乘积进行累加,所得到的和就是y(n)。当滤波器的下一个输入值即x(n +1)到来时,累加器清零,并重新将下一组x(n +1)所对应的N个乘积进行累加,所得到的和就是y(n +1)。

  3.的支持

  作为信号处理应用,与一般微处理器有很大的区别。

  (1) 哈佛结构:采用多个并行存储器块结构,使得能够访问的存储器个数增加,从而减少在一个指令周期中所需存储器操作周期数。

  (2) 乘加流水线为核心的数据通路:卷积和运算的基本操作就是乘法与加法,则将相乘及累加统一考虑,构成以乘法器、加法器流水线为中心的运算部件。

  (3) 特殊的指令:指令RPT由数据存储器指定重复次数,指令MACD可以一次完成相乘并带数据移位的累加,因此使得每一级滤波器只需一个指令周期。

  (4) 指令系统的多级流水线:采用多级流水线操作方式,可以把指令周期减小到最小值,同时也就增加了数字信号处理器的吞吐量。

  五、 具体电路框图及程序流程图

  图 1为滤波器DSP实现的电路方框图,其核心部分为TI公司生产的DSP芯片TMS320C203 ,EP2ROM和RAM是其外围电路。DSP送给A/D抽样时钟,对输入的模拟信号抽样,即将模拟信号转换成数字信号,然后读取每一次的抽样值,并对抽样值进行卷积运算(数字滤波),最后将运算结果(滤波后的数字信号)送至D/A ,转换成模拟信号进行输出。

  

 

  图 1 电路框图

  图 2为程序流程图,说明如下:

  

 

  图 2 程序流程图

  (1) 对DSP进行初始化,定义DSP的一些向量和工作模式;

  (2) 为数字滤波作准备,将预先设计好的有N个抽头的FIR的冲激响应序列h(n)中的N个数值放入存储单元B1~BN;

  (3) 作好滤波准备工作后,开始进行抽样,并读入抽样值,放入存储单元A1中;

  (4) 之后便对抽样值进行运算处理:

  (a) 将累加器清零,并设置两个准备相乘的存储单元A与B的初始值K和L;

  (b) 将第K个抽样值AK与冲激响应序列的第L个数值BL相乘(K+L=N+1),并将乘积送入累加器进行累加;

  (c) 将第K-1个抽样值AK-1放入AK,此时AK中原数值被覆盖;

  (d) 重复(b)~(c),直至共完成N次乘加运算。

  (5) 输出处理结果;

  (6) 重复(3)~(5)。

  六、 结束语

  FIR滤波器具有严格的线性相位,且是可物理实现的因果系统,因此被广泛地应用在现代通信技术当中,如解调器中的位同步与位定时提取、自适应均衡去码间串扰以及话音的自适应编码等。可见对FIR滤波器的研究是具有非常重要的现实意义的。

滤波器相关文章:滤波器原理


滤波器相关文章:滤波器原理


电源滤波器相关文章:电源滤波器原理


数字滤波器相关文章:数字滤波器原理

上一页 1 2 下一页

关键词: DSP FIR 数字滤波器

评论


相关推荐

技术专区

关闭