|
|
| <!--插入廣告JS代碼--> |
摘 要:介紹了利用Matlab中Matlab Link for CCS Development Tools工具對DSP進行系統(tǒng)級設(shè)計的方法。最后給出了一個設(shè)計實例。
關(guān)鍵詞:DSP;Matlab;TI;CCS;IDE;TP312
傳統(tǒng)的DSP應用系統(tǒng)設(shè)計流程分為2個部分:開發(fā)設(shè)計和產(chǎn)品實現(xiàn)。在開發(fā)設(shè)計 部分完成 方案設(shè)計和算法設(shè)計與驗證,一般用Matlab語言進行仿真,當仿真結(jié)果滿意時,再進入產(chǎn)品的實現(xiàn)階段。將開發(fā)設(shè)計階段的算法用C/C++或者匯編語言實現(xiàn),在硬件的DSP目標板上調(diào)試。因此,需要將開發(fā)工具CCS把目標DSP程序運行的中間結(jié)果保存到PC機的硬盤上,然后調(diào)到Matlab工作空間,與Matlab算法的中間結(jié)果進行比較,以發(fā)現(xiàn)DSP程序中由設(shè)計或精度導致的結(jié)果偏差。如此過程反復進行,非常不便。
為了解決這個問題,出現(xiàn)了系統(tǒng)級設(shè)計方法的構(gòu)想。系統(tǒng)級設(shè)計方法的核心是將算法設(shè)計 和系統(tǒng)級設(shè)計仿真在統(tǒng)一的開發(fā)環(huán)境中進行,從而有效地將開發(fā)流程的2個部分結(jié)合在一起。進行系統(tǒng)級設(shè)計需要一個統(tǒng)一的開發(fā)環(huán)境,且在該開發(fā)環(huán)境中可以對系統(tǒng)結(jié)構(gòu)、算法進行描述,還能夠?qū)ο到y(tǒng)不同層次、不同組件和不同數(shù)據(jù)類型進行建模。Matlab Link for CC S Development Tools就是為了完成系統(tǒng)級設(shè)計而出現(xiàn)的。
1Matlab Link for CCS Development Tools簡介
Mathworks公司和TI公司聯(lián)合開發(fā)的Matlab Link for CCS Development Tools(CCS Link) 提供了Matlab和CCS的接口,即把Matlab和TI CCS及目標DSP連接起來。利用此工具可以像操作Matlab變量一樣來操作TI DSP的存儲器或寄存器,即整個目標DSP對于Matlab好像是透明的,開發(fā)人員在Matlab環(huán)境中就可以完成對CCS的操作。Matlab Link for CCS Dev elopment Tools可以支持CCS能夠識別的任何目標板,包括TI公司的DSP,EVM板和用戶自己開發(fā)的目標DSP(C2000,C5000,C6000)板。
CCS Link主要特點總結(jié)如下:
。1) Matlab函數(shù)可以自動完成調(diào)試、數(shù)據(jù)傳遞和驗證。
(2)在Matlab和DSP之間實時傳遞數(shù)據(jù),而不用停在DSP中程序的執(zhí)行。
(3)支持XDS510/XDS560仿真器,可以高速調(diào)試硬件DSP目標板。
。4)提供嵌入式對象,可以訪問C/C++變量和數(shù)據(jù)。
。5)對測試、驗證和可視化DSP代碼提供幫助。
。6)擴展了Matlab和eXpressDSP工具的調(diào)試能力。
。7)符合TI eXpressDSP標準。
2CCS Link面向 TI DSP的系統(tǒng)級設(shè)計方法
CCS Link向用戶提供了三種接口如圖1所示。
2.1Link for CCS IDE
Link for CCS IDE接口實現(xiàn)了CCS IDE和Matlab之間的連接,允許用戶在Matlab命令窗口下載運行CCS IDE中的程序,與目標內(nèi)存之間(非實時地)交換數(shù)據(jù),檢測處理器的狀態(tài),停止或者啟動程序在DSP中的運行。
Link for CCS IDE的優(yōu)點:
(1)用戶可以利用Matlab強大的數(shù)據(jù)分析和可視化功能,節(jié)省設(shè)計和調(diào)試程序的時間。
(2)可以編寫用于調(diào)試數(shù)字信號處理程序的Matlab語言批處理腳本,實現(xiàn)調(diào)試和分析的自動化。
(3)支持TI的C5000/6000系列DSP。
2.2Link for RTDX
DSP的實時數(shù)據(jù)交換(RTDX)允許系統(tǒng)工程師在Host computer和Target之間進行實時的數(shù)據(jù) 傳輸且不用考慮Target程序。這里的Link for RTDX接口提供了Matlab和支持RTDX的TI DS P上運行的程序之間實時交換數(shù)據(jù)的一種方式。利用此連接對象,可以打開、使能、關(guān)閉或禁止DSP的RTDX通道,利用此通道可以實時的向硬件目標DSP發(fā)送和取出數(shù)據(jù),而不用停止DS P口正在執(zhí)行的程序。Link for RTDX實現(xiàn)了對實時數(shù)據(jù)的自動化的高級分析和可視化,實現(xiàn)了對復雜DSP程序的有效驗證。
例如把原始數(shù)據(jù)發(fā)送給程序進行處理,并把數(shù)據(jù)結(jié)果取回到Matlab空間中進行分析。RTDX 連接對象實際上是CCS連接對象的一個子類,在創(chuàng)建CCS連接對象的同時創(chuàng)建RTDX連接對象,他們不能分別構(gòu)建。
2.3嵌入式對象
在Matlab環(huán)境中創(chuàng)建一個可以代表嵌入目標C程序中的變量的對象。利用嵌入式對象可以直接訪問嵌入在目標DSP的存儲器和寄存器中的變量,即把目標C程序中的變量作為Matlab的一個變量對待。在Matlab中收集DSP程序中的信息,轉(zhuǎn)變數(shù)據(jù)類型,創(chuàng)建函數(shù)聲明,改變變量值,并把信息返回到DSP程序中,所有這些操作都在Matlab環(huán)境下完成。
3CCS IDE連接對象應用舉例
CCS IDE連接對象提供Matlab與CCS IDE和目標DSP的連接。利用此連接可以在Matlab下控制和操作DSP中的應用程序,利用Matlab中強大計算分析和可視化工具來分析和對比目標程序運行中的結(jié)果,大大縮短嵌入式應用程序的開發(fā)調(diào)試周期。
具體應用步驟如下:
(1)選擇DSP型號
根據(jù)ccsfoardinfo函數(shù)列出安裝在主機上的目標板及其DSP信息,從中選擇需要的型號。
此處選擇0號DSP:
Boardnum=0; procmum=0;
(2)創(chuàng)建CCS IDE連接對象
cc=ccsdsp(′boardnum′,boardmun,′procnum′,
xu_6x11.pjt是CCSLink提供的一個工程文件。
編譯鏈接CCS IDE中當前的工程文件,生成目標DSP可執(zhí)行文件:

(4)在Matlab環(huán)境下對CCS IDE連接對象進行操作
利用CCS Link中的read和write函數(shù)來訪問2個全局數(shù)組:

從這個例子中可以看到在Matlab環(huán)境下操作DSP中的變量或者寄存器是很方便的。這樣就可以在Matlab環(huán)境下完成DSP程序的仿真調(diào)試。而不用像傳統(tǒng)的開發(fā)要把DSP運行結(jié)果調(diào)回PC機驗證,方便了開發(fā)設(shè)計,縮短了開發(fā)周期。
4結(jié)語
應用Matlab對DSP進行系統(tǒng)級的設(shè)計極大地改進了傳統(tǒng)的設(shè)計方法。Matlab系統(tǒng)級的設(shè)計環(huán)境,有助于在設(shè)計早期發(fā)現(xiàn)錯誤和應對系統(tǒng)復雜性不斷增加的挑戰(zhàn),方便了復雜DSP應用系統(tǒng)的設(shè)計。
參考文獻
[1] 戴明楨,周建江.TMS320C54X DSP結(jié)構(gòu)、原理及應用[M].北京:北京航空航天大學出版 社,2001.
[2] 張雄偉,曹鐵勇.DSP芯片的原理與開發(fā)應用(第2版)[M].北京:電子工業(yè)出版社,2000
[3] 鄭紅,吳冠.TMS320C54X DSP應用系統(tǒng)設(shè)計[M].北京:北京航空航天大學出版社,2002
[4] 劉益成.TMS320C54X DSP應用程序設(shè)計與開發(fā)[M].北京:北京航空航天大學出版社,200 2
[5]TMS320C6701 evaluation module user′s guideTexas Instruments Inc, August 2002
[6]Developer′s kit for texas instruments DSP user′s guideMathWor ks Inc February 2001