CORDIC Designs for Fixed Angle of Rotation

Rotation of vectors through fixed and known angles has wide applications in robotics, digital signal processing, graphics, games, and animation. But, we do not find any optimized coordinate rotation digital computer (CORDIC) design for vector-rotation through specific angles. Therefore, in this paper, we present optimization schemes and CORDIC circuits for fixed and known rotations with different levels of accuracy. For reducing the area- and time-complexities, we have proposed a hardwired pre-shifting scheme in barrel-shifters of the proposed circuits. Two dedicated CORDIC cells are proposed for the fixed-angle rotations. In one of those cells, micro-rotations and scaling are interleaved, and in the other they are implemented in two separate stages. Pipelined schemes are suggested further for cascading dedicated single-rotation units and bi-rotation CORDIC units for high-throughput and reduced latency implementations. We have obtained the optimized set of micro-rotations for fixed and known angles. The optimized scale-factors are also derived and dedicated shift-add circuits are designed to implement the scaling. The fixed-point mean-squared-error of the proposed CORDIC circuit is analyzed statistically, and strategies for reducing the error are given. We have synthesized the proposed CORDIC cells by Synopsys Design Compiler using TSMC 90-nm library, and shown that the proposed designs offer higher throughput, less latency and less area-delay product than the reference CORDIC design for fixed and known angles of rotation. We find similar results of synthesis for different Xilinx field-programmable gate-array platforms.

[1]  An-Yeu Wu,et al.  A high-performance/low-latency vector rotational CORDIC architecture based on extended elementary angle set and trellis-based searching schemes , 2003, IEEE Trans. Circuits Syst. II Express Briefs.

[2]  Matthew O'Donnell,et al.  A complex arithmetic digital signal processor using CORDIC rotators , 1995, 1995 International Conference on Acoustics, Speech, and Signal Processing.

[3]  Y.H. Hu,et al.  CORDIC-based VLSI architectures for digital signal processing , 1992, IEEE Signal Processing Magazine.

[4]  J. S. Walther,et al.  A unified algorithm for elementary functions , 1899, AFIPS '71 (Spring).

[5]  Geoff Wyvill,et al.  Interactive Shape Design , 2008, Interactive Shape Design.

[6]  K. Sridharan,et al.  Efficient CORDIC Algorithms and Architectures for Low Area and High Throughput Implementation , 2009, IEEE Transactions on Circuits and Systems II: Express Briefs.

[7]  K. Sridharan,et al.  50 Years of CORDIC: Algorithms, Architectures, and Applications , 2009, IEEE Transactions on Circuits and Systems I: Regular Papers.

[8]  Jack E. Volder The CORDIC Trigonometric Computing Technique , 1959, IRE Trans. Electron. Comput..

[9]  Joseph R. Cavallaro,et al.  CORDIC arithmetic for an SVD processor , 1987, 1987 IEEE 8th Symposium on Computer Arithmetic (ARITH).

[10]  Swapna Banerjee,et al.  Modified virtually scaling-free adaptive CORDIC rotator algorithm and architecture , 2005, IEEE Transactions on Circuits and Systems for Video Technology.

[11]  Shen-Fu Hsiao,et al.  Para-CORDIC: parallel CORDIC rotation algorithm , 2004, IEEE Trans. Circuits Syst. I Regul. Pap..

[12]  Nam Ik Cho,et al.  Fixed-point error analysis of CORDIC processor based on the variance propagation formula , 2004, IEEE Trans. Circuits Syst. I Regul. Pap..

[13]  Joseph R. Cavallaro,et al.  CORDIC arithmetic for an SVD processor , 1987, IEEE Symposium on Computer Arithmetic.

[14]  Earl E. Swartzlander,et al.  Digit-pipelined direct digital frequency synthesis based on differential CORDIC , 2006, IEEE Transactions on Circuits and Systems I: Regular Papers.

[15]  Anil K. Jain Fundamentals of Digital Image Processing , 2018, Control of Color Imaging Systems.

[16]  An-Yeu Wu,et al.  Mixed-scaling-rotation CORDIC (MSR-CORDIC) algorithm and architecture for high-performance vector rotational DSP applications , 2005, IEEE Transactions on Circuits and Systems I: Regular Papers.

[17]  LangTomás,et al.  High-Throughput CORDIC-Based Geometry Operations for 3D Computer Graphics , 2005 .

[18]  Barry G. Blundell,et al.  An introduction to computer graphics and creative 3-D environments , 2008 .

[19]  Yu Hen Hu,et al.  An Angle Recoding Method for CORDIC Algorithm Implementation , 1993, IEEE Trans. Computers.

[20]  Yu Hen Hu,et al.  A Novel Implementation of CORDIC Algorithm Using Backward Angle Recoding (BAR) , 1996, IEEE Trans. Computers.

[21]  K. J. Jones 2D systolic solution to discrete Fourier transform , 1989 .

[22]  Sang Yoon Park,et al.  Fixed-point error analysis of CORDIC processor based on the variance propagation formula , 2004, IEEE Transactions on Circuits and Systems I: Regular Papers.

[23]  Amos R. Omondi,et al.  Computer arithmetic systems - algorithms, architecture and implementation , 1994, Prentice Hall International series in computer science.

[24]  Gen-Huey Chen,et al.  Broadcasting on Incomplete WK-Recursive Networks , 1999, J. Parallel Distributed Comput..

[25]  Ray Andraka,et al.  A survey of CORDIC algorithms for FPGA based computers , 1998, FPGA '98.

[26]  Ganapati Panda,et al.  Efficient systolic solution for a new prime factor discrete Hartley transform algorithm , 1993 .

[27]  E.E. Swartzlander,et al.  Adaptive CORDIC: Using Parallel Angle Recoding to Accelerate CORDIC Rotations , 2006, 2006 Fortieth Asilomar Conference on Signals, Systems and Computers.

[28]  Tomás Lang,et al.  High-throughput CORDIC-based geometry operations for 3D computer graphics , 2005, IEEE Transactions on Computers.