A time Petri net-based method for embedded hard real-time software synthesis

  • Raimundo BarretoEmail author
  • Paulo Maciel
  • Eduardo Tavares
  • Romulo Devezas Freitas
  • Meuse Oliveira
  • Ricardo Massa Lima


Over the last few years, embedded software synthesis has drawn much attention. However, few works deal with software synthesis for hard real-time systems considering arbitrary inter-tasks precedence and exclusion relations. Code generation for meeting all timing and resource constraints is not a trivial task. Thus, this research area has several open issues, mainly related to generation of predictable-guaranteed scheduled code. The method proposed in this paper starts from a high-level specification, and automatically translates such specification into a time Petri net model; this model is adopted for finding a feasible static schedule meeting all constraints. If found, the approach generates a scheduled code, based on the found feasible schedule. Therefore, the user just enter the specification and receives, as result, the scheduled code. Thus, all intermediary phases are hidden from the users.


Software synthesis Time Petri net Embedded hard real-time systems 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abdelzaher TF, Shin KG (1999) Combined task and message scheduling in distributed real-time systems. IEEE Trans Parallel Distributed Syst 10(11):1179–1191 CrossRefGoogle Scholar
  2. 2.
    Altisen K, Göbler G, Pnueli A, Sifakis J, Tripakis S, Yovine S (1999) A framework for scheduler synthesis. In: IEEE real-time system symposium, December 1999, pp 154–163 Google Scholar
  3. 3.
    Amnell T, Fersman E, Pettersson P, Sun H, Yi W (2002) Code synthesis for timed automata. Nord J Comput 9(4):269–300 zbMATHMathSciNetGoogle Scholar
  4. 4.
    Baker TP, Shaw A (1988) The cyclic executive model and ada. In: Proceedings of the IEEE real-time systems symposium, December 1988 Google Scholar
  5. 5.
    Barreto R (2005) A time Petri net-based methodology for embedded hard real-time software synthesis. PhD Thesis, Centro de Informática, UFPE Google Scholar
  6. 6.
    Cornero M, Thoen F, Goossens G, Curatelli F (1995) Software synthesis for real-time information processing systems. Code generation for embedded processors, pp 260–279 Google Scholar
  7. 7.
    Desel J, Reisig W (1998) Place/transition nets. In: Lectures on Petri nets I: basic models, June 1998. Lecture Notes in Computer Science, vol 1491. Springer, Berlin, pp 122–173 Google Scholar
  8. 8.
    Fohler G (1994) Flexibility in statically scheduled hard real-time systems. PhD thesis, Technische Universität Wien, Institut für Technische Informatik, Vienna, Austria Google Scholar
  9. 9.
    Godefroid P (1994) Partial order methods for the verification of concurrent systems: an approach to the state-explosion problem. PhD thesis, University of Liege Google Scholar
  10. 10.
    Huber P, Jensen A, Jepsen L, Jensen K (1985) Towards reachability trees for high-level petri nets. Technical report Daimi PB-174, Department of Computer Science, Aarhus University Google Scholar
  11. 11.
    Lilius J (1998) Efficient state space search for time petri nets. In: Electronic notes in theoretical computer science, vol 18. Elsevier Science, Amsterdam Google Scholar
  12. 12.
    Lin B (1998) Efficient compilation of process-based concurrent programs without run-time scheduling. Design automation and test in Europe conference (DATE’98), February 1998 Google Scholar
  13. 13.
    Marsan M, Bobbio A, Donatelli D (1998) Petri nets in performance analysis: an introduction. In: Lectures on Petri nets I: basic models, June 1998. Lecture Notes in Computer Science, vol 1491. Springer, Berlin, pp 211–256 Google Scholar
  14. 14.
    Mok AK (1983) Fundamental design problems of distributed systems for the hard-real-time environment. PhD thesis, MIT Google Scholar
  15. 15.
    Sgroi M, Lavagno L, Watanabe Y, Sangiovanni-Vincentelli A (1999) Synthesis of embedded software using free-choice Petri nets. In: Design automation conference Google Scholar
  16. 16.
    Sieh L, Haniak P, Richardson P (2001) Implementing transient fault tolerance in embedded real-time systems. In: IEEE electronics and information technology conference Google Scholar
  17. 17.
    Sloan R, Buy U (1997) Stubborn sets for real-time petri nets. Formal Methods Syst Des 11(1):23–40 CrossRefGoogle Scholar
  18. 18.
    Valmari A (1998) The state explosion problem. In: Lectures on Petri nets I: basic models, June 1998. Lecture Notes in Computer Science, vol 1491. Springer, Berlin, pp 429–528 Google Scholar
  19. 19.
    Wang W, Mok A, Fohler G (2005) Pre-scheduling. Real-Time Syst 30(1–2):83–103 zbMATHCrossRefGoogle Scholar
  20. 20.
    Xu J (2003) On inspection and verification of software with timing requirements. IEEE Trans Softw Eng 29(8):705–720 CrossRefGoogle Scholar
  21. 21.
    Xu J, Parnas D (1990) Scheduling processes with release times, deadlines, precedence, and exclusion relations. IEEE Trans Soft Eng 16(3):360–369 CrossRefGoogle Scholar
  22. 22.
    Xu J, Parnas D (1993) On satisfying timing constraints in hard real-time systems. IEEE Trans Soft Eng 19(1):70–84 CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2008

Authors and Affiliations

  • Raimundo Barreto
    • 1
    Email author
  • Paulo Maciel
    • 2
  • Eduardo Tavares
    • 2
  • Romulo Devezas Freitas
    • 1
  • Meuse Oliveira
    • 2
  • Ricardo Massa Lima
    • 3
  1. 1.Departamento de Ciência da Computação (DCC)Universidade Federal do Amazonas (UFAM)ManausBrazil
  2. 2.Centro de Informática (CIn)Universidade Federal de Pernambuco (UFPE)PernambucoBrazil
  3. 3.Departamento de Sistemas Computacionais (DSC)Universidade de Pernambuco (UPE)PernambucoBrazil

Personalised recommendations