CORDIC算法 IP核详解
- CORDIC(Coordinate Rotation Digital Computer)算法即坐标旋转数字计算方法,是J.D.Volder1于1959年首次提出,主要用于三角函数、双曲线、指数、对数的计算。该算法通过基本的加和移位运算代替乘法运算,使得矢量的旋转和定向的计算不再需要三角函数、乘法、开方、反三角、指数等函数。
- FPGA不擅长复杂的数学运算,不支持浮点数,所以很多操作收到了限制,而cordic可以熟练实现各种比较复杂的数学计算,正好与我们的verilog语言互补。
认识CORDIC算法
Coordinate Rotation Digital Comuper 是 CORDIC 算法的英文全称,大意是指不断旋转坐标接近答案,可以实现一些常用的函数,比如sin()/cos(),其实现成本是硬件可以承担的。
COEDIC算法的三种功能
(一)线性函数(Linear Method)
(二)三角函数(Circular/Trigonometric Method)
(三)双曲函数(Hyberbolic Method)
CORDIC算法是十分灵活的,可以根据自己的需求是调整一些设置。
首先介绍伪旋转的概念: