Real-Time Systems

, Volume 52, Issue 2, pp 161–200 | Cite as

Combined task- and network-level scheduling for distributed time-triggered systems

  • Silviu S. Craciunas
  • Ramon Serna Oliver


Ethernet-based time-triggered networks (e.g. TTEthernet) enable the cost-effective integration of safety-critical and real-time distributed applications in domains where determinism is a key requirement, like the aerospace, automotive, and industrial domains. Time-Triggered communication typically follows an offline and statically configured schedule (the synthesis of which is an NP-complete problem) guaranteeing contention-free frame transmissions. Extending the end-to-end determinism towards the application layers requires that software tasks running on end nodes are scheduled in tight relation to the underlying time-triggered network schedule. In this paper we discuss the simultaneous co-generation of static network and task schedules for distributed systems consisting of preemptive time-triggered tasks which communicate over switched multi-speed time-triggered networks. We formulate the schedule problem using first-order logical constraints and present alternative methods to find a solution, with or without optimization objectives, based on satisfiability modulo theories (SMT) and mixed integer programming (MIP) solvers, respectively. Furthermore, we present an incremental scheduling approach, based on the demand bound test for asynchronous tasks, which significantly improves the scalability of the scheduling problem. We demonstrate the performance of the approach with an extensive evaluation of industrial-sized synthetic configurations using alternative state-of-the-art SMT and MIP solvers and show that, even when using optimization, most of the problems are solved within reasonable time using the incremental method.


Time-triggered Scheduling SMT MIP Mixed-criticality  Distributed systems 



The research leading to these results has received funding from the European Union Seventh Framework Programme (FP7/2007–2013) under Grant Agreement no 610640 (DREAMS).


  1. Abdelzahe TF, Shin KG (1995) Optimal combined task and message scheduling in distributed real-time systems. In: Proc. RTSS. IEEE Computer SocietyGoogle Scholar
  2. Abdelzaher TF, Shin KG (1999) Combined task and message scheduling in distributed real-time systems. IEEE Trans Parallel Distrib Syst 10(11):1179–1191CrossRefGoogle Scholar
  3. Al Sheikh A, Brun O, Chéramy M, Hladik PE (2013) Optimal design of virtual links in afdx networks. Real-Time Syst 49(3):308–336CrossRefGoogle Scholar
  4. Al Sheikh A, Brun O, Hladik PE, Prabhu BJ (2012) Strictly periodic scheduling in ima-based architectures. Real-Time Syst 48(4):359–386CrossRefzbMATHGoogle Scholar
  5. ARINC Report 664P7-1 (2009) Aircraft Data Network, Part 7: Avionics Full Duplex Switched Ethernet (AFDX) NetworkGoogle Scholar
  6. Barrett C, Sebastiani R, Seshia S, Tinelli C (2009) Satisfiability modulo theories. Handbook of satisfiability, vol 185. IOS Press, AmsterdamGoogle Scholar
  7. Baruah SK, Rosier LE, Howell RR (1990) Algorithms and complexity concerning the preemptive scheduling of periodic, real-time tasks on one processor. Real-Time Syst 2(4):301–324CrossRefGoogle Scholar
  8. Bisschop J (2006) Aimms optimization modeling. Paragon Decision Technology, HaarlemGoogle Scholar
  9. Bradley S, Hax A, Magnanti T (1977) Applied mathematical programming. Addison-Wesley, ReadingGoogle Scholar
  10. Buttazzo GC (2004) Hard real-time computing systems: predictable scheduling algorithms and applications (real-time systems series). Springer, New YorkGoogle Scholar
  11. Chetto H, Silly M, Bouchentouf T (1990) Dynamic scheduling of real-time tasks under precedence constraints. Real-Time Syst 2(3):181–194CrossRefGoogle Scholar
  12. Computer Science Laboratory—SRI International: The Yices SMT Solver. URL: Retrieved 15-Apr-2015
  13. Craciunas SS, Serna Oliver R (2014) SMT-based task- and network-level static schedule generation for time-triggered networked systems. In: Proc. RTNS. ACMGoogle Scholar
  14. Craciunas SS, Serna Oliver R, Ecker V (2014) Optimal static scheduling of real-time tasks on distributed time-triggered networked systems. In: Proc. ETFA. IEEE Computer SocietyGoogle Scholar
  15. De Moura L, Bjørner N (2008) Z3: an efficient SMT solver. In: Proc. TACAS. SpringerGoogle Scholar
  16. De Moura L, Bjørner N (2011) Satisfiability modulo theories: introduction and applications. Commun ACM 54(9):69–77CrossRefGoogle Scholar
  17. Derler P, Resmerita S (2010) Flexible static scheduling of software with logical execution time constraints. In: Proc. CIT. IEEEGoogle Scholar
  18. Forget J, Boniol F, Grolleau E, Lesens D, Pagetti C (2010) Scheduling dependent periodic tasks without synchronization mechanisms. In: Proc. RTAS. IEEE Computer SocietyGoogle Scholar
  19. Forget J, Grolleau E, Pagetti C, Richard P (2011) Dynamic priority scheduling of periodic tasks with extended precedences. In: Proc. ETFA. IEEE Computer SocietyGoogle Scholar
  20. Gaglio S, Re G (2013) Advances onto the internet of things: how ontologies make the internet of things meaningful. Advances in Intelligent Systems And Computing. Springer, ChamGoogle Scholar
  21. GLPK: GNU Linear Programming Kit. URL: Retrieved 10-Jan-2015
  22. Gurobi Optimization I (2014) Gurobi optimizer reference manual, version 6.0. URL: Retrieved 12-Jan-2015
  23. Hanzalek Z, Burget P, Šucha P (2009) Profinet IO IRT message scheduling. In: Proc. ECRTS. IEEE Computer SocietyGoogle Scholar
  24. Honeywell Aerospace (2014) Application specific integrated circuits based on TTEthernet ready for first Orion test flight. URL: Retrieved 22-May-2014
  25. Huang J, Blech JO, Raabe A, Buckl C, Knoll A (2012) Static scheduling of a time-triggered network-on-chip based on SMT solving. In: Proc. DATE. IEEE Computer SocietyGoogle Scholar
  26. Institute of Electrical and Electronics Engineers, Inc 802.1Qbv (2015) Enhancements for Scheduled Traffic. URL: Retrieved 20-Jan-2015
  27. Institute of Electrical and Electronics Engineers, Inc (2015) Time-sensitive networking task group. URL: Retrieved 20-Jan-2015
  28. Kermia O, Cucu L, Sorel Y (2006) Non-preemptive multiprocessor static scheduling for systems with precedence and strict periodicity constraints. In: Proc. PMSGoogle Scholar
  29. Kermia O, Sorel Y (2008) Load balancing and efficient memory usage for homogeneous distributed real-time embedded systems. In: Proc. ICPP-W. IEEEGoogle Scholar
  30. Kermia O, Sorel Y (2008) Schedulability analysis for non-preemptive tasks under strict periodicity constraints. In: Proc. RTCSA. IEEE Computer SocietyGoogle Scholar
  31. Kopetz H (1997) Real-time systems: design principles for distributed embedded applications. Kluwer Academic Publishers, BostonzbMATHGoogle Scholar
  32. Kopetz H, Ademaj A, Grillinger P, Steinhammer K (2005) The time-triggered ethernet (TTE) design. In: Proc. ISORC. IEEEGoogle Scholar
  33. Kopetz H, Bauer G (2003) The time-triggered architecture. Proc IEEE 91(1):112–126CrossRefGoogle Scholar
  34. Kopetz H, Grunsteidl G (1993) Ttp—a time-triggered protocol for fault-tolerant real-time systems. In: The 23rd International Symposium on Fault-Tolerant Computing, 1993. FTCS-23. Digest of Papers, pp. 524–533Google Scholar
  35. Leung J, Kelly L, Anderson JH (2004) Handbook of scheduling: algorithms, models, and performance analysis. CRC Press, Boca RatonGoogle Scholar
  36. Leung JYT, Merrill M (1980) A note on preemptive scheduling of periodic, real-time tasks. Inf Process Lett 11(3):115–118CrossRefMathSciNetzbMATHGoogle Scholar
  37. Liu CL, Layland JW (1973) Scheduling algorithms for multiprogramming in a hard-real-time environment. J ACM 20:46–61CrossRefMathSciNetzbMATHGoogle Scholar
  38. Meindl B, Templ M (2013) Analysis of commercial and free and open source solvers for the cell suppression problem. Trans Data Priv 6(2):147–159MathSciNetGoogle Scholar
  39. Metzner A, Franzle M, Herde C, Stierand I (2005) Scheduling distributed real-time systems by satisfiability checking. In: Proc. RTCSA. IEEE Computer SocietyGoogle Scholar
  40. Moura L, Bjørner N (2009) Satisfiability modulo theories: an appetizer. Formal methods: foundations and applications. Springer, Berlin, pp 23–36CrossRefGoogle Scholar
  41. NASA (2014) Orion Exploration Flight Test-1. URL: Retrieved 24-Jun-2015
  42. Nikoletseas S, Rolim J (2011) Theoretical aspects of distributed computing in sensor networks. Monographs in theoretical computer science. An EATCS series. Springer, BerlinCrossRefGoogle Scholar
  43. Ousterhout K, Wendell P, Zaharia M, Stoica I (2013) Sparrow: distributed, low latency scheduling. In: Proc SOSP. ACMGoogle Scholar
  44. Pellizzoni R, Lipari G (2004) A new sufficient feasibility test for asynchronous real-time periodic task sets. In: Proc. ECRTS. IEEE Computer SocietyGoogle Scholar
  45. Pellizzoni R, Lipari G (2005) Feasibility analysis of real-time periodic tasks with offsets. Real-Time Syst 30(1–2):105–128CrossRefzbMATHGoogle Scholar
  46. Peng DT, Shin K, Abdelzaher T (1997) Assignment and scheduling communicating periodic tasks in distributed real-time systems. IEEE Trans Softw Eng 23(12):745–758CrossRefGoogle Scholar
  47. Pop P, Eles P, Peng Z (1999) An improved scheduling technique for time-triggered embedded systems. In: Proc. EUROMICRO. IEEE Computer SocietyGoogle Scholar
  48. Pop P, Eles P, Peng Z (2004) Schedulability-driven communication synthesis for time triggered embedded systems. Real-Time Syst 26(3):297–325CrossRefzbMATHGoogle Scholar
  49. Pop T, Eles P, Peng Z (2002) Holistic scheduling and analysis of mixed time/event-triggered distributed embedded systems. In: Proc. CODES. ACMGoogle Scholar
  50. Sebastiani R (2007) Lazy satisfiability modulo theories. JSAT 3(3–4):141–224MathSciNetzbMATHGoogle Scholar
  51. Serna Oliver R, Craciunas SS, Stöger G (2014) Analysis of Deterministic Ethernet Scheduling For The Industrial Internet Of Things. In: Proc. CAMAD. IEEEGoogle Scholar
  52. Stankovic J (1998) Deadline scheduling for real-time systems: EDF and related. Real-time systems series. Springer, New YorkCrossRefGoogle Scholar
  53. Steiner W (2010) An evaluation of SMT-based schedule synthesis for time-triggered multi-hop networks. In: Proc. RTSS. IEEE Computer SocietyGoogle Scholar
  54. Steiner W (2011) Synthesis of static communication schedules for mixed-criticality systems. In: Proc. ISORCW. IEEE Computer SocietyGoogle Scholar
  55. Steiner W, Bauer G, Hall B, Paulitsch M (2011) TTEthernet: time-triggered ethernet. In: Obermaisser R (ed) Time-triggered communication. CRC Press, Boca RatonGoogle Scholar
  56. Steiner W, Dutertre B (2011) Automated formal verification of the TTEthernet synchronization quality. NASA formal methods. Lecture notes in computer science, vol 5517. Springer, BerlinGoogle Scholar
  57. Tamas-Selicean D, Pop P, Steiner W (2012) Synthesis of communication schedules for TTEthernet-based mixed-criticality systems. In: Proc. CODES+ISSS. ACMGoogle Scholar
  58. Texas Instruments: TMS570LS Series 16/32-BIT RISC Flash Microcontroller. URL: Retrieved 12-Jun-2014
  59. Yomsi PM, Sorel Y (2009)S chedulability analysis for non necessarily harmonic real-time systems with precedence and strict periodicity constraints using the exact number of preemptions and no idle time. In: Proc. MISTAGoogle Scholar
  60. Zeng H, Zheng W, Di Natale M, Ghosal A, Giusto P, Sangiovanni-Vincentelli A (2009) Scheduling the flexray bus using optimization techniques. In: Proc. DAC. ACMGoogle Scholar
  61. Zhang L, Goswami D, Schneider R, Chakraborty S (2014) Task- and network-level schedule co-synthesis of ethernet-based time-triggered systems. In: Proc. ASP-DAC. IEEE Computer SocietyGoogle Scholar
  62. Zurawski R (2014) Industrial communication technology handbook. Industrial information technology. Taylor & Francis, Boca RatonGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2015

Authors and Affiliations

  1. 1.TTTech Computertechnik AGViennaAustria

Personalised recommendations