随着微电子技术的发展,采用现场可编程门阵列FPGA进行数字信号处理得到了飞速发展。由于FPGA具有现场可编程的特点,可以实现专用集成电路,因此越来越受到硬件电路设计工程师们的青睐。本文研究了基于FPGA的FIR数字低通滤波器硬件电路的实现方法。用这种方法实现的滤波器内部电路结构透明化,并减小了体积,提高了工作效率。
1 用窗函数法设计线性相位FIR滤波器的方法
任何数字滤波器的频率响应H(ejω) 都是ω的周期函数,它的傅立叶级数展开式为:
傅立叶系数h(n)实际上就是数字滤波器的冲激响应。获得有限冲激响应数字滤波器的一种可能方法就是把式(1)的无穷级数截取为有限项级数来近似,而众所周知的吉布斯现象使得直接截取法不甚令人满意。
窗函数法是用被称为窗函数的有限加权序列{w(n)}来修正式(2)的傅立叶系数,以求得要求的有限冲激响应序列hd(n),即有:
hd(n)=h(n)·w(n) (3)
w(n)是有限长序列,当n>N-1及n<0时,w(n)=0。
这里我们仅以冲激响应对称,即h(n)=h(N-1-n) (n=0,1,2,…,N-1)时低通滤波器为例进行说明。低通滤波器的频率响应函数H(ejω)如式(4)所示。
其中,ω为对抽样频率归一化的频率,ωc为归一化截止频率。
利用反傅立叶变换公式求出与式(4)对应的冲激响应h(n),如(5)式所示。
选用汉宁(Hanning)窗作为窗函数,函数如式(6)所示。
|