基于浮点数的cordic算法的分析与设计-analysis and design of cord ic algorithm based on floating point numbers.docx

基于浮点数的cordic算法的分析与设计-analysis and design of cord ic algorithm based on floating point numbers.docx

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

1绪论本章首先介绍CORDIC算法的发展简史,基本特点和应用前景,接着阐述了国内外相关技术的发展现状和论文的选题意义,最后介绍了本文完成的主要工作和框架结构。CORDIC算法的研究背景CORDIC算法的发展历史和特点CORDIC(CoordinateRotationalDigitalComputer-坐标旋转数字计算机)[1][2]算法最早由J.Volder等人于1959年在美国航空控制系统的设计中提出,他的基本思想是:通过坐标轴旋转得出一个二维的函数关系式,对初始角度进行数值线性逼近,把初始角度的旋转转化成一系列基本角度逐次旋转完成,然后运用递推原理,得出一组递推公式,把角度的递推加进去,转换成一组三维的函数关系式,进一步推导,最终用圆周模型、线性模型、双曲线模型[3]实现了加减乘除、三角函数、双曲线三角函数、平方根,指数、对数等函数[4]的运算。20年后,随着VLSI的产生和迅速发展,CORDIC算法开始被重视,并得到了广泛的应用。原始算法描述的是二维的旋转,它被应用于数字信号处理[5](如:傅里叶变换、数字滤波器)、计算机图像处理[6]和机器人技术等领域。1971年,J.S.Walther提出了统一的CORDIC算法形式[7],它把圆周旋转(Circularmode)、双曲旋转(Hyperbolicmode)和线性旋转(Linearmode)统一到同一个CORDIC迭代方程里,使得采用同一套硬件设备实现多种运算功能成为可能。在1980年,Haviland和Tuszynski[8]设计研发了一个CORDIC处理器,它用一个迭代程序计算圆周、线性和双曲线函数。在1993年,duprat和muller[9]进一步讨论了用一个冗余数字系统来描述符号位的可能性。CORDIC算法起源于坐标的旋转,若要求平面矢量进行θ角度的旋转,则将此角度值分解θ用一组预先规定的基本角度的线性组合逼近[11],即进行多次大小为基本角度集内的对应角度值的旋转。而每次角度的偏转与旋转的次数相关,因此,算法将角度基值设置为2的幂,幂指数用次数表示,这样,硬件编程语言可以通过移位和相加完成。这样,可以充分发挥硬件的优势,利用硬件资源,实现硬件与算法相结合的一种优化方案,由于CORDIC兼顾了简单、功耗、速度等方面的性能,特别适合VLSI(VeryLargeScaleIntegratedcircuites,超大规模集成电路)实现。在数字信号处理中,高速高精度的三角函数发生器有着广泛的应用,在通常情况下,计算三角函数、反三角函数、双曲线函数和其它超越函数有效的方法有:ROM查找表法、多项式近似法[10](主要是利用泰勒级数近似)、CORDIC法。与其它两种方法相比,CORDIC算法具有突出的优势:它不需要硬件乘法器,所有运算可通过移位相加,通过循环迭代的方法完成,节约了硬件资源,并可使用流水线方法,提高了计算速度,这样同时兼顾了精度、速度和资源消耗,是一种很高效的实现方法。CORDIC算法的应用现状由于CORDIC算法本身具有众多的优点,目前,已经应用于很多领域,例如:8087数学协处理器、HP-35计算器、天气预报、雷达信号处理、三维图像处理、嵌入式系统以及移动通信、数控振荡器、数字下变频器及数字鉴别器等;此外,它还应用于许多数字信号处理问题,如:快速傅里叶变换、离散余弦变换、小波变换、数字滤波器、离散Hartley以及求解线性系统。Altera公司[12]和Xilinx公司[13]还推出了CORDIC算法实现的IP核,可以按照实际需求直接调用。下面介绍一下CORDIC算法在数字通信及数控振荡器上的具体应用。利用CORDIC算法,可以实现数字通信中的数字调制与解调[14]。不论采用哪个哪种调制方式都可以用下面的公式表示:S(t)=A(t)cos(wt+δ(t)+φ)(1-1)式(1-1)表示的余弦函数用CORDIC处理器很容易实现。在移动通信方面,随着3G技术的到来,产生了支持多模式调制的系统需求,例如:WCDMA调制。一个抽象的WCDMA极化发射机的主要组成部分为:I/O调制器、CORDIC处理单元、桶形移位器、插值器以及PWM、DAC发生器,如图1-1所示,其中,CORDIC处理单元可以产生正弦调制函数。TX_inI/QModulatorInterpohtionCORDICInterpohtionBarrelS.PWMDACVCOSynthesizerTX_outRF-PA图1-1WCDMA极化发射机结构下面再看一下CORDIC在数控振荡器上的应用,数字控制振荡器(NCO,NumericallyControlledOscillator)是快速傅立叶变换(FFT,FastFourierTransform)、直接数据频率合成器(DDS,Directdigita

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档