Tuesday, May 21, 2019

Square Root Using Sequential Cordic

Square root using Sequential Cordic Assignment-2 Submitted to Dr. Sumam David Dept. of Electronics & converse Engineering NITK Surathkal Submitted by Rakshith Sharma 10EC87 Vikas Majjagi 10EC107 Mullapudi Srinivas 10EC99 Algorithm This is implemented for a range of input values 0. 75 since Xin should be less than 1 for the bit notation we used. Here we use the vectoring Mode of CORIC and its Hyperbolic subcase to calculate Xout=sqrt(xin2 -yin2 ) And yout= 0 Bit notation MSB(sign bit) . (bit 1 to 15 for +ve fraction) If we use xin=M+ ? and yin=M -1/4 we can sum up xout=sqrt(M). The other equations of the cordic remain the same ie, X(i+1)=x(i)+d(i)*y(i)*2-i Y(i+1)=y(i)+d(i)*x(i)*2-i Z(i+1)= z(i) d(i)*a(i) where a(i)=tan-1 (2-i) In this case we use 16bit fixed point notation with i sign bit and 15 bits in Q15 notation. A total of 12 iterations are used to put on the result where y(i) is sufficiently close to 0 and x(i) is approximately equal to sqrt(M).In case of hyperbolic, it is necessary to repeat jailbreak iteration number for 4 th and 7th iterations in order to make the series to converge. The utmost obtained x(i) is to be multiplied by 1. 207534056 to get the result. The flow chart for the algorithm implement in the VHDL enter is as shown in the following page. d(i)=1 if x(i)*y(i)0 Y(i) has gone to 0(apprx) input M=0. 63998413 output X(i)=0. 80035533 Y=0? &sh ift12 Yes No Yes X(i)=sqrt(M) Yes Check iteration number Shift=4 or 7? Shiftrep= 0? No No Shiftrep+1 Shift+1 d(i)=-1 No x(i)*y(i)

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.