High Performance Rotation Architectures Based on the Radix-4 CORDIC Algorithm

Traditionally, CORDIC algorithms have employed radix-2 in the first n/2 microrotations (n is the precision in bits) in order to preserve a constant scale factor. The authors present a full radix-4 CORDIC algorithm in rotation mode and circular coordinates and its corresponding selection function, and propose an efficient technique for the compensation of the nonconstant scale factor. Three radix-4 CORDIC architectures are implemented: 1) a word serial architecture based on the zero skipping technique, 2) a pipelined architecture, and 3) an application specific architecture (the angles are known beforehand). The first two are general purpose implementations where redundant (carry-save) or nonredundant arithmetic can be used, whereas the last one is a simplification of the first two. The proposed architectures present a good trade-off between latency and hardware complexity when compared with existing CORDIC architectures.

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

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

[3]  Henk J. Sips,et al.  On-line CORDIC algorithms , 1989, Proceedings of 9th Symposium on Computer Arithmetic.

[4]  Heinrich Meyr,et al.  The Differential CORDIC Algorithm: Constant Scale Factor Redundant Implementation without Correcting Iterations , 1996, IEEE Trans. Computers.

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

[6]  Yu Hen Hu A Forward Angle Recoding CORDIC Algorithm and Pipelined Processor Array Structure for Digital Signal Processing , 1993 .

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

[8]  Jean-Michel Muller,et al.  The CORDIC Algorithm: New Results for Fast VLSI Implementation , 1993, IEEE Trans. Computers.

[9]  Ed F. Deprettere,et al.  Design and implementation of a floating-point quasi-systolic general purpose CORDIC rotator for high-rate parallel data and signal processing , 1991, [1991] Proceedings 10th IEEE Symposium on Computer Arithmetic.

[10]  Jeong-A Lee,et al.  Constant-Factor Redundant CORDIC for Angle Calculation and Rotation , 1992, IEEE Trans. Computers.

[11]  Ed F. Deprettere,et al.  Floating point Cordic , 1993, Proceedings of IEEE 11th Symposium on Computer Arithmetic.

[12]  M. Ercegovac,et al.  Division and Square Root: Digit-Recurrence Algorithms and Implementations , 1994 .

[13]  Tomás Lang,et al.  Redundant and On-Line CORDIC: Application to Matrix Triangularization and SVD , 1990, IEEE Trans. Computers.

[14]  Joseph R. Cavallaro,et al.  Numerical Accuracy and Hardware Tradeoffs for CORDIC Arithmetic for Special-Purpose Processors , 1993, IEEE Trans. Computers.

[15]  Luigi Ciminiera,et al.  Reducing Iteration Time When Result Digit is Zero for Radix 2 SRT Division and Square Root with Redundant Remainders , 1993, IEEE Trans. Computers.

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

[17]  Javier D. Bruguera,et al.  Design of a Pipelined Radix 4 CORDIC Processor , 1993, Parallel Comput..

[18]  Javier D. Bruguera,et al.  Unified Mixed Radix 2-4 Redundant CORDIC Processor , 1996, IEEE Trans. Computers.

[19]  Heinrich Meyr,et al.  High speed bit-level pipelined architectures for redundant CORDIC implementation , 1992, [1992] Proceedings of the International Conference on Application Specific Array Processors.

[20]  Dirk Timmermann,et al.  Low Latency Time CORDIC Algorithms , 1992, IEEE Trans. Computers.

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

[22]  Javier D. Bruguera,et al.  Cordic based parallel/pipelined architecture for the Hough transform , 1996, J. VLSI Signal Process..

[23]  Shuzo Yajima,et al.  Redundant CORDIC Methods with a Constant Scale Factor for Sine and Cosine Computation , 1991, IEEE Trans. Computers.

[24]  P. W. Baker Suggestion for a Fast Binary Sine/Cosine Generator , 1976, IEEE Transactions on Computers.