根据之前的更新,大家可能已经看出,其实除法器的实现,仅仅改变旋转的参考系即可,除法所使用的参考系为:z,其matlab代码为:
function c = chufaqi(x,y) t=1.0;z=0;for i=0:1:15 %y是x累加的结果 %z是斜度的长度 1/2^i是移动的距离 if y<0 %矢量向下移动 参考系为y y=y+x*t; z=z-t; t=t/2; else %矢量向上移动 参考系为y y=y-x*t; z=z+t; t=t/2; endendc=z;
CORDIC算法verilog实现仅需要更改乘法器的几个变量即可。
常量表
关于前几篇中使用的常量,后台看到了有朋友提问说是什么意思,在结尾和大家解释一下:
atan(1)对应的角度是45°;atan(0.5)对应的角度是26.565051177078°;atan(0.25)对应的角度是14.0362434679265°;atan(0.125)对应的角度是7.1250163489018°;atan(0.0625)对应的角度是3.57633437499735°;atan(0.03125)对应的角度是1.78991061°;atan(0.015625)对应的角度是0.8951737102111°;atan(0.