DSP通用算法介绍.doc

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DSP通用算法介绍

DSP通用算法介绍 摘要 数字信号处理(DSP)自1965年由Cooley和Tukey提出DFT(离散傅里叶变换)的高效快速算法(Fourier Transform,简称FFT)以来,已有近40年的历史。随着计算机和信息技术的发展,数字信号处理技术已形成一门独立的学科系统。数字信号处理作为一门独立学科是围绕着三个方面迅速发展的:理论、现实和应用。作为数字信号理论,一般是指利用经典理论(如数字、信号与系统分析等)作为基础而形成的独特的信号处理理论,以及各种快速算法和各类滤波技术等基础理论。由此在各个应用领域如语音与图象处理、信息的压缩与编码、信号的调制与调解、信道的辨识与均衡、各种智能控制与移动通讯等都延伸出各自的理论与技术,到目前可以说凡是用计算机来处理各类信号的场合都引用了数字信号处理的基本理论、概念和技术。 数字化技术有今天的飞速发展,是依仗于强大的软、硬件环境支撑。作为数字信号处理的一个实际任务就是要求能够快速、高效、实时完成处理任务,这就要通过通用或专用的数字信号处理器来完成。因此,数字信号处理器是用来完成数字信号处理任务的一个软、硬件环境和硬件平台。 就如同生活中的许多事情那样,使用DSP往往在一些小问题和具体细节上颇费周折。然而许多DSP书籍往往专注于大的课题,但在设计基于DSP产品的过程中,大部分时间用于罗列出所必须得“小东西”。本文包含了那些在其他DSP书籍中不曾提及的被遗忘的算法,但它们却占有如此首要的位置。本文介绍的DSP通用算法包括逻辑运算,算术运算,系统的基本构件,线形比例缩放,正交信号处理,频率变换,信号平均,自动控制系统。 1.逻辑运算 所有的DSP器件都有一套命令集,用于实现逻辑操作,包括与,和异或等等。它们采用类似与离散逻辑门的方式进行操作,主要用于屏蔽有用的或没用的数据位,主要在位测试程序中使用。现今的大部分处理器在传统的主要用于寄存器中左移或右移数据的逻辑操作基础上,添加了内置的位测试命令。 逻辑运算常常用于定点与浮点的转换,曲线拟合以及一些更高级的算法。 2.算术运算 人们都已经习惯于使用计算器来实现加减乘除及平方根之类的基本算术运算,而不愿实现这些基本运算背后所需要的复杂的二进制运算。虽然.一些最新的DSP已经在其内部使用硬件电路和硬件编程实现了部分的运算,但当我们在DSP中要实现同样的这些运算时,通常还必须东拼西凑的来实现这些运算。 加减乘除之类的基本运算在各类处理器中以隐含的单周期命令形式提供,故在此不做进一步的讨论。 二进制除法或抽象函数f(x)之类的运算包含了一系列的多周期命令,其复杂度和运算时间由所期望获得的计算结果精度决定。 2.1乘法 DSP器件具有一个专门的硬件乘法器,能在一个时钟周期中完成两个字节数据的二进制乘法。这一“板上”专用乘法器是DSP处理器区别于其他常用微处理器的主要特点,而且是大部分信号处理算法实现的核心。一些专用的乘法,累加和数据移位命令内置于大部分处理器中,用于滤波器和基于FFT的算法。它们充分利用了当代处理器中的并行结构和流水线技术,获得程序的高速执行 完成乘法的基本编码具有如下典型的形式: MPY A,B=C, Shift z 将存储于寄存器B中的数据相乘,并将结果移位Z比特后,存于寄存器C 在对乘法结果保存及移位的过程中,应注意不能使数值位取代最后的符号位 除法 二进制除法相对于加减乘运算而言要复杂得多。其算法主要包含了一系列的反复移位和有条件减法运算。更先进的处理器在其命令集中包含一个隐含的除法命令,可以直接执行该算法。 实现除法MACRO调用的基本形式如下: DIV A, B=C ,Y 将B除以A,结果存入C中,重复执行Y遍。 在某些特殊应用中,若采用曲线拟合方法,除法运算的效率会更高。 函数f(x)的运算 有一些数学函数不能采用直接的二进制形式计算,而必须使用逼近方法。计算一般的f(x)主要采用三种方法,第一种方法是在数据或程序空间中存储一张转换表。第二种方法是采用曲线拟合和分段逼近的策略,第三种是采用级数展开算法。 查表法 最直接的计算一般函数f(x)的方法是在内存中提供一张表,存在与所有可能遇到的x相对应的f(x)的值。表示x值的数据字节用于构造一个指向数据表中地址的指针,从而得到相对应的f(x)的值。如果有充足的数据或程序空间能保证f(x)计算的准确性和精度,该方法在数据存储空间地址分配合理的情况下,就应采用下面两种方法。 曲线拟合方法 经A/D采样记录下的曲线仅在采样点上有值,非采样点需要用数值分析的方法进行处理。为了提高曲线分析的精确度,我们先对谱图曲线的一些特性进行研究。由色谱仪测出的谱图曲线可以看出:谱图曲线的形状类似于正态分布的曲线,所不同的是它不一定是对称的,但它一定是平

文档评论(0)

kakaxi + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档