《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于EDMA的FPGA與DSP之間圖像高速穩(wěn)定數(shù)據(jù)傳輸?shù)牡脑O(shè)計與實(shí)現(xiàn)
基于EDMA的FPGA與DSP之間圖像高速穩(wěn)定數(shù)據(jù)傳輸?shù)牡脑O(shè)計與實(shí)現(xiàn)
摘要: 圖像數(shù)據(jù)傳輸?shù)乃俣扰c穩(wěn)定性對整個系統(tǒng)的性能具有很大的影響。本文介紹了一種基于EDMA的高速穩(wěn)定的數(shù)據(jù)傳輸方法,并在TI的DSP開發(fā)平臺CCS下,對該方法的性能進(jìn)行了測試。
關(guān)鍵詞: DSP 數(shù)據(jù)傳輸 Quartus
Abstract:
Key words :

數(shù)字信號處理器(DSP)是采用數(shù)字計算方法對信號進(jìn)行處理的專用芯片。由于其性能穩(wěn)定,可大規(guī)模集成,編程性高和易實(shí)現(xiàn)等優(yōu)點(diǎn),被廣泛應(yīng)用。其中,以圖像處理與DSP技術(shù)結(jié)合較為普遍,因?yàn)閳D像所包含的信息數(shù)據(jù)量大,而DSP的處理速度快,易于實(shí)現(xiàn)大量數(shù)據(jù)高速傳輸?shù)奶攸c(diǎn)能夠滿足這一要求。

目前,圖像處理技術(shù)已在通信、信息、電子、航天及軍事等領(lǐng)域得到廣泛應(yīng)用。與圖像處理有關(guān)的系統(tǒng)設(shè)計中,F(xiàn)PGA加DSP構(gòu)架是普遍的使用方法。為充分利用DSP的性能,需要在FPGA中對圖像進(jìn)行相應(yīng)的預(yù)處理,再把圖像數(shù)據(jù)傳輸給DSP進(jìn)行處理。所以FPGA與DSP之間的數(shù)據(jù)傳輸技術(shù)變得不可或缺。

圖像數(shù)據(jù)傳輸?shù)乃俣扰c穩(wěn)定性對整個系統(tǒng)的性能具有很大的影響。本文介紹了一種基于EDMA的高速穩(wěn)定的數(shù)據(jù)傳輸方法,并在TI的DSP開發(fā)平臺CCS下,對該方法的性能進(jìn)行了測試。

1 方案設(shè)計

文中圖像傳輸硬件系統(tǒng)結(jié)構(gòu)如圖1所示。該系統(tǒng)中采用Ahera公司的Cyclone3系列FPGA:EP3C80F484C6,Analog Device公司的視頻解碼芯片ADV7183,差分輸入14位數(shù)據(jù)的LVDS接口和TI公司的TMS320C6416。該系統(tǒng)既可采集模擬視頻信號,又可采集數(shù)字視頻信號。模擬信號經(jīng)過模數(shù)轉(zhuǎn)換芯片ADV7183后變成數(shù)字信號,數(shù)字信號經(jīng)由LVDS差分接口進(jìn)入FPGA。為調(diào)試方便,模擬圖像與數(shù)字圖像統(tǒng)一使用320×256規(guī)格。DSP以EDMA方式接收,經(jīng)過FPGA預(yù)處理后的圖像數(shù)據(jù),在CCS平臺下進(jìn)行顯示以驗(yàn)證傳輸?shù)恼_性。

圖像傳輸硬件系統(tǒng)結(jié)構(gòu)

2 接口電路設(shè)計

DSP以EDMA方式從FPGA中讀取數(shù)據(jù),需要FPGA在內(nèi)部配置一塊大小適當(dāng)?shù)拇鎯臻g。FPGA作為一個存儲器,通過DSP的外部存儲器接口(EMIF)與DSP相連。硬件連接如圖2所示。

硬件連接

圖2所示為FPGA與DSP的硬件上連接示意圖。實(shí)際使用時,并沒有使用上述所有信號線。FPGA使用到的管腳如下:CLK,CE,A[19:0],D[63:0]和INT。CLK是DSP提供的同步讀寫時鐘,CE是DSP的片選信號,A[19:0]為地址線,D[63:0]地址線。INT為中斷信號。

FPGA與DSP的傳輸機(jī)制:FPGA使用QuartusII開發(fā)平臺往雙口RAM中寫數(shù),寫滿后用中斷管腳INT來通知DSP讀數(shù)。DSP收到FPGA的中斷信號后,開始讀數(shù)。讀數(shù)期間片選信號CE有效,F(xiàn)PGA把DSP片選信號CE作為雙口RAM的讀使能,在使能期間用DSP提供的時鐘CLK讀取數(shù)據(jù)。

系統(tǒng)中DSP提供給FPGA的時鐘CLK為100MHz。接收模擬圖像時,圖像數(shù)據(jù)為8位,只使用D[7:0]8根數(shù)據(jù)線;接收數(shù)字圖像時,圖像數(shù)據(jù)為14位,使用D[15:0]16根數(shù)據(jù)線,高兩位置0。數(shù)字圖像與模擬圖像均為320×256。

3 EDMA傳輸

TMS320C6000系列DSP中的,增強(qiáng)型直接存儲器訪問(EDMA)控制器執(zhí)行所有二級高速緩存/內(nèi)存控制器與外設(shè)之間的數(shù)據(jù)傳輸。

EDMA控制器包括事件和中斷處理寄存器、事件編碼器、參數(shù)RAM和地址產(chǎn)生硬件電路。事件是觸發(fā)EDMA啟動的同步信號,事件寄存器用于捕獲EDMA事件。事件編碼器解決多個事件發(fā)生時事件的優(yōu)先級問題。對應(yīng)事件的傳輸參數(shù)存儲在EDMA參數(shù)RAM中,并且傳遞給地址產(chǎn)生硬件單元,進(jìn)行尋址EMIF或外設(shè)執(zhí)行相應(yīng)的讀寫操作。

3.1 傳輸流程

使用EDMA數(shù)據(jù)傳輸?shù)姆椒ㄓ袃煞N,一種是CPU初始化的EDMA;第二種是事件觸發(fā)的EDMA。所有的EDMA通道都有一個特定的同步事件與之對應(yīng),如外圍設(shè)備事件、外部硬件中斷或EDMA傳輸完成事件都可以同步觸發(fā)EDMA的傳輸。當(dāng)通道對應(yīng)的同步事件發(fā)生或由CPU同步該通道時,通道就完成一次數(shù)據(jù)傳輸請求。由事件觸發(fā)的EDMA傳輸實(shí)時性好,是一種常見的傳輸方式。系統(tǒng)采用的就是事件觸發(fā)模式,觸發(fā)信號就是FP GA給DSP的中斷信號。圖3為EDMA的傳輸流程。

EDMA的傳輸流程

3.2 EDMA配置

同步事件發(fā)生時,EDMA傳輸?shù)臄?shù)據(jù)大小和源目的地址由參數(shù)RAM中的參數(shù)決定。訪問EDMA的參數(shù)RAM時需要通過外圍總線。EDMA傳輸參數(shù),如圖4所示。

EDMA傳輸參數(shù)

選項(xiàng)(OPT)部分主要用于傳輸數(shù)據(jù)的最小單元、數(shù)據(jù)傳輸?shù)脑吹刂泛湍康牡刂返膶ぶ纺J?。系統(tǒng)中的最小傳輸單元為1 Byte,源地址設(shè)置為一維源,目的地址設(shè)置為二維源。數(shù)據(jù)傳輸模式為幀同步。傳輸數(shù)據(jù)塊的行數(shù)設(shè)置255(實(shí)際傳輸行數(shù)為256),列數(shù)設(shè)置為320。

源地址(SRC)設(shè)置了源數(shù)據(jù)所在的地址,系統(tǒng)該參數(shù)配置為0xA0000000,指向FPGA目的地址(DST)設(shè)置了數(shù)據(jù)要被傳輸?shù)降拇鎯臻g的地址。

實(shí)現(xiàn)傳輸過程為把一幅320×256 Byte的圖像從FPGA緩存到了SDRAM中。傳輸14位的數(shù)字圖像時,一個像素的圖像數(shù)據(jù)占用2 Byte,所以要把選項(xiàng)(OPT)中的最小傳輸單元改為2 Byte。

3.3 程序?qū)崿F(xiàn)

相應(yīng)的EDMA通道初始化完成后,使能并打開相應(yīng)的中斷。FPGA每產(chǎn)生一次EDMA同步事件,即往INT管腳發(fā)一次中斷信號,EDMA就能完成一次指定要求的傳輸,然后等待下一次同步事件。

4 實(shí)驗(yàn)結(jié)果

DSP提供給FPGA的時鐘為100 MHz,傳輸一幅320×256的圖像需要約為0.8 ms。傳輸速度較快,可以滿足圖像快速傳輸以及實(shí)時處理的要求。TI的開發(fā)平臺CCS可以觀察存儲器中的數(shù)據(jù),并把收到的存在存儲器中的數(shù)據(jù)顯示成圖像,從而可以驗(yàn)證傳輸?shù)恼_性以及穩(wěn)定性。數(shù)據(jù)源為模擬圖像時,相機(jī)拍攝的原始圖像和DSP收到的圖像如圖5和圖6所示。

相機(jī)拍攝的原始圖像和DSP收到的圖像

數(shù)據(jù)源為數(shù)字信號時,原始圖像為14位數(shù)據(jù),TI的仿真平臺只能顯示8位圖像,所以DSP中收到的圖像數(shù)據(jù)只能以高8位進(jìn)行顯示,但會丟掉圖像的一些細(xì)節(jié),圖像整體偏暗。由于系統(tǒng)采用的數(shù)字圖像由中波紅外熱像儀采集,由于視場差別,原始圖像無法采集。圖7為提取高8位圖像數(shù)據(jù)顯示的圖像。

圖5~圖7中的圖像經(jīng)過多次傳輸驗(yàn)證,沒有出現(xiàn)錯誤的圖像。說明該系統(tǒng)實(shí)現(xiàn)的圖像數(shù)據(jù)傳輸滿足圖像實(shí)時處理的速度要求以及可靠性要求。

提取高8位圖像數(shù)據(jù)顯示的圖像

5 結(jié)束語

介紹了一種FPGA向DSP的數(shù)據(jù)傳輸方法,描述了EDMA的特點(diǎn)以及由其控制的數(shù)據(jù)傳輸?shù)膶?shí)現(xiàn)過程。所介紹的方法在開發(fā)的實(shí)驗(yàn)平臺上,進(jìn)行了驗(yàn)證。文中介紹了FPGA向DSP的傳輸,更改EDMA的源地址與目的地址及相關(guān)參數(shù)可以實(shí)現(xiàn)DSP向FPGA的數(shù)據(jù)傳輸。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。