This Article 
 Bibliographic References 
 Add to: 
CORDIC Vectoring with Arbitrary Target Value
July 1998 (vol. 47 no. 7)
pp. 736-749

Abstract—The computation of additional functions in the CORDIC module increases its flexibility. We consider here the extension of the vectoring mode (angle calculation) so that the vector is rotated until one of the coordinates (for instance y) attains a target value t (in contrast to the value 0, as in standard vectoring). The main problem in the algorithm is that the modulus of the vector is scaled in each CORDIC iteration so that a direct comparison of y[ j ] with t does not assure convergence. We present a scheme that overcomes this and in which the implementation consists of a standard CORDIC module plus a module to determine the direction of rotation. This improves over a previous proposal in which more complex iterations are introduced as part of the CORDIC algorithm. Moreover, an error analysis is performed to determine the datapath width required for convergence. Since this width is large, we consider also the characteristics of the algorithm for a narrower datapath.

[1] H.M. Ahmed,“Signal processing algorithms and architectures,” PhD dissertation, Dept. of Electrical Eng., Stanford Univ., June 1982.
[2] E. Antelo, J.D. Bruguera, T. Lang, and E.L. Zapata, "Error Analysis and Reduction for Angle Calculation Using the CORDIC Algorithm," IEEE Trans. Computers, vol. 46, no. 11, pp. 1,264-1,271, Nov. 1997.
[3] E. Antelo, J.D. Bruguera, T. Lang, and E.L. Zapata, "Error Analysis and Reduction for Angle Calculation Using the CORDIC Algorithm," Internal Report, Dept. of Electrical and Computer Eng., Univ. of California at Irvine, 1996.
[4] V. Baykov, "Problems of Elementary Functions Evaluation Based on Digit by Digit (CORDIC) Technique," PhD thesis, Leningrad State Univ. of Electrical Eng., 1972 (a comment of the author about the approach used in his thesis to compute the ArcSin function is available at /www.mkp.com tutorialdouble.html).
[5] T.C. Chen, "Automatic Computation of Exponentials, Logarithms, Ratios and Square-Roots," IBM J. Research and Development, vol. 16, pp. 380-388, July 1972.
[6] J.-M. Delosme, "VLSI Implementation of Rotations in Pseudo-Euclidean Spaces," Proc. 1983 IEEE Int'l Conf. ASSP, pp. 927-930,Boston, Apr. 1983.
[7] J.-M. Delosme, "The Matrix Exponential Approach to Elementary Operations," Advanced Algorithms and Architectures for Signal Processing, Proc. SPIE, pp. 188-195, Aug. 1986.
[8] H. Hahn, D. Timmermann, B.J. Hosticka, and B. Rix, "A Unified and Division-Free CORDIC Argument Reduction Method with Unlimited Convergence Domain Including Inverse Hyperbolic Functions," IEEE Trans. Computers, vol. 43, no. 11, pp. 1,339-1,344, Nov. 1992.
[9] R.G. Harber, J. Li, X. Hu, and S.C. Bass, "The Application of Bit-Serial CORDIC Computational Units to the Design of Inverse Kinematics Processors," Proc. 1988 IEEE Conf. Robotics and Automation, pp. 1,152-1,157, 1988.
[10] X. Hu and R.G. Harber,“Expanding the range of convergence of the CORDIC algorithm,” IEEE Trans. Computers, vol. 40, no. 1, pp. 13-21, Jan. 1991.
[11] D. Konig and J.F. Bohme, "Optimizing the CORDIC Algorithm for Processors with Pipeline Architecture," Signal Processing V: Theories and Applications, pp. 1,391-1,394, 1990.
[12] C. Krieger and B.J. Hosticka, "Inverse Kinematics Computations with Modified CORDIC Iterations," IEE Proc. Computer Digital Techniques, vol. 143, no. 1, pp. 87-92, Jan. 1996.
[13] C. Krieger, B. Hosticka, T. Krupp, A. Kecskemethy, and M. Hiller, "An Integrated Environment for Fast Kinematic Processing," Internal Report, Gerhard-Mercator-Universität, Duisburg, Germany, 1997.
[14] T. Lang and E. Antelo, "CORDIC Vectoring with Arbitrary Target Value," Proc. 13th IEEE Symp. Computer Arithmetic, pp. 108-115, July 1997.
[15] T. Lang and E. Antelo, "CORDIC-Based Computation of Arcos and Arcsin," Proc. 11th Int'l Conf. Application-Specific Systems, Architectures, and Processors (ASAP-97), pp. 132-143, July 1997 (An extended report of this work is available atin the 1997 reports).
[16] T. Lang and E. Antelo, "Scale-Factor Compensation for the Extended CORDIC Vectoring," technical report, Dept. of Electrical and Computer Eng., Univ. of California at Irvine, 1998 (Available athttp://www-gpaa.dec.usc.eshttp:/ in the 1998 reports).
[17] C.S.G. Lee and P.R. Chang, "A Maximum Pipelined CORDIC Architecture for Inverse Kinematic Position Computation," IEEE Trans. Robotics and Automation, pp. 445-458, Oct. 1987.
[18] C. Mazenc,X. Merrheim,, and J.-M. Muller,“Computing functions cos-1 and sin-1 using Cordic,” IEEE Trans. Computers, vol. 42, no. 1, pp. 118-122, Jan. 1993.
[19] I.D. Walker and J.R. Cavallaro, "Parallel VLSI Architecture for Real-Time Kinematics of Redundant Robots," Proc. 1993 IEEE Conf. Robotics and Automation, pp. 870-877.

Index Terms:
Extended CORDIC functions, computer arithmetic, CORDIC, inverse kinematics computations, rotations.
Tomás Lang, Elisardo Antelo, "CORDIC Vectoring with Arbitrary Target Value," IEEE Transactions on Computers, vol. 47, no. 7, pp. 736-749, July 1998, doi:10.1109/12.709373
Usage of this product signifies your acceptance of the Terms of Use.