1线性缓冲区法:线性缓冲区法又称延迟线法,
(a)对于N级的FIR滤波器,在数据存储器中开辟一个N单元的缓冲区(滑窗),用来存放最新的N个输入样本;
(b)从最老样本开始取数,每取一个样本后,将此样本向下移位;
(c)读完最后一个样本后,输入最新样本存入缓冲区的顶部
2)循环缓冲区法:循环缓冲区法的如下:
(a)对于N级FIR滤波器,在数据存储器中开辟一个N单元的缓冲区(滑窗),用来存放最新的N个输入样本;
(b)从最新样本开始取数;
(c) 读完最后一个样本(最老样本)后,输入最新样本来代替最老样本, 而其他数据位置不变;
(d)用片内BK(循环缓冲区长度)寄存器对缓冲区进行间接寻址,使循环缓冲区地址首尾相邻。本次设计的FIR滤波器所采用的就是循环缓冲区法
3C语言实现FIR
采用C语言算法在DSP平台上实现了FIR低通数字滤波器,C语言算法相比于汇编算法可移植性很强。这里是在TMS320VC5510DSP为平台编写的C语言算法, 此算法可以稍加改动用在其他DSP芯片上, 而汇编算法则不然。这种方法具有以下优点
4.(a) 程序的入口和出口由C语言自动管理,不必手工编写汇编程序实现。
(b) 程序结构清晰,可读性强。
(c) 程序调试方便。由于C程序中的变量全部由C语言来定义,因此采用C源码调试器可以方便地观察C语言变量。
(d) 可移植性较强,通用性好,等