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
Link To Document