新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種基于高速DSP的圖像處理應(yīng)用平臺(tái)

一種基于高速DSP的圖像處理應(yīng)用平臺(tái)

作者: 時(shí)間:2009-07-30 來(lái)源:網(wǎng)絡(luò) 收藏

圖2 主程序流程

  DM642 的EDMA 控制器負(fù)責(zé)片內(nèi)L2存儲(chǔ)器與其它設(shè)備之間的數(shù)據(jù)傳輸。能提供超過(guò)2Gb/s 的外部帶寬,有64 個(gè)通道, 每1個(gè)通道都有1個(gè)事件與之關(guān)聯(lián),由這些事件觸發(fā)相應(yīng)通道的傳輸。上面流程中A/D、D/A的芯片初始化的參數(shù)傳輸和視頻數(shù)據(jù)的采集都是通過(guò)EDMA來(lái)實(shí)現(xiàn)的。

3.2 A/D和D/A芯片的初始化

  A/D和D/A芯片的初始化過(guò)程通過(guò)EDMA中的I2C通道來(lái)實(shí)現(xiàn)。要傳輸?shù)臄?shù)據(jù)參數(shù)在EDMA 的參數(shù)RAM表中進(jìn)行配置,其中主要包括源數(shù)據(jù)起始地址、目的地址、地址的修改方式、要傳輸?shù)臄?shù)據(jù)格式和大小。對(duì)二個(gè)芯片的初始化數(shù)據(jù)參數(shù)分別配置在二個(gè)不同的RAM表中。第一次I2C通道的EDMA數(shù)據(jù)傳輸完畢后由EDMA控制器向CPU發(fā)出中斷,中斷處理程序載入第二次I2C傳輸?shù)腞AM參數(shù)表,啟動(dòng)第二次傳輸過(guò)程。從而完成二個(gè)芯片的初始化過(guò)程。

3.3 視頻采集與輸出

  對(duì)應(yīng)于YUV 4:2:2的格式視頻數(shù)據(jù)采集,EDMA中用于VP1的數(shù)據(jù)傳輸有三個(gè)通道。系統(tǒng)中將視頻端口VP1配置為連續(xù)幀采集的方式,也就是啟動(dòng)第一幀的采集后,后面幀的采集連續(xù)進(jìn)行不需要另外的幀同步信號(hào)。

  在隔行掃描模式下,每幀分為兩場(chǎng),兩場(chǎng)在時(shí)域上是分開(kāi)的,通過(guò)EDMA 鏈表可自動(dòng)實(shí)現(xiàn)場(chǎng)合成,不需占用額外的CPU 時(shí)間。EDMA 的參數(shù)RAM 存放了有關(guān)的傳輸參數(shù), 這些參數(shù)用于產(chǎn)生EDMA 讀寫(xiě)操作所需要的地址。在使用EDMA 通道傳輸奇數(shù)場(chǎng)與偶數(shù)場(chǎng)時(shí),分別使用不同的EDMA 參數(shù)RAM。兩組參數(shù)RAM 的目的地址分別指向存儲(chǔ)圖像的第一行與第二行象素的首地址, 并且兩組參數(shù)RAM 通過(guò)鏈接地址(Linking Address)循環(huán)相連,并將源地址傳輸方式設(shè)置為1維的,目標(biāo)地址方式設(shè)置為2維的。在EDMA 通道的傳輸中,奇數(shù)場(chǎng)傳輸任務(wù)的結(jié)束會(huì)自動(dòng)地根據(jù)當(dāng)前參數(shù)RAM的鏈接地址裝載傳輸偶數(shù)場(chǎng)的參數(shù)RAM,進(jìn)行偶數(shù)場(chǎng)的傳輸。通過(guò)設(shè)定幀索引(Frame Index)值可以讓奇數(shù)場(chǎng)與偶數(shù)場(chǎng)數(shù)據(jù)在幀緩沖區(qū)中被隔行存儲(chǔ),這樣在無(wú)需占用額外CPU 時(shí)間的前提下就實(shí)現(xiàn)了場(chǎng)合成。另外,由于兩組參數(shù)RAM 通過(guò)鏈接地址循環(huán)相連,則奇數(shù)場(chǎng)與偶數(shù)場(chǎng)的數(shù)據(jù)傳輸連續(xù)不斷地交替進(jìn)行下去,這就形成了連續(xù)幀的數(shù)據(jù)采集。每一幀數(shù)據(jù)通過(guò)EDMA傳輸至SDRAM完畢之后,VP1會(huì)向CPU發(fā)出一個(gè)中斷,相應(yīng)的中斷程序?qū)?huì)對(duì)采集到的圖像數(shù)據(jù)進(jìn)行處里。

  大批量的圖像數(shù)據(jù)傳輸和復(fù)雜算法的處理一直是數(shù)字器的速度瓶頸,從上面的數(shù)據(jù)傳輸過(guò)程上可以看出, 利用DM642 的EDMA 功能可以在不中斷算法處理工作的同時(shí)完成圖像數(shù)據(jù)的搬移,在有效地解決了大批量圖像數(shù)據(jù)傳輸速度瓶頸的同時(shí),又能讓 的處理器核專(zhuān)門(mén)從事算法處理工作,極大地提高了系統(tǒng)的并行性能。
視頻輸出功能在本系統(tǒng)中主要用于早期開(kāi)發(fā)階段的調(diào)試。實(shí)際中可以根據(jù)需要將中間處理圖像結(jié)果數(shù)據(jù)通過(guò)EDMA中的VP2通道直接寫(xiě)入視頻FIFO。

3.4 通信接口功能的實(shí)現(xiàn)

  系統(tǒng)中,通過(guò)軟件的方法,不增加硬件的復(fù)雜度,利用已有的McBSP和EDMA實(shí)現(xiàn)UART功能。

  同步串口依賴三條分離的信號(hào)線(數(shù)據(jù)、幀同步和時(shí)鐘)來(lái)實(shí)現(xiàn)數(shù)據(jù)的傳輸,而異步通信只是在一根信號(hào)線上進(jìn)行。要用同步串口實(shí)現(xiàn)異步傳輸,需要通過(guò)在數(shù)據(jù)的首尾加入起始位和停止位,讓接收方知道數(shù)據(jù)傳輸何時(shí)開(kāi)始和停止。用McBSP實(shí)現(xiàn)UART功能,除了對(duì)McBSP進(jìn)行正確設(shè)置外,還需要正確設(shè)置EDMA,對(duì)McBSP收發(fā)數(shù)據(jù)進(jìn)行軟件處理。EDMA實(shí)現(xiàn)內(nèi)存到McBSP之間的高效數(shù)據(jù)搬移,數(shù)據(jù)處理軟件對(duì)待發(fā)送的數(shù)據(jù)進(jìn)行編碼,對(duì)接收到的數(shù)據(jù)進(jìn)行解碼。對(duì)McBSP和EDMA的設(shè)置及編解碼程序的設(shè)計(jì)詳見(jiàn)文獻(xiàn)[5]。

4、結(jié)論

  研究了一種DM642的的設(shè)計(jì)與實(shí)現(xiàn),其實(shí)現(xiàn)的基本功能包括視頻輸入和輸出,與外界的UART接口通信等。介紹了系統(tǒng)硬件組成,以及軟件功能模塊的實(shí)現(xiàn)。由于軟件采用了模塊化設(shè)計(jì),針對(duì)具體的功能需求,通過(guò)配置不同的客戶程序,可以實(shí)現(xiàn)特定的,因而系統(tǒng)具有好的應(yīng)用前景。


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

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

關(guān)閉