A Framework for Mapping Dynamic Virtual Kernels onto Heterogeneous Reconfigurable Platforms

Field Programmable Gate Arrays (FPGAs) promise a low power flexible alternative for today's market heterogeneous systems. In order to be widely accepted, novel solutions and approaches are required for fast and flexible application implementation. In this paper we propose a methodology, as well as the supporting toolflow targeting to provide fast implementation of multiple applications onto heterogeneous FPGAs. For this purpose we introduce the concept of dynamic virtual kernels. Experimental results prove the efficiency of the introduced solution, as we achieve application's mapping 30× faster on average compared to a state-of-art approach, with negligible performance degradation. Additionally, we enable the dynamic mapping of multiple applications onto a single FPGA with only a small penalty of 4.7% in the maximum operation frequency of those applications compared with our reference solution.

[1]  Ulrich Rückert,et al.  REPLICA: a bitstream manipulation filter for module relocation in partial reconfigurable systems , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[2]  Gustavo Ribeiro Alves,et al.  Run-time management of logic resources on reconfigurable systems , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[3]  Harry Sidiropoulos,et al.  On Supporting Efficient Partial Reconfiguration with Just-In-Time Compilation , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum.

[4]  Dimitrios Soudris,et al.  A Novel Allocation Methodology for Partial and Dynamic Bitstream Generation for FPGA Architectures , 2010, J. Circuits Syst. Comput..

[5]  Zhiyuan Li,et al.  Configuration relocation and defragmentation for run-time reconfigurable computing , 2002, IEEE Trans. Very Large Scale Integr. Syst..

[6]  Jürgen Becker,et al.  JITPR: A framework for supporting fast application's implementation onto FPGAs , 2013, TRETS.

[7]  E. Panainte,et al.  FPGA-area Allocation for Partial Run-Time Reconfiguration , 2005 .

[8]  Vaughn Betz,et al.  Efficient and Deterministic Parallel Placement for FPGAs , 2011, TODE.

[9]  Ranga Vemuri,et al.  An efficient algorithm for finding empty space for online FPGA placement , 2004, Proceedings. 41st Design Automation Conference, 2004..

[10]  Jürgen Becker,et al.  A Heterogeneous Multicore System on Chip with Run-Time Reconfigurable Virtual FPGA Architecture , 2011, 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum.

[11]  Tom Feist,et al.  Vivado Design Suite , 2012 .

[12]  Jianwen Zhu,et al.  Towards scalable placement for FPGAs , 2010, FPGA '10.

[13]  Vaughn Betz,et al.  Architecture and CAD for Deep-Submicron FPGAS , 1999, The Springer International Series in Engineering and Computer Science.

[14]  Kenneth B. Kent,et al.  The VTR project: architecture and CAD for FPGAs from verilog to routing , 2012, FPGA '12.

[15]  Frank Vahid,et al.  Warp Processing: Dynamic Translation of Binaries to FPGA Circuits , 2008, Computer.

[16]  Marcel Gort,et al.  Analytical placement for heterogeneous FPGAs , 2012, 22nd International Conference on Field Programmable Logic and Applications (FPL).