基于FPGA实现FIR滤波器的研究

上传人:油条 文档编号:39814092 上传时间:2018-05-20 格式:DOC 页数:7 大小:93KB
返回 下载 相关 举报
基于FPGA实现FIR滤波器的研究_第1页
第1页 / 共7页
基于FPGA实现FIR滤波器的研究_第2页
第2页 / 共7页
基于FPGA实现FIR滤波器的研究_第3页
第3页 / 共7页
基于FPGA实现FIR滤波器的研究_第4页
第4页 / 共7页
基于FPGA实现FIR滤波器的研究_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《基于FPGA实现FIR滤波器的研究》由会员分享,可在线阅读,更多相关《基于FPGA实现FIR滤波器的研究(7页珍藏版)》请在金锄头文库上搜索。

1、 基于基于 FPGAFPGA 实现实现 FIRFIR 滤波器的研究滤波器的研究 摘要:摘要: 针对在 FPGA 中实现 FIR 滤波器的关键-乘法运算的高效实现进行了研究,给了了将乘法化为查表的 DA 算法,并采用这一算法设计了 FIR 滤波器。通过 FPGA 仿零点验证,证明了这一方法是可行和高效的,其实现的滤波器的性能优于用 DSP 和传统方法实现 FIR 滤波器。最后介绍整数的 CSD 表示和还处于研究阶段的根据 FPGA 实现的要求改进的最优表示。 关键词:关键词: FPGA DA FIR 滤波器 CSD 数字滤波器是语音与图像处理、模式识别、雷达信号处理、频谱分析等应用中的一种基本的

2、处理部件,它能满足波器对幅度和相位特性的严格要求,避免模拟乙波器所无法克服的电压漂移、温度漂移和噪声等问题。有限冲激响应(FIR)滤波器能在设计任意幅频特性的同时保证严格的线性相位特性。 目前 FIR 滤波器的实现方法有三种:利用单片通用数字滤波器集成电路、DSP 器件和可编程逻辑器件实现。单片通用数字滤波器使用方便,但由于字长和阶数的规格较少,不能完全满足实际需要。使用 DSP 器件实现虽然简单,但由于程序顺序执行,执行速度必然不快。FPGA 有着规整的内部逻辑阵列和丰富的连线资源,特别适合于数字信号处理任务,相对于串行运算为主导的通用 DSP 芯片来说,其并行性和可扩展性更好。但长期以来,

3、FPGA 一直被用于系统逻辑或时序控制上,很少有信号处理方面的应用,其原因主要是因为在 FPGA 中缺乏实现乘法运算的有效结构。现在这个问题得到了解决,使 FPGA 在数字信号处理方面有了长足的发展。 1 1 分布式运算原理分布式运算原理 分布式算法(DA)早在 1973 年就已经被 Croisier 提出来了,但是直到 FPGA 出现以后,才被广泛地应用在 FPGA 中计算乘积和。 一个线性时不变网络的输出可以用下式表示:=c0x0+c1x1+cN-1xN-1 假设系数 cn是已知常数,xn是变量,在有符号 DA 系统中假设变量 xn的 表达式如下: 式中,xbn表示 z叫的第 b 位,而

4、xn也就是 x 的第 n 次采样。于是,内积 y 可以表示为: 重新分别求和(也就是分布式算法的由来),其结果如下: 从(1)式可以发现,分布式算法是一种以实现乘加运算为目的的运算方法。它与传统算法实现乘加运算的不同在于执行部分积运算的先后顺序不同。分布式算法在实现乘加功能时,是通过将各输入数据的每一对应位产生的部分积预先进行相加形成相应的部分积,然后再对各个部分积累加形成最终结果的,而传统算法是等到所有乘积已经产生之后再来相加完成乘加运算的。与传统串行算法相比,分布式算法可极大地减少硬件电路的规模,提高电路的执行速度。它的实现框图如图 1(虚线为流水线寄存器)所示。 2 2 用分布式原理实现

5、用分布式原理实现 FIRFIR 滤波器滤波器 21 串行方式 当系统对速度的要求不高时,可以采用串行的设计方法,即采用一个 DA 表、一个并行累加器和少量的寄存器就可以了。 在用 LUT 实现串行分布式算法的时候,假设系数为 8 位,则 DA 表的规模为 2N8 位。可以看到如果抽头系数 N 过多,则 DA 表的规模将十分庞大。这是因为 LUT 的规模随着地址空间的变化(也就是 N 的增加)而呈指数增加。例如 EPFl0K20 包含 1152 个 LC,而一个 277 位的表就需要394 个 LC。当 N 过大时,一个 FPGA 器件就不够用了。 为了减小规模,可以利用部分表计算,然后将结果相

6、加。假定长度为 LN 的内积为: 将和分配到 L 个独立的 N 阶并行 DA 的 LUT 之中结果如下: 如图 2 所示,实现一个 4N 的 DA 设计需要 3 个次辅助加法器。表格的规模从一个 2 NB 位的 LUT 降到 4 个 2 NB 的位表。如果再加上流水线寄存器,由于 EPFl0K20 每个 LC 后面都跟有一个寄存器,所以并没有增加电路规模,而速度却得到了提高。 22 并行方式 采用并行方式的好处是处理速度得到了提高。由于数据是并行输入,所以计算速度要比串行方式快,但它的代价是硬件规模更大了。下面举出全并行的例子。 设 sum0=c0x0+0+c1x01+cN-1x0N-1 su

7、mB-1=cB-1xB-10+c1xB-11+cN-1+xB-1N-1 可将(1)式改写成如下形式 y=sum0+sum12 1+sum2 2+sumB-12 B-1 (2) 利用式(2)可得一种直观的加法器树,如图 3 所示。 虽然硬件规模加大了,但是如果把系数的个数限制在 4 个或 8 个,再加上流水线寄存器,这个代价还是值得的。而且每张表都是相同的,不用为每个采样都设计一张表,减小了设计量。DA 算法的主要特点,是巧妙地利用 ROM 查找表将固定系数的 MAC 运算转化为查表操作,其运算速度不随系数和输入数据位数的增加而降低,而且相对直接实现乘法器而言在硬件规模上得到了极大的改善。利用

8、ALTERA 的 FLEXl0K 实现的 16 阶 8 位系数的并行 FIR 滤波器,其时钟频率可以达到 101MHz,而实现的 16 阶 8 位系数的串行 FIR 滤波器,其时钟频率可以达到63MHz,每 9 个时钟周期可完成一次计算。但是其系数是传统二进制的,造成了很大的冗余(对于用逐位相加法实现的乘法器,当系数有一位为零时不用相加,零位越多,冗余越大),而且查找表的大小随着滤波器阶数的增加成指数增加,虽然可以采用将大查找表分解为小查找表,但是无法从根本上解决这一问题,这些都是 DA 方法的缺点。后面将对 FIR 滤波器实现给出新的设计方法,进一步降低逻辑资源的消耗。 3 3 CSDCSD

9、 码及最优化方法码及最优化方法 一个整数 X 与另一整数 Y 的乘积的二进制表示可以写成: 对于标准二进制,由于 sn=0 时的对应项 Y2n 并不参与累加运算,所以可以用另一种表示方法使非零元素的数量降低,从而使加法器的数目减少,降低硬件规模。有符号数字量(SD)有三重值0,-1,+1,如果任意两个非零位均不相邻,即为标准有符号数字量(CSD)。 可以证明 CSD 表示对给定数是唯一的并且是最少非零位的。CSD 表示相对于标准二进制表示的改进在于引入了负的符号位,从而降低了非零位个数,大大降低了逻辑资源的占用(大约平均降低 33的逻辑资源)。 当用硬件实现时,常常限制系数位数,即每个系数与

10、N 个正(负)2 的幂次之和近似。标准二进制数在整数轴上是紧密和均匀分布的,而 CSD 码是非均匀分布的,其对实系数的量化误差比标准二进制大,虽然增加 N 可以减小量化误差,但是会增大逻辑资源的消耗;而且 CSD 表示无法应用流水线结构,从而降低处理速度。 还可采用优化的方法将系数先拆分成几个因子,再实现具体因子。这就是最优化的代码。例如对系数 93,93=10111012=1100101CSD。用最优化法,系数 93 可以表示成 93=331,每个因子需要一个加法器,如图 4 所示。 从图中可以看出,CSD 码需要三个加法器,而最优法只需要两个加法器;CSD 码的重要缺陷在于每一级加法都需要

11、初节点参与,而最优表示仅依赖上一级加法的结果,因此也就更适合流水线处理。Dempster 等人提出了需要 1 到 4 个加法器的所有可能配置表。利用这张表,就可以合成成本在 0 与 4 个加法器之间的所有 8 位二进制整数。 本文首先给出了一种巧妙利用 FPGA 的查找表,将乘法转化为查找表运算的 DA 算法,并用ALTERA 的 FLEXlOK 器件分别实现了一个 8 位 16 阶的串行与并行 FIR 滤波器,系统频率分别达到 63MHz 与 101MHz,采样速度分别达到 7MSPS 与 101MSPS。而 DSP 实现的 FIR 滤波器只能达到5MSPS,明显低于 FPGA。用传统的位串

12、行方法实现的一个 8 阶 8 位 FIR 滤波器,也只能达到5MSPS,明显低于串行式 DA 方法;接着,针对系数的二进制表示非零位不是最少(即实现系数乘法的加法器不是最少)的问题,介绍了整数的 CSD 表示以及最优表示,它们可以用较小的代价和与加法器级数无关的处理速度实现整数乘法运算,能比 DA 方法用更少的逻辑资源实现 FIR 滤波器。这些算法都不同于传统的设计观念,为基于 FPGA 的 DSP 设计提出了新的思路,必将在高速FIR 滤波器设计、高速 FFT 设计中得到广泛的应用。随着 FPCA 集成规模的不断提高,许多复杂的数学运算已经可以用 FPCA 来实现,利用单片 FPGA 实现系统的设想即将变为现实

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号