改进的并行CORDIC算法研究及其FPGA实现_第1页
改进的并行CORDIC算法研究及其FPGA实现_第2页
改进的并行CORDIC算法研究及其FPGA实现_第3页
全文预览已结束

下载本文档

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

文档简介

1、    改进的并行CORDIC算法研究及其FPGA实现        张 甜, 王祖强, 徐 辉 时间:2008年06月18日     字 体: 大 中 小        关键词:        摘要:关键词:CORDIC(Coordinated Rotation Digital

2、 Computer),即协调旋转数字计算机,可广泛应用于基本函数的计算,如DSP、FFT、DCT等技术函数的计算。CORDIC算法是Jack Volder于1959年首先提出的。为了扩展可解决的基本函数个数,J.Walter于1971年提出了统一的CORDIC算法(The Unified Cordic Algorithms);2004年,Tso-Bing Juang等又提出了一种改进的并行的CORDIC算法,该改进的算法主要运用BBR(Binary-To-Bipolar Recoding)和MAR(Microrotation Angle Recoding),大大提高了CORDIC算法的迭代速度

3、,并且达到了很高的精度。随着可编程逻辑器件规模的增大和应用范围的扩大,使得利用硬件电路实现该算法成为可能并具有良好的应用价值。1 CORDIC算法原理CORDIC算法可分为旋转(rotation)和定向(vectoring)两种方式,还可分为圆形坐标、双曲线坐标和线形坐标三种方式,圆形坐标下旋转方式的原理公式如下:式中,xi,yi和xi+1,yi+1分别表示旋转前后的向量,i-1,1表示每次旋转的方向。从公式可知,该运算只有移位和相加(相减)运算。为了获得i的值,需另设一个变量zi表示每次旋转后的角度与目标角度的差值,然后利用公式zi+1=zi-i·arctan(2-i)进行计算。根

4、据Jack Volder的推导,经过n次迭代,最终可以得到迭代公式如下:通过上面的算法介绍可以看出,每次都要先通过计算zi+1和zi才能得到i的值,这样降低了运算速度。参考文献3就是在此基础上,提出了一种提前算出i的方法,使得速度得以提高。2 并行CORDIC算法原理把需要旋转的角度范围限定在-/4/4之间,并把它分解成下式:3 利用FPGA实现算法利用FPGA实现算法时,采用32位精度,即B=32。根据m计算公式可以计算出m=11。根据输入的值和公式(6),可以计算出前11个值。根据已经计算出的表1可得出。再根据公式(8),(9)计算出剩下的值。经过移位器,加法器最终可以得到旋转后的向量坐标

5、。根据上述原理,需要移位40次。所以可通过反复调用图1所示的模块来节约资源。对于本算法,第i+1个模块的输入为第i个模块的输出,因此,对模块的工作时序有一定的要求。针对FPGA中寄存器资源较为丰富的特点,在上述模块的输入输出端分别加入寄存器,对输入和输出进行锁存;使用两个进程描述移位加法和控制信号,并且使用不同的时钟信号作为敏感信号;为了保持整个设计的同步性,又采用了两相门控时钟进行控制(如图2所示)。图中clk_in作为输入寄存器的时钟,而clk_out作为输出寄存器的时钟。两相门控时钟生成的相关程序如下:always (cnt)begincase (cnt)2d0: clk_out,clk

6、_in=2b01;2d1: clk_out,clk_in=2b10;2d2: clk_out,clk_in=2b00;default:clk_out,clk_in=2b00;endcaseend4 仿真结果本文在Quartus II环境下对利用Verilog编写的RTL代码进行了综合,使用了115个LAB。由于在一片FPGA芯片中可集成其他相关模块,在系统设计中具有良好的应用价值。对其进行时序分析,本设计可达到的最大时钟为58MHz,满足高速系统设计的要求。图3是在Quartus II下以初始角度0度、旋转角度30度为例的一个仿真结果,经过118个时钟周期后可以得到旋转后的正弦值和余弦值。通过理论分析及仿真实验结果可以看出,这种新的并行CORDIC算法在FPGA上实

温馨提示

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

评论

0/150

提交评论