Extending UML for Electronic Systems Design: A Code Generation Perspective

  • Yves Vanderperren
  • Wolfgang Mueller
  • Da He
  • Fabian Mischkalla
  • Wim Dehaene


The Unified Modeling Language (UML) is now widely accepted by the software community. More recently, UML has attracted attention as a unification language for systems description combining both hardware and software components. First, it has been recognized that electronic systems design can no longer be seen as an isolated hardware design activity. In addition, recent advances in tools supporting high level hardware synthesis from electronic system level languages, which are predominantly based on C/C++, open new perspectives for automatic code generation from UML models and opportunities to enhance the link between a high level specification and a concrete hardware/software implementation. Finally, UML has become a general purpose language which can be customized for specific purposes, such as the modelization of electronic systems. This chapter presents recent advances of the UML language applied to System-on-Chip (SoC) and hardware-related embedded systems design. In particular, several examples of specific UML customizations (UML profiles) relevant for SoC design are summarized. Various approaches associating UML with existing hardware/software design languages are presented. The question of tool support and association with well-known simulation environments, such as MATLAB/Simulink, is addressed as well. A concrete example of a UML profile for hardware/software co-modeling and code generation for hardware/software co-simulation is presented in more details for illustration purposes.



The work described in this chapter was partly funded by the German Ministry of Education and Research (BMBF) in the context of the ITEA2 project TIMMO (ID 01IS07002), the ICT project SPRINT (IST-2004-027580), and the ICT project SATURN (FP7-216807).


  1. 1.
  2. 2.
    Akehurst, D., et al.: Compiling UML state diagrams into VHDL: an experiment in using model driven development. In: Proc. Forum Specification & Design Languages (FDL) (2007) Google Scholar
  3. 3.
    Axilica FalconML:
  4. 4.
    Bahill, A., Gissing, B.: Re-evaluating systems engineering concepts using systems thinking. IEEE Trans. Syst. Man Cybern., Part C, Appl. Rev. 28, 516–527 (1998) CrossRefGoogle Scholar
  5. 5.
    Baresi, L., et al.: SystemC code generation from UML models. In: System Specification and Design Languages. Springer, Berlin (2003). Chap. 13 Google Scholar
  6. 6.
    Basu, A.S., et al.: A methodology for bridging the gap between UML & codesign. In: Martin, G., Mueller, W. (eds.) UML for SoC Design. Springer, Berlin (2005). Chap. 6 Google Scholar
  7. 7.
    Bell, A.: Death by UML fever. ACM Queue 2(1) (2004) Google Scholar
  8. 8.
    Björklund, D., Lilius, J.: From UML behavioral descriptions to efficient synthesizable VHDL. In: 20th IEEE NORCHIP Conf. (2002) Google Scholar
  9. 9.
    Boehm, B.: A spiral model of software development and enhancement. Computer 21(5), 61–72 (1988) CrossRefGoogle Scholar
  10. 10.
    Boudour, R., Kimour, M.: From design specification to SystemC. J. Comput. Sci. 2, 201–204 (2006) CrossRefGoogle Scholar
  11. 11.
  12. 12.
  13. 13.
    Coyle, F., Thornton, M.: From UML to HDL: a model driven architectural approach to hardware–software co-design. In: Proc. Information Syst.: New Generations Conf. (ISNG) (2005) Google Scholar
  14. 14.
    Damasevicius, R., Stuikys, V.: Application of UML for hardware design based on design process model. In: Proc. Asia and South Pacific Design Automation Conf. (ASP-DAC) (2004) Google Scholar
  15. 15.
    Douglass, B.: Real Time UML. Addison-Wesley, Reading (2004) Google Scholar
  16. 16.
    Electronics Weekly & Celoxica: Survey of System Design Trends. Technical report (2005) Google Scholar
  17. 17.
  18. 18.
    Forsberg, K., Mooz, H.: Application of the “Vee” to incremental and evolutionary development. In: Proc. 5th Annual Int. Symp. National Council on Systems Engineering (1995) Google Scholar
  19. 19.
    From UML to SystemC—model driven development for SoC. Webinar,
  20. 20.
    Fujitsu: New SoC design methodology based on UML and C programming languages. Find 20(4), 3–6 (2002) Google Scholar
  21. 21.
    Goering, R.: System-level design language arrives. EE Times (August 2006) Google Scholar
  22. 22.
    Grell, D.: Wheel on wire. C’t 14, 170 (2003) (in German) Google Scholar
  23. 23.
    Grötker, T., Liao, S., Martin, G., Swan, S.: System Design with SystemC. Springer, Berlin (2002) Google Scholar
  24. 24.
    Harel, D.: Statecharts: a visual formalism for complex systems. Sci. Comput. Program. 8(3), 231–274 (1987) MathSciNetMATHCrossRefGoogle Scholar
  25. 25.
    Hooman, J., et al.: Coupling Simulink and UML models. In: Proc. Symp. FORMS/FORMATS (2004) Google Scholar
  26. 26.
  27. 27.
    IEEE Std 1666–2005 SystemC Language Reference Manual (2006) Google Scholar
  28. 28.
    Kangas, T., et al.: UML-based multiprocessor SoC design framework. ACM Trans. Embed. Comput. Syst. 5(2), 281–320 (2006) CrossRefGoogle Scholar
  29. 29.
    Katayama, T.: Extraction of transformation rules from UML diagrams to SpecC. IEICE Trans. Inf. Syst. 88(6), 1126–1133 (2005) CrossRefGoogle Scholar
  30. 30.
    Kennedy Carter iUML.
  31. 31.
    Kruchten, P.: The Rational Unified Process: An Introduction. Addison-Wesley, Reading (2003) Google Scholar
  32. 32.
    Kumaraswamy, A., Mulvaney, D.: A novel EDA flow for SoC designs based on specification capture. In: Proc. ESC Division Mini-conference (2005) Google Scholar
  33. 33.
    Laemmermann, S., et al.: Automatic generation of verification properties for SoC design from SysML diagrams. In: Proc. 3rd UML-SoC Workshop at 44th DAC Conf. (2006) Google Scholar
  34. 34.
    Martin, G., Mueller, W. (eds.): UML for SoC Design. Springer, Berlin (2005) Google Scholar
  35. 35.
    McGrath, D.: Unified Modeling Language gaining traction for SoC design. EE Times (April 2005) Google Scholar
  36. 36.
    McUmber, W., Cheng, B.: UML-based analysis of embedded systems using a mapping to VHDL. In: Proc. 4th IEEE Int. Symp. High-Assurance Systems Engineering (1999) Google Scholar
  37. 37.
    Nguyen, K., et al.: Model-driven SoC design via executable UML to SystemC (2004) Google Scholar
  38. 38.
    OMG: OMG Systems Modeling Language Specification 1.1 Google Scholar
  39. 39.
    OMG: UML 2.0 Testing Profile Specification v2.0 (2004) Google Scholar
  40. 40.
    OMG: UML Profile for Modeling QoS and Fault Tolerance Characteristics and Mechanisms (2004) Google Scholar
  41. 41.
    OMG: UML Profile for Schedulability, Performance, and Time (SPT) Specification, v1.1 (2005) Google Scholar
  42. 42.
    OMG: UML Profile for System on a Chip (SoC) Specification, v1.0.1 (2006) Google Scholar
  43. 43.
    OMG: A UML Profile for MARTE (2009) Google Scholar
  44. 44.
    OMG: UML v2.2 Infrastructure Specification (2009) Google Scholar
  45. 45.
    OMG: UML v2.2 Superstructure Specification (2009) Google Scholar
  46. 46.
    Open SoC Design Platform for Reuse and Integration of IPs (SPRINT) Project.
  47. 47.
    Pauwels, M., et al.: A design methodology for the development of a complex System-on-Chip using UML and executable system models. In: System Specification and Design Languages. Springer, Berlin (2003). Chap. 11 Google Scholar
  48. 48.
    Ramanan, M.: SoC, UML and MDA—an investigation. In: Proc. 3rd UML-SoC Workshop at 43rd DAC Conf. (2006) Google Scholar
  49. 49.
    Raslan, W., et al.: Mapping SysML to SystemC. In: Proc. Forum Spec. & Design Lang. (FDL) (2007) Google Scholar
  50. 50.
    Reichmann, C., Gebauer, D., Müller-Glaser, K.: Model level coupling of heterogeneous embedded systems. In: Proc. 2nd RTAS Workshop on Model-Driven Embedded Systems (2004) Google Scholar
  51. 51.
    Riccobene, E., Rosti, A., Scandurra, P.: Improving SoC design flow by means of MDA and UML profiles. In: Proc. 3rd Workshop in Software Model Engineering (2004) Google Scholar
  52. 52.
    Royce, W.: Managing the development of large software systems: concepts and techniques. In: Proc. of IEEE WESCON (1970) Google Scholar
  53. 53.
    SATURN Project:
  54. 54.
    Schattkowsky, T., Xie, T., Mueller, W.: A UML frontend for IP-XACT-based IP management. In: Proc. Design Automation and Test Conf. in Europe (DATE) (2009) Google Scholar
  55. 55.
    Tan, W., Thiagarajan, P., Wong, W., Zhu, Y.: Synthesizable SystemC code from UML models. In: Proc. 1st UML for SoC workshop at 41st DAC Conf. (2004) Google Scholar
  56. 56.
    The Mathworks: Model-based design for embedded signal processing with Simulink (2007) Google Scholar
  57. 57.
    Thompson, H., et al.: A flexible environment for rapid prototyping and analysis of distributed real-time safety-critical systems. In: Proc. ARTISAN Real-Time Users Conf. (2004) Google Scholar
  58. 58.
    UML-SoC Workshop Website.
  59. 59.
    Vanderperren, Y.: Keynote talk: SysML and systems engineering applied to UML-based SoC design. In: Proc. 2nd UML-SoC Workshop at 42nd DAC Conf. (2005) Google Scholar
  60. 60.
    Vanderperren, Y., Dehaene, W.: From UML/SysML to Matlab/Simulink: current state and future perspectives. In: Proc. Design Automation and Test in Europe (DATE) Conf. (2006) Google Scholar
  61. 61.
    Vanderperren, Y., Pauwels, M., Dehaene, W., Berna, A., Özdemir, F.: A SystemC based System-on-Chip modelling and design methodology. In: SystemC: Methodologies and Applications, pp. 1–27. Springer, Berlin (2003). Chap. 1 Google Scholar
  62. 62.
    Vanderperren, Y., Wolfe, J.: UML-SoC Design Survey 2006. Available at
  63. 63.
    Vanderperren, Y., Wolfe, J., Douglass, B.P.: UML-SoC Design Survey 2007. Available at
  64. 64.
    Viehl, A., et al.: Formal performance analysis and simulation of UML/SysML models for ESL design. In: Proc. Design, Automation and Test in Europe (DATE) Conf. (2006) Google Scholar
  65. 65.
    Wu, Y.F., Xu, Y.: Model-driven SoC/SoPC design via UML to impulse C. In: Proc. 4th UML-SoC Design Workshop at 44th DAC Conf. (2007) Google Scholar
  66. 66.
    Zhu, Q., Oishi, R., Hasegawa, T., Nakata, T.: Integrating UML into SoC design process. In: Proc. Design, Automation and Test in Europe (DATE) Conf. (2005) Google Scholar
  67. 67.
    Zhu, Y., et al.: Using UML 2.0 for system level design of real time SoC Platforms for stream processing. In: Proc. IEEE Int. Conf. Embedded Real-Time Comp. Syst. & Appl. (RTCSA) (2005) Google Scholar

Copyright information

© Springer Science+Business Media B.V. 2012

Authors and Affiliations

  • Yves Vanderperren
    • 1
  • Wolfgang Mueller
    • 2
  • Da He
    • 2
  • Fabian Mischkalla
    • 2
  • Wim Dehaene
    • 1
  1. 1.ESAT–MICASKatholieke Universiteit LeuvenLeuvenBelgium
  2. 2.C-LABPaderborn UniversityPaderbornGermany

Personalised recommendations