xilinx_CORDIC算法(非常经典)
FPGA有关的cordic讲解,xilinx公司ppt型的详细讲解,中文。从原理到实现(模型的建立等)。简介目前的具有许多乘法器和加法器。然而各种各样的通信技术和矩阵算法则需要三角函数、平方根等的运算如何在上执行这些运算可以使用查找表或是迭代法本节介绍了算法这是一个移位相加算法允许计算不同的三角函数例如0.0.0包括除法和对数酾数在内的其它函数。xⅫNX关于算法的细节问题,可参见下面的材料技术并不是什么新鲜的东西。事实上它可以追溯到年由发表的一篇文章。在上个世纪五十年代,在大型实际的计算机中的实行移位相加受到了当时技术上的限制,所以使用变得非常必要。到了七十年代,和其他公司出产了手持计算器,许多计算器使用一个内部单元来计算所有的三角函数(了解这件事的人们一定还记得,那时求一个角度的正切值需要延迟大约1秒中)二十世纪八十年代,随着高速度乘法器与带有大存储量的通用处理器的出现, CORDIC算法变得无关紧要了。然而在二十一世纪的今天,对于来说,定是在应用中(诸如多输入多输出(波束形成以及其他自适应系统)计算三角函数的备选技术。wwwsteepestascenCO1笛卡尔坐标平面旋转在坐标平面上将点(,)旋转0角度到点(,)的标准方法如下所示00这被称为是平面旋转、向量旋转或者线性矩阵代数中的旋转。xⅫNX上面的方程组同样可写成矩阵向量形式00例如一个相移为wwwsteepestascenCO1伪旋转通过提出因数,方程可写成下面的形式000(0)如果去除0项,我们得到伪旋转方程式0)6(0)即旋转的角度是正确的,但是与的值增加9倍由于所以模值变大。注意我们并不能通过适当的数学方法去除0项然而随后我们发现去除θ项可以简化坐标平面旋转的计算操作。xⅫNX在坐标平面中0因此经过伪旋转之后,向量的模值将增加0倍。向量旋转了正确的角度但模值出现错误。wwwsteepestascenCO1方法方法的核心是伪旋转角度θ,其中θ。故方程为下面的表格指出用于算法中每个迭代的旋转角度精确到位小数xⅫNX在这里,我们把变换改成了迭代算法。我们烀各种可能的旋转角度加以限制,使得对任意角度θ的旋转能够通过一系列连续小角度的旋转迭代来完成。旋转角度遵循法则:0,遵循这样的法则,乘以正切项变成了移位操作。前几次迭代的形式为第次迭代旋转第次迭代旋转第次迭代旋转等很显然,每次旋转的方向都影响到最终要旋转的累积角度。在≤日的范围内的任意角度都可以旋转。满足法则的所有角度的总和0为。对于该范围之外的角度,可使用三角恒等式转化成该范围内的角度。当然,角分辨率的数据位数与最终的精度有关。。因此,在次旋转以后,为了标定伪旋转的幅度,要求乘以一个系数角分辨率的数据位数对最终的旋转精度非常关键。wwwsteepestascenCO1
- 2020-11-29下载
- 积分:1