Skip to main content
Log in

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

  • Published:
Design Automation for Embedded Systems Aims and scope Submit manuscript

Abstract

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  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

    Article  Google Scholar 

  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

  3. Amnell T, Fersman E, Pettersson P, Sun H, Yi W (2002) Code synthesis for timed automata. Nord J Comput 9(4):269–300

    MATH  MathSciNet  Google Scholar 

  4. Baker TP, Shaw A (1988) The cyclic executive model and ada. In: Proceedings of the IEEE real-time systems symposium, December 1988

  5. Barreto R (2005) A time Petri net-based methodology for embedded hard real-time software synthesis. PhD Thesis, Centro de Informática, UFPE

  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

  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. Fohler G (1994) Flexibility in statically scheduled hard real-time systems. PhD thesis, Technische Universität Wien, Institut für Technische Informatik, Vienna, Austria

  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

  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

  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. 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

  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. Mok AK (1983) Fundamental design problems of distributed systems for the hard-real-time environment. PhD thesis, MIT

  15. Sgroi M, Lavagno L, Watanabe Y, Sangiovanni-Vincentelli A (1999) Synthesis of embedded software using free-choice Petri nets. In: Design automation conference

  16. Sieh L, Haniak P, Richardson P (2001) Implementing transient fault tolerance in embedded real-time systems. In: IEEE electronics and information technology conference

  17. Sloan R, Buy U (1997) Stubborn sets for real-time petri nets. Formal Methods Syst Des 11(1):23–40

    Article  Google Scholar 

  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. Wang W, Mok A, Fohler G (2005) Pre-scheduling. Real-Time Syst 30(1–2):83–103

    Article  MATH  Google Scholar 

  20. Xu J (2003) On inspection and verification of software with timing requirements. IEEE Trans Softw Eng 29(8):705–720

    Article  Google Scholar 

  21. Xu J, Parnas D (1990) Scheduling processes with release times, deadlines, precedence, and exclusion relations. IEEE Trans Soft Eng 16(3):360–369

    Article  Google Scholar 

  22. Xu J, Parnas D (1993) On satisfying timing constraints in hard real-time systems. IEEE Trans Soft Eng 19(1):70–84

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Raimundo Barreto.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Barreto, R., Maciel, P., Tavares, E. et al. A time Petri net-based method for embedded hard real-time software synthesis. Des Autom Embed Syst 12, 31–62 (2008). https://doi.org/10.1007/s10617-007-9011-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10617-007-9011-x

Keywords

Navigation