首页 改进型Cordic算法

改进型Cordic算法

举报
开通vip

改进型Cordic算法 2010,46(33) 1 引言 DDS专用电路易于集成、体积小、性价比和可靠性高且易 于程控,在软件无线电、通信雷达、测量、图像处理和HDTV等 领域得到广泛的应用。但由于DDS技术全数字结构、波形 ROM工作速度和数模转换的缺陷,目前市场上采用CMOS和 TTL等工艺制作的一些DDS专用集成电路如AD9850、Q2368 等其输出频率一般在几十MHz至 400 MHz左右,无杂散动态 范围(SFDR)大多在 60 dB至 80 dB之间,输出量大且难于预 测的杂散限制了该技术在某些领域的应用。在传统的DD...

改进型Cordic算法
2010,46(33) 1 引言 DDS专用电路易于集成、体积小、性价比和可靠性高且易 于程控,在软件无线电、通信雷达、测量、图像处理和HDTV等 领域得到广泛的应用。但由于DDS技术全数字结构、波形 ROM工作速度和数模转换的缺陷,目前市场上采用CMOS和 TTL等工艺制作的一些DDS专用集成电路如AD9850、Q2368 等其输出频率一般在几十MHz至 400 MHz左右,无杂散动态 范围(SFDR)大多在 60 dB至 80 dB之间,输出量大且难于预 测的杂散限制了该技术在某些领域的应用。在传统的DDS 的设计中,一方面为了要得到更精确的波形幅度值,就必然要 求ROM中存放更多的数据;另一方面,由于大容量的ROM存 在高功耗、高成本、低可靠性的弊端,同时也限制了ROM的数 据读取速度,这样就只能用相位累加器输出码的高A位来寻 址ROM以求降低存储容量。那么,精度和速度就不能够同时 兼顾。 近些年来,随着Cordic算法在数字信号处理以及超越函 数的计算中应用越来越多,国内外众多学者和研究人员将 Cordic算法代替波形ROM应用于DDS设计中以期得到理想 中优化的DDS电路。主要在文献[1-4]的基础上对Cordic算法 进行改进,将改进后的算法应用于DDS系统设计中,通过VHDL 描述、Quartus II综合编译和Modelsim时序仿真后下载至 FPGA,得到杂散小、SFDR大、计算速度快和占用硬件资源少 的DDS硬件电路。 2 Cordic算法与嵌入Cordic于DDS设计中的原理 Cordic算法是一种纯算术的三角函数计算,最初由 J.Volder 于 1959年提出 [5],用于美国航空导航控制系统以解决导航实 时运算中的三角函数、开方及反三角函数计算等问题,基本思 想是通过连续的移位和加减运算计算出常用的如:sin、cos、 sinh、cosh等函数值。由于基本的运算单元主要有移位器和加 减器,所以它为VLSI的实现提供良好的理论基础。随着VL- SI的快速发展,Cordic算法已广泛应用于离散傅氏变换、三角 改进型Cordic在DDS杂散抑制中的研究与仿真 苗 圃,张海涛,庞永星 MIAO Pu,ZHANG Hai-tao,PANG Yong-xing 河南科技大学 电子信息 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 学院,河南 洛阳 471003 College of Electronic Information Engineering,Henan University of Science & Technology,Luoyang,Henan 471003,China E-mail:miaopusias@126.com MIAO Pu,ZHANG Hai-tao,PANG Yong-xing.Research and simulation on DDS spurious suppression based on im- proved Cordic.Computer Engineering and Applications,2010,46(33):63-66. Abstract:According to the output of DDS spectral characteristics and the Cordic algorithm,the stepped rotation angle and multi-regional phase mapping methods are taken to solve the uncertain iteration direction and non-integer period of DDS based on Cordic structure.The spectrum of the signal from the improved Cordic of DDS is pure and the spurious signal is suppressed.16-stage pipeline structure of DDS is designed with FPGA and VHDL.The study of Modelsim simulation and Quartus compilation shows effectiveness of these two improved methods with lower calculation errors of 10-5,less hardware consumption of 23%,and the band of SFDR is enlarged to 200 dB. Key words:improved Cordic;Direct Digital Synthesizer(DDS);spurious suppression;Field-Programmable Gate Array(FPGA); iterate direction 摘 要:依据DDS(直接数字频率合成)输出频谱特性和Cordic(坐标旋转数字计算机)算法基本原理,针对基于Cordic结构的 DDS设计中相位角迭代方向不确定性和旋转角度非整周期性的缺陷,采用了相位角分阶段旋转法和多区域相位映射法对Cordic 结构的DDS进行改进。通过Matlab输出信号和频谱仿真验证了所用方法的正确性和可行性,使用VHDL语言设计出 16级流水 线结构的改进后Cordic型DDS。Quartus II综合编译和Modelsim仿真后得出改进后DDS计算误差为 10-5、硬件消耗仅为 23%、 SFDR(无杂散动态范围)扩至200 dB。理论分析和实验结果证明了这两种方法改进综合后抑制杂散的有效性。 关键词:改进型Cordic;直接数字频率合成(DDS);杂散抑制;现场可编程门阵列(FPGA);迭代方向 DOI:10.3778/j.issn.1002-8331.2010.33.017 文章编号:1002-8331(2010)33-0063-04 文献标识码:A 中图分类号:TN92 作者简介:苗圃(1987-),男,硕士研究生,主要研究领域为嵌入式系统及应用;张海涛(1972-),男,博士,副教授,主要研究领域为嵌入式系统和智 能网络控制;庞永星(1969-),男,博士,副教授,主要研究领域为计算机测控技术和空中目标计算机模拟。 收稿日期:2010-06-28 修回日期:2010-08-28 Computer Engineering and Applications计算机工程与应用 63 Computer Engineering and Applications计算机工程与应用2010,46(33) 函数计算、线性预测参数等方面。 设初始向量M(xiyi)经过旋转角度 θ后得到向量 N(xjyj), 那么根据坐标变换规则可以得出[7]: é ëêê ù ûúú xj yj = éë cos θ sin θ ùû -sin θ cos θ é ëê ù ûú xi yi (1) 经过一系列推导运算[1],得出: ì í î ïï ïï xi + 1 = xi - Sn yi2-i yi + 1 = yi + Sn xi2-i zi + 1 = zi - Sn arctan(2-i) ,i = 01N - 1 (2) 式(2)便是Cordic算法的数学 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 达式。变量 z 用来表示剩余 没有旋转完的角度,当 zi > 0时,Sn = +1;当 zi < 0时,Sn = -1。 令 p = 1 Õ i = 0 N - 1 1 1 + 2-2i ,此时Cordic算法的核心主要是计算出: [xjyjzj]=[p(x0 cos(z0)- y0 sin(z0))p(y0 cos(z0)+ x0 sin(z0))0] (3) 所以,如果初始向量 M(xiyi) = (1/p,0),则经过一系列特定角 度 θi的依次旋转后,可以得到 N(xjyj)的坐标为 (cos θ,sin θ)。 那么,将Cordic算法嵌入DDS设计结构中,其思想就是在系统 时钟 fC 的控制下,通过相位累加器的输出 θ(n) ,取初始值 y0 = 0,x0 = 1/p =K » 0.607 25,z0 = θ(n),Cordic算法模块便可 以计算出相应的幅度值,代替了传统DDS结构中的ROM查 找表实现相幅转换,通过频率控制字K来改变输出正弦波的 频率,从而实现了DDS过程。 3 Cordic算法改进 由于 Cordic算法每次旋转的角度 θi = arctan(2-i)是固定 的,多次旋转后的相位累加值为:å i = 0 ¥ arctan(2-i) » 99.883,所以 将Cordic算法应用于高速DDS系统中主要存在两个问题:一 个是角度迭代过程中每一次向量旋转的方向都要有本次迭代 后剩余角度的计算结果来确定[2],导致其运行速度减慢。另一 个是对于所有的N值,旋转的角度只能覆盖[ - π 2 ,π 2 ],而不能 达到DDS系统所要求的整个 2π周期。因此,针对这两种问题, 使用如下方法进行改进。 3.1 分阶段旋转 针对旋转方向判断方法的不足性,改进思想就是在算法 迭代开始时候,设法知道全部迭代阶段或者部分迭代阶旋转 角度的方向,提前做出判断,避免剩余角度的计算和存储,从 而提高运行速率,减少ROM消耗。 设在 [0π 4 ]内的任意相位角 θ,其弧度值用N位二进制小 数表示为 θ = å k = 1 N bk 2 -k ,其中 bk =0或 bk =1为角度 θ 二进制数 的位值。同时 θ可以表示为[3]: θ = å k = 2 N + 1 2-k + å k = 2 N + 1 rk 2 -k = 1 2 - 1 2N + å k = 2 N + 1 rk 2 -k = δ0 + å k = 2 N + 1 rk 2 -k (4) δ0 为常数;rk = 2bk - 1,取值为+1或-1;由式(4)可以看出,θ 是以 δ0为初始角度开始旋转,每次旋转角度依次为 2-2 rad、 2-3 rad、2-k rad,当 rk = +1时,顺时针旋转,当 rk = -1时,逆 时针旋转,且不需要剩余角度的计算,因此,Cordic算法简化为: ìíî xk + 1 = xk - rk tan(2-k)yk yk + 1 = yk + rk tan(2-k)xk (5) 将 tan(2-k)按泰勒公式展开,得出: tan(2-k)= 2-k + 2-3k 3 + 2 15 2-5k + (6) 因此,观察式(6),当 k
本文档为【改进型Cordic算法】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_895272
暂无简介~
格式:pdf
大小:628KB
软件:PDF阅读器
页数:4
分类:互联网
上传时间:2013-04-18
浏览量:20