首页 » 科学 » 基于CORDIC改进算法的NCO设计_算法_角度

基于CORDIC改进算法的NCO设计_算法_角度

萌界大人物 2024-11-10 19:33:39 0

扫一扫用手机浏览

文章目录 [+]

(苏州大学 电子信息学院,江苏 苏州215000)

数控振荡器(NCO)已经被广泛运用于数字旗子暗记处理、软件无线电系统等诸多领域中。
针对基于传统CORDIC(Coordinate Rotation Digital Computer)算法的NCO存在事情频率较低、精度不高、且花费资源多等缺陷,通过对CORDIC算法进一步优化改进,提出了一种NCO的设计方法,将覆盖角度扩展至全体圆周范围,实现了幅度与相位之间分别对应,且输出的正余弦波形具有完备正交性。
实验结果表明,设计的NCO具有运算速率快,花费硬件资源较少,构造大略易于利用硬件电路实现的上风,最高频率比基于传统CORDIC算法的NCO提高了114.3%,并将精度提高至10-5~10-6的数量级。

基于CORDIC改进算法的NCO设计_算法_角度 基于CORDIC改进算法的NCO设计_算法_角度 科学

数控振荡器;CORDIC算法;精度;流水线

基于CORDIC改进算法的NCO设计_算法_角度 基于CORDIC改进算法的NCO设计_算法_角度 科学
(图片来自网络侵删)

中图分类号:TN402

文献标识码:A

DOI:10.16157/j.issn.0258-7998.2017.03.010

中文引用格式:王申卓,胡春林,胡广垠,等. 基于CORDIC改进算法的NCO设计[J].电子技能运用,2017,43(3):43-47.

英文引用格式:Wang Shenzhuo,Hu Chunlin,Hu Guangyin,et al. Design of NCO based on improved CORDIC algorithm[J].Application of Electronic Technique,2017,43(3):43-47.

0 弁言

数控振荡器(Numerically Controlled Oscillator,NCO)是旗子暗记处理系统的主要组成部分。
随着当代通信系统的不断发展,NCO凭借其相位可连续线性变革、频率分辨率高、全数字化处理等优胜特性,在图像处理、快速傅里叶变换、直接数字频率合成器等设计中得到了广泛运用。

传统数控振荡器的实现方法为只读存储器查找表法(ROM LUT),如图1所示。
这种方法在对分辨率哀求不高的情形下,是一种大略的实现办法。
但是若要进一步提高分辨率,就会花费大量的ROM资源;此外,存储器读取速率的瓶颈也限定了NCO的输出速率。
而CORDIC算法易于利用数字电路实现,仅通过大略的加减法和移位操作就可以完成多种硬件电路难以直接实现的繁芜运算,因此在NCO的设计中也得到了很好的运用。
本文将对传统CORDIC算法进一步改进,并结合改进方法提出一种适宜于硬件实现的数控振荡器的设计方法,从而提高输出精度和运算速率。

1 CORDIC算法事理

坐标旋转数字打算(Coordinate Rotation Digital Computer,CORDIC)首次由Jack Volder于1959年提出,1971年Walther统一了CORDIC算法的形式。
CORDIC的基本思想是通过一系列只与运算基数有关的固定小角度的不断偏摆从而逼近期望角度,此算法具有线性收敛域和序列特性[3]。

CORDIC算法的基本事理是利用了Givens旋转法则。
假设给定向量A(x0,y0),当旋转过一定角度θ后得到新向量B(x1,y1),如图2所示。

根据旋转变换法则,可得式(1):

当N→∞时,KN收敛于一个常数,即KN≈0.607 252 935。
当迭代次数N得到确定,KN的值也就确定了,可以把它看作一个常数,以是只要提前打算出定标因子KN,就能精确地利用式(6)进行CORDIC求值运算。
可见对付每一次小角度θi的旋转运算,实际上只与δi2-i运算有关,这在硬件上的反响便是加/减法和移位操作。

末了,通过引入参数z表示当前角度和期望角度的偏差值,来确定下一次旋转的方向,即判断δ的符号。
令zi+1=zi-θi(z0=θ,i=0,1,…,N-1),当z≥0时,δ=+1;当z≤0时,δ=-1。
若经由多次旋转后,就可以得到与期望角度充分靠近的旋转向量。
如果选取初始值(x0,y0)=(KN,0),在进行N次迭代运算后,结果将收敛于(sinθ,cosθ)。

2 CORDIC算法改进

2.1 算法迭代构造

由CORDIC算法的事理可以看出,此算法每一次的运算构造相似,具有可迭代的特性。
对付传统的反馈构造,每次运算都利用同一组硬件反复进行迭代,此构造占用硬件资源少,能够在一定程度上缩小电路面积。
但是由于须要不断向输入端反馈输出数据,而且还须要一个状态机来跟踪全部迭代过程,会导致全体系统运行速率降落,吞吐量减小。
如果须要实现高速高精度的输出,就必须采取高速全流水线构造,如图3所示。
流水线构造的每一级迭代都利用单独的运算单元,与反馈构造比较,虽然花费了较多的硬件资源,但换来的是运算速率提高,吞吐量增大,特殊适宜在硬件上实现[4]。

此外,有限次数的迭代运算常日无法完备肃清累加角度与期望角度间的偏差,因此我们引入残余角偏差ε,并将式(4)改写为:

由式(8)可以看出,随着迭代次数或者流水级数的不断增加,近似偏差ε的趋势是减小的,角度累加所得到的值会逐渐逼近期望角度,CORDIC算法的精度也会不断提高。
但是考虑到实际设计中不能无限制增加流水线级数,一方面流水线级数过多会降落系统整体运算速率,另一方面流水增加至一定级数后,对精度的提高微乎其微,但是却花费了大量的硬件资源,因此必须选择适宜的流水线级数,来掌握硬件本钱和打算繁芜度。
根据Yu Hen Hu提出ε的上界[8]:

个中AN-1为末了一次的旋转角度,N为旋转次数。
为了达到所须要的精度,我们选择N=16,即通过16级并行流水线构造来实现CORDIC算法。

2.2 覆盖角度扩展

CORDIC算法每一级的角度旋转由式(3)得到了确定,表1中列举了个中的部分角度。

式(3)是关于i的递减函数,将这些角度累加,当i→∞时:

可见CORDIC算法能够打算角度的收敛域为[-99.88°,99.88°],而我们须要输出全体圆周范围内角度的正余弦值,显然常规的方法无法知足。

利用三角函数的对称性,通过象限转移的方法就能够将打算角度扩展至[-π,π]。
文献[5]将[-π,π]映射至[0,π/4],但是在末了对输出的一组数据是否交流或改变符号须要进行判断,而文献[7]中将[-π,π]映射至[0,π/8],但须要对产生的常数因子进行补偿。
本文将全体圆周[-π,π]划分为8个象限(如图4所示),并将所有角度映射至[-π/4,π/4],即1号和8号象限,并同时对初始值X0和Y0进行处理。
这样既不会产生额外的常数因子,也不须要在末了对输出结果进行数据交流或符号改变。

利用三角函数的对称性,根据θ所在象限,对初始值分别做如表2的处理。

这样的数据预处理过程虽然会花费一定的硬件资源,但特殊适宜流水线构造的CORDIC算法,对提高全体系统的速率有很大帮助。

2.3 打算数据位扩展

在实际电路的实现中,由于CORDIC算法每一级迭代利用的都是有限精度的代数打算,就导致了其余一种偏差,这种因数据位宽有限而产生的偏差称为舍入偏差。
以是除了增加迭代次数以外,还可以通过扩展CORDIC算法数据的位宽来提高精度。
舍入偏差σ的大小与运算数据的位宽b有关,根据σ=2-b-1这一关系式可知,操作数的位宽每扩展一位,就能够将舍入偏差缩小为原来的一半。
当增加流水的级数无法大幅提高算法精度时,扩展CORDIC打算数据位宽是另一种很好的方法,如图5所示。

在本设计中,由于NCO后端接入了混频模块,输出数据必须为16位与之匹配,但是在CORDIC内部迭代打算时,我们把数据扩展至20位,末了对输出结果截位处理,然后再送入下一级。
通过对数据位宽扩展4位的方法,可以有效地提高运算精度。

3 基于CORDIC改进算法的NCO系统构造

NCO紧张用于产生正、余弦旗子暗记,本设计基于CORDIC改进算法,由前端处理、CORDIC迭代以及输出处理这3个部分组成,其系统构造如图6。
当输入不同的频率掌握字时,NCO输出波形的频率也随之改变。

在前端处理中,我们采取了24位相位累加器以担保频率分辨率达到哀求,并通过判断相位值的高3位θ[23:21],将目标角度映射至[-π/4,π/4]区间,详细映射方法见表2;而改动因子可以根据式(7)求出,由于算法的流水级数事先已经确定,以是只要将N=16代入就可以准确的得到KN,再通过数据预处理确定X0和Y0的初始值,从而在迭代之前就完成对输出结果的补偿,进一步提高全体系统的速率。

第二部分为16级CORDIC流水线,它是全体系统的核心,流水线构造中的每一行相称于CORDIC算法中的一级迭代,其硬件构造如图7所示。
每一级电路包括三个加/减法器和两个移位器,个中Ai表示各级基本旋转角度值,Sign为各级运算的加/减掌握旗子暗记,它的符号由Zi的最高位确定。

末了一部分对数据舍入截位,并输出正、余弦两路旗子暗记。
本设计适用于多种旋转精度的需求,灵巧性好,资源利用率高,全并行流水的构造具有速率快、吞吐量大的特点。

4 系统仿真及性能剖析

本设计根据图5,在Xilinx ISE 14.7环境下搭建软件平台,采取Verilog HDL硬件描述措辞完成编译综合,利用Modelsim SE 10.1c进行功能仿真验证,末了通过MATLAB R2012b对结果进行剖析。

在Xilinx ISE中完成代码编写后,调用Modelsim进行软件仿真,当输入不同频率掌握字,得到NCO产生的正余弦旗子暗记结果如图8所示。
从图中可以看出,天生的 I、Q两路波形旗子暗记具有完备正交性,并且经由角度映射后实现了全体圆周区间的覆盖,完备可以替代基于查找表的传统NCO设计办法。

本文选用Xilinx Virtex-4芯片,经由Xilinx ISE对代码编译综合后,得到设计所花费的硬件资源及最高事情频率等信息。
在16位小数精度、16级流水迭代的情形下,传统CORDIC算法设计而成的NCO利用了1 021个逻辑单元,而基于CORDIC改进算法的NCO模块利用了904个逻辑单元,节省了约11.46%的硬件资源。
从表3可以看出,采取经由优化后的CORDIC算法,系统最高频率可达287.64 MHz,比基于查表法及常规CORDIC算法NCO的性能分别提高了354.6%和144.3%。

末了将Modelsim仿真得出的数据在[-π,π]之间均匀采样5 000个点并导入MATLAB,经由处理后得到图9。
再从[-π/4,π/4]中选取多少角度进行偏差比拟剖析,如表4所示。

I、Q通路正余弦值的偏差紧张由迭代次数以及位宽的限定引起,通过对表4的数据剖析可知,传统算法在利用24位小数位的情形下进走运算,偏差达到10-4;而基于本文的CORDIC改进算法仅利用16位数据位宽就能够将精度提升至10-5~10-6的数量级,以是本设计在提高精度的同时还减少了硬件资源的花费,在精度和面积上均具有一定的上风。

5 结束语

本文在传统CORDIC算法根本上,提出改进方案并运用于数字掌握振荡器的设计,通过仿真验证及性能剖析证明其可行性。
实验结果表明,本设计进一步提升了系统的速率和精度,并在一定程度上减少了硬件资源花费。
目前,该NCO模块已经成功的运用于某DDC芯片的产品中,并且表现出良好的性能及稳定性。

参考文献

[1] LIU Y,FAN L,MA T.A modified CORDIC FPGA implementation for wave generation[J].Circuits,Systems and Signal Processing,2014,33(1):321-329.

[2] Pramod Kumar Meher,Sang Yoon Park.CORDIC designs for fixed angle[J].IEEE Transaction on Very Large Scale Integration(VLSI) System,2013,21(2):217-227.

[3] 张晓彤,辛茹.基于改进稠浊式CORDIC算法的直接数字频率合成器设计[J].电子学报,2008,36(6):1144-1148.

[4] KAUSHIK B,RAKESH B.Architectural design and FPGA implementation of radix-4 CORDIC proseccor[J].Micropro-cessors and Microsystems,2010,34(2-4):96-101.

[5] 徐成,秦云川.免缩放因子双步旋转CORDIC算法[J].电子学报,2014,42(7):1441-1445.

[6] 张朝柱,韩吉南,燕慧智.高速高精度固定角度旋转CORDIC算法的设计与实现[J].电子学报,2016,44(2):485-490.

[7] MAHARATNA K,BANERJEE S,GRASS E,et al.Modified virtually scaling-free adaptive CORDIC rotator algorithm and architecture[J].IEEE Transaction on Circits Systems for Video Technolog,2005,15(11):1463-1474.

[8] HU H Y.The quantization effects of the CORDIC algorithm[J].IEEE Transactions on Signal Processing,1992,40:834-844.

标签:

相关文章

活在比亚迪阴影下的哪吒_哪吒_车型

文 | 光子出行,作者 | 冷泽林, 编辑 | 王潘去年5月,哪吒冲破了长久以往的蔚小理格局,以4508辆的交付成绩把空想从第三名...

科学 2025-01-07 阅读0 评论0

工商网代码,介绍我国电子商务的数字基石

随着互联网技术的飞速发展,电子商务已成为我国经济发展的重要引擎。作为电子商务的核心,工商网代码在保障交易安全、维护市场秩序等方面发...

科学 2025-01-07 阅读0 评论0

师设计网站,赋能教育,创新未来

随着信息技术的飞速发展,教育行业也在不断变革。在这个时代背景下,师设计网站应运而生,以创新的设计理念,为我国教育事业注入新的活力。...

科学 2025-01-07 阅读0 评论0

市辖区发展,城市化进程中的亮丽风景线

随着我国城市化进程的加快,市辖区作为城市的重要组成部分,正日益成为推动经济社会发展的重要引擎。市辖区不仅是城市居民生活的核心区域,...

科学 2025-01-07 阅读0 评论0

常州,一座融合历史与现代的活力之城

常州,这座位于江苏省中部的历史文化名城,自古以来就是兵家必争之地,经济繁荣,文化昌盛。如今,常州正以崭新的姿态,展示着它的活力与魅...

科学 2025-01-07 阅读0 评论0