Design rules for implementing CORDIC on FPGAs

The CORDIC algorithm performs vector rotations in a number of coordinates systems, providing cost-effective solutions for many application domains today including intelligent guidance systems, wireless communications, and digital signal processing. CORDIC is sequential; thus hardware solutions are needed to improve the computation speed. We analyze three implementation schemes for CORDIC on FPGAs in terms of area, delay, and scalability. Extensive simulations have been carried out and a complete set of numerical figures are provided. We conclude the paper by proposing a number of design rules for implementing CORDIC on commercial reconfigurable devices based on use-case and speed and/or area requirements.

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

[2]  Michael McGuire,et al.  Embedded Reconfigurable Solution for OFDM Detection Over Fast Fading Radio Channels , 2007, 2007 IEEE Workshop on Signal Processing Systems.

[3]  STEPHEN BROWN,et al.  Minimizing FPGA Interconnect Delays , 1996, IEEE Des. Test Comput..

[4]  Scott Hauck,et al.  The Roles of FPGA's in Reprogrammable Systems , 1998 .

[5]  Paul Metzgen,et al.  A high performance 32-bit ALU for programmable logic , 2004, FPGA '04.

[6]  Scott Hauck,et al.  The roles of FPGAs in reprogrammable systems , 1998, Proc. IEEE.

[7]  C. John Glossner,et al.  Software Solutions for Converting a MIMO-OFDM Channel into Multiple SISO-OFDM Channels , 2007, Third IEEE International Conference on Wireless and Mobile Computing, Networking and Communications (WiMob 2007).

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

[9]  Milos D. Ercegovac,et al.  Digital Arithmetic , 2003, Wiley Encyclopedia of Computer Science and Engineering.