积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> DSP >> 应用论文
  相关分类: 应用论文 | TI DSP | 新产品 | 算法 | 下载 | DSP代码示例 | ADI DSP | freescale DSP |
基于DSP C54x的数字滤波器设计
 
作者:周广荣,刘佳,夏志   来源:电子产品世界    点击数:134   更新时间:2008-6-18
您可以添加到网摘 让更多人关注此文章:

    

前言

一个实际的应用系统中,总存在各种干扰。使用DSP进行数字信号处理时,可以从噪声中提取信号,即对一个具有噪声和信号的混合源进行采样,然后经过一个数字滤波器,滤除噪声,提取有用信号;数字滤波器是DSP最基本的应用领域,也是熟悉DSP应用的重要环节。在系统设计中,滤波器的好坏将直接影响系统的性能。

数字滤波器的基本理论和设计

对于数字滤波器的系统函数可以表示为:


可以直接写成表示输出与输入的关系,即常系数线性差分方程:以下是IIR滤波器的表达式


当全部,即系统函数和单位抽样响应,则系统是FIR。

其滤波结构图如图一所示——横向滤波结构

图一横向滤波器结构图

FIR滤波算法实际上是一种乘法累加运算。它不断输入样本,经延时,作乘法累加,再输出滤波结果y(n)。在这里使用FIR滤波器,它有以下几个特点:
(1)  系统的单位冲激响应h(n)在有限个n值处不为零;
(2)  系统函数H(z)在 z >0处收敛,在 z >0处只有零点,有限z平面只有零点,而全部极点都在z=0处;
(3)  结构主要是非递归结构,没有输出到输入的反馈。

这本次设计中FTSK输入数据中包含频率为800HZ,1200HZ,1600HZ,2021HZ,中心频率为1600HZ,提取该频率的信号。利用Matlab设计一个带通滤波器。具体参数为:采样频率为22050HZ,通带宽度为250HZ,则Fpass1=1475HZ,Fpass2=1725HZ,衰减1db,过渡带为200HZ则Fstop1=1275HZ,Fstop2=1925HZ,阻带衰减为30db。运行Matlab获得126阶的带通滤波器,并提取系数。

用线性缓冲区和带移位双操作数寻址方法实现FIR滤波器

在这里介绍用线性缓冲区法实现,其特点是:
(1)  对于N级的FIR滤波器,在数据存储区中开辟一个称之为滑窗的N个单元的缓冲区,存放最新的N个输入样本。
(2)  从最老的样本开始,每读一个样本后,将此样本向下移位。读完最后一个样本后,输入最新样本至缓冲区的顶部。
在这里N=126,y(n)=
在数据存储区中存放系数,并设置线性缓冲区存放输入数据。

具体实现程序如下:
.title    “simfir126.asm”
.      .global_firinit;两个汇编程序,可作为C语言的调用,一个是初始化滤波器
      .global_asmfir;另一个是滤波器执行程序
      .mmregs
      X.usect“data1”,127
      .bss    data1,1
SIZE  .set  127
     .data
COEF       ;从matlab中获得的滤波器系数
;滤波器初始化
    _firinit:
    SSBX  FRCT
    STM  #X+(SIZE-1),AR2
    STM  #(SIZE-2),AR0
    RET
;滤波器执行:
    _asmfir:
    STL   A,*AR2+0
    RPTZ  A,#(SIZE-2)
    MACD  *AR2-,COEF,A
    STH   A,*AR2
    LD    *AR2+,A
    NOP
    NOP
    RETD
    NOP
    NOP
    .END

Simulator仿真结果分析与硬件调试

仿真在系统调试中起着重要作用,TI公司也提供了软件仿真器(Simulator)来调试程序。其中提供的探测点(Probe Point)功能非常强大,它是一个开发算法的工具,将计算机文件数据传送到目标板的buffer提供DSP软件应用,同时可以将计算结果输出到计算机文件中供分析,也可以通过CCS提供的图形窗口观察输入输出数据情况。

在本次设计中利用CCS提供的断点和探测点,指定FTSK数据文件的输入点,进行相关设定,同时利用CCS提供的图形窗口观察输入和输出的波形与频谱。运行程序,分别得到输入波形和频谱图(图二),输出波形和频谱图(图三)下面分别对这两个图形进行分析。

输入波形和频谱图


图二 输入信号的波形和频谱图

由图二输入信号的波形图可以看出,输入是有四个不同频率调制的波形。左边第一种图形在一个周期内占大约1格,而一格所占的时间为0.00605/10=0.605ms,所以周期大约为T1=0.605*1=0.605ms,频率为1652Hz。最右边的图形一个周期内约占0.8格,T2=0.605*0.8=0.484ms,频率约为2066Hz。中间的两个图形在一个周期内分别约占2格和1.3格,周期分别约为T3=0.605*2=1.21ms,频率约为826Hz,T4=0.605*1.3=0.7865ms,频率约为1271Hz。这四个频率与输入的800Hz,1200Hz,1600Hz,2021Hz基本相同。由图中的输入频谱同样可以看出有四个频率的输入波形,其频率分别约为2756*3/10=826.8Hz,2756*4.5/10=1240Hz,2756*6/10=1653Hz,2756*7.5/10=2067Hz,与输入的800Hz,1200Hz,1600Hz,2021Hz基本接近。

输出波形和频谱图


图三  输出信号的波形和频谱图

由图三中的输出信号波形图可以看出滤出的波形在一个周期中约占1格,而一格所占的时间0.00605/10=0.605ms。频率约为1652Hz,与要求滤出1600Hz的要求接近。由图三中的的频谱图可以看出滤出的频谱图的频率约在第6格,则滤出的频率约为2756*6/10=1659Hz,与所要求滤出1600Hz的要求接近。

根据以上Simulator仿真和结果分析,所设计的滤波器能够很好的满足滤波的要求。Simulator仿真是在进行系统设计中的一个重要环节,有利于提高我们进行硬件调试的成功率。

基于上面的结果,利用TMS320C5402?DSK系统板进行实验,在一个AD/DA转换的主循环中加入所设计的滤波器,调节信号发生器,对示波器进行观察,可以发现所用的滤波器能很好的满足设计要求。但程序的输入与输出数据读写语句要作相应的修改。

结束语

在进行数字滤波器设计时,还需要以下几点:
(1)在用Matlab设计滤波器时采样频率一定要满足奈奎斯特准则。当采用带通滤波器时,通带宽度一般在200~300Hz,衰减一般为1db,过渡带一般在100~250Hz,阻带衰减一般在30db。
(2)使用探针方法输入数据时,一般要求输入数据是16进制的小数表示,但如果输入10进制的也可以,但需在两次确认之后才可以输入。
(3)在图形窗口观察结果时,如果所观察的图形不明显,可以通过设置幅度值来改善效果。
总之,滤波器设计是我们实际系统应用中重要的一方面,相比传统的R,L,C元件和运算放大器组成的块滤波器,更有发展的潜力。

参考文献:
1.戴明桢 周建江编著,TMS320C54x?DSP结构、原理及应用,北京航空航天大学出版社,2004
2.郑红 吴冠编著,TMS320C54x DSP 应用系统设计,北京航空航天大学出版社,2003
3.程佩青编著,数字信号处理教程(第二版),清华大学出版社,2002

[1]



相关文章
· 基于MSP430的烟雾报警器优化设计[354]
· DSP与PC机的无线交换调制模块设计[564]
· 一种简单有效的面向过程软件设计思想[157]
· 嵌入式DDR息线的布线分析与设计[141]
· 为当今的电子设计选择合适的音频转换器[182]
热门评论排行
·VHDL设计中电路简化问题的
·ARM嵌入式系统基础教程(N
·江苏嵌入式Linux教育培训
·ARM处理器应用开发4步骤
·锐极LINUX驱动培训班定于

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
七零一所发布恶劣环境角度传感器
德州仪器推出四款最新配电开关
Altium设定全新三维PCB设计性
飞思卡尔进军上网本市场 推
08年11月实际芯片销售额创新低
节能环保备受关注 半导体照
半导体产业最终将存活并将再次蓬勃发展
电子元件业御寒过冬 静待行
台湾当局拨款60亿美元援助DRAM厂
Vishay Silico
 
热门下载 [更多]
 
[ PCB设计] Protel99教程下载
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
 
论坛新帖 [更多]
 
[推荐]ARM开发板,非常适合...
[推荐]DSP2812开发板+...
[推荐]DSP2812开发板+...
超低价专业PCB/电路板打样 ...
超低价专业PCB/电路板打样 ...
PCB/电路板打样...
[原创]北京金鼎旺提供 23...
[原创]北京金鼎旺提供:RS4...
[原创]北京金鼎旺提供:Mod...
北京金鼎旺:在某电线电缆厂交联...

 
赞助商 [更多]
 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网