数字图像空域滤波算法的FPGA设计与实现

技术分类: 可编程器件  | 2008-04-16
来源:现代电子技术

  除了以上两种FIR滤波结构外,还有一种数据广播结构的FIR数字滤波器,这种结构通过转置结构来缩短关键路径,同时不需要引入任何的流水线锁存器。具体的改造方法是:改变输入和输出;颠倒信号流程的方向;由一个分支来取代加法器,反之亦然。数据广播结构的FIR数字滤波器如图4所示。

数据广播结构的FIR数字滤波器

  在这种结构中,数据不是存储下来,而是同时广播到所有的乘法器。这种结构的关键路径和图3中插人流水线锁存器的FIR滤波器结构的关键路径一样。但是对输入不需要额外的移位寄存器,对部分积的和也不需要额外的流水线就能达到很高的通过率。这就是FIR滤波器数据广播结构的优点。

  本文在设计空域滤波算法电路时,就是分别采取了以上介绍的3种不同的FIR数字滤波器结构形式。

  2.2 乘法器模块的硬件设计

  从式(1)的模板运算表达式和式(2)的FIR滤波器表达式可以看出,完成模板运算和实现FIR数字滤波还有一个重要的环节,就是乘法运算。乘法器模块是影响空域滤波算法的运算速度的关键模块之一。

  乘法运算基本上可以分为两步:一是求出所有的基本乘积项,二是将所有的基本乘积项相加。因此,要设计快速的乘法器电路模块,就要针对这两步进行改进,一方面要减少部分积的数目,同时另一方面要提高部分积求和阵列的累加速度。因此,为了加快乘法器模块的运算速度,在设计乘法器电路时,特别考虑到了采用基4-BOOTH算法来减少部分和的数目,同时采用Wallace Tree减少阵列乘法器中部分积加法阵列的进位传输延迟,加快整个加法阵列的运算速度。

  基4-BOOTH算法的基本原理是对乘数进行编码,根据编码表来产生部分积,一次只考虑3位:本位、相邻高位、相邻低位。Wallace Tree比较规则,易于布局布线,这种方法不是直接将所有的部分积完全的一对一地相加,而是采用将各个部分积中具有相同权重的数据位相加合并。通常采用全加器(Full Adder)来完成相同权重的位相加。采用一位全加器,那么Wallace树的每一层,就可以将部分积的向量数目按照3:2的比例缩减。也可以采用2个全加器,来获得4:2的缩减比例。本文中采用3:2计数器(全加器)来进行部分和缩减,这样当部分积的数目很多时,采用Wallace Tree乘法器来缩减部分和速度很快。

  3 仿真综合结果

  第2节介绍了本文中在FPGA平台上设计实现数字图像空域滤波算法的高速数字滤波器FIR的过程,其中主要考虑的是缩短关键路径、提高数据吞吐率。本节给出仿真和综合后的结果比较表。本文中,测试图像选用的是256×256大小、8 b的灰度图像,设计软件是XILINX公司的ISE集成综合开发环境,仿真工具是Modelsim SE 5.8b,综合工具是ISE自带的综合软件XST,实现芯片是XILINX公司的XC2V1000。仿真、综合结果表明,设计电路完全符合要求。

  下面给出根据上述不同的FIR滤波结构设计的,用于实现空域滤波算法的3种电路结构的综合结果比较表。

  从表1可以看出:从资源占用角度看,结构三的等效门数最多,结构二的最少。从延时/最大频率可以看出,结构一最好。

  3种结构的结构时延比较数据,如表2所示。 

从表1可以看出

  4 结 语

  本文论述了数字图像空域滤波算法以及FIR滤波器的基本设计方法,在对关键路径分析的基础上,引入流水线设计提高运算速度,提出了滤波器的3种设计结构,给出了滤波器的设计过程,通过仿真和综合结果可以看出,有效地节省了硬件资源,大大减小了硬件体积,增加了系统的可靠性。

0
0
(请您对文章做出评价)
1】【2】【3
加载中

对文章的评论

更多评论

剩余字数:  

浏览该文章的用户还看过...

  • 文 章

  • 论 坛

  • 博 客

  • 小 组

设计资源与分销

  • 博客推荐

  • 论坛推荐

  • 在线研讨会