Quasi-Static Scheduling of Embedded Software Using Equal Conflict Nets

  • Marco Sgroi
  • Luciano Lavagno
  • Yosinori Watanabe
  • Alberto Sangiovanni-Vincentelli
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1639)


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.


Reduction Algorithm Complete Cycle Concurrent Task Static Schedule Cyclic Schedule 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    J. Desel and J. Esparza. Free choice Petri nets. Cambridge University Press, 1995.Google Scholar
  2. 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. 3.
    E. Best. Structure theory of petri nets: the free choice hiatus. In Advances in Petri Nets, 1986.Google Scholar
  4. 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. 5.
    I.R. Bahar et. al. Algebraic decision diagrams and their applications. In IEEE International Conference on Computer-Aided Design, November 1993.Google Scholar
  6. 6.
    E. Teruel and M. Silva. Structure theory of equal conflict systems. In Theoretical Computer Science, vol.153, pp. 271–300, 1996.zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    J. Buck. Scheduling dynamic dataflow graphs with bounded memory using the token flow model. Ph.D dissertation. UC Berkeley, 1993.Google Scholar
  8. 8.
    B. Lin. Software synthesis of process-based concurrent programs. In Proceedings of the Design Automation Conference, June 1998.Google Scholar
  9. 9.
    M. Hack. Analysis of Production Schemata by Petri Nets. Master thesis. MIT, 1972.Google Scholar
  10. 10.
    M. Sgroi. Quasi-Static Scheduling of Embedded Software Using Free-Choice Petri Nets. M.S. dissertation. UC Berkeley, May 1998.Google Scholar
  11. 11.
    . T. Murata. Petri nets: properties, analysis and applications. In Proceedings of the IEEE, April 1989.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • Marco Sgroi
    • 1
  • Luciano Lavagno
    • 2
  • Yosinori Watanabe
    • 3
  • Alberto Sangiovanni-Vincentelli
    • 1
  1. 1.EECS DepartmentUniversity of California at BerkeleyBerkeley
  2. 2.Cadence Berkeley LabsBerkeley
  3. 3.Cadence European LabsRomaItaly

Personalised recommendations