新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > OMAP5910實(shí)時(shí)圖像系統(tǒng)中的DMA數(shù)據(jù)傳輸

OMAP5910實(shí)時(shí)圖像系統(tǒng)中的DMA數(shù)據(jù)傳輸

——
作者:公安部第一研究所,王艷艷 郅晨 于銳 時(shí)間:2006-09-29 來(lái)源:?jiǎn)纹瑱C(jī)與嵌入式系統(tǒng)應(yīng)用 收藏

引言

實(shí)時(shí)系統(tǒng)的顯著特點(diǎn)是數(shù)據(jù)量大,有效地處理和傳輸圖像數(shù)據(jù)是實(shí)現(xiàn)實(shí)時(shí)系統(tǒng)的關(guān)鍵,TI公司推出了高性能多媒體雙核處理器OMAP5910,是將高性能、低功耗的TMS320C55x DSP與控制性能很強(qiáng)的ARM925微處理器集成到同一芯片器件中如何有效地發(fā)揮雙核的優(yōu)勢(shì),合理利用OMAP5910的各種內(nèi)存配置DMA控制器實(shí)時(shí)、高效傳輸大規(guī)模的圖像數(shù)據(jù)是本文研究的重點(diǎn)。 


1 OMAP5910的內(nèi)存管理

由于OMAP5910支持多種內(nèi)存,因此在設(shè)計(jì)DMA傳輸方案時(shí),必須對(duì)OMAP5910的內(nèi)存管理有一個(gè)詳細(xì)的了解。

OMAP5910的MPU存儲(chǔ)器片內(nèi)集成了192KB的SRAM,DSP存儲(chǔ)器片內(nèi)集成了64KB的雙向DARAM,96KB的單向SARAM,32KB的程序存儲(chǔ)器PDROM,MPU和DSP子系統(tǒng)的存儲(chǔ)器映射情況如圖1所示[1]。通過(guò)EMIFF和EMIFS接口,OMAP5910可以訪問(wèn)片外存儲(chǔ)器,但訪問(wèn)片外存儲(chǔ)器的速度與訪問(wèn)片內(nèi)存儲(chǔ)器的速度差別很大。

OMAP5910的片內(nèi)存儲(chǔ)器主要由存儲(chǔ)器管理單元TC管理。TC管理MPU、DSP、DMA以及局部總線對(duì)OMAP5910系統(tǒng)存儲(chǔ)資源(SRAM、SDRAM、Flash、ROM等)的訪問(wèn),它的主要功能是確保處理器能夠高效訪外部存儲(chǔ)區(qū),避免產(chǎn)生瓶頸現(xiàn)象而降低片上處理速度,TC通過(guò)3種不同的接口-EMIFS、EMIFF或IMIF,支持處理器或DMA單元對(duì)存儲(chǔ)器的訪問(wèn).其中EMIFS接口提供對(duì)Flash、SRAM或ROM的訪問(wèn),EMIFF接口提供對(duì)SDRAM的訪問(wèn),IMIF接口提供對(duì)OMAP5910片內(nèi)192KB SRAM的訪問(wèn),3種接口是完全獨(dú)立的[2],從任何一個(gè)處理器或DMA單元都可以同時(shí)訪問(wèn)。

ARM核訪問(wèn)DSP核的數(shù)據(jù)或內(nèi)存空間,需要ARM和DSP之間進(jìn)行通信,主要有3種方式支持內(nèi)部雙核間的通信,第1種方式通過(guò)雙核共享郵箱寄存器MailBox來(lái)實(shí)現(xiàn),ARM和DSP均可以通過(guò)MailBox觸發(fā)對(duì)方中斷,并同時(shí)傳遞兩個(gè)16位的參數(shù),以通知對(duì)方自己的狀態(tài)或傳遞某種請(qǐng)求,第2種方式是MPUI方式,ARM通過(guò)主機(jī)接口獲得對(duì)DSP存儲(chǔ)空間和I/O空間的訪問(wèn)權(quán),由ARM完成數(shù)據(jù)在雙核間的搬移,第3種方式是設(shè)置DSP的MMU,將DSP的外部存儲(chǔ)空間映射到OMAP5910系統(tǒng)存儲(chǔ)資源中,共享DSP的地址空間,由DSP完成雙核間的數(shù)據(jù)搬移。

             存儲(chǔ)器映射

2 OMAP5910的DMA控制器

OMAP5910的DMA控制器對(duì)實(shí)時(shí)系統(tǒng)非常重要,它可以在沒(méi)有CPU參與的情況下完成映射存儲(chǔ)空間中數(shù)據(jù)搬移,靈活的使用DMA控制器可以大大提高數(shù)據(jù)傳輸效率。

OMAP5910的DMA控制器進(jìn)行通用功能傳輸時(shí)的特點(diǎn)如下:

1)單通道分割操作,具有通用和專(zhuān)用信道,不同的硬件資源端口。所有的數(shù)據(jù)交換都通過(guò)請(qǐng)求(Request)、準(zhǔn)備就緒(ready)、中止(abort)信號(hào)進(jìn)行握手。DMA信道是時(shí)分復(fù)用的,其傳輸?shù)幕玖鞒倘鐖D2所示。

 

                                     傳輸?shù)幕玖鞒?hspace=0

2)多幀傳輸。傳輸?shù)拿總€(gè)數(shù)塊可以有多個(gè)數(shù)據(jù)幀。傳輸?shù)臄?shù)據(jù)大小為8位、16位和32位??砂醋止?jié)打包、拆包、并對(duì)傳輸?shù)淖止?jié)計(jì)數(shù)。可訪問(wèn)所有的存儲(chǔ)器地址空間(物理地址映射和I/O空間)。

3)DMA的讀、寫(xiě)和幀操作都有中斷觸發(fā),每個(gè)DMA物理通道都可以產(chǎn)生一個(gè)中斷,使處理器對(duì)本次傳輸?shù)臓顟B(tài)作出反應(yīng),所有的DMA中斷都是電平中斷[4]。

4)后臺(tái)傳輸、高吞吐率,DMA可獨(dú)立于CPU工作和以PCU時(shí)鐘速度進(jìn)行數(shù)據(jù)吞吐。

實(shí)時(shí)圖像處理系統(tǒng)的圖像數(shù)據(jù)很大,同時(shí)圖像處理過(guò)程中也也會(huì)產(chǎn)生大量的中間數(shù)據(jù),而OMAP5910的片內(nèi)資源有限,不能容納幀的圖像數(shù)據(jù)和中間數(shù)據(jù),所以大量的圖像數(shù)據(jù)必須存儲(chǔ)在片外存儲(chǔ)器中,為了保證系統(tǒng)的實(shí)時(shí)性,由DMA負(fù)責(zé)完成數(shù)據(jù)在不同存儲(chǔ)空間的搬移,不必占用CPU的時(shí)鐘周期,避免CPU大部分時(shí)間堵塞在對(duì)外存的訪問(wèn)上,同時(shí)DMA對(duì)數(shù)據(jù)重排功能可以?xún)?yōu)化圖像數(shù)據(jù)在內(nèi)存中的存儲(chǔ),這不僅可以提高內(nèi)部存儲(chǔ)空間的利用效率,而且可以提高數(shù)據(jù)的傳輸速率。

3 OMAP5910內(nèi)、外存儲(chǔ)器數(shù)據(jù)交換分析

一個(gè)完整的實(shí)時(shí)圖像處理不僅能對(duì)圖像進(jìn)行實(shí)時(shí)采集,還能對(duì)圖像進(jìn)行實(shí)時(shí)處理,該實(shí)時(shí)圖像處理系統(tǒng)主要由圖像傳感器、A/D轉(zhuǎn)換器,復(fù)雜可編程邏輯器件FPGA、OMAP5910雙核處理器,圖像顯示設(shè)備等構(gòu)成。該系統(tǒng)的主要功能是FPGA實(shí)時(shí)接收紅外焦平面陣列傳感器輸出的14位視頻信號(hào),降頻后由OMAP5910的DSP處理器執(zhí)行圖像處理算法,同時(shí),OMAP5910的ARM處理器執(zhí)行復(fù)雜控制指令,再由FPGA緩存,經(jīng)D/A變換合成10位視頻信號(hào)輸出,另外,OMAP5910的ARM處理器通過(guò)接口接收計(jì)算機(jī)的控制指令。 按照人眼的視覺(jué)要求,成像系統(tǒng)每秒鐘至少要采集和處理25幀圖像數(shù)據(jù),才能避免圖像實(shí)時(shí)顯示時(shí)的視覺(jué)閃爍感,。對(duì)于320



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉