Journal of Signal Processing Systems

, Volume 80, Issue 1, pp 39–47 | Cite as

Modeling Resolution of Resources Contention in Synchronous Data Flow Graphs

  • Marco Lattuada
  • Fabrizio FerrandiEmail author


Synchronous Data Flow graphs are widely adopted in the designing of streaming applications, but were originally formulated to describe only how an application is partitioned and which data are exchanged among different tasks. Since Synchronous Data Flow graphs are often used to describe and evaluate complete design solutions, missing information (e.g., mapping, scheduling, etc.) has to be included in them by means of further actors and channels to obtain accurate evaluations. To address this issue preserving the simplicity of the representation, techniques that model data transfer delays by means of ad-hoc actors have been proposed, but they model independently each communication ignoring contentions. Moreover, they do not usually consider at all delays due to buffer contentions, potentially overestimating the throughput of a design solution. In this paper a technique to extend Synchronous Data Flow graphs by adding ad-hoc actors and channels to model resolution of resources contentions is proposed. The results show that the number of added actors and channels is limited but that they can significantly increase the Synchronous Data Flow graph accuracy.


Synchronous data flow graphs Data transfers Buffers Contention 


  1. 1.
    Lee, E.A., & Messerschmitt, D.G. (1987). Synchronous data flow. Proceedings of the IEEE, 75(9), 1235–1245.CrossRefGoogle Scholar
  2. 2.
    Damavandpeyma, M., Stuijk, S., Basten, T., Geilen, M., Corporaal, H. (2013). Schedule-Extended Synchronous Dataflow Graphs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 32(10), 1495–1508.CrossRefGoogle Scholar
  3. 3.
    Stuijk, S., Basten, T., Geilen, M.C.W., Corporaal, H. (2007). Multiprocessor resource allocation for throughput-constrained synchronous dataflow graphs. In Proceedings of the 44th annual design automation conference, DAC ’07 (pp 777–782). New York: ACM.Google Scholar
  4. 4.
    Holzenspies, P.K.F., Smit, G.J.M., Kuper, J. (2007). Mapping streaming applications on a reconfigurable MPSOCs platform at run-time. In International Symposium on System-on-chip (pp 1–4).Google Scholar
  5. 5.
    Sorel, Y. (1994). Massively parallel computing systems with real time constraints: The algorithm architecture adequation methodology. Massively parallel computing systems, 44(53), 2–6.Google Scholar
  6. 6.
    Pelcat, M., Piat, J., Wipliez, M., Aridhi, S., Nezan, J.-F. (2009). An open framework for rapid prototyping of signal processing applications. In EURASIP journal embedded systems.Google Scholar
  7. 7.
    Bambha, N.K., Kianzad, V., Khandelia, M., Bhattacharyya, S.S. (2002). Intermediate representations for design automation of multiprocessor dsp systems. Design Automation for Embedded Systems, 7(4), 307–323.CrossRefzbMATHGoogle Scholar
  8. 8.
    Lattuada, M., & Ferrandi, F. (2013). Modeling pipelined application with synchronous data flow graphs embedded computer systems: Architectures, modeling, and simulation (SAMOS XIII), 49(55), 15–18.Google Scholar
  9. 9.
    Bennour, I., Sebai, D., Jemai, A. (2010). Modeling sw to hw task migration for MPSOC performance analysis. In 5th international conference on design and technology of integrated systems in nanoscale era (DTIS) (pp. 1–6).Google Scholar
  10. 10.
    Zhu, J., Sander, I., Jantsch, A. (2010). Constrained global scheduling of streaming applications on MPSOCs. In 15th Asia and South Pacific design automation conference (ASP-DAC) (pp. 223–228).Google Scholar
  11. 11.
    Ghamarian, A.-H, Geilen, M.C.W, Stuijk, S., Basten, T., Moonen, A.J.M., Bekooij, M.J.G., Theelen, B.D., Mousavi, M.R. (2006). Throughput analysis of synchronous data flow graphs. Sixth International Conference on Application of Concurrency to System Design, ACSD 2006, 25(36), 28–30.Google Scholar
  12. 12.
    Lee, E. A., & Messerschmitt, D. G. (1987). Static scheduling of synchronous data flow programs for digital signal processing. IEEE Transactions on Computers, 36 (1), 24–35.CrossRefzbMATHGoogle Scholar
  13. 13.
    Stuijk, S., Geilen, M., Basten, T. (2006). s d f 3:Sdf for free. In Sixth international conference on application of concurrency to system design, ACSD 2006 (pp. 276–278).Google Scholar
  14. 14.
    Stuijk, S., Geilen, M., Basten, T. (2008). Throughput-buffering trade-off exploration for cyclo-static and synchronous dataflow graphs. IEEE Transaction on Computers, 57(10), 1331–1345.CrossRefMathSciNetGoogle Scholar
  15. 15.
    Hyunok, O., & Ha, S. (2002). Fractional rate dataflow model and efficient code synthesis for multimedia applications. SIGPLAN Notices, 37(7), 12–17.CrossRefGoogle Scholar
  16. 16.
    Bhattacharyya, S.S., Murthy, P.K., Lee, E.A. (1999). Synthesis of embedded software from synchronous dataflow specifications. Journal VLSI Signal Processes Systems, 21(2), 151–166.CrossRefGoogle Scholar
  17. 17.
    Wiggers, M.H., Bekooij, M.J.G., Smit, G.J.M. (2007). Efficient computation of buffer capacities for cyclo-static dataflow graphs. In Proceedings of the 44th annual design automation conference, DAC ’07 (pp. 658–663). New York: ACM.Google Scholar
  18. 18.
    Ritz, S., Willems, M., Meyr, H. (1995). Scheduling for optimum data memory compaction in block diagram oriented software synthesis. In International conference on acoustics, speech, and signal processing, ICASSP-95 (Vol. 4, pp. 2651–2654).Google Scholar

Copyright information

© Springer Science+Business Media New York 2014

Authors and Affiliations

  1. 1.Dipartimento di Elettronica, Informazione e BioingegneriaPolitecnico di MilanoMilanoItaly

Personalised recommendations