A Transformational Model of VLSI Systolic Design

The major contribution of this work is a transformational model of systolic design. In this design model, software transformations are first applied to put the algorithm to be implemented into a regular form conducive to systolic implementation. The steps of allocating operations to hardware, scheduling their execution, and optimizing the design are then performed bottom-up, starting with the innermost blocks of the algorithm. We have successfully used this model to rederive several published designs, and it appears suitable for designing complex systolic arrays. This model may help guide manual design, explain systolic algorithms, or capture the design process in the machine where it can benefit from effective automated support.

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

[2]  Robert H. Kuhn Efficient mapping of algorithms to single-stage interconnections , 1980, ISCA '80.

[3]  Charles E. Leiserson,et al.  Optimizing synchronous systems , 1981, 22nd Annual Symposium on Foundations of Computer Science (sfcs 1981).

[4]  J J Symanski NOSC Systolic Processor Testbed. , 1983 .

[5]  Danny Cohen,et al.  Mathematical approach to iterative computation networks , 1978, 1978 IEEE 4th Symposium onomputer Arithmetic (ARITH).

[6]  H. T. Kung Why systolic architectures? , 1982, Computer.

[7]  Patrice Quinton Automatic synthesis of systolic arrays from uniform recurrent equations , 1984, ISCA '84.

[8]  Jack Mostow,et al.  Application of a transformational software development methodology to VLSI design , 1984, J. Syst. Softw..

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

[10]  Richard M. King,et al.  Research on Synthesis of Concurrent Computing Systems. , 1982, ISCA 1982.

[11]  H. T. Kung,et al.  Architecture of the PSC-a programmable systolic chip , 1983, ISCA '83.

[12]  Danny Cohen,et al.  A mathematical approach to modelling the flow of data and control in computational networks , 1981 .

[13]  Al Davis,et al.  A Wavefront Notation Tool for VLSI Array Design , 1981 .

[14]  Dan I. Moldovan,et al.  On the Analysis and Synthesis of VLSI Algorithms , 1982, IEEE Transactions on Computers.

[15]  D.I. Moldovan,et al.  On the design of algorithms for VLSI systolic arrays , 1983, Proceedings of the IEEE.

[16]  H. T. Kung,et al.  The Design of Special-Purpose VLSI Chips , 1980, Computer.

[17]  David S. Wile,et al.  Program developments: formal explanations of implementations , 1983, CACM.

[18]  David L. Kuck,et al.  The Structure of Computers and Computations , 1978 .

[19]  David A. Padua,et al.  Dependence graphs and compiler optimizations , 1981, POPL '81.

[20]  Robert Balzer,et al.  On the Transformational Implementation approach to programming , 1976, ICSE '76.