A Composable and Predictable MPSoC Design Flow for Multiple Real-Time Applications

  • Seyed-Hosein Attarzadeh-Niaki
  • Ekrem Altinel
  • Martijn Koedam
  • Anca Molnos
  • Ingo Sander
  • Kees Goossens


Design of real-time MPSoC systems including multiple applications is challenging because temporal requirements of each application must be respected throughout the entire design flow. Currently the design of different applications is often interdependent, making converge to a solution for each application difficult. This chapter proposes a compositional method to design applications independently, and then to execute them without interference. We define a formal modeling framework as a suitable entry point for application design. The models are executable, which enables early detection of specification errors, and include the formal properties of the applications based on well-defined models of computation. We combine this with a predictable MPSoC platform template that has a supporting design flow but lacks a simulation front-end. The structure and behavior of the application models are exported to an intermediate format via introspection which is iteratively transformed for the backend flow. We identify the problems arising in this transformation and provide appropriate solutions. The design flow is demonstrated by a system consisting of two streaming applications where less than half of the design time is dedicated to operating on the integrated system model.


  1. 1.
    B. Akesson, A. Molnos, A. Hansson, J. Angelo, K. Goossens, Composability and predictability for independent application development,verification, and execution, in Multiprocessor System-on-Chip: Hardware Design and Tool Integration, ed. by M. Hübner, J. Becker (Springer, New York, 2011), pp. 25–56CrossRefGoogle Scholar
  2. 2.
    M.A. Bamakhrama, J.T. Zhai, H. Nikolov, T. Stefanov, A methodology for automated design of hard-real-time embedded streaming systems, in Proceedings of the Conference on Design, Automation and Test in Europe. DATE ’12 (EDA Consortium, San Jose, 2012), pp. 941–946Google Scholar
  3. 3.
    P. Derler, J. Eidson, S. Goose, E. Lee, S. Matic, M. Zimmer, Using Ptides and synchronized clocks to design distributed systems with deterministic system wide timing, in Symposium on Precision Clock Synchronization for Measurement Control and Communication (ISPCS) (2013), pp. 41–46Google Scholar
  4. 4.
    M.J. Eager, E. Consulting, Introduction to the DWARF debugging format (2007),
  5. 5.
    J. Eker, J. Janneck, E. Lee, J. Liu, X. Liu, J. Ludvig, S. Neuendorffer, S. Sachs, Y. Xiong, Taming heterogeneity - the Ptolemy approach. Proc. IEEE 91 (1), 127–144 (2003)CrossRefGoogle Scholar
  6. 6.
    K. Goossens, A. Azevedo, K. Chandrasekar, M.D. Gomony, S. Goossens, M. Koedam, Y. Li, D. Mirzoyan, A. Molnos, A.B. Nejad, A. Nelson, S. Sinha, Virtual execution platforms for mixed-time-criticality systems: the CompSOC architecture and design flow. ACM Spec. Interest Group Embed. Syst. Rev. 10 (3), 23–34 (2013). Google Scholar
  7. 7.
    A. Hamann, M. Jersak, K. Richter, R. Ernst, A framework for modular analysis and exploration of heterogeneous embedded systems. Real-Time Syst. 3, 101–137 (2006)CrossRefzbMATHGoogle Scholar
  8. 8.
    A. Hansson, M. Ekerhult, A. Molnos, A. Milutinovic, A. Nelson, J. Ambrose, K. Goossens, Design and implementation of an operating system for composable processor sharing. Microprocess. Microsyst. 35 (2), 246–260 (2011). Special issue on Network-on-Chip Architectures and Design MethodologiesGoogle Scholar
  9. 9.
    K. Huang, W. Haid, I. Bacivarov, M. Keller, L. Thiele, Embedding formal performance analysis into the design cycle of MPSoCs for real-time streaming applications. ACM Trans. Embed. Comput. Syst. 11 (1), 8:1–8:23 (2012)Google Scholar
  10. 10.
    J. Jensen, D. Chang, E. Lee, A model-based design methodology for cyber-physical systems, in Proceedings of the 7th International Conference on Wireless Communications and Mobile Computing (IWCMC) (2011), pp. 1666–1671Google Scholar
  11. 11.
    M. Kay, et al., XSL transformations (XSLT) version 2.0. W3C Recom. (2007)Google Scholar
  12. 12.
    E. Lee, D. Messerschmitt, Synchronous data flow. Proc. IEEE 75 (9), 1235–1245 (1987)CrossRefGoogle Scholar
  13. 13.
    E. Lee, A. Sangiovanni-Vincentelli, A framework for comparing models of computation. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 17 (12), 1217–1229 (1998)CrossRefGoogle Scholar
  14. 14.
    B. Lickly, I. Liu, S. Kim, H.D. Patel, S.A. Edwards, E.A. Lee, Predictable programming on a precision timed architecture, in Proceedings of the International Conference on Compilers, Architectures and Synthesis for Embedded Systems. CASES ’08 (ACM, New York, 2008), pp. 137–146Google Scholar
  15. 15.
    A. Molnos, A.B. Nejad, B.T. Nguyen, S. Cotofana, K. Goossens, Decoupled inter- and intra-application scheduling for composable and robust embedded MPSoC platforms, in Proceedings of the 15th International Workshop on Software and Compilers for Embedded Systems. SCOPES ’12 (ACM, New York, 2012), pp. 13–21Google Scholar
  16. 16.
    O. Moreira, Temporal analysis and scheduling of hard real-time radios running on a multi-processor. Ph.D. thesis, Technical University of Eindhoven (2012)Google Scholar
  17. 17.
    A.B. Nejad, A. Molnos, K. Goossens, A software-based technique enabling composable hierarchical preemptive scheduling for time-triggered applications, in Proc. Int’l Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA) (2013)Google Scholar
  18. 18.
    A. Nelson, A.B. Nejad, A. Molnos, M. Koedam, K. Goossens, CoMik: a predictable and cycle-accurately composable real-time microkernel, in Proceedings of Design, Automation and Test in Europe Conference and Exhibition (DATE) (2014)Google Scholar
  19. 19.
    A. Nelson, K. Goossens, B. Akesson, Dataflow formalisation of real-time streaming applications on a composable and predictable multi-processor SOC. J. Syst. Archit. 61, 435–448 (2015)CrossRefGoogle Scholar
  20. 20.
    S.A. Niaki, M. Jakobsen, T. Sulonen, I. Sander, Formal heterogeneous system modeling with SystemC, in Proceedings of the Forum on Specification and Design Languages (FDL) (2012), pp. 160–167Google Scholar
  21. 21.
    H. Posadas, P. Peñil, A. Nicolás, E. Villar, Automatic synthesis of embedded SW for evaluating physical implementation alternatives from UML/MARTE models supporting memory space separation. Microelectron. J. 45 (10), 1281–1291 (2014). DCIS’12 Special Issue
  22. 22.
    M. Schoeberl, C. Brooks, E. Lee, Code generation for embedded Java with Ptolemy, in Software Technologies for Embedded and Ubiquitous Systems, ed. by S. Min, R. Pettit, P. Puschner, T. Ungerer. Lecture Notes in Computer Science, vol. 6399 (Springer, Berlin/Heidelberg, 2010), pp. 155–166Google Scholar
  23. 23.
    S. Smith, J. Brady, SUSAN–a new approach to low level image processing. Int. J. Comput. Vis. 23 (1), 45–78 (1997)CrossRefGoogle Scholar
  24. 24.
    R. Stefan, A. Molnos, K. Goossens, dAElite: a TDM NoC supporting QoS, multicast, and fast connection set-up. IEEE Trans. Comput. 99, 1–10 (2012)MathSciNetGoogle Scholar
  25. 25.
    S. Stuijk, M. Geilen, T. Basten, SDF3: SDF for free, in Proceedings of the Sixth International Conference on Application of Concurrency to System Design (ACSD) (2006), pp. 276–278Google Scholar
  26. 26.
    G.K. Wallace, The jpeg still picture compression standard. Commun. ACM 34 (4), 30–44 (1991). CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Seyed-Hosein Attarzadeh-Niaki
    • 1
  • Ekrem Altinel
    • 2
  • Martijn Koedam
    • 3
  • Anca Molnos
    • 4
  • Ingo Sander
    • 2
  • Kees Goossens
    • 3
  1. 1.Shahid Beheshti UniversityTehranIran
  2. 2.KTH Royal Institute of TechnologyStockholmSweden
  3. 3.Eindhoven University of TechnologyEindhovenNetherlands
  4. 4.CEA-LETIGrenobleFrance

Personalised recommendations