基于FPGA的MT9P401图像传感器驱动设计研究
2018-01-08王秋鹏
王秋鹏
(西安铁路职业技术学院 陕西 西安710014)
基于FPGA的MT9P401图像传感器驱动设计研究
王秋鹏
(西安铁路职业技术学院 陕西 西安710014)
为提升道路抓拍的分辨率,本次研究对基于FPGA的MT9P401图像传感器的驱动急性软、硬件驱动设计研究,通过利用利用FPGA的大面阵CMOS图像传感器驱动设计来避免图像分辨率低问题。通过研究发现,以EP2C8T144C8(Altera公司)为硬件平台,在FPGA内部嵌入VerilogHDL编写的I2C总线模块进而对CMOS图像传感器的参数进行设置。通过合理设计,有效提升道路抓拍分辨率问题,为道路交通管理提供技术支持。
FPGA;MT9P401;图像传感器;驱动设计
随着生活水平的不断提升,汽车在给人们带来了众多的便捷的同时也带来了惨目忍睹的交通事故。调查显示[1],当前交通道路上的抓拍系统的图像传感器多为小面阵器件,一般在100万~200万像素,这句造成抓拍的图像分别率低、同时抓拍到的车辆数目不多等其他问题。因为这些问题的出现,使得人们关注的焦点聚集在大面阵的图像传感器上。本研究在设计中,主要分析了500万像素的CMOS图像传感器MT9P401的工作模式,以QuartusⅡ为开发工具,对驱动电路设计方案进行硬件描述的时候使用VerilogHDL语言,并对所设计的驱动时序进行仿真和验证。
1 MT9P401图像传感器概述
MT9P401出产于Micron公司是的一款具有500万像素的CMOS图像传感器。像元尺寸为5.7 mm×4.28mm,分辨率为2 592 H×1944V,动态范围为70.1 dB,相应的采样速率为14f/s,最大传输速率为96 Mb/s[2]。
MT9P401图像传感器共有256个内部寄存器,MT9P401的工作状态由内部寄存器的设置决定。I2C总线肩负着MT9P401与外部控制器的通信任务,每一帧图像数据都是在I2C总线协议下输出。默认情况下[3],帧有效信号(Frame_Valid)的周期为70 ms,行有效 信号(Line_Valid)的周期为35 μs。在Frame_Valid和Line_Valid均为高电平时,输出像素数据。当Frame_Valid为低电平时,出现垂直消隐。当Line_Valid为低电平时,出现水平消隐。像素数据读出时序如图1所示。
2 电路设计
2.1 硬件设置
1)电源模块
图1 像素数据读出时序图
按照MT9P401数据手册上的要求CMOS图像传感器需要 5种电源[4]:+2.8 V的锁相环电源VDDPLL、+2.8 V 的成像核心电源 VDDPIX、+2.8 V的IO口驱动电源VDDIO、+1.8V的数字电源VDD、+2.8 V的模拟电源VAA。按照EP2C8T144C8数据手册要求FPGA部分需要提供3种电源:1.2 V的模拟电源 VAA、+1.2 V 的数字电源 VDD、+3.3 V 的 IO口驱动电源VDDIO。
在部分电源的选择上,选择TI公司的单端输出LDO(TPS77001、TPS79003) 作为供电模块,因为CMOS图像传感器的供电电源需要有较高的纹波抑制和噪声,同时输出压降要低,通过负反馈调整输出电流保持输出电压不变这是LDO的工作原理。LDO是一个降压型的DC/DC转换器,所以 Vin>Vout,其工作效率可表达为
η=POUT/PIN=IOUT·VOUT/IIN·VIN=IOUT·VOUT/(IOUT+IGND)·VIN。LDO的工作效率保持60%~75%之间,静态电流产生的较小[5-6]。
2)时钟模块
整个电路中最重要的、最特殊的信号就是时钟模块,时钟模块是其他器件的基本保障,所以,对系统时钟信号的时延差要求非常小,不然会造成时序混乱[7-8]。所以,在电路中保持保持时钟信号的稳定性显得尤为重要。本研究中,FPGA的控制时钟由外部50 MHz的有源晶振提供。为了避免振荡器干扰电源,在有源晶振旁加上104去耦电容。CMOS图像传感器的外部输入时钟EXTCLK需要100 MHz,其由FPGA中的PLL倍频得到[9-10]。
3)CMOS图像传感器与FPGA通信模块
MT9P401图像传感器的工作状态有其内部的存器决定,图像传感器复位后,对其寄存器进行配置,在进行外部控制器的选择来完成读写任务[11]。在本研究中选用EP2C8T144C8(Altera公司生产)作为外部控制器,优势表现在具有足够的逻辑容量、PLL和I/O数量。通过外部控制器实现对内部寄存器的设置,采用串行模式进行配置、采用I2C总线传输协议进行通信协议,这样来驱动出MT9P401的Frame_Valid和Line_Valid。
2.2 软件设置
根据具体的应用环境,选择合适的快门模式进行采样。两个内部寄存器(11)H、(30)H通过I2C总线设置,其余的保持默认值得状态。整个程序编制采用VerilogHDL语言自顶向下的设计方法编写。根据MT9P401的驱动时序分析划分功能模块,将各位输出信息对应各功能模块,并对各功能进行设计输入和仿真。程序中主要包括了时钟模式和I2C总线控制模块。其中时钟模块主要提供I2C总线的串行时钟SCL和CMOS图像传感器的外部输入时钟EXTCLK。I2C总线协议有3中速度[12-14]:正常速度模式 100 kb/s、快速模式 400 kb/s、高速模式 3.5 Mb/s。应用速度1读出的时序图模式为500 kb/s,FPGA的外部输入时钟为50 MHz。对于CMOS图像传感器的外部输入时钟EXTCLK需要较高的稳定性,利用Altera的IP工具,在QuartusⅡ软件中通过MegaWizard设计一个PLL倍频时钟,使其输出频率为100 MHz,满足CMOS图像传感器的外部输入时钟要求,这样才能产生合理的时钟信号。
软件程序设置的核心是I2C总线控制模块[15],其主要作用是完成控制I2C总线上从设备的起始、读写、停止等状态的转换。初始化内部寄存器EP2C8T144C8,此时如果调高写使能信号(wr_enable),那么 EP2C8T144C8 向 MT9P401 发送从器件写地址(BA)H,收到响应位后发送需要进行写操作的MT9P401的内部寄存器地址,收到响应位后继续发送需要写入寄存器的数据。若wr_enable为低,则开始对MT9P401的内部寄存器进行读操作。该程序的流程图如图2所示。
3 电路仿真与实现
在本研究中采用QUartus(Altera公司),利用QuartusⅡ8.0建立系统工程文件,根据,在要求具体的设置文件的参数和类型,在过程文件下简历各功能的VerilogHDL文件,在进行整体的仿真、编译、综合,然后安装到EP2C8T144C8中进行调试。
在进行I2C总线控制仿真时序的时候要考虑其共包含两个输入端和3个输出端。其中EP2C8T144C8的控制时钟CLK为50 MHz,MT9P401的输入时钟EXTCLK为100 MHz,复位信号RST为高电平,I2C的串行时钟SCL为500 kHz。同时通过I2C的串行数据线SDA依次对 MT9P401内部的(11)H和(30)H两个寄存器进行配置,配置过程遵循I2C总线传输协议。图3为总线控制时序仿真图。
安装完毕EP2C8T144C8后,用示波器探头测量MT9P401的Frame_Valid和Line_Valid输出引脚,查看输出波形。可以看到有连续的Frame_Validd和Line_Valid输出,而且Frame_ValidLine_Valid的周期约为70ms,Line_Valid 的周期约为35 μs,符合MT9P401的驱动时序要求,说明FPGA完成了对MT9P401的驱动设置。实际测量的数据结果显示I2C总线控制时序设计正确,MT9P401图像传感器在I2C总线控制作用下,工作状态正常,能够输出有效的数据信号。与此同时,综合复杂可编程逻辑器件可使设计的驱动电路具有较多的优势,主要包括:功耗低、集成度高、接口便捷等,为大面阵CMOS图像传感器的抓拍相机系统的研究提供了可能性。由于FPGA的可编程性和VerilogHDL编程语言的可移植性,使设计更具有应用价值。基于另外FPGA的可编程性和VerilogHDL编程语言的可移植性,使得该设计具有加广范的应用价值。
图2 系统流程图
图3 I2C总线控制时序图
4 结 论
本次研究首先对MT9P401图像传感器的特征与功能进行了浅要分析,并在此基础上,对基于FPG的MT9P401图像传感器驱动设计进行研究,从硬件结构与软件功能方面入手,充分解决了传感器图像抓怕质量问题。实验还通过电路仿真与实现使设计研究得到佐证,使道路图像抓拍中图像传感器应用效果更加突出。
[1]张帆,冯桂兰,田维坚.基于FPGA的MT9P401图像传感器驱动设计[J].电子技术应用,2011,37(6):62-64.
[2]李守政,汤斌,欧红师,等.一种基于FPGA的CCD图像传感器驱动系统设计[J].国外电子测量技术,2012,31(1):74-78.
[3]朱向冰,黄哲,李康.基于FPGA的自整角机信号处理电路研制[J].黄山学院学报,2013,15(5):1-4.
[4]应小军,李瑜煜.基于FPGA的CMOS图像传感器驱动电路设计[J].广东工业大学学报,2015,32(1):72-97.
[5]丁昊杰,刘敬彪,盛庆华.基于CMOS图像传感器的视频采集系统设计[J].现代电子技术,2012,35(1):178-181.
[6]彭海,高俊雄,王耘波,等.基于FPGA的虹膜图像采集系统设计[J].仪表技术与传感器,2016(1):43-46.
[7]张晓龙.基于FPGA的图像采集显示系统研究与设计[J].工业控制计算机,2015(11):33-34,36.
[8]段志坚,金湘亮.基于FPGA的新型TOF图像传感器驱动设计[J].电子技术应用,2014,40(9):27-29.
[9]陈文艺,雷武亮,杨辉,等.基于NiosⅡ的线阵图像传感器驱动设计[J].西安邮电大学学报,2016,21(1):84-88.
[10]杨磊,任龙,刘庆,等.基于FPGA的大视场图像实时拼接技术的研究与实现[J].红外与激光工程,2015,44(6):1929-1935.
[11]张占远,赵国婷,李定翰,等.基于FPGA的CMOS采集控制模块设计[J].信息技术,2015(3):133-136.
[12]叶学松,陆玲,蔡秀军,等.基于FPGA和CMOS传感器的三维高清实时视频系统[J].浙江大学学报:工学版,2015,49(1):47-53.
[13]唐艳秋,张星祥,李新娥,等.基于FPGA的面阵CCD成像系统设计[J].现代电子技术,2013,36(2):123-125.
[14]方彩婷,叶盛,汪雪峰,等.基于FPGA的数字高清CMOS遥感成像技术[J].电子技术应用,2015,41(4):43-45.
[15]汤伟,王先通,王孟效.基于FPGA和DSP的车牌识别系统的研究[J].计算机测量与控制,2016,24(2):297-299.
Driver design of FPGA-based image sensor MT9P401
WANG Qiu-peng
(Xi'an Railway Vocational and Technical College,Xi'an 710014,China)
To enhance road capture resolution,this study MT9P401 image sensor FPGA-based acute soft drive,hard drive design studies,through the use of FPGA large area array CMOS image sensor drive designed to avoid image resolution low problem.Through the study found,with EP2C8T144C8(Altera company) as the hardware platform,embedded within the FPGA VerilogHDL written I2C bus module and then to the CMOS image sensor parameters can be set.Through rational design,effectively enhance road capture resolution problems and provide technical support for road traffic management.
FPGA; MT9P401; an image sensor; driven design
TN99
A
1674-6236(2017)16-0187-03
2016-07-06稿件编号:201607051
王秋鹏(1980—),男,河南济源人,硕士,副教授。研究方向:铁道车辆。