A Design System for Massively Parallel Hardware

  • Patrick Dewilde
  • Peter Held
  • Ed Deprettere
  • Paul Wielage


We present a comprehensive design system for massively parallel computing hardware. The system is called HIFI and covers the design path from behavioral and algorithmic specification to the definition of an architecture or even an electronic circuit. Conversely, it allows for interactive construction of structural objects that represent computations, their simulation and verification. In principle, HiFi can handle any algorithmic specification, regular, irregular, or partially regular, and it can generate any type of architecture. However, its design functions and the embedded synthesis techniques are geared towards exploitation of regularity to a maximal extent.


Output Port Dependence Graph Dependence Relation Systolic Array Processor Array 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    J. Annevelink. HiFi, a design method for implementing signal processing algorithms. PhD thesis, Delft University of Technology, Jan 1987.Google Scholar
  2. [2]
    J. Backus. Can programming be liberated from the von Neumann style? A functional style and its algebra of programs. Comm. ACM, 21:613–641, Aug 1978.MathSciNetzbMATHCrossRefGoogle Scholar
  3. [3]
    J. Bu. Systematic design of regular VLSI processor arrays. PhD thesis, Delft University of Technology, May 1990.Google Scholar
  4. [4]
    J. Bu, E. Deprettere, and L. Thiele. Systolic array implementation of nested loop programs. Proc. Int. Conf. Application Specific Array Processing, Vol. 4, pages 31–42, Sep 1990.CrossRefGoogle Scholar
  5. [5]
    J. Bu and E. Deprettere. Processor clustering for the design of optimal fixed-size systolic arrays. Algorithms and Parallel VLSI Architectures, Vol. A, pages 341–362, North Holland, Elsevier, Amsterdam, 1991.Google Scholar
  6. [6]
    E. Deprettere. Example of combined algorithm development and architecture design. Proc. Advanced Signal Processing Algorithms, Architectures, and Implementations III, San Diego, California, July 1992.Google Scholar
  7. [7]
    E. Deprettere. Cellular broadcast in regular array design. Proc. VLSI Signal Processing Workshop, Computer Science Press, 1992.Google Scholar
  8. [8]
    P. Dewilde and E. Deprettere. Architectural synthesis of large, nearly regular algorithms: design trajectory and environment. Annales des télécommunications, Vol. 46, pages 48–59, 1991.Google Scholar
  9. [9]
    P. Feautrier. Parametric integer programming. Recherche Opérationnelle; Operations Research, 22(3):243–268, 1988.MathSciNetzbMATHGoogle Scholar
  10. [10]
    P. Feautrier. Data flow analysis of array and scalar references. Recherche Opérationnelle; Operations Research, 1991.Google Scholar
  11. [11]
    F. Fernandez and P. Quinton. Extension of Chernikova’s algorithm for solving general mixed linear programming problems. Internal report, IRISA, Rennes, France, 1988.Google Scholar
  12. [12]
    P. C. Held. HiPars Users’ Guide. Internal report, Delft University of Technology, Delft, Nov 1991.Google Scholar
  13. [13]
    P. N. Hilfinger. Silage: a language for signal processing. Internal report, University of California, Berkeley, 1984.Google Scholar
  14. [14]
    A. J. van der Hoeven. Concepts and implementation of a design system for digital signal processor arrays. PhD thesis, Delft University, Delft, October 5.Google Scholar
  15. [15]
    C. A. R. Hoare. Communicating sequential processes. Prentice-Hall International, 1985.Google Scholar
  16. [16]
    A. K. Jainandunsing. Parallel algorithms for solving systems of linear equations and their mapping on systolic arrays. PhD thesis, Delft University of Technology, January 1989.Google Scholar
  17. [17]
    S. Y. Kung, J. Annevelink, and P. Dewilde. Hierarchical iterative flowgraph integration for VLSI array processors. VLSI Signal Processing, IEEE Press, New York, 1984.Google Scholar
  18. [18]
    S. Y. Kung. VLSI Array Processors. Prentice-Hall International, 1988.Google Scholar
  19. [19]
    R. Lipsett, C. F. Schaefer, and C. Ussery. VHDL: Hardware Description and Design. Kluwer Academic Publishers, Boston, 1989.CrossRefGoogle Scholar
  20. [20]
    G. L. Nemhauser and L. A. Wolsey. Integer and combinatorial optimization. John Wiley & Sons, Inc., 1988.Google Scholar
  21. [21]
    W. M. Newman and R. F. Sproull. Principles of Interactive Computer Graphics. McGraw-Hill, 1981.Google Scholar
  22. [22]
    P. Quinton. Systolic Arrays. Esprit Project BRA 3280, Deliverable report INRIA/Y1m12/2.2/1, IRISA, Rennes, France, April 1990.Google Scholar
  23. [23]
    S. K. Rao. Regular iterative algorithms and their implementations on processor arrays. PhD thesis, Information System Lab, Stanford University, October 1985.Google Scholar
  24. [24]
    J. Teich and L. Thiele. Partitioning of processor arrays: a piecewise regular approach. INTEGRATION: The VLSI Journal, 1992.Google Scholar
  25. [25]
    A. J. Teigh and L. Thiele. Control Generation in the Design of Processor Arrays. Int. Journal on VLSI and Signal Processing, 3(2):77–92, 1991.CrossRefGoogle Scholar
  26. [26]
    L. Thiele. On the hierarchical design of VLSI processor arrays. IEEE Symp. on Circuits and Systems, Helsinki, pages 2517-2520, 1988.Google Scholar
  27. [27]
    P. Wielage. The partitioning of piecewise regular dependence graphs. Master’s Thesis, nr 91-109, Delft University of Technology, January 1992.Google Scholar

Copyright information

© Springer Science+Business Media New York 1994

Authors and Affiliations

  • Patrick Dewilde
    • 1
  • Peter Held
    • 1
  • Ed Deprettere
    • 1
  • Paul Wielage
    • 1
  1. 1.Faculty of Electrical EngineeringDelft University of TechnologyThe Netherlands

Personalised recommendations