<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種在CCSS中與DSP進(jìn)行聯(lián)合仿真的方法

          一種在CCSS中與DSP進(jìn)行聯(lián)合仿真的方法

          作者:深圳中興通訊公司,梅曉艷,吳淑華 時(shí)間:2004-06-18 來(lái)源:電子設(shè)計(jì)應(yīng)用 收藏
          摘 要: 本文主要介紹一種在仿真軟件CoCentric System Studio(CCSS)環(huán)境下運(yùn)用DSP開(kāi)發(fā)包()進(jìn)行DSP聯(lián)合仿真的方法。該方法可以將算法仿真結(jié)果與DSP的具體實(shí)現(xiàn)結(jié)果在同一環(huán)境下進(jìn)行測(cè)試、比較,降低了仿真與測(cè)試的復(fù)雜度,適用于含有DSP的系統(tǒng)仿真。
          關(guān)鍵詞: ;

          (DSP Developer Kits)作為Synopsys公司的仿真軟件CoCentric System Studio的一個(gè)組件,允許設(shè)計(jì)者開(kāi)發(fā)、測(cè)試和分析系統(tǒng)設(shè)計(jì)中關(guān)于DSP部分的內(nèi)容。利用這個(gè)工具箱,可以實(shí)現(xiàn)在CCSS(CoCentric System Studio)環(huán)境中進(jìn)行DSP軟件部分的驗(yàn)證功能。

          CCSS中的DDK種類
          在CCSS中所支持的DDK 種類如表1所示。
          作者所用的DSP屬于TI的C5XX系列,在此以TI的 TMS320C5XX DSP Develop Kit為例進(jìn)行說(shuō)明。
          TMS320C5XX DDK由以下兩部分組成:
          ystem Studio TI TMS320C5XX Stream Driven Simulator model library
          ?TMS320C5XX simulator
          在庫(kù)中可以選擇多種DSP輸入輸出的組合,有單輸入單輸出、單輸入二輸出等,根據(jù)原匯編代碼選擇相應(yīng)的模塊。所選模塊的功能由裝載到其內(nèi)部的匯編代碼程序決定。匯編代碼是按照模塊的input dataset定義的,并且可由用戶進(jìn)行配置。圖1所示為DSP Simulator 與System Studio Stream Driven Simulator之間的關(guān)系。
          System Studio Stream Driven Simulator可以從系統(tǒng)的層次化示意性描述中生成可執(zhí)行的仿真驅(qū)動(dòng)流。它包括一個(gè)仿真核(simulator kernel)和一套可裝載的軟件模塊。仿真核本身并不執(zhí)行任何數(shù)字信號(hào)處理功能,但是可以配合可裝載軟件模塊的激活來(lái)完成信號(hào)處理任務(wù)。軟件模塊與仿真核之間通過(guò)標(biāo)準(zhǔn)的軟件接口實(shí)現(xiàn)互連。
          DSP Simulator作為System Studio Stream Driven Simulator的子系統(tǒng),與仿真核在同一過(guò)程執(zhí)行。在System Studio Stream Driven Simulator來(lái)看,DSP Simulator是一個(gè)C編寫(xiě)的基本模塊,但是該模塊的實(shí)現(xiàn)由DSP Simulator運(yùn)行實(shí)際程序完成。


          圖1 DSP Simulator和System Studio Stream Driven Simulator的關(guān)系圖



          圖2 環(huán)境變量設(shè)定


          圖3 仿真模塊

          CoCentric中進(jìn)行流程
          修改代碼
          在裝載代碼之前,要對(duì)代碼進(jìn)行一些修改,以滿足聯(lián)合仿真的要求。裝載到TMS320C5XX Stream Driven Simulator model的匯編代碼有特殊的結(jié)構(gòu),所需修改的匯編語(yǔ)言代碼結(jié)構(gòu)主要包括下面三個(gè)方面:
          (1) Initialization Code Section:要以xxxInitBegin和xxxInitEnd作為初始化代碼部分的界定符。
          (2) Processing Section:要以xxxBegin和xxxEnd作為處理部分的界定符,其中xxx表示匯編代碼段的名稱。
          (3) Data Transfer:為了在System Studio Stream Driven Simulator與TMS320C5XX sim5xx設(shè)置通訊的緩存,要開(kāi)辟兩塊存儲(chǔ)區(qū)。輸入緩沖以xxxInVectorn開(kāi)始,輸出緩沖以xxxOutVectorn開(kāi)始。System Studio Stream Driven Simulator必須知道每次匯編代碼所消耗和產(chǎn)生的數(shù)據(jù)信息量,并在xxxLenInVectorn和xxxLenOutVectorn兩個(gè)存儲(chǔ)區(qū)加以體現(xiàn)。
          生成可執(zhí)行代碼
          在進(jìn)行此步之前,必須保證環(huán)境變量指向TMS320C5XX編譯器所在目錄,可以在Options下的Environment Variables進(jìn)行設(shè)定,如圖2所示。
          環(huán)境變量設(shè)置好之后,用下面兩個(gè)命令編譯源代碼并裝載目標(biāo)代碼:$TMS320C5xx/asm5000 -v50 name.asm和$TMS320C5xx/lnk500 name.cmd。其中name.asm代表匯編源代碼程序;name.cmd為初始化sim500的command文件。
          交互命令
          當(dāng)INTERACTIVE參數(shù)設(shè)定為1時(shí),對(duì)應(yīng)的TMS320C5XX模塊以交互的形式進(jìn)行仿真。

          以匯編文件copy.asm為例說(shuō)明仿真流程
          程序說(shuō)明
          這個(gè)程序完成的功能是將四個(gè)數(shù)據(jù)由輸入端拷貝到輸出端。起始位置在copyInVector1的數(shù)據(jù)將被置于起始位置為copyOutVector1的存儲(chǔ)區(qū)域。兩個(gè)存儲(chǔ)區(qū)域所要存儲(chǔ)的數(shù)據(jù)個(gè)數(shù)在copyLenInVector1和copyLenOutVector1中定義。每次程序部分執(zhí)行之前,4個(gè)數(shù)據(jù)由Stream Driven Simulator寫(xiě)入以copyInVector1為標(biāo)志的起始位置,當(dāng)代碼執(zhí)行完,可以從以copyOutVector1為起始標(biāo)志的存儲(chǔ)區(qū)讀取數(shù)據(jù)。(匯編源程序見(jiàn)本刊網(wǎng)站www.eaw.com.cn)
          選擇模塊
          匯編源代碼有一個(gè)輸入和一個(gè)輸出端口,選擇tic5xx_1_1,可以滿足要求。圖3所示的是整個(gè)仿真模塊。
          配置模塊
          選中tic5xx_1_1模塊,點(diǎn)右鍵出現(xiàn)模塊配置對(duì)話框,將前面提到的參數(shù)interactive設(shè)置為1,下面定義余下的三個(gè)參數(shù)。
          -tic5xx_load_file:指的是含有可執(zhí)行代碼的程序;
          -tic5xx_init_file:指的是當(dāng)sim500初始化時(shí)裝載的程序;
          -load_file_name:指明匯編代碼的名稱。
          這個(gè)例子中三個(gè)文件分別為:copy.out ,copy.take,copy。
          需要注意的是:file handling數(shù)據(jù)類型要設(shè)定為Explicit;file format數(shù)據(jù)類型要設(shè)定為ASCII_BL_EOR(Blank Line as End Of Record)。
          生成可執(zhí)行代碼
          在終端執(zhí)行下面兩條命令:
          $TMS320C5xx/asm500 -v50 copy.asm
          $TMS320C5xx/lnk500 copy.cmd
          如果.out文件正確生成,則可以裝載到模塊中,進(jìn)行在CCSS環(huán)境下的仿真。

          結(jié)語(yǔ)
          目前,已經(jīng)實(shí)現(xiàn)了在CCSS中進(jìn)行對(duì)DSP功能的驗(yàn)證,這種方法可以大大簡(jiǎn)化算法與實(shí)際DSP實(shí)現(xiàn)的驗(yàn)證過(guò)程。該方法使在同一環(huán)境下,對(duì)算法結(jié)果與DSP具體實(shí)現(xiàn)結(jié)果進(jìn)行比較成為可能,并且很容易對(duì)各項(xiàng)測(cè)試指標(biāo)進(jìn)行測(cè)試和統(tǒng)計(jì),是一種省時(shí)高效的仿真方法?!?/P>

          參考文獻(xiàn)
          1 Synopsys.Inc. CoCentric System Studio Developer Kit Guide (Version 2000.11-CSS1, April 2001).
          2 Synopsys.Inc. CoCentric System Studio DSP Developer Kits User Guide (Version 2000.11-CSS1, April 2001)



          關(guān)鍵詞: DDK DSP仿真

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();