0 引言
DSP是基于可编程超大规模集成电路和计算机技术发展起来的一门重要技术,DSP芯片的快速数据采集与处理功能以及片上集成的各种功能模块为DSP应用于各种场合提供了极大的方便。而CMOS图像传感器与CCD相比,由于CMOS图像传感器能将时序处理电路和图像信号的前端放大与数字化部分集成 于一个芯片内,因而其发展一直受到业界的高度重视。现在,随着技术与工艺的发展,CMOS图像传感器不仅在噪声上得到了有效改善,而且分辨率也得到了明显提高。CMOS图像传感器将以其低廉的价格、实用的图像质量、高集成度和相对较少的功耗在视频采集领域得到广泛的应用。为此,本文提出了一种基于DSP和CMOS图像传感器,同时由复杂可编程逻辑控制芯片CPLD控制的实时图像采集系统的实现方案。
1 硬件设计
图1所示是该图像采集系统的电路结构框图。由图1可见,该图像采集系统主要由OV6630图像传感芯片、CPLD控制模块、SRAM数据存储器、FLASH程序存储器、DSP信号处理器等几部分组成。其图像采集芯片用美国Omni Vision公司开发的彩色CMOS图像传感器OV6630,该芯片与
奇数扫描行BGBG……
偶数扫描行GRGR……
根据人眼对彩色响应带宽不高的大面积着色特点,每个象素没有必要同时输出3种颜色。因此,数据采样时,奇数扫描行的第1,2,3,4,…象素分别采样和输出B,G,B,G,…数据;偶数扫描行的第1,2,3,4,…象素分别采样和输出G,R,G,R,…数据。在实际处理时,每个象素的R,G,B信号由象素本身输出的某一种颜色信号和相邻象素输出的其他颜色信号构成。这种采样方式在基本不降低图像质量的同时,可以将采样频率降低60%以上。
系统中的核心处理芯片选用TI公司的加强型定点DSP芯片TMS320VC5410A,该DSP的工作频率可达160 MHz,内部有64KBRAM空间可以灵活的映射为数据或程序存储空间。由于DSP的内部存储空间有限,所以,本设计在外部扩展了一大小为1 MB的SRAM数据存储器CY7C1021和256 K的FLASH程序存储器SST39VF400A。控制芯片CPLD选用Altera公司的MAX7000系列芯片EPM7128SLC84-15。该芯片包含84个I/O管脚、128个宏单元,每16个宏单元可组成一个逻辑阵列块,工作电压为5.0 V。该芯片在系统中处于总体时序控制地位,既用于给图像传感器芯片提供控制信号。也用于SRAM和FLASH的片选和读写控制,同时还负责LCD的显示控制。
2 软件设计
当系统配置完毕以后,便可以进行图像数据的采集与处理。在采集图像的过程中,最主要的工作是判别一帧图像数据的开始和结束的时刻。在仔细研究了OV6630输出的同步信号(VSYNC是垂直同步信号、HREF是水平同步信号、PCLK是输出数据同步信号)的基础上。笔者用VHDL语言实现了采集过程起始点的精确控制。图2所示为图像采集期间三个同步信号与数据信号的时序关系图。
图2中,每一个帧同步信号VSYNC周期包含288个水平同步信号HREF脉冲,而每一个HREF周期包含352个PCLK时钟脉冲,每一个PCLK时钟可输出一个RGB像素的视频数据。
通过监测系统中的垂直同步信号VSYNC的变化,即可得知新的一帧图像是否开始,一帧图像开始后,仅当HREF为高且PCLK输出下降沿时,才能输出一个有效的像素值。VSYNC的上升沿表示一帧新的图像的到来,下降沿则表示一帧图像数据采集开始(CMOS图像传感器是按列采集图像的)。HREF是水平同步信号,其上升沿表示一列图像数据的开始。PCLK是输出数据同步信号。只有当HREF为高电平时,才能开始有效的采集数据,PCLK下降沿的到来表明数据的产生,PCLK每出现一个下降沿可传输一位数据。HREF为高电平期间,共可传输352位数据。在一帧图像中,即VSYNC为低电平期间,HREF将出现288次高电平。而当下一个VSYNC信号的上升沿到来时,即表明分辨率为352×288的图像采集过程的结束。
CPLD控制的实现过程首先是按顺序检测VSYNC和CHSYNC信号是否有效,这
时要注意防止毛刺信号的干扰。由于毛刺信号时间很短,设计时可采用设标志位的方法,即当检测到信号的有效沿后(对于VSYNC是上升沿,而对于CHSYNC是下降沿),可在等待一定时间后再次检测信号,看其是否仍然有效,如果有效,则说明信号是正确的。
由于系统中的像素数据是按PCLK时钟输出的,所以,可用来存储图像的SRAM使能信号CE。另外,其读写信号也是由CPLD产生的。因此,读信号RE只要在CPLD写操作中置“1”即可。由于在数据输出时,PCLK的上升沿信号比较稳定,而RAM可在WR上升沿将数据写入,因此,可以在HREF有效后(HREF=1)采用PCLK作为写信号RW。
由于图像像素点的个数已知,即数据个数已知,故在计数完毕后,CPLD将发出计数完毕信号。而DSP在接收到中止信号后,即可开始读取RAM中的数据,并对数据进行压缩和相应的处理,然后把数据放到LCD液晶屏的数据总线,最后将采集到的图像在液晶屏上显示出来。图3为图像采集系统的软件流程图。
3 结束语
本系统采用DSP和CPLD的综合方案来将图像的采集和数据的处理分而治之。实验结果表明,该系统图像