陳振宇,李忠新
(南京理工大學(xué) 機(jī)械工程學(xué)院,江蘇 南京210094)
戰(zhàn)場(chǎng)圖像偵察彈作為一種可用于戰(zhàn)場(chǎng)偵察、評(píng)估的新式偵察裝備,以其實(shí)時(shí)性好、突防能力強(qiáng)等優(yōu)點(diǎn),受到各國(guó)軍方的關(guān)注[1];隨著圖像處理技術(shù)和處理器運(yùn)算能力的快速提高,圖像制導(dǎo)技術(shù)在精確制導(dǎo)武器中的應(yīng)用也得到迅速發(fā)展[2,3]。目前,圖像制導(dǎo)彈、偵察彈多為導(dǎo)彈、火箭彈及槍榴彈等大口徑彈,而彈載圖像采集系統(tǒng)是基于目標(biāo)圖像信息采集的圖像偵察彈、圖像制導(dǎo)彈等的重要組成部分。探究大口徑槍彈等微小型彈應(yīng)用于偵察和采用圖像制導(dǎo)技術(shù)的可行性的重要步驟是其彈載圖像采集系統(tǒng)的研究。
本文以圖像采集系統(tǒng)在大口徑槍彈上的實(shí)現(xiàn)為出發(fā)點(diǎn),設(shè)計(jì)了一種基于DSP 和CMOS 圖像傳感器和圖像緩沖芯片的圖像采集系統(tǒng),進(jìn)行了系統(tǒng)的硬件接口電路和軟件程序設(shè)計(jì),對(duì)系統(tǒng)采集的圖像數(shù)據(jù)進(jìn)行的顯示驗(yàn)證,并對(duì)系統(tǒng)實(shí)時(shí)性進(jìn)行了分析。
如圖1 所示,系統(tǒng)上電后,DSP 從片外程序存儲(chǔ)器AT25F1024 中加載程序后,先通過(guò)GPIO 口模擬SCCB協(xié)議設(shè)定圖像傳感器的寄存器參數(shù),使得圖像傳感器輸出特定格式的圖像數(shù)據(jù);圖像傳感器輸出的數(shù)字圖像數(shù)據(jù)Y0—Y7先存儲(chǔ)在圖像緩沖芯片AL422B 中,待DSP 通過(guò)圖像傳感器輸出的幀同步信號(hào)VSYNC 判斷一幀圖像采集結(jié)束后,通過(guò)外部存儲(chǔ)器接口EMIF 將圖像數(shù)據(jù)從AL422B 讀取到片外數(shù)據(jù)存儲(chǔ)器SRAM 中,至此完成一幀圖像數(shù)據(jù)的采集。
圖1 系統(tǒng)結(jié)構(gòu)框圖Fig 1 Structure block diagram of system
成像模塊由鏡頭、圖像傳感器構(gòu)成??紤]封裝尺寸和輸出幀頻,在系統(tǒng)中選擇CMOS 彩色圖像傳感器OV7675作為成像器件[4]。OV7675 的封裝尺寸為3.785 mm×4.235 mm,可輸出YUV4∶2∶2,RGB565,Raw RGB 等格式的圖像數(shù)據(jù),輸出QQVGA 格式時(shí)最高幀頻為240 fps,通過(guò)SCCB總線(xiàn)協(xié)議在片上寄存器中進(jìn)行設(shè)定。在設(shè)計(jì)中選擇YUV4∶2∶2 格式數(shù)據(jù)輸出,并通過(guò)硬件對(duì)PCLK 進(jìn)行二分頻實(shí)現(xiàn)亮度Y 分量與U,V 分量的分離,以獲取黑白圖像信息,作為后續(xù)圖像處理的原始數(shù)據(jù)。
本文選擇TI 公司的C55X 系列TMS320VC5509A 型DSP 作為系統(tǒng)核心處理器。其最高主頻為200 MHz,179 引腳BGA 封裝的尺寸為12 mm×12 mm;片上外設(shè)16 位EMIF接口,可用于與圖像緩沖芯片的硬件連接;通用輸入輸出接口GPIO 可用于系統(tǒng)的時(shí)序控制;8MBX16 位的片外尋址空間可用于系統(tǒng)數(shù)據(jù)存儲(chǔ)空間與程序存儲(chǔ)空間的擴(kuò)展;C55X系列自帶圖像、視頻處理庫(kù),利用后續(xù)圖像處理算法的實(shí)現(xiàn)。
在系統(tǒng)中,DSP 外圍電路除時(shí)鐘電路、電源電路、復(fù)位等DSP 運(yùn)行必須的模塊外,根據(jù)系統(tǒng)需要擴(kuò)展了片外數(shù)據(jù)存儲(chǔ)器與片外程序存儲(chǔ)器。數(shù)據(jù)存儲(chǔ)器選用存取速度較快的SRAM 存儲(chǔ)器IS61LV51216,物理存儲(chǔ)空間為512×103×16 位,BGA 封裝尺寸為9 mm×11 mm。系統(tǒng)要實(shí)現(xiàn)脫機(jī)運(yùn)行必須要解決上電后程序加載的問(wèn)題,所選用的DSP有多種程序加載方式,考慮盡可能減小程序存儲(chǔ)芯片所占用的PCB 空間,簡(jiǎn)化接口電路,選擇串行外設(shè)接口(SPI)加載,取EEPROM 器件AT25F1024 作為片外程序存儲(chǔ)器。
設(shè)計(jì)中采用可同時(shí)讀寫(xiě)的異步FIFO 芯片AL422B 實(shí)現(xiàn)圖像傳感器與DSP 的時(shí)序匹配。AL422B 讀寫(xiě)時(shí)序的控制是DSP 正確采集一幀完整圖像數(shù)據(jù)的關(guān)鍵。如下文實(shí)時(shí)性分析結(jié)果所示,DSP 從AL422B 中讀取一幀圖像數(shù)據(jù)的時(shí)間大于一幀圖像數(shù)據(jù)寫(xiě)入AL422B 所用的時(shí)間;又由于AL422B 可同時(shí)進(jìn)行讀寫(xiě)操作,如果在DSP 讀AL422B的同時(shí),下一幀圖像寫(xiě)入AL22B,則有可能出現(xiàn)上一幀圖像數(shù)據(jù)的一部分被下一幀圖像數(shù)據(jù)覆蓋,即讀取結(jié)果為多幀圖像數(shù)據(jù)的數(shù)據(jù)段的拼接,因此,在設(shè)計(jì)中DSP 讀取數(shù)據(jù)時(shí)禁止AL422B 的寫(xiě)入。圖像傳感器輸出的時(shí)序信號(hào)有幀同步信號(hào)VSYNC、行同步信號(hào)HREF 和像素時(shí)鐘信號(hào)PLCK[5],其時(shí)序如圖2 所示。DSP 通過(guò)GPIO 引腳輸出控制信號(hào)與HREF 經(jīng)邏輯運(yùn)算使能圖像緩沖芯片AL422B 的寫(xiě)入使能引腳/WE,實(shí)現(xiàn)對(duì)AL422B 的寫(xiě)入控制。通過(guò)檢測(cè)由GPIO 引腳輸入的VSYNC 下降沿來(lái)判斷何時(shí)使能和禁止AL422B 的寫(xiě)入。
圖2 圖像傳感器時(shí)序圖Fig 2 Sequence chart of image sensor
在讀取操作中,其關(guān)鍵在于讀時(shí)鐘信號(hào)RCK 與讀操作的配合。AL422B 的讀取控制時(shí)序?yàn)樵谧x使能信號(hào)/RE 為低電平時(shí),在讀時(shí)鐘信號(hào)RCK 的上升沿,數(shù)據(jù)輸出到輸出數(shù)據(jù)寄存器中,讀指針自動(dòng)加1,當(dāng)輸出使能信號(hào)/OE 為低電平時(shí),允許輸出數(shù)據(jù)寄存器中的數(shù)據(jù)被讀取。圖3 為DSP 的外部存儲(chǔ)器接口讀取片外異步存儲(chǔ)器的時(shí)序圖。由于在系統(tǒng)中未利用EMIF 接口進(jìn)行其他片外存儲(chǔ)空間的讀取,僅在讀取AL422B 時(shí),讀使能信號(hào)/ARE 出現(xiàn)一次下降沿和一次上升沿,在系統(tǒng)中用讀使能信號(hào)/ARE 為圖像緩沖芯片提供讀時(shí)鐘信號(hào),讀使能信號(hào)/RE 和輸出使能信號(hào)/OE 均置低,使得數(shù)據(jù)在/ARE 的上升沿輸出到輸出數(shù)據(jù)寄存器,且讀指針加1。讀寫(xiě)時(shí)序控制電路接口如圖4 所示。
圖3 EMIF 接口讀取片外數(shù)據(jù)存儲(chǔ)器時(shí)序圖Fig 3 Sequence chart of reading asynchronous data of external memory interface of EMIF
圖4 讀寫(xiě)時(shí)序控制電路接口示意圖Fig 4 Interface diagram of reading and writing timing control circuit
設(shè)計(jì)圖像采集程序時(shí),首先設(shè)定DSP 的工作參數(shù),包括時(shí)鐘主頻設(shè)定、外部存儲(chǔ)器(EMIF)類(lèi)型及參數(shù)設(shè)定、通用輸入輸出接口(GPIO)設(shè)置;而后進(jìn)行圖像傳感器參數(shù)設(shè)定;之后控制一幀圖像數(shù)據(jù)寫(xiě)入AL422B 中,并通過(guò)DSP 的外部存儲(chǔ)器擴(kuò)展接口來(lái)實(shí)現(xiàn)圖像緩沖芯片到SRAM 的數(shù)據(jù)傳遞,完成一幀圖像數(shù)據(jù)的采集。圖像數(shù)據(jù)采集流程如圖5所示。
圖5 圖像數(shù)據(jù)采集程序流程圖Fig 5 Program flow chart of image data acquisition
SCCB 協(xié)議在DSP 上的實(shí)現(xiàn)是完成圖像傳感器初始化,并保證其正常工作的前提[6]。在設(shè)計(jì)中,根據(jù)SCCB 總線(xiàn)的時(shí)序原理,通過(guò)通用輸入輸出接口GPIO 實(shí)現(xiàn)SCCB 協(xié)議的模擬。GPIO7 模擬時(shí)鐘線(xiàn)SIO—C,設(shè)置為輸出;GPIO6模擬數(shù)據(jù)線(xiàn)SIO—D,向圖像傳感器中寫(xiě)入數(shù)據(jù),設(shè)置為輸出。程序中定義子函數(shù)startSCCB,stopSCCB,SCCBwrite(),調(diào)用上述三個(gè)子程序構(gòu)成設(shè)定一個(gè)寄存器的子函數(shù)setSCCB(reg,data)(如圖6)來(lái)實(shí)現(xiàn)圖像傳感器寄存器參數(shù)的設(shè)定,其中,reg 為寄存器地址,data 為要寫(xiě)入該寄存器的數(shù)據(jù)。設(shè)計(jì)中設(shè)定圖像傳感器輸出YUV4:2:2 格式數(shù)據(jù),圖像大小為240X320 QVGA 格式。圖7 所示為SCCB write()函數(shù)流程圖。
圖6 setSCCB(reg,data)函數(shù)流程圖Fig 6 Flow chart of function setSCCB(reg,data)
TMS320VC5509A 通過(guò)外部數(shù)據(jù)存儲(chǔ)器接口EMIF 可尋址8M 的片外數(shù)據(jù)存儲(chǔ)空間,分為CE0~CE3 四個(gè)片選空間。在設(shè)計(jì)中將AL422B 擴(kuò)展在CE3 空間上,將片外數(shù)據(jù)存儲(chǔ)器SRAM 擴(kuò)展在CE0 空間上,讀取過(guò)程即是把圖像緩沖芯片AL422B 作為片外異步存儲(chǔ)器訪問(wèn),將其中的圖像數(shù)據(jù)傳遞到SRAM 中。部分?jǐn)?shù)據(jù)讀取程序如下:
souraddr=(int*)0x600000;
圖7 SCCBwrite()函數(shù)流程圖Fig 7 Flow chart of function SCCBwrite()
為驗(yàn)證設(shè)計(jì)方案的可行性,系統(tǒng)制板調(diào)試完成后,運(yùn)行程序進(jìn)行圖像數(shù)據(jù)采集,利用DSP 編譯環(huán)境CCS3.3 自帶的圖形顯示工具View-Graph-Image 對(duì)采集到的圖像數(shù)據(jù)進(jìn)行顯示驗(yàn)證。圖8、圖9 分別為系統(tǒng)實(shí)物圖和采集到的圖像實(shí)例。
圖8 系統(tǒng)實(shí)物圖Fig 8 Physical figure of system
圖9 采集到的圖像實(shí)例Fig 9 Example of acquired image
實(shí)時(shí)性是圖像采集系統(tǒng)的重要特性,也是彈載圖像采集處理系統(tǒng)的關(guān)鍵。在系統(tǒng)調(diào)試完成后,對(duì)圖像采集程序的實(shí)時(shí)性進(jìn)行分析。在系統(tǒng)完成初始化、圖像傳感器參數(shù)設(shè)定后,圖像采集速度受圖像傳感器輸出一幀圖像到AL422B 的速度與DSP 從AL422B 讀取一幀圖像到SRAM中的速度較低者的限制。易知圖像傳感器的輸出數(shù)據(jù)可實(shí)時(shí)寫(xiě)入AL422B 中,所設(shè)置圖像傳感器的輸出幀頻為60 fps,經(jīng)測(cè)試寫(xiě)入AL422B 所用的時(shí)間為16.67 ms。利用CCS 中的代碼分析工具Profile 對(duì)上述圖像數(shù)據(jù)讀取程序進(jìn)行分析【7】,分析5 次得到的結(jié)果如表1 所示。由表可知,上述圖像讀取程序的240 個(gè)循環(huán)所用的時(shí)鐘周期為14588316 個(gè),設(shè)定系統(tǒng)工作在最高主頻200 MHz,時(shí)鐘周期為5 ns,可得一幀圖像的讀取時(shí)間為72.942 ms。綜上可得,一幀圖像數(shù)據(jù)從寫(xiě)入到讀取到 SRAM 中所需的最大時(shí)間為106.282 ms,系統(tǒng)幀頻最小可達(dá)到9 fps;且根據(jù)上述分析不難得知,當(dāng)設(shè)定輸出圖像數(shù)據(jù)為QQVGA 格式,幀頻240 fps時(shí),系統(tǒng)幀頻最小可達(dá)到36 fps。
表1 Profile 分析結(jié)果列表Tab 1 List of Profile analysis result
本文以圖像采集處理系統(tǒng)在微小型化系統(tǒng)上的實(shí)現(xiàn)為出發(fā)點(diǎn),進(jìn)行了元器件選擇和系統(tǒng)硬件接口設(shè)計(jì)及軟件設(shè)計(jì),并進(jìn)行了原理樣機(jī)的制板和調(diào)試。圖像數(shù)據(jù)顯示結(jié)果表明:系統(tǒng)硬件接口電路和軟件設(shè)計(jì)均是可行的,可實(shí)現(xiàn)圖像數(shù)據(jù)的正確采集;實(shí)時(shí)性分析表明:該系統(tǒng)最高可實(shí)現(xiàn)22 fps 的采集速率。系統(tǒng)所選用的元器件的封裝均較小,按照需要對(duì)系統(tǒng)進(jìn)行小尺寸的PCB 設(shè)計(jì)制作,可為微小型化裝置上的圖像采集處理提供一種方法。
[1] 王正平,劉 莉,朱 勇.炮射偵察彈炮射減速段彈道優(yōu)化設(shè)計(jì)[J].彈道學(xué)報(bào),2012,24(4):22-26.
[2] 呂 翼,高洪民,汪 渤,等.圖像制導(dǎo)中的SIFT 快速算法[J].系統(tǒng)工程與電子技術(shù),2009,31(5):1148-1151.
[3] 楊 杰.圖像制導(dǎo)技術(shù)及實(shí)驗(yàn)研究[D].南京:南京航空航天大學(xué),2013:1-3.
[4] 丁昊杰,劉敬彪,盛慶華.基于CMOS 圖像傳感器的視頻采集系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2012,35(14):178-181.
[5] 程 磊,劉 波.基于OV2640 的微型膠囊內(nèi)窺鏡設(shè)計(jì)[J].傳感器與微系統(tǒng),2014,33(2):73-76.
[6] 苑瑋琪,湯永華.OmniVision 圖像傳感器的SCCB 總線(xiàn)協(xié)議在DSP 中的實(shí)現(xiàn)[J].儀器儀表學(xué)報(bào),2006,27(6):1687-1688.
[7] 汪春梅.TMS320C55xDSP 原理及應(yīng)用[M].3 版.北京:電子工業(yè)出版社,2011:223-224.