SysteMoC - Representing models of computation in SystemC
Abstract
Due to rising design complexity it is necessary to increase
the level of abstraction at which systems are designed.
On the other hand, modern embedded system design is still based on
design languages which allow unstructured communication.
The specification is mostly mapped
onto a set of interacting tasks and hardware modules, which
interact by the use of shared variables and various ways of
message passing. Even worse, nearly all design languages are Turing
complete making analysis in general impossible.
However, by constraining the type of communication
used between tasks and the communication behavior of the tasks,
expressiveness can be traded for analyzability.
The aim of this project is the definition of a SystemC coding subset which
allows extraction of the communication behavior of each actor
in the design. It provides an actor orient design library on top of SystemC
with a strictly defined coding subset for expressing the communication behavior
of actors.
Designflow
The input for our designflow is an executable specification encoded in SysteMoC. In this
executable specification the analytic models of the application, e.g., SDF or CSDF,
and the functionality of the application are combined. This allows the extraction of the analytic model
from the executable specification for usage in our design space exploration tool
SystemCoDesigner and guarantees that functionality and analytic model
will not diverge.