Process scheduling for performance estimation and synthesis of hardware/software systems

The paper presents an approach to process scheduling for embedded systems. Target architectures consist of several processors and ASICs connected by shared busses. We have developed algorithms for process graph scheduling based on list scheduling and branch and bound strategies. One essential contribution is in the manner in which information on process allocation is used in order to efficiently derive a good quality or optimal schedule. Experiments show the superiority of these algorithms compared to previous approaches like critical path heuristics and ILP based optimal scheduling. An extension of our approach allows the scheduling of conditional process graphs capturing both data and control flow. In this case a schedule table has to be generated so that the worst case delay is minimized.

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

[2]  Krzysztof Kuchcinski Embedded system synthesis by timing constraints solving , 1997, Proceedings. Tenth International Symposium on System Synthesis (Cat. No.97TB100114).

[3]  Wayne Wolf,et al.  Hardware-Software Co-Synthesis of Distributed Embedded Systems , 1996 .

[4]  Alice C. Parker,et al.  Synthesis of Application-Specific Heterogeneous Multiprocessor Systems , 1992, [1992] Proceedings the 19th Annual International Symposium on Computer Architecture.

[5]  Jan Madsen,et al.  Critical path driven cosynthesis for heterogeneous target architectures , 1997, CODES.

[6]  Daniel Gajski,et al.  Hypertool: A Programming Aid for Message-Passing Systems , 1990, IEEE Trans. Parallel Distributed Syst..

[7]  Hironori Kasahara,et al.  Practical Multiprocessor Scheduling Algorithms for Efficient Parallel Processing , 1984, IEEE Transactions on Computers.

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

[9]  Gaetano Borriello,et al.  Interval Scheduling: Fine-Grained Code Scheduling for Embedded Systems , 1995, 32nd Design Automation Conference.

[10]  P. Bjorn-Jorgensen,et al.  Critical path driven cosynthesis for heterogeneous target architectures , 1997, Proceedings of 5th International Workshop on Hardware/Software Co Design. Codes/CASHE '97.

[11]  Petru Eles,et al.  Scheduling of conditional process graphs for the synthesis of embedded systems , 1998, DATE.

[12]  P. Eles,et al.  Scheduling of conditional process graphs for the synthesis of embedded systems , 1998, Proceedings Design, Automation and Test in Europe.

[13]  Alice C. Parker,et al.  SOS: Synthesis of application-specific heterogeneous multiprocessor systems , 2001, J. Parallel Distributed Comput..

[14]  Thomas M. Chen,et al.  ATM switching systems , 1995 .

[15]  Jeffrey D. Ullman,et al.  NP-Complete Scheduling Problems , 1975, J. Comput. Syst. Sci..