An Executable Semantics of the SystemC UML Profile

  • Elvinia Riccobene
  • Patrizia Scandurra
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5977)

Abstract

The SystemC UML profile is a modeling language designed to lift features and abstractions of the SystemC/C++ class library to the UML level with the aim of improving the current industrial System-on-Chip design methodology. Its graphical syntax and static semantics were defined following the “profile” extension mechanism of the UML metamodel, while its behavioral semantics was given in natural language. This paper provides a precise and executable semantics of the SystemC Process State Machines that are an extension of the UML state machines and are part of the SystemC UML profile to model the reactive behavior of the SystemC processes. To this purpose, we used the meta-hooking approach of the ASM-based semantic framework, which allows the definition of the dynamic semantics of metamodel-based languages and of UML profiles.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Börger, E., Cavarra, A., Riccobene, E.: Modeling the Dynamics of UML State Machines. In: Gurevich, Y., Kutter, P.W., Odersky, M., Thiele, L. (eds.) ASM 2000. LNCS, vol. 1912, pp. 223–241. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  2. 2.
    Börger, E., Stärk, R.: Abstract State Machines: A Method for High-Level System Design and Analysis. Springer, Heidelberg (2003)MATHGoogle Scholar
  3. 3.
    Chen, K., Sztipanovits, J., Neema, S.: Toward a semantic anchoring infrastructure for domain-specific modeling languages. In: ACM Conf. on Embedded Software, pp. 35–43 (2005)Google Scholar
  4. 4.
    Combemale, B., et al.: Towards a Formal Verification of Process Models’s properties - SimplePDL and TOCL case study. In: 9th Int. Conf. on Enterprise Information Systems (2007)Google Scholar
  5. 5.
    Mostafa, A.M., et al.: Toward a Formalization of UML2.0 Metamodel using Z Specifications. In: ACIS Int. Conf. on Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing, vol. 1, pp. 694–701 (2007)Google Scholar
  6. 6.
    Di Ruscio, D., et al.: Extending AMMA for Supporting Dynamic Semantics Specifications of DSLs. Tech. Rep. 06.02, LINA (2006)Google Scholar
  7. 7.
    Flake, S., Müller, W.: A UML Profile for Real-Time Constraints with the OCL. In: Jézéquel, J.-M., Hussmann, H., Cook, S. (eds.) UML 2002. LNCS, vol. 2460, pp. 179–195. Springer, Heidelberg (2002)Google Scholar
  8. 8.
    Flake, S., Müller, W.: An ASM Definition of the Dynamic OCL 2.0 Semantics. In: Baar, T., Strohmeier, A., Moreira, A., Mellor, S.J. (eds.) UML 2004. LNCS, vol. 3273, pp. 226–240. Springer, Heidelberg (2004)Google Scholar
  9. 9.
    OMG. Semantics of a Foundational Subset for Executable UML Models, ptc/2008-11-03Google Scholar
  10. 10.
    Gargantini, A., Riccobene, E., Scandurra, P.: A precise and executable semantics of the SystemC UML profile by the meta-hooking approach. DTI T.R. 110, Univ. of Milan (2008)Google Scholar
  11. 11.
    Gargantini, A., Riccobene, E., Scandurra, P.: A semantic framework for metamodel-based languages. J. of Automated Software Engineering 16(3-4) (2009)Google Scholar
  12. 12.
    Gargantini, A., Riccobene, E., Scandurra, P.: Model-driven design and ASM-based validation of embedded systems. In: Behavioral Modeling for Embedded Systems and Technologies: Applications for Design and Implementation, July 2009, pp. 24–54 (2009)Google Scholar
  13. 13.
    Harel, D., Rumpe, B.: Meaningful modeling: What’s the semantics of “semantics”? IEEE Computer 37(10), 64–72 (2004)Google Scholar
  14. 14.
    Jürjens, J.: A UML statecharts semantics with message-passing. In: Proc. of the 2002 ACM symposium on Applied computing, pp. 1009–1013. ACM Press, New York (2002)CrossRefGoogle Scholar
  15. 15.
    Kurtev, I., et al.: Model-based DSL frameworks. In: 21st ACM SIGPLAN conf. on Object-oriented programming systems, languages, and applications, pp. 602–616 (2006)Google Scholar
  16. 16.
  17. 17.
    Miao, H., Liu, L., Li, L.: Formalizing UML Models with Object-Z. In: George, C.W., Miao, H. (eds.) ICFEM 2002. LNCS, vol. 2495, pp. 523–534. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  18. 18.
    OMG. Meta Object Facility (MOF) 2.0, formal/2006-01-01 (2006)Google Scholar
  19. 19.
    Muller, P.-A., Fleurey, F., Jézéquel, J.-M.: Weaving Executability into Object-Oriented Meta-Languages. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 264–278. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  20. 20.
    Müller, W., Ruf, J., Rosenstiel, W.: An ASM based SystemC simulation semantics. System C: Methodologies and Applications, 97–126 (2003)Google Scholar
  21. 21.
    Ober, I.: More meaningful UML Models. In: TOOLS - 37 Pacific 2000. IEEE, Los Alamitos (2000)Google Scholar
  22. 22.
    OMG. Object Constraint Language (OCL), 2.0 formal/2006-05-01 (2006)Google Scholar
  23. 23.
    Riccobene, E., Scandurra, P.: Weaving executability into UML class models at PIM level. In: Proc. of European Workshop on Behaviour Modelling in Model Driven Architecture (BM-MDA 2009), Enschede, The Netherlands, June 23, vol. 379, pp. 10–27. ACM, New York (2009)Google Scholar
  24. 24.
    Riccobene, E., Scandurra, P., Bocchio, S., Rosti, A.: An Enhanced SystemC UML Profile for Modeling at Transaction-Level. In: Villar, E. (ed.) Embedded Systems Specification and Design Languages (2008)Google Scholar
  25. 25.
    Riccobene, E., Scandurra, P., Bocchio, S., Rosti, A.: A SoC Design Methodology Based on a UML 2.0 Profile for SystemC. In: Proc. of Design Automation and Test in Europe, pp. 704–709. IEEE Computer Society, Los Alamitos (2005)CrossRefGoogle Scholar
  26. 26.
    Riccobene, E., Scandurra, P., Bocchio, S., Rosti, A.: A model-driven design environment for embedded systems. In: Proc. of the 43rd Design Automation Conference, pp. 915–918. ACM Press, New York (2006)Google Scholar
  27. 27.
    Riccobene, E., Scandurra, P., Bocchio, S., Rosti, A.: A Model-driven co-design flow for Embedded Systems. In: Advances in Design and Specification Languages for Embedded Systems, Best of FDL 2006 (2007)Google Scholar
  28. 28.
    Riccobene, E., Scandurra, P., Bocchio, S., Rosti, A., Lavazza, L., Mantellini, L.: SystemC/C-based model-driven design for embedded systems. ACM TECS 8(4) (2009)Google Scholar
  29. 29.
    Scheidgen, M., Fischer, J.: Human comprehensible and machine processable specifications of operational semantics. In: Akehurst, D.H., Vogel, R., Paige, R.F. (eds.) ECMDA-FA. LNCS, vol. 4530, pp. 157–171. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  30. 30.
    Snook, C., Butler, M.: UML-B: Formal modeling and design aided by UML. ACM Trans. Softw. Eng. Methodol. 15(1), 92–122 (2006)CrossRefGoogle Scholar
  31. 31.
    Soden, M., Eichler, H.: Towards a model execution framework for Eclipse. In: Proc. of the 1st Workshop on Behavior Modeling in Model-Driven Architecture. ACM, New York (2009)Google Scholar
  32. 32.
    SystemC Language Reference Manual. IEEE Std 1666 (2006)Google Scholar
  33. 33.
    OMG. The Unified Modeling Language (UML), v2.2. (2009), http://www.uml.org
  34. 34.
    The Xactium XMF Mosaic (2007), http://www.xactium.com/

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Elvinia Riccobene
    • 1
  • Patrizia Scandurra
    • 2
  1. 1.DTI Dept.Università degli Studi di MilanoItaly
  2. 2.DIIMM Dept.Università degli Studi di BergamoItaly

Personalised recommendations