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所示。