APP下载

“信号处理综合设计”实验教学实践

2011-03-21万建伟

电气电子教学学报 2011年3期
关键词:信号处理音频滤波器

王 玲,万建伟,吴 京,丹 梅

(国防科技大学 电子科学与工程学院,湖南 长沙 410073)

“信号处理综合设计”实验是信号处理系列课程配套的实践环节。作为一门综合设计实验课程,在教学过程中应注重向学生传授系统分析和系统设计的方法,引导学生综合运用信号处理与系统的关键技术,如信号分析技术、数字滤波器设计技术和DSP实现技术等,解决实际工程应用中的具体问题,通过实验环节培养学生的工程素质和创新能力。

本文通过设计实验让学生系统地完成从理论分析到仿真计算再到DSP实现的全过程,缩短开发DSP系统的时间,提高学生的创新意识[1,2]。

我们根据课程内容将实验课程确定为:基础理论实验、综合设计和DSP工程实现。实验过程从基础理论实验开始,通过Matlab编程仿真,对信号和系统的分析,进而完成一个信号处理课题的工程实现。

1 基础理论实验

在DSP课程中,离散时间信号和离散时间系统的分析和采样定理是重要的基础理论内容,DFT和FFT是DSP的重要的数学工具。通过基础理论实验帮助学生掌握重点基础理论内容,加深对DFT算法原理和基本性质的理解以及FFT快速算法的实现,学习用FFT对连续信号和时域离散信号进行谱分析的方法,理解频谱泄漏、分辨率等概念以及栅栏效应,在实际中正确应用FFT,理解“DSP是通过对输入信号的一种运算达到处理目的”的概念。学生应当重点掌握IIR和FIR数字滤波器的基本设计原理和实现方法,完成一个具体的信号处理实例,实现简单的信号处理系统[3]。

具体的实验确定为:①用FFT对连续信号和时域离散信号进行频谱分析;②IIR数字滤波器设计;③FIR数字滤波器设计。学生必须完成一个体信号的频谱分析、按要求设计所需的滤波器,实现对信号的滤波处理,并分析结果。

2 综合设计实验

学生在综合设计实验中应能综合应用信号处理基本理论知识,以培养他们应用理论知识解决实际问题的能力。我们结合教学内容和科研工作,提出一定量的适合本科生的综合设计实验项目。学生可及时更新实验项目及内容设置,选择其中一个项目进行实验[4]。

例如,音频信号干扰抑制系统要求设计一个独立的信号分析与处理系统,该系统可用来抑制音频信号中的干扰信号。第一步应在Matlab平台上完成信号频谱分析和数字滤波器的设计;根据对音频信号的频谱分析,分析出干扰信号的频谱分布情况,确定系统所要求的数字滤波器的类型和技术指标;再借助Matlab平台设计出该数字滤波器的系数,并通过绘出滤波器的频率响应特性曲线来验证所设计出的数字滤波器能够满足系统需求;最后一步是完成工程实现。

实验提供了一个含噪的音频信号“noise.wav”,该信号中混有单频干扰信号。由于一段音频信号是持续时间很长的信号,因此,音频信号的频谱必须分段计算,我们可以采用滑动窗DFT方法[5]来计算音频信号的频谱,分析信号特征。

滑动窗DFT法又称短时傅立叶变换(STFT),这是与时间有关的傅里叶变换,即沿着时间轴滑动窗,每一次只取信号的一部分。序列x(n)的STFT定义为

其中,w(m)是窗函数序列。

设DFT的长度为N(计算分辨率),R是窗函数的长度(物理分辨率),其中NR。则用DFT来计算STFT,得

窗函数的功能是截取信号的一部分用于分析,并确保信号x(n)所抽取的部分是近似平稳的。由于音频信号是一个非平稳信号,因此,窗函数的长度R的选择必须小心处理。一般来说,窗越宽,参与运算的时间样本越多,STFT的频率分辨率就越好。另一方面,窗越短,STFT的时间分辨率就越好,因为此时所截取的信号其平稳性越好。因此,一个较短的窗可提供一个宽带频谱图,而一个较长的窗则得到一个窄带频谱图。

通常,窗与窗之间要有重叠,这样才能确保所有输入信号都能参与分析和处理。设L为两窗中心的间距,则为了正确地分析音频信号频谱,必须使得

在采用STFT法分析音频信号频谱时,除了窗函数的长度需要仔细选择之外,窗函数的类型对信号频谱分析也有着非常重要的影响。在分析原始信号频谱的过程中,要注意不同类型的窗函数情况下的频谱泄漏现象和栅栏效应。

3 DSP工程实现

学生通过CCS集成开发环境及DSP编程过程的学习,进入FIR滤波器的DSP工程实现:在DSP实验板硬件平台上搭建一个实时的音频信号干扰抑制系统。该系统包括接收从PC机平台播放的有干扰的音频信号,经过模/数转换后送给DSP处理器,由DSP处理器完成原始信号的缓冲存储、频谱分析和滤波,再对滤波后的信号进行频谱分析和数/模转换,滤波后的信号通过耳机播放出来。从而达到即可以从信号频谱上分析干扰抑制情况,也可以通过人耳做出主观判断。

FIR滤波器的输出表达式为

式中,h(i)为滤波器的系数;x(n)为滤波器在n时刻的输入;y(n)为n时刻的输出。其基本算法是一种卷积运算也就是乘法累加运算,即不断地输入样本x(n),经过z-1延时后,再进行乘法累加,最后输出滤波器结果y(n)。

在DSP中,要实现这种运算可以采用数组的方法。我们可在程序中定义一个数组,数组中的元素由滤波器系数构成。通过C语言中的FOR循环,将输入的信号值与数组进行乘法累加运算,不断更新输入的数据,最终实现输入信号的滤波卷积运算。有一点需要强调的是在滤波器系数的选择上,因为是FIR滤波器,所以选择的滤波器系数应该是奇对称或偶对称,这样才能构成一个线性相位滤波器。

在DSP实现中需要注意采样频率问题。因为,实验采用的是TI公司开发的套装TMS320VC5416 DSK,其外设比较完备,可以满足基本的开发需求。TMS320VC5416DSK主要包括一块VC5416实验板和一个运行于PC机的集成开发环境-Code Composer StudioTMv2.1IDE。VC5416实验板可以通过USB口与主机相连,运行频率在16-160MHz。

在DSP的应用中,音频模拟信号进入实验板上的音频Codec芯片PCM3002模块进行采样,其采样频率可以设置为48/24/12/8/6kHz。在 Matlab频谱分析时,音频信号采样频率与硬件采样频率不同。我们在进行滤波器设计时,要按照硬件采样频率调整滤波器的设计参数。

此外,由于VC5416处理器是定点运算,而在滤波器设计中使用的滤波器运算都是浮点运算,所以在实现过程中需要把浮点运算转换成定点运算,宜采用纯小数或纯整数。使用的方法是将滤波器系数乘以215,运算结束后再通过将结果移位的方法获得最终的滤波值。

4 结语

通过基础实验和综合设计实验,学生可以运用所学的信号处理知识在Matlab软件平台上对受干扰的音频信号进行频谱分析,并完成相关FIR和IIR滤波器的设计;学习DSP处理器的硬件结构,掌握它的处理方式,从结构上理解它的快速运算速度和强大的数据处理能力,对DSP处理器内部组成和片内外设会有相当的认识;掌握在DSP的开发平台CCS上建立工程、编写相关文件、运行程序和调试验证的方法和流程;学习TMS320VC5416DSK板上的外设模块,利用DSK软硬件平台完成音频信号干扰抑制系统的设计并进行分析验证工作。

[1]杨述斌.数字信号处理实践教学的层次设计 [J].上海:实验室研究与探索,2009,28(2):123-125

[2]李宏,谢霞,郑俊.基于Matlab环境的DSP滤波教学实验系统的设计与实现[J].南京:电气电子教学学报,2005,27(2):76-79

[3]朱金秀,江冰等.数字信号处理综合设计性实验教学探索与实践 [J].北京:实验技术与管理,2008,10,25(10):125-127

[4]万建伟,王玲.《信号处理仿真技术》[M].长沙:国防科技大学出版社,2008.3

猜你喜欢

信号处理音频滤波器
从滤波器理解卷积
必须了解的音频基础知识 家庭影院入门攻略:音频认证与推荐标准篇
基于Daubechies(dbN)的飞行器音频特征提取
开关电源EMI滤波器的应用方法探讨
《信号处理》征稿简则
《信号处理》第九届编委会
《信号处理》征稿简则
《信号处理》第九届编委会
音频分析仪中低失真音频信号的发生方法
基于Canny振荡抑制准则的改进匹配滤波器