Real-Time Systems

, Volume 48, Issue 4, pp 430–462 | Cite as

State-based scheduling with tree schedules: analysis and evaluation

  • Madhukar Anand
  • Sebastian Fischmeister
  • Insup Lee
  • Linh T. X. Phan
Article

Abstract

Distributed real-time systems require bounded communication delays and achieve them by means of a predictable and verifiable control mechanism for the communication medium. Real-time bus arbitration mechanisms control access to the medium and guarantee bounded communication delays. These arbitration mechanisms can be static dispatch tables or dynamic, algorithmic approaches.

In this work, we introduce a real-time bus arbitration mechanism called tree schedules that takes the best parts of both sides: It can be analyzed like static dispatch tables, and it provides a certain degree of flexibility similar to algorithmic approaches. We present tree schedules as a framework to specify real-time traffic and introduce mechanisms to analyze it. We discuss how tree schedules can capture application-specific behavior in a time-triggered state-based supply model by means of conditional branching built into the model. We present analysis results for this model specifically aiming at schedulability in fixed and dynamic priority schemes and waiting time analysis. Finally, we demonstrate the advantages of state-based supply over stateless supply by means of two case studies.

Keywords

Real-time networking Scheduling Network code 

References

  1. Abdeddaïm Y, Kerbaa A, Maler O (2003) Task graph scheduling using timed automata. In: Proc of the 17th international symposium on parallel and distributed processing (IPDPS), Nice, France Google Scholar
  2. Alur R, Dill D (1994) A theory of timed automata. Theor Comput Sci 126(2):183–235 MathSciNetMATHCrossRefGoogle Scholar
  3. Alur R, Weiss G (2008) Regular specifications of resource requirements for embedded control software. In: RTAS ’08: proceedings of the 2008 IEEE real-time and embedded technology and applications symposium. IEEE Computer Society, Washington, pp 159–168. doi:10.1109/RTAS.2008.13 CrossRefGoogle Scholar
  4. Anand M, Fischmeister S, Lee I (2006) An analysis framework for network-code programs. In: Proceedings of the 6th annual ACM conference on embedded software (EMSOFT), Seoul, South Korea, pp 122–131 CrossRefGoogle Scholar
  5. Anand M, Easwaran A, Fischmeister S, Lee I (2008) Compositional feasibility analysis for conditional task models. In: Proceedings of the eleventh IEEE international symposium on object-oriented real-time distributed computing (ISORC). IEEE Computer Society, Washington Google Scholar
  6. Arney D, Trausmuth R, Fischmeister S, Goldman JM, Lee I (2009) Plug-and-play for medical devices: experiences from a case study. Biomed Instrum Technol 43:313–317 CrossRefGoogle Scholar
  7. Baruah SK (1998) Feasibility analysis of recurring branching tasks. In: ECRTS, pp 138–145 Google Scholar
  8. Baruah SK, Mok AK, Rosier LE (1990) Preemptively scheduling hard-real-time sporadic tasks on one processor. In: IEEE real-time systems symposium, pp 182–190. URL citeseer.ist.psu.edu/baruah90preemptively.html Google Scholar
  9. Baruah SK, Chen D, Mok AK (1997) Jitter concerns in periodic task systems. In: RTSS ’97: proceedings of the 18th IEEE real-time systems symposium (RTSS ’97). IEEE Computer Society, Washington, p 68 Google Scholar
  10. Berwanger J, Peller M, Griessbach R (2000) ByteFlight—a new high-performance data bus system for safety-related applications. Tech Rep EE-211, BMW AG Google Scholar
  11. Bose SK (2001) Introduction to queueing systems. Kluwer Academic/Plenum Publishers, New York Google Scholar
  12. Carvajal G, Fischmeister S (2010) A TDMA Ethernet switch for dynamic real-time communication. In: Proc of the 18th IEEE symposium on field-programmable custom computing machines (FCCM), Charlotte, United States, pp 119–126 CrossRefGoogle Scholar
  13. Cervin A, Henriksson D, Lincoln B, Eker J, Arzen KE (2003) How does control timing affect performance? Analysis and simulation of timing using Jitterbug and TrueTime. IEEE Control Syst Mag 23(3):16–30. doi:10.1109/MCS.2003.1200240 CrossRefGoogle Scholar
  14. Chakraborty S, Phan LTX, Thiagarajan PS (2005) Event count automata: a state-based model for stream processing systems. In: Proc of the 26th IEEE real-time systems symposium (RTSS), Miami, Florida, USA Google Scholar
  15. CMU (last visited 12/2007) Control tutorials for Mathlab and simulink. Web site, http://www.library.cmu.edu/ctms/ctms/index.htm
  16. Cooper R (1981) Introduction to queueing theory. Edward Arnold, Sevenoaks Google Scholar
  17. Ethernet powerlink V2.0—communication profile specification (2003) Ethernet Powerlink Standadisation Group (EPSG) Google Scholar
  18. Fersman E, Pettersson P, Yi W (2002) Timed automata with asynchronous processes: schedulability and decidability. In: TACAS, pp 67–82 Google Scholar
  19. Fischmeister S, Sokolsky O, Lee I (2006) Network-code machine: programmable real-time communication schedules. In: Proc of the 12th IEEE real-time and embedded technology and applications symposium (RTAS), San Jose, United States, pp 311–324 CrossRefGoogle Scholar
  20. Fischmeister S, Sokolsky O, Lee I (2007) A verifiable language for programming communication schedules. IEEE Trans Comput 56(11):1505–1519 MathSciNetCrossRefGoogle Scholar
  21. Fischmeister S, Trausmuth R, Lee I (2009) Hardware acceleration for conditional state-based communication scheduling on real-time Ethernet. IEEE Trans Ind Inform 5(3):325–337 CrossRefGoogle Scholar
  22. FlexRay Consortium (2004) FlexRay communications system—protocol specification. Version 2.0 Google Scholar
  23. Hendriks M, Verhoef M (2006) Timed automata based analysis of embedded system architectures. In: Proc of the 20th international workshop on parallel and distributed processing symposium (IPDPS), Rhodes Island, USA Google Scholar
  24. Joseph M, Pandya PK (1986) Finding response times in a real-time system. Comput J 29(5):390–395 MathSciNetCrossRefGoogle Scholar
  25. Kopetz H (1997) Real-time systems: design principles for distributed embedded applications. Kluwer Academic, Dordrecht MATHGoogle Scholar
  26. Kopetz H (2004) The fault hypothesis for the time-triggered architecture. In: Proc of the IFIP world computer congress Google Scholar
  27. Kopetz H, Bauer G, Poledna S (2001) Tolerating arbitrary node failures in the time-triggered architecture. In: SAE 2001 world congress, March 2001, Detroit, MI, USA Google Scholar
  28. Lehoczky JP (1996) Real-time queueing theory. In: RTSS ’96: proceedings of the 17th IEEE real-time systems symposium (RTSS ’96). IEEE Computer Society, Washington, p 186 Google Scholar
  29. Lehoczky JP, Sha L, Strosnider JK (1987) Enhanced aperiodic responsiveness in hard real-time environments. In: IEEE real-time systems symposium, pp 261–270 Google Scholar
  30. Leung JT, Merrill M (1980) A note on preemptive scheduling of periodic, real-time tasks. Inf Process Lett 11(3):115–118 MathSciNetMATHCrossRefGoogle Scholar
  31. Liu C, Layland J (1973) Scheduling algorithms for multi-programming in a hard-real-time environment. J ACM 20(1):46–61 MathSciNetCrossRefGoogle Scholar
  32. Phan LTX, Chakraborty S, Thiagarajan PS, Thiele L (2007) Composing functional and state-based performance models for analyzing heterogeneous real-time systems. In: Proc of the 28th IEEE real-time systems symposium (RTSS), Tucson, Arizona, USA Google Scholar
  33. Phan LTX, Chakraborty S, Thiagarajan PS (2008) A multi-mode real-time calculus. In: Proc of the 29th IEEE real-time systems symposium (RTSS), Barcelona, Spain Google Scholar
  34. Pop P, Eles P, Peng Z (2000) Schedulability analysis for systems with data and control dependencies. In: Euromicro conference on real-time systems, pp 201–208. URL http://www2.imm.dtu.dk/pubdb/p.php?4632 Google Scholar
  35. Potop-Butucaru D, de Simone R, Sorel Y, Talpin JP (2009) Clock-driven distributed real-time implementation of endochronous synchronous programs. In: EMSOFT ’09: proceedings of the seventh ACM international conference on embedded software. ACM, New York, pp 147–156. doi:10.1145/1629335.1629356 CrossRefGoogle Scholar
  36. Real J, Crespo A (2004) Mode change protocols for real-time systems: a survey and a new proposal. Real-Time Syst 26(2):161–197 MATHCrossRefGoogle Scholar
  37. Shin I, Lee I (2003) Periodic resource model for compositional real-time guarantees. In: RTSS, pp 2–13 Google Scholar
  38. Shin I, Lee I (2004) Compositional real-time scheduling framework. In: RTSS, pp 57–67 Google Scholar
  39. Tindell K, Clark J (1994) Holistic schedulability analysis for distributed hard real-time systems. Microprocess Microprogram 40(2–3):117–134. doi:10.1016/0165-6074(94)90080-9 CrossRefGoogle Scholar
  40. Wandeler E, Maxiaguine A, Thiele L (2004) Quantitative characterization of event streams in analysis of hard real-time applications. In: Proceedings of the 10th IEEE real-time and embedded technology and applications symposium (RTAS), Toronto, Canada, pp 450–461 CrossRefGoogle Scholar
  41. Weiss G, Fischmeister S, Anand M, Alur R (2009) Specification and analysis of network resource requirements of control systems. In: Proc of the 12th international conference on hybrid systems: computation and control (HSCC), San Fransisco, United States, pp 381–395 CrossRefGoogle Scholar
  42. Whitaker J, Benson B (2001) Standard handbook of audio and radio engineering. McGraw-Hill, New York Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2012

Authors and Affiliations

  • Madhukar Anand
    • 1
  • Sebastian Fischmeister
    • 2
  • Insup Lee
    • 3
  • Linh T. X. Phan
    • 3
  1. 1.Cisco SystemsSan JoseUSA
  2. 2.University of WaterlooWaterlooCanada
  3. 3.University of PennsylvaniaPhiladelphiaUSA

Personalised recommendations