Hybrid algorithms for hardware/software partitioning and scheduling on reconfigurable devices

Abstract Hardware/software (HW/SW) partitioning and scheduling are essential to embedded systems. In this paper, a hybrid algorithm derived from Tabu Search (TS) and Simulated Annealing (SA) is proposed for solving the HW/SW partitioning problem. The annealing procedure of SA is employed to accelerate the updating of Tabu tables for task scheduling, and the virtual hardware resource is also set to implement the customized TS. The Earliest-Deadline-First (EDF) strategy is introduced to describe the reconfiguration of FPGA. Moreover, an algorithm combining the Breadth-First-Search (BFS) with Depth-First-Search (DFS) is proposed for HW/SW task scheduling to fit the features of reconfigurable systems. Experimental results show that the improvement over the latest efficient combinatorial algorithm is up to 50%. The proposed virtual hardware expanding technique makes the performance increase up to 97.51% on random graphs. The improvement on task scheduling is by 50% in comparison to popular algorithms cited in this paper.

[1]  Jyotsna Sengupta,et al.  Comparative Analysis of Simulated Annealingand Tabu Search Channel Allocation Algorithms , 2009 .

[2]  Anne Elisabeth Haxthausen,et al.  LYCOS: the Lyngby Co-Synthesis System , 1997, Des. Autom. Embed. Syst..

[3]  Shuo-Yan Chou,et al.  Solving the truck and trailer routing problem based on a simulated annealing heuristic , 2009, Comput. Oper. Res..

[4]  Piotr Jedrzejowicz,et al.  Application of agent-based simulated annealing and tabu search procedures to solving the data reduction problem , 2011, Int. J. Appl. Math. Comput. Sci..

[5]  Shokri Z. Selim,et al.  Integrating genetic algorithms, tabu search, and simulated annealing for the unit commitment problem , 1999 .

[6]  Fred W. Glover,et al.  Tabu Search - Part I , 1989, INFORMS J. Comput..

[7]  Ranga Vemuri,et al.  Hardware-software partitioning and pipelined scheduling of transformative applications , 2002, IEEE Trans. Very Large Scale Integr. Syst..

[8]  Jakob Axelsson Architecture synthesis and partitioning of real-time systems: a comparison of three heuristic search strategies , 1997, Proceedings of 5th International Workshop on Hardware/Software Co Design. Codes/CASHE '97.

[9]  Jacques A. Ferland,et al.  Improving simulated annealing with variable neighborhood search to solve the resource-constrained scheduling problem , 2007, J. Sched..

[10]  M. N. Shanmukha Swamy,et al.  Simulated Annealing and Tabu Search Algorithms for Multiway Graph Partition , 1992, J. Circuits Syst. Comput..

[11]  Daniel Kroening,et al.  Formal verification of SystemC by automatic hardware/software partitioning , 2005, Proceedings. Second ACM and IEEE International Conference on Formal Methods and Models for Co-Design, 2005. MEMOCODE '05..

[12]  Jan A. Persson,et al.  Train Traffic Deviation Handling Using Tabu Search and Simulated Annealing , 2005, Proceedings of the 38th Annual Hawaii International Conference on System Sciences.

[13]  Fred Glover,et al.  Tabu Search - Part II , 1989, INFORMS J. Comput..

[14]  Orhan Türkbey,et al.  A simulated annealing heuristic for the dynamic layout problem with budget constraint , 2010, Comput. Ind. Eng..

[15]  G. Rand Sequencing and Scheduling: An Introduction to the Mathematics of the Job-Shop , 1982 .

[16]  Z. Mann Optimization problems in system-level synthesis∗ , 2012 .

[17]  Manoj Kumar Tiwari,et al.  Hybrid tabu-simulated annealing based approach to solve multi-constraint product mix decision problem , 2005, Expert Syst. Appl..

[18]  Wu Jigang,et al.  Algorithmic aspects for functional partitioning and scheduling in hardware/software co-design , 2008, Des. Autom. Embed. Syst..

[19]  Poonam Garg,et al.  GENETIC ALGORITHMS , TABU SEARCH AND SIMULATED ANNEALING : A COMPARISON BETWEEN THREE APPROACHES FOR THE CRYPTANALYSIS OF TRANSPOSITION CIPHER , 2009 .

[20]  Dan Boneh,et al.  On genetic algorithms , 1995, COLT '95.

[21]  Roberto Cordone,et al.  Partitioning and Scheduling of Task Graphs on Partially Dynamically Reconfigurable FPGAs , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[22]  Theerayod Wiangtong,et al.  Comparing Three Heuristic Search Methods for Functional Partitioning in Hardware–Software Codesign , 2002, Des. Autom. Embed. Syst..

[23]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[24]  S. Zolfaghari,et al.  Jointly solving the group scheduling and machining speed selection problems: A hybrid tabu search and simulated annealing approach , 1999 .

[25]  Nicos Christofides,et al.  Capacitated clustering problems by hybrid simulated annealing and tabu search , 1994 .

[26]  Lenwood S. Heath,et al.  An experimental evaluation of local search heuristics for graph partitioning , 1998, Computing.

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

[28]  Krithi Ramamritham,et al.  Tutorial on hard real-time systems , 1989 .