Algorithmic aspects for functional partitioning and scheduling in hardware/software co-design

被引:30
作者
Wu Jigang [1 ]
Srikanthan, Thambipillai [1 ]
Jiao, Tao [1 ]
机构
[1] Nanyang Technol Univ, Ctr High Performance Embedded Syst, Singapore 639798, Singapore
关键词
Partitioning; Scheduling; Task graph; Heuristic algorithm; Co-design;
D O I
10.1007/s10617-008-9032-0
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Hardware/software (HW/SW) partitioning and scheduling are the crucial steps during HW/SW co-design. It has been shown that they are classical combinatorial optimization problems. Due to the possible sequential or concurrent execution of the tasks, HW/SW partitioning and scheduling has become more difficult to solve optimally. In this paper more efficient heuristic algorithms are proposed for the HW/SW partitioning and scheduling. The proposed algorithm partitions a task graph by iteratively moving the task with highest benefit-to-area ratio in higher priority. The benefit-to-area ratio is updated in each iteration step to cater for the task concurrence. The proposed algorithm for task scheduling executes the task lying in hardware-only critical path in higher priority to enhance the task forecast. A large body of experimental results conclusively shows that the proposed heuristic algorithm for partitioning is superior to the latest efficient combinatorial algorithm (Tabu search) cited in this paper. Moreover, the Tabu search for partitioning has been further improved by utilizing the proposed heuristic solution as its initial solution. In addition, the proposed scheduling algorithm obtains the improvements over the most widely used approaches by up to 10% without large increase in running time.
引用
收藏
页码:345 / 375
页数:31
相关论文
共 54 条
  • [1] Aho AV., 1974, DESIGN ANAL COMPUTER
  • [2] [Anonymous], 2004, SODA
  • [3] Algorithmic aspects of hardware/software partitioning
    Arató, P
    Mann, ZA
    Orbán, A
    [J]. ACM TRANSACTIONS ON DESIGN AUTOMATION OF ELECTRONIC SYSTEMS, 2005, 10 (01) : 136 - 156
  • [4] Architecture synthesis and partitioning of real-time systems: A comparison of three heuristic search strategies
    Axelsson, J
    [J]. PROCEEDINGS OF THE FIFTH INTERNATIONAL WORKSHOP ON HARDWARE/SOFTWARE CODESIGN (CODES/CASHE '97), 1997, : 161 - 165
  • [5] Partitioning and pipelining for performance-constrained hardware/software systems
    Bakshi, S
    Gajski, DD
    [J]. IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, 1999, 7 (04) : 419 - 432
  • [6] AN ALGORITHM FOR LARGE ZERO-ONE KNAPSACK-PROBLEMS
    BALAS, E
    ZEMEL, E
    [J]. OPERATIONS RESEARCH, 1980, 28 (05) : 1130 - 1154
  • [7] RISPP: Rotatina instruction set processing platform
    Bauer, Lars
    Shafique, Muhammad
    Kramer, Simon
    Henkel, Joerg
    [J]. 2007 44TH ACM/IEEE DESIGN AUTOMATION CONFERENCE, VOLS 1 AND 2, 2007, : 791 - +
  • [8] CHUNG YC, 1992, J SUPERCOMPUT NOV, P512
  • [9] Coley D.A., 1998, INTRO GENETIC ALGORI
  • [10] HARDWARE-SOFTWARE COSYNTHESIS FOR MICROCONTROLLERS
    ERNST, R
    HENKEL, J
    BENNER, T
    [J]. IEEE DESIGN & TEST OF COMPUTERS, 1993, 10 (04): : 64 - 75