18
CS269: HW/SW Engineering of Embedded Systems, Winter02
Formal Models
Example: Petri nets
await(pX.n()>=2)[pX.reader]
   for(i=0; i<2; i++) x[i]=pX.read();
reader_unlock
reader_lock
pX.n()
2
2
i=0;
i<2?
x[i]=pX.read();
i++;
end of await
 Formal Methods on Petri nets:
• analyze the schedulability
• analyze upper bounds of storage sizes
• synthesize schedules
Restriction:
condition inside await is conjunctive.