打印

基于DSP/BIOS的FIR数字滤波器设计与实现

[复制链接]
8213|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Orchids|  楼主 | 2018-6-24 13:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
基于DSP/BIOS的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模块设置采样频率。首先将该模块配置为连续增计数模式。当周期寄存器和定时器的值相等时,产生一个外设中断请求,选择其启动A/D转换器,则在中断标志位置位的同时将A/D转换启动信号送至A/D转换模块。故只需配置定时器的周期值,便可改变A/D转换器的采样频率。滤波器的通用定时器采用内部CPU时钟(HSPCLK)作为时钟源,而内部时钟源可通过时钟预定标参数寄存器设置。这里设置的内部高速外设时钟为系统时钟。

(5)A/D转换模块的配置。A/D转换模块的A/D转换器有16个通道,可配置为2个独立的8通道模块,分别服务于事件管理器A和B。两个独立的8通道模块也可级联构成一个16通道模块。尽管在模数转换模块中有多个输入通道和两个排序器,但仅有一个转换器。将其配置为两个独立8通道模块,让EVA事件管理器A触发A/D转换器、信号从ADINAO引脚输入,从ADCRESULTO结果寄存器中读取转换结果。

(6)处理采集到的数据,即是对采集的信号进行滤波。首先根据信号通过滤波器设计过程进行运算,得到系统差分方程的系数,用一个数组存放该系数,以方便计算。主程序的数据采集即硬件中断所要完成的工作。

为验证所设计滤波器的滤波效果,将其应用于某电路实验的实测信号滤波,滤波前后波形如图2所示。由图2可看出,滤波效果较好。



5 结论

所设计的滤波器滤波效果理想,达到了设计要求。在DSP/BIOS多任务的调度下,不但可在滤波算法的基础上添加新任务,实现多任务系统,而且还能较好地满足需进行滤波处理的系统开发。



相关帖子

沙发
Orchids|  楼主 | 2018-6-24 13:22 | 只看该作者
基于DSP/BIOS的FIR数字滤波器设计与实现

文档1.pdf

140.36 KB

使用特权

评论回复
板凳
zhangmangui| | 2018-6-24 22:57 | 只看该作者
从实验图来看  还是比较理想的效果

使用特权

评论回复
地板
tuyuyi| | 2019-4-30 11:04 | 只看该作者
Orchids 发表于 2018-6-24 13:22
基于DSP/BIOS的FIR数字滤波器设计与实现

楼主,您能教我一下基于TMS320C5505 DSP/BIOS语音滤波吗?

使用特权

评论回复
5
usysm| | 2019-5-1 15:57 | 只看该作者
数字滤波是数字信号处理中的重要环节。  

使用特权

评论回复
6
yujielun| | 2019-5-1 15:58 | 只看该作者
科技的发展越来越离不开数字信号处理技术

使用特权

评论回复
7
htmlme| | 2019-5-1 15:59 | 只看该作者
DSP的计算运转速度很快的      

使用特权

评论回复
8
pklong| | 2019-5-1 15:59 | 只看该作者
信号的采样速度必须满足奈奎斯特定理

使用特权

评论回复
9
touser| | 2019-5-1 16:00 | 只看该作者
主要视滤波器的功能大小和应用场合来定啊

使用特权

评论回复
10
myiclife| | 2019-5-1 16:00 | 只看该作者
复杂的视频处理则需要专业的DSP

使用特权

评论回复
11
uytyu| | 2019-5-1 16:00 | 只看该作者
数字滤波器的硬件电路是由集成芯片实现的

使用特权

评论回复
12
iyoum| | 2019-5-1 16:01 | 只看该作者
DSP Builder的FIR数字滤波器  

使用特权

评论回复
13
jkl21| | 2019-5-1 16:02 | 只看该作者
数字领域里最通常的功能:滤波

使用特权

评论回复
14
myiclife| | 2019-5-1 16:02 | 只看该作者
基于DSP2812设计FIR数字低通滤波器+IIR数字滤波器

使用特权

评论回复
15
usysm| | 2019-5-1 16:02 | 只看该作者
Ti 公司提供了数字滤波器程序模块

使用特权

评论回复
16
touser| | 2019-5-1 16:02 | 只看该作者
做一个简单的一阶低通滤波效率怎么样呢  

使用特权

评论回复
17
typeof| | 2019-5-1 16:02 | 只看该作者
用DSP实现FIR数字滤波器         

使用特权

评论回复
18
pklong| | 2019-5-1 16:02 | 只看该作者
一般可用速度较高的逐次逼进式A/D

使用特权

评论回复
19
yujielun| | 2019-5-1 16:02 | 只看该作者
有效的IIR数字滤波器C程序实现

使用特权

评论回复
20
htmlme| | 2019-5-1 16:02 | 只看该作者
需要实时调整DSP数字滤波器的工作状态

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

697

主题

993

帖子

4

粉丝