原创 学习cordic算法所得(流水线结构、Verilog标准)

2015-11-20 14:44 662 2 2 分类: FPGA/CPLD

最近学习cordic算法,并利用FPGA实现,在整个学习过程中,对cordic算法原理、FPGA中流水线设计、Verilog标准有了更加深刻的理解。

首先,cordic算法的本思想是通过一系列固定的、与运算基数有关的角度的不断偏,摆以逼近所需的旋转角度。

 

yuanli1.jpg
为了避免复杂的乘法运算,用一系列微旋转来处,i次旋转可表示为:
yl3.jpg
yl4.jpg
yl5.jpg
yl7.jpg
yl7.jpg
由式(7)可知:xn,yn分别为输入角H的余弦和正弦值。
在Verilog实现上,主要体会到了流水线设计的重要性。以n=14为例,若不采用流水线设计,则旋转一个角度就需要14个时钟周期,这样输出正余弦波的最大频率变为Fclk/(1.jpg*14),若采用流水线设计,则输出最大频率变为Fclk/1.jpg,所以流水线设计具有非常重要的意义。
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
2
关闭 站长推荐上一条 /3 下一条