一种长序列小波变换快速算法的DSP实现

出处:yewuyi 发布于:2009-07-07 13:36:45

  1 引 言

  由于小波变换具有良好的时频分析特性,已经广泛应用于各种信号分析领域。由于小波变换算法的复杂性,如果直接计算小波变换,所需内存较大,耗时较长。尽管当今处理器芯片运算速度得到了大幅度的提高,但仍然在实时性上不能满足要求。为了简化计算过程,人们相继设计了一系列的快速算法来计算小波变换,以降低其运算次数。

  小波变换在大多数具体应用中主要是在线信号的实时分析处理,微机和通用的微处理器在运算速度上难以适应信号实时、高处理的要求。数字信号处理器(DSP)就是为了适应这种需求而开发的。美国TI公司是的DSP供应商,其生产的TMS320C55x系列16位定点DSP芯片具有低功耗、高性能等特点,具有广泛的应用领域,本文应用该系列DSP芯片,将文献[2]提出的小波变换快速算法用C语言开发加以实现,解决了小波变换实时、高处理的要求。

  2 小波分解过程的DSP实现

  小波分解过程中算法实现的数据结构存储和寻址方式如图1所示。


  小波分解过程中C语言算法实现的伪代码如下:

  下面分别对伪代码中各个子程序模块的具体实现进行分析。

  2.1 边界延拓模块

  数据边界延拓程序模块的实现:

  定义一个数据地址指针pSrc始终指向载人的源数据头地址,即pSrc=Layer1Data+M-1,在源数据的首尾各对称延拓M-1个点。该模块的C语言实现代码如下:

  2.2 数据搬移模块

  从源数据区搬送数据到计算区的程序模块实现:定义一个临时地址指针pTemp1指向扩展后的数据首地址,即:pTemp1=pSrc- M+1,SegNum为长序列分段数,将数据从数据源区分段搬送到计算区,并将16 b数据扩展为32 b,通过对虚部填零,组成复数输入数据数组signal,该模块C语言实现代码如下(i为分段标记,N为分段圆周卷积长度):

  2.3 基于圆周卷积的线性卷积模块

  用圆周卷积计算signal和分解滤波器组dec_filter的线性卷积out_buffer,该模块的C语言实现代码如下:

  2.4 结果保存模块

  将计算区的结果保存到目标区的程序模块实现:将out_buffer去掉前面M-1个复数,后面N-M+1个复数只取实部,即只取低频分量,对取出的实部乘以比例系数,这里采用的是小数乘法,然后再取前16 b,将结果存到数据存储目标区Layer2Data2,定义目标区存储的首地址指针为pDest=Layer2Data+M-1,然后定义临时数据指针 pTemp2=pDest,该模块C语言实现代码如下:

  将保存在目标区内的数据减采样一半,仍旧保存在目标区内,该模块的C语言代码如下:

  3 小波重构过程的DSP实现

  首先对数据源区要重构的低频、高频数据分量进行上采样,将上采样后的数据存到另外一个目标数据缓冲区,该模块的C语言程序代码如下:

  交换数据指针,将计算结果存到另一区,对上采样后的数据进行边界延拓,然后应用重叠保留法计算扩展后的数据和重构滤波器组的线性卷积,这两个模块的实现同分解过程。惟一有所区别的是,在保存数据时,每一层重构时的个分段前面要去掉的个数要多一点,模块的C语言代码如下:

  4 结 语

  由于小波变换算法的复杂性,微机和通用的微处理器在运算速度上难以实现小波变换的实时性要求。定点DSP具有低功耗、高性能的特点,本文结合TI公司的16位定点DSP说明了小波变换快速算法的具体实现,解决了小波变换实时、高处理的要求。


  
关键词:一种长序列小波变换快速算法的DSP实现DSP

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

TMS320C6678ACYPA25-DSP数字信号处理器(TI 德州仪器)
广告
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:
技术客服:

0571-85317607

网站技术支持

13606545031

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!