
DSP+FPGA+ASIC的实时图像处理架构设计.docx
6页Word版本下载可任意编辑】 DSP+FPGA+ASIC的实时图像处理架构设计 随着红外焦平面阵列技术的快速发展,红外成像系统实现了高帧频、高分辨率、高可靠性及微型化,在目标跟踪、智能交通监控中得到了越来越多的应用,并向更加广泛的军事及民用领域扩展实时红外图像处理系统一般会包括非均匀校正、图像增强、图像分割、区域特征提取、目标检测及跟踪等不同层次的实时图像处理算法,由于图像处理的数据量大,数据处理相关性高,因此实时红外图像处理系统必须具有强大的运算能力目前有些红外图像处理系统使用FPGA实现可重构计算系统,运算速度快,但对于复杂算法的实现难度比较高,且灵活性差大多数红外图像处理系统则采用DSP+FPGA的硬件架构,其中DSP负责实现图像处理算法,FPGA负责实现各种接口电路,但诸如图像多级滤波等处理算法复杂度高,只使用DSP处理会消耗大量时间,一般采用并行多DSP系统以满足实时性要求,但系统比较复杂,体积和功耗也不好控制,实现成本高因此需要在硬件构造上合理分配处理任务,比方FPGA可以完成输入图像的预处理工作,减轻DSP的负担,本实验室自主研制的ASIC芯片可以对输入红外图像开展多级滤波处理,进一步解放DSP。
本文针对红外图像处理系统的实时性要求,提出了基于DSP+FPGA+ASIC的图像处理架构 2.实时红外图像处理系统 由于实时红外小目标检测算法的前端处理数据量大、实时性强且算法复杂度高,我们的系统构造需要保证灵活性,能够适应各种复杂的算法,同时又要保证高速处理能力,因此实时红外图像处理系统采用DSP+ FPGA+ASIC的架构来满足设计的要求其中,DSP具有高度的可编程性,可以完成比较复杂的任务FPGA的处理速度稍逊于ASIC,但具有一定的灵活性,它可以实时接收红外小目标检测算法前端的数据,完成输入图像的一些预处理工作ASIC芯片处理速度快、性能强且可靠性好,可以完成图像滤波等特定的任务 一种实时红外图像处理系统构造框图如图1所示: FPGA采用ALTERA公司的Stratix系列的EP1S10芯片该芯片提供多达10,570个逻辑单元(LEs),存储器容量为920,448016 bits,同时提供了高速DSP模块以及乘法器,专用乘法器适合于作协处理器,可以分担DSP复杂和耗时的算术运算,提升系统的性能 DSP选用TI公司的TMS320C6414芯片。
该芯片主频为600MHz,数据处理能力峰值可达4800MIPS(每秒48亿条指令)由8个相互独立的功能单元构成包含两组通用存放器组,每组含有32个32位存放器片内采用2级存储器构造 ASIC使用本实验室自主研制的多级滤波芯片该芯片采用SMIC 0.35mm工艺,芯片内部工作频率可达50MHz有三个数据通道,分别级连不同数量的1*3基本滤波模板,每路数据通道采用流水线构造采用定点运算,计算精度为8位二进制小数,可处理位宽为8-16位的数据,吞吐量为5M-10M像素/秒,支持128*128,256*256,320*240三种帧格式的图像滤波 3.处理任务的合理分配 红外探测器输出图像数据到信号处理板,先进入FPGA开展预处理,预处理包括非均匀性校正和图像增强等ASIC对输入图像数据开展多级滤波处理FPGA在后续算法中也能协同DSP工作,算法中对运行速度要求很高,而算法构造不太复杂的处理均可在FPGA 中实现,从而使得该FPGA 成为DSP 的协处理器经过预处理后的红外图像数据输出到DSP中开展后续算法处理,DSP的处理包括红外潜在小目标检测算法DSP 处理后的潜在小目标和图像数据通过FPGA传输到DPRAM中存储。
该实时红外图像处理系统主要由三部分组成:FPGA模块,DSP模块和ASIC模块在满足红外图像数据处理的实时性和高速可靠性要求的前提下,各处理模块所处理的任务要尽量到达平衡 从资源角度看,算法用硬件处理速度快,占内存空间小,但灵活性差;用软件刚好相反,处理速度慢,但灵活性好由于设计要满足实时性要求,希望硬件担负的任务越多越好PGA作为一种可编程的硬件资源,虽然它有相当强的设计灵活性,但是考虑到设计、实现调试的难度,不适合做全局、复杂的操作ASIC芯片处理速度快,但灵活性差,只适合处理一些特定的占用大量处理器资源的运算DSP作为软件资源,特点是灵活性好,适合复杂的算法,但速度慢 从算法角度考虑,一个完整的算法在处理上是有层次的,算法对原始数据的操作是简单的、规则的,对后续数据的处理往往比较复杂,同时算法在实现前会被预先分成几个相互独立的功能模块因此低层的、简单的操作可以由FPGA中的逻辑单元模块或ASIC芯片硬件来完成,高层的、复杂的操作则由DSP软件来完成 根据上述分析,本设计中FPGA主要完成与各个外部设备的接口控制逻辑,同时完成一些数据量大、运算构造简单、速度要求高的算法;DSP完成后续构造复杂的目标检测算法;ASIC芯片对输入图像开展多级滤波处理。
此方案保证了系统有足够的处理速度,能够到达红外图像处理系统的实时性要求 3.1 FPGA模块 FPGA主要完成以下几方面的工作:图像数据接收逻辑,图像数据预处理模块,输入缓存FIFO,DSP接口控制逻辑,ASIC接口控制逻辑,DPRAM接口控制逻辑,算法处理模块 (1) 图像数据接收逻辑:根据探测器输出的数字视频信号的场同步,行同步以及时钟信号,发送控制信号接收图像数据 (2) 图像数据预处理模块:对接收的图像数据开展非均匀性校正和图像增强等预处理 (3) 输入缓存FIFO:由FPGA内部配置输入缓冲存储器FIFO预处理后的图像数据可以连续不间断地写入FIFO中,以供DSP读取开展后续的图像处理 (4) DSP接口控制逻辑:DSP 接口时序控制逻辑必须严格按照TMS320C6414的EMIFA 可编程同步接口的时序来编写,并且满足相应的建立保持时间要求DSP启动EDMA通道 读取红外图像数据,通过FPGA的内部FIFO开展连续的图像传输 (5) ASIC接口控制逻辑:按照ASIC芯片的时序编写其控制逻辑,将图像数据导入ASIC 芯片开展图像多级滤波处理。
(6) DPRAM接口控制逻辑:编写DPRAM的控制逻辑,将DSP 处理后的数据通过FPGA传输到DPRAM中存储 (7) 算法处理模块:根据具体算法的需要,协同DSP完成算法中速度要求高,构造不太复杂的运算 3.2 DSP模块 DSP主要完成红外小目标的检测和跟踪算法,功能如下: (1) 启动EDMA通道不断读取FPGA输出的红外图像数据 (2) 对输入的红外图像数据,运行目标检测和跟踪算法,检测运动目标,并确定其方位 (3) 与FPGA建立连接,将算法中比较规则的运算交给FPGA处理 (4) DSP将处理后的运算结果通过FPGA传输至DPRAM中存储 3.3 ASIC模块 ASIC芯片从FPGA中接收预处理后的图像数据开展处理,处理后的三路数据同步写入内部三个同步FIFO,DSP可以根据需要选择输出多级滤波处理后的结果,开展后续算法的处理 4.实验结果与分析 实时红外图像处理板已成功应用于多个红外探测系统中,效果良好图3为实验时采用 高德IR108D探测器获得的原始红外图像,图4为经过多级滤波处理后标识的图像,图5为经过目标检测算法处理后输出的跟踪图像。
可以看到,该系统能够实时检测并跟踪红外图像中的运动小目标 5.结语 本文使用高性能的DSP(TMS320C6414),可编程逻辑器件FPGA (Stratix系列的EP1S10)和专用ASIC多级滤波芯片,提出了DSP + FPGA + ASIC的图像处理平台架构,设计了处理能力强、接口可靠稳定的红外图像处理系统,并在系统中实现了非均匀性校正、小目标检测等算法实验测试说明,该实时红外图像处理系统对每场320×240有效像素,每个像素14bit,场频50Hz的输出数字视频信号能够开展实时处理,对视场中的运动小目标完成检测和跟踪功能,满足系统主要性能指标要求,成功应用于红外探测系统中 6 / 6。
