Automatic run-time manager generation for reconfigurable MPSoC architectures

During the last few years, new technologies have made possible to fit a larger number of components on a single die, allowing to realize more complex and heterogeneous systems, generally called Multiprocessor Systems-on-Chip (MPSoC). Additionally, the introduction of partial reconfiguration in these systems has increased both their flexibility and performance. This feature allows the designer to switch the context of a specific circuit region without any interruption in the other components, but it has also increased the level of expertise needed for their design. In this paper we introduce a Run Time Manager (RTM) able to map multiple applications on the underlying architecture and execute them concurrently. In order to ensure the RTM portability on different designs, it has been structured so that it is independent from the architecture description. It is illustrated how (1) this RTM can be automatically generated starting from the source code of the input applications, (2) its modular implementation combined with the use of partial reconfiguration allows the user to explore different policies. Finally several tests have been performed to analyse the overhead introduced by such implementation and to demonstrate that the proposed RTM can be effectively used in real case studies.

[1]  Vittorio Zaccaria,et al.  Using multi-objective design space exploration to enable run-time resource management for reconfigurable architectures , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[2]  Carlos González,et al.  A Hardware Implementation of a Run-Time Scheduler for Reconfigurable Systems , 2011, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[3]  Jincheng Wu,et al.  Design and implementation of video image edge detection system based on FPGA , 2010, 2010 3rd International Congress on Image and Signal Processing.

[4]  Jürgen Becker,et al.  CAP-OS: Operating system for runtime scheduling, task mapping and resource management on reconfigurable multiprocessor architectures , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing, Workshops and Phd Forum (IPDPSW).

[5]  Luca Benini,et al.  Minimization of the reconfiguration latency for the mapping of applications on FPGA-based systems , 2009, CODES+ISSS '09.

[6]  Diederik Verkest,et al.  A Safari Through the MPSoC Run-Time Management Jungle , 2010, J. Signal Process. Syst..

[7]  Diederik Verkest,et al.  Run-Time Management of a MPSoC Containing FPGA Fabric Tiles , 2008, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[8]  Mitsuhisa Sato,et al.  OpenMP: parallel programming API for shared memory multiprocessors and on-chip multiprocessors , 2002, 15th International Symposium on System Synthesis, 2002..

[9]  Fabien Clermidy,et al.  An Introduction to Multi-Core System on Chip - Trends and Challenges , 2011, Multiprocessor System-on-Chip.

[10]  Milind Girkar,et al.  The hierarchical task graph as a universal intermediate representation , 2007, International Journal of Parallel Programming.

[11]  Quming Zhou,et al.  Tracking and Classifying Moving Objects from Video , 2001 .

[12]  Krisztián Flautner,et al.  High-Performance Multiprocessor System on Chip: Trends in Chip Architecture for the Mass Market , 2011, Multiprocessor System-on-Chip.

[13]  Jürgen Becker,et al.  High performance reconfigurable multi-processor-based computing on FPGAs , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing, Workshops and Phd Forum (IPDPSW).