(2.7)--第4章 EDA技术及应用提高篇总结复习.ppt
《(2.7)--第4章 EDA技术及应用提高篇总结复习.ppt》由会员分享,可在线阅读,更多相关《(2.7)--第4章 EDA技术及应用提高篇总结复习.ppt(65页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第4章 EDA技术及应用提高总结复习4.4 CORDIC算法的应用设计内容提要内容提要 CORDIC算法的应用设计:系统设计要求;CORDIC算法简介;CORDIC算法推导;CORDIC算法实现结构;CORDIC算法编程思路;VHDL程序设计;仿真结果验证。4.4.1 CORDIC算法的应用设计(1)二、CORDIC算法简介在现代信号处理中,经常会遇到三角函数、超越函数和坐标转化等问题。传统的实现方法有查找表、多项式展开等方法。这些方法在精度、速度、简单性和效率方面往往不能兼顾,而CORDIC算法则可以很好地兼顾这几方面的要求。一、系统设计要求CORDIC是坐标旋转数字计算机(Coordina
2、te Rotations Digital Computer)的英文字头缩写,它于1959年由J.Volder提出,首先应用于导航系统,使得矢量的旋转和定向运算不需要做复杂运算。CORDIC算法的基本思想是通过一系列固定的、与运算基数相关的角度偏摆来逼近所需的旋转角度。可通过该算法的圆周模式、双曲线模式、线性模式等不同的实现模式,来计算乘除、平方根、正弦、余弦、反正切向量旋转以及指数运算等。由于基本运算单元只有移位与加减法,这就为CORDIC算法的FPGA实现打下了良好的基础。1971年,J.Walther提出了统一的CORDIC算法,把圆周旋转、双曲线旋转、线性旋转统一到同一个CORDIC迭代
3、方程中,为用统一的硬件实现多功能CORDIC算法奠定了理论基础。三、CORDIC算法推导CORDIC算法包含圆周系统、线性系统、双曲系统三种旋转系统。图1 坐标旋转图图1 坐标旋转图如果圆周的半径为R,平面坐标与旋转坐标之间存在如下关系:(1)(2)所有迭代角之和等于旋转角度,亦即每一步旋转角度,因此(3)经过N次迭代后,有(4)其中K为增益因子,当N=+时有(5)在旋转模式中,Z为初始化需要旋转的角,当Z旋转变为0时,公式变化如下:(6)经过N次迭代后,CORDIC公式的输出变为(7)其中,如果则N次迭代后有(8)从式(8)的分析可以看出,CORDIC 算法在圆周系统的旋转模式可以用来计算一
4、个输入角度的正弦值、余弦值和正切值,此外还可将极坐标变换为平面坐标。四、CORDIC算法实现结构CORDIC算法的实现有两种结构方案:迭代结构和流水线结构。基于迭代结构的CORDIC算法实现方案只需要一组移位及加减运算的单元,硬件开销很小,但控制比较复杂,而且完成一次CORDIC运算需要多个时钟周期,当对速度要求较高时很难满足要求。基于流水线结构的实现方案,每级CORDIC迭代运算都使用单独的一套运算单元,与基于迭代结构的实现方案相比,流水线结构的处理速度非常快,当流水线填满之后每个时钟周期就会计算出一组结果。本设计采用流水线结构进行设计:图2 CORDIC算法的流水线结构XIYIZI外部输入
5、XI、YI、ZI作为第一级流水线单元的输入X(0)、Y(0)、Z(0);中间各个单元首尾相接,也就是第N个单元的输入与N-1个单元的输出X(N-1),Y(N-1),Z(N-1)相连,第N个单元的输出X(N),Y(N),Z(N)又与N+1个单元的输入相连;XOYOYO最后一级处理单元的输出X(N)、Y(N)、Z(N)就是整个系统的输出XO、YO、ZO。内容提要内容提要 CORDIC算法的应用设计:系统设计要求;CORDIC算法简介;CORDIC算法推导;CORDIC算法实现结构;CORDIC算法编程思路;VHDL程序设计;仿真结果验证。4.4.1 CORDIC算法的应用设计(2)一、CORDIC
6、算法编程思路利用CORDIC算法求解正弦和余弦函数的程序可分为三个层次,二、VHDL程序设计1实现CORDIC算法的流水线单元电路CORDICPIPE.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY CORDICPIPE IS GENERIC(WIDTH:NATURAL:=16;PIPEID:NATURAL:=1);PORT(CLK:IN STD_LOGIC;ENA:IN STD_LOGIC;XI:IN SIGNED(WIDTH-1 DOWNTO 0);YI:IN SIGNED(WI
7、DTH-1 DOWNTO 0);ZI:IN SIGNED(19 DOWNTO 0);XO:OUT SIGNED(WIDTH-1 DOWNTO 0);YO:OUT SIGNED(WIDTH-1 DOWNTO 0);ZO:OUT SIGNED(19 DOWNTO 0);END ENTITY CORDICPIPE;类属表端口表ARCHITECTURE ART OF CORDICPIPE IS FUNCTION CATAN(N:NATURAL)RETURN INTEGER ISVARIABLE RESULT:INTEGER;BEGINCASE N IS WHEN 0=RESULT:=16#020000
8、#;WHEN 1=RESULT:=16#012E40#;WHEN 2=RESULT:=16#09FB4#;WHEN 3=RESULT:=16#05111#;.WHEN 15=RESULT:=16#05#;WHEN 16=RESULT:=16#03#;WHEN 17=RESULT:=16#01#;WHEN OTHERS=RESULT:=16#0#;END CASE;RETURN RESULT;END CATAN;函数CATAN的定义该函数的功能是:根据迭代步骤N的值求解该步需要旋转的角度ATAN(1/2N),具体求解的方法就是通过1个预计算的CASE查找表来实现。-FUNCTION DELTA
9、IS ACTUALLY AN ARITHMATIC SHIFT RIGHT FUNCTION DELTA(ARG:SIGNED;CNT:NATURAL)RETURN SIGNED ISVARIABLE TMP:SIGNED(ARGRANGE);CONSTANT LO:INTEGER:=ARGHIGH-CNT+1;BEGINFOR N IN ARGHIGH DOWNTO LO LOOP TMP(N):=ARG(ARGHIGH);END LOOP;FOR N IN ARGHIGH-CNT DOWNTO 0 LOOP TMP(N):=ARG(N+CNT);END LOOP;RETURN TMP;EN
10、D FUNCTION DELTA;函数DELTA的定义该函数的功能就是根据输入ARG和CNT求解ARG/2CNT,具体求解方法是通过将ARG算术右移CNT位的方式来实现,-将右移后空余各位补符号位-TMP的数据右移的CNT位图1 DELTA函数的有关参数的含义及移位操作操作示意图其中图中上面是ARG移位前的数位分布及移位操作的有关参数要求,下面是ARG移位之后的结果及有关操作的说明。FUNCTION ADDSUB(DATAA,DATAB:IN SIGNED;ADD_SUB:IN STD_LOGIC)RETURN SIGNED ISBEGINIF(ADD_SUB=1)THEN RETURN DA
11、TAA+DATAB;ELSE RETURN DATAA-DATAB;END IF;END FUNCTION ADDSUB;函数ADDSUB的定义该函数的功能就是根据控制信号ADD_SUB的不同分别将DATAA和 DATAB做加法或减法 SIGNAL DX,XRESULT:SIGNED(WIDTH-1 DOWNTO 0);SIGNAL DY,YRESULT:SIGNED(WIDTH-1 DOWNTO 0);SIGNAL ATAN,ZRESULT:SIGNED(19 DOWNTO 0);SIGNAL ZNEG,ZPOS:STD_LOGIC;BEGIN DX=DELTA(XI,PIPEID);DY=
12、DELTA(YI,PIPEID);ATAN=CONV_SIGNED(CATAN(PIPEID),20);-GENERATE ADDER STRUCTURES ZNEG=ZI(19);ZPOS=NOT ZI(19);-XADD XRESULT=ADDSUB(XI,DY,ZNEG);-YADD YRESULT=ADDSUB(YI,DX,ZPOS);-ZADD ZRESULT=ADDSUB(ZI,ATAN,ZNEG);-调用函数DELTA求出2-nXn,并将函数的返回值赋值给DX-调用函数DELTA求出2-nYn,并将函数的返回值赋值给DY-将ZI的符号位ZI(19)赋值给ZNEG,实际上ZNEG就
13、是-Sn-将ZI的符号位ZI(19)求反后赋值给ZPOS,实际上ZPOS就是Sn GEN_REGS:PROCESS(CLK)ISBEGINIF(CLKEVENT AND CLK=1)THEN IF(ENA=1)THENXO=XRESULT;YO=YRESULT;ZO 0);ZI:IN SIGNED(WIDTH-1 DOWNTO 0);XO:OUT SIGNED(WIDTH-1 DOWNTO 0);YO:OUT SIGNED(WIDTH-1 DOWNTO 0);END ENTITY CORDIC;ARCHITECTURE ART OF CORDIC IS TYPE XYVECTOR IS ARR
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2.7-第4章 EDA技术及应用提高篇总结复习 2.7 EDA 技术 应用 提高 总结 复习
限制150内