基于LabVIEW的DSP設計
利用LabVIEW工具包中的DSP Test Toolkit可以使在LabVIEW環(huán)境下設計的DSP系統(tǒng)可以全部或部分運行于硬件平臺上。DSP Test Toolkit與DSP模塊不同,利用DSP模塊可直接對DSP硬件進行編程,無需單獨的DSP編譯器。而DSP Test Toolkit則必須通過CCS (Code Composer Studio) 實現對DSP的開發(fā)。DSP Test Toolkit提供了一系列可以使LabVIEW和CCS接口的VI,如圖1所示。
圖1 DSP Test Toolkit在DSP設計中的作用
DSP Test Toolkit提供的VIs分為兩組:CCS Automation VIs和CCS Communication VIs。CCS Automation VIs使CCS代碼通過LabVIEW自動執(zhí)行,包括(1)打開CCS,(2)建立項目,(3)復位CPU,(4)加載程序,(5)運行代碼,(6)停止CPU,(7)關閉CCS。這些步驟與在CCS中的是相同的。
CCS Communication VIs能夠使數據通過RTDX通道進行交換。例如:CCS RTDX寫VI與CCS RTDX讀VI分別用于向DSP一方寫入和讀取數據。需要注意的是,以上的VIs都具有多態(tài)性。因此,LabVIEW與CCS之間的數據類型和數據格式必須嚴格匹配才能建立LabVIEW DSP整合。此外,在LabVIEW與C6x DSK目標板之間的通信可以利用TMS320C6x DSP的實時數據交換(RTDX)的功能來實現。此功能允許一個DSK目標板和一個PC主機(運行LabVIEW)之間進行數據交換,而不需要停止DSP一方的程序執(zhí)行。這種數據交換的實現可以通過聯(lián)合測試行動組(JTAG)連接,或者使用通用串行總線接口模擬JTAG來連接。RTDX可以設置為兩種模式:非連續(xù)模式和連續(xù)模式。在非連續(xù)模式下,數據寫入主機的日志文件中。這種模式一般是用于記錄。在連續(xù)模式下,數據由RTDX主機中的庫來緩沖。這種模式通常是用于連續(xù)顯示數據。 當由PC/LabVIEW來顯示處理的數據時,RTDX必須設置為連續(xù)模式。
3.3 基于LabVIEW 的DSP系統(tǒng)級設計方法
使用LabVIEW進行DSP開發(fā),程序框圖主要分為兩大部分,如圖2所示。
圖2 CCS Automation.vi程序框圖
一部分是在圖中左側的順序結構。對應于CCS自動進程,包括CCS打開項目VI、CCS創(chuàng)建VI、CCS復位VI、CCS加載代碼VI和CCS運行VI。此外,還有順序結構右側的CCS中斷VI和CCS關閉項VI目也是CCS自動進程的一部分。順序結構中的文件I/O模版的三個函數用來創(chuàng)建CCS項目文件路徑,這樣就可以在CCS中打開項目文件。通過這些VI和函數,打開CCS、創(chuàng)建項目、在DSP上加載和運行程序,這些進程都可以通過LabVIEW一端來控制。順序結構中的Dsp.pjt是DSP項目,如LMS.pjt、FFT.pjt等,由設計者依據不同設計要求在CCS中創(chuàng)建。
程序框圖中的另一部分為While循環(huán)結構,包括系統(tǒng)數據、參數的輸入輸出顯示及分析等圖形化代碼及CCS RTDX通信模塊。CCS RTDX通信模塊使得LabVIEW和DSP之間連續(xù)交換數據。
在程序運行中,通過前面板上的Code Composer Status可以清楚地顯示CCS運行狀態(tài),如圖3所示。
圖3 前面板CCS進程狀態(tài)顯示示例
任何DSP的開發(fā)程序都可以套用圖2所示的程序模式進行基于LabVIEW的開發(fā)設計。對于不同的DSP設計,Dsp.pjt和LabVIEW while循環(huán)內圖形化代碼是不同的。
評論