Parallel singular value decomposition of complex matrices using multidimensional CORDIC algorithms

The singular value decomposition (SVD) of complex matrices is computed in a highly parallel fashion on a square array of processors using Kogbetliantz's analog of Jacobi's eigenvalue decomposition method. To gain further speed, new algorithms for the basic SVD operations are proposed and their implementation as specialized processors is presented. The algorithms are 3-D and 4-D extensions of the CORDIC algorithm for plane rotations. When these extensions are used in concert with an additive decomposition of 2/spl times/2 complex matrices, which enhances parallelism, and with low resolution rotations early on in the SVD process, which reduce operation count, a fivefold speedup can be achieved over the fastest alternative approach.

[1]  J. F. Böhme,et al.  Reducing the computations of the singular value decomposition array given by Brent and Luk , 1991 .

[2]  R. Brent,et al.  Almost linear-time computation of the singular value decomposition using mesh-connected processors , 1983 .

[3]  K. J. Ray Liu,et al.  Systolic block Householder transformation for RLS algorithm with two-level pipelined implementation , 1992, IEEE Trans. Signal Process..

[4]  J. H. Wilkinson The algebraic eigenvalue problem , 1966 .

[5]  Joseph R. Cavallaro,et al.  Jacobi-like Matrix Factorizations with CORDIC-based Inexact Diagonalizations , 1994 .

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

[7]  Jean-Marc Delosme,et al.  Highly concurrent computing structures for matrix arithmetic and signal processing , 1982, Computer.

[8]  A. L. Fisher,et al.  Ultrafast compact 32-bit CMOS adders in multiple-output domino logic , 1989 .

[9]  P. P. Rijk A one-sided Jacobi algorithm for computing the singular value decomposition on avector computer , 1989 .

[10]  Ed F. Deprettere,et al.  Pipelined cordic architectures for fast VLSI filtering and array processing , 1984, ICASSP.

[11]  Joseph R. Cavallaro,et al.  Efficient complex matrix transformations with CORDIC , 1993, Proceedings of IEEE 11th Symposium on Computer Arithmetic.

[12]  Joseph R. Cavallaro,et al.  Redundant and On-Line CORDIC for Unitary Transformations , 1994, IEEE Trans. Computers.

[13]  Joseph R. Cavallaro,et al.  A CORDIC Processor Array for the SVD of a Complex Matrix , 1991 .

[14]  Jean-Michel Muller,et al.  Computing Functions cos^{-1} and sin^{-1} Using Cordic , 1993, IEEE Trans. Computers.

[15]  R. Brent,et al.  The Solution of Singular-Value and Symmetric Eigenvalue Problems on Multiprocessor Arrays , 1985 .

[16]  Jean-Marc Delosme,et al.  CORDIC Algorithms: Theory And Extensions , 1989, Optics & Photonics.

[17]  Jean-Marc Delosme Bit-level systolic algorithms for real symmetric and Hermitian eigenvalue problems , 1992, J. VLSI Signal Process..

[18]  J. Delosme,et al.  CORDIC algorithms in four dimensions , 1990 .

[19]  J.-M. Delosme,et al.  VLSI implementation of rotations in pseudo-Euclidean spaces , 1983, ICASSP.

[20]  D. Schimmel Bit-level Jacobi-like algorithms for eigenvalue and singular value decompositions , 1991 .

[21]  J. Delosme A Processor for Two-Dimensional Symmetric Eigenvalue and Singular Value Arrays. , 1987 .

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

[23]  Jürgen Götze,et al.  An Efficient Jacobi-like Algorithm for Parallel Eigenvalue Computation , 1993, IEEE Trans. Computers.

[24]  Ed F. Deprettere,et al.  Parallel VLSI matrix pencil algorithm for high resolution direction finding , 1991, IEEE Trans. Signal Process..

[25]  Yu Hen Hu,et al.  CALF: a CORDIC adaptive lattice filter , 1992, IEEE Trans. Signal Process..

[26]  Shen-Fu Hsiao,et al.  Householder CORDIC Algorithms , 1995, IEEE Trans. Computers.

[27]  Franklin T. Luk,et al.  Computation Of The Generalized Singular Value Decomposition Using Mesh-Connected Processors , 1983, Optics & Photonics.

[28]  J.-M. Delosme Bit-level systolic algorithm for the symmetric eigenvalue problem , 1990, [1990] Proceedings of the International Conference on Application Specific Array Processors.

[29]  F. Luk Triangular processor array for computing singular values , 1986 .

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

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

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

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