An efficient list scheduling algorithm for time placement problem

The partially reconfigurable FPGAs allows an overlap between the execution and the reconfiguration of tasks. The partial approach can be used to fit a large application into the FPGA device by partitioning the application over time. The executions being partitioned over time and the configurations of tasks are done so that the imposed constraints are satisfied. The main aim of this work consists in answering the question when will a task be mapped in the FPGA? A time placement algorithm based on the list scheduling technique is developed to solve efficiently the above question. We have just used the list scheduling algorithm because of its fast run time. Compared to the run time of other algorithms used in this filed like the spectral and ILP algorithms, the list scheduling algorithm remains a good temporal placement candidate, especially, for a several nodes graph. Also, a part of this paper is devoted for the study and the implementation of DCT task graph. This graph is the most computationally intensive part of the Color Layout Descriptor algorithm of a low-level visual descriptor of MPEG 7. The studied case shows that the use of the partial approach is very efficient in terms of latency of the whole application than the full one.

[1]  Marco Platzner,et al.  Fast online task placement on FPGAs: free space partitioning and 2D-hashing , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[2]  Giovanni De Micheli,et al.  Hardware-software cosynthesis for digital systems , 1993, IEEE Design & Test of Computers.

[3]  M. Abid,et al.  Time partitioning framework for partially reconfigurable systems , 2004, Proceedings. The 16th International Conference on Microelectronics, 2004. ICM 2004..

[4]  Ahmed Amine Jerraya,et al.  Methodology for design of embedded systems , 1997 .

[5]  Marco Platzner,et al.  Heuristics for Onine Scheduling Real-Time Tasks to Partially Reconfigurable Devices , 2003, FPL.

[6]  Camel Tanougast Méthodologie de partitionnement applicable aux systèmes sur puce à base de FPGA, pour l'implantation en reconfiguration dynamique d'algorithmes flot de données , 2001 .

[7]  Christophe Bobda,et al.  Synthesis of dataflow graphs for reconfigurable systems using temporal partitioning and temporal placement , 2003 .

[8]  Ranga Vemuri,et al.  An automated temporal partitioning and loop fission approach for FPGA based reconfigurable synthesis of DSP applications , 1999, Proceedings 1999 Design Automation Conference (Cat. No. 99CH36361).

[9]  B. Ouni,et al.  Synthesis and Time Partitioning for Reconfigurable Systems , 2004, Des. Autom. Embed. Syst..

[10]  Jürgen Teich,et al.  Task scheduling for heterogeneous reconfigurable computers , 2004, Proceedings. SBCCI 2004. 17th Symposium on Integrated Circuits and Systems Design (IEEE Cat. No.04TH8784).

[11]  Horácio C. Neto,et al.  An Enhanced Static-List Scheduling Algorithm for Temporal Partitioning onto RPUs , 1999, VLSI.

[12]  Majid Sarrafzadeh,et al.  Fast Template Placement for Reconfigurable Computing Systems , 2000, IEEE Des. Test Comput..

[13]  Jürgen Teich,et al.  A new approach for on-line placement on reconfigurable devices , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[14]  Jürgen Teich,et al.  Speeding up Online Placement for XILINX FPGAs by Reducing Configuration Overhead , 2003, VLSI-SOC.

[15]  Brad L. Hutchings,et al.  Design methodologies for partially reconfigured systems , 1995, Proceedings IEEE Symposium on FPGAs for Custom Computing Machines.

[16]  Huiqun Liu,et al.  Network flow based circuit partitioning for time-multiplexed FPGAs , 1998, ICCAD 1998.

[17]  Ranga Vemuri,et al.  Integrated Block-Processing and Design-Space Exploration in Temporal Partitioning for RTR Architectures , 1999, IPPS/SPDP Workshops.

[18]  Malgorzata Marek-Sadowska,et al.  Partitioning sequential circuits on dynamically reconfiguable FPGAs , 1998, FPGA '98.