基于FPGA的图像传感器驱动的设计方案
扫描二维码
随时随地手机看文章
汽车在给人们生活带来便利的同时也带来了交通事故。其中超速行驶是造成交通事故的重要隐患之一。据研究表明,目前针对车辆超速行驶情况的道路抓拍系统中所使用的图像传感器大多为小面阵器件,普遍为100万~200万像素,从而导致抓拍图像的像素比较低、能够同时抓拍的车道数较少等等问题。面对这一系列问题,大面阵的图像传感器便逐渐成了人们关注的热点。在设计过程中,分析了具有500万像素的CMOS图像传感器MT9P401的工作模式,选用QuartusⅡ做为开发工具,使用Verilog HDL语言对驱动电路设计方案进行了硬件描述,并对所设计的驱动时序进行仿真和验证。
1 MT9P401图像传感器介绍
1.1 主要特点
MT9P401是Micron公司的一款具有500万像素的CMOS图像传感器。该芯片的主要特点有:图像分辨率为2 592 H×1 944 V,像元尺寸为5.7 mm×4.28 mm,最大传输速率为96 Mb/s,相应的采样速率为14 f/s,动态范围为70.1 dB。
MT9P401图像传感器将像素矩阵、串行接口、阵列控制器、A/D转换电路等集成在一起。当MT9P401的像素矩阵受到光照时,由于光电效应使光信号转变为电信号,由此产生的模拟信号传送至内部A/D转换器,输出相应的数字信号。控制像素矩阵的信号由矩阵控制器产生,矩阵控制器通过串行接口操作。
1.2 电子曝光方式
MT9P401图像传感器有两种电子曝光方式,分别对应两种不同的快门模式。
(1)电子卷帘快门(Electronic Rolling Shutter):对任一像素,在曝光开始时将其清零,等待曝光时间过后,将信号值读出。数据的读出是串行的,所以清零、曝光、读出也只能逐行顺序进行,通常是从上至下,和机械的焦平面快门非常像。此曝光方式的特点是每个像素曝光时长相同,但曝光时间点不同。
(2)全局快门(Global Shutter/Snapshot Shutter):每个像素点增加了采样保持单元,在指定时间内对数据进行采样,然后顺序读出,这样虽然后读出的像素仍然进行曝光,但存储在采样保持单元中的数据却并未改变。因图像的积分时间相等,所以每个像素点在同一瞬间曝光。此曝光方式的特点是能同时复位所有像素,但曝光时长不同,可用机械快门实现同时结束曝光。
1.3 像素数据读出时序分析
MT9P401图像传感器共有256个内部寄存器,内部寄存器的设置决定了MT9P401的工作状态。MT9P401与外部控制器的通信依靠I2C总线[1],在I2C总线协议下输出每一帧图像数据。默认情况下,MT9P401的像素时钟与外部输入时钟同步,MT9P401一帧图像的像素包括1 944行和2 592列,每经过一个像素时钟周期,都有一个12 bit的像素数据通过数据输出引脚输出,帧有效信号(Frame_Valid)的周期为70 ms,行有效信号(Line_Valid)的周期为35 μs。当帧有效信号(Frame_Valid)和行有效信号(Line_Valid)均为高电平时,输出像素数据。当帧有效信号(Frame_Valid)为低电平时,出现垂直消隐。当行有效信号(Line_Valid)为低电平时,出现水平消隐。
2 电路设计
2.1 电路硬件设计
电路硬件由电源模块、时钟模块、CMOS图像传感器与FPGA通信模块构成。
(1)电源模块
CMOS图像传感器部分按照MT9P401数据手册上的要求应提供5种电源,分别为:+1.8 V的数字电源VDD、+2.8 V的IO口驱动电源VDDIO、+2.8 V的模拟电源VAA、+2.8 V的成像核心电源VDDPIX、+2.8 V的锁相环电源VDDPLL。FPGA部分按照EP2C8T144C8数据手册要求提供3种电源,分别为+1.2 V的数字电源VDD、+3.3 V的IO口驱动电源VDDIO、+1.2 V的模拟电源VAA。
由于CMOS图像传感器的供电电源需要有较高的纹波抑制和噪声,同时输出压降要低,结合设计低成本、低功耗等因素,在电源部分选择TI公司的单端输出LDO[2](TPS77001、TPS79003)作为供电模块。LDO的工作原理是通过负反馈调整输出电流使输出电压保持不变。LDO是一个降压型的DC/DC转换器,因此Vin>Vout,它的工作效率可以用式(1)表示:
LDO的工作效率一般在60%~75%之间,产生的静态电流较小。
(2)时钟模块
时钟是整个电路中最重要、最特殊的信号,电路中各器件的动作基本在时钟的跳变沿上进行,这就对系统时钟信号的时延差要求非常小,否则容易造成时序逻辑状态的错误。因而在电路设计中保持时钟信号的稳定性有着非常重要的意义。在本设计中,FPGA的控制时钟由外部50 MHz的有源晶振提供。为了防止振荡器干扰电源,在有源晶振旁加上104去耦电容。CMOS图像传感器的外部输入时钟EXTCLK需要100 MHz,其由FPGA中的PLL[3]倍频得到。
(3)CMOS图像传感器与FPGA通信模块
MT9P401图像传感器的内部寄存器决定了图像传感器的工作状态,在图像传感器复位后,需要对这些内部寄存器进行配置,从而需要选用合理的外部控制器对其内部寄存器进行相关读写操作。本设计选用Altera公司生产的EP2C8T144C8作为MT9P401图像传感器的外部控制器,其有足够的逻辑容量、PLL和I/O数量。通过EP2C8T144C8对MT9P401的内部寄存器进行设置,配置方式采用串行模式,通信协议采用I2C总线传输协议,从而驱动出MT9P401的帧有效信号(Frame_Valid)和行有效信号(Line_Valid)。
除此之外,考虑到数字系统设计中的信号完整性(Signal Integrity,SI)、电源完整性(Power Integrity,PI)和电磁完整性(Electromagnetic Integrity,EMI),在PCB板布线过程中尽量避免过孔,采用差分对设计走线,增加PCB电源/地平面的层数,等等,使设计整体的性能达到最优状态。