A Dataflow Inspired Programming Paradigm for Coarse-Grained Reconfigurable Arrays

  • A. Niedermeier
  • Jan Kuper
  • Gerard J. M. Smit
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8405)


In this paper, we present a new approach towards programming coarse-grained reconfigurable arrays (CGRAs) in an intuitive, dataflow inspired way. Based on the observation that available CGRAs are usually programmed using C, which lacks proper support for instruction-level parallelism, we instead started from a dataflow perspective combined with a language that inherently supports parallel structures. Our programming paradigm decouples the local functionality of a core from the global flow of data, i.e. the kernels from the routing. We will describe the ideas of our programming paradigm and also the language and compiler itself. Our complete system, including the CGRA, the programming language and the compiler, was developed using Haskell, which leads to a complete, sound system. We finish the paper with the implementation of a number of algorithms using our system.


State Machine Programming Paradigm Local View High Order Function Abstract Syntax Tree 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Singh, H., Lee, M.-H., Lu, G., Kurdahi, F.J., Bagherzadeh, N., Chaves Filho, E.M.: MorphoSys: an integrated reconfigurable system for data-parallel and computation-intensive applications. IEEE Transactions on Computers 49(5), 465–481 (2000)CrossRefGoogle Scholar
  2. 2.
    Baumgarte, V., Ehlers, G., May, F., Nückel, A., Vorbach, M., Weinhardt, M.: Pact xpp - a self-reconfigurable data processing architecture. The Journal of Supercomputing 26(2), 167–184 (2003)CrossRefzbMATHGoogle Scholar
  3. 3.
    Mei, B., Vernalde, S., Verkest, D., Man, H.D., Lauwereins, R.: ADRES: an architecture with tightly coupled VLIW processor and coarse-grained reconfigurable matrix. In: Cheung, P.Y.K., Constantinides, G.A. (eds.) FPL 2003. LNCS, vol. 2778, pp. 61–70. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  4. 4.
    Liang, C., Huang, X.: SmartCell: an energy efficient coarse-grained reconfigurable architecture for stream-based applications. EURASIP Journal on Embedded Systems 2009(1), 518–659 (2009) 00012Google Scholar
  5. 5.
    Hartenstein, R.: A decade of reconfigurable computing: a visionary retrospective. In: Proceedings of the Conference on Design, Automation and Test in Europe, DATE 2001, pp. 642–649. IEEE Press, Piscataway (2001)CrossRefGoogle Scholar
  6. 6.
    Tehre, V., Kshirsagar, R.: Survey on coarse grained reconfigurable architectures. International Journal of Computer Applications 48(16), 1–7 (2012)CrossRefGoogle Scholar
  7. 7.
    Davis, A., Keller, R.: Data flow program graphs. Computer 15(2), 26–41 (1982) 00374CrossRefGoogle Scholar
  8. 8.
    Niedermeier, A., Kuper, J., Smit, G.: Dataflow-based reconfigurable architecture for streaming applications. In: 2012 International Symposium on System on Chip (SoC), pp. 1–4. IEEE (2012)Google Scholar
  9. 9.
    Gajski, D., Padua, D., Kuck, D., Kuhn, R.H.: A second opinion on data flow machines and languages. Computer 15(2), 58–69 (1982) 00232CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • A. Niedermeier
    • 1
  • Jan Kuper
    • 1
  • Gerard J. M. Smit
    • 1
  1. 1.Computer Architecture for Embedded Systems Group, Department of Electrical Engineering, Mathematics and Computer ScienceUniversity of TwenteThe Netherlands

Personalised recommendations