Skip to main content

Hybrid Optimization Techniques for System-Level Design Space Exploration

  • Reference work entry
  • First Online:
Handbook of Hardware/Software Codesign

Abstract

Embedded system design requires to solve synthesis steps that consist of resource allocation, task binding, data routing, and scheduling. These synthesis steps typically occur several times throughout the entire design cycle and necessitate similar concepts even at different levels of abstraction. In order to cope with the large design space, fully automatic Design Space Exploration (DSE) techniques might be applied. In practice, the high complexity of these synthesis steps requires efficient approaches that also perform well in the presence of stringent design constraints. Those constraints may render vast areas in the search space infeasible with only a fraction of feasible implementations that are sparsely distributed. This is a serious problem for metaheuristics that are popular for DSE of electronic hardware/software systems, since they are faced with large areas of infeasible implementations where no gradual improvement is possible. In this chapter, we present an approach that combines metaheuristic optimization with search algorithms to solve the problem of Hardware/Software Codesign (HSCD) including allocation, binding, and scheduling. This hybrid optimization uses powerful search algorithms to determine feasible implementations This avoids an exploration of infeasible areas and, thus, enables a gradual improvement as required for efficient metaheuristic optimization. Two methods are presented that can be applied to both, problems with linear as well as non-linear constraints, the latter being particularly intended to address aspects such as timeliness or reliability which cannot be approximated by linear constraints in a sound fashion. The chapter is concluded with several examples for a successful use of the introduced techniques in different application domains.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 699.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 949.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Abbreviations

BIST:

Built-In Self-Test

DPLL:

Davis-Putnam-Logemann-Loveland

DSE:

Design Space Exploration

EA:

Evolutionary Algorithm

E/E:

Electric and Electronic

ESL:

Electronic System Level

HSCD:

Hardware/Software Codesign

ILP:

Integer Linear Program

MoC:

Model of Computation

MPSoC:

Multi-Processor System-on-Chip

PB:

Pseudo-Boolean

SAT:

Boolean Satisfiability

SMT:

Satisfiability Modulo Theories

References

  1. Blickle T, Teich J, Thiele L (1998) System-level synthesis using evolutionary algorithms. Des Autom Embed Syst 3(1):23–58

    Article  Google Scholar 

  2. Coello Coello CA (2002) Theoretical and numerical constraint-handling techniques used with evolutionary algorithms: a survey of the state of the art. Comput Methods Appl Mech Eng 191(11–12):1245–1287

    Article  MathSciNet  MATH  Google Scholar 

  3. Davis M, Logemann G, Loveland D (1962) A machine program for theorem-proving. Commun ACM 5(7):394–397

    Article  MathSciNet  MATH  Google Scholar 

  4. De Moura L, Bjørner N (2011) Satisfiability modulo theories: introduction and applications. Commun ACM 54(9):69–77

    Article  Google Scholar 

  5. Gajski DD, Kuhn RH (1983) New VLSI tools. IEEE Comput 16(12):11–14

    Article  Google Scholar 

  6. Gerstlauer A, Haubelt C, Pimentel A, Stefanov T, Gajski D, Teich J (2009) Electronic system-level synthesis methodologies. IEEE Trans Comput Aided Des Integr Circuits Syst 28(10):1517–1530

    Article  Google Scholar 

  7. Glaß M, Lukasiewycz M, Reimann F, Haubelt C, Teich J (2010) Symbolic system level reliability analysis. In: Proceedings of the international conference on computer-aided design (ICCAD), San Jose, pp 185–189

    Google Scholar 

  8. Graf S, Glaß M, Teich J, Lauer C (2014) Multi-variant-based design space exploration for automotive embedded systems. In: Proceedings of design, automation and test in Europe (DATE), p 6

    Google Scholar 

  9. Graf S, Glaß M, Wintermann D, Teich J, Lauer C (2013) IVaM: implicit variant modeling and management for automotive embedded systems. In: Proceedings of the international conference on hardware/software codesign and system synthesis (CODES+ISSS), p 10

    Google Scholar 

  10. Graf S, Reimann F, Glaß M, Teich J (2014) Towards scalable symbolic routing for multi-objective networked embedded system design and optimization. In: Proceedings of the international conference on hardware/software codesign and system synthesis (CODES+ISSS), pp 2:1–2:10

    Google Scholar 

  11. Hernandez-Aguirre A, Botello-Rionda S, Coello Coello CA, Lizarraga-Lizarraga G, Mezura-Montes E (2004) Handling constraints using multiobjective optimization concepts. Int J Numer Methods Eng 59(15):1989–2017

    Article  MathSciNet  MATH  Google Scholar 

  12. Kienhuis ACJ (1999) Design space exploration of stream-based dataflow architectures – methods and tools. Ph.D. thesis, Delft University of Technology

    Google Scholar 

  13. Le Berre D, Parrain A (2010) The Sat4J library, release 2.2. system description. J Satisf Boolean Model Comput 7:59–64

    Google Scholar 

  14. Lukasiewycz M, Chakraborty S (2012) Concurrent architecture and schedule optimization of time-triggered automotive systems. In: Proceedings of the international conference on hardware/software codesign and system synthesis (CODES+ISSS), pp 383–392

    Google Scholar 

  15. Lukasiewycz M, Glaß M, Haubelt C, Teich J (2007) Solving multiobjective Pseudo-Boolean problems. In: Proceedings of the international conference on theory and applications of satisfiability testing (SAT), pp 56–69

    Google Scholar 

  16. Lukasiewycz M, Glaß M, Haubelt C, Teich J (2008) Efficient symbolic multi–objective design space exploration. In: Proceedings of the Asia and South Pacific design automation conference (ASPDAC), Seoul, pp 691–696

    Google Scholar 

  17. Lukasiewycz M, Glaß M, Haubelt C, Teich J, Regler R, Lang B (2008) Concurrent topology and routing optimization in automotive network integration. In: Proceedings of the design automation conference (DAC), Anaheim, pp 626–629

    Google Scholar 

  18. Lukasiewycz M, Glaß M, Reimann F Opt4J–meta-heuristic optimization framework for java. http://www.opt4j.org/

  19. Lukasiewycz M, Glaß M, Reimann F, Teich J (2011) Opt4J: a modular framework for meta-heuristic optimization. In: Proceedings of the genetic and evolutionary computation conference (GECCO), pp 1723–1730

    Google Scholar 

  20. Lukasiewycz M, Reimann F OpenDSE–open design space exploration framework. http://opendse.sourceforge.net/

  21. Lukasiewycz M, Streubühr M, Glaß M, Haubelt C, Teich J (2009) Combined system synthesis and communication architecture exploration for MPSoCs. In: Proceedings of design, automation and test in Europe (DATE), pp 472–477

    Google Scholar 

  22. Prakash S, Parker AC (1992) SOS: synthesis of application-specific heterogeneous multiprocessor systems. J Parallel Distrib Comput 16(4):338–351

    Article  MATH  Google Scholar 

  23. Puchinger J, Raidl G (2005) Combining metaheuristics and exact algorithms in combinatorial optimization: a survey and classification. In: Proceedings of the first international work-conference on the interplay between natural and artificial computation (IWINAC), vol 3562, pp 41–53

    Google Scholar 

  24. Reimann F, Glaß M, Haubelt C, Eberl M, Teich J (2010) Improving platform-based system synthesis by satisfiability modulo theories solving. In: Proceedings of the international conference on hardware/software codesign and system synthesis (CODES+ISSS), pp 135–144

    Google Scholar 

  25. Reimann F, Glaß M, Teich J, Cook A, Gómez LR, Ull D, Wunderlich HJ, Abelein U, Engelke P (2014) Advanced diagnosis: SBST and BIST integration in automotive E/E architectures. In: Proceedings of the design automation conference (DAC), p 8

    Google Scholar 

  26. Reimann F, Lukasiewycz M, Glaß M, Haubelt C, Teich J (2011) Symbolic system synthesis in the presence of stringent real-time constraints. In: Proceedings of the design automation conference (DAC), pp 393–398

    Google Scholar 

  27. Smith AE, Coit DW (1997) Penalty functions, chap. C 5.2. Institute of Physics Publishing and Oxford University Press, Bristol

    Google Scholar 

  28. Teich J (2012) Hardware/software co-design: past, present, and predicting the future. Proc IEEE 100(5):1411–1430

    Article  Google Scholar 

  29. Teich J, Blickle T, Thiele L (1997) An evolutionary approach to system-level synthesis. In: Proceedings of the international workshop on hardware/software codesign (CODES/CASHE), pp 167–171

    Google Scholar 

  30. Teich J, Haubelt C (2007) Digitale hardware/software-systeme: synthese und optimierung, 2nd edn. Springer, Heidelberg

    MATH  Google Scholar 

  31. Weichslgartner A, Gangadharan D, Wildermann S, Glaß M, Teich J (2014) DAARM: design-time application analysis and run-time mapping for predictable execution in many-core systems. In: Proceedings of the international conference on hardware/software codesign and system synthesis (CODES+ISSS), pp 34:1–34:10

    Google Scholar 

  32. Zitzler E, Thiele L (1999) Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach. IEEE Trans Evol Comput 3(4):257–271

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michael Glaß .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer Science+Business Media Dordrecht

About this entry

Cite this entry

Glaß, M., Teich, J., Lukasiewycz, M., Reimann, F. (2017). Hybrid Optimization Techniques for System-Level Design Space Exploration. In: Ha, S., Teich, J. (eds) Handbook of Hardware/Software Codesign. Springer, Dordrecht. https://doi.org/10.1007/978-94-017-7267-9_8

Download citation

Publish with us

Policies and ethics