SysteMoC: A Data-Flow Programming Language for Codesign

Falk J, Haubelt C, Teich J, Zebelein C (2017)

Publication Language: English

Publication Type: Book chapter / Article in edited volumes

Publication year: 2017

Publisher: Springer

Edited Volumes: Handbook of Hardware/Software Codesign

City/Town: Dordrecht, The Netherlands

Book Volume: 1

Pages Range: 59 - 97

ISBN: 978-94-017-7266-2


Computations in hardware/software systems are inherently performed concurrently.
Hence, modeling hardware/software systems requires notions of concurrency.
Data-flow models have been and are still successfully applied in the modeling of hardware/software systems.
In this chapter, we motivate and introduce the usage of data-flow models.
Moreover, we discuss the expressiveness and analyzability of different data-flow Models of Computation (MoCs).
Subsequently, we present SysteMoC, an approach supporting many data-flow MoCs based on the system description language SystemC.
Besides specifying data-flow models, SystemMoC also permits the automatic classification of each different part of an application modeled in SysteMoC into a least expressive but most analyzable MoC.
This classification is the key to further optimization in later design stages of hardware/software systems, such as exploration of design alternatives as well as automatic code generation and hardware synthesis.
Such optimization and refinement steps are employed as part of the extsc{SystemCoDesigner} design flow that uses SysteMoC as its input language.

Authors with CRIS profile

Related research project(s)

Involved external institutions

How to cite


Falk, J., Haubelt, C., Teich, J., & Zebelein, C. (2017). SysteMoC: A Data-Flow Programming Language for Codesign. In Ha S, Teich J (Eds.), Handbook of Hardware/Software Codesign. (pp. 59 - 97). Dordrecht, The Netherlands: Springer.


Falk, Joachim, et al. "SysteMoC: A Data-Flow Programming Language for Codesign." Handbook of Hardware/Software Codesign. Ed. Ha S, Teich J, Dordrecht, The Netherlands: Springer, 2017. 59 - 97.

BibTeX: Download