Shuffled Frog Leaping Algorithm for Hardware/Software Partitioning

Reconfigurable system on chip is well known for its flexibility for high performance embedded systems. The hardware/software (HW/SW) partitioning is the most important phase during the design of reconfigurable system on chip. A great many different algorithms have been adopted for solving the hardware/software partitioning problem. Shuffled Frog Leaping Algorithm (SFLA) is popular for its simple concepts, little parameter adjustment, high calculation speed, strong global search optimization capability and easy execution. In this paper, we apply the SFLA algorithm to solving hardware/software partitioning problem on reconfigurable system on chip with coarsegrained. The experimental results show that the SFLA algorithm can reduce the time cost by 45.54% on average with three different area constrain, compared with greedy algorithm. The time cost of SFLA algorithm are also reduced by 23.57% and 9.99% on average with simulated annealing algorithm (SA) and combined algorithm with greedy and simulated annealing algorithm (GSA). When area constrain is a half of area cost which all tasks are implemented by hardware will be taken, SFLA algorithm can reduce the time cost by 51.30%, 21.04% and 11.61% on average, compared with that of Greedy algorithm, SA, and GSA, respectively.

[1]  Petru Eles,et al.  System Level Hardware/Software Partitioning Based on Simulated Annealing and Tabu Search , 1997, Des. Autom. Embed. Syst..

[2]  Wu Jigang,et al.  Efficient heuristic and tabu search for hardware/software partitioning , 2013, The Journal of Supercomputing.

[3]  Abhijit Chakrabarti,et al.  Modified shuffled frog leaping algorithm with genetic algorithm crossover for solving economic load dispatch problem with valve-point effect , 2013, Appl. Soft Comput..

[4]  Eric Monmasson,et al.  Optimal hardware/software partitioning of a system on chip FPGA-based sensorless AC drive current controller , 2013, Math. Comput. Simul..

[5]  Wayne H. Wolf,et al.  TGFF: task graphs for free , 1998, Proceedings of the Sixth International Workshop on Hardware/Software Codesign. (CODES/CASHE'98).

[6]  Wu Jigang,et al.  Efficient Algorithm for Hardware/Software Partitioning and Scheduling on MPSoC , 2013, J. Comput..

[7]  Zoltán Ádám Mann,et al.  Finding optimal hardware/software partitions , 2007, Formal Methods Syst. Des..

[8]  Mostafa Sedighizadeh,et al.  Optimal Placement and Sizing of DG in Radial Distribution Networks Using SFLA , 2012 .

[9]  Shengyao Wang,et al.  An effective shuffled frog-leaping algorithm for hybrid flow-shop scheduling with multiprocessor tasks , 2013 .

[10]  Chen Yang,et al.  Modified Shuffled Frog Leaping Algorithm for Simulation Capability Scheduling Problem , 2013, AsiaSim.

[11]  Zoltán Ádám Mann,et al.  Algorithmic aspects of hardware/software partitioning , 2005, TODE.

[12]  Ivica Crnkovic,et al.  Modelling for Hardware and Software Partitioning Based on Multiple Properties , 2013, 2013 39th Euromicro Conference on Software Engineering and Advanced Applications.

[13]  V. Arunachalam,et al.  Hardware/Software partitioning algorithm for embedded systems with repeated functionalities , 2008, TENCON 2008 - 2008 IEEE Region 10 Conference.

[14]  Yang Liu,et al.  Hardware Software Partitioning Using Immune Algorithm Based on Pareto , 2009, 2009 International Conference on Artificial Intelligence and Computational Intelligence.

[15]  Jan Madsen,et al.  Hardware resource allocation for hardware/software partitioning in the LYCOS system , 1998, Proceedings Design, Automation and Test in Europe.

[16]  Peter Marwedel,et al.  Hardware/software partitioning using integer programming , 1996, Proceedings ED&TC European Design and Test Conference.

[17]  Min-Rong Chen,et al.  Improved Shuffled Frog Leaping Algorithm and its multi-phase model for multi-depot vehicle routing problem , 2014, Expert Syst. Appl..

[18]  Roberto Sepúlveda Lima,et al.  An Application of Fuzzy Logic for Hardware/Software Partitioning in Embedded Systems , 2013 .

[19]  Jie Ma,et al.  Study on Hardware Software partitioning using Immune Algorithm and its Convergence Property , 2009, 2009 IEEE International Conference on Intelligent Computing and Intelligent Systems.

[20]  Dianhui Wang,et al.  Hardware-software partitioning of real-time operating systems using Hopfield neural networks , 2006, Neurocomputing.

[21]  Li Wang,et al.  Power Efficiency for Hardware/Software Partitioning with Time and Area Constraints on MPSoC , 2013, International Journal of Parallel Programming.

[22]  M. B. Abdelhalim,et al.  Reliable pre-scheduling delay estimation for hardware/software partitioning , 2013, 2013 IEEE 56th International Midwest Symposium on Circuits and Systems (MWSCAS).

[23]  Tao Yang,et al.  List Scheduling With and Without Communication Delays , 1993, Parallel Comput..

[24]  Pradeep Adhipathi,et al.  Model based approach to Hardware/ Software Partitioning of SOC Designs , 2003 .

[25]  Javier Resano,et al.  A Hardware/Software Partitioning and Scheduling Approach for Embedded Systems with Low-Power and High Performance Requirements , 2003, PATMOS.

[26]  Donald E. Grierson,et al.  Comparison among five evolutionary-based optimization algorithms , 2005, Adv. Eng. Informatics.

[27]  Lu Zhao,et al.  A 0-1 Hardware/Software Partitioning Algorithm over IP cores , 2006, International Conference on Autonomic and Autonomous Systems (ICAS'06).

[28]  Mehdi Kamal,et al.  HW/SW partitioning using discrete particle swarm , 2007, GLSVLSI '07.

[29]  M. Horng,et al.  Multilevel image threshold selection based on the shuffled frog-leaping algorithm , 2013 .

[30]  M.B. Abdelhalim,et al.  Constrained and Unconstrained Hardware-Software Partitioning using Particle Swarm Optimization Technique , 2007, IESS.

[31]  Muzaffar Eusuff,et al.  Shuffled frog-leaping algorithm: a memetic meta-heuristic for discrete optimization , 2006 .