This Article 
 Bibliographic References 
 Add to: 
Redundant and On-Line CORDIC for Unitary Transformations
August 1994 (vol. 43 no. 8)
pp. 941-954

Two-sided unitary transformations of arbitrary 2/spl times/2 matrices are needed in parallel algorithms based on Jacobi-like methods for eigenvalue and singular value decompositions of complex matrices. This paper presents a two-sided unitary transformation structured to facilitate the integrated evaluation of parameters and application of the typically required transformations using only the primitives afforded by CORDIC; thus enabling significant speedup in the computation of these transformations on special-purpose processor array architectures implementing Jacobi-like algorithms. We discuss implementation in (nonredundant) CORDIC to motivate and lead up to implementation in the redundant and on-line enhancements to CORDIC. Both variable and constant scale factor redundant (CFR) CORDIC approaches are detailed and it is shown that the transformations may be computed in 10n+/spl delta/ time, where n is the data precision in bits and /spl delta/ is a constant accounting for accumulated on-line delays. A more area-intensive approach using a novel on-line CORDIC encoded angle summation/difference scheme reduces computation time to 6n+/spl delta/. The area/time complexities involved in the various approaches are detailed.

[1] H. M. Ahmed, J. M. Delosme, and M. Morf, "Highly concurrent computing structures for matrix arithmetic and signal processing,"IEEE Comput., vol. 15, no. 1, pp. 65-82, 1982.
[2] R. P. Brent and F. T. Luk, "The solution of singular-value and symmetric eigenvalue problems on multiprocessor arrays,"SIAM J. Sci. Stat. Comput., vol. 6, no. 1, pp. 69-84, 1985.
[3] R. P. Brent, F. T, Luk and C. F. Van Loan, "Computation of the singular value decomposition using mesh-connected processors,"J. VLSI Comput. Syst., vol. 1, no. 3, pp. 242-270, 1985.
[4] R. L. Causey, "Computing eigenvalues of non-Hermitian matrices by methods of Jacobi type,"J. Soc. Indust. Appl. Math., vol. 6, no. 2, pp. 172-181, 1958.
[5] J. R. Cavallaro and A. C. Elster, "A CORDIC processor array for the SVD of a complex matrix," inSVD and Signal Processing II (Algorithms, Analysis and Applications), R. Vaccaro, Ed. New York: Elsevier, 1991, pp. 227-239.
[6] J. R. Cavallaro and F. T. Luk, "CORDIC arithmetic for an SVD processor,"J. Parallel Distributed Comput., vol. 5, no. 3, pp. 271-290, June 1988.
[7] D. Daggett, "Decimal-binary conversions in CORDIC,"IRE Trans. Electron. Comput., vol. EC-8, no. 3, pp. 335-339, 1959.
[8] J. M. Delosme, "A processor for two-dimensional symmetric eigenvalue and singular value arrays," inIEEE 21th Asilomar Conf. Circuits, Syst. and Comput., 1987, pp. 217-221.
[9] J. M. Delosme, "Parallel implementations of the SVD using implicit CORDIC arithmetic," inSVD and Signal Processing II (Algorithms, Analysis and Applications), R. Vaccaro, Ed. New York: Elsevier, 1991, pp. 33-56.
[10] E. F. Deprettere and A.-J. van der Veen, "Parallel VLSI matrix pencil algorithm for high resolution direction finding,"IEEE Trans. Signal Processing, vol. 39, pp. 383-394, 1991.
[11] A. M. Despain, "Fourier transform computers using CORDIC iterations,"IEEE Trans. Comput., vol. C-23, no. 10, pp. 993-1001, 1974.
[12] P. J. Eberlein, "On the Schur decomposition of a matrix for parallel computation,"IEEE Trans. Comput., vol. C-36, no. 2, pp. 167-174, 1987.
[13] M. D. Ercegovac and T. Lang, "Redundant and on-line CORDIC: Application to matrix triangularization and SVD,"IEEE Trans. Comput., vol. 39, no. 6, pp. 725-740, 1990.
[14] G. E. Forsythe and P. Henrici, "The cyclic Jacobi method for computing the principal values of a complex matrix,"Trans. Amer. Math. Soc., vol. 94, no. 1, pp. 1-23, 1960.
[15] G. H. Golub and C. F. Van Loan,Matrix Computations, second ed. Baltimore, MD: Johns Hopkins Univ. Press, 1989.
[16] G. L. Haviland and A. A. Tuszynski, "A CORDIC arithmetic processor chip,"IEEE Trans. Comput., vol. C-29, no. 2, pp. 68-79, 1980.
[17] N. D. Hemkumar and J. R. Cavallaro, "An efficient parallel implementation of the Jacobi SVD algorithm for arbitrary matrices," Preprint 93-077, AHPCRC, Univ. Minnesota, Minneapolis, MN, Aug. 1993.SIAM J. Matrix Anal. Appl., (in second review).
[18] N. D. Hemkumar and J. R. Cavallaro, "Efficient complex matrix transformations with CORDIC," inProc. IEEE 11th Symp. Comput. Arithmetic, Windsor, Canada, June 1993, pp. 122-129.
[19] S. Hitotumatu, "Complex arithmetic through CORDIC," Kodai Math. Sem. Rep., vol. 26, pp. 176-186, 1975.
[20] X. Hu, R. G. Harber, and S. C. Bass, "Expanding the range of convergence of the CORDIC algorithm,"IEEE Trans. Comput., vol. 40, no. 1, pp. 13-21, 1991.
[21] R. Kumaresan and D. W. Tufts, "Singular value decomposition and improved frequency estimation using linear prediction,"IEEE Trans. Acoust., Speech, Signal Processing, vol. ASSP-30, no. 4, pp. 671-675, 1982.
[22] J. Lee and T. Lang, "SVD by constant-factor redundant CORDIC," inProc. 10th Symp. Comput. Arithmetic, 1991, pp. 264-271.
[23] J. Lee and T. Lang, "Constant-factor redundant CORDIC for angle calculation and rotation,"IEEE Trans. Comput., vol. 41, no. 8, pp. 1016-1025, 1992.
[24] F. T. Luk, "A triangular processor array for computing singular values,"J. Linear Algebra Appl., vol. 77, pp. 259-273, 1986.
[25] J.M. Speiser, "Signal processing computational needs," inProc. SPIE Advanced Algorithms and Architectures for Signal Processing I, 1986, vol. 696, pp. 2-6.
[26] G. W. Stewart, "A Jacobi-like algorithm for computing the Schur decomposition of a non-Hermitian Matrix,"SIAM J. Sci. Stat. Comput., vol. 6, no. 4, pp. 853-864, 1985.
[27] N. Takagi, T. Asada, and S. Yajima, "Redundant CORDIC methods with a constant scale factor for sine and cosine computation,"IEEE Trans. Comput., vol. 40, no. 9, pp. 989-995, 1991.
[28] J. Volder, "The CORDIC trigonometric computing technique,"IRE Trans. Electronic. Comput., vol. EC-8, no. 3, pp. 330-334, 1959.
[29] J. S. Walther, "A unified algorithm for elementary functions,"AFIPS Spring Joint Comput. Conf., pp. 379-385, 1971.
[30] B. Yang and J. F. Böhme, "Reducing the computations of the SVD array given by Brent and Luk,"SIAM J. Matrix Anal. Appl., vol. 12, no. 4, pp. 713-725, Oct. 1991.

Index Terms:
parallel algorithms; matrix algebra; eigenvalues and eigenfunctions; special purpose computers; parallel architectures; computational complexity; digital arithmetic; CORDIC; unitary transformations; two-sided unitary transformation; matrices; parallel algorithms; Jacobi-like methods; eigenvalue; singular value decompositions; complex matrices; special-purpose processor array architectures; nonredundant CORDIC; online CORDIC; redundant CORDIC; Coordinate Rotation Digital Computer.
N.D. Hemkumar, J.R. Cavallaro, "Redundant and On-Line CORDIC for Unitary Transformations," IEEE Transactions on Computers, vol. 43, no. 8, pp. 941-954, Aug. 1994, doi:10.1109/12.295856
Usage of this product signifies your acceptance of the Terms of Use.