An integer linear programming model for mapping applications on hybrid systems

An integer linear programming (ILP) model for mapping applications on HW platforms that consist of muPs, ASICs and FPGAs is proposed. The introduced model solves the assignment and scheduling problems taking into consideration the time required to reconfigure the FPGAs. Specifically, the type of the tasks that are executed on the FPGAs is taken into account, so that tasks which perform the same function are scheduled consecutively. In that way the number of the FPGAs' reconfigurations is reduced and the performance is improved. Also, the configuration of the FPGAs is hidden because it happens, if it is possible, in the time intervals that the FPGAs are idle. Thus, the execution time of the task mapped on the FPGA does not increase due to reconfiguration time and performance is improved. Moreover, the memory requirements for storing the program and configuration codes of the tasks that are executed on muPs and FPGAs are taken into consideration. In addition, resource conflicts due to tasks/data transfers whose execution times are overlapped in time and are assigned on the same resource (PE/bus) are addressed. Finally, resource sharing is supported. The above features are validated by a series of experiments including a real-application example, the M-JPEG encoder. Also, the complexity of the model is studied in terms of the number of the generated constraints and variables and time required for solving it.

[1]  Armin Bender,et al.  Design of an optimal loosely coupled heterogeneous multiprocessor system , 1996, Proceedings ED&TC European Design and Test Conference.

[2]  Giovanni De Micheli,et al.  A co-synthesis approach to embedded system design automation , 1996, Des. Autom. Embed. Syst..

[3]  Gerard J. M. Smit,et al.  Mapping Wireless Communication Algorithms onto a Reconfigurable Architecture , 2004, The Journal of Supercomputing.

[4]  Yu-Chin Hsu,et al.  A formal approach to the scheduling problem in high level synthesis , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[5]  Edward A. Lee,et al.  The Extended Partitioning Problem: Hardware/Software Mapping, Scheduling, and Implementation-bin Selection , 1997, Des. Autom. Embed. Syst..

[6]  Dimitrios Soudris,et al.  A method for partitioning applications in hybrid reconfigurable architectures , 2005, Des. Autom. Embed. Syst..

[7]  Stamatis Vassiliadis,et al.  The Molen compiler for reconfigurable processors , 2007, TECS.

[8]  Peter Marwedel,et al.  An Algorithm for Hardware/Software Partitioning Using Mixed Integer Linear Programming , 1997, Des. Autom. Embed. Syst..

[9]  Majid Sarrafzadeh,et al.  Instruction generation for hybrid reconfigurable systems , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[10]  John Wawrzynek,et al.  The Garp Architecture and C Compiler , 2000, Computer.

[11]  Alok N. Choudhary,et al.  A system-level synthesis algorithm with guaranteed solution quality , 2000, DATE '00.

[12]  George Varghese,et al.  Design Methodology of a Low-Energy Reconfigurable Single-Chip DSP System , 2001, J. VLSI Signal Process..

[13]  Majid Sarrafzadeh,et al.  An optimal algorithm for minimizing run-time reconfiguration delay , 2004, TECS.