基于FPGA的视频图像提取研究
2018-06-13刘金蟾孔垂禹张赛男
黄 岩, 刘金蟾, 孔垂禹, 张赛男
(1. 长春工业大学 信息传播工程学院 长春 130012; 2. 中国人民解放军 93361部队, 沈阳 110000;3. 吉林大学 大数据和网络中心, 长春 130012; 4. 吉林财经大学 新闻与传播学院, 长春 130117)
0 引 言
数字图像处理(DIP: Digital Image Processing)是将图像信号转换成数字信号并利用计算机对其进行处理的过程。上世纪90年代, 人们开始利用计算机处理图形和图像信息。早期的图像处理以人为对象, 以改善人的视觉效果为目的。图像处理中, 输入的是质量低的图像, 输出的是改善质量后的图像, 常用的图像处理方法有图像压缩、 复原、 增强和编码等[1]。印刷电路板(PCB: Printed Circuit Board)自动光学检查(AOI: Automated Optical Inspection)中, 随着线路越来越精细, 要求检测出的缺陷越来越小。若用提高图像分辨率的方法提升检测能力, 则不利于提升产能, 因此目前流行使用ContourExtractor2DimageFilter算法[2]。为提高ContourExtractor2DimageFilter算法实现的速度, 实现图像轮廓提取的实时性, 笔者选择FPGA(Field-Programmable Gate Array)作为主处理芯片, 应用基于Xilinx公司的Spartan-3系列FPGA设计实现了ContourExtractor2DimageFilter算法。
1 方案及主处理芯片选择
FPGA是在PAL、GAL、EPLD等可编程器件的基础上发展的产物, 经过多年研究, 已能集成数字时钟管理单元(完成分频/倍频、 数字锁相和延迟功能的DLL和DCM)、 存储器(Block RAM和Disturbed RAM)、 算术运算单元(乘法器、 加法器)以及特殊功能模块(MAC、 微处理器等硬IP核)等更丰富的资源, 与ASIC相比, FPGA设计简单方便、 费用低[3]。
系统选取Spartan-3系列XC3S1000-4FG456设计一个lane的PCIE总线, 两对差分信号单向传输带宽可达2.5 Gbit/s。整个板卡由Philips PX1011A PCI Express PHY、 Xilinx Spartan-3 FPGA以及优化的Xilinx PCI Express LogiCORE IP核组成。这种功能强大的解决方案包括SERDE Philips PCI Express PHY和物理编码亚层(PCS: Physical Coding Sublayer), 能提供优良的比特速率性能。Philips PHY消耗很小的功率, 具有小形状系数, 这使它很适合用在PCI Express Card中。
Xilinx Spartan-3 PCI Express解决方案包括一个Xilinx Spartan-3 PCI Express PIPE Endpoint LogiCore。进一步整合了分立的PCIE PHY, 提供了符合PCI Express基础规范(PCI Express Base Specification)v1.1的PCIE端点解决方案[4]。
2 系统设计方案
该系统硬件框图如图1所示, 在完成基本功能基础上, 还扩展了一些接口, 如串口、 AD、 PMC接口等, 可在不同的环境下实现一些更加复杂的功能, 充分体现FPGA的灵活性。
图1 系统结构图Fig.1 System structure
该系统由如下硬件组成: Xilinx XC3S1000 Spartan-3 FPGA; Philips 2.5 Gbit/s, PCI Express一个lane的PHY芯片; 两路10 bit-65 MHz AD5102并行采集; Xilinx 8 Mbit Flash下载配置PROM; 50 MHz时钟和两个全局时钟输入; 4个PMC接口, 与背板或其他采集板相互连接; 两个JTAG接口 ; 8个LED显示; 4路开关; 提供1.2 V、1.8 V、2.5 V和3.3 V供电; 提供与PC相连的电源接口。
3 硬件电路模块设计
3.1 Xilinx公司XC3S1000 Spartan-3 FPGA电路设计
Spartan-3 FPGA包含8个具有各自的VCCO电压的BANK, 在保持同一BANK的VCCO一致前提下, 用户可以根据信号标准, 统一信号电压。系统中PCIE部分的信号采用SSTL2标准, 电压为+2.5 V。PMC扩展信号包括差分信号和普通信号, 差分信号为+2.5 V, VCCO必须连接在+2.5 V上。另外, VCCAUX为+2.5 V, 用于配置电路和数字时钟DCMs; 内核电压VCCINT为+1.2 V。Spartan-3 FPGA的管脚资源, 可用管脚达到333个, 其中差分信号有149对[5]。
3.2 配置电路的设计
选用XCF08P 8M的并行配置FLASH PROM, 可以选择Master SelectMAP(并行)模式(见图2)或Master Serial模式, 其中并行模式加载速度更快。
图2 Master SelectMAP模式的电路Fig.2 Circuit of Master SelectMAP mode
串行加载PROM, JTAG下载以及并行加载PROM对应的模式不同, 其选择如表1所示。
表1 串行加载PROM与并行加载PROM对应的模式比较
3.3 FPGA与PHY芯片的接口设计
飞利浦PX1011A是一款优化的x1 2.5Gbps PCI Express PHY器件。其具有很小的封装, 可提供卓越的发射和接收性能, 能与低成本FPGA一起使用。PX1011A可同时服务于ExpressCard/34、 ExpressCard/54应用。PX1011A规格如表2所示。
表2 PX1011A规格
PX1011A与FPGA以及PCIE slot的连接如图3所示。
图3 PX1011A与FPGA以及PCIE slot的连接图Fig.3 Connection between PX1011A and FPGA, PCIE slot
PX1011A PCI Express PHY由内部物理层译码, 并串转换、 串并转换以及I/O信号组成, 这款PCI Express PHY芯片解决了低端的PCI Express协议和信号。PX1011A在MAC层PHY层的连接是PIPE规范的集合体, 接收和发送信号与时钟同步, FPGA的数字信号在MAC与PHY的连接参照 PXPIPE 接口。其中包括8位输入输出信号, 并配有相应的控制信号, 同步时钟, 8位数据信号在PXPIPE上双向传输的速率达到250 MBit/s。PCI Express的link包括一对差分输入信号和一对差分输出信号, 单向传输达到2.5 GBit/s。PIPE的接收(RXD)和发送(TXD)信号必须连接在SSTL2标准的驱动和接收设备上, 在PCB布线上也要保证严格的等长, 使信号的摆伏降到最低。
3.4 AD的选型
德州仪器ADS5102是一款具有0 Bit-65 MHz采样率并带内部电压参考的模数转换器, 供电方式为模拟1.8 V。与同类型的ADS5103相比, 它采用差分信号输入, 从而有效的提高了输入信号的共模抑制比。其结构框如图4所示。封装上ADS5102采用48pin-TQFP(见图5)。时序上ADS5102操作简单, 如图6所示, 输入采样时钟50 MHz, 将使能端置低, 在时钟下降沿将数据读入。
图4 ADS5102结构框图 图5 ADS5102封装样式图 Fig.4 ADS5102 block diagram Fig.5 ADS5102 package style diagram
图6 ADS5102时序图Fig.6 ADS5102 timing diagram
3.5 PMC插槽连接
图7 PMC系列模块样图Fig.7 PMC series module sample
板卡上共有4个PMC插槽, 接收单端信号、 差分信号、 时钟、 电平、 地等。根据用户需求可以连接更高速的AD/DA数据采集背板, 进行信号的互连通道。采用的PMC接口符合国际标准, 信号完整性好。
3.6 电源设计
系统采用+5 V供电, 由Erisson电源模块提供1.2、1.8、2.5 V和3.3 V电压(见图7)。
采用Erisson公司的电源模块, 输出电压为0.75~3.63 V, 电流可以达到10 A, 驱动能力强, 完全满足设计需要(具体参数见表3)。
另外, 板上的+5 V供电可以选择PC的电源接口、 +5 V输入口、 PCIE slot供电3种之一, 根据需要使用。
表3 PMC系列模块性能参数
4 PCIEIP核设计
Xilinx针对PX1011A PCI Express PHY芯片设计了一个PCI Express PIPE Core, 完成PCIE物理层、 链接层和传输层的各种功能, 给PCIE接口的设计带来极大的方便, 笔者采用此IP核完成PCIE接口的设计[6-11]。
PCI Express PIPE Core内部框图如图8所示, 按照PCIE协议的设计, IP核由物理层、 链接层和传输层3部分组成, 完成PHY和用户层的连接。协议层连接如图9所示。用户应用程序和PCI Express Core的连接如图10所示。
图8 PCI Express PIPE Core内部框图Fig.8 PCI Express PIPE Core internal block diagram
图9 协议层连接图Fig.9 Protocol layer connection diagram
图10 应用程序和PCI Express Core的连接图Fig.10 Connection diagram of application and PCI Express Core
按照Xilinx提供的开发方法和其开发工具, 笔者实现了PCIE接口的设计。经验证取得很好的效果。
5 结 语
笔者研究了PCIE总线在嵌入式系统中的应用, 通过选取Spartan-3系列XC3S1000-4FG456设计的lane的PCIE总线, 设计了电路模块, 最后基于Xilinx公司的Spartan-3系列FPGA设计实现了ContourExtractor2DimageFilter算法的硬件部分。有效利用了计算机系统解释图像, 实现了类似人类视觉系统理解外部世界, 为图像压缩、 通信和计算机辅助设计等研究方向提供了有益思路。
参考文献:
[1]张弘. 数字图像处理与分析 [M]. 北京: 机械工业出版社, 2007.
ZHANG Hong. Digital Image Processing and Analysis [M]. Beijing: Mechanical Industry Press, 2007.
[2]孙彪. 亚像素图像轮廓提取算法研究及硬件实现 [M]. 长沙: 国防科技大学出版社, 2008.
SUN Biao. Research on Subpixel Extraction Algorithm and Hardware Implementation [M]. Changsha: National Defense University Press, 2008.
[3]徐欣, 于红旗, 卢启中, 等. 基于PFGA的嵌入式系统设计 [M]. 北京: 电子工业出版社, 2004.
XU Xin, YU Hongqi, LU Qizhong, et al. Embedded System Design Based on PFGA [M]. Beijing: Publishing House of Electronics Industry, 2004.
[4]吴建飞. 基于PCI Express总线的数据采集设备实现 [J]. 现代电子技术, 2008, 31(20): 110-112.
WU Jianfei. Implementation of Data Acquisition Equipment Based on PCI Express Bus [J]. Modern Electronics, 2008, 31(20): 110-112.
[5]IT C VAN ASSEN, EGMONT-PETERSEN M, REIBER J H C. Accurate Object Localization in Gray Level Images Using the Center of Gravity Measure: Accuracy Versus Precision [J]. IEEE Transactions on Image Processing, 2002, 11(12): 1379-1384.
[6]ASHRAF ZATARI, GORDON DODDS. Practical Stereo Vision and Nmlti-Laser Scanning in Object Face Detection and Orientation Determination [C]∥IEEE International Conference on Intelligent Robots and Systems. Grenoble, France: IEEE, 1997: 746-751.
[7]徐欣. 浅析计算机教学与素质教育的关系 [J]. 考试周刊, 2010(25): 162-163.
XU Xin. Analysis of the Relationship between Computer Teaching and Quality Education [J]. Exam Weekly, 2010(25): 162-163.
[8]钱浩. 基于AXI-Stream接口的AES加密模块设计与验证 [J]. 软件导刊, 2017, 16(1): 154-156.
QIAN Hao. Design and Verification of AES Encryption Module Based on AXI-Stream Interface [J]. Software Guide, 2017, 16(1): 154-156.
[9]KRIS JENSEN, DIMITRIS ANASTASSIOU. Subpixel Edge Localization and the Interpolation of Still Images [J]. IEEE Transon Image Processing, 1995, 4(3): 285-295.
[10]LUO P F, LIOU S S. Measurement of Curved Surface by Stereo Vision and Error Analysis [J]. Optics & Lasers in Engineering, 1998, 30(6): 471-486.
[11]崔桐, 徐欣. 一种基于语义分析的大数据视频标注方法 [J]. 南京航空航天大学学报, 2016, 48(5): 677-682.
CUI Tong, XU Xin. Big Data Video Annotation Based on Semantic Analysis[J]. Journal of Nanjing University of Aeronautics & Aeronautics, 2016, 48(5): 677-682.