




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、FIR滤波器在DSP上的实现1-引言在信号处理中,滤波占有十分重要的地位。数字滤波是数字信号处理的基本方法。数字滤波与模拟滤波相比有很多优点。它除了可避免模拟滤波器固有的电压漂移、温度漂移和噪声等问题外,还能满足滤波器对幅度和相位的严格要求。数字滤波是语音处理、图像处理、频谱分析等应用中的基本处理算法。DSP是一种处理数字信号的专用微处理器,主要应用于实时快速地实现各种信号的数字处理算法。用 DSP芯片实现数字滤波具有稳定性好、精确度高、不受环境 影响等优点。数字滤波器分为有限冲激响应滤波器FIR和无限冲激响应滤波器 HRo对称FIR滤波器在数字信号处理中应用十分广泛,常用于相位失真要求较高的
2、场合,例如:(1)通信系统:调制解调器、综合业务数据网等,都要求保证数据脉冲的形状和通道中的相关时间。f2)希尔伯特变换器:要求输入输由信号正交。(3)高保真音响系统:音乐的相位失真必须减到最小,尽可能逼真地重现原来的声音等等。山于 FIR是全零点的滤波器,因而系统总是稳定的。这对于系统综合是很重要的。2. FIR滤波器的基本结构设h(n)(n=0,l,2,.,N1)为滤波器的冲激响应,输入信号为 x(n),则FIR滤波器 就是要 实现下列差分方程:N7y(n) = Ah(k)x(n-k)(1)式(1)就是FIR滤波器的差分方程。FIR滤波器的最主要的特点是没有反馈回路,因此它是无条件稳定系统
3、。它的单位脉冲响应h(n)是一个有限长序列。由上面的方程可见,FIR滤波算法实际上足一种乘法累加运算,它不断地输入样本x(n),经延时做乘法累加,再输由滤波结果y(n)oFIR滤波器的一个分支的延时线,把每一节的输生加权累加,得到滤波器的输由。结构如图1所示,它由一条均匀间隔的延迟线上对抽失信号进行加权求和构成。x(n)h(N-l)I FIR 滤波器的直接型结构图3? 利用 MATLAB 确定滤波器的系数设计一个线性相位FIR 低通滤波器,技术指标:通带截止频率fp 二 1300Hz, 阻带起始频率fst=2250 Hz,通带允许的最大衰减为Rp二0. 25 dB,阻带应达到的 最小衰减为 A
4、s二 50dB 滤波器的采样频率为fs=16000Hzo这里采用窗函数设计法设计FIR 滤波器, 首先根据阻带衰减As=50dB 来选择 窗形状,海明窗和布拉克曼窗等窗函数均可提供大于30dB 的衰减。由于海明窗可提供较小的过渡带宽,所以选择海明窗。然后编写MATLAB程序,求生技术指 标中fp、fst相对应的数字频率,求出过渡带宽,由过渡带宽确定窗口长度N, 求出低通滤波器的截止频率,由firl函数求出滤波器的系数。这部分MATLAB 程 序如下:fp= 1500;fst=2250;fs= 16000;n=N-l;wp=2*fp/fs;阶数 n %输入设计指标通带截止频率%求归一化数字始频率
5、ws=2*fst/fs;%求归一化数字阻带起deltaw=ws-wp;N0=ceil(6.6/deltaw);%求过渡带宽N=N0+inod(N0+l,2);%求窗口长度%求出滤波器的%求滤波器的截止频率%确保窗口长度N 为奇数wn=(ws+wp)/2;波器的系数b=firl(n, wn);%利用fi 函数求出滤bl=round(b* 10000);%将系数用整数表示fn=fopen( 再编制以下MATLAB 程序段用于检验H,w=freqz(b,l);mag=abs(H);db=20*logl0(mag/max(mag);dw =pi/512;Rp= -(min(db( 1:wp*pi/dw
6、+1)As= -(max(db(ws*pi/dw+1:512)Rp 和 As 是否满足设计要求:%计算频率响应%求幅频特性%化为分贝值%检验通带波动%检验最小阻带衰减,w,);%将系数存放在文件COEF_FIR . incfclose(fn)运行后得到:N=71, wp=0.1875, ws=0.2813, wn=0.2344o求得滤波器的RP=O. 0404dBt As=51. 1829dB,满足设计要求4. DSP实现FIR滤波器程序设计的总体思路是:启动ADS7864 对输入的模拟信号进行模数转换,每采集到一个数据就送人 DSP滤波运算,运算结果送 DAC7625转换为模拟量。不断地重复
7、上述过程,在DAC7625 的输出端就得到滤波后的模拟信号。为了精确地控制 ADS7864 的采样率,使用TMS320VC5416 内部的定时器控制采样时间间隔设置定时器的定时时间等于采样时间间隔并让它工作在中断方式,则定时器每过T时间就向CPU发出中断请求,CPU响应中断请求,转去执行中断服务程序,在中断服务程序中读取A/D 转换结果,对转换结果进行滤波运算,并将运算结果送分。为了D/A 转换器转换为模拟量。因此,程序分为主程序和定时器中断服务程序两部 提高程序运行速度,全部程序用汇编语言编写。(1) 主程序流程图主程序流程图如图2 所示。主程序首先完成DSP 的初始化,然后启动A/D 转换
8、,最后等待定时器中断。DSP 的初始化包括:设置堆栈用于存放定时中断的断点地址;设置DSP的工作频率,TMS320VC5416的工作频率最高可达到 160MHz,可 以根据采样率来选择相应的工作频率;设置定时器的定时参数,以确定A/D 转换 器的采样速率;定时器开中断等。(2) 定时器中断服务程序流程图定时器中断服务程序流程图如图3 所示。由图3 看出,滤波运算是在定时器中断服务程序中完成的,因此,中断服务程序稍长,但由于全部程序采用汇编语言指令编写,执行速度快,而且 TMS320VC5416 的工作频率最高可达160MHz, 在定时器定时周期内有充 裕的时间完成中断服务程序的运行。图2主程序
9、流程图3定时器中断程序流(3)汇编语言程序主程序.mmregs .def start .def INLOOP.bss wO,l .bss wlj STACK .usect x?usect .dataCOEF.copy.textstartSSBXSTMSTMMP/MC=O,SSBXSSBX乘法RSBXLDPORT WSTM“STACK OH“x”,71“COEF_ FIR . IncINTM#STACK+IOH, SP#0124H, PMSTIPTR =002HOVMFRCTSXM#6h,A*(8H),3H#0b, CLKMD;FIR滤波器系数;关中断;设置堆栈;OVLY=1,;OVM=1;FR
10、CT=1,准备做小数;选择ADS7864的通道 A;设置DSP时钟频率;切换到DIV方式图2主程序流程图3定时器中断程序流Tst :LDMCLKMD,AAPOrTR 2H,w#01b,A;读取A/D转换结果存于 wO中BCSTMLDA/D转换PORTWRPTNOPLDPORTW16000赫兹STMSTMSTMSTMSTMRSBXWAIT BTst,ANEQ;AZ0,继续检测#97FFH,CLKMD;设置为PLLxlO方式#OH,A;hold=0,启动*(8H),4H#30;延时#1H,A;hold= 1* (8H),4H;设置定时器,采样速率#0E79H,TCR#3E7H.PRD#08H,IM
11、R#08H.IFR#0E69H.TCRINTMWAIT;预定标分频系数TDDR=9淀时器时间常数=999;允许定时器中断;定时器中断标志清零;启动定时;开中断;等待定时中断由于所设计的FIR滤波器的系数多达 71个,所以在前面的 MATLAB程序 中将系数放在文件COEF_FIR.inc中,这样在汇编语言主程序中就可以通过.copy汇编命令将文件COEF_FIR.inc复制到汇编程序中,免去手工输入系数的麻烦。INLOOP SSBXINTM)定时器中断服务程序10BC主程序LD有效,wO送ASTLwO中LDLDSTL由DSP进行运算STMFIR3 RPTZLD#OH,APORTW*(8H),4
12、HRPT#30NOPLD#1H,APORTW*(8H),4HLD#wO,DP#OFOOOLDH,A否有效AND wO,ASTLA, wlCMPM wl,8000HGOBACK,NTCwO,AA,4,w0wO,-4,A#x+l,DPA,x+1#x+71, AR 1A,#70:hold=0?启动A/D转换;延时;hold=l;判断转换结果是:若转换结果无效则返回;转换结果;去掉高4位后再存于:右移4位;送入x+1,准备:AR1指向线性缓冲区:DSP进行滤波运算MACD *AR1-,COEF,ASTHA,* ARI11PORTR 2H,wO; 读取 A/D 转换结果存于wO 中D/A 转换器12PORTW*ARl,1000hLD#1FH, APORTW*(8H),1004HGOBACKRSBXINTMRETE.END5.结束语;使D/A转换器开始转换;开中断;返回主程序在上面的汇编语言程序中,FIR滤波器采用的是直接型结构
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 韩式护栏施工方案
- 第二单元 让机器认识我第3节“认出”一个人 教学设计 2023-2024学年川教版(2019)初中信息技术八年级上册
- 合同范本买卖合同
- 专职老师聘用合同范本
- 增强学生自主学习意识的方法计划
- 班主任与学校管理层的沟通计划
- 歌唱与律动小班音乐教育探讨计划
- 可持续发展在年度计划中的应用
- 法务部合规管理工作回顾与展望计划
- 九年级体育 教学实录(素质练习1) 人教新课标版
- 2025年湖南益阳市生态环境局招聘10人历年高频重点模拟试卷提升(共500题附带答案详解)
- 2025年江苏省职业院校技能大赛高职组(人力资源服务)参考试题库资料及答案
- 2025年社区工作人员招聘考试复习题100道及参考答案
- 2024陕西延长石油物流集团有限公司社会招聘笔试参考题库附带答案详解
- 2025年黑龙江旅游职业技术学院单招职业倾向性测试题库完整
- 2025年湖南高速铁路职业技术学院单招职业适应性测试题库1套
- 《钱三强-杰出课件》
- 山东2025年山东大学辅导员招聘笔试历年参考题库附带答案详解
- 羽毛球运动体育健身
- (正式版)HG∕T 21633-2024 玻璃钢管和管件选用规定
- 护林员系统培训
评论
0/150
提交评论