Skip to main content
Log in

System-Level Synthesis Using Evolutionary Algorithms

  • Published:
Design Automation for Embedded Systems Aims and scope Submit manuscript

Abstract

In this paper, we consider system-level synthesis as the problem of optimally mapping a task-level specification onto a heterogeneous hardware/software architecture. This problem requires (1) the selection of the architecture (allocation) including general purpose and dedicated processors, ASICs, busses and memories, (2) the mapping of the specification onto the selected architecture in space (binding) and time (scheduling), and (3) the design space exploration with the goal to find a set of implementations that satisfy a number of constraints on cost and performance. Existing methodologies often consider a fixed architecture, perform the binding only, do not reflect the tight interdependency between binding and scheduling, do not consider communication (tasks and resources), or require long run-times preventing design space exploration, or yield only one implementation with optimal cost. Here, a model is introduced that handles all mentioned requirements and allows the task of system-synthesis to be specified as an optimization problem. The application and adaptation of an Evolutionary Algorithm to solve the tasks of optimization and design space exploration is described.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. E. Barros and W. Rosenstiel. A method for hardware software partitioning. In Proc. 1992 COMPEURO: Computer Systems and Software Engineering, pp. 580-585. The Hague, Netherlands, May 1992.

  2. T. Blickle. Theory of Evolutionary Algorithms and Application to System Synthesis. PhD thesis, Institute TIK, ETH Zurich, Switzerland, 1997. TIK-Schriftenreihe Nr. 17, vdf, Hochsch.-Verl.

    Google Scholar 

  3. T. Blickle and L. Thiele. A comparison of selection schemes used in evolutionary algorithms. Evolutionary Computation4(4), 1996.

  4. K. Buchenrieder, A. Sedlmeier, and C. Veith. Codes a framework for modeling heterogeneous systems. In J. Rozenbilt and K. Buchenrieder, editors, Codesign: Computer-Aided Software/Hardware Engineering. IEEE Press, Piscataway, NJ, U.S.A., 1995, pp. 378-392.

    Google Scholar 

  5. R. Camposano and R. K. Brayton. Partitioning before logic synthesis. In Proc. ICCAD, 1987.

  6. J. G. D'Ambrosio and X. Hu. Configuration-level hardware/software partition for real-time embedded systems. In Proc. of CODES/CASHE'94, Third Intl. Workshop on Hardware/Software Codesign, pp. 34-41, Grenoble, France, September 1994.

  7. J. G. D'Ambrosio, X. Hu, and G. W. Greenwood. An evolutionary approach to configuration-level hardware/software partitioning. Technical Report R & D-8465, General Motors Corporation, R & D Center, 30500 Mound Road, Box 9055, Warren, Michigan 40090-9055, December 1995.

    Google Scholar 

  8. G. DeMicheli. Synthesis and Optimization of Digital Circuits. McGraw Hill, New York, 1994.

    Google Scholar 

  9. R. Ernst, J. Henkel, and T. Benner. Hardware-software cosynthesis for microcontrollers. IEEE Design & Test of Computers, pp. 64-75, December 1994.

  10. B. R. Fox and M. B. McMahon. Genetic operators for sequencing problems. In Gregory J. E. Rawlins, editor, Foundations of Genetic Algorithms, Morgan Kauffman Publishers, 1991, pp. 284-300.

  11. D. E. Goldberg. Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley Publishing Company, Inc., Reading, Massachusetts, 1989.

    Google Scholar 

  12. R. Gupta and G. De Micheli. System-level synthesis using re-programmable components. In Proc. of the European Conference on Design Automation (EDAC), pages 2-7, 1992.

  13. W. Hardt and R. Camposano. Specification analysis for hw/sw-partitioning. In Proc. GI/ITG Workshop Application of formal Methods during the Design of Hardware Systems, pp. 1-10, Passau, Germany, March 1995.

  14. G. R. Harik. Finding multimodal solutions using restricted tournament selection. In Larry J. Eshelman, editor, Proceedings of the Sixth International Conference on Genetic Algorithms (ICGA6), Morgan Kaufmann, 1995.

  15. T. B. Ismail, K. O' Brien, and A. A. Jerraya. Interactive system-level partitioning with PARTIF. In Proc. of the European Conference on Design Automation (EDAC), pp. 464-473, 1994.

  16. A. Kalavade and E. A. Lee. A global criticality/local phase driven algorithm for the constrained hardware/software partitioning problem. In Proc. of CODES/CASHE'94, Third Intl. Workshop on Hardware/Software Codesign, Grenoble, France, September 1994.

  17. K. Küçükçakar and A. C. Parker. A methodology and design tools to support system-level VLSI design. IEEE Trans. on VLSI Systems3(3): 355-369, September 1995.

    Article  Google Scholar 

  18. E. D. Lagnese and D. E. Thomas. Architectural partitioning for system level synthesis of integrated circuits. IEEE Trans. on CAD, 10(7): 847-860, July 1991.

    Google Scholar 

  19. M. C. McFarland. Using bottom-up design techniques in the synthesis of hardware from abstract behavioral descriptions. In Proc. 23rd Design Automation Conference, pp. 474-480, June 1986.

  20. Z. Michalewicz. Genetic algorithms, numerical optimization, and constraints. In Larry J. Eshelman, editor, Proceedings of the Sixth International Conference on Genetic Algorithms (ICGA6), Morgan Kaufmann, 1995, pp. 151-158.

  21. G. Syswerda. Uniform crossover in genetic algorithms. In J. David Schaffer, editor, Proceedings of the Third International Conference on Genetic Algorithms, Morgan Kaufmann Publishers, San Mateo, CA, 1989, pp. 2-9.

    Google Scholar 

  22. G. Syswerda and J. Palmucci. The application of genetic algorithms to resource scheduling. In R. K. Belew and L. B. Booker, editors, Proceedings of the Fourth International Conference on Genetic Algorithms, Morgan Kaufmann Publishers, San Mateo, CA, 1991, pp. 502-508.

    Google Scholar 

  23. J. Teich, T. Blickle, and L. Thiele. An evolutionary approach to system-level synthesis. In Proc. of Codes/CASHE'97-The 5th International Workshop on Hardware/Software Codesign, Braunschweig, Germany, March 1997, pp. 167-171.

  24. D. E. Thomas, J. K. Adams, and H. Schmitt. A model and methodology for hardware-software codesign. IEEE Design & Test of Computers10(3): 6-15, September 1993.

    Google Scholar 

  25. F. Vahid and D. Gajski. Specification partitioning for system design. In Proc. 29th Design Automation Conference, Anaheim, CA, June 1992, pp. 219-224.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Blickle, T., Teich, J. & Thiele, L. System-Level Synthesis Using Evolutionary Algorithms. Design Automation for Embedded Systems 3, 23–58 (1998). https://doi.org/10.1023/A:1008899229802

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008899229802

Navigation