Representing mapping and scheduling decisions within dataflow graphs

Choosing the right programming model for multiprocessor System-on-Chip (MPSoC) platforms is a challenging task: in order to provide for automatic hardware/software synthesis in a model-based design flow, the system model should be architecture-independent on the one hand, but should also allow the back-annotation of architecture-dependent mapping and scheduling decisions on the other hand. Here, architecture-independent dataflow models are particularly suitable. In a dataflow model, concurrent processes (actors) communicate via packets transmitted over channels. However, the back-annotation process is difficult, and previous approaches are either restricted to static dataflow actors or static schedules. Also, the semantics of the underlying dataflow actors are often different from the semantics of the scheduling mechanism, which limits the compositionality of the dataflow model. In this paper, we propose a modeling approach which unifies the representation of dataflow actors and scheduling mechanisms, while also providing for both, dynamic dataflow actors and dynamic scheduling decisions. We describe how various scheduling schemes can be represented by our approach, and show the applicability of the proposed approach by means of synthetic dataflow graphs.

[1]  Christian Haubelt,et al.  Model-Based Representation of Schedules for Dataflow Graphs , 2013, MBMV.

[2]  Jürgen Teich,et al.  FunState —an internal design representation for codesign , 1999, ICCAD 1999.

[3]  Shuvra S. Bhattacharyya,et al.  Embedded Multiprocessors: Scheduling and Synchronization , 2000 .

[4]  Sandeep K. Shukla,et al.  Translating concurrent action oriented specifications to synchronous guarded actions , 2010, LCTES '10.

[5]  Shuvra S. Bhattacharyya,et al.  Functional DIF for Rapid Prototyping , 2008, 2008 The 19th IEEE/IFIP International Symposium on Rapid System Prototyping.

[6]  Shuvra S. Bhattacharyya,et al.  A Model-Based Schedule Representation for Heterogeneous Mapping of Dataflow Graphs , 2011, 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum.

[7]  Christian Haubelt,et al.  A rule-based static dataflow clustering algorithm for efficient embedded software synthesis , 2011, 2011 Design, Automation & Test in Europe.

[8]  Edward A. Lee,et al.  Dataflow process networks , 2001 .

[9]  Christian Haubelt,et al.  Task-accurate performance modeling in SystemC for real-time multi-processor architectures , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[10]  Shuvra S. Bhattacharyya,et al.  Cycle-Breaking Techniques for Scheduling Synchronous Dataflow Graphs , 2007 .

[11]  E.A. Lee,et al.  Synchronous data flow , 1987, Proceedings of the IEEE.

[12]  Sander Stuijk,et al.  A scenario-aware data flow model for combined long-run average and worst-case performance analysis , 2006, Fourth ACM and IEEE International Conference on Formal Methods and Models for Co-Design, 2006. MEMOCODE '06. Proceedings..

[13]  Martin Radetzki,et al.  A metamodel and semantics for transaction level modeling , 2011, FDL 2011 Proceedings.

[14]  Arvind,et al.  High-level synthesis: an essential ingredient for designing complex ASICs , 2004, ICCAD 2004.

[15]  Edward A. Lee,et al.  Hierarchical finite state machines with multiple concurrency models , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[16]  Ed F. Deprettere,et al.  Parameterized Looped Schedules for Compact Representation of Execution Sequences in DSP Hardware and Software Implementation , 2007, IEEE Transactions on Signal Processing.

[17]  Jean A. Peperstraete,et al.  Cycle-static dataflow , 1996, IEEE Trans. Signal Process..

[18]  Sander Stuijk,et al.  Modeling static-order schedules in synchronous dataflow graphs , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[19]  Christian Haubelt,et al.  A generalized static data flow clustering algorithm for mpsoc scheduling of multimedia applications , 2008, EMSOFT '08.