基于DSPTMS320LF2407A的浮点数开方算法研究探析_第1页
基于DSPTMS320LF2407A的浮点数开方算法研究探析_第2页
基于DSPTMS320LF2407A的浮点数开方算法研究探析_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、    基于DSP TMS320LF2407A的浮点数开方算法研究探析    毕业论文    摘 要: 研究DSP TMS320LF2407A浮点数开平方的理论方法,采用改进Newton下山算法为Newton迭代法提供了更为精确的初值,从而使得收敛速度加快,精度更高。在DSP TMS320LF2407A上编写了1套算法,计算结果与理论分析基本吻合。该算法思路新颖,精度高,速度快,可移植到其它浮点数运算的单片机上。关键词: 浮点数开平方;改进Newton下山算法;TM

2、S320LF2407A;A Research of Float Square Root Algorithm Based on DSP TMS320LF2407AWANG Zhen1, CHENG Wen-feng1, ZHOU Wen-hui2 (1。Electric Power College, South China University of Technology, Guangzhou, 510640,China;2。 PLA 76321army, Guangzhou, 5110560,China)Abstract: It presents a new theoretical metho

3、d of float square root algorithm based on TMS320LF2407A。 Using the advanced Newton descent method, the more precise starting value is given to improve Newton iteration of extracting square root, which would be faster in convergent speed and more accurate。 The arithmetic on TMS320LF2407A was programm

4、ed and the result of experiment basically accords with the theory。 The conclusion shows its features of simplicity, high precision and rapid speed。 This method may be used in other float calculation of single chipped-microprocessor。Keywords: float square root; advanced Newton descent method; TMS320L

5、F2407A0引言    在较为复杂的单片机、数字信号处理器(DSP)系统中,为扩大取值范围,实现复杂的计算和控制,1般都要涉及浮点数的运算。而在1般单片机、部分定点数字信号处理器(DSP)中,没有浮点数运算指令,只能利用多位定点2进制数实现高精度浮点数运算。在单片机、DSP进行开方运算时,实现方法有多种,如牛顿迭代法、查表法、直线逼近法(线性化方法)和减奇数法等。对于查表法,当被开方数变化范围较大时,提高运算精度和减少内存占用量是相矛盾的。直线逼近法需要存贮各段线性逼近函数的斜率和截距值,当要求的运算精度增加时,线性段的划分越密,运算处理时间就越长。减奇数法的缺点是运算时

6、间与被开方数的大小有关,被开方数很大时,运算执行时间将很长。牛顿迭代法是1种1致收敛的开平方算法,若初始值选取得合适,则只需很少的次数甚至是1次迭代运算,即可得到满足给定精度要求的运算结果,其唯1的缺点就是若初始值选取不合适的话,会影响收敛速度,甚至会导致算法发散。针对牛顿迭代法的初始值选取问题,本文用改进Newton下山算法予以解决。该方法充分利用TI公司TMS320LF2407A的强大功能,可以很方便的实现浮点数的开方。TMS320LF2407A具有较强的控制能力,但无浮点数逻辑结构,如果开发出良好的浮点数算法程序,它将能实现更强大的功能。1。 TMS320LF2407A基本特点概述1&#

7、160;   TMS320LF2407A是TI公司推出的1款定点DSP控制器,它采用了高性能静态CMOS技术,使得供电电压降为33V,减小了控制器的功耗。其40MIPS的执行速度使得指令周期缩短到25ns(40MHz),从而提高了控制器的实时控制能力。它集成了32k字的闪存(可加密)、25k的RAM和500ns转换时间的AD转换器,片上事件管理器提供了可以满足各种电机的PWM接口和IO功能。此外,它还提供了适用于工业控制领域的1些特殊功能,如看门狗电路、SPI、SCI和CAN控制器等,从而可被广泛应用于工业控制领域。2。 2进制浮点数表示方法2    浮点数由阶码

8、和尾数组成。IEEE的浮点数标准规定了单精度(4 b)、双精度(8 b)和扩展精度(10 b)三种浮点数的格式。最常用的是单精度浮点数,如图1所示。但这种格式的阶码不在同1个字节单元内,不易寻址,从而会影响运算速度。通常在DSP上采用的是1种变形格式的浮点数3,前三个字节表示尾数,后1个字节表示阶码,尾数小数点在高字节左端,且最高位表示符号位,当尾数为正时,最高位为“0”(对规格化数隐含了最高位的“1”),如图2所示。图1  常用单精度浮点数图2  变形格式的浮点数    浮点数均按规格化方式存放,即尾数的最高位总是1,这样,对于尾数为M的规格化浮点数有

9、  。3。 改进Newton下山算法求解开方问题的算法原理  利用改进Newton下山算法求解平方根问题,如求 。令 ,则 ,得方程:                  其正根 即 。按改进Newton下山算法公式有: 其中  。由 和式代入式中,得方程:                    当 时,就是1般情况的Newton迭代公式4。Newton迭代法已经证明当初始值 时

10、,迭代法公式总能收敛到精确值 ,其证明如下:由式可得:                              由式配方得:                                由式得:        故对任意 ,均有 。而由式又有:所以

11、迭代序列 是下有界的单调递减序列,从而有极限 。这说明只要 ,式总能收敛于 。另外,由和式可以确定相对误差:和式相比得:          递推得:                  令 ,则 相对误差为:                  因此,由 的取值就可以确定相对误差的大小。类似的,如果确定了具体的相对误差精度,也就可以求得 的取值,而初值 的选择决定了收敛速

12、度的快慢。     正因为当初始值取为正数时,Newton迭代法总是能收敛,所以在微机、单片机等构成的实时控制系统和测量仪器中计算开平方时,1般都简单地取 。但是如果 很大,或很小时,即 偏离1很远时,收敛的步数就会很多,收敛所需要的时间就相对比较长。用改进Newton下山算法的优势在于收敛速度快,虽然只有1阶收敛(Newton迭代法有平方收敛),但可以用它来快速收敛到真实值的邻域内,获得初值,再用Newton迭代法得出精确解。在这里由于函数的特殊性,从理论上确定 和c的关系,才是解决问题的关键。为了求出这个关系,这里首先确定三个条件:1) 改进Newton下山算法的初值

13、;2) 约束条件 ,其中 为1个很小的正数;3) 收敛结果 在 的邻域内,即: 。    由这三个条件构造出1函数 : ,实验检验,只需要1-2步就可以得到 。最后用Newton迭代法的初值 ,实验检验,只需要2-3步就可以得到精确值。4。 改进Newton下山算法的软件实现本软件编程是用C语言编写,其算法流程如下:1) 输入初始条件 以及迭代公式;2) 由构造函数 迭代1次,得到 ;3) 将 代入约束条件 检验,如果符合条件则 ,相反则转到2)再迭代1次; 4) 初始值 ,代入Newton迭代法公式进行迭代; 5) 判断约束条件 ,满足则终止迭代, 即为所求的平方根值,否

14、则转到4)继续迭代。6) 输出平方根值 。    在编程时,在DSP TMS320LF2407A的RAM数据空间B1块的1AH-2FH进行,相邻的两个字表示1个2进制浮点数,把这个16位数送到32 bit累加器时,最低8位数屏蔽为0,另把阶码送到寄存器保存,不影响计算精度。整个算法每次循环需要进行1次浮点数加法、减法和除法运算,迭代收敛速度越快,计算循环次数越少。从上述算法可以看出,本算法编程思路清晰、简单。Newton迭代法第1次x0取下山算法的终值,以后进行迭代计算,直到最后两次近似根的差小于控制精度。5 结论 毕业论文 论文网    用DSP TMS320LF2407A 的C语言编写了以改进Newton下山算法求平方根的程序,并同标准值进行了比较,发现下山算法只需要1-2步。因为有了比较好的初值,所以Newton迭代公式只需要迭代2-3步,收敛速度很快,而且其精

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论