• DocumentCode
    3031430
  • Title

    Synthesis of embedded software using free-choice Petri nets

  • Author

    Sgroi, Marco ; Lavagno, Luciano ; Watanabe, Yosinori ; Sangiovanni-Vincentelli, Alberto

  • Author_Institution
    California Univ., Berkeley, CA, USA
  • fYear
    1999
  • fDate
    1999
  • Firstpage
    805
  • Lastpage
    810
  • Abstract
    Software synthesis from a concurrent functional specification is a key problem in the design of embedded systems. A concurrent specification is well-suited for medium-grained partitioning. However, in order to be implemented in software, concurrent tasks need to be scheduled on a shared resource (the processor). The choice of the scheduling policy mainly depends on the specification of the system. For pure dataflow specifications, it is possible to apply a fully static scheduling technique, while for algorithms 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 Free Choice Petri Nets (FCPNs), as the underlying model, and define quasi-static schedulability for FCPNs. The proposed algorithm is complete, in that it can solve QSS for any FCPN that is quasi-statically schedulable. Finally, we show how to synthesize from a quasi-static schedule a C code implementation that consists of a set of concurrent tasks
  • Keywords
    Petri nets; embedded systems; multiprocessing programs; processor scheduling; program control structures; software engineering; C code implementation; concurrent functional specification; concurrent tasks set; data-dependent control structures; dataflow specifications; embedded software synthesis; free-choice Petri nets; medium-grained partitioning; quasi-static scheduling; run-time decisions; scheduling policy; Control systems; Dynamic scheduling; Embedded software; Embedded system; Permission; Petri nets; Processor scheduling; Programming; Runtime; Scheduling algorithm;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Design Automation Conference, 1999. Proceedings. 36th
  • Conference_Location
    New Orleans, LA
  • Print_ISBN
    1-58113-092-9
  • Type

    conf

  • DOI
    10.1109/DAC.1999.782140
  • Filename
    782140