输入:I,Q,
输出:相位,幅度
CORDIC算法的核心在于利用加减和位移运算(对于FPGA很合适的运算),计算一个矢量的相位和幅度。
我们知道FPGA上没有开根号这样的运算,所以如果给定I,Q信号,计算其幅度sqrt(I^2+Q^2),无法直接使用该公式。
一个矢量P0旋转一定角度后变为P1,其坐标的关系如下:
每一步移动一个角度,角度越小,移位的越大。在N步的计算中,K是一个固定值,趋近于1.6.真正需要迭代的公式如下:
Xn+1 = Xn - SnYn2-n
输入:I,Q,
输出:相位,幅度
CORDIC算法的核心在于利用加减和位移运算(对于FPGA很合适的运算),计算一个矢量的相位和幅度。
我们知道FPGA上没有开根号这样的运算,所以如果给定I,Q信号,计算其幅度sqrt(I^2+Q^2),无法直接使用该公式。
一个矢量P0旋转一定角度后变为P1,其坐标的关系如下:
每一步移动一个角度,角度越小,移位的越大。在N步的计算中,K是一个固定值,趋近于1.6.真正需要迭代的公式如下:
Xn+1 = Xn - SnYn2-n