Skip to main content

An implemented method for incremental systolic design

  • Conference paper
  • First Online:
PARLE Parallel Architectures and Languages Europe (PARLE 1987)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 258))

Abstract

We present a mathematically rigorous and, at the same time, convenient method for systolic design and derive alternative systolic designs for one expository matrix computation problem: matrix multiplication. Each design is synthesized from a simple program and a proposed layout of processors. The synthesis derives (1) a systolic parallel execution, (2) channel connections for the proposed processor layout, and (3) an arrangement of data streams such that the systolic execution can begin. Our choices of alternative designs are governed by formal theorems. The synthesis method is implementable and is particularly effective if implemented with graphics capability. Our implementation on the Symbolics 3600 displays the resulting designs and simulated executions graphically on the screen. The method has also been successfully applied to other matrix computation problems.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Boyer, R. S., and Moore, J S. A Computational Logic. ACM Monograph Series, Academic Press, 1979.

    Google Scholar 

  2. Cappello, P. R., and Steiglitz, K. Unifying VLSI Array Design with Linear Transformations of Space-time. In Advances in Computing Research, Vol. 2: VLSI Theory, F. P. Preparata, Ed., JAI Press Inc., 1984, pp. 23–65.

    Google Scholar 

  3. Chandy, M. Concurrent Programming for the Masses. Proc. 4th Ann. ACM Symp. on Principles of Distributed Computing, 1985, pp. 1–12.

    Google Scholar 

  4. Chandy, K. M., and Misra, J. "Systolic Algorithms as Programs". Distributed Computing 1, 3 (1986), 177–183.

    Google Scholar 

  5. Chen, M. C. Synthesizing Systolic Designs. YALEU/DCS/RR-374, Department of Computer Science, Yale University, Mar., 1985.

    Google Scholar 

  6. Chen, M. C. A Parallel Language and Its Compilation to Multiprocessor Machines or VLSI. Proc. 13th Ann. ACM Symp. on Principles of Programming Languages, 1986, pp. 131–139.

    Google Scholar 

  7. Delosme, J.-M., and Ipsen, I. Overview over SAGA and CONDENSE. Yale University, Jan., 1987.

    Google Scholar 

  8. Fortes, J. A. B., and Moldovan, D.I. "Parallelism Detection and Transformation Techniques for VLSI Algorithms". Journal of Parallel and Distributed Computing 2, 3 (Aug. 1985), 277–301.

    Google Scholar 

  9. Huang, C.-H., and Lengauer, C. The Derivation of Systolic Implementations of Programs. TR-86-10, Department of Computer Sciences, The University of Texas at Austin, Apr., 1986. Revised: Jan., 1987. To appear in Acta Informatica.

    Google Scholar 

  10. Huang, C.-H., and Lengauer, C. An Incremental, Mechanical Development of Systolic Solutions to the Algebraic Path Problem. TR-86-28, Department of Computer Sciences, The University of Texas at Austin, Dec., 1986.

    Google Scholar 

  11. Kung, H. T., and Leiserson, C. E. Algorithms for VLSI Processor Arrays. In Introduction to VLSI Systems, C. Mead and L. Conway, Eds., Addison-Wesley, 1980. Sect. 8.3.

    Google Scholar 

  12. Lam, M. S., and Mostow, J. "A Transformational Model of VLSI Systolic Design". Computer 18, 2 (Feb. 1985), 42–52.

    Google Scholar 

  13. Lengauer, C., and Hehner, E. C. R. "A Methodology for Programming with Concurrency: An Informal Presentation". Science of Computer Programming 2, 1 (Oct. 1982), 1–18.

    Google Scholar 

  14. Lengauer, C. "A Methodology for Programming with Concurrency: The Formalism". Science of Computer Programming 2, 1 (Oct. 1982), 19–52.

    Google Scholar 

  15. Lengauer, C., and Huang, C.-H. A Mechanically Certified Theorem about Optimal Concurrency of Sorting Networks. Proc. 13th Ann. ACM Symp. on Principles of Programming Languages, 1986, pp. 307–317.

    Google Scholar 

  16. Li, G.-H., and Wah, B. W. "The Design of Optimal Systolic Arrays". IEEE Trans. on Computers C-34, 1 (Jan. 1985), 66–77.

    Google Scholar 

  17. Miranker, W. L., and Winkler, A. "Spacetime Representations of Computational Structures". Computing 32, 2 (1984), 93–114.

    Google Scholar 

  18. Moldovan, D. I. "On the Design of Algorithms for VLSI Systolic Arrays". Proc. IEEE 71, 1 (Jan. 1983), 113–120.

    Google Scholar 

  19. Moldovan, D. I., and Fortes, J. A. B. "Partitioning and Mapping Algorithms into Fixed Size Systolic Arrays". IEEE Trans. on Computers C-35, 1 (Jan. 1986), 1–12.

    Google Scholar 

  20. Quinton, P. Automatic Synthesis of Systolic Arrays from Uniform Recurrent Equations. Proc. 11th Ann. Int. Symp. on Computer Architecture, 1984, pp. 208–214.

    Google Scholar 

  21. Rote, G. "A Systolic Array Algorithm for the Algebraic Path Problem (Shortest Paths; Matrix Inversion)". Computing 34, 3 (1985), 191–219.

    Google Scholar 

  22. van de Snepscheut, J. L. A. A Derivation of a Distributed Implementation of Warshall's Algorithm (JAN-113a). CS 8505, Dept. of Mathematics and Computing Science, University of Groningen, 1985.

    Google Scholar 

  23. Weiser, U., and Davis, A. A Wavefront Notation Tool for VLSI Array Design. In VLSI Systems and Computations, H. T. Kung, B. Sproull, and G. Steele, Eds., Computer Science Press, 1981, pp. 226–234.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

J. W. de Bakker A. J. Nijman P. C. Treleaven

Rights and permissions

Reprints and permissions

Copyright information

© 1987 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Huang, CH., Lengauer, C. (1987). An implemented method for incremental systolic design. In: de Bakker, J.W., Nijman, A.J., Treleaven, P.C. (eds) PARLE Parallel Architectures and Languages Europe. PARLE 1987. Lecture Notes in Computer Science, vol 258. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-17943-7_127

Download citation

  • DOI: https://doi.org/10.1007/3-540-17943-7_127

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-17943-6

  • Online ISBN: 978-3-540-47144-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics