DocumentCode
3084124
Title
Compiling SyncCharts to Synchronous C
Author
Traulsen, Claus ; Amende, Torsten ; Von Hanxleden, Reinhard
Author_Institution
Dept. of Comput. Sci., Christian-Albrechts-Univ. zu Kiel, Kiel, Germany
fYear
2011
fDate
14-18 March 2011
Firstpage
1
Lastpage
4
Abstract
SyncCharts are a synchronous Statechart variant to model reactive systems with a precise and deterministic semantics. The simulation and software synthesis for SyncCharts usually involve the compilation into Esterel, which is then further compiled into C code. This can produce efficient code, but has two principal drawbacks: 1) the arbitrary control flow that can be expressed with SyncChart transitions cannot be mapped directly to Esterel, and 2) it is very difficult to map the resulting C code back to the original SyncChart, which hampers traceability. This paper presents an alternative software synthesis approach for SyncCharts that compiles SyncCharts directly into Synchronous C (SC). The compilation preserves the structure of the original SyncChart, which is advantageous for validation and possibly certification. We present a static thread-scheduling scheme that reflects data dependencies and optimizes both the number of used threads as well as the maximal used priorities. This results in SC code with competitive speed and little memory requirements.
Keywords
flowcharting; multi-threading; processor scheduling; program compilers; synchronisation; C code; Esterel; SyncChart compiling; SyncChart transition; Synchronous C; arbitrary control flow; deterministic semantics; reactive systems; software synthesis; static thread-scheduling scheme; synchronous statechart variant; Computational modeling; Concurrent computing; Instruction sets; Optimization; Schedules; Semantics; Writing;
fLanguage
English
Publisher
ieee
Conference_Titel
Design, Automation & Test in Europe Conference & Exhibition (DATE), 2011
Conference_Location
Grenoble
ISSN
1530-1591
Print_ISBN
978-1-61284-208-0
Type
conf
DOI
10.1109/DATE.2011.5763284
Filename
5763284
Link To Document