基于DSP的自動(dòng)代碼生成及應(yīng)用
1 引 言
本文引用地址:http://www.ex-cimer.com/article/150707.htmM atlab具有強(qiáng)大的分析、計(jì)算和可視化功能, 利用MATLAB 提供的專(zhuān)業(yè)工具箱, 可以方便、靈活地實(shí)現(xiàn)對(duì)自動(dòng)控制、信號(hào)處理、通信系統(tǒng)等算法的分析和仿真, 是算法設(shè)計(jì)人員和工程技術(shù)人員不可缺少的軟件工具。
數(shù)字信號(hào)處理器( DSP)作為一種可編程專(zhuān)用芯片, 是數(shù)字信號(hào)處理理論實(shí)用化的重要工具, 在自動(dòng)控制、語(yǔ)言處理、圖像處理等技術(shù)領(lǐng)域得到了廣泛應(yīng)用。但對(duì)于算法設(shè)計(jì)人員來(lái)講, 利用匯編語(yǔ)言和C語(yǔ)言進(jìn)行功能開(kāi)發(fā), 具有周期長(zhǎng)、效率低的缺點(diǎn), 不利于算法驗(yàn)證和產(chǎn)品的快速開(kāi)發(fā)。
由MathWorks公司和TI公司聯(lián)合開(kāi)發(fā)的MATLAB L ink for CCS DevelopmentToo l(CCSlink)是MATLAB6. 5版本中增加的一個(gè)全新的工具箱, 它提供了MATLAB、CCS和DSP目標(biāo)板的接口, 利用此工具可以像操作MATLAB 變量一樣來(lái)操作DSP器件的寄存器和存儲(chǔ)器, 極大的提高了DSP應(yīng)用系統(tǒng)的開(kāi)發(fā)進(jìn)展。
2 M atlab與CCS及目標(biāo)板間的連接
Matlab可通過(guò)3種方式與CCS、目標(biāo)DSP進(jìn)行連接、數(shù)據(jù)交換。CCSL ink 向用戶(hù)提供了3 種連接對(duì)象, 如圖1所示。
CCS IDE的連接對(duì)象: 該對(duì)象支持TI的C2000 /5000 /6000系列DSP, 利用此對(duì)象可創(chuàng)建CCS IDE和M atlab的連接。用戶(hù)可以編寫(xiě)用于DSP程序的Ma tlab語(yǔ)言批處理腳本, 從Matlab 的命令窗中直接運(yùn)行CCS IDE中的應(yīng)用程序, 向硬件DSP的存儲(chǔ)器或寄存器發(fā)送或取出數(shù)據(jù), 檢查DSP的狀態(tài), 停止或啟動(dòng)程序在DSP中的運(yùn)行。
與RTDX(實(shí)時(shí)數(shù)據(jù)交換)的連接對(duì)象: 該對(duì)象提供Matlab和硬件DSP之間的實(shí)時(shí)通信通道。它允許用戶(hù)在主機(jī)和目標(biāo)板之間進(jìn)行實(shí)時(shí)的數(shù)據(jù)交換而不用考慮目標(biāo)板程序的運(yùn)行。RTDX連接對(duì)象實(shí)際上是CCS連接對(duì)象的一個(gè)子類(lèi), 在創(chuàng)建CCS連接對(duì)象的同時(shí)創(chuàng)建RTDX 連接對(duì)象, 它們不能分別創(chuàng)建。
圖1 CCSL ink的三種接口
嵌入式對(duì)象: 在Matlab 環(huán)境中創(chuàng)建, 該對(duì)象可以代表嵌入在目標(biāo)C 程序中的變量, 由其直接對(duì)嵌入在目標(biāo)DSP存儲(chǔ)器/寄存器中的變量進(jìn)行操作。
3 ETT IC2000環(huán)境
由以上所述可知, CCSL ink為T(mén) IDSP實(shí)時(shí)應(yīng)用開(kāi)發(fā)的調(diào)試和測(cè)試提供了強(qiáng)大的支持, 而ETT IC2000則為T(mén) IC2000 DSP實(shí)時(shí)應(yīng)用開(kāi)發(fā)的整個(gè)過(guò)程(概念設(shè)計(jì)、算法仿真、原代碼編寫(xiě)、目標(biāo)代碼生成、調(diào)試和測(cè)試)都提供了支持。利用ETTIC2000能夠從S imulink模型自動(dòng)生成T I C2000 DSP的可執(zhí)行代碼, 從而在Simu link統(tǒng)一環(huán)境下就可以實(shí)現(xiàn)整個(gè)硬件的在線仿真。
應(yīng)用ETTIC2000開(kāi)發(fā)實(shí)時(shí)DSP處理的過(guò)程如下:
( 1)概念構(gòu)思和DSP處理算法設(shè)計(jì);( 2)在S imulink環(huán)境下, 利用DSP BLOCKSET,F(xiàn)IXED_POINT BLOCKSET, C2000 DSPLIB 和Simulink等庫(kù)中模塊構(gòu)建算法模型, 并在S imulink環(huán)境下運(yùn)行仿真;( 3)如果仿真效果滿(mǎn)意, 就可以在模型中加入所需的C2800 DSP Ch ip Support中的模塊。
( 4)設(shè)置REAL - T IME WORKSHOP中編譯連接( BU ILD)選項(xiàng)。
( 5)利用CCS中的調(diào)試工具、CCSLink或RTDX來(lái)調(diào)試目標(biāo)DSP中的程序。
評(píng)論