陈振宇,李忠新
(南京理工大学 机械工程学院,江苏 南京210094)
战场图像侦察弹作为一种可用于战场侦察、评估的新式侦察装备,以其实时性好、突防能力强等优点,受到各国军方的关注[1];随着图像处理技术和处理器运算能力的快速提高,图像制导技术在精确制导武器中的应用也得到迅速发展[2,3]。目前,图像制导弹、侦察弹多为导弹、火箭弹及枪榴弹等大口径弹,而弹载图像采集系统是基于目标图像信息采集的图像侦察弹、图像制导弹等的重要组成部分。探究大口径枪弹等微小型弹应用于侦察和采用图像制导技术的可行性的重要步骤是其弹载图像采集系统的研究。
本文以图像采集系统在大口径枪弹上的实现为出发点,设计了一种基于DSP 和CMOS 图像传感器和图像缓冲芯片的图像采集系统,进行了系统的硬件接口电路和软件程序设计,对系统采集的图像数据进行的显示验证,并对系统实时性进行了分析。
如图1 所示,系统上电后,DSP 从片外程序存储器AT25F1024 中加载程序后,先通过GPIO 口模拟SCCB协议设定图像传感器的寄存器参数,使得图像传感器输出特定格式的图像数据;图像传感器输出的数字图像数据Y0—Y7先存储在图像缓冲芯片AL422B 中,待DSP 通过图像传感器输出的帧同步信号VSYNC 判断一帧图像采集结束后,通过外部存储器接口EMIF 将图像数据从AL422B 读取到片外数据存储器SRAM 中,至此完成一帧图像数据的采集。
图1 系统结构框图Fig 1 Structure block diagram of system
成像模块由镜头、图像传感器构成。考虑封装尺寸和输出帧频,在系统中选择CMOS 彩色图像传感器OV7675作为成像器件[4]。OV7675 的封装尺寸为3.785 mm×4.235 mm,可输出YUV4∶2∶2,RGB565,Raw RGB 等格式的图像数据,输出QQVGA 格式时最高帧频为240 fps,通过SCCB总线协议在片上寄存器中进行设定。在设计中选择YUV4∶2∶2 格式数据输出,并通过硬件对PCLK 进行二分频实现亮度Y 分量与U,V 分量的分离,以获取黑白图像信息,作为后续图像处理的原始数据。
本文选择TI 公司的C55X 系列TMS320VC5509A 型DSP 作为系统核心处理器。其最高主频为200 MHz,179 引脚BGA 封装的尺寸为12 mm×12 mm;片上外设16 位EMIF接口,可用于与图像缓冲芯片的硬件连接;通用输入输出接口GPIO 可用于系统的时序控制;8MBX16 位的片外寻址空间可用于系统数据存储空间与程序存储空间的扩展;C55X系列自带图像、视频处理库,利用后续图像处理算法的实现。
在系统中,DSP 外围电路除时钟电路、电源电路、复位等DSP 运行必须的模块外,根据系统需要扩展了片外数据存储器与片外程序存储器。数据存储器选用存取速度较快的SRAM 存储器IS61LV51216,物理存储空间为512×103×16 位,BGA 封装尺寸为9 mm×11 mm。系统要实现脱机运行必须要解决上电后程序加载的问题,所选用的DSP有多种程序加载方式,考虑尽可能减小程序存储芯片所占用的PCB 空间,简化接口电路,选择串行外设接口(SPI)加载,取EEPROM 器件AT25F1024 作为片外程序存储器。
设计中采用可同时读写的异步FIFO 芯片AL422B 实现图像传感器与DSP 的时序匹配。AL422B 读写时序的控制是DSP 正确采集一帧完整图像数据的关键。如下文实时性分析结果所示,DSP 从AL422B 中读取一帧图像数据的时间大于一帧图像数据写入AL422B 所用的时间;又由于AL422B 可同时进行读写操作,如果在DSP 读AL422B的同时,下一帧图像写入AL22B,则有可能出现上一帧图像数据的一部分被下一帧图像数据覆盖,即读取结果为多帧图像数据的数据段的拼接,因此,在设计中DSP 读取数据时禁止AL422B 的写入。图像传感器输出的时序信号有帧同步信号VSYNC、行同步信号HREF 和像素时钟信号PLCK[5],其时序如图2 所示。DSP 通过GPIO 引脚输出控制信号与HREF 经逻辑运算使能图像缓冲芯片AL422B 的写入使能引脚/WE,实现对AL422B 的写入控制。通过检测由GPIO 引脚输入的VSYNC 下降沿来判断何时使能和禁止AL422B 的写入。
图2 图像传感器时序图Fig 2 Sequence chart of image sensor
在读取操作中,其关键在于读时钟信号RCK 与读操作的配合。AL422B 的读取控制时序为在读使能信号/RE 为低电平时,在读时钟信号RCK 的上升沿,数据输出到输出数据寄存器中,读指针自动加1,当输出使能信号/OE 为低电平时,允许输出数据寄存器中的数据被读取。图3 为DSP 的外部存储器接口读取片外异步存储器的时序图。由于在系统中未利用EMIF 接口进行其他片外存储空间的读取,仅在读取AL422B 时,读使能信号/ARE 出现一次下降沿和一次上升沿,在系统中用读使能信号/ARE 为图像缓冲芯片提供读时钟信号,读使能信号/RE 和输出使能信号/OE 均置低,使得数据在/ARE 的上升沿输出到输出数据寄存器,且读指针加1。读写时序控制电路接口如图4 所示。
图3 EMIF 接口读取片外数据存储器时序图Fig 3 Sequence chart of reading asynchronous data of external memory interface of EMIF
图4 读写时序控制电路接口示意图Fig 4 Interface diagram of reading and writing timing control circuit
设计图像采集程序时,首先设定DSP 的工作参数,包括时钟主频设定、外部存储器(EMIF)类型及参数设定、通用输入输出接口(GPIO)设置;而后进行图像传感器参数设定;之后控制一帧图像数据写入AL422B 中,并通过DSP 的外部存储器扩展接口来实现图像缓冲芯片到SRAM 的数据传递,完成一帧图像数据的采集。图像数据采集流程如图5所示。
图5 图像数据采集程序流程图Fig 5 Program flow chart of image data acquisition
SCCB 协议在DSP 上的实现是完成图像传感器初始化,并保证其正常工作的前提[6]。在设计中,根据SCCB 总线的时序原理,通过通用输入输出接口GPIO 实现SCCB 协议的模拟。GPIO7 模拟时钟线SIO—C,设置为输出;GPIO6模拟数据线SIO—D,向图像传感器中写入数据,设置为输出。程序中定义子函数startSCCB,stopSCCB,SCCBwrite(),调用上述三个子程序构成设定一个寄存器的子函数setSCCB(reg,data)(如图6)来实现图像传感器寄存器参数的设定,其中,reg 为寄存器地址,data 为要写入该寄存器的数据。设计中设定图像传感器输出YUV4:2:2 格式数据,图像大小为240X320 QVGA 格式。图7 所示为SCCB write()函数流程图。
图6 setSCCB(reg,data)函数流程图Fig 6 Flow chart of function setSCCB(reg,data)
TMS320VC5509A 通过外部数据存储器接口EMIF 可寻址8M 的片外数据存储空间,分为CE0~CE3 四个片选空间。在设计中将AL422B 扩展在CE3 空间上,将片外数据存储器SRAM 扩展在CE0 空间上,读取过程即是把图像缓冲芯片AL422B 作为片外异步存储器访问,将其中的图像数据传递到SRAM 中。部分数据读取程序如下:
souraddr=(int*)0x600000;
图7 SCCBwrite()函数流程图Fig 7 Flow chart of function SCCBwrite()
为验证设计方案的可行性,系统制板调试完成后,运行程序进行图像数据采集,利用DSP 编译环境CCS3.3 自带的图形显示工具View-Graph-Image 对采集到的图像数据进行显示验证。图8、图9 分别为系统实物图和采集到的图像实例。
图8 系统实物图Fig 8 Physical figure of system
图9 采集到的图像实例Fig 9 Example of acquired image
实时性是图像采集系统的重要特性,也是弹载图像采集处理系统的关键。在系统调试完成后,对图像采集程序的实时性进行分析。在系统完成初始化、图像传感器参数设定后,图像采集速度受图像传感器输出一帧图像到AL422B 的速度与DSP 从AL422B 读取一帧图像到SRAM中的速度较低者的限制。易知图像传感器的输出数据可实时写入AL422B 中,所设置图像传感器的输出帧频为60 fps,经测试写入AL422B 所用的时间为16.67 ms。利用CCS 中的代码分析工具Profile 对上述图像数据读取程序进行分析【7】,分析5 次得到的结果如表1 所示。由表可知,上述图像读取程序的240 个循环所用的时钟周期为14588316 个,设定系统工作在最高主频200 MHz,时钟周期为5 ns,可得一帧图像的读取时间为72.942 ms。综上可得,一帧图像数据从写入到读取到 SRAM 中所需的最大时间为106.282 ms,系统帧频最小可达到9 fps;且根据上述分析不难得知,当设定输出图像数据为QQVGA 格式,帧频240 fps时,系统帧频最小可达到36 fps。
表1 Profile 分析结果列表Tab 1 List of Profile analysis result
本文以图像采集处理系统在微小型化系统上的实现为出发点,进行了元器件选择和系统硬件接口设计及软件设计,并进行了原理样机的制板和调试。图像数据显示结果表明:系统硬件接口电路和软件设计均是可行的,可实现图像数据的正确采集;实时性分析表明:该系统最高可实现22 fps 的采集速率。系统所选用的元器件的封装均较小,按照需要对系统进行小尺寸的PCB 设计制作,可为微小型化装置上的图像采集处理提供一种方法。
[1] 王正平,刘 莉,朱 勇.炮射侦察弹炮射减速段弹道优化设计[J].弹道学报,2012,24(4):22-26.
[2] 吕 翼,高洪民,汪 渤,等.图像制导中的SIFT 快速算法[J].系统工程与电子技术,2009,31(5):1148-1151.
[3] 杨 杰.图像制导技术及实验研究[D].南京:南京航空航天大学,2013:1-3.
[4] 丁昊杰,刘敬彪,盛庆华.基于CMOS 图像传感器的视频采集系统设计[J].现代电子技术,2012,35(14):178-181.
[5] 程 磊,刘 波.基于OV2640 的微型胶囊内窥镜设计[J].传感器与微系统,2014,33(2):73-76.
[6] 苑玮琪,汤永华.OmniVision 图像传感器的SCCB 总线协议在DSP 中的实现[J].仪器仪表学报,2006,27(6):1687-1688.
[7] 汪春梅.TMS320C55xDSP 原理及应用[M].3 版.北京:电子工业出版社,2011:223-224.