a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 一種在CCSS中與DSP進行聯合仿真的方法

一種在CCSS中與DSP進行聯合仿真的方法

作者:深圳中興通訊公司,梅曉艷,吳淑華 時間:2004-06-18 來源:電子設計應用 收藏
摘 要: 本文主要介紹一種在仿真軟件CoCentric System Studio(CCSS)環境下運用DSP開發包()進行DSP聯合仿真的方法。該方法可以將算法仿真結果與DSP的具體實現結果在同一環境下進行測試、比較,降低了仿真與測試的復雜度,適用于含有DSP的系統仿真。
關鍵詞:

(DSP Developer Kits)作為Synopsys公司的仿真軟件CoCentric System Studio的一個組件,允許設計者開發、測試和分析系統設計中關于DSP部分的內容。利用這個工具箱,可以實現在CCSS(CoCentric System Studio)環境中進行DSP軟件部分的驗證功能。

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


圖1 DSP Simulator和System Studio Stream Driven Simulator的關系圖



圖2 環境變量設定


圖3 仿真模塊

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

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

結語
目前,已經實現了在CCSS中進行對DSP功能的驗證,這種方法可以大大簡化算法與實際DSP實現的驗證過程。該方法使在同一環境下,對算法結果與DSP具體實現結果進行比較成為可能,并且很容易對各項測試指標進行測試和統計,是一種省時高效的仿真方法。■

參考文獻
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)



關鍵詞: DDK DSP仿真

評論


技術專區

關閉