基于FPGA的“数字信号处理”课程设计教学实践
2010-03-21施国勇
杨 莉,施国勇
(上海交通大学微电子学院,上海 200240)
0 引言
“数字信号处理”是电类专业的主干课程。如何引导学生理解数字信号处理算法的物理意义,并在实际工程中加以灵活运用成为“数字信号处理”实践教学中的关键[1]。
我国高校开设的“数字信号处理”实验教学内容,一般以Matlab软件作为仿真平台,对课程中的时域离散信号、系统的时频域理论和数字滤波器设计理论进行仿真实验[1-3],这对学生掌握数字信号处理基本知识是有效的。
目前数字信号处理系统的硬件实现方式一般有三种:①利用通用可编程DSP芯片进行开发的方式较简单,但资源受到限制,并行度差[4,5];②采用专用集成电路ASIC方式进行开发效率高,但开发流程长,成本高,开发出来的系统不能更改;③采用FPGA芯片进行开发。可以提供高效率和高质量的数字系统。现在,FPGA正在越来越多地代替ASIC和DSP芯片完成数字信号处理系统的开发。
我院已设立了“数字信号处理”课程设计这个实践环节,以Xilinx公司提供的集成开发工具System Generator和Digilent公司提供的Virtex-Ⅱ Pro开发板,作为“数字信号处理”课程设计的软、硬件平台。在此平台上,学生最终能完成一个较完整的数字信号处理的工程实现方法和流程。
1 课程设计理论部分
理论部分主要立足于与硬件相关的部分,并增加一些与实践紧密结合的新的算法和理论。主要内容包括数制、数据量化、乘累加单元、除法和开根号等基本运算单元的电路设计以及在FPGA中的实现原理,这些是DSP系统建立的基础。另外,还补充了CORDIC算法和在软件无线电中使用广泛的级联积分梳状CIC(Cascade Integrator Comb)滤波器相关内容。这些理论知识对学生理解实际企业工程系统开发流程有很大帮助。
2 课程设计实验部分
实验部分包括基础实验和综合设计实验两大类:以System Generator软件和Virtex-ⅡPro开发板作为软、硬件实验平台。将先进的硬件开发平台和系统仿真工具融入到实践教学当中,直接同业界流行的工程开发流程接轨,可以提高学生未来在工作中的适应能力。
System Generator软件适用于简化 FPGA数字信号处理系统开发的一款集成工具,该软件可与Simulink实现无缝链接。利用Simulink建模和仿真环境来设计高性能DSP系统,不需要设计者了解和实现RT L级硬件语言,能发挥基于FPGA的数字信号处理系统的最大性能和灵活性,缩短整个设计的周期。
Virtex-ⅡPro开发板包含3万多个逻辑单元,136个18位乘法器,两个PowerPC处理器核以及丰富的接口,几乎可被用于从入门课程到高级研究项目应用的各个阶段,很适合在其上进行各种级别的DSP系统的开发。
1)基础实验
基础实验的设置参考了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滤波器,并将其放入到一个通信系统中,查看其效果。
2)综合设计实验
在课程设计的后期,我们为学生安排了一个综合设计实验。
综合设计实验原则上是教师结合自身教学和科研工作以及开发板所能提供的接口,所提出的实验项目。比如语音数字滤波系统设计和图像信号去噪系统设计等。
学生分组根据教师给定的实验目的、设计要求和实验条件,查阅资料,进行方案设计。学生实验完成后现场演示实验结果,采用PPT答辩方式说明设计思路及方案,交出课程设计报告。
3 结语
“数字信号处理”是一门理论与实践紧密结合的课程,理论与实践相互依存。如何正确引导学生,将理论课与工程实践紧密结合起来,完成课程设计这一教学环节,是“数字信号处理”课程体系的重要内容。只有让学生真正理解基础理论,同时掌握工程实现的基本技能,才能在未来的实际工作中发挥出最大的潜力。
[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.