基于DM642的高分辨率红外热像仪设计与实现
红外成像技术早期在军事领域有着广泛的应用[1],随着非制冷红外热成像技术的生产成本大幅度降低以及红外成像和测温具有非接触、无损等特点,该产品的应用目前已延伸到了电力、消防、工业、医疗、安防等各个领域。
常见的热像仪都是以FPGA、DSP、ARM为核心实现,其中以FPGA为核心的嵌入系统[2]具有并行处理和实时性强的优点,只是FPGA在任务调度、网络协议等功能设计上处理起来较为复杂。以ARM为核心的嵌入系统[3]能够轻松实现多任务调度、移植各种复杂的网络协议及实现多种IO接口,但ARM的处理器架构在实时性和高吞吐量上能力较差。
为实现更高性价比,满足红外图像数据处理和传输要求,本文提出以TI公司的DM642处理器为核心设计红外热像仪。从硬件上看,该处理器主频能够工作在600 MHz以上,并且片内具有多总线、多处理器单元,具有多种IO总线和多通道EDMA,加上片内自带的VP口、EMIF接口和EMAC控制器,能够无缝连接外部设备,如FPGA、SDRAM、FLASH、网络物理层芯片等。同时为了降低设计复杂性和更好地利用处理器硬件资源,TI公司还针对6000系列的高性能DSP处理器,提供BIOS操作系统、DDK驱动开发包、NDK网络协议栈开发包以及RF5程序框架等。利用DM642和TI达芬奇多核系列DSP处理器的软硬件通用性,基于DM642设计的嵌入系统还可以很方便地移植到性能更强的达芬奇平台。
1 设计总体框架
总体设计如图1所示。首先红外探测器把热辐射转换为电信号数据;其次FPGA接收探测器串行输出的数据并调整时序后加入行同步和场同步信号形成RAW格式的热图数据,这种RAW格式的数据可以直接通过DM642的采集VP口输入到DSP中。当VP口采集到一帧以后就会给DM642产生输入中断,此时DM642就可以对热图数据进行非均匀性校正[4]、直方图均衡、温度计算,模拟视频生成、数字视频网络传输等处理。由于选用的是处理性能强的DM642,结合TI公司的BIOS操作系统及DDK、NDK、RF5等开发软件包,因此本设计可以选用价格较为低廉的FPGA芯片进行数据采集的时序处理,如EP1C6T144C8,从而把复杂的数据处理和传输等功能放到DM642芯片中,提高系统的稳定性和灵活性。
2 硬件设计
2.1 红外探测器接口电路
红外探测器选用FILR公司的Photon 640机芯,该探测器实现热辐射到电信号的转换。机芯内置非制冷氧化钒(VOx)焦平面阵列,像素分辨率达到640×480,提供8 bit或14 bit的串行低电压差分信号LVDS(Low Voltage Differential Signaling)图像输出,并且可以方便地通过串口进行配置。由图2所示,机芯提供8根引脚输出,其中数据时钟PH_DCLK+和PH_DCLK-、帧同步时钟PH_FSYNC+和PH_FSYNC-、数据输出PH_DATA+和PH_DATA-,均为LVDS信号格式,通过DS90LV032A芯片转换为3 V CMOS信号,转换后的数据信号和时钟信号输出到FPGA中对应引脚。TXD_PHOTON和RXD_PHOTON为串口发送和接收引脚,通过MAX3232CD芯片转换为TTL信号后连接到DM642对应的引脚上。
2.2 FPGA的接口设计
FPGA采用Altera Cyclone系列的EP1C6T144C8,包含5 980个逻辑单元,价格低廉、处理性能适中。主要实现以下功能接口:(1)红外探测器接口。根据机芯输出的时钟信号和帧同步信号把热图数据采集到FPGA,并且为了和DM642的VP采集口的RAW格式数据一致,还需要在采集的热图数据中添加行同步和帧同步信号。(2)ADV7179编码器配置和时钟接口。为了降低DM642 I2C控制的复杂度,对编码器的配置和初始化通过FPGA完成,并且为了显示PAL格式的红外模拟视频,编码器还需要一个27 MHz的时钟信号,该信号也是通过FPGA的PLL模块产生。(3)DM642接口。分别包括:16 bit的数据接口,输入用VP1,因此需要和VP1的DATA[9:2]以及 DATA[19:12]连接;采集使能接口 VP1CTL0;采集时钟接口VP1CLK0。具体如图3所示,H为行同步,V为帧同步,FPGA在VP1CTL0为高电平时输出一行数据,数据的采集时钟为VP1CLK0。
2.3 DM642的接口设计
DM642作为系统设计的核心,其主要接口如图4所示,主要包括:(1)通过EMIF总线对SDRAM和FLASH进行数据读写。FLASH主要保存程序代码、与热像仪相关的配置和测温系数等数据;SDRAM是程序运行中需要用到的外部存储器,由于基于BIOS操作系统的代码量都较大,无法把程序和数据都加载到DM642的L2缓存中,因此必须合理使用SDRAM,并且将其配置为L2的外部CACHE,通过EDMA通道和L2对应一致。(2)编码器接口。ADV7179的时钟信号和初始化由FPGA提供,但编码器的输入数据由DM642通过VP0提供,数据格式是8位宽的BT.656格式,内嵌同步信号,因此这里不再需要提供额外的行同步和帧同步信息。(3)FPGA接口。这部分在介绍FPGA接口设计时已经提到,DM642需要把VP1配置为RAW格式的采集模式,采集宽度为16位,采集时钟和采集使能信号都由FPGA提供。(4)EMAC接口。DM642内嵌EMAC控制器,并且在片内由EDMA通道及通过专用的EMAC数据线和外部物理层芯片LXT971ALC连接,这种架构设计正是DM642网络通信性能优异的保证,具体的测试结果在实验与总结部分给出。EMAC控制器还可以通过MDIO接口对LXT971ALC芯片进行配置,获取以太网连接状态信息等。(5)I2C接口,该接口主要用来配置探测器,使得探测器工作在合适的模式,并且获取相关的配置信息,如探测器内部温度、控制快门校正等。
评论