function[x,y]=get_sincos(Angle,precision)%Initial Angle and
precision
InitialAngle=Angle*pi/180;%Coneversion to radian
K=1.0;
for i=1:precision
cordic_table{i}.k=K;
cordic_table{i}.phase_rads=atan(K);
K=0.5*K;
end;
x=0.60725293510314;y=0;%Initial Value when computing
sin/cos
aCC_phase_rads=InitialAngle;
…
for i=-90:1:90
[x,y]=get_sincos_fxp(i,22);
xx(j)=x;
yy(j)=y;
j=j+1;
end;
figure(1)
plot(xx,′r′)
hold on
plot(yy,′b′)
hold off
在传统DDS设计的基础上,用CORDIC算法取代传统的查找表,提升了转换速度和精度,同时基于改进的并行流水线型的CORDIC,进一步提升了转换速度,在大部分转换角度固定的情况下,对初始值进行优化可以节省1/3的硬件资源。该设计已经作为IP应用于高端DDS芯片中。
参考文献
[1] 郭金淮,汤汉屏.DDS技术浅析[J].数据通信,2002(3).
[2] FATIMA S,WOOLDRIDGE M.An agent2based framework for multi2issue negotiation[J].Artificial Intelligence,2004,52(1):1245.
[3] 张明友.数字阵列雷达和软件化雷达[M].北京:机械工业出版社,2008.
[4] VOLDER E.The CORDIC Trigonometric computation teclrnique[J].IRE Trans.EleCTRonic Comp-Utters,1959,EC 8:330-334.
[5] 周柱.基于CORDIC算法的直接频率合成技术的研究和应用[D].国防科学技术大学,2005.
[6] MAHARATNA K,VALLS J.50 Years of CORDIC:Algorithms,Architectures,and Applications[J].IEEE Circuits and SystEMS Society 1549-8328 2009:1893-1907.
[7] CONSIDINE V.CORDIC trigonometric function generate for DSP,CH2673-2/0000-2381/1.00[J].IEEE,1989.