Skip to main content

Model-Driven Design-Space Exploration for Software-Intensive Embedded Systems

  • Chapter
  • First Online:
Model-Based Design of Adaptive Embedded Systems

Abstract

The complexity of today’s embedded systems is increasing rapidly. Ever more functionality is realised in software, for reasons of cost and flexibility. This leads to many implementation alternatives that vary in functionality, performance, hardware, etc. To cope with this complexity, systematic development support during the early phases of design is needed. Model-driven development provides this support. It bridges the gap between ad-hoc back-of-the-envelope or spreadsheet calculations and physical prototypes. Models provide insight in system-level performance characteristics of potential implementation options and are a good means of documentation and communication. They ultimately lead to shorter, more predictable development times and better controlled product quality. This chapter presents the Octopus tool set for model-driven design-space exploration. It supports designers in modelling and analysing design alternatives for embedded software and hardware. It follows the Y-chart paradigm, which advocates a separation between application software functionality, platform implementation choices, and the mapping of software functionality onto the platform. The tool set enables fast and accurate exploration of design alternatives for software-intensive embedded systems.

Marc Voorhoeve 5 April 1950-7 October 2011

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 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.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

Notes

  1. 1.

    G. Igna ∙ F. VaandragerDepartment of Model-Based System Development, Institute for Computing and Information Sciences, Radboud University Nijmegen, P.O. Box 9010, 6500 GL Nijmegen, The Netherlandse-mail: ;S. de SmetOcé-Technologies B.V., P.O. Box 101, 5900 MA Venlo, The Netherlandse-mail:M. Voorhoeve ∙ W. van der Aalst Architecture of Information Systems group, Faculty of Mathematics and Computer Science, Eindhoven University of Technology, P.O. Box 513, 5600 MB Eindhoven, The Netherlandse-mail:  † Marc Voorhoeve 5 April 1950-7 October 2011

References

  1. AADL. http://www.aadl.info/ (2012). Accessed Oct 2012

  2. Alur, R., Courcoubetis, C., Dill, D.L.: Model-checking in dense real-time. Inf. Comput. 104, 2–34 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  3. Alur, R., Courcoubetis, C., Halbwachs, N., Henzinger, T.A., Ho, P.H., Nicollin, X., Olivero, A., Sifakis, J., Yovine, S.: The algorithmic analysis of hybrid systems. Theor. Comput. Sci. 138, 3–34 (1995)

    Article  MATH  Google Scholar 

  4. Alur, R., Dill, D.L.: A theory of timed automata. Theor. Comput. Sci. 126, 183–235 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  5. Apache Felix. http://felix.apache.org/ (2012). Accessed Oct 2012

  6. Balarin, F., Giusto, P., Jurecska, A., Passerone, C., Sentovich, E., Tabbara, B., Chiodo, M., Hsieh, H., Lavagno, L., Sangiovanni-Vincentelli, A., Suzuki, K.: Hardware-Software Co-design of Embedded Systems: The POLIS Approach. Kluwer Academic Publishers, Norwell (1997)

    Book  MATH  Google Scholar 

  7. Basten, T., Hendriks, M., Somers, L., Trčka, N.: Model-driven design-space exploration for software-intensive embedded systems (extended abstract). In: Jurdzinski, M., Nickovic, D. (eds.) Formal Modeling and Analysis of Timed Systems. Lecture Notes in Computer Science, vol. 7595, pp. 1–6. Springer, Berlin (2012)

    Chapter  Google Scholar 

  8. Basten, T., van Benthum, E., Geilen, M., Hendriks, M., Houben, F., Igna, G., Reckers, F., de Smet, S., Somers, L., Teeselink, E., Trčka, N., Vaandrager, F., Verriet, J., Voorhoeve, M., Yang, Y.: Model-driven design-space exploration for embedded systems: The Octopus toolset. In: Margaria, T., Steffen, B. (eds.) Leveraging Applications of Formal Methods, Verification, and Validation. Lecture Notes in Computer Science, vol. 6415, pp. 90–105. Springer, Heidelberg (2010). http://dse.esi.nl/. Accessed Oct 2012

  9. Basu, A., Bozga, M., Sifakis, J.: Modeling heterogeneous real-time components in BIP. In: Proceedings of the Fourth IEEE International Conference on Software Engineering and Formal Methods (SEFM 2006), Pune, pp. 3–12 (2006)

    Google Scholar 

  10. Behrmann, G., David, A., Larsen, K.G., Hakansson, J., Pettersson, P., Yi, W., Hendriks, M.: Uppaal 4.0. In: Proceedings of the Third International Conference on the Quantitative Evaluation of Systems (QEST06), Riverside, pp. 125–126 (2006). http://www.uppaal.com/. Accessed Oct 2012

  11. Bleuler, S., Laumanns, M., Thiele, L., Zitzler, E.: PISA – a platform and programming language independent interface for search algorithms. In: Fonseca, C.M., Fleming, P.J., Zitzler, E., Deb, K., Thiele, L. (eds.) Evolutionary Multi-Criterion Optimization. Lecture Notes in Computer Science, vol. 2632, pp. 494–508. Springer, Berlin (2003). http://www.tik.ee.ethz.ch/pisa/. Accessed Oct 2012

  12. Börner, K.: Plug-and-play macroscopes. Commun. ACM 54, 60–69 (2011)

    Article  Google Scholar 

  13. Bulychev, P.E., David, A., Larsen, K.G., Mikučionis, M., Poulsen, D.B., Legay, A., Wang, Z.: UPPAAL-SMC: statistical model checking for priced timed automata. In: Proceedings of the 10th Workshop on Quantitative Aspects of Programming Languages and Systems (QAPL 2012), Tallinn, pp. 1–16 (2012)

    Google Scholar 

  14. Cassez, F., Larsen, K.: The impressive power of stopwatches. In: Palamidessi, C. (ed.) CONCUR 2000 – Concurrency Theory. Lecture Notes in Computer Science, vol. 1877, pp. 138–152. Springer, Berlin (2000)

    Chapter  Google Scholar 

  15. CoFluent design, CoFluent studio. http://www.cofluentdesign.com/ (2012). Accessed Oct 2012

  16. Cyberinfrastructure shell. http://cishell.org/home.html (2012). Accessed Oct 2012

  17. Davare, A., Densmore, D., Meyerowitz, T., Pinto, A., Sangiovanni-Vincentelli, A., Yang, G., Zeng, H., Zhu, Q.: A next-generation design framework for platform-based design. In: Proceedings of the 2007 Design and Verification Conference (DVCon 2007), San Jose (2007)

    Google Scholar 

  18. David, A., Larsen, K.G., Legay, A., Mikučionis, M., Poulsen, D.B., van Vliet, J., Wang, Z.: Statistical model checking for networks of priced timed automata. In: Formal Modeling and Analysis of Timed Systems. Lecture Notes in Computer Science, vol. 6919, pp. 80–96. Springer, Berlin (2011)

    Google Scholar 

  19. Derler, P., Lee, E.A., Matic, S.: Simulation and implementation of the PTIDES programming model. In: Proceedings of the 12th IEEE/ACM International Symposium on Distributed Simulation and Real-Time Applications (DS-RT ’08), Vancouver, pp. 330–333 (2008)

    Google Scholar 

  20. Eker, J., Janneck, J.W.: CAL language report specification of the CAL actor language. ERL technical memo UCB/ERL M03/48, University of California, Berkeley (2003)

    Google Scholar 

  21. Eker, J., Janneck, J.W., Lee, E.A., Liu, J., Liu, X., Ludvig, J., Neuendorffer, S., Sachs, S., Xiong, Y.: Taming heterogeneity – the Ptolemy approach. Proc. IEEE 91, 127–144 (2003)

    Article  Google Scholar 

  22. Esterel technologies, SCADE Suite. http://www.esterel-technologies.com/products/scade-suite (2012). Accessed Oct 2012

  23. Hendriks, M., Geilen, M., Basten, T.: Pareto analysis with uncertainty. In: Proceedings of the 9th IEEE/IFIP International Conference on Embedded and Ubiquitous Computing (EUC 2011), Melbourne, pp. 189–196 (2011)

    Google Scholar 

  24. Hendriks, M., Vaandrager, F.W.: Reconstructing critical paths from execution traces. In: Proceedings of the 10th IEEE/IFIP International Conference on Embedded and Ubiquitous Computing (EUC 2012), Paphos, pp. 524–531 (2012)

    Google Scholar 

  25. Holzmann, G.J.: The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley, Boston (2004). http://spinroot.com/. Accessed Oct 2012

  26. Houben, F., Igna, G., Vaandrager, F.: Modeling task systems using parameterized partial orders. Int. J. Softw. Tools Technol. Transf. (2012). DOI: 10.1007/s10009-012-0264-8

    Google Scholar 

  27. Hsu, C.J., Keceli, F., Ko, M.Y., Shahparnia, S., Bhattacharyya, S.S.: DIF: an interchange format for dataflow-based design tools. In: Pimentel, A.D., Vassiliadis, S. (eds.) Computer Systems: Architectures, Modeling, and Simulation. Lecture Notes in Computer Science, vol. 3133, pp. 3–32. Springer, Berlin (2004)

    Google Scholar 

  28. IBM ILOG CPLEX optimizer. http://www.ibm.com/CPLEX/ (2012). Accessed Oct 2012

  29. Igna, G., Kannan, V., Yang, Y., Basten, T., Geilen, M., Vaandrager, F., Voorhoeve, M., de Smet, S., Somers, L.: Formal modeling and scheduling of data paths of digital document printers. In: Cassez, F., Jard, C. (eds.) Formal Modeling and Analysis of Timed Systems. Lecture Notes in Computer Science, vol. 5215, pp. 170–187. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  30. Igna, G., Vaandrager, F.: Verification of printer datapaths using timed automata. In: Margaria, T., Steffen, B. (eds.) Leveraging Applications of Formal Methods, Verification, and Validation. Lecture Notes in Computer Science, vol. 6416, pp. 412–423. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  31. Improvise. http://www.cs.ou.edu/~weaver/improvise/index.html (2012). Accessed Oct 2012

  32. Jackson, D.: Software Abstractions: Logic, Language, and Analysis. MIT Press, Cambridge (2006)

    Google Scholar 

  33. Jackson, E.K., Kang, E., Dahlweid, M., Seifert, D., Santen, T.: Components, platforms and possibilities: towards generic automation for MDA. In: Proceedings of the Tenth ACM International Conference on Embedded Software (EMSOFT 2010), Scottsdale, pp. 39–48 (2010)

    Google Scholar 

  34. JAVA genetic algoritms package. http://jgap.sourceforge.net/ (2012). Accessed Oct 2012

  35. Jensen, K., Kristensen, L., Wells, L.: Coloured Petri nets and CPN tools for modelling and validation of concurrent systems. Int. J. Softw. Tools Technol. Transf. 9, 213–254 (2007)

    Article  Google Scholar 

  36. Jensen, K., Kristensen, L.M.: Coloured Petri Nets: Modelling and Validation of Concurrent Systems. Springer, Berlin (2009)

    Book  MATH  Google Scholar 

  37. Katoen, J.P., Zapreev, I.S., Hahn, E.M., Hermanns, H., Jansen, D.N.: The ins and outs of the probabilistic model checker MRMC. In: Proceedings of the Sixth International Conference on the Quantitative Evaluation of Systems (QEST 2009), Budapest, pp. 167–176 (2009)

    Google Scholar 

  38. Keinert, J., Streubühr, M., Schlichter, T., Falk, J., Gladigau, J., Haubelt, C., Teich, J., Meredith, M.: SystemCoDesigner–an automatic ESL synthesis approach by design space exploration and behavioral synthesis for streaming applications. ACM Trans. Des. Autom. Electron. Syst. 14(1), Article 1, 1:1–1:23 (2009). http://www12.informatik.uni-erlangen.de/research/scd/. Accessed Oct 2012

  39. Kienhuis, B., Deprettere, E., Vissers, K., van der Wolf, P.: An approach for quantitative analysis of application-specific dataflow architectures. In: Proceedings of the 1997 IEEE International Conference on Application-Specific Systems, Architectures and Processors (ASAP ’97), Zurich, pp. 338–349 (1997)

    Google Scholar 

  40. Kumar, A.: Adding schedulability analysis to the Octopus toolset. Master’s thesis, Eindhoven University of Technology, Faculty of Mathematics and Computer Science, Design and Analysis of Systems group, Eindhoven (2011)

    Google Scholar 

  41. Lee, E.A., Messerschmitt, D.G.: Static scheduling of synchronous data flow programs for digital signal processing. IEEE Trans. Comput. 36, 24–35 (1987)

    Article  MATH  Google Scholar 

  42. Lukasiewycz, M., Glaß, M., Reimann, F., Teich, J.: Opt4j: meta-heuristic optimization framework for Java. In: Proceedings of the 13th Annual Conference Genetic and Evolutionary Computing Conference (GECCO 2011), Dublin, pp. 1723–1730 (2011). http://opt4j.sourceforge.net/. Accessed Oct 2012

  43. MathWorks – global optimization toolbox – Solve multiple maxima, multiple minima, and nonsmooth optimization problems. http://www.mathworks.com/products/global-optimization (2012). Accessed Oct 2012

  44. MathWorks – SimEvents – discrete-event simulation software. http://www.mathworks.com/products/simevents/ (2012). Accessed Oct 2012

  45. MathWorks – Simulink – simulation and model-based design. http://www.mathworks.com/products/simulink/ (2012). Accessed Oct 2012

  46. MLDesign Technologies, MLDesigner. http://www.mldesigner.com/ (2012). Accessed Oct 2012

  47. Modelica and the Modelica Association. http://www.modelica.org/ (2012). Accessed Oct 2012

  48. Moily, A.: Supporting design-space exploration with synchronous data flow graphs in the Octopus toolset. Master’s thesis, Eindhoven University of Technology, Faculty of Mathematics and Computer Science, Software Engineering and Technology group, Eindhoven (2011)

    Google Scholar 

  49. Nikolov, H., Thompson, M., Stefanov, T., Pimentel, A., Polstra, S., Bose, R., Zissulescu, C., Deprettere, E.: Daedalus: toward composable multimedia MP-SoC design. In: Proceedings of the 45th Annual Design Automation Conference (DAC 2008), Anaheim, pp. 574–579 (2008). http://daedalus.liacs.nl/. Accessed Oct 2012

  50. NuSMV. http://nusmv.fbk.eu/ (2012). Accessed Oct 2012

  51. Open SystemC Initiative (OSCI). http://www.systemc.org/ (2012). Accessed Oct 2012

  52. OSGi Alliance: OSGI service platform release 4. http://www.osgi.org/Specifications/HomePage (2012). Accessed Oct 2012

  53. Pareto, V.: Manual of Political Economy (manuale di economia politica). Kelley, New York (1971 (1906)). Translated by A.S. Schwier, A.N. Page

    Google Scholar 

  54. PRISM. http://www.prismmodelchecker.org/ (2012). Accessed Oct 2012

  55. ProM – process mining workbench. http://www.promtools.org/prom6/ (2012). Accessed Oct 2012

  56. Qt – a cross-platform application and UI framework. http://qt.nokia.com/products/ (2012). Accessed Oct 2012

  57. RTCtoolbox: modular performance analysis with real-time calculus. http://www.mpa.ethz.ch/Rtctoolbox/ (2012). Accessed Oct 2012

  58. Sander, I., Jantsch, A.: System modeling and transformational design refinement in ForSyDe. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 23, 17–32 (2004)

    Article  Google Scholar 

  59. Schindler, K.: Measurement data visualization and performance visualization. Internship report, Eindhoven University of Technology, Department of Mathematics and Computer Science (2008)

    Google Scholar 

  60. Stuijk, S., Geilen, M., Basten, T.: Throughput-buffering trade-off exploration for cyclo-static and synchronous dataflow graphs. IEEE Trans. Comput. 57, 1331–1345 (2008)

    Article  MathSciNet  Google Scholar 

  61. Stuijk, S., Geilen, M., Theelen, B., Basten, T.: Scenario-aware dataflow: modeling, analysis and implementation of dynamic applications. In: Proceedings of the 2011 International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS XI), Samos, pp. 404–411 (2011)

    Google Scholar 

  62. Stuijk, S., Geilen, M.C.W., Basten, T.: SDF3: SDF for free. In: Proceedings of the 6th International Conference on Application of Concurrency to System Design (ACSD 2006), Turku, Finland, pp. 276–278 (2006)

    Google Scholar 

  63. Symtavision SymTA/S. http://www.symtavision.com/symtas.html/ (2012). Accessed Oct 2012

  64. SysML. http://www.sysml.org/ (2012). Accessed Oct 2012

  65. Teeselink, E., Somers, L., Basten, T., Trčka, N., Hendriks, M.: A visual language for modeling and analyzing printer data path architectures. In: Proceedings of the Industry Track of Software Language Engineering 2011 (ITSLE 2011), Braga, pp. 1–20 (2011)

    Google Scholar 

  66. Theelen, B.D., Florescu, O., Geilen, M.C.W., Huang, J., van der Putten, P.H.A., Voeten, J.P.M.: Software/hardware engineering with the parallel object-oriented specification language. In: Proceedings of the 5th IEEE/ACM International Conference on Formal Methods and Models for Codesign (MEMOCODE ’07), Nice, pp. 139–148 (2007)

    Google Scholar 

  67. Theelen, B.D., Geilen, M.C.W., Basten, T., Voeten, J.P.M., Gheorghita, S.V., Stuijk, S.: A scenario-aware data flow model for combined long-run average and worst-case performance analysis. In: Proceedings of the Fourth ACM and IEEE International Conference on Formal Methods and Models for CoDesign (MEMOCODE 2006), Napa, pp. 185–194 (2006)

    Google Scholar 

  68. TimeDoctor. http://sourceforge.net/projects/timedoctor/ (2012). Accessed Oct 2012

  69. Trčka, N., Hendriks, M., Basten, T., Geilen, M., Somers, L.: Integrated model-driven design-space exploration for embedded systems. In: Proceedings of the International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS XI), Samos, pp. 339–346 (2011). http://dse.esi.nl/. Accessed Oct 2012

  70. Trčka, N., Voorhoeve, M., Basten, T.: Parameterized timed partial orders with resources: formal definition and semantics. ES report ESR-2010-01, Eindhoven University of Technology, Department of Electrical Engineering, Electronic Systems group, Eindhoven (2010)

    Google Scholar 

  71. Trčka, N., Voorhoeve, M., Basten, T.: Parameterized partial orders for modeling embedded system use cases: formal definition and translation to coloured Petri nets. In: Proceedings of the 11th International Conference on Application of Concurrency to System Design (ACSD 2011), Kanazawa, pp. 13–18 (2011)

    Google Scholar 

  72. UML – Object Management Group. http://www.uml.org (2012). Accessed Oct 2012

  73. UML profile for MARTE: modeling and analysis of real-time and embedded systems. http://www.omgmarte.org/ (2012). Accessed Oct 2012

  74. van Beek, D.A., Collins, P., Nadales, D.E., Rooda, J.E., Schiffelers, R.R.H.: New concepts in the abstract format of the compositional interchange format. In: Proceedings of the 3rd IFAC Conference on Analysis and Design of Hybrid Systems (ADHS 2009), Zaragoza, pp. 250–255 (2009)

    Google Scholar 

  75. Viskic, I., Yu, L., Gajski, D.: Design exploration and automatic generation of MPSoC platform TLMs from Kahn Process Network applications. In: Proceedings of the ACM SIGPLAN/SIGBED 2010 Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES ’10), Stockholm, pp. 77–84 (2010)

    Google Scholar 

  76. Yang, Y.: Exploring resource/performance trade-offs for streaming applications on embedded multiprocessors. Ph.D. thesis, Eindhoven University of Technology, Eindhoven (2012)

    Google Scholar 

  77. Yang, Y., Geilen, M., Basten, T., Stuijk, S., Corporaal, H.: Exploring trade-offs between performance and resource requirements for synchronous dataflow graphs. In: Proceedings of the 7th IEEE/ACM/IFIP Workshop on Embedded Systems for Real-Time Multimedia (ESTIMedia 2009), Grenoble, pp. 96–105 (2009)

    Google Scholar 

  78. Yang, Y., Geilen, M., Basten, T., Stuijk, S., Corporaal, H.: Automated bottleneck-driven design-space exploration of media processing systems. In: Proceedings of the Conference on Design, Automation and Test in Europe (DATE 2010), Dresden, pp. 1041–1046 (2010)

    Google Scholar 

  79. Yang, Y., Geilen, M., Basten, T., Stuijk, S., Corporaal, H.: Playing games with scenario- and resource-aware SDF graphs through policy iteration. In: Proceedings of the Conference on Design, Automation and Test in Europe (DATE 2012), Dresden, pp. 194–199 (2012)

    Google Scholar 

  80. Yices: an SMT solver. http://yices.csl.sri.com/ (2012). Accessed Oct 2012

Download references

Acknowledgements

This work has been carried out as part of the Octopus project with Océ-Technologies B.V. under the responsibility of the Embedded Systems Institute. This project is partially supported by the Netherlands Ministry of Economic Affairs, Agriculture, and Innovation under the BSIK program.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Twan Basten .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer Science+Business Media New York

About this chapter

Cite this chapter

Basten, T. et al. (2013). Model-Driven Design-Space Exploration for Software-Intensive Embedded Systems. In: Basten, T., Hamberg, R., Reckers, F., Verriet, J. (eds) Model-Based Design of Adaptive Embedded Systems. Embedded Systems, vol 22. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-4821-1_7

Download citation

  • DOI: https://doi.org/10.1007/978-1-4614-4821-1_7

  • Published:

  • Publisher Name: Springer, New York, NY

  • Print ISBN: 978-1-4614-4820-4

  • Online ISBN: 978-1-4614-4821-1

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics