Abstract
This article summarizes our effort, since 2004 up to the present time, for improving the current industrial Systems-on-Chip and Embedded Systems design by joining the capabilities of the unified modeling language (UML) and SystemC/C programming languages to operate at system-level. The proposed approach exploits the OMG model-driven architecture—a framework for Model-driven Engineering—capabilities of reducing abstract, coarse-grained and platform-independent system models to fine-grained and platform-specific models. We first defined a design methodology and a development flow for the hardware, based on a SystemC UML profile and encompassing different levels of abstraction. We then included a multithread C UML profile for modelling software applications. Both SystemC/C profiles are consistent sets of modelling constructs designed to lift the programming features (both structural and behavioral) of the two coding languages to the UML modeling level. The new codesign flow is supported by an environment, which allows system modeling at higher abstraction levels (from a functional executable level to a register transfer level) and supports automatic code-generation/back-annotation from/to UML models.
Supplemental Material
Available for Download
Online appendix to SystemC/C-based model-driven design for embedded systems. The appendix supports the information on article 30.
- Arlow, J. and Neustadt, I. 2002. UML and the Unified Process. Addison Wesley, Reading, MA.Google Scholar
- ASMETA. 2009. The Abstract State Machine mETAmodeling. Web site. http://asmeta.sf.net/.Google Scholar
- Bézivin, J. 2005. On the unification power of models. Softw. Syst. Model. 4, 2, 171--188.Google ScholarDigital Library
- Bocchio, S., Lavazza, L., Mantellini, L., and Rosti, A. 2007. A UML profile for Posix thread library. STMicroelctronics Tech. rep., AST-AGR-2007-7.Google Scholar
- Bocchio, S., Riccobene, E., Rosti, A., and Scandurra, P. 2005. A SoC design flow-based on UML 2.0 and SystemC. In Proceedings of the International Design Automation Conference. ACM, New York.Google Scholar
- Bocchio, S., Riccobene, E., Rosti, A., and Scandurra, P. 2008. An enhanced SystemC UML profile for modeling at transaction-level. In Embedded Systems Specification and Design Languages. Springer, Berlin.Google Scholar
- Börger, E. and Stärk, R. 2003. Abstract State Machines: A Method for High-Level System Design and Analysis. Springer-Verlag, Berlin. Google ScholarDigital Library
- Bruschi, F. and Sciuto, D. 2002. SystemC based design flow starting from UML model. In Proceedings of the European SystemC Users Group Meeting.Google Scholar
- Carioni, A., Gargantini, A., Riccobene, E., and Scandurra, P. 2008. Scenario-based validation of embedded systems. In Proceedings of the Forum on Specification and Design Languages.Google Scholar
- Carioni, A., Gargantini, A. Riccobene, E., and Scandurra, P. 2009. Model-driven system validation by scenarios. In Languages for Embedded Systems and Their Applications. Springer-Verlag, Berlin.Google Scholar
- Chen, J. and Cui, H. 2004. Translation from adapted UML to Promela for CORBA-based applications. In Proceedings of the 11th SPIN Workshop. Springer-Verlag, Berlin, 234--251.Google Scholar
- Czarnecki, K. and Helsen, S. 2003. Classification of model transformation approaches. In Proceedings of the 2nd OOPSLA Workshop on Generative Techniques in the Context of Model-Driven Achitecture. ACM, New York.Google Scholar
- ECSI UML Workshop. 2006. UML profiles for embedded systems, http://www.ecsi-association.org/ecsi.Google Scholar
- Edwards, M. and Green, P. 2003. UML for hardware and software object modeling. In UML for Real: Design of Embedded Real-Time Systems. Kluwer Academic, Dordrecht, The Netherlands. Google ScholarDigital Library
- Enterprise Architect. 2008. The Enterprise Architect Tool. http://www.sparxsystems.com.au/.Google Scholar
- Gargantini, A., Riccobene, E., and Scandurra, P. 2008a. A language and a simulation engine for abstract state machines based on meta-modeling. J. Universal Comput. Sci. 14, 12, 1949--1983.Google Scholar
- Gargantini, A., Riccobene, E., and Scandurra, P. 2008b. A model-driven validation&verification environment for embedded systems. In Proceedings of the 3rd IEEE Symposium on Industrial Embedded Systems (SIES'08). IEEE, Los Alamitos, CA.Google Scholar
- Gargantini, A., Riccobene, E., and Scandurra, P. 2009. Model-driven design and ASM-based validation of embedded systems. In Behavioral Modeling for Embedded Systems and Technologies: Applications for Design and Implementation. Springer, Dordrecht, The Netherlands.Google Scholar
- Gröetker, T., Liao, S., Martin, G., and Swan, S. 2002. System Design with SystemC. Kluwer Academic, Amsterdam. Google ScholarDigital Library
- IP-XACT. 2007. SPIRIT Consortium, IP-XACT schema v1.4. http://www.spiritconsortium.org.Google Scholar
- Jerraya, A. A. and Wolf, W. 2004. Multi-Processor Systems-on-Chips. Elsevier, San Francisco, CA.Google Scholar
- Keutzer, K., Newton, A. R., Rabaey, J. M., and Vincentelli, A. S. 2000. System-level design: Orthogonalization of concerns and platform-based design. IEEE Trans. CAD Integr. Circu. Syst. 19, 12, 1523--1543. Google ScholarDigital Library
- Kreku, J., Hoppari, M., and Tiensyrja, K. 2007. SystemC workload model generation from UML for performance simulation. In Proceedings of the Forum on Specification and Design Languages.Google Scholar
- Kruchten, P. 1999. The Rational Unified Process. Addison Wesley, Reading, MA. Google ScholarDigital Library
- Lavangno, L., Martin, G., Vincentelli, A. S., Rabaey, J., Chen, R., and Sgroi, M. 2003. UML and platform-based design. In UML for Real Design of Embedded Real-Time Systems. Kluwer Academic Publishers, Dordrecht, The Netherlands. Google ScholarDigital Library
- Leroux, H., Mingins, C., and Requile-Romanczuk, A. 2003. JACOT: A UML-based tool for the run-time-inspecton of concurrent Java programs. In Proceedings of the 1st Workshop on Advancing the State-of-the-Art in Run-Time Inspection. Elsvier, Amsterdam.Google Scholar
- MARTE. 2008. OMG, UML Profile for Modeling and Analysis of Real-Time and Embedded Systems (MARTE), ptc/08-06-08.Google Scholar
- Martin, G. 1999. UML and VCC. White paper. Candence Design Systems. Inc.Google Scholar
- Martin, G. and Mueller, W. 2005. UML for SoC Design. Springer, Berlin, Germany. Google ScholarDigital Library
- MDA. 2003. OMG, the Model Driven Architecture. Guide V1.0.1. http://www.omg.org/mda/.Google Scholar
- Moore, T., Vanderperren, Y., Sonck, G., Van Oostende, P., Pauwels, M., and Dehaene, W. 2002. A design methodology for the development of a complex system-on-chip using UML and executable system models. In Proceedings of the Forum on Specification and Design Languages.Google Scholar
- Mura, M. Paoloieri, M., Negri, L., and Sami, M. 2007. StateCharts to SystemC: A high-level hardware simulation approach. In Proceedings of the 17th ACM Great Lakes Symposium on VLSI. ACM, New York, 505--508. Google ScholarDigital Library
- Nguyen, K. D., Sun, Z., Thiagarajan, P. S., and Wong, W. F. 2005. Model-driven SoC design: The UML-SystemC bridge. In UML for SoC Design, Martin, G. and Mueller, W. Springer, Berlin, Germany.Google Scholar
- OCCN. 2005. OCCN Project. http://occn.sourceforge.net/.Google Scholar
- Open Group. 2008. The Open Group Consortium. http://www.opengroup.org.Google Scholar
- OpenMP. 2008. OpenMP Application Program Interface. http://www.openmp.org.Google Scholar
- OSCI Group. 2008. The Open SystemC Initiative. http://www.systemc.org.Google Scholar
- Raslam, W. and Sameh, A. 2007. Mapping SysML to SystemC. In Proceedings of Forum on Specification and Design Languages.Google Scholar
- Riccobene, E. and Scandurra, P. 2004. Modelling SystemC process behavior by the UML method state machines. In Proceedings of the 1st International Workshop on Rapid Integration of Software Engineering Techniques. Springer, Berlin. Google ScholarDigital Library
- Riccobene, E., Scandurra, P., Rosti, A., and Bocchio, S. 2005a. A SoC design methodology based on a UML 2.0 profile for SystemC. In Proceedings of the Conference on Design Automation and Test in Europe (DATE'05). IEEE, Los Alamitos. Google ScholarDigital Library
- Riccobene, E., Scandurra, P., Rosti, A., and Bocchio, S. 2005b. A UML 2.0 profile for SystemC: Toward high-level SoC design. STMicroelectronics Tech. rep., AST-AGR-2005-3.Google Scholar
- Riccobene, E., Scandurra, P., Rosti, A., and Bocchio, S. 2005c. A UML 2.0 profile for SystemC: Toward high-level SoC design. In Proceedings of the 5th ACM International Conference on Embedded Software. ACM, New York, 138--141. Google ScholarDigital Library
- Riccobene, E., Scandurra, P., Rosti, A., and Bocchio, S. 2006a. A model-driven co-design flow for embedded systems. In Proceedings of the Forum on Specification and Design Languages.Google Scholar
- Riccobene, E., Scandurra, P., Rosti, A., and Bocchio, S. 2006b. A model-driven design environment for embedded systems. In Proceedings of the 43rd Annual Conference on Design Automation. ACM, New York, 915--918. Google ScholarDigital Library
- Riccobene, E., Scandurra, P., Rosti, A., and Bocchio, S. 2007a. A model-driven co-design flow for embedded systems. In Advances in Design and Specification Languages for Embedded Systems. Springer, Berlin, Germany.Google Scholar
- Riccobene, E., Scandurra, P., Rosti, A., and Bocchio, S. 2007b. Designing a unified process for embedded systems. In Proceedings of the 4th International Workshop on Model-based Methodologies for Pervasive and Embedded Software. IEEE, Los Alamitos, CA. Google ScholarDigital Library
- Selic, B. 2000. A generic framework for modeling resources with UML. Computer 33, 6, 64--69. Google ScholarDigital Library
- SPT. 2003. OMG, UML Profile for Schedulability, Performance, and Time, formal/03-09-01.Google Scholar
- SysML. 2007. OMG, SysML, formal/2007-09-01. http://www.omgsysml.org/.Google Scholar
- SystemC. 2006. SystemC Language Reference Manual. IEEE Std 1666.Google Scholar
- Thomas, F., Gerard, S., Delatour, J. and Terrier, F. 2007. Software real-time resource modeling. In Proceedings of the Forum on Specification and Design Languages.Google Scholar
- UML. 2008. OMG, the Unified Modeling Language (UML). http://www.uml.org.Google Scholar
- UML Profile for SWRadio. 2007. OMG, UML Profile for SWRadio. V1.0, formal/07-03-01.Google Scholar
- UML-SoC Workshops. 2008. UML for SoC Design Workshops. http://www.c-lab.de/uml-soc.Google Scholar
- USoC. 2006. OMG, UML Profile for SoC Specification, v1.0.1.Google Scholar
- Vardi, M. Y. 2007. Formal Techniques for SystemC Verification; Position Paper. In Proceedings of the 44th annual conference on Design automation. IEEE, Los Alamitos, CA. Google ScholarDigital Library
- Vincentelli, A. S. 2002. Defining platform-based design. EEDesign of EETimes.Google Scholar
- Zhu, Q., Oishi, R., Hasegawa, T., and Nakata, T. 2004. System-on-chip validation using UML and CWL. In Proceedings of the 2nd IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). IEEE, Los Alamitos, CA, 92--97. Google ScholarDigital Library
- Zimmerman, J. Bringmann, O., Gerlach, J., Schaefer, F., and Nageldinger, U. 2008. Holistic sytem modeling and refinement of intern-connected micro-electronic systems. In Proceedings of the Conference on Design, Automation, and Test in Europe. IEEE, Los Alamitos, CA.Google Scholar
Index Terms
- SystemC/C-based model-driven design for embedded systems
Recommendations
UML and model-driven development for SoC design
CODES+ISSS '06: Proceedings of the 4th international conference on Hardware/software codesign and system synthesisUML (Unified Modeling Language™) as an OMG standard has received wide acceptance in software engineering over the last years. As electronic systems design moved towards software engineering, there is emerging interest for UML within the hardware ...
A model-driven design environment for embedded systems
DAC '06: Proceedings of the 43rd annual Design Automation ConferenceThis paper presents a prototype environment for HW/SW co--design of embedded systems based on the Unified Modeling Language (UML) and SystemC. The environment supports a model-driven SoC design methodology which provides a graphical high-level ...
Integrating the SysML and the SystemC-UML profiles in a model-driven embedded system design flow
Modern embedded systems development, due to systems complexity and multifaceted nature, requires flexible high-level design techniques and notations. In this context, model-driven approaches are gaining popularity, both in industry as well as in academy,...
Comments