Version 2 (modified by ingo, 6 years ago) (diff)


Models of Computation (MoCs)

Plain svg version

A model of computation describes the semantics of a composition of concurrent processes. Each MoC defines

  1. the properties of a process in the particular MoC.
  2. how processes communicate with each other in the particular MoC.
  3. the mechanisms for concurrency in particular MoCs.

A MoC is an abstract representation and is not dependent on a particular programming language. This abstract representation can be used to reason about a system using formal mathematical analysis methods. A classical example is to derive a static schedule and an upper bound for internal buffers in the Synchronous Data Flow MoC.

At present there are ForSyDe libraries for the following MoCs:

  • Synchronous MoC
  • Untimed MoC / Synchronous Data Flow MoC
  • Discrete-Event MoC
  • Continuous Time MoC

Using these libraries it is possible to model heterogeneous embedded systems including software and digital and analog hardware.