當(dāng)前位置:首頁 > 電源 > 數(shù)字電源
[導(dǎo)讀]以由ADSP—TSl01型高速數(shù)字處理器和EPM3256型復(fù)雜可編程邏輯器件構(gòu)成的紅外圖像處理系統(tǒng)為例,詳細(xì)介紹系統(tǒng)中DSP的DMA通道的應(yīng)用。

摘  要:以由ADSP—TSl01型高速數(shù)字處理器和EPM3256型復(fù)雜可編程邏輯器件構(gòu)成的紅外圖像處理系統(tǒng)為例,詳細(xì)介紹系統(tǒng)中DSP的DMA通道的應(yīng)用。
關(guān)鍵詞紅外圖像處理;ADSP-TSlOl;DMA;CPLD

1 引言
    紅外圖像處理系統(tǒng)的數(shù)據(jù)吞吐量大.處理算法復(fù)雜。由高速數(shù)字處理器和復(fù)雜可編程邏輯器件(CPLD)構(gòu)成的紅外圖像處理系統(tǒng)是當(dāng)前紅外圖像處理系統(tǒng)的一種發(fā)展趨勢。將高速處理器從繁重的數(shù)據(jù)傳輸中解脫出來,專注于從事圖像處理,是解決速度瓶頸的重要手段。

    直接內(nèi)存存取(DMA)是在CPU無需干預(yù)的情況下自動(dòng)進(jìn)行數(shù)據(jù)傳輸?shù)姆绞?。它對于浮點(diǎn)DSP進(jìn)行實(shí)時(shí)信號處理有著非常重要的作用。一方面.為了發(fā)揮DSP核心運(yùn)算單元的高速運(yùn)算能力.必須首先把程序和數(shù)據(jù)傳輸?shù)紻SP的內(nèi)存中.這通常需要DMA操作來實(shí)現(xiàn);另一方面.DSP系統(tǒng)總要跟外部信號通信,不論是數(shù)據(jù)的輸入還是輸出,都需要DMA來完成。否則會(huì)影響DSP核的高速運(yùn)算能力。

    ADSP-TSlOl是AD公司推出的新型浮點(diǎn)DSP之一。其內(nèi)部有專門的DMA控制器。還提供了多個(gè)DMA通道.不同的通道對應(yīng)不同的外部口操作。本文首先概括介紹由ADSP一TPSl01和EPM3256型CPLD構(gòu)成的紅外處理系統(tǒng)。然后對系統(tǒng)中的幾種典型DMA操作進(jìn)行詳細(xì)的分析。

2 系統(tǒng)結(jié)構(gòu)
    本文介紹的紅外處理系統(tǒng)主要用于320x240像素紅外圖像的處理.對背景中的目標(biāo)進(jìn)行檢測、跟蹤和識(shí)別。系統(tǒng)的硬件結(jié)構(gòu)如圖1所示。該系統(tǒng)采用2個(gè)ADSP-TS101作為處理器,2個(gè)的FIFO作為輸入輸出緩存,1個(gè)SDRAM作為外部存儲(chǔ)器,1個(gè):EPM3256型CPLD作為邏輯控制。

    在此系統(tǒng)之前的處理是紅外圖像的采集過程。采集到的紅外圖像數(shù)據(jù)經(jīng)過外部連接首先傳輸?shù)捷斎刖彌_FIFO中。當(dāng)某一幀圖像數(shù)據(jù)傳輸完畢,使用TSl01特有的FLYBY傳輸方式將數(shù)據(jù)由輸入緩沖FIFO傳輸?shù)絊DRAM中,然后DSP對圖像數(shù)據(jù)進(jìn)行目標(biāo)檢測等處理。處理結(jié)果先存儲(chǔ)在DSP內(nèi)的RAM中,最后輸入到輸出緩沖FIFO。其中包括FIFO到SDRAM、SDRAM到DSP及DSP間的數(shù)據(jù)傳輸,由于都采用了DMA傳輸,不占用DSP資源,大大提高了系統(tǒng)的處理能力。

3 ADSP—TSl01的DMA描述
    ADSP-TSl01是TigerSharc系列DSP的首個(gè)成員,具有極高的運(yùn)算能力。它片內(nèi)的DMA控制器允許將數(shù)據(jù)傳輸作為后臺(tái)任務(wù)執(zhí)行,從而將處理器內(nèi)核釋放出來。其內(nèi)部具有14個(gè)DMA通道,如圖2所示,分別對應(yīng)著不同類型的傳輸操作。4個(gè)通道專用于外部存儲(chǔ)器設(shè)備,8個(gè)。DMA通道用于鏈路口,還有2個(gè)通道用于自動(dòng)。DMA操作。多樣的傳輸手段使得ADSP—TSl01傳輸數(shù)據(jù)非常方便。利用DMA控制器,DSP處理器可以執(zhí)行以下幾種類型的數(shù)據(jù)傳輸:

    (1)內(nèi)部存儲(chǔ)器到外部存儲(chǔ)器或與存儲(chǔ)器映射的外設(shè)設(shè)備之間的數(shù)據(jù)傳遞;
    (2)外部存儲(chǔ)器與外部外設(shè)之間的飛躍式數(shù)據(jù)傳輸;
    (3)外部存儲(chǔ)器到鏈路口I/O的數(shù)據(jù)傳輸;
    (4)鏈路口I/O到處理器內(nèi)部存儲(chǔ)器的數(shù)據(jù)傳輸:
    (5)鏈路口I/O到外部存儲(chǔ)器的數(shù)據(jù)傳輸;
    (6)鏈路口I/O之間的閉環(huán)數(shù)據(jù)傳輸。

    TSl01的DMA控制器由專用的控制器核、發(fā)送端TCB寄存器與接收端TCB寄存器等構(gòu)成。DMA傳送的數(shù)據(jù)流具有方向性,即從發(fā)送端(源)到接收端(目的)。若發(fā)送端或接收端是存儲(chǔ)器,則需通過TCB寄存器來描述。TCB寄存器是128 bit寄存器,如圖3所示.包括啟動(dòng)DMA所必需的信息。例如,1個(gè)傳送TCB包括數(shù)據(jù)源的地址、傳輸?shù)臄?shù)據(jù)字節(jié)數(shù)、地址的增量、控制信息。若啟動(dòng)DMA操作,需對TCB寄存器進(jìn)行編程。

    TCB寄存器由4個(gè)32位寄存器組成:DI寄存器、DX寄存器、DX寄存器和DP寄存器。DI寄存器是32 bit索引寄存器,它包含傳送的源地址或者接受的目的地地址,可以指向內(nèi)存、外存或者LINK口。DX寄存器包含了1個(gè)16 bit的計(jì)數(shù)值和1個(gè)16 bit的修正值,分別存儲(chǔ)在DX的前16位(前者)和后16位。如果一個(gè)二維DMA被使能,該寄存器包含的值僅僅代表X方向。例如:如果要傳輸4個(gè)128 bit的字.計(jì)數(shù)值將被設(shè)置為0X10,而修正值與DP寄存器中的操作數(shù)長度相對應(yīng)。如果操作數(shù)長度是長字.那么修正值將會(huì)被設(shè)置為0X2。DY寄存器與DX寄存器相對應(yīng),只有啟動(dòng)二維DMA時(shí)才會(huì)用到。DP寄存器包括DMA所有的控制信息,分為控制信息和DMA鏈信息。

4 系統(tǒng)中的典型DMA操作
    在本文介紹的紅外圖像系統(tǒng)中,主要使用以下幾種DMA操作:內(nèi)存與外存(內(nèi)存與SDRAM間的數(shù)據(jù)傳輸)、內(nèi)存與LINK口間的數(shù)據(jù)傳輸、外設(shè)與外存的數(shù)據(jù)傳輸(FIFO與SDRAM間的數(shù)據(jù)傳輸)。

4.1 內(nèi)存與外存間的DMA操作

    TSl01處理器有4個(gè)專用DMA通道,用于內(nèi)部存儲(chǔ)器與外部存儲(chǔ)器之間的數(shù)據(jù)傳輸。每個(gè)通道有2個(gè)TCB DP寄存器、1個(gè)發(fā)送TCB和1個(gè)接收。TCB.其中發(fā)送端用來驅(qū)動(dòng)數(shù)據(jù),接收端用來接收數(shù)據(jù)。DP寄存器的TY域指定了要執(zhí)行的DMA傳送的類型。

    實(shí)現(xiàn)外部存儲(chǔ)器與內(nèi)部存儲(chǔ)器的數(shù)據(jù)傳輸有2種途徑:一是對4個(gè)DMA通道中的1個(gè)進(jìn)行編程,將數(shù)據(jù)塊從一個(gè)存儲(chǔ)器移人另一個(gè)存儲(chǔ)器。此時(shí).發(fā)送和接收TCB都需要進(jìn)行配置:二是使用2個(gè)AutoDMA通道中的一個(gè),此時(shí),外設(shè)首先對通道的2個(gè)TCB寄存器編程,然后向目標(biāo)AutoDMA數(shù)據(jù)寄存器寫人數(shù)據(jù)。向這個(gè)地址進(jìn)行寫操作,激活相應(yīng)的DMA。

    下面以在紅外處理系統(tǒng)中的應(yīng)用為例說明第一種用法。如要將SDRAM內(nèi)地址為0x400000~
Ox4003FF中的1024個(gè)數(shù)用DMA通道0傳送到內(nèi)存地址0xS0000~0x803FF中.可用下面的

編程來實(shí)現(xiàn):
XR0=0x400000:← DI Register
XRl=OxO4D00004:← DX Register
XR2=0x00000000;← DY Register
XR3=Ox87000000:←DP Register
DCS0=XR3:0:
XR8=0x80000; ← DI Rester
XR9=ox04000004;←DX ReRister
XRl0=0x0000000;← DY Re西sler
XRll=ox47000000;← DP Register
DCD0=XRll:8:

4.2  內(nèi)存與LINK口間的DM_A操作

    TSl01的鏈路口為處理器內(nèi)部或外部的數(shù)據(jù)傳輸提供了快速、獨(dú)立的通信機(jī)制,它為系統(tǒng)中的DSP之間提供了點(diǎn)對點(diǎn)的通信方法。每個(gè)DSP有4個(gè)鏈路口,每個(gè)鏈路口都由8位雙向數(shù)據(jù)線和另外3條控制線構(gòu)成。鏈路口的結(jié)構(gòu)如圖4所示。每個(gè)鏈路口有2個(gè)端口(發(fā)送端和接收端)和2個(gè)緩沖區(qū)。緩沖區(qū)用于打包或解包鏈路口數(shù)據(jù),與內(nèi)部存儲(chǔ)器進(jìn)行數(shù)據(jù)交換。

    TSl01的4個(gè)鏈路口均可使用DMA方式發(fā)送或接收數(shù)據(jù),可以實(shí)現(xiàn)鏈路口與內(nèi)部存儲(chǔ)器、外部存儲(chǔ)器或其他鏈路口之間的雙向數(shù)據(jù)傳送。處理器為每個(gè)鏈路口提供了2個(gè)專用的DMA通道,1個(gè)用于發(fā)送數(shù)據(jù),1個(gè)用于接收數(shù)據(jù)。兩個(gè)DMA通道均可以與內(nèi)部或外部存儲(chǔ)器接口。當(dāng)接收端寄存器空且鏈路DMA通道使能時(shí),鏈路口向發(fā)送DMA通道發(fā)出DMA請求,鏈路1:3可以繼續(xù)向緩存區(qū)寫數(shù)據(jù)。當(dāng)接收寄存器滿且DMA通道使能時(shí),鏈路口向接收DMA通道發(fā)出DMA請求。

    以紅外處理系統(tǒng)中的應(yīng)用為例,如圖l所示.DSPO通過LINK口0與DSPl的LINK口1相連。如果將DSP0內(nèi)存中的數(shù)組data_tx中N個(gè)數(shù)通過鏈路口傳輸?shù)紻SPl內(nèi)存中的數(shù)組data_rx中.首先要對DSPl的LINK口l的接收DMA通道進(jìn)行編程,然后對DSP0的LINK口O的發(fā)送DMA通道進(jìn)行編程。

DSPl中的程序:
TCB_temp.DI=data_rx;
TCB_temp.DX=4 I(N<<16);
TCB_temp.DY=O:
TCB_temp.DP=0x47000000;
q=_buihin_compose_128((1ong long)TCB_temp.DI │
(10ng long)TCB_temp.DX<<32.(10ng ions)
(TCB_temp.DY│(10ng long)TCB_temp.DP<<321);
builtin_sysreg_write(LCTLl.0x000004D2);//設(shè)定

鏈路口的控制寄存器
builtin_sysreg_write4(DC9,cO;
DSPO中的程序:
TCB_temp.DI:data_tx;
TCB_temp.DX=4 I(N<<16);
TCB_temp.DY=0:
TCB_temp.DP=0x47000000;
q= builtin_eompose_128((10ng long)TCB_temp.DI │
(10ng long)TCB_temp.DX<<32,(1ong 1ong)
(TCB_temp.DY I(1ong long)TCB_temp.DP<<32));
buihin_sysreg_write(LCTL0,0x000004D2);
/,設(shè)定鏈路口的控制寄存器
builtin_sysreg_write4(DC4,q);

    在以上編程中,將鏈路口時(shí)鐘配置成1/3核時(shí)鐘。當(dāng)處理器核工作在300 MHz和鏈路口工作在100 MHz時(shí)鏈路口的吞吐率可以達(dá)到200 MB。

4.3  外存與外設(shè)間的DMA操作(飛躍傳輸)

    在程序設(shè)計(jì)中,要實(shí)現(xiàn)外部存儲(chǔ)器與其他外部設(shè)備之間的數(shù)據(jù)傳輸,通常都需要通過處理器內(nèi)核將數(shù)據(jù)傳輸?shù)教幚砥鲀?nèi)部。在這種情況下.TSl01處理器支持全新的數(shù)據(jù)傳輸即飛躍傳(上接第60頁)輸方式.此時(shí)不必對內(nèi)部存儲(chǔ)器進(jìn)行訪問,數(shù)據(jù)直接在外部存儲(chǔ)器和外部其他設(shè)備之間傳輸。在飛躍傳輸方式下??砂裈Sl01看作獨(dú)立的DMA控制器。飛躍傳輸方式與標(biāo)準(zhǔn)的DMA傳輸方式類似,程序設(shè)計(jì)也基本相同,但是數(shù)據(jù)寬度必須與外部10設(shè)備匹配。而且只能使用DMA通道0。

5 結(jié)束語
    充分利用DSP的DMA功能是解決高速圖像處理器速度瓶頸的重要手段。ADSP一TS101的DMA操作功能強(qiáng)大,形式多樣。它可以在不中斷信號處理器算法處理工作的同時(shí)完成圖像數(shù)據(jù)的傳輸,提高處理系統(tǒng)的性能。本文分析的幾種操作在紅外圖像處理系統(tǒng)中得到具體的實(shí)踐,獲得良好的效果。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉