Compiler-driven FPGA-area allocation for reconfigurable computing

In this paper, we propose two FPGA-area allocation algorithms based on profiling results for reducing the impact on performance of dynamic reconfiguration overheads. The problem of FPGA-area allocation is presented as a 0-1 integer linear programming problem and efficient solvers are incorporated for finding the optimal solutions. Additionally, we discuss the FPGA-area allocation problem in two scenarios. In the first scenario, all hardware operations are allocated on the FPGA while in the second scenario, any hardware operation can be switched to software execution in order to provide an overall performance improvement. We evaluate our proposed algorithms using the MPEG2 and MJPEG encoder multimedia benchmarks and the hardware implementations for SAD, DCT, IDCT, quantization and VLC tasks. We show that a significant performance improvement (up to 61 %for MPEG2 and 94 % for MJPEG) is to be achieved when the proposed algorithms are used, while the reconfiguration overhead is reduced by at least 36 % for MJPEG

[1]  Michael Winston Dales,et al.  Managing a reconfigurable processor in a general purpose workstation environment , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[2]  David A. Kearney,et al.  Efficient Allocation of FPGA Area to Multiple Users in an Operating System for Reconfigurable Computing , 2002 .

[3]  Stamatis Vassiliadis,et al.  The MOLEN polymorphic processor , 2004, IEEE Transactions on Computers.

[4]  Marco Platzner,et al.  Online scheduling for block-partitioned reconfigurable devices , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[5]  Fadi J. Kurdahi,et al.  Kernel scheduling in reconfigurable computing , 1999, DATE '99.

[6]  P. Barth A Davis-Putnam based enumeration algorithm for linear pseudo-Boolean optimization , 1995 .

[7]  K. Bertels,et al.  Instruction scheduling for dynamic hardware configurations [M-JPEG encoder case study] , 2005, Design, Automation and Test in Europe.

[8]  Jürgen Teich,et al.  Optimal FPGA module placement with temporal precedence constraints , 2001, Proceedings Design, Automation and Test in Europe. Conference and Exhibition 2001.

[9]  Fredrik Larsson,et al.  Simics: A Full System Simulation Platform , 2002, Computer.