应用天地 0簿 己口I第]年}月 ]己卷第}期/ 基于DSP的数字滤波器制作与实现 任枫轩 (河南职业技术学院 郑州450046) 摘要:为了实现DSP技术与滤波器技术实验教学的有机结合,以一块万能板为底板,把以TMS320VC5416为核心的CPU 数据处理电路、以TLV32oAIc23为核心的CODEC语音采集与编解码电路、电源电路以及其他接口等电路优化组合,制作了 数字滤波器实物,并通过CCS设计平台,编写了经典FIR滤波器程序,进行软硬件调试,完成了基于DSP的数字滤波器实验 模块实物的设计、制作、安装、调试和实验过程。 关键词:TMs320Vc5416;万能板;FIR数字滤波器;实验模块实物 中图分类号:TP391 文献标识码:A 国家标准学科分类代码:510.4099 Design and realization of the digital filter based on DSP Ren Fengxuan (Henan Polytechnic,Zhengzhou 450046,China) Abstract:In order tO achieve the organic combination of DSP technology and filtering technique for experimental teach— ing,a digital filter which used a universal board as its backplane was designed in this paper.It optimized combined the hardware circuits such as data processing circuit which used TMS32OVC5416 as its core,sound collecting and coding eir— cuit which used TLV320AIC23 as its core,power supply circuit and other interface circuits。The classic FIR filtering procedures were programmed through the integrated developing platform CCS.After debugging the software and hard— ware,the design,assembling,debugging and experimentation of the experiment module were achieved eompletedly. Keywords:TMS320VC5416;universal board;FIR digital filter;experiment module physical 1 引 言 数字滤波器的实现方法是多种多样的,其中比较常用 到的是无限长脉冲响应滤波器(IIR)和有限长脉冲响应滤 波器 (FIR)2种,另外,还有维纳滤波器、自适应滤波器 高职学生,如何将理论性较强、比较成熟的滤波器算法与 硬件搭建结合起来,让高职学生将相对高深理论学习与实 践结合起来,成为高职DSP教学中的一个难题,本文通过 对DSP硬件电路的搭建,结合FIR滤波器软件编程,设 计、制作、调试了基于DSP的FIR滤波器实验模块实物。 等。但是在一般通信领域,尤其是信号传输领域,在一个 信号的发送与接收端都是发出或接收一路信号。所以,前 2种滤波器还是现在滤波器设计的主要方面。例如在线 谱分析、基音检测、线性预测编码等方面都有着广泛的 应用。 而数字滤波是DSP最基本的应用领域,一个DSP芯 2硬件电路设计 本模块硬件主要包括3个主要部分;以TMS320VC5416 为核心的CPU数据处理电路;以TI 320 C23为核心的 CODEC语音采集与编解码电路;电源电路以及其他接口电 路。3部分电路以一块万能板为依托,通过排插接口和手工 焊接固定,模块的系统连接图[2],如图1所示。 其信号流程是:信号通过语音对录线或信号引线输 入,接入语音采集与编解码电路芯片TLV320AIC23,经 TLV320AIC23采集后,通过McBSP与TMS320VC5416 片执行数字滤波算法的能力反映了这种芯片的功能大小。 目前,在全国占据半壁多江山的高等职业技术院校的教学 中,DSP技术课程已经成为电子信息类专业的核心课程之 一。但是,由于DSP教学一般都是采用某些厂家的实验 箱展开,面对生源基础参差不齐、以学习操作技能为主的 进行数据交换、处理和控制,经过DSP数字滤波处理后由 收稿日期:2012-11 56一 中国科技核心期刊 应用天地 ll毫 asm(”nop”); 己口I]年1月 第]己卷第1期lI3 FIR数字滤波器程序设计 3.1 DSP初始化程序 mcbsp0writerdy(0x0E73); 一—DSP芯片的初始化、矢量表初始和2个串行端口的初 始化 ],主要通过对VC5416的状态寄存器ST0、状态寄 存器ST1和处理器模式状念寄存器PMST等3个控制和 状态寄存器进行初始化,程序采用C和汇编语言混合编 写,部分程序如下: void cpuinit() —asm(”nop”); mcbsp0write一—rdy(0xl00C);//8 kHz采样频率 rdy(0xl01C);//96 kHz采样频率 mcbsp0write一—asm(”nop”); mcbsp0writerdy(0xl201); 一—asm(”nop”); Delay(0);//延迟4000*CPU时钟周期 asm(”nop”); { *(unsigned int*)CLKMD—OxO;//switch to DIV mode elkout一1/2 elkin while(((*(unsigned int*)CLKMD)8LO1)!一 0); } 3.3 FIR数字滤波器主程序 M FIR主程序中,系统函数嘲为H( )一∑b Z,对应 *(unsigned int*)CLKMD一0x27ff;//switch to =0 M PLL X 10 mode PMST一0x3FA0: 的常系数线性差分方程 : ( )一∑b x(n一 ),主程 一0 序清单如下: void main(void) SWWSR一0x7fff: SWCR一0x0000: IMR一0: IFR—IFR: { cpu—init(); fs=250000; } fstop=20000; 3.2 TLV320AIC23初始化 I1pass—fstop/fs; for(i=0;i<FLen;i++) 为使AIC23正常工作并产生预期的音频效果,必须 对其相应的寄存器进行配置 ]。首先对VC5416的I C模 块初始化,将AIC23总线上的地址写入从机地址寄存器 ICSAR;再把相应的AIC23内部映射寄存器的地址和待 写数据合并为16 bit控制字,逐次写入ICDXR,并通过 IzC总线发送给AIC23,即可完成对AIC23的初始化配 { xmid[i]:0; } firdes(npass); set—int(); 置。主要程序如下: void aic23ink(void) ——for(;;) { if(flag一一1、 { mcbsp0writerdy(0xle00); 一—{ flag一0 |*set breakpoint here*f IMR一0x0002; asm(”nop”); mcbsp0writerdy(0x0117); 一—asm(”nop”); mebsp0writerdy(0x0317); 一—} } asm(”nop”); terdy(0x05f9);mcbsp0wri 4软硬件联合调试 4.1硬件设置 asm(”nop”); mcbsp0writerdy(0x07f9); 一—将硬件复位,重新启动电源,连接2号孔线与双路正 弦波混叠信号的信号发生器,该混叠信号一路是低频正弦 波,其幅值应小于3 V,频率应小于20 kHz,高频正弦波信 号幅值也应小于3 V,频率大于70 kHz,该混叠信号通过 绿色2号孔线送往MICIN端。 4.2联合调试 启动CCS软件 ,进入CCS平台界面。建立工程, 中国科技核心期刊 mcbsp0write一—rdy(0x0810);//选择线性输入 rdy(0x0814);//选择麦克风输入 mebsp0write一—asm(”nop”): mcbsp0writerdy(0x0A01); 一—asm(”nop”); mcbsp0writerdy(0 x0C00); —58一 己口I 3;f 1月 第]己卷第f期 鬻麓 应用天地 编写程序,编译、汇编和连接1=程中的所有文件,把程序加 载到目标系统DSP上,并打开Dis—Assembly窗口,该窗 5 结 论 口显示反汇编指令。打开主程序,并在主程序中的flag一 本文描述了以TM8320C5416芯片为核心的滤波器 0处设置断点;运行程序,程序将运行至断点处停止。 实实验模块实物的设计、安装和调试过程,并通过在CCS 设置图形观察窗口[1。。。打开一个图形观察窗口,图 软件环境中编写了经典FIR滤波器程序,对实物进行了联 形观察窗口参数设置,如图4所示,设置观察图形窗口变 合调试。这一过程为高职院校相关DSP技术的教学提供 量及参数:采用双踪观察起始地址分别为35和 ,长度为 了一个实物样本,教学中的理论部分内容,可以辅助DSP 256的单元中数值的变化,数值类型为32位浮点变量,这 基本知识、CCS软件应用、FIR滤波器基本原理等知识的 2个数组中分别存放的是经过A/D转换后的输入混叠信 学习,实训教学的内容设计,可以选择学生自主完成DSP 号和对该信号进行FIR滤波的结果。 芯片最小系统的搭建、PCB设计、元件参数自选和手工焊 接等内容,这一“基于DSP的数字滤波器的制作和实现” 项目课程在作者所在院校的实施,节约了实验实训成本, 增加了可操作性,提升了学生的学习兴趣和技能水平,取 得了良好的教学效果。 参考文献 [1] 吴伟,唐斌.可变带宽线性相位FIR滤波器的设计和 实现[J].仪器仪表学报,2008,29(4):782—786. [2]付荣国,周庆敏.基TI V320AIC23和TMS320VC5416的 语音系统设计EJ].微计算机信息,2007,23(35):192—193. 图4图形观察窗口参数设置 [3] 崔畅,赵强.基于DSP的FIR滤波器的设计与实 现[J].国外电子测量技术,2009,29(7):68 70. Y43任枫轩,李伟.PCB设计与制作[M].北京:机械工业 观察图形窗口参数设置完毕后,将出现图形观察界 出版社,2010. 面,此时动厕运行程序,调整观察窗口,如果波形不够理 [5]汪春梅,孙洪波.TMS320C5000系列DSP系统设计 想,微调信号发生器的两路正弦信号的幅值和频率等,使 与开发实例[M]北京:电子_T业}“版社,2004. 得低频正弦波信号幅值小于3 V,频率小于20 kHZ,高频 [6]张三军,郭庆.基于MATI AB与DSP的心电整系数 正弦波信号幅值小于3 V,频率大于70 kHz,直至观察窗 数字滤波器设计[J].国外电子测量技术,2009,28 口能看见滤波效果明显的结果图形,滤波器滤波前后波形 (3):69-72. 对比图如图5所示,经过滤波后,得到标准的正弦波形图。 [7]杨宇,叶宇风,王洪.基于DSP的实时信号频谱分析 模块设计EJ].电子测量技术,2006,29(2):125—128. [8]张吴,师奕兵.一种满足功率互补特性的线性相位 FIR滤波器[J].电子测量与仪器学报,2009,23(2): 83~88. E9]赵顺珍,马英.基于DSP的FIR数字滤波器设计与实 现-J].微计算机信息,2009,25(2):162—163. E1o]吴冠.TMS320C54X DSP应用系统设计[M].北京: 北京航空航天大学出版社,2002. [11]宋仲康,胡智华.基于TMS320VC5416 DSP的音频接 口设计[J].电子工程师,2005,31(7):24 26. 作者简介 图5滤波器滤波前后波形对比图 任枫轩,郑州大学信息工程学院电子与通信工程硕 查看源程序,在算法主程序中可以看出,该程序为51 士,讲师,现在河南职业技术学院电气工程系工作,主要研 阶FIR低通滤波器算法程序 ,采用矩形窗函数实现,数 究方向信息系统理论应用。 组h和xmid长度均为51,fs为采样频率,fstop为滤波器 截止频率,可以通过修改以上参数来改变滤波器性能。 中国科技核心期刊 一59~