【 FPGA 】FIR滤波器开篇之传统抽头延迟线FIR滤波器实现介绍

网友投稿 339 2022-11-07

【 FPGA 】FIR滤波器开篇之传统抽头延迟线FIR滤波器实现介绍

滤波器原理:滤波器就是对特定的频率或者特定频率以外的频率进行消除的电路,被广泛用于通信系统和信号处理系统中。从功能角度,数字滤波器对输入离散信号的数字代码进行运算处理,以达到滤除频带外信号的目的。

传统的单速率 FIR 版本的核(IP核)的生成通过计算如下的卷积和公式:

与之对应的传统抽头延迟线 FIR滤波器实现如下:

上式表达的是一个N-1阶的FIR滤波器,它有N个抽头(系数)。因此有N个乘法器,N-1个累加器组成。

虽然上图以及上式对于概念的理解一目了然,也很有用,但实际上FPGA并不是这么实现的。

那么实际上FPGA是怎么实现的呢?

FPGA中的FIR滤波器由IP核来生成,下篇博文将介绍IP核使用哪些架构来实现所需的滤波器。

下篇博文地址:【 FPGA 】FIR 滤波器的结构

下面部分是摘自电子发烧友上的文章的一部分,仅供参考:

有两种基本类型的数字滤波器:有限脉冲响应( FIR )和无限脉冲响应( IIR)。

IIR滤波器使用反馈,而且往往是模仿传统的模拟滤波器的响应。反馈的用途意味着他们的脉冲响应是递归的,并延伸到无限的时段。虽然可以用比FIR滤波器更少的计算来实施IIR滤波器,IIR滤波器可能有稳定性的问题,他们可能与用FIR滤波器完成的性能不匹配。

相比之下, FIR滤波器没有反馈,这意味着它的脉冲响应在一个有限的时间范围之内。 FIR滤波器拥有优于IIR滤波器的几个优点,其中包括一个事实,即在整个频谱范围,他们有完全恒定的群时延,在所有频率范围内,不论滤波器的大小,他们是完全稳定的。

通用FIR滤波器的图形表示如图10所示。在这种情况下,输入样本xn通过一系列的缓冲寄存器(这些都标记为z-1,对应延时单元的Z变换)。

图10 经典FIR滤波器的通用表示

滤波器的工作原理是用一系列的常数(称为抽头系数)乘以一系列最新的n个数据采样,并对所得到的数组的单元进行求和。通过改变系数和滤波器抽头数目的加权(值),FIR滤波器实际上可实现几乎任何所需的频率响应特性。

问题是FIR滤波器可能需要大量的抽头(有时数百个),以实现其预定的目标。每一个抽头需要消耗逻辑资源的乘法器累加器( Mac )单元。另外在每个时钟,每个抽头执行消耗功率2的乘法和加操作。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:NVIDIA Triton助力腾讯构建高性能推理服务
下一篇:【 FPGA 】FIR 滤波器结构和优化(二)之系数填充(Coefficient Padding)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~