亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        MATLAB與DSP使用RTDX的實時數(shù)據(jù)交換*

        2015-07-02 08:57:26覃遠年孫麗真田柯
        關(guān)鍵詞:指針應(yīng)用程序指令

        覃遠年,孫麗真,田柯

        (桂林電子科技大學(xué) 通信實驗中心,桂林541000)

        引 言

        在傳統(tǒng)的DSP(Digital Signal Processor)應(yīng)用程序開發(fā)過程中,涉及的算法一般先用 MATLAB語言進行仿真,仿真結(jié)果滿意后,再進入產(chǎn)品的實現(xiàn)階段。仿真實現(xiàn)后的算法用C/C++或匯編語言實現(xiàn),首先在硬件DSP目標板上調(diào)試,將中間結(jié)果通過DSP開發(fā)工具保存到PC機的硬盤上,然后調(diào)用到 MATLAB工作空間,與MATLAB仿真算法的中間結(jié)果進行比較,以發(fā)現(xiàn)DSP程序中由于設(shè)計或精度導(dǎo)致的結(jié)果偏差[1]。如此反復(fù)進行,應(yīng)用程序開發(fā)十分不便。

        鑒于DSP應(yīng)用開發(fā)的傳統(tǒng)設(shè)計方法十分不便,Math-Works公司和TI公司聯(lián)合開發(fā)了MATLAB Link for CCS Development Tools(簡稱 CCSLink)。CCSLink將MATLAB、CCS(TI DSP集成開發(fā)環(huán)境)和目標DSP三者連接起來,開發(fā)人員可以在MATLAB環(huán)境中像操作MATLAB變量一樣操作TI公司DSP的存儲器和寄存器,實現(xiàn)對CCS的控制,極大地方便了TI DSP應(yīng)用程序的開發(fā)。

        本文所做的研究是以MATLAB2010b、CCS3.3以及基于TMS320VC5509A的開發(fā)板進行的。目前大多數(shù)書籍就CCSLink的描述主要是基于 MATLAB6.5的,而后續(xù)的MATLAB版本對CCSLink做了一定的修改和完善。RTDX插件作為CCSLink的重要組成部分之一,有其獨特的優(yōu)勢。在接下來的內(nèi)容中將對RTDX做詳細介紹,旨在向DSP研發(fā)人員提供一種更快捷的RTDX使用方式。

        1 CCSLink的構(gòu)成

        CCSLink由3部分組成[1]:

        ①與CCS IDE的連接對象。利用此對象可以創(chuàng)建CCS與MATLAB的連接,執(zhí)行相應(yīng)的MATLAB命令就可以運行CCS中的應(yīng)用程序,與目標DSP的存儲器和寄存器進行雙向數(shù)據(jù)交換。其優(yōu)點在于:

        (a)用戶可以利用MATLAB強大的數(shù)據(jù)分析和可視化功能,節(jié)省設(shè)計和調(diào)試程序的時間。

        (b)可以編寫用于調(diào)試數(shù)字信號處理程序的MATLAB語言批處理腳本,實現(xiàn)調(diào)試和分析的自動化。

        ②與RTDX的連接對象。提供了MATLAB與目標DSP之間的實時通信通道,利用此通道可以實時地與目標DSP進行數(shù)據(jù)交換而不用停止DSP上正在執(zhí)行的程序。Link for RTDX實現(xiàn)了對實時數(shù)據(jù)的自動化高級分析和可視化,同時也實現(xiàn)了對復(fù)雜DSP程序的有效驗證。

        RTDX包括主機和目標DSP兩部分,如圖1所示。在DSP上有一個小的RTDX庫(RTDX Target Library)[2],其使用一個基于掃描的仿真器,通過增強型JTAG接口在主機和DSP之間傳輸數(shù)據(jù)。DSP應(yīng)用程序則通過調(diào)用RTDX庫的API函數(shù)來完成主機和DSP之間的通信。主機方運行CCS軟件,CCS軟件同樣帶有一個RTDX庫(RTDX Host Library),通過一個COM接口將實時數(shù)據(jù)在主機上顯示[3]。這樣,MATLAB中設(shè)計的參數(shù)可以通過RTDX輸入通道寫入DSP的存儲單元,而算法的最后結(jié)果也可以通過RTDX的輸出通道上傳到MATLAB中,通過編寫MATLAB程序來顯示、分析信號處理的結(jié)果。

        圖1 RTDX原理框圖

        ③嵌入對象。在MATLAB環(huán)境中能夠創(chuàng)建一個代表嵌入在目標C程序中的變量對象,利用嵌入式對象可以像處理MATLAB的變量那樣直接訪問嵌入在目標DSP的存儲器和寄存器中的變量。

        上述3種連接對象的實現(xiàn)方式略有不同,與CCS IDE的連接對象和嵌入式對象在數(shù)據(jù)的傳遞時可以不在目標DSP程序中添加額外的語句,而與RTDX的連接對象在進行數(shù)據(jù)傳遞時則需要在目標DSP程序中添加操縱RTDX通道的語句。

        2 RTDX的工作原理

        實現(xiàn)MATLAB和目標DSP之間的實時數(shù)據(jù)交換,既需要在目標DSP程序中添加特定的語句,又需要MATLAB使用特定的語句實現(xiàn)與目標DSP的數(shù)據(jù)傳遞。

        2.1 DSP對RTDX的配置使用

        2.1.1 設(shè)置RTDX輸入輸出通道

        首先向工程文件中添加頭文件“rtdx.h”、主程序文件“main.c”和其他使用到RTDX的文件。

        基于工程是否有與主機通信的需要,在“main.c”中添加輸入或輸出通道。通道的聲明采用全局變量的形式,不得包括在任何函數(shù)之中。

        默認情況下,這些通道是不能在DSP中直接使用的,但可以在函數(shù)體內(nèi)使能這些RTDX通道。

        如果要在同一工程的其他C文件中使用已經(jīng)聲明過的RTDX通道,必須再次聲明。

        最后,單擊CCS軟件Tools->RTDX->ConfigurationControl,在彈出的窗口中選擇“Enable RTDX”,手動使能RTDX接口。

        2.1.2 使用RTDX讀寫數(shù)據(jù)

        DSP中的RTDX目標庫提供了一些C函數(shù)發(fā)送和接收數(shù)據(jù):

        ①RTDX_read NB()讀數(shù)據(jù)函數(shù)包括3個參數(shù):第1個是輸入通道的指針,第2個是存儲數(shù)據(jù)的數(shù)組指針,第3個是數(shù)據(jù)字長。這是非連續(xù)讀,即如果沒有數(shù)據(jù)可讀將直接返回。

        ②RTDX_read()函數(shù)的3個參數(shù)和RTDX_readNB()一樣,不同的是RTDX_read()是連續(xù)讀,即它將不返回直到讀完數(shù)據(jù)。如果通道忙或未使能,它將返回RTDX_READ_ERROR。

        ③RTDX_write()寫數(shù)據(jù)函數(shù)也包括3個參數(shù):第1個是輸出通道的指針,第2個是要傳輸?shù)臄?shù)組指針,第3個是數(shù)據(jù)字長。執(zhí)行后會返回一個整數(shù),非0代表成功。

        ④RTDX_sizeofInput()包含輸入通道指針的一個參數(shù),并返回從緩沖器中讀取的字長,一般在RTDX_read-NB()完成一次讀操作后使用它。

        ⑤RTDX_channelBusy()包含輸入通道指針的一個參數(shù),并返回一個整數(shù)指示通道狀態(tài),0表示通道不忙。它通常與RTDX_read NB()結(jié)合使用,用于檢查是否有其他讀數(shù)據(jù)請求。

        2.2 MATLAB對RTDX的配置使用

        2.2.1 發(fā)送數(shù)據(jù)[4]

        在傳輸數(shù)據(jù)之前,MATLAB需要知道目標DSP板的信息,完成MATLAB和CCS以及目標DSP的連接,使用下面這條指令實現(xiàn):

        h=actxserver(′RTDX′);

        此指令要在DSP加載了可執(zhí)行文件并使能RTDX接口之后才能使用,使用這條指令還創(chuàng)建了與RTDX的連接對象,h為連接對象的句柄。

        在MATLAB中打開并使能RTDX輸入通道之前,必須在DSP目標程序中已經(jīng)創(chuàng)建了該輸入通道,調(diào)用下面這條指令實現(xiàn):

        invoke(h,′open′,′ichan′,′W′);

        傳輸數(shù)據(jù)用下面這條指令實現(xiàn):

        invoke(h,′Write′,int16(v));

        數(shù)據(jù)通過最近打開的輸入通道由MATLAB向DSP寫數(shù)據(jù),int16(v)表示對數(shù)據(jù)v做強制數(shù)據(jù)類型轉(zhuǎn)換,因為使用的TMS320VC5509A是16位定點DSP。

        在完成數(shù)據(jù)傳輸或讀數(shù)據(jù)之前,應(yīng)該將此接口關(guān)閉,使用下面這條指令實現(xiàn):

        invoke(h,′close′);

        2.2.2 接收數(shù)據(jù)

        在MATLAB接收數(shù)據(jù)部分并沒有采用發(fā)送數(shù)據(jù)使用的那種最新的RTDX實現(xiàn)方式,因為新方法的實現(xiàn)難度較大,這里介紹通用的實現(xiàn)方法,具體步驟如下[3]:

        ①cc=ticcs()實現(xiàn)MATLAB和CCS以及DSP三者的連接,并創(chuàng)建連接對象,對象句柄為cc。

        ②打開并使能RTDX通道:

        ③讀取數(shù)據(jù):

        3 應(yīng)用實例

        列舉一個簡單的求和運算來說明RTDX的具體實現(xiàn)方法,旨在讓讀者掌握如何使用RTDX實現(xiàn)MATLAB和DSP之間的雙向數(shù)據(jù)傳遞。整個程序的實現(xiàn)思路是:首先MATLAB通過RTDX輸入通道向DSP中寫入10個數(shù)據(jù),然后DSP對這10個數(shù)據(jù)求和,最后將這個和值經(jīng)RTDX輸出通道傳遞給MATLAB。整個過程的實現(xiàn)流程如圖2所示。

        3.1 DSP程序?qū)崿F(xiàn)

        圖2 程序流程圖

        3.2 MATLAB程序?qū)崿F(xiàn)

        結(jié) 語

        RTDX技術(shù)巧妙地實現(xiàn)了MATLAB和目標DSP之間的數(shù)據(jù)交換,使開發(fā)者能夠在算法仿真和實時處理之間進行多次反復(fù),以確定最佳算法和參數(shù),極大地方便了DSP應(yīng)用程序的設(shè)計,縮短了開發(fā)周期。

        [1]陳泰紅,任勝杰,魏宇.手把手教你學(xué)DSP—基于TMS320C55x[M].北京:北京航空航天大學(xué)出版社,2011.

        [2]金衛(wèi).利用RTDX實現(xiàn)DSP與 Matlab的數(shù)據(jù)交換[C]//四川省電子學(xué)會電子測量與儀器專委會2005年學(xué)術(shù)年會(第十二屆),2005.

        [3]李真芳,蘇濤,黃小宇.DSP程序開發(fā)-MATLAB調(diào)試及直接目標代碼生成[M].西安:西安電子科技大學(xué)出版社,2003.

        [4]Thomas Shen.Using RTDX with a MATLAB GUI[EB/OL].[2015-03].http://cnx.org/content/m14388/latest.

        [5]Texas Instruments Inc.TMS320 DSP/BIOS User’s Guide[EB/OL].[2015-03].http://wenku.baidu.com/link?url=DEaRFy VIAH4kZ7 Tolplf FhFhm Ak3gFa NSOH7 XPzf T-nCWY4 CBfCAKSoCu Y_yin RE4zuzhhbob K_929 TMCmF-p Ogp 4J3KT_s22o0dmy Vyki2CS.

        猜你喜歡
        指針應(yīng)用程序指令
        聽我指令:大催眠術(shù)
        刪除Win10中自帶的應(yīng)用程序
        電腦報(2019年12期)2019-09-10 05:08:20
        偷指針的人
        娃娃畫報(2019年5期)2019-06-17 16:58:10
        ARINC661顯控指令快速驗證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        電子測試(2018年18期)2018-11-14 02:30:34
        為什么表的指針都按照順時針方向轉(zhuǎn)動
        基于改進Hough變換和BP網(wǎng)絡(luò)的指針儀表識別
        電測與儀表(2015年5期)2015-04-09 11:30:42
        ARM Cortex—MO/MO+單片機的指針變量替換方法
        坐標系旋轉(zhuǎn)指令數(shù)控編程應(yīng)用
        機電信息(2014年27期)2014-02-27 15:53:56
        關(guān)閉應(yīng)用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        二区三区日本高清视频| 成在线人视频免费视频| 久久www免费人成精品| 欧美牲交a欧美牲交aⅴ免费真| 国产一区二区女内射| 亚洲色欲色欲综合网站| 熟妇人妻无乱码中文字幕| 97久久天天综合色天天综合色hd | av无码特黄一级| 97国产精品麻豆性色| 国产麻豆一区二区三区在线播放| 亚洲精品中文字幕乱码3| 一区二区亚洲精品国产精| 草逼视频免费观看网站| 亚洲一区二区三区高清在线观看| 99久久婷婷国产亚洲终合精品| 插插射啊爱视频日a级| 97精品国产一区二区三区| 亚洲av综合永久无码精品天堂 | 人妻久久一区二区三区| 夜夜爽夜夜叫夜夜高潮| 亚洲欧洲成人精品香蕉网| 野外亲子乱子伦视频丶| 国产涩涩视频在线观看| 又污又黄又无遮挡的网站| 国产精品18久久久久网站| 九九精品国产99精品| 精品国产乱码一区二区三区| 中文字幕日韩精品人妻久久久| 国产精品亚洲精品国产| 无码一区二区三区免费视频| 无码少妇一区二区性色av| 欧美aa大片免费观看视频| 级毛片免费看无码| av天堂一区二区三区| 永久免费观看的黄网站在线| 国产区女主播一区在线| 中国妇女做爰视频| 337p西西人体大胆瓣开下部| 伊人久久综合精品无码av专区| 国产精品nv在线观看|