摘 要: 為了解決高像素CMOS圖像采集傳感器MT9T001和一些沒有視頻采集控制器的DSP接口難的問題,采用了2KB容量的線緩沖FIFO+CPLD的方案,結(jié)合TI公司的6000系列DSP芯片TMS320C6711的EMIF接口,在DSP中設計了采集圖像的中斷程序,通過DSP將采集的圖像寫到SD卡中,最終證明了本采集方案的可行。
關(guān)鍵詞: MT9T001;TMS320C6711;EMIF
隨著CMOS技術(shù)的發(fā)展,原來CMOS圖像傳感器比CCD噪聲大的特點得到大大改善,并且以其成本低、功耗低、單一工作電壓、集成AD轉(zhuǎn)換器、數(shù)字形式數(shù)據(jù)輸出、圖像大小可編程控制等優(yōu)點,在攝像頭、微型數(shù)碼照相機、掃描儀、手機、可視電話、視頻會議等眾多領(lǐng)域應用。但要將CMOS的圖像采集到DSP芯片中的硬件設計成本較高,實現(xiàn)難度較大?,F(xiàn)階段,比較多的方案是采用帶視頻控制器的DSP芯片,如TI6000系列中帶有3個VPO接口的TMS320DM642和ADI公司帶PPI接口的Blackfin處理器。很多低價通用的DSP如TI55x系列和67x系列的DSP,與CMOS圖像傳感器都沒有直接接口,需要設計硬件電路。本文便是針對這種低價通用的DSP,提出的一種低成本的采集方案。
1 系統(tǒng)設計
由于大部分DSP都有與SDRAM、Flash、SRAM、FIFO等存儲器接口的EMIF接口,而沒有直接與CMOS/CCD固體圖像傳感器接口的控制器。所以采用CPLD作為圖像傳感器到FIFO以及FIFO到DSP的一個時序協(xié)調(diào)控制器。同時由于圖像傳感器的像素時鐘PIXCLK很高,最高可以達到48MHz,固體圖像傳感器的圖像數(shù)據(jù)量大,而FIFO的容量有限,一般都是幾K、幾十K字節(jié),對于高像素的圖像來說,F(xiàn)IFO只能充當線緩沖的作用,要作為幀緩沖,除非系統(tǒng)對速度要求很高,否則成本太高。由于采集到DSP中的圖像數(shù)據(jù)量很大,靠寫文件的方式來驗證采集的數(shù)據(jù)非常慢,所以本系統(tǒng)采用GPIO設計了一個SD卡的控制器,通過寫B(tài)MP文件,對采集的圖像進行驗證。系統(tǒng)設計框圖如圖1所示。
本系統(tǒng)設計的關(guān)鍵在于DSP采用何種方式去讀取FIFO中的圖像數(shù)據(jù)。很多方案中都是啟動EDMA讀取FIFO中的圖像數(shù)據(jù),當FIFO半滿時中斷DSP啟動EDMA讀取數(shù)據(jù),這樣對FIFO讀時鐘的頻率要求很高,需要讀時鐘為寫時鐘的2倍。但這種方案存在問題,即FIFO時鐘的選擇問題。EMIF口的在EDMA啟動的過程中都是一些不穩(wěn)定不規(guī)則的負脈沖信號,難以選擇作為FIFO的讀時鐘。這種采用EDMA的方案在TMS320DM642中可行,因為TMS320DM642能與FIFO無縫連接。
2 硬件設計
2.1 硬件電路圖
本系統(tǒng)硬件連接如圖2所示,所采用的圖像傳感器型號是MT9T001,它是一款主要針對數(shù)碼相機領(lǐng)域的CMOS圖像傳感器。與其他的CMOS圖像傳感器相比,MT9T001有以下明顯的特點:
(1)像素大小可以通過IIC接口改變相應寄存器進行硬件裁剪。
(2)高的幀速,輸出為QXGA分辨率(2 048×1 536)時,可以達到12f/s,而輸出為VGA分辨率(320×240)時,有93f/s。
(3)高性能的低照度成像性能。
(4)具有AF對焦窗口的圖像輸出格式,如圖3所示,(2 048×512)時,可以達到30f/s。
硬件設計主要體現(xiàn)在CPLD的邏輯上面。本系統(tǒng)采用ALTERA公司的CPLD芯片EPM240作為系統(tǒng)的邏輯控制器件,有80個I/O引腳和240個邏輯單元,資源足夠滿足各種方式的采集設計的需要。
DSP采用TI公司的TMS320C6711DSK板,TMS320C6711DSK有以下特點:
(1)板上留有2個80腳的接口,方便系統(tǒng)擴展;
(2)EMIF接口有兩種時鐘模式可以選擇,時鐘頻率分別為150MHz和100MHz;
(3)100MHz的16MB同步動態(tài)存儲器(SDRAM);
(4)直接提供1.8V和3.3V直流電源;
(5)JTAG仿真器,可支持并口或外接XDS510支持;
(6)1個并行接口,主機可通過該并口訪問開發(fā)板上的存儲器;
(7)150MHz主頻,可執(zhí)行900 MFLOPS浮點操作;
(8)128KB的可編程Flash存儲器;
(9)16位語音CODEC電路。
2.2 CPLD內(nèi)部的邏輯
TMS320C6711的EMIF口連接異步存儲器的時序如圖4所示。
從時序圖可以看出, 在的上升沿便讀取一次數(shù)據(jù),所以用這個引腳來作為讀取FIFO的時鐘最合適。如果用ECLKOUT讀取,需要在CPLD中設計計數(shù)器,很不方便,也不靈活。圖5為CPLD內(nèi)部邏輯圖。
圖5 邏輯連接圖
3 軟件設計
3.1 圖像傳感器的配置
SCLK和SDATA兩條線構(gòu)成了該串行總線,SCLK為串行時鐘,SDATA為串行數(shù)據(jù)。兩條線通過1.5kΩ的電阻上拉到3.3V。在實際應用中,通過上拉1.3kΩ電阻,用TMS320VC6711(外擴一片EPM240實現(xiàn))模擬總線時序,完全可以達到要求。其操作方法幾乎和IIC總線一樣,在速度和位數(shù)上稍微有一點差別,限于篇幅不再贅述。圖6為寫時序圖,圖7為讀時序圖。
芯片內(nèi)部集成了模擬處理電路(10bit A/D轉(zhuǎn)換器,放大器)、時鐘控制電路(反相,相位調(diào)節(jié))、圖像大小調(diào)節(jié)、原點定位、白平衡調(diào)節(jié)、曝光調(diào)節(jié)、幀速率調(diào)節(jié)等眾多功能電路,所有這些控制都通過一個串行總線口進行操作(SCLK和SDATA)。數(shù)據(jù)輸出則為10bit并行口,數(shù)據(jù)同步時鐘PIXCLK,行同步LINE_VALID和幀同步信號FRAME_VALID。
在本系統(tǒng)設計中,由于在綠色通道增益最低的情況下采集到的圖像還是偏綠,所以對紅色和藍色通道的增益調(diào)大了少許。
3.2 系統(tǒng)的主體程序
視頻采集系統(tǒng)軟件需要完成CMOS圖像傳感器圖像數(shù)據(jù)的采集、轉(zhuǎn)換和圖像數(shù)據(jù)的存儲功能。
為了便于后期圖像處理和分析工作,采用了DSP BIOS的程序設計架構(gòu)。BIOS上的程序總體設計流程圖如圖8所示。
中斷觸發(fā)源采用了EXT4,即外部中斷引腳中斷。而外部引腳連接的是行有效信號,這樣,每一行便觸發(fā)一次中斷,然后在中斷服務程序中通過讀取FIFO的數(shù)據(jù)到SDRAM中,完成一行數(shù)據(jù)的采集,通過行計數(shù)器來判斷一幀是否傳完。值得注意的是,本系統(tǒng)的軟件設計沒有采用兩級中斷來保證第一行讀到的圖像數(shù)據(jù)就是圖像本身的第一行,而是采用讀取行同步信號的上升沿來簡化程序。
由于在TI公司的CCS3.1開發(fā)環(huán)境下面寫文件方式的速度太慢,所以采用DSP寫SD卡的方法來保存圖像數(shù)據(jù),采集到更加清晰的圖像,如圖9。
MT9T001圖像傳感器的靈敏度很高,在很低的照度下都能清晰成像。要調(diào)整好鏡頭的光圈以避免出現(xiàn)局部過曝光的現(xiàn)象。
雖然采用DSP的EMIF接口外加FIFO行緩沖器的方案沒有那些有專門視頻接口的DSP(如DM642)的VP0-VP3端口方便,但本方案具有成本上的優(yōu)勢;同時在浮點運算特別多的圖像算法中,本方案的算法效率要比DM642高。本方案對很多沒有視頻控制器的DSP具有通用性;另外,本方案擴展了一片CPLD,可以對硬件控制進行一些靈活的處理,如可以通過對HD信號靈活計數(shù),控制閃光燈的點亮時間等。
實驗證明,本系統(tǒng)適合帶有EMIF接口的DSP系統(tǒng),這種圖像采集接口還能很好地移植到其他基于DSP的圖像采集與處理系統(tǒng)中。
參考文獻
[1] 段榮行,王平,張燁.基于TMS320C6711的中心定位實時圖像處理系統(tǒng).電子技術(shù)應用,2006(9).
[2] 王強,倪國強,李江濤,等.使用DSP/BIOS開發(fā)DM642圖像融合系統(tǒng)驅(qū)動程序.激光與紅外,2006(11).
[3] 陳東華,黃賢武,孫兵,等.基于TMS320C6711 DSK的實時視頻圖像處理系統(tǒng)設計.蘇州大學學報(自然科學版),2003(1).
[4] MICRON Inc.3-MEGAPIXEL DIGITAL IMAGE SENSOR MT9T001.http://www.micron.com.