《电子技术应用》
您所在的位置:首页 > 可编程逻辑 > 业界动态 > 基于Stratix系列FPGA的快速并行FIR滤波器在钢板表面缺陷图像预处理中的应用

基于Stratix系列FPGA的快速并行FIR滤波器在钢板表面缺陷图像预处理中的应用

2008-08-06
作者:雷永强 段发阶 胡 亮

    摘 要: 在钢板表面缺陷检测中,如何解决大数据处理量的问题是整个系统的决定性环节。应用Stratix系列FPGA的高速并行特点设计了FIR滤波器,实现了对海量数据的高速处理。实验与软件仿真表明,该设计完全达到要求。
    关键词:  FPGA  FIR滤波器  实时处理  Quartus II

 

    随着现代工业的高速发展以及对技术的更高要求,业界对工业原材料也提出了越来越苛刻的要求。特别是作为工业基础原材料的冷轧薄板,更是受到人们的极大关注。能否提供表面质量优异的薄板对于最终产品的性能起到了非常关键的作用。目前国内外在本领域的研究成果大致为分别利用线、面阵CCD获取表面图像,由后续软件对图像加以分析的方法来实现对表面质量的检测处理。由于要求实时高速检测,若仍然采用软件处理的方法,对于计算机来讲,显然处理负担是异常沉重的。近几年来,随着ASIC技术的迅猛发展以及IP设计的逐渐成熟,使得FPGA具有实时、高速、易修改等特点,利用FPGA对图样实现基本处理就显得非常有实用价值。本课题就是基于如上考虑,应用嵌入式FPGA系统对钢板表面缺陷进行检测做出的一些探索性研究。
    根据设计要求:①板面宽度应达到2m;②横纵向分辨率不低于0.1mm;③运动速度低于1.5m/s,可简单计算出一帧图像应为20000个象素点,单象素点速度为1.5kHz;根据采样定理,CCD的驱动脉冲将达到30MHz,进而可知在进行256点FIR滤波时每帧图像的数据量将达到G的数量级;加之图像处理算法的复杂性,数据量将会非常庞大,这是PC机无法实时处理的。经过对现场条件的仔细分析,可知缺陷不会是大面积的,倘若全部的数据都使用最后的高级算法处理进行分类,很明显会浪费大量的硬件资源,造成设备成本过高。倘若在高级处理前实现图像的预处理,例如去噪、平滑、滤波等,以提取图像的基本特征,先做出初步判断进而再由后续设备对数据进行分析和分类,无疑对减轻负担和实现高效处理有很重要的意义。
1 数字图像预处理
    在图像特征提取前,由于光照及现场环境等各因素的影响,有必要对所取得的图样进行滤波、去噪以及初步划分缺陷尺寸等简单处理。这可以采用由标准样本中提取较为明确的板面图像的频域特征,进而利用FIR数字滤波器" title="数字滤波器">数字滤波器来实现图像的特定区域的增强。
    由于FIR数字滤波器具有良好的线性相位,而且较IIR数字滤波器具有可多重阻带设计的特点,因此可最大限度地满足设计要求。其传递函数" title="传递函数">传递函数可表达为:
   

    式中,θ(ω)=-τω,为网络传输相位函数
    同时,FIR数字滤波器满足如下条件:
    h(n)=±h(N-1-n)
    该式表明h(n)对(N-1)/2满足偶对称或奇对称[1]
    设传递函数为偶对称,且N取偶数,有:
   

    若传递函数为奇对称,则只需将(1)和(2)式中方括号内“+”号改为“-”号即可。
    从上面的分析中可知,由于传递函数具有的对称性,使得运算过程中乘法次数可以减半,这大大降低了对海量数据的分析负担。
    由标准缺陷图样分析,可以大致确定正常板面图像信号所处的频域范围。
   

   上式中,M为阶数。
    当M确定时,据(3)式可获取滤波器各特征系数。
2 算法的硬件实现
    由前面的分析可知,如何提高系统数据处理能力是解决问题的瓶颈,PC机显然无法胜任如此复杂的处理任务,近几年来FPGA技术发展突飞猛进并以其快速、在线可编程的优良性能在工业在线检测中得到了广泛应用。本系统出于对实际条件和后继设备更新的考虑,采用Altera公司于2003年正式推出的Stratix系列FPGA。
2.1 器件介绍
    Stratix系列产品是Altera公司基于SRAM与LUT(查找表)模式,应用0.13μm全铜布线工艺制造的最新FPGA。相比于以往的产品,Stratix系列器件的新结构采用了DitrectDriveTM技术和快速连续的MultiTrackTM互联" title="互联">互联技术。MultiTrackTM互联技术可以根据走线不同长度进行优化,改善内部模块之间的互联性能。Altera公司特有的DirectDriveTM技术保证了片内所有的函数可以直接连接使用同一布线资源。这两种技术与QuartusII 2.0以上版本软件提供的LogicLockTM功能相结合,便于进行模块化设计,简化了系统集成。Stratix系统器件片内的全局和本地时钟资源提供了多达40个独立的系统时钟,有利于实现最丰富的系统性能;全新的布线结构,分为三种长度的行列布线,在保证延时可预测的同时,增加了布线的灵活性;为了更好地提高系统数据存储能力,Stratix系列自带有三种可灵活配置的存储器,其大小分别为512bit、4k bit、512kbit[2]
    Stratix器件内嵌的DSP模块提供了高于DSP处理器的数据处理能力,并且更为灵活和经济。每一Stratix DSP模块可提供多达8个运行在250MHz的并行乘法器" title="乘法器">乘法器,数据吞吐能力高达2GMACS。最大的Stratix器件EP1S125包括28个DSP模块,可完成高达224个并行乘法操作,并提供56GMACS的总线数据吞吐能力;而传统的DSP处理器最多仅可同时进行8个并行乘法操作,数据吞吐量也只有8.8GMACS。在DSP模块中,除了专用乘法器以外,还可利用逻辑单元" title="逻辑单元">逻辑单元(LE)实现乘法器和DSP功能。例如,可在Stratix器件中利用大约9600个逻辑单元实现一个256阶FIR滤波器。Stratix系列的EP1S120包括大约114140个逻辑单元,可以容纳11个这样的滤波器。每一滤波器可运行在200MHz,这意味着通过利用LE可提供563GMACS的器件总吞吐能力。结合DSP模块提供的56GMACS数据吞吐能力,Stratix器件可提供高达620GMACS的数据总吞吐能力。因此Stratix器件适用于大数据量数字信号处理。同时每个Stratix器件有多达12个PLL和40个全局的采用全功能的嵌入式锁相环(PLL)管理片内和片外时钟,可以进行频率合成、倍频、分频、调整相位和延迟。Stratix器件提供了两种PLL:增强型PLL支持外部时钟反馈、时钟转换、PLL重置、可编程带宽等功能;快速型PLL用于优化高速差分I/O端口和全局时钟,实现最丰富的系统性能[3]
2.2 算法实现
    滤波器阶数确定后,依据(3)式可获取FIR系统参数。假定阶数为16,则可计算出h0~h15各参数,然后依据(1)式便可设计结构图,如图1所示。从图中看出实现重点为乘法器的实现,由于Stratix系列内嵌有10个DSP模块,每个模块可同时实现8个运行于250MHz的并行乘法器,这就大幅度地提高了运行速度。而且其内嵌的大容量SRAM也为同时存取大量抽头因子带来了方便。在算法实现中使用更为有效的VHDL语言,可以实现主函数设计以及ROM初始化程序设计。设计中使用EP1S25芯片,时钟的频率设置为25MHz,经过QuartusII软件仿真可得到如图2所示的结果。为检测仿真效果,特对相同单维数据,用MATLAB软件进行相同算法处理,获得另一组结果,将两组数据相比对得到表1,误差≤1。

 

 

 

    


参考文献
1 胡广书.数字信号处理. 北京:清华大学出版社,1997
2 系列器件手册. Altera公司,2003
3 徐志军.CPLD/FPGA的开发与应用. 北京:电子工业出版社,2002
4 侯伯亨. VHDL硬件描述语言与数字逻辑电路设计.西安:西安电子科技大学出版社,2003

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。