Abstract
The Single-Pass Language-Driven Incremental Compilation (slic) strategy uses a series of model-to-model (M2M) transformations to compile a model or program to a specified target. Tool developer and modeler can inspect the result of each transformation step, using a familiar, graphical syntax of the successively transformed model, which is made possible by harnessing automatic layout. Previous work (presented at ISoLA’14) introduced the basics of the slic approach and illustrated it with a compiler that translated SCCharts, a synchronous, deterministic statechart language developed for safety-critical systems, to software. The compiler is implemented in the Kiel Integrated Environment for Layout Eclipse Rich Client (KIELER), an open-source development framework based on Eclipse.
This paper proposes two extensions to slic. First, we extend the M2M transformation mechanism with a tracing capability that keeps track of model elements during transformations. Second, we make use of the tracing capability for an interactive simulation, where we not only observe a model’s input/output behavior during execution, but can inspect the run-time behavior of each model component, at any transformation stage. We illustrate these concepts by new transformations in the KIELER SCCharts compiler, which allow to synthesize hardware circuits, and a simulator that executes an intermediate-level software model and visualizes the simulation at the high-level model as well as the low-level circuit.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
André, C.: Semantics of SyncCharts. Technical Report ISRN I3S/RR-2003-24-FR, I3S Laboratory, Sophia-Antipolis, France April 2003
Berry, G.: Esterel on hardware. Philos. Trans. R. Soc. Lond. 339, 87–104 (1992)
Berry, G.: The foundations of Esterel. In: Plotkin, G., Stirling, C., Tofte, M. (eds.) Proof, Language, and Interaction: Essays in Honour of Robin Milner, pp. 425–454. MIT Press, Cambridge (2000)
Drusinsky, D., Harel, D.: Using Statecharts for hardware description and synthesis. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 8(7), 798–807 (1989)
Edwards, S.A.: The challenges of hardware synthesis from c-like languages. In: Proceedings of the Conference on Design, Automation and Testin Europe, vol. 1, DATE 2005, pp. 66–67, Washington, DC, USA. IEEE Computer Society (2005)
Fuhrmann, H., Hanxleden, R.: On the pragmatics of model-based design. In: Choppy, C., Sokolsky, O. (eds.) Monterey Workshop 2008. LNCS, vol. 6028, pp. 116–140. Springer, Heidelberg (2010). doi:10.1007/978-3-642-12566-9_7
Grundy, J.C., Hosking, J., Li, K.N., Ali, N.M., Huh, J., Li, R.L.: Generating domain-specific visual language tools from abstract visual specifications. IEEE Trans. Softw. Eng. 39(4), 487–515 (2013)
Harel, D.: Statecharts: A visual formalism for complex systems. Sci. Comput. Program. 8(3), 231–274 (1987)
Johannsen, G.: Hardwaresynthese aus SCCharts. Master thesis, Kiel University, Department of Computer Science. http://rtsys.informatik.uni-kiel.de/biblio/downloads/theses/gjo-mt.pdf
Lopes, D., Hammoudi, S., Bézivin, J., Jouault, F.: Mapping specification in MDA: from theory to practice. In: Konstantas, D., Bourrières, J.-P., Léonard, M., Boudjlida, N. (eds). Interoperability of Enterprise Software and Applications - INTEROP-ESA, pp. 253–264. Springer, New York (2006)
Motika, C., Fuhrmann, H., von Hanxleden, R.: Semantics and execution of domain specific models. In: 2nd Workshop Methodische Entwicklung von Modellierungswerkzeugen (MEMWe 2010) INFORMATIK 2010, GI-Edition - Lecture Notes in Informatics (LNI), pp. 891–896, Leipzig, Germany, September 2010. Bonner Köllen Verlag (2010)
Motika, C., Smyth, S., Hanxleden, R.: Compiling SCCharts — a case-study on interactive model-based compilation. In: Margaria, T., Steffen, B. (eds.) ISoLA 2014. LNCS, vol. 8802, pp. 461–480. Springer, Heidelberg (2014). doi:10.1007/978-3-662-45234-9_32
Naujokat, S., Traonouez, L.-M., Isberner, M., Steffen, B., Legay, A.: Leveraging applications of formal methods, verification and validation. In: Technologies for Mastering Change: 6th International Symposium, ISoLA 2014, Imperial, Corfu, Greece, 8–11 October 2014, Proceedings, Part I, chapter Domain-Specific Code Generator Modeling: A Case Study for Multi-faceted Concurrent Systems, pp. 481–498. Springer, Heidelberg (2014)
Rathlev, K., Smyth, S., Motika, C., von Hanxleden, R., Mendler, M.: SCEst: sequentially constructive Esterel. In: Proceedings of the 13th ACM-IEEE International Conference on Formal Methods and Models for System Design, MEMOCODE 2015, Austin, TX, USA, September 2015
Rosen, B.K., Wegman, M.N., Zadeck, F.K.: Global value numbers and redundant computations. In: Proceedings of the 15th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 1988, pp. 12–27. ACM, New York (1988)
Rybicki, F.: Interactive incremental hardware synthesis for SCCharts. Bachelor thesis, Kiel University, Department of Computer Science. http://rtsys.informatik.uni-kiel.de/~biblio/downloads/theses/fry-bt.pdf
Schneider, C., Spönemann, M., von Hanxleden, R.: Just model! - Putting automatic synthesis of node-link-diagrams into practice. In: Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing, VL/HCC 2013, San Jose, CA, USA, pp. 75–82, 15–19 September 2013
Smyth, S., Motika, C., von Hanxleden, R.: A data-flow approach for compiling the sequentially constructive language (SCL). In: 18. Kolloquium Programmiersprachen und Grundlagen der Programmierung (KPS 2015), Pörtschach, Austria, 5–7 October 2015
Steffen, B.: Unifying models. In: Reischuk, R., Morvan, M. (eds.) STACS 1997. LNCS, vol. 1200, pp. 1–20. Springer, Heidelberg (1997). doi:10.1007/BFb0023444
von Hanxleden, R., Duderstadt, B., Motika, C., Smyth, S., Mendler, M., Aguado, J., Mercer, S., O’Brien, O.: SCCharts: Sequentially Constructive Statecharts for safety-critical applications. Technical Report 1311, Christian-Albrechts-Universität zu Kiel, Department of Computer Science, ISSN 2192–6247, December 2013
von Hanxleden, R., Duderstadt, B., Motika, C., Smyth, S., Mendler, M., Aguado, J., Mercer, S., O’Brien, O.: SCCharts: Sequentially Constructive Statecharts for safety-critical applications. In: Proceedings of ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2014, Edinburgh, UK, June 2014. ACM (2014)
von Hanxleden, R., Mendler, M., Aguado, J., Duderstadt, B., Fuhrmann, I., Motika, C., Mercer, S., O’Brien, O., Roop, P.: Sequentially Constructive Concurrency–a conservative extension of the synchronous model of computation. ACM Trans. Embedded Comput. Syst. 13(4s), 144:1–144:26 (2014). Special Issue on Applications of Concurrency to System Design
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing AG
About this paper
Cite this paper
Rybicki, F., Smyth, S., Motika, C., Schulz-Rosengarten, A., von Hanxleden, R. (2016). Interactive Model-Based Compilation Continued – Incremental Hardware Synthesis for SCCharts. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation: Discussion, Dissemination, Applications. ISoLA 2016. Lecture Notes in Computer Science(), vol 9953. Springer, Cham. https://doi.org/10.1007/978-3-319-47169-3_12
Download citation
DOI: https://doi.org/10.1007/978-3-319-47169-3_12
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-47168-6
Online ISBN: 978-3-319-47169-3
eBook Packages: Computer ScienceComputer Science (R0)