摘要:本文介紹了eXpressDSP軟件的關(guān)鍵組件TMS320 數(shù)字信號(hào)處理器算法標(biāo)準(zhǔn),。作為eXpressDSP軟
件關(guān)鍵組件的TMS320 數(shù)字信號(hào)處理器算法標(biāo)準(zhǔn)(XDAIS) 定義了一系列編程準(zhǔn)則和建議,,標(biāo)準(zhǔn)化了算法和系統(tǒng)軟件的接口,使得算法使用者的系統(tǒng)集成任務(wù)大為減輕,,產(chǎn)品開(kāi)發(fā)周期相應(yīng)大為縮短,;另一方面,由于有標(biāo)準(zhǔn)接口,,算法提供商可以將自己的算法實(shí)現(xiàn)很好地封裝起來(lái)從而保護(hù)自己的知識(shí)產(chǎn)權(quán),,接口標(biāo)準(zhǔn)又使得算法提供商有了更廣泛的客戶(hù)群。
Abstract: The paper introduces the two key components of eXpressDSP: TMS320 DSP a Standard & Reference Frameworks,。 With a family of rules and guidelines, TMS320 DSP algorithm Standard, a,。k。a,。 XDAIS, decreases dramatically system integration pressure, shorten system R& D period, also provides algorithm vendors more secure encapsulation and more widely potential deployment,。
圖一 eXpressDSP 軟件及開(kāi)發(fā)工具
隨著技術(shù)的發(fā)展,現(xiàn)今DSP的應(yīng)用開(kāi)發(fā)已發(fā)生了很大的改變,。例如硬件技術(shù)的發(fā)展使得DSP在保持兼容性的同時(shí)使得性能不斷提高,,功耗不斷下降,片上集成度大幅增加,,并且這種趨勢(shì)并沒(méi)有減慢跡象,;DSP應(yīng)用復(fù)雜度也在大幅提高,原先幾百行的匯編軟件程序已被幾十萬(wàn)行甚至百萬(wàn)行的C程序替代,;市場(chǎng)的壓力要求新產(chǎn)品的開(kāi)發(fā)周期越來(lái)越短,。這些因素使得開(kāi)發(fā)不再是一個(gè)人而是幾個(gè)人的團(tuán)隊(duì)合作,并要求軟件的結(jié)構(gòu)化,,可移植性,,可重用性都很強(qiáng),都使得軟件已成為DSP方案中最為重要的一環(huán),, 一個(gè)開(kāi)發(fā)小組可能有80%的工程師是軟件人員,,一個(gè)項(xiàng)目的成敗也往往由軟件實(shí)現(xiàn)的好壞決定,。
德州儀器,作為業(yè)屆領(lǐng)先的數(shù)字信號(hào)處理器供應(yīng)商,,提出了eXpressDSP的概念來(lái)應(yīng)對(duì)這些對(duì)DSP軟件的挑戰(zhàn),。圖一繪出了它的重點(diǎn),eXpressDSP軟件及開(kāi)發(fā)工具,。有了這些軟件和開(kāi)發(fā)工具,,程序員將花更多的時(shí)間在革新的應(yīng)用上而不是重復(fù)的開(kāi)發(fā)和集成工作上。具體來(lái)講,,eXpressDSP包括:集成開(kāi)發(fā)環(huán)境(代碼 Composer Studio),;eXpressDSP軟件(SP/BIOS,TMS320 DSP算法標(biāo)準(zhǔn),,參考框架),;以及第三發(fā)合作伙伴網(wǎng)絡(luò)。本文主要介紹TMS320 DSP算法標(biāo)準(zhǔn),。
TMS320 DSP算法標(biāo)準(zhǔn)
TMS320 DSP算法標(biāo)準(zhǔn)也稱(chēng)XDAIS,,在介紹具體的算法標(biāo)準(zhǔn)之前有必要在重新檢查一下圖一以理解TMS320 DSP算法標(biāo)準(zhǔn)/XDAIS (接下來(lái)的文章講不區(qū)分兩者)在eXpressDSP軟件結(jié)構(gòu)中的位置:參見(jiàn)圖一的右邊DSP目標(biāo)板,可以看到直接跟硬件接口的是DSP/BIOS,,而最上層是客戶(hù)的應(yīng)用程序,。算法既不直接訪(fǎng)問(wèn)DSP/BIOS也不直接被客戶(hù)應(yīng)用程序調(diào)用,而是通過(guò)一個(gè)框架(在這里是參考框架Reference Frameworks)與它們打交道,。XDAIS就是用于隔離框架和算法,,位于它們之間。從根本上講,,標(biāo)準(zhǔn)的核心專(zhuān)注于將DSP資源的管理從算法本身抽象出來(lái),。這些資源包括存儲(chǔ)器的使用和分配,并伴隨著輸入輸出的控制比如DMA通道的使用,。也有可能是關(guān)鍵控制寄存器的使用,。
下面我們具體看一下。
具體定義:準(zhǔn)則和建議
TMS320 DSP算法標(biāo)準(zhǔn)有一系列準(zhǔn)則(共44條)和建議(共16條),,分為以下五部分(具體準(zhǔn)則和建議請(qǐng)參考文獻(xiàn)[1]):
1,。通用編程規(guī)范,包括準(zhǔn)則1-6和建議1-2,。 該部分適用于所有DSP上任何應(yīng)用的算法,。
2。算法模塊規(guī)范,,包括準(zhǔn)則7-18和建議3-5,。為了讓不同的算法在不修改源代碼的前提下可以集成到同一個(gè)應(yīng)用,該部分要求充分使用面向?qū)ο蠛突诮M件的編程思想,,規(guī)范包括命名約定,,統(tǒng)一的算法初始化方式和統(tǒng)一的數(shù)據(jù)存儲(chǔ)器管理機(jī)制,。該部分規(guī)范認(rèn)為XDAIS應(yīng)用的基礎(chǔ)組件是模塊,XDAIS算法就是那些實(shí)現(xiàn)了抽象接口IALG的模塊,。IALG將DSP存儲(chǔ)器管理從算法中抽象出來(lái),。算法必須實(shí)現(xiàn)IALG接口,,框架通過(guò)IALG來(lái)了解并分配算法對(duì)存儲(chǔ)器的需求,。該部分規(guī)范應(yīng)用于所有XDAIS算法。
3,。算法性能描述規(guī)范,,包括準(zhǔn)則19-24和建議6-10。標(biāo)準(zhǔn)兼容的算法只會(huì)消耗MIPS和存儲(chǔ)器,。所有I/O, 外設(shè)控制, 設(shè)備管理和調(diào)度都是由應(yīng)用程序完成,。因此,算法有必要描述數(shù)據(jù)空間需求和最壞執(zhí)行時(shí)間,。另外,,如 果CPU處于中斷禁止?fàn)顟B(tài),調(diào)度不可能拿到CPU控制權(quán),,所以算法也需要盡量減少中斷禁止時(shí)間,,并告知最壞情形。該部分規(guī)范同樣應(yīng)用于所有XDAIS算法,。
4,。特定DSP規(guī)范,包括準(zhǔn)則25-34和建議11-15,。由于算法經(jīng)常會(huì)用匯編完成以充分發(fā)揮DSP的性能,,這就往往意味著算法對(duì)DSP的狀態(tài)會(huì)有特殊的要求,該部分規(guī)范則針對(duì)此種情況,。
5,。DMA資源使用規(guī)范,包括IDMA準(zhǔn)則1-6和IDMA建議1,。該部分規(guī)范是針對(duì)準(zhǔn)則6關(guān)于DMA的應(yīng)用,。由于算法被要求為單純的數(shù)據(jù)轉(zhuǎn)換器,沒(méi)有權(quán)力訪(fǎng)問(wèn)和使用片上外設(shè)包括DMA,,而是由框架來(lái)控制DMA的運(yùn)行,。為了讓算法可以間接使用DMA資源,XDAIS將算法對(duì)DMA的管理需求也抽像成一個(gè)接口IDMA,,類(lèi)似與IALG,。框架通過(guò)調(diào)用IDMA接口函數(shù)來(lái)了解算法對(duì)DMA資源的需求,;另一方面,,算法如果需要知道DMA運(yùn)行情況,,也可以調(diào)用框架實(shí)現(xiàn)的ACPY。
對(duì)誰(shuí)需要
XDAIS通過(guò)一系列編程準(zhǔn)則和建議,,標(biāo)準(zhǔn)化了算法和系統(tǒng)框架軟件的接口,,使得算法使用者的系統(tǒng)集成任務(wù)大為減輕,產(chǎn)品開(kāi)發(fā)周期相應(yīng)大為縮短,;另一方面,,由于有標(biāo)準(zhǔn)接口,算法提供商可以將自己的算法實(shí)現(xiàn)很好地封裝起來(lái)
從而保護(hù)自己的知識(shí)產(chǎn)權(quán),,接口標(biāo)準(zhǔn)又使得算法提供商有了更廣泛的客戶(hù)群,。同時(shí),XDAIS貫穿著結(jié)構(gòu)化編程的思想,,提高了程序的重復(fù)利用性,,對(duì)算法的開(kāi)發(fā)者和使用者都有益處。實(shí)際上,,TI在開(kāi)始制定XDAIS時(shí)充分征詢(xún)了客戶(hù)和第三方算法開(kāi)發(fā)者的意見(jiàn)并貫徹到規(guī)范中去,,這也使得標(biāo)準(zhǔn)跟符合DSP軟件開(kāi)發(fā)的需求。
這些已從第三方算法開(kāi)發(fā)商的熱烈支持可以看出,,到目前為止已有超過(guò)90家第三方600多個(gè)算法經(jīng)過(guò)了XDAIS的認(rèn)證,,可以在他們的產(chǎn)品中使用圖二這個(gè)標(biāo)識(shí)。
圖二 eXpressDSP 認(rèn)證標(biāo)志
如何開(kāi)始
一個(gè)是使用CCS中的TMS320 DSP Algorithm Standard Developers Kit,。這個(gè)套件里包含所有開(kāi)發(fā)標(biāo)準(zhǔn)算法或使用標(biāo)準(zhǔn)算法需要的內(nèi)容,,對(duì)系統(tǒng)集成人員,應(yīng)用程序編寫(xiě)者或算法生產(chǎn)者都有用,。它包含一系列文檔,,例子。
另一個(gè)是參考框架,,一個(gè)完備的基于DSP/BIOS 和XDAIS的實(shí)例程序,。
參考文獻(xiàn)
[1] TMS320 DSP Algorithm Standard Rules and Guidelines, spru352.pdf