楊 莉,施國勇
(上海交通大學微電子學院,上海 200240)
“數字信號處理”是電類專業的主干課程。如何引導學生理解數字信號處理算法的物理意義,并在實際工程中加以靈活運用成為“數字信號處理”實踐教學中的關鍵[1]。
我國高校開設的“數字信號處理”實驗教學內容,一般以Matlab軟件作為仿真平臺,對課程中的時域離散信號、系統的時頻域理論和數字濾波器設計理論進行仿真實驗[1-3],這對學生掌握數字信號處理基本知識是有效的。
目前數字信號處理系統的硬件實現方式一般有三種:①利用通用可編程DSP芯片進行開發的方式較簡單,但資源受到限制,并行度差[4,5];②采用專用集成電路ASIC方式進行開發效率高,但開發流程長,成本高,開發出來的系統不能更改;③采用FPGA芯片進行開發。可以提供高效率和高質量的數字系統。現在,FPGA正在越來越多地代替ASIC和DSP芯片完成數字信號處理系統的開發。
我院已設立了“數字信號處理”課程設計這個實踐環節,以Xilinx公司提供的集成開發工具System Generator和Digilent公司提供的Virtex-Ⅱ Pro開發板,作為“數字信號處理”課程設計的軟、硬件平臺。在此平臺上,學生最終能完成一個較完整的數字信號處理的工程實現方法和流程。
理論部分主要立足于與硬件相關的部分,并增加一些與實踐緊密結合的新的算法和理論。主要內容包括數制、數據量化、乘累加單元、除法和開根號等基本運算單元的電路設計以及在FPGA中的實現原理,這些是DSP系統建立的基礎。另外,還補充了CORDIC算法和在軟件無線電中使用廣泛的級聯積分梳狀CIC(Cascade Integrator Comb)濾波器相關內容。這些理論知識對學生理解實際企業工程系統開發流程有很大幫助。
實驗部分包括基礎實驗和綜合設計實驗兩大類:以System Generator軟件和Virtex-ⅡPro開發板作為軟、硬件實驗平臺。將先進的硬件開發平臺和系統仿真工具融入到實踐教學當中,直接同業界流行的工程開發流程接軌,可以提高學生未來在工作中的適應能力。
System Generator軟件適用于簡化 FPGA數字信號處理系統開發的一款集成工具,該軟件可與Simulink實現無縫鏈接。利用Simulink建模和仿真環境來設計高性能DSP系統,不需要設計者了解和實現RT L級硬件語言,能發揮基于FPGA的數字信號處理系統的最大性能和靈活性,縮短整個設計的周期。
Virtex-ⅡPro開發板包含3萬多個邏輯單元,136個18位乘法器,兩個PowerPC處理器核以及豐富的接口,幾乎可被用于從入門課程到高級研究項目應用的各個階段,很適合在其上進行各種級別的DSP系統的開發。
基礎實驗的設置參考了Strathclyde大學的數字信號處理培訓資料[6,7]。基礎實驗設計指導書寫得非常詳細,學生設計可完全按照指導書步驟進行。因為以模仿和驗證為主,學生可快速了解基于此類軟/硬件平臺進行DSP系統的開發流程,為完成綜合設計實驗打下良好基礎。基礎實現主要分為三部分。
第一部分通過一個簡單的數字信號處理系統設計,使學生了解利用Simulink/System Generator軟件設計數字信號處理系統,并轉化成bit流下載到開發板上的過程。學生可了解構成DSP系統的運算邏輯單元如何在FPGA芯片上實現,為此需考慮軟件編程和實際硬件開發的不同。比如數據的量化,運算時數據的溢出,如何判斷芯片資源是否足夠用于系統的開發等等,讓學生進一步了解實際與理論的區別,首次設計一個真正的DSP實驗系統。
第二部分設計一個比較完整的DSP系統,如圖1所示。該系統包括輸入輸出和濾波器的設計,并采用軟硬件協同仿真的方式使學生了解仿真與實際DSP系統結果的區別,以及了解利用工具進行系統硬件分析的方法。圖2為帶通濾波器系統輸入輸出信號軟硬件仿真結果。

圖1 基于System Generator的軟硬件協同DSP系統

圖2 帶通濾波器系統輸入輸出信號仿真結果
第三部分是一些與新技術發展趨勢相關的實驗內容。如前面提到的CIC濾波器是常用于軟件無線電中多速率采樣抽取或內插過程中的高效濾波器,它不需要復雜的乘法運算。它在需要較高速率系統中,和普通的FIR濾波器相比有著較大的優勢。CIC濾波器結構簡單,易于工程實現。本部分就是采用Simulink/System Generator軟件設計一個CIC濾波器,并將其放入到一個通信系統中,查看其效果。
在課程設計的后期,我們為學生安排了一個綜合設計實驗。
綜合設計實驗原則上是教師結合自身教學和科研工作以及開發板所能提供的接口,所提出的實驗項目。比如語音數字濾波系統設計和圖像信號去噪系統設計等。
學生分組根據教師給定的實驗目的、設計要求和實驗條件,查閱資料,進行方案設計。學生實驗完成后現場演示實驗結果,采用PPT答辯方式說明設計思路及方案,交出課程設計報告。
“數字信號處理”是一門理論與實踐緊密結合的課程,理論與實踐相互依存。如何正確引導學生,將理論課與工程實踐緊密結合起來,完成課程設計這一教學環節,是“數字信號處理”課程體系的重要內容。只有讓學生真正理解基礎理論,同時掌握工程實現的基本技能,才能在未來的實際工作中發揮出最大的潛力。
[1]胡學友,王穎,胡云龍.“數字信號處理”教學改革與實踐[J].南寧:高教論壇.2007,vol 3:67-69
[2]高遠.基于MA TLAB的《數字信號處理》課程的教學改革實踐[J].南寧:高教論壇.2007,vol 4:141-143
[3]李軍,周亞訓.基于MAT LAB和DSP的數字信號處理課程實驗設計[J].上海:實驗室研究與探索.2007,26(1):26-30
[4]管慶,蔡竟業等.“數字信號處理”與“DSP技術”課程的關系[J].南京:電氣電子教學學報.2008,30(6):86-88
[5]楊風開,王彬,李軍.面向電氣類學生的DSP實現FFT的實驗教學研究[J].北京:中國電力教育.2008,vol 120:149-151
[6]Bob Stewart,Steve Alexander,Jamie Bowman The DSP primer.Xilinx University Program,April 2006.
[7]Bob Stewart,Steve Alexander,Jamie Bowman DSP primer.Xilinx University Program,January 2006.