图像处理大体分为两类,即硬件处理和软件处理。软件如Photoshop CS, MATLAB等等,尽管软件处理发展较为成熟但是属于事后处理,不能满足实时处理的要求。考虑到软件处理系统的欠缺,如处理速度慢,它很难去满足实时性要求高的任务,所以硬件处理(如FPGA、DSP)将逐渐成为现代科技图像研究领域的热门。随着电子技术的迅猛发展和芯片制造工艺的提高,数字图像处理正向着高速度、高实时性、高分辨率、高集成化的方向发展。From+优|尔-论_文W网wWw.YouErw.com 加QQ752018.766
目前主要有三种实现图像算法的硬件方式:采用ASIC芯片、采用DSP处理器以及采用FPGA芯片。专用的ASIC芯片处理速度快,成本低,特别适合于工厂的大批量生产。DSP处理器使用方式灵活且功能强大,支持多种接口输出,但并行性有所欠缺。FPGA采用流水线处理模式,处理速度快,支持并行指令的操作方式,其内部还集成了很多数字信号处理专用的IP核,从而提高了图像处理的效率,同时具有可移植性强,方法灵活的优势[7]。
基于查找表技术LUT(look-Up-Table),采用SRAM工艺,配置EEPROM外挂结构的可编程逻辑器件芯片叫做可编程逻辑门阵列(FPGA)。从本质上讲,查找表LUT就是一个RAM。目前FPGA中通常使用4输入的查找表LUT,所以每个查找表LUT被当作一个有4位地址线的16x1的RAM。当用户完成电路的输入设计,如一个自定义的逻辑电路后,FPGA开发软件(ISE或Quartus Ⅱ)会依照该逻辑电路自发进行逻辑运算,计算出所有可能的结果以及把所有的结果写入RAM。基于如上原理,当用户输入一个信号或值,即输入地址进行查表操作,ISE或Quartus Ⅱ就能找出与地址相对应的内容,然后完成输出[8]。
FPGA内部包括三个部分,分别是可配置逻辑模块(Configurable Logic Block,CLB)、输出输入模块(Input Output Block,IOB)和内部连线(Interconnect)[9]。它属于标准器件,即不是为了某一特定功能而设计的,用户可以根据不同需求来进行特定用途的编程设计。由于可配置逻辑模块(Configurable Logic Block,CLB)能根据情况的不同连接布线成不同深度的网络,所以多级逻辑能在FPGA中实现[10]。
FPGA提供多种配置模式可供用户选择。并行主模式,即使用一片FPGA和EPROM来进行配置;主从模式,即能用PROM编程多片FPGA;串行模式,即可以使用串行PROM来编程FPGA;另外,FPGA还配置了外设模式,即把其编程、处理权限交给微处理器,FPGA只是被用作该设备的外设[8]。
FPGA的显著特点有很多,例如如果用户需要一片合适的芯片但不想进行投片生产,那么采用FPGA设计专用集成电路(ASIC)是一个明智的选择;FPGA可以被当作中试样片在全或半定制的ASIC中使用;FPGA内部有丰富的资源,例如大量的触发器和I/O引脚;FPGA采用高速CHMOS工艺,有功耗低的特点,能和CMOS、TTL电平兼容。就专用集成电路(ASIC)设计而言,FPGA属于一种优质的、更完善的半定制电路。因为其具有并行处理的特点,即在实现整个程序所需要的逻辑功能的过程中FPGA将为每一个在流水线上的图像处理操作都建立独立的硬件模块,这使其能以较高运行速度完成图像处理的任务,又以较低的成本保持灵活的反复编程的特性。FPGA能解决原有PLD中存在的门电路数不足的缺陷,同时作为ASIC中其他电路的一种改进完善方案,是ASIC设计中风险最小、成本最低、设计周期最短的器件之一[8][11]。
FPGA特别适合于图像处理的任务,尤其可以在底层和中间层利用图像处理固有的并行性,这也是对许多图像处理算法进行显著加速的地方[12]。 基于Virtex-5FPGA的图像处理系统研究(3):http://www.youerw.com/tongxin/lunwen_142115.html