基于影像傳感器MT9M111的視頻采集系統
cmos是圖像采集系統普遍存在圖像質量問題,如果沒有對圖像進行專門的處理,則圖像質量難以保障。
近些年來,隨著soc技術的快速發展,在圖像采集和處理領域,出現了soc影像傳感器,它集成cmos傳感器和圖形處理器功能,可以得到令人非常滿意的圖像質量。本文設計的視頻采集系統采用了soc成像芯片mt9m111和usb2.0接口芯片cy7c68013。
系統結構
本系統的原理框圖如圖1所示,當圖像傳感器開始工作后,先將采集到的數據通過fpga控制邏輯存儲到sram1中,一幀圖像的采集/存儲過程結束后sram1進入寫結束狀態,此時切換sram,sram2繼續存儲采集到的數據,同時,sram1處于可讀狀態,由fpga里的控制邏輯控制,將sram1中的數據傳輸到usb芯片,然后傳輸到主機,本系統采用雙sram結構和乒乓機制,兩片存儲器交替工作,使圖象的采集和傳輸并行進行,雙幀存結構不僅提高了系統的速度,而且,由于在fpga里實現各種圖像處理的算法大都需要比較大的存儲空間,所以兩個大容量sram在實現算法時可以充當外部緩存。

mt9m111
本系統采用美光公司推出的集成cmos傳感器和圖形處理器的soc產品mt9m111。mt9m111是低功耗、低成本漸進掃描cmos圖像傳感器;130萬像素分辨率(1280h×1024v);1/3英寸光學格式;全分辨率15fps的功耗為170mw,vga分辨率30fps的功耗為90mw,mt9m111采用低漏電dram工藝,配備了美光的digitalclraity專利技術,即使在最差的光照條件下也能提供清晰明亮的彩色圖像。mt9m111具有該低的暗電流,并降低了色度/亮度干擾和瞬間噪聲。mt9m111的嵌入可編程圖像流處理器提供的功能包括色彩恢復和修補、自動曝光、白平衡、鏡頭陰影修正、增加清晰度、可編程灰度修正、黑暗電平失調修正、閃爍避免、連續調整濾波尺寸、平滑的數字變焦、快速自動曝光模式和不工作時缺陷修正等。而且,還配備了兩線串行接口,usb芯片可以通這兩線串口對其進行配置。
is61wv20488
與圖像處理有關的sram參數主要是sram的讀寫速度和容量。在容量方面,本系統采集圖像的最大分辨率為1280×1024,數據寬度為8位,2m×8bit的sram可以滿足存放一幀圖像數據的要求,sram的讀寫速度一般為12ns、15ns、20ns或者更慢,由于sram的讀寫速度直接影響整個圖像處理系統的時鐘,所以scam的讀寫速度越快越好。本系統用issi公司的is61wv20488,芯片容量為2m×8bit。
cy7c68013
圖像數據傳輸部分采用cypress公司推出的專門用于usb2.0的接口芯片cy7c68013。該芯片包括帶815kb片上ram的增強性8051處理器(與標準8051系列兼容,速度提高3-5倍),4kb fifo存儲器和通用可編程接口i2c總線、串行接口引擎(sie)以及usb2.0收發器。
系統軟/硬件設計
系統軟/硬件設計由3部分構成:圖像采集/存儲模塊、圖像傳輸模塊和usb驅動/主機應用程序模塊。
圖像采集/存儲模塊
該模塊主要由fpga的控制邏輯將成像芯片mt9m111采集到的圖像數據實時地傳送到sram中,在系統中采用雙幀存結構,每個由一片is61wv20488 sram構成,能夠存放一幀1280×1024分辨率的圖像數據。由于采用了乒乓機制,兩片存儲器之間交替工作,從而使圖像的采集和傳輸并行進行,為確保在任何時刻只有一片sram可以讀取采集到的圖像數據,設置了一個讀互斥鎖,同樣,只有一個sram可接收采集到的圖像數據,因此,又設置了一個寫互斥鎖,需要注意的是,由于圖像傳感器的圖像數據輸出速度要比usb2.0傳輸速度慢,所以,當讀完sram2的數據以后,需要等待另一片sram1完成寫圖像數據后,才可以向sram2寫入下一幀圖像數據,而sram1無需等待便可以直接進行讀取圖像數據的工作,如此循環往復,實現了并行工作,有效地提高了系統的工作效率。
圖2為系統控制電路的原理框圖,fpga內部各個模塊均采用verilog hdl編寫。

圖像傳輸模塊
采集完一幀圖像后,要經過usb時鐘信號控制模塊將外部ram中的圖像數據讀入到主機,在本圖像采集系統中,使用cy7c68013的slave
fifo異步工作方式,把fifo配置成和ep2端口相連、每個數據包1024字節,4緩沖的方式,塊傳輸模式,這樣的設置可以滿足系統要求,同時也有效地利用了內部的4kb
fifo來傳輸采集到的圖像數據,系統控制使用了falgb信號引腳,用來報告“fifo滿”的狀態,默認為低電平有效。本文采用的是自動輸入方式,當fifo中的數據滿一定量時,ez-usb-fx2就直接通過fifo把數據傳送到usb收發器,而不經過cpu的干預,這樣就提高了傳輸速度,本系統當fifo滿1kb時開始自動發送。
usb驅動和主機應用程序模塊
usb設備驅動程序的開發是usb系統開發的難點,尤其是在本系統傳輸數據量大且速度要求高的情況下,就要編寫出高效的usb設備驅動程序,才能保證高分辨率圖像的實時傳輸,本系統采用ddk來開發wdm驅動程序。實際上,usb客戶驅動程序中包含大量的例程,對開發驅動程序有很大的幫助。
主機應用程序的主要功能是通過usb接口讀取圖像數據并實時顯示動態圖像,為提高主機應用程序的效率,可以使用雙線程。
結語
本系統采用具有130萬像素的影像傳感器mt9m111,保證了圖像質量,采用usb2.0接口芯片cy7c68013保證了圖像的實時傳輸,且設計靈活,為實現各種圖像處理算法提供了軟/硬件支持。
評論