Model-Driven Performance Evaluation and Formal Verification for Multi-level Embedded System Design

Daniela Genius, Letitia W. Li, Ludovic Apvrille


The design methodology of an embedded system should start with a system-level partitioning dividing functions into hardware and software. However, since this partitioning decision is taken at a high level of abstraction, we propose regularly validating the selected partitioning during software development. The paper introduces a new model-based engineering process with a supporting toolkit, first performing system-level partitioning, and then assessing the partitioning choices thus obtained at different levels of abstraction during software design. This assessment shall in particular validate the assumptions made on system-level (e.g. on cache miss rates) that cannot be precisely determined without low-level hardware model. High-level partitioning simulations/verification rely on custom model-checkers and abstract models of software and hardware, while low-level prototyping simulations rely on automatically generated C-POSIX software code executing on a cycle-precise virtual prototyping platform. An automotive case study on an automatic braking application illustrates our complete approach.


  1. Apvrille, L. (2015). Webpage of TTool. In http://ttool.
  2. Balarin, F., Watanabe, Y., Hsieh, H., Lavagno, L., Passerone, C., and Sangiovanni-Vincentelli, A. L. (2003). Metropolis: An integrated electronic system design environment. IEEE Computer, 36(4):45-52.
  3. Basu, A., Bensalem, S., Bozga, M., Combaz, J., Jaber, M., Nguyen, T.-H., and Sifakis, J. (2011). Rigorous component-based system design using the BIP framework.
  4. Becoulet, A. (2009). Mutekh operating system (webpage).
  5. Bengtsson, J. and Yi., W. (2004). Timed automata: Semantics, algorithms and tools. In Lecture Notes on Concurrency and Petri Nets, pages 87-124. W. Reisig and G. Rozenberg (eds.), LNCS 3098, Springer-Verlag.
  6. Blanchet, B. (2010). Proverif automatic cryptographic protocol verifier user manual. Technical report, CNRS, Département d'Informatique Ócole Normale Supérieure, Paris.
  7. Buck, J., Ha, S., Lee, E. A., and Messerschmitt, D. G. (2002). Ptolemy: a framework for simulating and prototyping heterogeneous systems. Readings in hardware/software co-design, pages 527-543.
  8. Enrici, A., Apvrille, L., and Pacalet, R. (2014). A uml model-driven approach to efficiently allocate complex communication schemes. In MODELS conference, Valencia, Spain.
  9. Erbas, C., Cerav-Erbas, S., and Pimentel, A. D. (2006). Multiobjective optimization and evolutionary algorithms for the application mapping problem in multiprocessor system-on-chip design. IEEE Transactions on Evolutionary Computation, 10(3):358-374.
  10. EVITA (2011). E-safety Vehicle InTrusion protected Applications.
  11. Feiler, P. H., Lewis, B. A., Vestal, S., and Colbert, E. (2004). An overview of the SAE architecture analysis & design language (AADL) standard: A basis for model-based architecture-driven embedded systems engineering. In Dissaux, P., Filali-Amine, M., Michel, P., and Vernadat, F., editors, IFIP-WADL, volume 176 of IFIP, pages 3-15. Springer.
  12. Gamatié, A., Beux, S. L., Piel, Ó., Atitallah, R. B., Etien, A., Marquet, P., and Dekeyser, J.-L. (2011). A modeldriven design framework for massively parallel embedded systems. ACM Trans. Embedded Comput. Syst, 10(4):39.
  13. Genius, D. and Apvrille, L. (2016). Virtual yet precise prototyping : An automotive case study. In ERTSS'2016, Toulouse.
  14. Genius, D., Faure, E., and Pouillon, N. (2011). Mapping a telecommunication application on a multiprocessor system-on-chip. In Gogniat, G., Milojevic, D., and Erdogan, A. M. A. A., editors, Algorithm-Architecture Matching for Signal and Image Processing, chapter 1, pages 53-77. Springer LNEE vol. 73.
  15. Kahn, G. (1974). The semantics of a simple language for parallel programming. In Rosenfeld, J. L., editor, Information Processing 7874: Proceedings of the IFIP Congress, pages 471-475. North-Holland, New York, NY.
  16. Kelling, E., Friedewald, M., Leimbach, T., Menzel, M., Sieger, P., Seudié, H., and Weyl, B. (2009). Specification and evaluation of e-security relevant use cases. Technical Report Deliverable D2.1, EVITA Project.
  17. Kienhuis, B., Deprettere, E., van der Wolf, P., and Vissers, K. (2002). A Methodology to Design Programmable Embedded Systems: The Y-Chart Approach. In Embedded Processor Design Challenges, pages 18-37. Springer.
  18. Knorreck, D., Apvrille, L., and Pacalet, R. (2013). Formal System-level Design Space Exploration. Concurrency and Computation: Practice and Experience, 25(2):250-264.
  19. Li, L., Apvrille, L., and Genius, D. (2016). Virtual prototyping of automotive systems: Towards multi-level design space exploration. In Conference on Design and Architectures for Signal and Image Processing.
  20. Pedroza, G., Knorreck, D., and Apvrille, L. (2011). AVATAR: A SysML environment for the formal verification of safety and security properties. InThe 11th IEEE Conference on Distributed Systems and New Technologies (NOTERE'2011), Paris, France.
  21. Pimentel, A. D., Hertzberger, L. O., Lieverse, P., van der Wolf, P., and Deprettere, E. F. (2001). Exploring embedded-systems architectures with artemis. IEEE Computer, 34(11):57-63.
  22. Polarsys (2008). ARCADIA/CAPELLA (webpage).
  23. SoCLib consortium (2010). SoCLib: an open platform for virtual prototyping of multi-processors system on chip (webpage). In
  24. Sodius Corporation (2016). MDGen for SystemC. http://
  25. Syed-Alwi, S.-H., Braunstein, C., and Encrenaz, E. (2013). Efficient Refinement Strategy Exploiti ng Component Properties in a CEGAR Process, volume 265 of Lecture Notes in Electrical Engineerin g, chapter 2, pages 17-36. Springer.
  26. Vidal, J., de Lamotte, F., Gogniat, G., Soulard, P., and Diguet, J.-P. (2009). A co-design approach for embedded system modeling and code generation with UML and MARTE. In DATE'09, pages 226-231.
  27. VSI Alliance (2000). Virtual Component Interface Standard (OCB 2 2.0). Technical report, VSI Alliance.
  28. Yu, H., Joshi, P., Talpin, J.-P., Shukla, S. K., and Shiraishi, S. (2015). The challenge of interoperability: modelbased integration for automotive control software. In DAC, pages 58:1-58:6. ACM.

Paper Citation

in Harvard Style

Genius D., W. Li L. and Apvrille L. (2017). Model-Driven Performance Evaluation and Formal Verification for Multi-level Embedded System Design . In Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD, ISBN 978-989-758-210-3, pages 78-89. DOI: 10.5220/0006140600780089

in Bibtex Style

author={Daniela Genius and Letitia W. Li and Ludovic Apvrille},
title={Model-Driven Performance Evaluation and Formal Verification for Multi-level Embedded System Design},
booktitle={Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,},

in EndNote Style

JO - Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,
TI - Model-Driven Performance Evaluation and Formal Verification for Multi-level Embedded System Design
SN - 978-989-758-210-3
AU - Genius D.
AU - W. Li L.
AU - Apvrille L.
PY - 2017
SP - 78
EP - 89
DO - 10.5220/0006140600780089