New Dimensions in Design Space and Runtime Adaptivity for Multiprocessor Systems Through Dynamic and Partial Reconfiguration: The RAMPSoC Approach

  • Diana Göhringer
  • Jürgen Becker
Conference paper
Part of the Lecture Notes in Electrical Engineering book series (LNEE, volume 105)


Embedded high performance computing applications have two requirements which hardly can be achieved simultaneously: high performance and low energy consumption. One solution is the exploitation of the low-level parallelism of a field programmable gate array (FPGA). Due to the manifold parameters, such as the adaptation of the clock frequency in relation to the application requirements, a better energy efficiency compared to traditional processor-based platforms can be achieved. However, the FPGA programming is time consuming until today and requires a very good understanding of the underlying hardware. There exist C-to-FPGA tools, which leverage the traditional FPGA programming using HDL-languages. However, C-to-FPGA tools can only be used for submodules and accelerators, because they do not handle the communication with the environment, e.g., camera interfaces, PCI-interfaces, etc. Furthermore, the results of an automatic code transformation are until today suboptimal in comparison to a hand coded design. Due to this fact, the interfaces have to be either programmed by hand, which is very time consuming, or they have to be bought from IP suppliers. Furthermore, these C-to-FPGA tools often have some restrictions on the input C, C++ language. In this book chapter a novel holistic approach called RAMPSoC (Runtime Adaptive Multiprocessor System-on-Chip) is presented. RAMPSoC provides a meet-in-the middle solution by combining the hardware flexibility and low power consumption of FPGAs with the software flexibility and the high-level programming paradigms of multiprocessor systems-on-chip. The RAMPSoC approach consists of a flexible and energy efficient hardware architecture, consisting of heterogeneous processing elements connected over a heterogeneous Star-Wheels Network-on-Chip, a user-guided design methodology and a new operating system for runtime resource management. RAMPSoC provides new dimensions for design space and runtime adaptivity by exploiting the features of dynamic and partial reconfiguration in FPGA-based designs. Using an object recognition algorithm, it was shown that the RAMPSoC is more energy efficient than a standard CPU and an NVIDIA Tesla GPU.


Field Programmable Gate Array (FPGA) Dynamic and Partial Reconfiguration Multiprocessor System-on-Chip (MPSoC) Network-on-Chip (NoC) Operating System Design Methodology High Performance Computing 


  1. 1.
    Hartenstein R (2006) Why we need reconfigurable computing education. RC-Education workshop, Karlsruhe, GermanyGoogle Scholar
  2. 2.
    Lysaght P, Blodget B, Mason J, Young J, Bridgford B (2006) Invited paper: Enhanced architectures, design methodologies and CAD tools for dynamic reconfiguration of Xilinx FPGAs. In: Proceedings of FPL 2006, August 2006Google Scholar
  3. 3.
    PlanAhead Software Tutorial (2010) Overview of the partial reconfiguration flow, UG 743 (v 12.1). Available at:
  4. 4.
    Fingeroff M (2010) High level synthesis blue book. Xlibris CorporationGoogle Scholar
  5. 5.
    Pellerin D, Thibault S (2005) Practical FPGA programming in C. Prentice Hall Professional Technical ReferenceGoogle Scholar
  6. 6.
    Kamat RK, Shinde SA, Shelake VG (2009) Unleash the system on chip using FPGAs and Handel C. Springer, BerlinGoogle Scholar
  7. 7.
    Butenhof DR (1997) Programming with POSIX threads. Addison-Wesley, ReadingGoogle Scholar
  8. 8.
    OpenMP. Available at:
  9. 9.
    MPI (2009) A message-passing interface standard, version 2.2. Message passing interface forum, September 4. Available at:
  10. 10.
    NVIDIA 739 ® Tesla™, GPU Computing technical brief, Version 1.0.0, May 2007Google Scholar
  11. 11.
    NVIDIA CUDA™ (2009) Programming guide, Version 2.3.1, August Available at:
  12. 12.
    Göhringer D, Becker J (2010) FPGA-based runtime adaptive multiprocessor approach for embedded high performance computing applications. In: Proceedings of the IEEE Computer Society annual symposium on VLSI (ISVLSI 2010), Lixouri, Kefalonia, GreeceGoogle Scholar
  13. 13.
    Göhringer D, Liu B, Hübner M, Becker J (2009) Star-wheels network-on-chip featuring a self-adaptive mixed topology and a synergy of a circuit- and a packet-switching communication protocol. In: Proceedings of FPL 2009, September 2009, pp 320–325Google Scholar
  14. 14.
    Göhringer D, Hübner M, Nguepi Zeutebouo E, Becker J (2010) CAP-OS: Operating system for runtime scheduling, task mapping and resource management on reconfigurable multiprocessor architectures. In: Proceedings of RAW at the IPDPS 2010, April 2010Google Scholar
  15. 15.
    Hübner M, Göhringer D, Noguera J, Becker J (2010) Fast dynamic and partial reconfiguration data path with low hardware overhead on Xilinx FPGAs. In: Proceedings of RAW at the IPDPS 2010, April 2010Google Scholar
  16. 16.
    Göhringer D, Hübner M, Benz M, Becker J (2010) A design methodology for application partitioning and architecture development of reconfigurable multiprocessor systems-on-chip. In: Proceedings of FCCM 2010, May 2010Google Scholar
  17. 17.
    Göhringer D, Hübner M, Hugot-Derville L, Becker J (2010) Message passing interface support for the runtime adaptive multi-processor system-on-chip RAMPSoC. In: Proceedings of the 10th international conference on embedded computer systems: Architectures, modeling and simulation (SAMOS X), July 2010, Samos, GreeceGoogle Scholar
  18. 18.
    Development System Reference Guide, v9.2i, Chap. 10 XPower. Available at:
  19. 19.
    Howard J, Dighe S, Hoskote Y et al (2010) A 48-Core IA-32 message-passing processor with DVFS in 45 nm CMOS. In: Proceedings of IEEE international solid-state circuits conference (ISSCC 2010), February 2010, San FranciscoGoogle Scholar

Copyright information

© Springer Science+Business Media B.V. 2011

Authors and Affiliations

  1. 1.Fraunhofer IOSBEttlingenGermany
  2. 2.Karlsruhe Institute of Technology (KIT)KarlsruheGermany

Personalised recommendations