摘 要:將MATLAB仿真引入“DSP技術及應用”課程教學中,結合MATLAB仿真講解與DSP技術緊密相關的數字信號處理基本理論,將MATLAB輔助DSP系統設計貫穿到DSP技術及應用教學過程中,有助于學生對DSP技術抽象的理論原理與實際仿真效果相結合的理解。
關鍵詞:MATLAB DSP技術 教學研究
中圖分類號:G4 文獻標識碼:A 文章編號:1673-9795(2013)08(a)-0147-02
目前,數字信號處理技術已得到了廣泛的應用,數字信號處理器件(DSP,Digital Signal Processing)的功能也越來越強大。MATLAB是美國MathWorks公司開發的一種科學計算軟件,在科學計算、控制系統、信息處理等多種領域有著廣泛的應用。把MATLAB和DSP開發工具結合在一起,可以像操作MATLAB變量一樣來操作TI DSP的存儲器或寄存器[1~3]。“DSP技術及應用”課程重點是DSP芯片的基本原理和常用DSP芯片的應用,要求學生熟悉DSP芯片開發工具及使用方法,掌握DSP系統的軟硬件設計和應用系統開發方法,具備從事DSP系統開發的能力。在DSP技術及應用課程教學中發現,教學過程中理論和實踐銜接不明確,對學生真正進行DSP系統工程設計也缺乏實質性的幫助。如何將理論與DSP技術課程很好地結合起來,是我們需要探索的問題。
在數字信號處理與MATLAB語言相結合的方面,國內外教材已經有了多種模式[4~5],但是目前通過MATLAB輔助DSP技術及應用課程教學的相關研究還很少。本文提出通過MATLAB輔助DSP技術及應用課程教學,結合典型實例進行講解,有助于學生對DSP技術抽象的理論原理與實際系統工程設計相結合的理解。
1 教學方法的改革思路及方案
1.1 改革與實踐方案
為了解決“DSP技術及應用”課程中存在的問題,采取MATLAB輔助DSP技術課程教學的方法,從兩方面開展:一方面針對選修DSP技術及應用課程的學生具備數字信號處理相關理論基礎的情況,將MATLAB語言引入教學過程中,通過MABLAB仿真語言所具有的功能函數,對數字信號處理基本關鍵概念結合直觀演示進行詮釋。另一方面,基于MATLAB來開發DSP系統的思想,結合典型的FIR濾波器實例以及CCSLink工具的使用方法,把DSP系統設計中的算法仿真、系數產生、結果驗證、用戶界面等環節交由MATLAB完成,將MATLAB輔助DSP系統設計的思想貫穿到“DSP技術及應用”課程教學中去。
1.2 基于MATLAB的DSP系統設計
集成在MATLAB中的CCSLink工具提供了MATLAB、TI DSP及其集成開發環境CCS的雙向連接,使得可在MATLAB環境下對CCS和DSP目標板進行包括內存之間的數據交互以及控制DSP程序的運行等操作。在DSP技術及應用課程教學過程中,對于將MATLAB輔助DSP系統設計用于教學方面,在不過于考慮DSP代碼效率低以及難對代碼進行匯編級優化,在產品開發中實用性很差等問題的情況下,可以充分利用MATLAB強大的可視化、數據處理和分析工具對DSP中的數據進行分析和再處理,以輔助DSP系統設計,可以顯著地提高初學者學習DSP技術及其應用課程的效率。
2 系統設計的教學實現
2.1 教學實現方式
利用CCSLink可實現MATLAB與CCS以及目標DSP之間的數據交互,包括使用與CCS IDE的連接對象、與RTDX(Real-Time Data Exchange)的連接對象以及嵌入式對象三種工作方式。為了便于“DSP技術及應用”教學實現,我們重點將第一種實現方式穿插到MATLAB輔助DSP技術課程教學過程中去,結合具體的、簡單的、典型的工程實例開展講解,利用與CCS IDE的連接對象創建CCS IDE和MATLAB的連接,從MATLAB命令窗中運行CCS IDE中的應用程序,查詢目標DSP的狀態信息,修改或讀取目標DSP的存儲器或寄存器中的數據,并調試DSP程序。
2.2 課程教學實例
數字濾波器是一個采用有限精度算法實現的線性非時變離散系統,它的設計首先根據實際需要確定其性能指標,再求得系統函數H(z),最后采用有限精度算法實現。DSP芯片有專用的數字信號處理函數可調用,實現FIR濾波器相對簡單,為了充分將MATLAB輔助DSP技術及應用課程的教學,通過MATLAB中的CCSLink工具來進行DSP的輔助設計。
通過建立MATLAB/Simulink模型,根據所需設計低通濾波器技術指標來確定濾波器的階數和截止頻率等參數,然后結合MATLAB產生的濾波器系數,并編寫DSP濾波主程序,在DSP的CCS集成開發環境中將編譯鏈接的工程代碼加載到目標DSP板上,DSP采用TMS320VC5416實現,實驗教學部分結合SEED-DEC5416 DSP實驗箱進行。利用CCSLink提供的與CCS相連接的對象,在MATLAB環境中通過運行MATLAB程序代碼可以運行已經加載到目標DSP中的應用程序,從而在MATLAB環境下直接更新DSP輸入緩沖區中的數據。在MATLAB輔助DSP的FIR濾波器教學實例中,除了算法仿真以及系數產生部分由MATLAB輔助完成以外,還可以通過MATLAB的可視化功能輔助FIR濾波器圖形用戶界面的設計,增加修改參數以及繪制DSP輸入輸出數據的時域及頻域信號等控制操作功能。
將MATLAB的各項功能充分引入到“DSP技術及應用”課程教學過程中,同時調整教學大綱,合理安排學時,利用CCSLink輔助設計基于TMS320VC5416的DSP應用系統,結合典型實例進行講解,可以達到利用MATLAB輔助DSP技術及應用教學的目的,而利用MATLAB的GUI工具設計相應的圖形用戶界面,也進一步加深學生對DSP技術及應用的理解。
3 結語
將MATLAB仿真語言引入“DSP技術及應用”課程教學中,將DSP技術相關的理論知識結合典型實例進行講解,使學生加深了DSP技術課程所需要的數字信號處理基本理論的理解,進而增強了對DSP技術抽象的理論原理與實際系統設計相結合的理解。充分利用MATLAB中強大的可視化、數據處理和分析工具,將MATLAB輔助DSP系統設計的思想穿插于“DSP技術及應用”課程教學中,在提高了授課靈活性的同時,也提高了學生的學習興趣和積極性。
參考文獻
[1]杜磊,薛重德,任志國.基于DSP的代碼生成及應用[J].微處理機,2010,32(2):93-96.
[2]段國強,陳月云.MATLAB輔助DSP設計的研究與實現[J].微計算機信息,2007,23(7):130-132.
[3]劉劍科,王艷芬,王勝利.MATLAB Link for CCS Development Tools在DSP系統設計中的應用[J].信息技術與信息化,2005(4):52-54.
[4]李強,明艷,陳前斌,等.基于Matlab的數字信號處理實驗仿真系統的實現[J].實驗技術與管理,2006,23(5):81-83.
[5]王艷芬,張曉光,李劍.加強Matlab實驗環節,促進研究性課程教學改革[J].實驗技術與管理,2010,27(11):111-123.