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