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
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 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
AADL. http://www.aadl.info/ (2012). Accessed Oct 2012
Alur, R., Courcoubetis, C., Dill, D.L.: Model-checking in dense real-time. Inf. Comput. 104, 2–34 (1993)
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)
Alur, R., Dill, D.L.: A theory of timed automata. Theor. Comput. Sci. 126, 183–235 (1994)
Apache Felix. http://felix.apache.org/ (2012). Accessed Oct 2012
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)
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)
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
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)
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
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
Börner, K.: Plug-and-play macroscopes. Commun. ACM 54, 60–69 (2011)
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)
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)
CoFluent design, CoFluent studio. http://www.cofluentdesign.com/ (2012). Accessed Oct 2012
Cyberinfrastructure shell. http://cishell.org/home.html (2012). Accessed Oct 2012
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)
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)
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)
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)
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)
Esterel technologies, SCADE Suite. http://www.esterel-technologies.com/products/scade-suite (2012). Accessed Oct 2012
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)
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)
Holzmann, G.J.: The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley, Boston (2004). http://spinroot.com/. Accessed Oct 2012
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
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)
IBM ILOG CPLEX optimizer. http://www.ibm.com/CPLEX/ (2012). Accessed Oct 2012
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)
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)
Improvise. http://www.cs.ou.edu/~weaver/improvise/index.html (2012). Accessed Oct 2012
Jackson, D.: Software Abstractions: Logic, Language, and Analysis. MIT Press, Cambridge (2006)
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)
JAVA genetic algoritms package. http://jgap.sourceforge.net/ (2012). Accessed Oct 2012
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)
Jensen, K., Kristensen, L.M.: Coloured Petri Nets: Modelling and Validation of Concurrent Systems. Springer, Berlin (2009)
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)
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
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)
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)
Lee, E.A., Messerschmitt, D.G.: Static scheduling of synchronous data flow programs for digital signal processing. IEEE Trans. Comput. 36, 24–35 (1987)
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
MathWorks – global optimization toolbox – Solve multiple maxima, multiple minima, and nonsmooth optimization problems. http://www.mathworks.com/products/global-optimization (2012). Accessed Oct 2012
MathWorks – SimEvents – discrete-event simulation software. http://www.mathworks.com/products/simevents/ (2012). Accessed Oct 2012
MathWorks – Simulink – simulation and model-based design. http://www.mathworks.com/products/simulink/ (2012). Accessed Oct 2012
MLDesign Technologies, MLDesigner. http://www.mldesigner.com/ (2012). Accessed Oct 2012
Modelica and the Modelica Association. http://www.modelica.org/ (2012). Accessed Oct 2012
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)
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
NuSMV. http://nusmv.fbk.eu/ (2012). Accessed Oct 2012
Open SystemC Initiative (OSCI). http://www.systemc.org/ (2012). Accessed Oct 2012
OSGi Alliance: OSGI service platform release 4. http://www.osgi.org/Specifications/HomePage (2012). Accessed Oct 2012
Pareto, V.: Manual of Political Economy (manuale di economia politica). Kelley, New York (1971 (1906)). Translated by A.S. Schwier, A.N. Page
PRISM. http://www.prismmodelchecker.org/ (2012). Accessed Oct 2012
ProM – process mining workbench. http://www.promtools.org/prom6/ (2012). Accessed Oct 2012
Qt – a cross-platform application and UI framework. http://qt.nokia.com/products/ (2012). Accessed Oct 2012
RTCtoolbox: modular performance analysis with real-time calculus. http://www.mpa.ethz.ch/Rtctoolbox/ (2012). Accessed Oct 2012
Sander, I., Jantsch, A.: System modeling and transformational design refinement in ForSyDe. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 23, 17–32 (2004)
Schindler, K.: Measurement data visualization and performance visualization. Internship report, Eindhoven University of Technology, Department of Mathematics and Computer Science (2008)
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)
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)
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)
Symtavision SymTA/S. http://www.symtavision.com/symtas.html/ (2012). Accessed Oct 2012
SysML. http://www.sysml.org/ (2012). Accessed Oct 2012
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)
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)
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)
TimeDoctor. http://sourceforge.net/projects/timedoctor/ (2012). Accessed Oct 2012
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
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)
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)
UML – Object Management Group. http://www.uml.org (2012). Accessed Oct 2012
UML profile for MARTE: modeling and analysis of real-time and embedded systems. http://www.omgmarte.org/ (2012). Accessed Oct 2012
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)
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)
Yang, Y.: Exploring resource/performance trade-offs for streaming applications on embedded multiprocessors. Ph.D. thesis, Eindhoven University of Technology, Eindhoven (2012)
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)
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)
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)
Yices: an SMT solver. http://yices.csl.sri.com/ (2012). Accessed Oct 2012
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
Corresponding author
Editor information
Editors and Affiliations
Rights 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)