FPGA+DSP核心架构的实时三维图像信息处理
三维图像信息处理一直是图像视频处理领域的热点和难点,目前国内外成熟的三维信息处理系统不多,已有的系统主要依赖高性能通用PC完成图像采集、预处理、重建、构型等囊括底层和高层的处理工作。三维图像处理数据量特别大、运算复杂,单纯依靠通用PC很难达到实时性要求,不能满足现行高速三维图像处理应用。
本系统中,采用FPGA实现底层的信号预处理算法,其处理数据量很大,处理速度高,但算法结构相对比较简单,可同时兼顾速度和灵活性。高层处理算法数据量较少、算法结构复杂,可采用运算速度快、寻址方式灵活、通信机制强大的DSP实现[1,4]。
1 三维图像处理系统组成
1.1 硬件系统构成
该系统由五个模块组成,如图1所示。
系统信息处理流程见图2所示。CCD摄像机采集的多路模拟视频信号经MAX440按需要选定后,送入模数视频转换器SAA7111A将摄像机输出的模拟全电视信号CVBS转换成数字视频信号;之后视频信号流入图像预处理器Spartan XC3S400,经过提取中心颜色线、提取激光标志线和物体轮廓线的预处理后,配送到两片TS201进行定标参数计算、坐标计算、三维重建、数据融合以及三维构型的核心运算;最后将DXF文件数据经由PCI接口传送到PC,完成三维图像变换和显示等最终处理;整个系统的逻辑连接和控制以及部分数据交换由另一片FPGA来完成[1]。
在体系结构设计上,FPGA处理器采用SIMD结构,在一个控制单元产生的控制信号下,数据通路中的三个算法并行运行。由于该系统要求处理速度较高,因而在数据通路中采用了流水线技术以提高速度。此外,本系统中为图像存储采用了许多大容量高速FIFO,以达到减少地址线,简化控制的目的。
1.2 处理器芯片
为满足系统大数据量快速处理的要求,三款核心芯片均为最新高性能产品,其硬件方面的特点给系统设计带来极大的方便,其优异的运算性能可确保系统的快速实时性。
FPGA芯片采用Xilinx公司近期推出的采用90nm工艺的Spartan3系列的XC3S400,该系列芯片是目前为止工艺最先进、价格较低、单位成本内I/O管脚最多的平台级可编程逻辑器件。XC3S400芯片内部时钟频率可达326MHz,信号摆幅1.14V和3.45V,I/O口支持622Mbps的数据传输率,具有高性能SelectRAM内部存储器,多达4个数字时钟管理器模块和8个全局时钟多路复用缓冲器。
DSP采用ADI公司的最新款基于并行处理设计、具有海量片内RAM的TigerSHARC ADSP TS201。其内部集成的RAM容量高达24Mbit,核心速度最高达600MHz。内设双运算模块,每个包含一个ALU、MUL、64bit移位寄存器、32个32bit寄存器组和一个128bit通信逻辑单元,相关的数据对齐缓冲器;双整数ALU,各有独立的寄存器组,提供数据寻址和指针操作;4个128bit宽度内部总线,每个都连接到6个4Mbit的内部存储器块;提供与主机处理器、多处理器空间、片外存储器映射外设、外部SRAM和SDRAM相连的外部端口;14通道DMA控制器;4个全双工低电压差分信号输入的Link Port;具有片内仲裁总线,用于多DSP无缝的连接。
数字化器采用了Philips公司的增强视频输入处理器(EVIP)——SAA7111A模数转换器。该产品广泛应用于个人视频、多媒体、数字电视、可视电话、图像处理、实时监控等领域,纯3.3V CMOS工艺的模拟视频前端和数字视频编码器,能够将PAL/TSC/ECAM视频信号解码为与CCIR-601相兼容的多种数字视频格式,支持TV或VTR信号源的CVBS或S-Video视频信号,最高图像分辨率可达720×576,支持24位真彩色,可以通过串行总线动态配置
SAA7111A模数转换器的工作方式和各种参数。
评论