Explicit Control of Dataflow Graphs with MARTE/CCSL

Jean-Vivien Millo, Amine Oueslati, Emilien Kaufman, Frederic Mallet, Robert de Simone


Process Networks are a means to describe streaming embedded applications. They rely on explicit representation of task concurrency, pipeline and data-flow. Originally, Data-Flow Process Network (DFPN) representations are independent from any execution platform support model. Such independence is actually what allows looking next for adequate mappings. Mapping deals with scheduling and distribution of computation tasks onto processing resources, but also distribution of communications to interconnects and memory resources. This design approach requires a level of description of execution platforms that is both accurate and simple. Recent platforms are composed of repeated elements with global interconnection (GPU, MPPA). A parametric description could help achieving both requirements. Then, we argue that a model-driven engineering approach may allow to unfold and expand an original DFPN model, in our case a so-called Synchronous DataFlow graph (SDF) into a model such that: a) the original description is a quotient refolding of the expanded one, and b) the mapping to a platform model is a grouping of tasks according to their resource allocation. Then, given such unfolding, we consider how to express the allocation and the real-time constraints. We do this by capturing the entire system in CCSL (Clock Constraint Specification Language). CCSL allows to capture linear but also synchronous constraints.


  1. Amnell, T., Fersman, E., Mokrushin, L., Pettersson, P., and Yi, W. (2004). Times: A tool for schedulability analysis and code generation of real-time systems. In Formal Modeling and Analysis of Timed Systems, volume 2791 of Lecture Notes in Computer Science, pages 60-72. Springer Berlin Heidelberg.
  2. André, C. (2009). Syntax and Semantics of the Clock Constraint Specification Language (CCSL). Research Report RR-6925, INRIA.
  3. Bamakhrama, M. and Stefanov, T. (2011). Hard-realtime scheduling of data-dependent tasks in embedded streaming applications. In ACM Int. Conf. on Embedded software, pages 195-204. ACM.
  4. Benveniste, A., Caspi, P., Edwards, S., Halbwachs, N., Le Guernic, P., and de Simone, R. (2003). The synchronous languages 12 years later. Proceedings of the IEEE, 91(1):64-83.
  5. Bilsen, G., Engels, M., Lauwereins, R., and Peperstraete, J. (1995). Cyclo-static data flow. In Int. Conf. on Acoustics, Speech, and Signal Processing, ICASSP'95, volume 5, pages 3255-3258.
  6. Buck, J. T. (1993). Scheduling Dynamic Dataflow Graphs with Bounded Memory Using the Token Flow Model. PhD thesis, University of California, Berkeley, CA 94720.
  7. Commoner, F., Holt, A. W., Even, S., and Pnueli, A. (1971). Marked directed graph. Journal of Computer and System Sciences, 5:511-523.
  8. de Groote, R., H ölzenspies, P. K. F., Kuper, J., and Broersma, H. (2013). Back to basics: Homogeneous representations of multi-rate synchronous dataflow graphs. In MEMOCODE, pages 35-46. IEEE.
  9. Deantoni, J. and Mallet, F. (2012). TimeSquare: Treat your Models with Logical Time. In Carlo A. Furia, S. N., editor, TOOLS, volume 7304 of LNCS, pages 34-41. Springer.
  10. Goossens, K. and Hansson, A. (2010). The aethereal network on chip after ten years: Goals, evolution, lessons, and future. In Design Automation Conference (DAC'10), pages 306-311. ACM/IEEE.
  11. Grandpierre, T., Lavarenne, C., and Sorel, Y. (1999). Optimized rapid prototyping for real-time embedded heterogeneous multiprocessors. In Int. W. on Hardware/Software Co-Design, CODES'99, Rome, Italy.
  12. Kahn, G. (1974). The semantics of a simple language for parallel programming. In Inform. Process. 74: Proc. IFIP Congr. 74, pages 471-475.
  13. Kalray (2014). Mppa manycore. http://www.kalray.eu/ products/mppa-manycore.
  14. Karczmarek, M., Thies, W., and Amarasinghe, S. (2003). Phased scheduling of stream programs. ACM SIGPLAN Notices, 38(7):103-112.
  15. Karp, R. M., Miller, R. E., and Winograd, S. (1967). The organization of computations for uniform recurrence equations. J. ACM, 14(3):563-590.
  16. Lamport, L. (1974). The parallel execution of do loops. Commun. ACM, 17(2):83-93.
  17. Lee, E. A. and Messerschmitt, D. G. (1987a). Static scheduling of synchronous data flow programs for digital signal processing. IEEE transactions on computers, C-36(1):24-35.
  18. Lee, E. A. and Messerschmitt, D. G. (1987b). Synchronous data flow. Proceeding of the IEEE, 75(9):1235-1245.
  19. Mallet, F. and de Simone, R. (2015). Correctness issues on MARTE/CCSL constraints. Sci. Comput. Program., 106:78-92.
  20. Melpignano, D., Benini, L., Flamand, E., Jego, B., Lepley, T., Haugou, G., Clermidy, F., and Dutoit, D. (2012). Platform 2012, a many-core computing accelerator for embedded socs: performance evaluation of visual analytics applications. In DAC'12, pages 1137-1142.
  21. Milner, R. (1982). A Calculus of Communicating Systems. Springer-Verlag New York, Inc., Secaucus, NJ, USA.
  22. Petri, C. A. (1962). Kommunikation mit Automaten. PhD thesis, Bonn: Institut f ür Instrumentelle Mathematik, Schriften des IIM Nr. 2. Technical Report RADC-TR65-377, Vol.1, 1966, English translation.
  23. Sriram, S. and Bhattacharyya, S. S. (2012). Embedded multiprocessors: Scheduling and synchronization. CRC press.
  24. Stuijk, S. (2007). Predictable Mapping of Streaming Applications on Multiprocessors. PhD thesis, Faculty of Electrical Engineering, Eindhoven University of Technology, The Netherlands.
  25. Stuijk, S., Geilen, M., and Basten, T. (2006). Sdf3: Sdf for free. In ACSD, volume 6, pages 276-278.
  26. Sun, Y., Soulat, R., Lipari, G., Andr, ., and Fribourg, L. (2014). Parametric schedulability analysis of fixed priority real-time distributed systems. In FTSCS, volume 419 of Communications in Computer and Information Science, pages 212-228. Springer.
  27. Yu, H., Talpin, J.-P., Besnard, L., Gautier, T., Marchand, H., and Guernic, P. L. (2011). Polychronous controller synthesis from Marte CCSL timing specifications. In MEMOCODE, pages 21-30. IEEE.

Paper Citation

in Harvard Style

Millo J., Oueslati A., Kaufman E., Mallet F. and de Simone R. (2017). Explicit Control of Dataflow Graphs with MARTE/CCSL . In Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD, ISBN 978-989-758-210-3, pages 542-549. DOI: 10.5220/0006269505420549

in Bibtex Style

author={Jean-Vivien Millo and Amine Oueslati and Emilien Kaufman and Frederic Mallet and Robert de Simone},
title={Explicit Control of Dataflow Graphs with MARTE/CCSL},
booktitle={Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,},

in EndNote Style

JO - Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,
TI - Explicit Control of Dataflow Graphs with MARTE/CCSL
SN - 978-989-758-210-3
AU - Millo J.
AU - Oueslati A.
AU - Kaufman E.
AU - Mallet F.
AU - de Simone R.
PY - 2017
SP - 542
EP - 549
DO - 10.5220/0006269505420549