Abstract
We present a technique for synthesizing systolic architectures from Recurrence Equations. A class of such equations (Recurrence Equations with Linear Dependencies) is defined and the problem of mapping such equations onto a two dimensional architecture is studied. We show that such a mapping is provided by means of a linear allocation and timing function. An important result is that under such a mapping the dependencies remain linear. After obtaining a two-dimensional architecture by applying such a mapping, a systolic array can be derived if the communication can be spatially and temporally localized. We show that a simple test consisting of finding the zeroes of a matrix is sufficient to determine whether this localization can be achieved by pipelining and give a construction that generates the array when such a pipelining is possible. The technique is illustrated by automatically deriving a well known systolic array for factoring a band matrix into lower and upper triangular factors.
Preview
Unable to display preview. Download preview PDF.
References
Brent, R. P. and Kung, H. T. Systolic VLSI Arrays for Linear-Time GCD Computation. VLSI 83, August, 1983, pp. 145–154.
Cappello, P. R. and Steiglitz, K. "Unifying VLSI Designs with Linear Transformations of Space-Time". Advances in Computing Research (1984), 23–65.
Chen, M. C. Space-Time Algorithms: Semantics and Methodology. Ph.D. Th., California Institute of Technology, Pasadena, Ca, May 1983.
Chen, M. C. Synthesizing systolic designs. YALEU/Dept. Of Computer Science/RR-374, Yale University, March, 1985.
Chen, M. C. A Parallel Language and its Compilation to Multiprocessor Machines or VLSI. Principles of Programming Languages, ACM, 1986.
Delosme, J. M. and Ipsen I. C. F. An illustration of a methodology for the construction of efficient systolic architectures in VLSI. International Symposium on VLSI Technology, Systems and Applications, Taipei, Taiwan, 1985, pp. 268–273.
Guibas, L., Kung, H. T. and Thompson, C. D. Direct VLSI Implementation of Combinatorial Algorithms. Proc. Conference on Very Large Scale Integration: Architecture, Design and Fabrication, January, 1979, pp. 509–525.
Johnsson, S. L., Weiser, U. C., Cohen, D. and Davis, A. L. Towards a Formal Treatment of VLSI Arrays. Proceedings of the second Caltech Conference on VLSI, January, 1981, pp. 375–398.
Karp, R. M., Miller, R. E. and Winograd, S. "The Organization of Computations for Uniform Recurrence Equations". JACM 14, 3 (July 1967), 563–590.
Kung, H. T. Let's design algorithms for VLSI. Proc. Caltech Conference on VLSI, January, 1979.
Kung, H. T. and Leiserson, C. E. Algorithms for VLSI Processor Arrays. In Mead, C. and Conway, L., Ed., Introduction to VLSI Systems, Addison-Wesley, Reading, Ma, 1980, Chap. 8.3, pp. 271–292.
Kung, H. T. "Why Systolic Architectures", Computer 15, 1 (January 1982), 37–46.
Lam, M. S. and Mostow, J. A. "A Transformational Model of VLSI Systolic Design". IEEE Computer 18 (February 1985), 42–52.
Leiserson, C. E. and Saxe, J. B. "Optimizing Synchronous Systems". Journal of VLSI and Computer Systems 1 (1983), 41–68.
Li, G. J. and Wah, B. W. "Design of Optimal Systolic Arrays". IEEE Transactions on Computers C-35, 1 (1985), 66–77.
Melhem, R. G. and Rheinboldt, Werner C. "A Mathematical Model for the Verification of Systolic Networks", SIAM Journal of Computing 13, 3 (August 1984), 541–565.
Miranker, W. L. and Winkler, A. "Space-Time Representation of Computational Structures". Computing 32 (1984), 93–114.
Moldovan, D. I. "On the Design of Algorithms for VLSI Systolic Arrays". Proceedings of the IEEE 71, 1 (January 1983), 113–120.
O'Keefe, M. T. and Fortes, J. A. B. A Comparative Study of two Systematic Design Methodologies for Systolic Arrays. International Conference on Parallel Processing, IEEE, St. Charles, Ill, August, 1986.
Quinton, P. The Systematic Design of Systolic Arrays. 216, Institut National de Recherche en Informatique et en Automatique [INRIA], July 1983.
Rajopadhye, S. V. and Fujimoto, R. M. Systolic Array Synthesis by Static Analysis of Program Dependencies. UUCS-86-0011, University of Utah, Computer Science Department, August, 1986. Submitted for Publication.
Rajopadhye, S. V. Synthesis, Otimization and Verification of Systolic Architectures. Ph.D. Th., University of Utah, Salt Lake City, Utah 84112, September 1986.
Ramakrishnan, I. V., Fussell, D. S. and Silberschatz, A. "Mapping Homogeneous Graphs on Linear Arrays". IEEE Transactions on Computers C-35 (March 1985), 189–209.
Rockafellar, R. T., Corwex Analysis. Princeton University Press, 1970.
Weiser, U. C. and Davis, A. L. A Wavefront Notational Tool for VLSI Array Design. VLSI Systems and Computations, Carnegie Mellon University, October, 1981, pp. 226–234.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1986 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Rajopadhye, S.V., Purushothaman, S., Fujimoto, R.M. (1986). On synthesizing systolic arrays from Recurrence Equations with Linear Dependencies. In: Nori, K.V. (eds) Foundations of Software Technology and Theoretical Computer Science. FSTTCS 1986. Lecture Notes in Computer Science, vol 241. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-17179-7_30
Download citation
DOI: https://doi.org/10.1007/3-540-17179-7_30
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-17179-9
Online ISBN: 978-3-540-47239-1
eBook Packages: Springer Book Archive