基于FPGA的MT9P401圖像傳感器驅(qū)動(dòng)設(shè)計(jì)
摘 要: 針對(duì)目前道路抓拍相機(jī)分辨率低的現(xiàn)狀,提出一種基于FPGA的大面陣CMOS圖像傳感器驅(qū)動(dòng)設(shè)計(jì)。設(shè)計(jì)采用Micron公司的CMOS圖像傳感器MT9P401,以Altera公司生產(chǎn)的EP2C8T144C8為硬件平臺(tái),將Verilog HDL編寫(xiě)的I2C總線模塊嵌入FPGA內(nèi)部實(shí)現(xiàn)對(duì)CMOS圖像傳感器參數(shù)的設(shè)置。軟件仿真和實(shí)驗(yàn)結(jié)果表明驅(qū)動(dòng)設(shè)計(jì)合理,CMOS圖像傳感器在驅(qū)動(dòng)時(shí)序的作用下,進(jìn)入正常工作狀態(tài)。
關(guān)鍵詞: FPGA;MT9P401;CMOS圖像傳感器;I2C總線
汽車在給人們生活帶來(lái)便利的同時(shí)也帶來(lái)了交通事故。其中超速行駛是造成交通事故的重要隱患之一。據(jù)研究表明,目前針對(duì)車輛超速行駛情況的道路抓拍系統(tǒng)中所使用的圖像傳感器大多為小面陣器件,普遍為100萬(wàn)~200萬(wàn)像素,從而導(dǎo)致抓拍圖像的像素比較低、能夠同時(shí)抓拍的車道數(shù)較少等等問(wèn)題。面對(duì)這一系列問(wèn)題,大面陣的圖像傳感器便逐漸成了人們關(guān)注的熱點(diǎn)。在設(shè)計(jì)過(guò)程中,分析了具有500萬(wàn)像素的CMOS圖像傳感器MT9P401的工作模式,選用QuartusⅡ做為開(kāi)發(fā)工具,使用Verilog HDL語(yǔ)言對(duì)驅(qū)動(dòng)電路設(shè)計(jì)方案進(jìn)行了硬件描述,并對(duì)所設(shè)計(jì)的驅(qū)動(dòng)時(shí)序進(jìn)行仿真和驗(yàn)證。
1 MT9P401圖像傳感器介紹
1.1 主要特點(diǎn)
MT9P401是Micron公司的一款具有500萬(wàn)像素的CMOS圖像傳感器。該芯片的主要特點(diǎn)有:圖像分辨率為2 592 H×1 944 V,像元尺寸為5.7 mm×4.28 mm,最大傳輸速率為96 Mb/s,相應(yīng)的采樣速率為14 f/s,動(dòng)態(tài)范圍為70.1 dB。
MT9P401圖像傳感器將像素矩陣、串行接口、陣列控制器、A/D轉(zhuǎn)換電路等集成在一起。當(dāng)MT9P401的像素矩陣受到光照時(shí),由于光電效應(yīng)使光信號(hào)轉(zhuǎn)變?yōu)殡娦盘?hào),由此產(chǎn)生的模擬信號(hào)傳送至內(nèi)部A/D轉(zhuǎn)換器,輸出相應(yīng)的數(shù)字信號(hào)??刂葡袼鼐仃嚨男盘?hào)由矩陣控制器產(chǎn)生,矩陣控制器通過(guò)串行接口操作。
1.2 電子曝光方式
MT9P401圖像傳感器有兩種電子曝光方式,分別對(duì)應(yīng)兩種不同的快門(mén)模式。
(1)電子卷簾快門(mén)(Electronic Rolling Shutter):對(duì)任一像素,在曝光開(kāi)始時(shí)將其清零,等待曝光時(shí)間過(guò)后,將信號(hào)值讀出。數(shù)據(jù)的讀出是串行的,所以清零、曝光、讀出也只能逐行順序進(jìn)行,通常是從上至下,和機(jī)械的焦平面快門(mén)非常像。此曝光方式的特點(diǎn)是每個(gè)像素曝光時(shí)長(zhǎng)相同,但曝光時(shí)間點(diǎn)不同。
(2)全局快門(mén)(Global Shutter/Snapshot Shutter):每個(gè)像素點(diǎn)增加了采樣保持單元,在指定時(shí)間內(nèi)對(duì)數(shù)據(jù)進(jìn)行采樣,然后順序讀出,這樣雖然后讀出的像素仍然進(jìn)行曝光,但存儲(chǔ)在采樣保持單元中的數(shù)據(jù)卻并未改變。因圖像的積分時(shí)間相等,所以每個(gè)像素點(diǎn)在同一瞬間曝光。此曝光方式的特點(diǎn)是能同時(shí)復(fù)位所有像素,但曝光時(shí)長(zhǎng)不同,可用機(jī)械快門(mén)實(shí)現(xiàn)同時(shí)結(jié)束曝光。
1.3 像素?cái)?shù)據(jù)讀出時(shí)序分析
MT9P401圖像傳感器共有256個(gè)內(nèi)部寄存器,內(nèi)部寄存器的設(shè)置決定了MT9P401的工作狀態(tài)。MT9P401與外部控制器的通信依靠I2C總線[1],在I2C總線協(xié)議下輸出每一幀圖像數(shù)據(jù)。默認(rèn)情況下,MT9P401的像素時(shí)鐘與外部輸入時(shí)鐘同步,MT9P401一幀圖像的像素包括1 944行和2 592列,每經(jīng)過(guò)一個(gè)像素時(shí)鐘周期,都有一個(gè)12 bit的像素?cái)?shù)據(jù)通過(guò)數(shù)據(jù)輸出引腳輸出,幀有效信號(hào)(Frame_Valid)的周期為70 ms,行有效信號(hào)(Line_Valid)的周期為35 μs。當(dāng)幀有效信號(hào)(Frame_Valid)和行有效信號(hào)(Line_Valid)均為高電平時(shí),輸出像素?cái)?shù)據(jù)。當(dāng)幀有效信號(hào)(Frame_Valid)為低電平時(shí),出現(xiàn)垂直消隱。當(dāng)行有效信號(hào)(Line_Valid)為低電平時(shí),出現(xiàn)水平消隱。像素?cái)?shù)據(jù)讀出時(shí)序如圖1所示。