论文部分内容阅读
【摘要】《数字信号处理》是相关专业本科生培养中的一门重要专业基础课。本文讨论了为获得更好的教学效果,对本课程的配套实验内容安排所做的一系列改革。
【关键词】数字信号处理 实验 改革
【中图分类号】G41 【文献标识码】A 【文章编号】1009-9646(2008)10(a)-0039-02
1 问题的提出
《数字信号处理》通常简称为“DSP”,“DSP”既是Digital Signal Processing的缩写,也是Digital Signal Processor的缩写。前者是指数字信号处理的理论和方法,后者则是指用于数字信号处理的可编程微处理器。而这里我们所说的《数字信号处理》主要是讲授理论和方法的课程。
我们学院从2002年对我院本科学生开设本课程以来,通过5年的教学实践和改革,取得了一定的教学成果,比如本课程曾被国家教育部评为“2003年度国家精品课程”。然而,我们也在教学过程中,发现和总结出了不少的问题,其中最突出的一个问题就是理论与工程实现相结合的问题。
在本课程中,我们主要为学生介绍数字信号处理的有关理论方法,包括各种变换域分析手段与FFT算法和数字滤波器设计等基本的数字信号处理算法,而关于实现的问题,比如有限字长效应及具体的实现手段等,则都不在本课程中讨论。通过4轮教学实践,我们发现了普遍存在于学生学习中的问题主要表现为:对所学到的各种数字信号处理技术究竟如何使用理解不清,或者说没有建立实践的概念。
2 问题的解决措施
关于这个问题,我们也一直在努力需求解决措施。比如在授课之初,我们就告知学生必须熟练使用MATLAB中的信号处理仿真软件进行相关理论方法的仿真,目的是督促学生增强对其中一些技术的实用方面的认识。后来,我们又通过调查问卷的形式得知学生希望进一步加强对于实践方面的训练,于是又增加了MATLAB实验内容和上机考试来强化实现方面的问题。通过这些手段,我们发现确实对于学生在基本理论的掌握上有了一定的帮助,并且也让他们接触到一些实现层面的东西。但是,MATLAB毕竟只是一种软件仿真工具,学生在使用中对于真实的数据输入输出情况并不能完全模拟。并且MATLAB常用的这些仿真函数定义都是非常完善的,在使用时只需要正确设定其输入,即可方便地得到需要的输出结果,这样使得学生在实验后并不能透彻地理解这些函数内部完成的具体操作。
针对以上问题,我们进行了仔细的研究分析,最后决定改革课程配套实验,增加大量的硬件实现演示,让学生通过接触真正意义上的实现过程而加强对本课程中所学理论的认识。前面提到,DSP技术一般是指将通用的或专用的DSP处理器用于完成数字信号处理的方法与技术,通过选用专门的DSP处理器实现本课程中学到的处理理论,可以让学生更好地理解各项处理技术。在实际开设实验中,因为考虑到学生没有学习过DSP处理器的使用,我们采用的办法是为学生讲授实验涉及的原理、思路及实现步骤,并对硬件实验部分加以演示,然后鼓励学生对实验结果进行分析,找出理论分析与实际实现结果的差别,并对它们加以解释。在这样的过程中,既让学生观察到了各种数字信号处理技术的实现结果,又培养了他们对于实现中的各种现象及问题的分析和解决能力。一方面达到巩固知识的目的,另一方面也让他们能将自己所学的知识与实际联系起来,增强工程素养。下面我将就我们课程组对《数字信号处理》课程配套实验的改革情况进行介绍。
3 新实验的设计
配合相关教学内容,我们一共设计了4个实验,涉及到了离散时间信号的时域处理、频域处理、连续信号的数字处理以及数字滤波器设计与实现等方面内容。每个实验都包括基本要求和扩展要求两部份。在基本要求中,学生必须自己利用MATLAB编程设计完成实验内容,并观察老师对该实验内容基于DSP硬件的实现过程,记录及分析实验数据,完成思考题。在扩展要求中,我们为学生拓展了与通信专业相关的一些数字信号处理算法的实现要求,希望学生能从这些实现过程中理解通信中的一些基本数字信号处理技术,同时也配合了其他专业课程的教学。
4 实验演示系统硬件部分
在4个实验中,用于演示的实验系统均为基于TI公司TMS320VC5402构建的最小系统。该系统包括一片DSP芯片TMS320VC5402、配套电源芯片TPS73HD318、音频ADDA芯片TLC320AC01以及用于与计算机串口连接的硬件仿真器部分。其结构如图1所示。
本实验系统选择TMS320VC5402作为核心芯片的原因,是因为TI公司的C5000系列DSP具有适合用于通信领域应用的优良特性。而在C5000系列中,VC5402由于具有很高的性能价格比,在目前的DSP市场使用非常广泛。通过使用VC5402进行一系列实验的演示,可以增加学生对目前常用DSP芯片的了解。
5 实验要求部分
5.1 实验一
离散时间信号的产生及分析
实验要求:
(1)对几种基本离散时间信号(包括单位采样序列,单位阶跃序列,单频正弦序列,单频复指数序列,实指数序列等)在MATLAB中编程进行产生。
(2)理解双音多频DTFM,ASK,FSK,BPSK等信号的产生原理。
(3)在MATLAB中对上述信号编程进行产生。
(4)(拓展要求)利用MATLAB中的谱分析函数对这些信号的频谱进行分析。
(5)(拓展要求)在MATLAB中编程产生其它常见数字调制信号及进行谱分析。
(6)通过硬件(DSP)实验板演示上述信号的时域(示波器)波形与频域波形(计算结果)。
在本实验中,学生除了要完成常见的一些基本序列产生和频谱观察工作,还可以对通信中的一些基本调制信号的产生原理进行了解。通过观察老师利用专用硬件进行的序列生成演示,加深对实际中各种数字信号源的生成方法的理解。
5.2 实验二
快速傅立叶变换(FFT)的实现
实验要求:
(1)对给定序列按照DFT定义,在MATLAB中进行编程实现频谱分析。
(2)在深刻理解FFT算法思想的基础上,在MATLAB中完成基-2拆分的FFT算法编程实现,并将其与前面直接计算DFT结果进行对比。
(3)(拓展要求)对实序列进行FFT编程实现。
(4)(拓展要求)在MATLAB中完成其它FFT算法编程实现。
(5)(拓展要求)探讨频谱分析的灵敏度、分辨率等。
(6)通过硬件(DSP)实验板演示上述信号的时域(示波器)波形与频谱分析(计算)结果。
在本实验中,除了要求用MATLAB中的函数进行FFT的实现,还要学生通过对FFT算法思想的理解进行编程,并且对比这些不同实现过程所耗费的时间,从而加深对快速算法实质的理解。在硬件演示实验中,可以引导学生对实际的频谱结果进行分析,深刻理解时域数据加窗对信号频谱所造成的影响。
5.3 实验三
采样的时域及频域分析
(1)在MATLAB中设计完成可变采样率采样(抽取)程序。
(2)对比观察、分析各种采样(临界采样、过采样、欠采样)时域频域的情况。
(3)(拓展要求)设计完成整数倍内插的MATLAB程序,观察时域频域的变化情况,提出相应滤波器设计要求。
(4)(拓展要求)设计分数倍变采样率的MATLAB程序,观察时域频域的变化情况,提出相应滤波器设计要求。
(5)通过硬件(DSP)实验板演示上述信号的采样时域(示波器)波形及频域波形(计算结果)。
在本实验中,对学生的基本要求是通过编程观察临界采样、过采样、欠采样的时域频域结果。在扩展要求中,为了更好和专业方向结合,选择了通信中常用的变采样率信号处理技术要求学生实现。
5.4 实验四
数字滤波器的设计及实现
(1)在深刻理解数字滤波器的参数基础上,学习使用MATLAB数字滤波器基本设计函数完成(FIR)低通滤波器设计。
(2)在深刻理解数字滤波器的参数基础上,学习使用MATLAB数字滤波器基本设计函数完成(IIR)低通滤波器设计。
(3)对滤波前后的信号进行频谱对比、分析。
(4)(拓展要求)其它种类(高通、带通等)数字滤波器设计。
(5)(拓展要求)学习使用MATLAB中数字滤波器辅助设计软件。
(6)通过硬件(DSP)实验板演示信号经过滤波器前后的时域(示波器)波形与频谱(计算结果)变化。
在本实验中,从一个实际问题入手,要求学生利用MATLAB中的滤波器设计工具进行滤波器设计,并且对得到的滤波器参数进行滤波实现。通过这样的过程,让学生切实理解整个滤波器设计和实现过程的意义。通过观察硬件实现结果,让学生加深对实际实现中的输入量化、系数有限字长等概念的认识。
在本课程实验中,我们要求学生必须完成基本实验要求,并按照我们规定的格式和内容提交实验数据以及相关分析结果。对于学有余力的同学,可以在观察了我们对于每个实验内容的DSP硬件演示后,选择完成拓展实验要求。这样的实验方式,既遵守了教学大纲的要求照顾到大部分学生的能力,又能够让一些对本课程感兴趣,愿意进一步研究的学生有了实践的机会。
6 结束语
通过上学期对2005级同学开展本实验改革的情况来看,这种方式很受学生的认可。我们将在对以后各年级的学生教学中,继续使用本实验方式,并且根据学生的意见对其不断进行改进,使得它们真正发挥辅助教学,提高学生工程素养的作用。
参考文献
[1] Sanjit K.Mitra,Digital Signal Processing—A Computer-Based Approach,Second Edition,Tsinghua University Press,McGraw-Hill,2001.
[2] Sanjit K.Mitra,Digital Signal Processing laboratory Using MATLAB, McGraw-Hill International Editions,2000.
[3] 彭启琮.《数字信号处理课程》双语教学的初步实践与探讨.《电气电子教学学报》2003年第4期.
[4] 彭启琮,李玉柏,管庆.DSP技术的发展与应用.北京:高等教育出版社,2002.
【关键词】数字信号处理 实验 改革
【中图分类号】G41 【文献标识码】A 【文章编号】1009-9646(2008)10(a)-0039-02
1 问题的提出
《数字信号处理》通常简称为“DSP”,“DSP”既是Digital Signal Processing的缩写,也是Digital Signal Processor的缩写。前者是指数字信号处理的理论和方法,后者则是指用于数字信号处理的可编程微处理器。而这里我们所说的《数字信号处理》主要是讲授理论和方法的课程。
我们学院从2002年对我院本科学生开设本课程以来,通过5年的教学实践和改革,取得了一定的教学成果,比如本课程曾被国家教育部评为“2003年度国家精品课程”。然而,我们也在教学过程中,发现和总结出了不少的问题,其中最突出的一个问题就是理论与工程实现相结合的问题。
在本课程中,我们主要为学生介绍数字信号处理的有关理论方法,包括各种变换域分析手段与FFT算法和数字滤波器设计等基本的数字信号处理算法,而关于实现的问题,比如有限字长效应及具体的实现手段等,则都不在本课程中讨论。通过4轮教学实践,我们发现了普遍存在于学生学习中的问题主要表现为:对所学到的各种数字信号处理技术究竟如何使用理解不清,或者说没有建立实践的概念。
2 问题的解决措施
关于这个问题,我们也一直在努力需求解决措施。比如在授课之初,我们就告知学生必须熟练使用MATLAB中的信号处理仿真软件进行相关理论方法的仿真,目的是督促学生增强对其中一些技术的实用方面的认识。后来,我们又通过调查问卷的形式得知学生希望进一步加强对于实践方面的训练,于是又增加了MATLAB实验内容和上机考试来强化实现方面的问题。通过这些手段,我们发现确实对于学生在基本理论的掌握上有了一定的帮助,并且也让他们接触到一些实现层面的东西。但是,MATLAB毕竟只是一种软件仿真工具,学生在使用中对于真实的数据输入输出情况并不能完全模拟。并且MATLAB常用的这些仿真函数定义都是非常完善的,在使用时只需要正确设定其输入,即可方便地得到需要的输出结果,这样使得学生在实验后并不能透彻地理解这些函数内部完成的具体操作。
针对以上问题,我们进行了仔细的研究分析,最后决定改革课程配套实验,增加大量的硬件实现演示,让学生通过接触真正意义上的实现过程而加强对本课程中所学理论的认识。前面提到,DSP技术一般是指将通用的或专用的DSP处理器用于完成数字信号处理的方法与技术,通过选用专门的DSP处理器实现本课程中学到的处理理论,可以让学生更好地理解各项处理技术。在实际开设实验中,因为考虑到学生没有学习过DSP处理器的使用,我们采用的办法是为学生讲授实验涉及的原理、思路及实现步骤,并对硬件实验部分加以演示,然后鼓励学生对实验结果进行分析,找出理论分析与实际实现结果的差别,并对它们加以解释。在这样的过程中,既让学生观察到了各种数字信号处理技术的实现结果,又培养了他们对于实现中的各种现象及问题的分析和解决能力。一方面达到巩固知识的目的,另一方面也让他们能将自己所学的知识与实际联系起来,增强工程素养。下面我将就我们课程组对《数字信号处理》课程配套实验的改革情况进行介绍。
3 新实验的设计
配合相关教学内容,我们一共设计了4个实验,涉及到了离散时间信号的时域处理、频域处理、连续信号的数字处理以及数字滤波器设计与实现等方面内容。每个实验都包括基本要求和扩展要求两部份。在基本要求中,学生必须自己利用MATLAB编程设计完成实验内容,并观察老师对该实验内容基于DSP硬件的实现过程,记录及分析实验数据,完成思考题。在扩展要求中,我们为学生拓展了与通信专业相关的一些数字信号处理算法的实现要求,希望学生能从这些实现过程中理解通信中的一些基本数字信号处理技术,同时也配合了其他专业课程的教学。
4 实验演示系统硬件部分
在4个实验中,用于演示的实验系统均为基于TI公司TMS320VC5402构建的最小系统。该系统包括一片DSP芯片TMS320VC5402、配套电源芯片TPS73HD318、音频ADDA芯片TLC320AC01以及用于与计算机串口连接的硬件仿真器部分。其结构如图1所示。
本实验系统选择TMS320VC5402作为核心芯片的原因,是因为TI公司的C5000系列DSP具有适合用于通信领域应用的优良特性。而在C5000系列中,VC5402由于具有很高的性能价格比,在目前的DSP市场使用非常广泛。通过使用VC5402进行一系列实验的演示,可以增加学生对目前常用DSP芯片的了解。
5 实验要求部分
5.1 实验一
离散时间信号的产生及分析
实验要求:
(1)对几种基本离散时间信号(包括单位采样序列,单位阶跃序列,单频正弦序列,单频复指数序列,实指数序列等)在MATLAB中编程进行产生。
(2)理解双音多频DTFM,ASK,FSK,BPSK等信号的产生原理。
(3)在MATLAB中对上述信号编程进行产生。
(4)(拓展要求)利用MATLAB中的谱分析函数对这些信号的频谱进行分析。
(5)(拓展要求)在MATLAB中编程产生其它常见数字调制信号及进行谱分析。
(6)通过硬件(DSP)实验板演示上述信号的时域(示波器)波形与频域波形(计算结果)。
在本实验中,学生除了要完成常见的一些基本序列产生和频谱观察工作,还可以对通信中的一些基本调制信号的产生原理进行了解。通过观察老师利用专用硬件进行的序列生成演示,加深对实际中各种数字信号源的生成方法的理解。
5.2 实验二
快速傅立叶变换(FFT)的实现
实验要求:
(1)对给定序列按照DFT定义,在MATLAB中进行编程实现频谱分析。
(2)在深刻理解FFT算法思想的基础上,在MATLAB中完成基-2拆分的FFT算法编程实现,并将其与前面直接计算DFT结果进行对比。
(3)(拓展要求)对实序列进行FFT编程实现。
(4)(拓展要求)在MATLAB中完成其它FFT算法编程实现。
(5)(拓展要求)探讨频谱分析的灵敏度、分辨率等。
(6)通过硬件(DSP)实验板演示上述信号的时域(示波器)波形与频谱分析(计算)结果。
在本实验中,除了要求用MATLAB中的函数进行FFT的实现,还要学生通过对FFT算法思想的理解进行编程,并且对比这些不同实现过程所耗费的时间,从而加深对快速算法实质的理解。在硬件演示实验中,可以引导学生对实际的频谱结果进行分析,深刻理解时域数据加窗对信号频谱所造成的影响。
5.3 实验三
采样的时域及频域分析
(1)在MATLAB中设计完成可变采样率采样(抽取)程序。
(2)对比观察、分析各种采样(临界采样、过采样、欠采样)时域频域的情况。
(3)(拓展要求)设计完成整数倍内插的MATLAB程序,观察时域频域的变化情况,提出相应滤波器设计要求。
(4)(拓展要求)设计分数倍变采样率的MATLAB程序,观察时域频域的变化情况,提出相应滤波器设计要求。
(5)通过硬件(DSP)实验板演示上述信号的采样时域(示波器)波形及频域波形(计算结果)。
在本实验中,对学生的基本要求是通过编程观察临界采样、过采样、欠采样的时域频域结果。在扩展要求中,为了更好和专业方向结合,选择了通信中常用的变采样率信号处理技术要求学生实现。
5.4 实验四
数字滤波器的设计及实现
(1)在深刻理解数字滤波器的参数基础上,学习使用MATLAB数字滤波器基本设计函数完成(FIR)低通滤波器设计。
(2)在深刻理解数字滤波器的参数基础上,学习使用MATLAB数字滤波器基本设计函数完成(IIR)低通滤波器设计。
(3)对滤波前后的信号进行频谱对比、分析。
(4)(拓展要求)其它种类(高通、带通等)数字滤波器设计。
(5)(拓展要求)学习使用MATLAB中数字滤波器辅助设计软件。
(6)通过硬件(DSP)实验板演示信号经过滤波器前后的时域(示波器)波形与频谱(计算结果)变化。
在本实验中,从一个实际问题入手,要求学生利用MATLAB中的滤波器设计工具进行滤波器设计,并且对得到的滤波器参数进行滤波实现。通过这样的过程,让学生切实理解整个滤波器设计和实现过程的意义。通过观察硬件实现结果,让学生加深对实际实现中的输入量化、系数有限字长等概念的认识。
在本课程实验中,我们要求学生必须完成基本实验要求,并按照我们规定的格式和内容提交实验数据以及相关分析结果。对于学有余力的同学,可以在观察了我们对于每个实验内容的DSP硬件演示后,选择完成拓展实验要求。这样的实验方式,既遵守了教学大纲的要求照顾到大部分学生的能力,又能够让一些对本课程感兴趣,愿意进一步研究的学生有了实践的机会。
6 结束语
通过上学期对2005级同学开展本实验改革的情况来看,这种方式很受学生的认可。我们将在对以后各年级的学生教学中,继续使用本实验方式,并且根据学生的意见对其不断进行改进,使得它们真正发挥辅助教学,提高学生工程素养的作用。
参考文献
[1] Sanjit K.Mitra,Digital Signal Processing—A Computer-Based Approach,Second Edition,Tsinghua University Press,McGraw-Hill,2001.
[2] Sanjit K.Mitra,Digital Signal Processing laboratory Using MATLAB, McGraw-Hill International Editions,2000.
[3] 彭启琮.《数字信号处理课程》双语教学的初步实践与探讨.《电气电子教学学报》2003年第4期.
[4] 彭启琮,李玉柏,管庆.DSP技术的发展与应用.北京:高等教育出版社,2002.