FIR滤波器在DSP上的实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FIR滤波器在DSP上的实现

FIR滤波器在DSP上的实现 引言 在信号处理中,滤波占有十分重要的地位。数字滤波是数字信号处理的基本方法。数字滤波与模拟滤波相比有很多优点。它除了可避免模拟滤波器固有的电压漂移、温度漂移和噪声等问题外,还能满足滤波器对幅度和相位的严格要求。数字滤波是语音处理、图像处理、频谱分析等应用中的基本处理算法。DSP是一种处理数字信号的专用微处理器,主要应用于实时快速地实现各种信号的数字处理算法。用DSP芯片实现数字滤波具有稳定性好、精确度高、不受环境影响等优点。数字滤波器分为有限冲激响应滤波器FIR和无限冲激响应滤波器IIR。 对称FIR滤波器在数字信号处理中应用十分广泛,常用于相位失真要求较高的场合,例如:(1)通信系统:调制解调器、综合业务数据网等,都要求保证数据脉冲的形状和通道中的相关时间。f2)希尔伯特变换器:要求输入输出信号正交。(3)高保真音响系统:音乐的相位失真必须减到最小,尽可能逼真地重现原来的声音等等。由于FIR是全零点的滤波器,因而系统总是稳定的。这对于系统综合是很重要的。 FIR滤波器的基本结构 设h(n)(n=0,1,2,…,N一1)为滤波器的冲激响应,输入信号为x(n),则FIR滤波器就是要实现下列差分方程: 式(1)就是FIR滤波器的差分方程FIR滤波器的最主要的特点是没有反馈回路,因此它是无条件稳定系统。的单位脉冲响应h(n)是一个有限长序列。由面的方程可见,FIR滤波箅法实际上足一种乘法累加运算,它不断地输入样本x(n),经延时做乘法累加,再输滤波结果y(n)。 FIR滤波器的一个分支的延时线,把每一节的输出加权累加,得到滤波器的输。结构如图1所示,它一条均匀间隔的延迟线上对抽失信号进行加权求和构成。FIR低通滤波器,技术指标:通带截止频率fp=1500Hz,阻带起始频率fst=2250 Hz,通带允许的最大衰减为Rp=0.25 dB,阻带应达到的最小衰减为As=50dB。滤波器的采样频率为fs=16000Hz。 这里采用窗函数设计法设计FIR滤波器,首先根据阻带衰减As=50dB来选择窗形状,海明窗和布拉克曼窗等窗函数均可提供大于50dB的衰减。由于海明窗可提供较小的过渡带宽,所以选择海明窗。然后编写MATLAB程序,求出技术指标中fp、fst相对应的数字频率,求出过渡带宽,由过渡带宽确定窗口长度N,求出低通滤波器的截止频率,由firl函数求出滤波器的系数。这部分MATLAB程序如下: fp=1500;fst=2250;fs=16000; %输入设计指标 wp=2*fp/fs; %求归一化数字通带截止频率 ws=2*fst/fs; %求归一化数字阻带起始频率 deltaw=ws-wp; %求过渡带宽 N0=ceil(6.6/deltaw); %求窗口长度 N=N0+mod(N0+l,2); %确保窗口长度N为奇数 n=N-1; %求出滤波器的阶数n wn=(ws+wp)/2; %求滤波器的截止频率 b=firl(n,wn); %利用firl函数求出滤波器的系数 bl=round(b*10000); %将系数用整数表示 fn=fopen(‘COEF_FIR.inc’,’w’); %将系数存放在文件COEF_FIR.inc fclose(fn) 运行后得到:N=71,wp=01875,=0.2813,=0.2344。 再编制以下MATLAB程序段用于检验Rp和As是否满足设计要求: [H,w]=freqz(b,1); %计算频率响应 mag=abs(H); %求幅频特性 db=20*logl0(mag/max(mag)); %化为分贝值 dw =pi/512; Rp= -(min(db(1:wp*pi/dw+1))) %检验通带波动 As= -(max(db(ws*pi/dw+1:512))) %检验最小阻带衰减 求得滤波器的Rp=0.0404dB,As=51.1829dB,满足设计要求。 DSP实现FIR滤波器 程序设计的总体思路是:启动ADS7864对输入的模拟信号进行模数转换,每采集到一个数据就送人DSP滤波运算,运算结果送DAC7625转换为模拟量。不断地重复上述过程,在DAC7625的输出端就得到滤波后的模拟信号。为了精确地控制ADS7864的采样率,使用TMS320VC5416内部的定时器控制采样时间间隔T,设置定时器的定时时间等于采样时间间隔T,并让它工作在中断方式,则定时器每过T时间就向CPU发出中断请求,CPU响应中断请求,转去执行中断服务程序,在中断服务程序中读取A/D转换结果,对转换结果进行滤波运算,并将运算结果送D/A转换器转换为模拟量。因此,程序分为主

文档评论(0)

shenlan118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档