自在自线亚洲а∨天堂在线-中文字幕一区视频播放-扒开双腿猛进入喷水高潮叫声-欧美日本亚洲一区二区-老熟妇高潮偷拍一区二区-国产精品高清一区二区不卡-午夜色福利视频一区二区三区-亚洲国产成人精品福利在线观看-亚洲欧美成人一区二区在线电影

機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
高速可設(shè)定式DSP技術(shù)
高速可設(shè)定式DSP技術(shù)
 更新時(shí)間:2009-6-5 9:10:33  點(diǎn)擊數(shù):2
【字體: 字體顏色

(圖一) 高速可設(shè)定式DSP的簡(jiǎn)易架構(gòu)




(圖二) 可設(shè)定式DSP的開發(fā)流程

 

<!--插入廣告JS代碼-->

消費(fèi)性產(chǎn)品與通訊產(chǎn)品都要能支援高運(yùn)算量和資料轉(zhuǎn)換的功能。這些產(chǎn)品對(duì)體積大小和耗電量的要求很嚴(yán)格,而數(shù)位訊號(hào)處理器(DSP),就是這些產(chǎn)品最核心的部份。為了支援這些產(chǎn)品的需求和應(yīng)用,DSP應(yīng)該是可程式化的、可設(shè)定的和可擴(kuò)充的。因此高速可設(shè)定式DSP因此應(yīng)運(yùn)而生,它非常適合應(yīng)用在需要高效能、低功率且可以彈性設(shè)計(jì)的消費(fèi)性產(chǎn)品和通訊產(chǎn)品上。

消費(fèi)性產(chǎn)品與通訊產(chǎn)品,基本上都要能支援高運(yùn)算量和資料轉(zhuǎn)換(transformation)的功能。例如:視訊影像的編碼與解碼、聲音的壓縮與解壓縮,或者影像資料的處理及壓縮、語音的播放以及通訊頻道的編解碼等應(yīng)用。
這些產(chǎn)品對(duì)體積大小和耗電量的要求很嚴(yán)格,而且要求能針對(duì)特定的規(guī)格提供最佳的支援。而所謂特定的規(guī)格就是指產(chǎn)品的應(yīng)用功能。例如:手提式視訊裝置需要低功率和低成本,但影像品質(zhì)并不高;不過,視訊廣播市場(chǎng)所需要的視訊產(chǎn)品,則必須是高畫質(zhì)的,且其運(yùn)算處理效能一定要高。

此外,目前許多產(chǎn)品都必須同時(shí)支援多種應(yīng)用項(xiàng)目,或必須支援具有多種格式(format)的單一應(yīng)用。譬如:只支援MPEG2的視訊產(chǎn)品,將必須同時(shí)支持MPEG4、H26L、MSWM和其它視訊標(biāo)準(zhǔn);而WLAN通訊裝置除了要支援802.11的不同版本標(biāo)準(zhǔn)以外,有時(shí)還得支援其它的無線電標(biāo)準(zhǔn)。

而數(shù)位訊號(hào)處理器(digital signal processing;DSP),就是這些產(chǎn)品最核心的部份,負(fù)責(zé)處理那些需要大量運(yùn)算的資料。為了有效地支援這些產(chǎn)品的需求和應(yīng)用,DSP應(yīng)該是可程式化的(programmable)、可設(shè)定的(configurable/reconfigurable)和可擴(kuò)充的(scalable)。高速的可設(shè)定式DSP因此應(yīng)運(yùn)而生,它非常適合應(yīng)用在需要高效能、低功率且可以彈性設(shè)計(jì)的消費(fèi)性產(chǎn)品和通訊產(chǎn)品上。

高速可設(shè)定式DSP的設(shè)計(jì)目的,簡(jiǎn)單說,就是要在單一的系統(tǒng)級(jí)單晶片(SoC)架構(gòu)下,支援許多種應(yīng)用和需求,而且使用者可以利用高階語言來開發(fā)。為了能盡早完成產(chǎn)品的開發(fā)工作,使產(chǎn)品能提早上市,這種新技術(shù)將是無法抵擋的趨勢(shì)。

必須了解的定義

有幾個(gè)定義必須先了解。首先,所謂「可程式化」,是指它可以處理指令,而不是指執(zhí)行固定的函式(function)。對(duì)DSP而言,指令可以來自于高階語言(C、Java、C++)的編譯器(compiler),也可以經(jīng)由手寫程式(組合語言)產(chǎn)生。這有別于傳統(tǒng)的DSP功能,因?yàn)榭稍O(shè)定式DSP具有類似中央處理器(CPU)的功能。其實(shí),正如DSP的原名──「數(shù)位訊號(hào)處理器」,它本來就應(yīng)該是一種處理器;只不過,傳統(tǒng)的DSP并沒有將CPU核心納入架構(gòu)中,因此,「DSP只能執(zhí)行固定的函式」就變成了一種刻板印象。

所謂可設(shè)定式,是指可以使用一種或數(shù)種方法,將可設(shè)定式DSP修改成客戶想要的應(yīng)用功能。不過,這些修改必須在它變成硅晶之前,就得完成。

而可擴(kuò)充性,是指它可以增加或縮減功能,來支援不同種類的應(yīng)用需求。在大多數(shù)的情況下,是專指增加功能而言,這可以使它擁有數(shù)顆傳統(tǒng)DSP的功能。

基本特性

可設(shè)定式DSP最明顯的特性,就是能動(dòng)態(tài)地執(zhí)行最佳化作業(yè)。它以下列三種方式來強(qiáng)化運(yùn)算效能。

擴(kuò)充或縮小

藉由增加或減少DSP處理器里的可用資源,同一種應(yīng)用就可以具有不同等級(jí)的運(yùn)算效能。可擴(kuò)充性可以藉由增加單一DSP的資源,或者使用數(shù)個(gè)DSP核心來達(dá)成。不過,為了能完善地利用這些新增的資源,以提高運(yùn)算效能,還需要一個(gè)功能強(qiáng)大的編譯器來配合才行。如果沒有這種編譯器的協(xié)助,則可設(shè)定式DSP只會(huì)使應(yīng)用產(chǎn)品的開發(fā)時(shí)程增長(zhǎng)而已。

位置與混合

藉由改變資源的組成結(jié)構(gòu)(在不增加額外的資源之情況下),可設(shè)定式DSP可以依照不同的應(yīng)用需求,提供不同等級(jí)的效能。例如,暫存器的位置(必須防止它的資料爆滿溢出)會(huì)直接影響到程式運(yùn)算迴圈的效能。同樣地,功能強(qiáng)大的編譯器在這里也扮演著舉足輕重的角色。

自訂指令(custom instruction)

每一種應(yīng)用都具有一些特殊的運(yùn)算作業(yè)(數(shù)學(xué)的、工程的或其它),但并不是全部都適合DSP去執(zhí)行。因此,實(shí)際上,單一的DSP不可能包含所有的指令或運(yùn)算函式。而且,DSP廠商也無法事先就完全知道,所有客戶需要的全部運(yùn)算函式和指令。所以,為了提供彈性設(shè)計(jì)的方便性,可設(shè)定式DSP允許使用者可以將自己設(shè)計(jì)的指令置入此DSP中,以滿足客戶的需求。

除了提高運(yùn)算效能以外,可設(shè)定式DSP還必須支援功率和體積(成本)的最佳化。因?yàn)樾、功率、體積三者是技術(shù)產(chǎn)品成敗的關(guān)鍵,所以可設(shè)定式DSP必須在指定的效能等級(jí)中,以程式求出最合適的耗電功率和體積大小。

可設(shè)定式DSP可以用比較少的時(shí)脈週期和邏輯電路,得到與傳統(tǒng)DSP同等級(jí)的效能,這是靠自訂指令來完成的。在可程式化方面,此種DSP具有下列兩個(gè)重要的功能。

指令的執(zhí)行

和一般的處理器一樣,可設(shè)定式DSP讀取和執(zhí)行指令串流或目標(biāo)碼(object code),以實(shí)現(xiàn)特定的應(yīng)用功能。這些功能包含支援多重標(biāo)準(zhǔn)或多重格式,甚至包括未知的新功能,或數(shù)目更多的格式。藉由撰寫和執(zhí)行新的指令,它就可以支援許多種不同的應(yīng)用功能,這是傳統(tǒng)DSP望塵莫及的。

高階語言

使用高階語言(C與Java)來設(shè)計(jì)處理器的程式,具有右列的幾個(gè)優(yōu)點(diǎn):程式設(shè)計(jì)者的生產(chǎn)力會(huì)提高(因?yàn)槿菀鬃珜懞万?yàn)證)、設(shè)計(jì)彈性高(因?yàn)槿菀鬃兏┘熬S護(hù)性高(因?yàn)槿菀壮e(cuò)和修改)。這些優(yōu)點(diǎn)是低階語言(組合語言)所沒有的。如果不使用高階語言來開發(fā),則徒具可程式化功能的DSP就沒有價(jià)值了。不過,高階語言所帶來的便利性,其實(shí)是源自于高效率的編譯器與優(yōu)化程式(optimizer)。

基本單元

平行執(zhí)行單元(parallel execution unit)是可以視需要做增減調(diào)整的;也可以結(jié)合數(shù)個(gè)可設(shè)定式DSP核心,形成陣列的架構(gòu)一起工作。高速的可設(shè)定式DSP是「極長(zhǎng)指令字組(Very Long Instruction Word;VLIW)」的可程式化處理器。VLIW DSP的運(yùn)算速度是很驚人的,例如:TI于2004年2月推出的TMS320C64x DSP核心的時(shí)脈速率最高可達(dá)1GHz。

需要經(jīng)過數(shù)位訊號(hào)處理的應(yīng)用,其頻寬需求是非常高的。例如:簡(jiǎn)單的16與32位元的資料轉(zhuǎn)換,就需要進(jìn)行數(shù)百次的乘加運(yùn)算,再結(jié)合大量的資料流處理,因此,需要一個(gè)非常有效率的運(yùn)算平臺(tái)才行。

另一種可以使運(yùn)算速度加快的方法,就是盡可能同時(shí)執(zhí)行許多個(gè)運(yùn)算作業(yè)。VLIW處理器的功能正可以達(dá)到這個(gè)目的。因?yàn)槊恳粋(gè)指令字組(instruction word)包含了許多個(gè)時(shí)槽(time slot),因此編譯器可以在每一個(gè)週期內(nèi),指定許多個(gè)動(dòng)作,而且在每一個(gè)時(shí)槽里,執(zhí)行個(gè)別的動(dòng)作。其結(jié)果是,VLIW處理器就可以在一個(gè)週期內(nèi),完成數(shù)個(gè)運(yùn)算作業(yè)。VLIW處理器特別適合應(yīng)用于數(shù)位訊號(hào)處理工作,因?yàn)镈SP的工作都是規(guī)律而重復(fù)的,幾乎不需要控制碼。

高速可設(shè)定式DSP具有數(shù)個(gè)類似「算數(shù)邏輯單元(ALU)」的結(jié)構(gòu),稱作「計(jì)算單元(Computational Unit;CU)」,它們前后串接,并藉由「指令時(shí)槽(instruction slot)」控制每一個(gè)CU。當(dāng)兩個(gè)CU共用一個(gè)指令時(shí)槽時(shí),就發(fā)生了「重疊」現(xiàn)象,此時(shí)不能進(jìn)行「同時(shí)作業(yè)」。不過,高速可設(shè)定式DSP允許CU混合不同的指令,并利用指令時(shí)槽,決定每一個(gè)週期內(nèi)的指令型態(tài)與數(shù)量。

在VLIW架構(gòu)中,指令字組包含了許多個(gè)時(shí)槽,每一個(gè)時(shí)槽各控制一個(gè)運(yùn)算作業(yè)。因此,藉由改變時(shí)槽或CU的數(shù)量,就可以增加或減少每週期所執(zhí)行的運(yùn)算數(shù)量。當(dāng)增加CU后,會(huì)使可用的混合資源改變,好讓編譯器能對(duì)平行作業(yè)(parallel operation)做出最好的排序(schedule)!缚稍O(shè)定式」之名就來自于此。

典型的CU包含:算數(shù)運(yùn)算單元、乘加單元(MAC)、位移單元、計(jì)數(shù)器和其它指令處理指元。資料路徑(data path)大小一般是16或32位元,或兩者兼具;採(cǎi)固點(diǎn)或浮點(diǎn)運(yùn)算。大部份的CU還支援「單指令多資料(Single Instruction Multiple Data;SIMD)」運(yùn)算功能,可以處理位元組(byte)或半字組(half word)的資料,例如將平面空間的圓轉(zhuǎn)換成3D空間的圓(由多個(gè)三角形構(gòu)成)。

同樣的,記憶介面單元(Memory Interface Unit;MIU)也被指令時(shí)槽組織起來,并透過指令時(shí)槽決定讀取的時(shí)機(jī)。MIU支援資料存取和位址(address)生成。高速可設(shè)定式DSP支援16或32位元的位址空間(address space)。因?yàn)镸IU和CU一樣,都受指令時(shí)槽的控制,因此可以藉由改變時(shí)槽的數(shù)目,來變更可用的MIU數(shù)量。

和傳統(tǒng)處理器不同的是,可設(shè)定式DSP的暫存器(register)分散于各地,它不使用集中式的單一「暫存檔案(register file)」來管理。這會(huì)使得運(yùn)算結(jié)果的位置,比較靠近產(chǎn)生此結(jié)果的地方和應(yīng)用此結(jié)果的地方。同時(shí),這也讓編譯器能更靈活地將資料配置到儲(chǔ)存的位置。這觀念類似RAM的隨機(jī)存取動(dòng)作。

「資料通訊區(qū)塊(data communication block)」可以讓資料在不同的儲(chǔ)存位址之間移動(dòng),以及輸入到CU里。它包含了數(shù)個(gè)具有多工(MUX)功能的匯流排,并且受編譯器的控制。(圖一)是高速可設(shè)定式DSP的簡(jiǎn)易架構(gòu)。

 


 

 

編譯器

就大多數(shù)的應(yīng)用而言,除了要追求快速的運(yùn)算能力以外,要如何才能有效地儲(chǔ)存暫時(shí)性的資料,也是一個(gè)令人頭痛的難題?稍O(shè)定式DSP可以在不同位置新增、移除,甚至重組資料和位址暫存器,這可以讓編譯器充份地利用暫時(shí)性的儲(chǔ)存資源(譬如RAM、暫存器)。

因?yàn)楦咚倏稍O(shè)定式DSP是屬于VLIW架構(gòu),它允許加入自訂的CU。這種CU稱作「設(shè)計(jì)者定義的計(jì)算單元(Designer Defined Computational Unit;DDCU)」,包括自訂的指令,并可以加到編譯器的可用字匯里去,成為程式語言的一部份。

不過,彈性、平行運(yùn)算與可設(shè)定性,是以高成本構(gòu)筑而成的。這除了硬體的成本以外,另一個(gè)成本就是編譯器的成本。編譯器負(fù)責(zé)將高階程式碼轉(zhuǎn)譯成指令,并傳送給可設(shè)定式DSP執(zhí)行,這個(gè)復(fù)雜的過程就是成本所在。

這種編譯器必須是VLIW最佳化編譯器,可以將連續(xù)的C程式碼轉(zhuǎn)換成VLIW指令;并盡可能在每一個(gè)週期內(nèi),執(zhí)行最多的運(yùn)算作業(yè)。它能察覺可設(shè)定式DSP的設(shè)定變更(新增或刪除),甚至能將使用者自訂的DDCU,轉(zhuǎn)譯成相對(duì)應(yīng)的指令。

此編譯器能針對(duì)指定的應(yīng)用類別和DSP核心之不同,將C程式碼映射(map)成相對(duì)應(yīng)的目標(biāo)碼。這個(gè)映射作用是全域的(global),且包括許多最佳化和轉(zhuǎn)換作業(yè),其目的就是要使原始程式碼能和DSP更加適配。

因?yàn)镈SP在每一個(gè)工作週期內(nèi),能執(zhí)行的工作量是已知的,所以編譯器的任務(wù)就是要在每一個(gè)週期內(nèi),盡可能將最多的有用工作量賦予DSP。不過有時(shí)候,部份應(yīng)用程式并無法妥善地被映射到DSP上,這時(shí)編譯器會(huì)產(chǎn)生訊息,指出那些尚待改善的地方。這些訊息包含:

●消耗過多運(yùn)算週期的程式碼:有一部份的程式碼會(huì)消耗掉很多的運(yùn)算週期(動(dòng)態(tài)地),因此必須多加注意;
●利用率偏低的程式碼:有一部份的程式碼會(huì)使編譯器無法妥善利用DSP;
●沒有善加利用資源:有些DSP資源未被充份利用;有些則是多余的;有些資源可以利用其它方式進(jìn)行重整,以獲得平行運(yùn)算的最大效益,或節(jié)省更多的空間和時(shí)間;
●缺乏資源:如果能增加資源(如暫存器、指令等),就可以提高應(yīng)用程式的效能。

利用上述的編譯結(jié)果和描述,使用者可以針對(duì)程式碼和組態(tài)進(jìn)行修改。程式的修改可能包括:簡(jiǎn)單迴路的重寫、改變資料型態(tài)、或改變語法,這些可能使編譯器的作業(yè)更加簡(jiǎn)單和明確。此外,使用者也可以改變可設(shè)定式DSP的組態(tài),藉由增加或移除資源,或以許多種不同的方式重組資源,或可以添加能提高應(yīng)用程式執(zhí)行效率的自訂指令。

 


 

產(chǎn)品開發(fā)流程

使用可設(shè)定式DSP來開發(fā)產(chǎn)品時(shí),如果不採(cǎi)用一套完整的開發(fā)流程來遵循的話,則可設(shè)定的、可擴(kuò)充的目標(biāo)可能就很難達(dá)到。此流程見(圖二)。

在圖二中,進(jìn)行數(shù)位訊號(hào)處理的應(yīng)用程式可以說是主角。它以C或Java等高階語言寫成,并在主機(jī)上經(jīng)過驗(yàn)證與測(cè)試。除了要完成功能性驗(yàn)證以外,效能、成本、體積、耗電量也都要做取捨和折衷,以達(dá)到最完善的境界。

應(yīng)用和最終產(chǎn)品的不同,也就是開發(fā)流程的起點(diǎn),也可能會(huì)對(duì)開發(fā)的目標(biāo)產(chǎn)生影響。例如:手提式裝置需要低功率,但是它的應(yīng)用程式需要500~1000 MIPS的處理速率,在這種情況下,就要以平行處理能力較差、具單一DSP核心的處理器為開發(fā)目標(biāo)。但若是廣播視訊應(yīng)用程式要實(shí)現(xiàn)高解析度的畫面,那就要以高階、具兩個(gè)DSP核心的處理器為開發(fā)目標(biāo)。
 


結(jié)語

「軟硬體同時(shí)開發(fā)」是加速SoC設(shè)計(jì)的重要方法,同樣也是應(yīng)用高速可設(shè)定式DSP開發(fā)新產(chǎn)品時(shí),必須採(cǎi)用的方法。OEM/ODM廠商在時(shí)間和成本的壓力下,最后勢(shì)必會(huì)採(cǎi)用這種新技術(shù)。不過,若大多數(shù)廠商都使用同一款DSP處理器來開發(fā)產(chǎn)品,很可能無法形成產(chǎn)品的市場(chǎng)區(qū)隔,再次陷入削價(jià)競(jìng)爭(zhēng)的窘境。(原載于零組件雜志第158期)

  • 上一篇: 通用DSP的RISC核心開發(fā)單處理器VoIP
  • 下一篇: DSP微控制器技術(shù)介紹
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1