DSPFIR数字滤波器设计与实现.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于DSP的FIR数字滤波器设计与实现 1 引言   数字信号处理器(DSP)拥有强大的数字信号处理能力,与其配套的集成可视化开发环境CCS(Coder Composer Stu-dio)更方便了 DSP应用程序的开发。DSP/BIOS是CCS的重要组成部分,它实质上是一种基于DSP平台的规模可控的实时操作系统内核。这里主要研究在DSP上利用DSP,BIOS实现FIR数字滤波器的方法。   2 TMS320F2812及DSP/BIOS内核介绍   TMS320F2812是基于TMS320C2XXX内核的定点数字信号处理器,具有数字信号处理及强大的事件管理和嵌入式控制功能,适于有大批量数据处理的控制系统。其性能可用于数字滤波器设计。   TMS320F2812采用高性能的静态CMOS技术,时钟频率达150 MHz;低功耗(内核电压1.9 V,I/O口电压3.3 V);采用哈佛总线结构,片上集成许多片上外设,可实现更多功能。开发环境是集成开发环境CCS,支持C/C++/汇编嵌入式实时操作系统DSP/BIOS,JTAG调试接口。   DSP/BIOS内核是一个尺寸可伸缩的实时内核,它是为实时信号处理应用而设计的,主要包括:(1)DSP/BIOS配置工具。该工具可用来创建和配置在应用程序中使用的DSP/BIOS内核对象,也可使用该工具配置存储器,线程优先权以及中断处理;(2)DSP/BIOS实时分析工具。CCS中的分析丁具使用户可测试和分析目标DSP上应用程序的运行,包括监测CPU负荷、日志、线程执行情况等;(3)DSP/BIOS API函数。用户在PC端采用C、C++或汇编语言编写调用DSP/BIOS API函数的应用程序;(4)器件支持库。提供许多宏和函数,用来简化片上外设的配置和管理。   3 数字滤波器分析   数字滤波器根据冲激响应持续时间可分为有限冲激响应滤波器(FIR)和无限冲激响应滤波器(IIR)。其中FIR滤波器能够保证严格的线性相位特性,且不存在稳定性问题。窗函数法和频率采样法等是设计FIR数字滤波器的常用方法。窗函数法在时域中进行,其原理简单,易于实现,但存在在相同设计指标下滤波器的阶数通常会偏大的问题。频率采样法对于只有少数几个非零值采样的窄带选频滤波器较有效。这里分析如何在DSK2812板上利用CCS本身所带的操作系统实现一种通过窗函数法实现的FIR滤波器。FIR滤波器的各项指标可以通过现有的表查找,其设计步骤如下:   (1)给定所要求的理想频率响应函数Hd(ejw);(2)对理想频率响应函数进行反傅里叶变换,则得到系统单位脉冲响应为:hd(n)=IDFTFT[Hd(ejw)];(3)根据过渡带及阻带衰减最小的要求查表,可选定窗ω(n)的形状及除数,N的大小,一般N的值要做几次试探才能最终确定;(4)得到所设计的FIR滤波器的单位抽样响应(该响应逼近理想):h(n)=hd(n)ω(n),n=0,1…,N-1;(5)求H(ejw)=DTFT[h(n)],检查是否满足设计要求,若不满足,则需重新按照上述步骤设计。   4 数字滤波器的实现   要实现的低通FIR滤波器:通带边缘频率ωp=10 kHz,阻带边缘频率ωs=22 kHz,阻带衰减δ2=75 dB,采样频率fs=50 kHz。根据对滤波器的分析可求得系统的差分方程。所求得的h(n)在程序设计过程中可用一个数组存放。X(n)是A/D转换器采样值。让其逐项相加,再输出即可。实现滤波器所采用的硬件平台为DSK2812,实现流程如图1所示。   (1)启动CCS,新建一个丁程,命名为FILTER。   (2)新建一个DSP/BIOS的配置文件,命名为Fiher.cmd,并将其加入该工程中。在配置文件中设置所用到的硬件中断,它对应A/D采样的硬件中断。还需设置一个软件中断,用来对A/D转换模块采集到的数据滤波。因为滤波器处理数据需一定时间,所以将其放到软件中断中,通过BIOS的任务调度实现对信号的滤波。   (3)配置系统时钟,系统有基于PLL的时钟模块,为器件及各种外设提供时钟信号。在X1/XCLKIN和X2两个引脚间连接一个30MHz的晶体振荡器(可采用外部时钟),将输入的时钟信号直接接到X1/XCLKIN引脚,而X2引脚悬空,这种情况下,不使用内部振荡器。然后经PLL倍频后,为系统提供时钟。通过PLLCR寄存器的值可配置15~150 MHz的时钟。则TMS320F2812得到SYSCLKOUT,通过配置高速外设时钟HISPCP和慢速外设时钟LOSPCP控制外设,从而实现整个系统的时钟系统控制。这里设置系统的时钟HSPCLK为150 MHz。   (4)数字滤波器通过EVA1模块设置采样频率。首先将该模块配置为连续增计数模式。当周期寄存器和定时器的值相等时

文档评论(0)

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

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

1亿VIP精品文档

相关文档