位置:51电子网 » 技术资料 » 接口电路

基于CMOS图像传感器的USB接口图像采集系统设计

发布时间:2008/6/3 0:00:00 访问次数:432

江川贵,廖启征,魏世民

  摘要:介绍以cpld控制为核心的cmos图像采集系统,系统选用彩色图像传感器ov7620,并通过usb接口以类似dma方式进行快速的图像传输。最后给出了单片机固件程序和设备驱动程序的实现方法。

  关键词:cmos图像传感器;图像采集;cpld;usb

系统设计

图1 为图像采集系统的原理框图。系统选用ominivision公司生产的cmos芯片ov7620,它是一款集成了一个640×480 (30万像素)图像矩阵的彩色摄像芯片,在隔行扫描模式下工作频率可达60hz,逐行扫描时为30帧/s。其像面大小为1/3英寸,支持8位或16位数字信号从单通道或双通道输出,输出信号的类型可在ycrcb和rgb 之间选择,图像矩阵支持vga或cif 规定, 数字输出格式遵循ccir601, zvports, ccir656等标准。ov7620有很强的摄像和控制功能,如暴光控制,γ校正,增益,色彩矩阵,窗口选择等,所有这些功能都可以通过i2c接口进行编程控制。

图1 系统原理框图

cpld选用altera公司的芯片epm7128s,它在系统中处于核心地位,既要负责将ov7620输出的视频数据存入sram,又要与mcu配合完成视频数据的usb 传输。mcu 是cygnal 公司的高性能单片机c8051f020,它通过i2c总线控制cmos芯片的工作方式和状态, c8051f020自带smbus总线接口,可以把i2c的时钟线scl和数据线sda通过交叉开关分配到端口引脚,mcu作为i2c总线通讯的主机,ov7620用42h (write) 、43h (read)作为从机地址与mcu进行通信。另外mcu还控制usb 通信,负责usb芯片的初始化和与pc的通信连接,其64kb 的flash程序存储空间足以存放usb 通信固件。sram 芯片采用is61lv5128al芯片,该芯片为高速静态ram,存储时间在10ns左右, 可以满足ov7620 的速度要求, 其512kb的存储空间足以用来存储30万像素的视频数据(bayer2pattern: 每一像素包含一个字节的rgb 信息) 。usb 接口芯片采用philips的pdiusbd12 芯片,该芯片支持usb 1.1标准协议和dma传输模式。

图像采集部分

ov7620的输出特性
  ov7620工作方式和输出格式非常多,可以适应不同的应用场合,针对我们的较小系统,采用了单通道y输出,以及逐行扫描的工作方式。这些工作方式的实现是通过mcu 的i2c编程控制的。当ov7620 设置工作方式稳定后,它就会输出视频数据,同时还有3个重要的参考信号输出:帧同步信号sync,水平同步信号href,和像素时钟信号pclk。参见图2,每一个帧同步信号sync 周期包含480 个水平同步信号href脉冲,而每一个href周期包含640个pclk时钟脉冲。每一个pclk时钟输出一个像素的视频数据(8位标准的bayer-pattern彩色rgb数据) 。

图2 图像采集信号时序

图像存储方式
根据640 ×480 的像素输出特点, 将512kb 的ram分成512行,每行1kb空间,由a0~a9共10条地址线选通行内地址记为低位地址:addr-l; 高位a18~a10共9条地址线选通各行记为高位地址:addr-h。为保证ov7620 采集的数据同步写入sram中,用cpld宏单元设计了2个地址计数器:低位计数器addr-l和高位记数器addr-h。当图像数据采集开始时( sync信号低有效) ,记数器由0开始记数,每来一个像素时钟pclk使低位计数器顺序加1,完成1行像素的写入,ov7620产生的行同步信号href使低位计数器清0,并使高位记数器顺序加1,改变行地址直到完成480行写入后产生帧同步信号,并使高位计数器清0,这样完成1帧图像数据的缓存,详细的图像采集信号时序如图2。512kb的sram芯片实际上只用了640 ×480约300多kb 的存储空间。芯片工作方式设定在pclk信号的下降沿更新数据;在上升沿,数据是稳定时期,所以如图2,在pclk信号的下降沿更新sram的地址信号addr;在pclk信号上升沿使/wr信号有效, 然后写数据到sram 中。其中cpld控制sram的写数据逻辑用vhdl 语言编写,用max+plusii工具进行仿真设计,最后实现了图像数据的连续采集。

图像传输部分

类似dma方式数据传输
视频数据按行列关系有序存入sram芯片后,就可以顺序读取数据并进行传输。传统的usb 传输方式是mcu 先从sram 中取得数据再送到pdiubd12;通过pdiubd12发送到主机。不管是mcu从sram取数据还是向作为外设的pdiubd12写数据,速度都较慢。因此我们考虑用系统中的cpld控制来实现类似dma 方式的数据传输。在系统工作过程中,单片机负责解释usb的控制传输。当要进行从外存取数送到pdiubd12时,单片机让出总线,由cpld完成该工作。cpld产生外存的读信号和地址,同时产生pdiubd12的写信号和地址,自动实现外存数据到pdiubd12接口芯片的传送。这种类似dma方式的数据传输解决了由单片机控制引起的速度瓶颈,极
江川贵,廖启征,魏世民

  摘要:介绍以cpld控制为核心的cmos图像采集系统,系统选用彩色图像传感器ov7620,并通过usb接口以类似dma方式进行快速的图像传输。最后给出了单片机固件程序和设备驱动程序的实现方法。

  关键词:cmos图像传感器;图像采集;cpld;usb

系统设计

图1 为图像采集系统的原理框图。系统选用ominivision公司生产的cmos芯片ov7620,它是一款集成了一个640×480 (30万像素)图像矩阵的彩色摄像芯片,在隔行扫描模式下工作频率可达60hz,逐行扫描时为30帧/s。其像面大小为1/3英寸,支持8位或16位数字信号从单通道或双通道输出,输出信号的类型可在ycrcb和rgb 之间选择,图像矩阵支持vga或cif 规定, 数字输出格式遵循ccir601, zvports, ccir656等标准。ov7620有很强的摄像和控制功能,如暴光控制,γ校正,增益,色彩矩阵,窗口选择等,所有这些功能都可以通过i2c接口进行编程控制。

图1 系统原理框图

cpld选用altera公司的芯片epm7128s,它在系统中处于核心地位,既要负责将ov7620输出的视频数据存入sram,又要与mcu配合完成视频数据的usb 传输。mcu 是cygnal 公司的高性能单片机c8051f020,它通过i2c总线控制cmos芯片的工作方式和状态, c8051f020自带smbus总线接口,可以把i2c的时钟线scl和数据线sda通过交叉开关分配到端口引脚,mcu作为i2c总线通讯的主机,ov7620用42h (write) 、43h (read)作为从机地址与mcu进行通信。另外mcu还控制usb 通信,负责usb芯片的初始化和与pc的通信连接,其64kb 的flash程序存储空间足以存放usb 通信固件。sram 芯片采用is61lv5128al芯片,该芯片为高速静态ram,存储时间在10ns左右, 可以满足ov7620 的速度要求, 其512kb的存储空间足以用来存储30万像素的视频数据(bayer2pattern: 每一像素包含一个字节的rgb 信息) 。usb 接口芯片采用philips的pdiusbd12 芯片,该芯片支持usb 1.1标准协议和dma传输模式。

图像采集部分

ov7620的输出特性
  ov7620工作方式和输出格式非常多,可以适应不同的应用场合,针对我们的较小系统,采用了单通道y输出,以及逐行扫描的工作方式。这些工作方式的实现是通过mcu 的i2c编程控制的。当ov7620 设置工作方式稳定后,它就会输出视频数据,同时还有3个重要的参考信号输出:帧同步信号sync,水平同步信号href,和像素时钟信号pclk。参见图2,每一个帧同步信号sync 周期包含480 个水平同步信号href脉冲,而每一个href周期包含640个pclk时钟脉冲。每一个pclk时钟输出一个像素的视频数据(8位标准的bayer-pattern彩色rgb数据) 。

图2 图像采集信号时序

图像存储方式
根据640 ×480 的像素输出特点, 将512kb 的ram分成512行,每行1kb空间,由a0~a9共10条地址线选通行内地址记为低位地址:addr-l; 高位a18~a10共9条地址线选通各行记为高位地址:addr-h。为保证ov7620 采集的数据同步写入sram中,用cpld宏单元设计了2个地址计数器:低位计数器addr-l和高位记数器addr-h。当图像数据采集开始时( sync信号低有效) ,记数器由0开始记数,每来一个像素时钟pclk使低位计数器顺序加1,完成1行像素的写入,ov7620产生的行同步信号href使低位计数器清0,并使高位记数器顺序加1,改变行地址直到完成480行写入后产生帧同步信号,并使高位计数器清0,这样完成1帧图像数据的缓存,详细的图像采集信号时序如图2。512kb的sram芯片实际上只用了640 ×480约300多kb 的存储空间。芯片工作方式设定在pclk信号的下降沿更新数据;在上升沿,数据是稳定时期,所以如图2,在pclk信号的下降沿更新sram的地址信号addr;在pclk信号上升沿使/wr信号有效, 然后写数据到sram 中。其中cpld控制sram的写数据逻辑用vhdl 语言编写,用max+plusii工具进行仿真设计,最后实现了图像数据的连续采集。

图像传输部分

类似dma方式数据传输
视频数据按行列关系有序存入sram芯片后,就可以顺序读取数据并进行传输。传统的usb 传输方式是mcu 先从sram 中取得数据再送到pdiubd12;通过pdiubd12发送到主机。不管是mcu从sram取数据还是向作为外设的pdiubd12写数据,速度都较慢。因此我们考虑用系统中的cpld控制来实现类似dma 方式的数据传输。在系统工作过程中,单片机负责解释usb的控制传输。当要进行从外存取数送到pdiubd12时,单片机让出总线,由cpld完成该工作。cpld产生外存的读信号和地址,同时产生pdiubd12的写信号和地址,自动实现外存数据到pdiubd12接口芯片的传送。这种类似dma方式的数据传输解决了由单片机控制引起的速度瓶颈,极
相关IC型号

热门点击

 

推荐技术资料

耳机放大器
    为了在听音乐时不影响家人,我萌生了做一台耳机放大器的想... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!