Designing Linear Systolic Arrays

Abstract We develop a simple mapping technique to design linear systolic arrays. The basic idea of our technique is to map the computations of a certain class of two-dimensional systolic arrays onto one-dimensional arrays. Using this technique, systolic algorithms are derived for problems such as matrix multiplication and transitive closure on linearly connected arrays of PEs with constant I/O bandwidth. Compared to known designs in the literature, our technique leads to modular systolic arrays with constant hardware in each PE, few control lines, lexicographic data input/output, and improved delay time. The unidirectional flow of control and data in our design assures implementation of the linear array in the known fault models of Wafer Scale Integration.

[1]  I. V. Ramakrishnan,et al.  Modular Matrix Multiplication on a Linear Array , 1984, IEEE Transactions on Computers.

[2]  Peter R. Cappello,et al.  Unifying VLSI Array Designs with Geometric Transformations , 1983, International Conference on Parallel Processing.

[3]  Kai Hwang,et al.  Computer architecture and parallel processing , 1984, McGraw-Hill Series in computer organization and architecture.

[4]  I. V. Ramakrishnan,et al.  A Fault-Tolerant VLSI Matrix Multiplier , 1986, ICPP.

[5]  H. T. Kung,et al.  Direct VLSI Implementation of Combinatorial Algorithms , 1979 .

[6]  Sun-Yuan Kung,et al.  On supercomputing with systolic/wavefront array processors , 1984 .

[7]  David W. L. Yen,et al.  Systolic Processing and an Implementation for Signal and Image Processing , 1982, IEEE Transactions on Computers.

[8]  H. T. Kung,et al.  Wafer-scale integration and two-level pipelined implementations of systolic arrays , 1984, J. Parallel Distributed Comput..

[9]  Jeffrey D Ullma Computational Aspects of VLSI , 1984 .

[10]  Viktor K. Prasanna,et al.  Information Transfer in Distributed Computing with Applications to VLSI , 1984, JACM.

[11]  Allan L. Fisher Memory and Modularity in Systolic Array Implementations , 1985, ICPP.

[12]  Viktor K. Prasanna,et al.  Mapping dynamic programming onto a linear systolic array , 1990, J. VLSI Signal Process..

[13]  I. V. Ramakrishnan,et al.  Dynamic Programming and Transitive Closure on Linear Pipelines. , 1984 .

[14]  Marina C. Chen,et al.  A Design Methodology for Synthesizing Parallel Algorithms and Architectures , 1986, J. Parallel Distributed Comput..

[15]  H. T. Kung,et al.  Systolic Arrays for (VLSI). , 1978 .

[16]  Cauligi S. Raghavendra,et al.  Gracefully Degradable Processor Arrays , 1985, IEEE Transactions on Computers.

[17]  Viktor K. Prasanna,et al.  On Mapping Algorithms to Linear and Fault-Tolerant Systolic Arrays , 1989, IEEE Trans. Computers.