上图中的fir滤波器的结构被叫做转置型i的滤波器,并且使用了流水线。这种架构使用了级联的方式,充分利用了dsp slice的结构。
这个例子显示了一个小的4抽头滤波器。输入数据通过左侧流水线被送到的dsp slice中,级联后把数据延时送到下一级中。每个dsp slice里面的乘法器将数据和正确的系数进行相乘,在加法器中相加后输出,经过流水线并最终级联在最右端输出最终的结果。从这个例子中,可以清晰的看到fir滤波器的抽头即使增加了,可以很简单的增加dsp slice单元进入这个流水线中,并在该dsp单元中增加自己的系数即可。需要说明的一点是:理想状态下,不像其他dsp/处理器单元构建算法时,fpga的dsp单元的性能不会因为滤波器的抽头的增加而减少,因为进入级联的流水线后,流水线上使用的寄存器将帮助将dsp的资源保持运行在最优的速度上。从上图结构中,可以看到输入数据被送入寄存器,寄存器充当数据缓冲器进行了级联。每个寄存器提供一个数据到乘法器并各个系数相乘。加法器相加级联后逐步形成最终结果,并且给出最终结果。这个实现方式不要外部的额外逻辑,并且所述结构是可扩展的,以支持任何数目的系数。另外dsp slice资源的灵活性,也可以用来实现其他非dsp功能。
下面举一个非dsp功能的例子,是将一个基本的加法树的结构适配到dsp slice单元中,如下图一个流水线的基本加法树的例子。
第一步,从第一级加法器的输出入手,去掉第一级输出的寄存器,形成如下图的结构。
这种结构就非常简化,而且容易调整需求。紧接着第二步把第三个寄存器拉下来,修正后形成下图,形成很明显的链型的结构。但是这个功能和上图的功能完全相同,相同的四个信号只是改变了相加的顺序,被相加形成最终的结果相同。
第四步,添加寄存器形成流水线,变成了下图,最大限度地提高性能。因为加法器是在一个链而不是树,在加法器链中的每个流水线寄存器需要在该数据路径中匹配一个寄存器。还要注意的是,一个附加的加法器已经放置在链的前部,其中一个输入连接到零。现在,就很容易看到的加法器和流水线寄存器如何映射到xilinx dsp slice中。下图图中的每个虚线框代表一个dsp slice。
安靠分析封测行业决定质量的因素
混合编程中的模块命名与管理
快讯:四维图新2019营收23亿! 芯片业务拖后腿
郭台铭声明:不求任何职位
奥迪将在电动汽车、数字化和自动驾驶领域投资140亿欧元
FPGA从Xilinx 的7系列学起(16)
非洲猪瘟快速检测仪的特点介绍
Bulgin的以太网Buccaneer为IP68提供环境密封
安装一套扬尘监测设备覆盖面积是多少
谐波的产生和抑制详细介绍
医疗废物在线管理系统优点
秦淮数据宣布启动美股私有化,与贝恩资本达成31.6亿美元交易
如何选择C语言编译器和IDE
区块链治理辩论什么时候可以停止
飞思卡尔日前推出其下一代DSC产品组合的第一个系列产品
延长汽车电子零部件寿命,先进防水透气技术是关键
三星在中国市场遇冷,国产手机品牌在海外市场的压力恐激增
基于STM32F103R8T6的数字量度继电器设计
英特尔推出AI加速器性价比产品Gaudi2
谁在5G商用市场可以排名第一