Page History
Column | ||
---|---|---|
| ||
|
Column | ||||
---|---|---|---|---|
| ||||
Column | ||
---|---|---|
| ||
On the one hand this eases the compilation and makes it more robust because it reduces its complexity. On the other hand, using Extended SCCharts features, a modeler is able to abstract away complexity of his or her SCCharts model which increases robustness and readability of a model. This approach enables a simple yet efficient compilation strategy and aids verification and certification.
For our KIELER SCCharts implementation, you may also like to download an SCCharts Tutorial or the SCCharts Cheat Sheet.
Table of Contents |
---|
[1] Reinhard von Hanxleden, Björn Duderstadt, Christian Motika, Steven Smyth, Michael Mendler, Joaquín Aguado, Stephen Mercer, and Owen O’Brien. SCCharts: Sequentially Constructive Statecharts for Safety-Critical Applications. In Proc. ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI’14), Edinburgh, UK, June 2014.
...
[7] David Harel. Statecharts: A visual formalism for complex systems, Science of Computer Programming, 8(3):231-274, June 1987.
Downloads
Excerpt Include | ||||
---|---|---|---|---|
|
...
A core SCChart is composed of elements of a minimal set of constructs. Additional constructs and syntactical sugar (f.e. actions, suspend) are introduced in extended SCCharts. Every extended SCCharts can be transformed into a core SCChart.
Core SCChart | Extended SCCharts | Graphical comparison |
---|---|---|
| Core SCCharts +
| [click to enlarge] |
...
SCCharts can be modeled using our KIELER SCChrats editor and compiler (download). The modeling editor is a textual editor based on the itemis Xtext framework. The language used to model SCCharts textually is called SCT and documented here. A quick start guide introducing first steps from downloading over modeling to compiling SCCharts can be found here.
Project Status
Subproject/Extension | Progress | Released | ||
---|---|---|---|---|
SCCharts Editor (*.sct) | Implemented and tested | 0.9.0 | ||
SCG Editor | Implemented and tested | 0.9.0 | ||
SCL Editor | Implementation not yet finished | cancelled | ||
Extended 2 Core SCCharts | Implemented, not yet fully tested | 0.9.0 | ||
Core 2 Normalized SCCharts | Implemented, not yet fully tested (some known bugs) | 0.9.0 | ||
Normalized SCCharts 2 SCG | Implemented, not yet fully tested (some known bugs) | 0.9.0 | ||
SCG 2 Sequential SCG | Implemented and partly tested, straightforward scheduler for 0.9.0 release, enhanced scheduler planned for 0.10.0 release. | 0.9.0 | ||
SCG 2 C | Implemented by transformation via common S language (this can also be translated into Java -> SJL) | 0.9.0 | ||
Online Compiler and Command Line Tools | Implemented and partly tested | 0.10.0 | ||
Simulation | Implemented and partly tested | 0.10.0 | ||
Hardware Circuit Synthesis and Simulation | Implemented and partly tested | 0.11.0 |
...
Known Limitations
- Normalization may result in conditions where there actually is no conditions, this should optimized manually
- SCG Generation currently produces unoptimized hierarchy levels, e.g., fork nodes with just one successor node should be eliminated
- Scheduling of unconnected SCG exit nodes is currently not possible