如何合理地安排數(shù)據(jù)流程,使之在DSP的各執(zhí)行單元間無沖突地順利執(zhí)行,仍是DSP開發(fā)人員面臨的一個非常重要的問題。由于設(shè)計的復(fù)雜性,將算法映射到DSP具體目標硬件上,尚不能采用高層次編程語言,必須使用匯編語言,并對器件的并行執(zhí)行機制有十分清楚的了解。而這種局限于匯編語言的編程設(shè)計,正是提高軟件開發(fā)效率的瓶頸。 90年代早期,嵌入式系統(tǒng)和桌面應(yīng)用的開發(fā)人員曾面臨相似的問題。當時為提高設(shè)計效率而采用的方法現(xiàn)在仍可借鑒使用。一個短期的解決方案是由編程人員自己解決這一問題。但是,編程人員相對短缺,而且DSP領(lǐng)域編程人員更為緊缺。在DSP開發(fā)時,可以考慮采用非DSP專業(yè)的編程人員,但這些人員一般傾向于使用桌面和嵌入式應(yīng)用的開發(fā)工具。而DSP開發(fā)領(lǐng)域還沒有類似的工具,這就阻礙了DSP應(yīng)用的進一步推廣。
開發(fā)相似,實質(zhì)不同
即使采用了上述的開發(fā)工具,DSP還具有不同于RISC和CISC的獨特特征。DSP處理能力不僅靠越來越快的時鐘速率來實現(xiàn),而且還依賴于并行處理結(jié)構(gòu)的進一步采用。早期的DSP僅含有單個多路器和累加器,由哈佛結(jié)構(gòu)以及一些控制寄存器環(huán)路組成。而目前的DSP處理器通常采用多個執(zhí)行單元,每個執(zhí)行單元都由算數(shù)邏輯運算單元(ALU),一個多路器和累加器組成,而且這些執(zhí)行單元可以并行執(zhí)行。
美國I.C.Com 公司在與西門子半導(dǎo)體公司的合作中,開發(fā)出了Carmel DSP,它通過一個非常類似C的匯編語言來解決DSP開發(fā)面臨的上述瓶頸問題。
I.C.Com公司VLSI設(shè)計副總裁Amnon Rom說:“我們的目的是使我們的匯編語言Carmel盡可能地接近C語言。對DSP開發(fā)來說,減少開發(fā)過程中從浮點算法轉(zhuǎn)換到固定點算法,然后再到匯編語言程序所需的時間非常重要。通過將匯編語言與之一一對應(yīng),從而減去了從C語言到匯編語言的開發(fā)步驟。”
友好易用的硬件系統(tǒng)
美國ZSP公司采用易于編譯的硬件系統(tǒng)來解決DSP開發(fā)中面臨的這一問題。其硬件系統(tǒng)包含一個正交指令集,一個透 明狀態(tài)機和一個流水線控制單元。其中流水線控制單元是該結(jié)構(gòu)的關(guān)鍵,它代替編程人員對DSP中的并行執(zhí)行單元進行作業(yè)安排控制。通過分配指令到硬件、解決數(shù)據(jù)和資源間的依存問題,從而將指令分組分配到DSP的各個并行執(zhí)行單元。這樣減去了編程人員和編譯器安排分配并行任務(wù)的負擔。
ZSP公司提供一套完整的軟件開發(fā)工具,讓編程人員管理復(fù)雜的DSP編程任務(wù)。可以通過命令行直接調(diào)用這一工具,或者通過使用Premia的Codewright編輯器。Codewright是一個開發(fā)工作平臺,通過它可啟動其他應(yīng)用程序。ZSP就是采用該平臺來管理其Gnu編譯器、匯編器、鏈接器、仿真器以及調(diào)試工具。
Codewright開發(fā)環(huán)境進一步擴展,包括了設(shè)計項目目錄管理功能,對項目可執(zhí)行程序的生成進行參數(shù)調(diào)整。針對基本的DSP軟件開發(fā),ZSP公司提供了一個完整的解決方案。
美國TI公司認為DSP未來的發(fā)展在于軟件,并已經(jīng)開始著手兩項開發(fā)。首先,它將Code Composer IDE的功能與DSP/BIOS和RTDX驅(qū)動程序進行集成,組成綜合開發(fā)環(huán)境Code Composer Studio。這是TI將其收購的GoDSP公司Code Composer DSP調(diào)試工具與Spectron的低檔DSP操作系統(tǒng)進行統(tǒng)一集成的結(jié)果。其次,它建立了DSP軟件模塊的標準接口,以便更好地重新利用現(xiàn)有的實現(xiàn)了的DSP算法。
TI公司認為,通過將一個匯編語言優(yōu)化器集成到其Code Composer開發(fā)環(huán)境,從而減少了對匯編語言的需要。據(jù)稱該工具產(chǎn)生的編碼的效率可達到手工調(diào)試的匯編語言的80。
對DSP開發(fā),每個MIP和存儲器字非常珍貴,對這一資源的任何浪費都會影響項目的進展,使之難以完成。但為了提高軟件開發(fā)效率,也必須犧牲一些MIP和存儲器為了更好地開發(fā)
對DSP開發(fā),每個MIP和存儲器字(Word)非常珍貴,對這一資源的任何浪費都會影響項目的進展,使之難以完成。但為了提高軟件開發(fā)效率,也必須犧牲一些MIP和存儲器。這些MIP和存儲器資源是用在DSP內(nèi)訪問程序和數(shù)據(jù)轉(zhuǎn)換方面,訪問程序?qū)SP算法的內(nèi)部表達方式轉(zhuǎn)換成共用的方式,以便進行通信。
TI公司提出的軟件標準包含兩個方面,一是處理目標硬件與主機的接口,另一方面處理內(nèi)部的API(應(yīng)用程序接口)集,以提供DSP軟件模塊間的通信。在主機一側(cè),是Active X程序集,用來處理與目標硬件間的通信,并模擬目標器件的行為。這里主機接口包括以下四個主組:項目服務(wù)器,編輯服務(wù)器,圖象服務(wù)器和調(diào)試服務(wù)器。其中調(diào)試服務(wù)器用來建立和維持與目標硬件間的通信。在目標硬件一側(cè),鏈接依賴于RTDX和DSP BIOS。
Blue Wave Systems的產(chǎn)品經(jīng)理Nick Keeling對Code Composer Studio表示很大的興趣,他說,通過這一產(chǎn)品,可以看到DSP軟件開發(fā)步入成熟。這一進程是TI與其第三方DSP板級開發(fā)商共同合作的結(jié)果,從Code Composer Studio開發(fā)的初期,第三方板級開發(fā)商就積極地參與了進來。而這一參與使第三方廠商有能力對Code Composer Studio的功能開展進一步開發(fā)。
Blue Wave Systems公司正對Code Composer Studio進行改進,使它能自動識別與之相連的任何電路板,包括讀取電路板上的配置信息,以及識別安裝在電路板上的驅(qū)動程序類型。該公司可提供這種電路板和改進后的具備自動識別功能的Code Composer Studio開發(fā)環(huán)境。
Analog Devices公司的Visual DSP工具集與TI公司的Code Composer類似,但不包括主機與目標硬件的鏈接。該工具支持其全部SHARC DSP系列產(chǎn)品。
Visual DSP是集成了IDE和調(diào)試器的一個項目管理工具。原碼調(diào)試工作可在一個C語言和匯編語言的混合環(huán)境中完成。同時調(diào)試工作可通過一個硬件仿真器在主機上進行,也可直接在目標硬件上實現(xiàn)。
目標器件接口數(shù)據(jù)流可通過中斷的隨機組合來仿真。并可在指定的地址范圍內(nèi)和地址范圍外設(shè)置觀測點進行檢查。這種功能使開發(fā)人員能更好地處理堆棧資源的下溢和上溢。
DSP:數(shù)字化時代的驕子
在即將告別20世紀 、步入21世紀的世紀之交的時刻,讓我們首先回顧一下國際上電子工業(yè)最近30年來發(fā)展的歷程: 70年代的電子工業(yè)以消費電子為主,代表性的產(chǎn)品是錄像機、攝像機、彩電,主要的生產(chǎn)廠商是日本的Sony、JVC、荷蘭的Philips等家電廠商,依靠的是大規(guī)模生產(chǎn)和優(yōu)秀的質(zhì)量。80年代是計算機時代,代表性的產(chǎn)品是PC機、硬盤驅(qū)動器、打印機,主要生產(chǎn)廠商是美國的Intel、IBM、Microsoft、Compaq等公司。90年代起是信息時代,代表性的產(chǎn)品是個人通信網(wǎng)、網(wǎng)絡(luò)接入設(shè)備、數(shù)字化消費類電子產(chǎn)品,主要生產(chǎn)廠商目前尚難確定,處于戰(zhàn)國七雄爭霸時代,主要獲勝的戰(zhàn)略之一是以DSP為核心的技術(shù)及其創(chuàng)新產(chǎn)品。
DSP可以代表數(shù)字信號處理技術(shù),也可以代表數(shù)字信號處理器,其實兩者是不可分割的,前者是理論上的技術(shù),要通過后者變成實際產(chǎn)品。兩者結(jié)合起來就成為解決某一實際問題和實現(xiàn)某一方案的手段——數(shù)字信號處理解決方案(DSPS)。
DSPS正在改變我們生活方式的各個方面,例如人們之間的聯(lián)系方式正由電話轉(zhuǎn)向個人通信方式。人類從電話發(fā)明到5千萬電話用戶數(shù)花了70年時間,模擬蜂窩電話達到5千萬用戶花了14年,而數(shù)字蜂窩電話(GSM是其中之一)只花了5年就達到相同的用戶數(shù)。
再如我們的娛樂方式,VCD、DVD正替代VHS錄像機,數(shù)字電視機開始替代模擬的NTSC或PAL制電視機。家庭影院主要由數(shù)字化A/V設(shè)備組成,DSP不僅給你環(huán)繞聲,還為你虛擬各種現(xiàn)場效果。
DSP日益進入人們的生活,所以DSP芯片的年增長率超過50,在最近幾年整個半導(dǎo)體產(chǎn)量下降的情況下,唯有DSP芯片保持高速增長的勢頭。
DSP的發(fā)展面臨的挑戰(zhàn)是CPU速度的急速增快和價格的持續(xù)下降,使DSP制造商面臨兩種選擇,一種是加快DSP的發(fā)展,另一種是退出競爭。看來主要的DSP制造商都選擇了第一種路線,尤其是占全球DSP銷售份額45的美國TI公司在對公司的產(chǎn)品進行結(jié)構(gòu)性調(diào)整的基礎(chǔ)上,以多元化投資轉(zhuǎn)到單一化投資,確立以DSPS為主要發(fā)展的產(chǎn)品,即集所有技術(shù)、所有產(chǎn)品于DSP。
TI公司在原來已被人們熟知的TMS320C1X、TMS320C25、TMS320C3X/4X、TMS320C5X、TMS320C8X的基礎(chǔ)上發(fā)展了三種新的DSP系列,它們是:TMS320C2000、TMS320C5000、TMS320C6000系列,成為當前和未來相當長時期內(nèi)TI DSP的主流產(chǎn)品,前面提到的那些老型號產(chǎn)品均將被這三種新系列產(chǎn)品替代。從今年開始,’C1X、’C25、C5X、C8X的價格每年都會上調(diào),今年提升了10。而’C2000、’C5000和’C6000三種新系列芯片的價格會逐年作較大幅度的下調(diào),因此無論從價格還是技術(shù)支持或是從產(chǎn)品開發(fā)的連續(xù)性出發(fā),建議大家盡量采用新的DSP系列,在進行教學、培訓時也應(yīng)介紹這三種新的系列。
三種新型TMS320 DSP系列的特點
1.TMS320C2000——作控制用的最佳DSP,可以替代老的’C1X和’C2X。現(xiàn)在有趨勢集中在以下兩個方向上:
(1)C20X 16位定點DSP,速度為20MIPS,主要用途是電話、數(shù)字相機、售貨機等,其中:’F206帶有閃速存儲器,售價從5~17美元。
(2)C24X 16位定點DSP,速度為20MIPS,用作數(shù)字馬達控制、工業(yè)自動化、電力轉(zhuǎn)換系統(tǒng)、空調(diào)等,售價從4~18美元。
2.TMS320C5000——低功耗高性能DSP,16位定點,速度40~200MIPS。主要用途是有線和無線通信、IP、便攜式信息系統(tǒng)、尋呼機、助聽器等。價格5~75美元。
目前,C5000系列中又有三種新成員,一種是’C5402,這是廉價型的DSP,目標價格是每片5美元(50K批量),速度保持100MIPS,片內(nèi)存儲空間稍小一些,RAM為16K、ROM為4K。主要應(yīng)用對象是無線Modem、新一代PDA、網(wǎng)絡(luò)電話和其它電話系統(tǒng)以及消費類電子產(chǎn)品。
第二種是C |