Quasi-Static Scheduling of Embedded Software Using Equal Conflict Nets
Embedded system design requires the use of efficient scheduling policies to execute on shared resources, e.g. the processor, algorithms that consist of a set of concurrent tasks with complex mutual dependencies. Scheduling techniques are called static when the schedule is computed at compile time, dynamic when some or all decisions are made at run-time. The choice of the scheduling policy mainly depends on the specification of the system to be designed. For specifications containing only data computation, it is possible to use a fully static scheduling technique, while for specifications containing data-dependent control structures, like the if-then-else or while-do constructs, the dynamic behaviour of the system cannot be completely predicted at compile time and some scheduling decisions are to be made at run-time. For such applications we propose a Quasi-static scheduling (QSS) algorithm that generates a schedule in which run-time decisions are made only for data-dependent control structures. We use Equal Conflict (EC) nets as underlying model, and define quasi-static schedulability for EC nets. We solve QSS by reducing it to a decomposition of the net into conflict-free components. The proposed algorithm is complete, in that it can solve QSS for any EC net that is quasi-statically schedulable.
KeywordsReduction Algorithm Complete Cycle Concurrent Task Static Schedule Cyclic Schedule
Unable to display preview. Download preview PDF.
- 1.J. Desel and J. Esparza. Free choice Petri nets. Cambridge University Press, 1995.Google Scholar
- 2.E.A. Lee and D.G. Messerschmitt. Static scheduling of synchronous data flow programs for digital signal processing. IEEE Transactions on computers, January 1987.Google Scholar
- 3.E. Best. Structure theory of petri nets: the free choice hiatus. In Advances in Petri Nets, 1986.Google Scholar
- 4.E. Filippi et al. Intellectual property re-use in embedded system co-design: an industrial case study. In International Symposium System Synthesis. ISSS’ 98. Taiwan, December 1998.Google Scholar
- 5.I.R. Bahar et. al. Algebraic decision diagrams and their applications. In IEEE International Conference on Computer-Aided Design, November 1993.Google Scholar
- 7.J. Buck. Scheduling dynamic dataflow graphs with bounded memory using the token flow model. Ph.D dissertation. UC Berkeley, 1993.Google Scholar
- 8.B. Lin. Software synthesis of process-based concurrent programs. In Proceedings of the Design Automation Conference, June 1998.Google Scholar
- 9.M. Hack. Analysis of Production Schemata by Petri Nets. Master thesis. MIT, 1972.Google Scholar
- 10.M. Sgroi. Quasi-Static Scheduling of Embedded Software Using Free-Choice Petri Nets. M.S. dissertation. UC Berkeley, May 1998.Google Scholar
- 11.. T. Murata. Petri nets: properties, analysis and applications. In Proceedings of the IEEE, April 1989.Google Scholar