Scheduling event-triggered and time-triggered applications with optimal reliability and predictability on networked multi-core chips

Multi-core processors are gaining increasing importance in safety-relevant embedded realtime systems, where temporal guarantees must be ensured despite the sharing of on-chip resources such as processor cores and networks-on-chip (NoC). At the same time, many applications comprise workloads with different timing models including time triggered and event-triggered communication. The first contribution is a scheduling model based on Mixed Integer Linear Programming(MILP) supporting the allocation of computational jobs to processing cores as well as the scheduling of messages and the selection of paths on NoC. The model supports dependencies between computational jobs and it combines both time-triggered and event-triggered messages. Phase alignment of time-triggered messages is performed while avoiding collisions between time-triggered messages and satisfying bandwidth constraints for event-triggered messages. Example scenarios are solved optimally using the IBM CPLEX optimizer yielding minimal computational and communication latencies. Real-time communication and reliability are two important requirements in the development of safety-critical embedded systems, which benefit from the inherent fault isolation and temporal predictability of time-triggered networks. These systems depend on redundant communication schedules that contain global time-based information of message transmissions with conflict-free paths through the switches. In these systems, the use of redundancy to handle communication errors requires the preallocation of communication resources. The second contribution introduces a novel scheduler for redundant time-triggered networks that assigns messages to redundant paths. The scheduler considers the link reliability along with physical and logical models and produces a schedule where each message is assigned to two different paths along the switches. We also discuss and validate the approach with results from a prototype implementation. SoS consist of complex interconnections of large numbers of networked embedded systems that are characterized by operational and managerial independence of constituent systems, geographical separation, and emergent behavior in a constantly changing environment. The support for real-time communication is crucial for many SoS application areas such as medical, business, and military systems. The third contribution is a conceptual model and a scheduling algorithm for supporting real-time requirements in SoS. The search for a feasible schedule is computed incrementally upon the introduction of new applications in the SoS. The distributed computation of the schedule using the different constituent systems considers the lack of global knowledge and control in the SoS, while also reducing the overall scheduling time. Concurrent scheduling activities are supported to deal with the uncoordinated and possibly simultaneous introduction of multiple applications. The dissertation introduces also a simulation framework with real-time support of SoS that supports high-level scheduling as well as low-level scheduling for each constituent system. A time-triggered Ethernet (TTEthernet) simulation framework was extended by adding a scheduler layer to perform incremental scheduling among Constituent System Managers (CSMs). The simulation framework enabled the evaluation of the proposed algorithms in terms of schedulability, run-time, and worst-case latency for time-triggered and rate-constrained messages. Mehrkernprozessoren gewinnen zunehmend an Bedeutung in sicherheitsrelevanten eingebetteten Echtzeitsystemen, bei denen trotz der gemeinsamen Nutzung von On-Chip-Ressourcen wie Prozessorkernen und On-Chip-Netzwerken zeitliche Garantien gewahrleistet sein mussen. Gleichzeitig umfassen viele Anwendungen Arbeitsbelastungen mit unterschiedlichen Timing- Modellen, einschlieslich zeitgesteuerter und ereignisgesteuerter Kommunikation. Der erste Beitrag der Dissertation ist ein Planungsmodell, das auf der gemischt-ganzzahligen linearen Programmierung basiert und die Zuweisung von Rechenauftragen an Prozessorkerne sowie die Planung von Nachrichten und die Auswahl von Wegen auf NoCs unterstutzt. Das Modell unterstutzt Abhangigkeiten zwischen Rechenjobs und kombiniert sowohl zeitgesteuerte als auch ereignisgesteuerte Nachrichten. Die Phasenausrichtung zeitgesteuerter Nachrichten wird durchgefuhrt, wahrend Kollisionen zwischen zeitgesteuerten Nachrichten und die Verletzung von Bandbreitenbeschrankungen fur ereignisgesteuerte Nachrichten vermieden werden. Beispielszenarien werden optimal mit dem IBM CPLEX-Optimierer gelost, wobei minimale Rechen- und Kommunikationslatenzen garantiert werden. Echtzeitkommunikation und Zuverlassigkeit sind zwei wichtige Anforderungen bei der Entwicklung sicherheitskritischer eingebetteter Systeme, die von der inharenten Fehlerisolierung und zeitlichen Vorhersagbarkeit zeitgesteuerter Netzwerke profitieren. Als Grundlage fur Fehlertoleranz benotigen diese Systeme auserdem redundante Kommunikationsplane, die globale zeitbasierte Informationen von mehrfachen Nachrichtenubertragungen mit konfliktfreien Pfaden durch die Switches enthalten. In diesen Systemen erfordert die Verwendung von Redundanz zur Behandlung von Kommunikationsfehlern die Vorbelegung von Kommunikationsressourcen. Der zweite Beitrag der Dissertation stellt einen neuartigen Scheduler fur redundante zeitgesteuerte Netzwerke vor, der Nachrichten redundanten Pfaden zuweist. Der Scheduler berucksichtigt die Verbindungszuverlassigkeit zusammen mit physischen und logischen Modellen und erstellt einen Zeitplan, bei dem jede Nachricht zwei verschiedenen Pfaden entlang der Switches zugewiesen wird. Wir diskutieren und validieren den Ansatz mit den Ergebnissen einer Prototypimplementierung. Systeme von Systemen (SoS) bestehen aus komplexen Zusammenschaltungen einer grosen Anzahl von vernetzten eingebetteten Systemen, die durch betriebliche Unabhangigkeit von Teilsystemen, geografische Trennung und emergentes Verhalten in einer sich standig verandernden Umgebung gekennzeichnet sind. Die Unterstutzung fur Echtzeitkommunikation ist fur viele Anwendungsbereiche wie medizinische, geschaftliche und militarische Systeme von entscheidender Bedeutung. Der dritte Beitrag der Dissertation ist ein konzeptionelles Modell und ein Planungsalgorithmus zur Unterstutzung von Echtzeitanforderungen in SoS. Die Suche nach einem realisierbaren Zeitplan wird schrittweise nach der Einfuhrung neuer Anwendungen im SoS berechnet. Die verteilte Berechnung des Zeitplans unter Verwendung der verschiedenen Teilsysteme berucksichtigt den Mangel an globalem Wissen und Kontrolle im SoS, wahrend gleichzeitig die Gesamtplanungszeit verringert wird. Gleichzeitige Terminierungsaktivitaten werden unterstutzt, um die unkoordinierte und moglicherweise gleichzeitige Einfuhrung mehrerer Anwendungen zu bewaltigen. Die Dissertation stellt auch ein Simulationsframework mit Echtzeit-Unterstutzung von SoS vor, das sowohl die High-Level-Planung als auch die Low-Level-Planung fur jedes Teilsystem unterstutzt. Ein Simulationsframework fur zeitgesteuertes Ethernet (TTEthernet) wurde um eine Scheduler-Schicht erweitert, um eine inkrementelle Planung unter Constituent System Managern (CSMs) durchzufuhren. Das Simulationsframework ermoglichte die Evaluierung der vorgeschlagenen Algorithmen hinsichtlich der Planbarkeit, der Laufzeit und der Worst-Case-Latenz fur zeitgesteuerte und ratenbeschrankte Nachrichten.

[1]  Hermann Kopetz,et al.  Real-time systems , 2018, CSC '73.

[2]  Mo M. Jamshidi,et al.  A Discrete Event XML based Simulation Framework for System of Systems Architectures , 2007, 2007 IEEE International Conference on System of Systems Engineering.

[3]  Kang G. Shin,et al.  Allocation of periodic task modules with precedence and deadline constraints in distributed real-time systems , 1992, [1992] Proceedings Real-Time Systems Symposium.

[4]  William J. Dally,et al.  Principles and Practices of Interconnection Networks , 2004 .

[5]  Andrew S. Tanenbaum,et al.  Distributed operating systems , 2009, CSUR.

[6]  M. Coppola,et al.  Spidergon: a novel on-chip communication network , 2004, 2004 International Symposium on System-on-Chip, 2004. Proceedings..

[7]  Hermann Kopetz,et al.  Transparent redundancy in the time-triggered architecture , 2000, Proceeding International Conference on Dependable Systems and Networks. DSN 2000.

[8]  Brian Randell,et al.  Fundamental Concepts of Dependability , 2000 .

[9]  Martin W. P. Savelsbergh,et al.  Integer-Programming Software Systems , 2005, Ann. Oper. Res..

[10]  Roman Obermaisser,et al.  A Cross-Domain Multiprocessor System-on-a-Chip for Embedded Real-Time Systems , 2010, IEEE Transactions on Industrial Informatics.

[11]  Brian J. Sauser,et al.  Modeling the characteristics of system of systems , 2009, 2009 IEEE International Conference on System of Systems Engineering (SoSE).

[12]  Jan Reineke,et al.  Impact of resource sharing on performance and performance prediction , 2013, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[13]  Francisco J. Cazorla,et al.  parMERASA -- Multi-core Execution of Parallelised Hard Real-Time Applications Supporting Analysability , 2013, 2013 Euromicro Conference on Digital System Design.

[14]  Alex Gorod,et al.  A systemic approach to managing risks of SoS , 2011, 2011 IEEE International Systems Conference.

[15]  Maurizio Palesi,et al.  Multi-objective design space exploration using genetic algorithms , 2002, Proceedings of the Tenth International Symposium on Hardware/Software Codesign. CODES 2002 (IEEE Cat. No.02TH8627).

[16]  Qiang Guo,et al.  Research on reliability optimization of weapon system based on heuristic arithmetic , 2011, 2011 International Conference on System science, Engineering design and Manufacturing informatization.

[17]  Carl E. Landwehr,et al.  Basic concepts and taxonomy of dependable and secure computing , 2004, IEEE Transactions on Dependable and Secure Computing.

[18]  Christof Paar,et al.  Secure In-Vehicle Communication , 2006 .

[19]  Javier Reina-Tosina,et al.  Smart Device for the Determination of Heart Rate Variability in Real Time , 2017, J. Sensors.

[20]  Andrew A. Chien,et al.  The future of microprocessors , 2011, Commun. ACM.

[21]  J. H. Lala,et al.  Architectural principles for safety-critical real-time applications , 1994, Proc. IEEE.

[22]  Krithi Ramamritham,et al.  Allocation and scheduling of complex periodic tasks , 1990, Proceedings.,10th International Conference on Distributed Computing Systems.

[23]  Martin L. Shooman,et al.  Reliability of Computer Systems and Networks: Fault Tolerance,Analysis,and Design , 2002 .

[24]  Mohammad Jamshidi,et al.  Systems of Systems Engineering: Principles and Applications , 2008 .

[25]  Roman Obermaisser,et al.  Scheduling and allocation of time-triggered and event-triggered services for multi-core processors with networks-on-a-chip , 2015, 2015 IEEE 13th International Conference on Industrial Informatics (INDIN).

[26]  Mark W. Maier,et al.  Architecting Principles for Systems‐of‐Systems , 1996 .

[27]  Jonathan P. Bowen The ethics of safety-critical systems , 2000, CACM.

[28]  R. Sanz,et al.  Fridges, elephants, and the meaning of autonomy and intelligence , 2000, Proceedings of the 2000 IEEE International Symposium on Intelligent Control. Held jointly with the 8th IEEE Mediterranean Conference on Control and Automation (Cat. No.00CH37147).

[29]  Jörg Henkel,et al.  A framework for estimation and minimizing energy dissipation of embedded HW/SW systems , 1998, DAC.

[30]  Miltos D. Grammatikakis,et al.  Design of Cost-Efficient Interconnect Processing Units , 2008 .

[31]  R.W. Butler,et al.  Design strategy for a formally verified reliable computing platform , 1991, COMPASS '91, Proceedings of the Sixth Annual Conference on Computer Assurance.

[32]  Azad M. Madni,et al.  Healthcare System of Systems , 2007, 2007 IEEE International Conference on System of Systems Engineering.

[33]  Guy Avni,et al.  Synthesizing time-triggered schedules for switched networks with faulty links , 2016, 2016 International Conference on Embedded Software (EMSOFT).

[34]  Doug Burger,et al.  Evaluating Future Microprocessors: the SimpleScalar Tool Set , 1996 .

[35]  Giorgio Buttazzo,et al.  Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications , 1997 .

[36]  Frank Vahid,et al.  Platune: a tuning framework for system-on-a-chip platforms , 2002, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[37]  J. Lewis,et al.  Scheduling Real-Time Tasks in Distributed Systems : A Survey , 1998 .

[38]  Andrea Zanella,et al.  Internet of Things for Smart Cities , 2014, IEEE Internet of Things Journal.

[39]  Roman Obermaisser,et al.  Optimal SAT-based scheduler for time-triggered networks-on-a-chip , 2015, 10th IEEE International Symposium on Industrial Embedded Systems (SIES).

[40]  Mahmut T. Kandemir,et al.  Energy-driven integrated hardware-software optimizations using SimplePower , 2000, Proceedings of 27th International Symposium on Computer Architecture (IEEE Cat. No.RS00201).

[41]  Roman Obermaisser,et al.  Validation Framework for Time-Triggered System-of-Systems , 2017, 2017 International Conference on Promising Electronic Technologies (ICPET).

[42]  Luís Almeida,et al.  Error recovery in time-triggered communication systems using servers , 2013, 2013 8th IEEE International Symposium on Industrial Embedded Systems (SIES).

[43]  Margaret Martonosi,et al.  Wattch: a framework for architectural-level power analysis and optimizations , 2000, Proceedings of 27th International Symposium on Computer Architecture (IEEE Cat. No.RS00201).

[44]  Roman Obermaisser,et al.  Computing optimal communication schedules for time-triggered networks using an SMT solver , 2016, 2016 11th IEEE Symposium on Industrial Embedded Systems (SIES).

[45]  Sudhakar Yalamanchili,et al.  Interconnection Networks: An Engineering Approach , 2002 .

[46]  Krishna M. Kavi Real-Time Systems, Abstractions, Languages, Design Methodologies, and Tools , 1992 .

[47]  A. Girault,et al.  Scheduling of real-time embedded systems under reliability and power constraints , 2012, 2012 IEEE International Conference on Complex Systems (ICCS).

[48]  Rajib Mall Real-Time Systems: Theory and Practice , 2009 .

[49]  Silviu S. Craciunas,et al.  SMT-based Task- and Network-level Static Schedule Generation for Time-Triggered Networked Systems , 2014, RTNS.

[50]  Roman Obermaisser,et al.  Incremental, Distributed, and Concurrent Scheduling in Systems-of-Systems with Real-Time Requirements , 2015, 2015 IEEE International Conference on Computer and Information Technology; Ubiquitous Computing and Communications; Dependable, Autonomic and Secure Computing; Pervasive Intelligence and Computing.

[51]  Kees Goossens,et al.  AEthereal network on chip: concepts, architectures, and implementations , 2005, IEEE Design & Test of Computers.

[52]  Victor P. Nelson Fault-tolerant computing: fundamental concepts , 1990, Computer.

[53]  Roman Obermaisser,et al.  A Fault Hypothesis for Integrated Architectures , 2006, 2006 International Workshop on Intelligent Solutions in Embedded Systems.

[54]  Morrie Gasser,et al.  Building a Secure Computer System , 1988 .

[55]  Roman Obermaisser,et al.  Simulation environment for Time-Triggered Ethernet , 2013, 2013 11th IEEE International Conference on Industrial Informatics (INDIN).

[56]  Ignacio E. Grossmann,et al.  Computational advances in solving Mixed Integer Linear Programming problems To Professor Sauro Pierucci for leadership in Process Systems Engineering , 2011 .

[57]  Imad Sanduka A modelling framework for systems-of-systems with real-time and reliability requirements , 2015 .

[58]  George Coulouris,et al.  Distributed systems - concepts and design , 1988 .

[59]  Roman Obermaisser,et al.  Scheduler for reliable distributed systems with time-triggered networks , 2017, 2017 IEEE 15th International Conference on Industrial Informatics (INDIN).

[60]  N. Jazdi,et al.  Cyber physical systems in the context of Industry 4.0 , 2014, 2014 IEEE International Conference on Automation, Quality and Testing, Robotics.

[61]  M. Taisch,et al.  Service-oriented architecture approach for industrial “System of Systems”: State-of-the-Art for Energy Management , 2012, IEEE 10th International Conference on Industrial Informatics.

[62]  Marco Laumanns,et al.  SPEA2: Improving the strength pareto evolutionary algorithm , 2001 .

[63]  J.A. Stankovic,et al.  Misconceptions about real-time computing: a serious problem for next-generation systems , 1988, Computer.

[64]  Brian J. Sauser,et al.  System of Systems - the meaning of of , 2006, 2006 IEEE/SMC International Conference on System of Systems Engineering.

[65]  Mathai Joseph,et al.  Real-time systems - specification, verification and analysis , 1995, Prentice Hall International series in computer science.

[66]  Rok Sosic,et al.  SNAP , 2016, ACM Trans. Intell. Syst. Technol..

[67]  Robert I. Davis,et al.  Static Probabilistic Timing Analysis for Multicore Processors with Shared Cache , 2013 .

[68]  Kamal Embedded Systems: Architecture, Programming and Design , 2006 .

[69]  Michael Paulitsch,et al.  Leveraging Multi-core Computing Architectures in Avionics , 2012, 2012 Ninth European Dependable Computing Conference.

[70]  K V Shibu Introduction to Embedded Systems , 2009 .

[71]  B. P. Zeigler,et al.  High autonomy systems: concepts and models , 1990, Proceedings [1990]. AI, Simulation and Planning in High Autonomy Systems.

[72]  Tullio Vardanega,et al.  Measurement-Based Probabilistic Timing Analysis and Its Impact on Processor Architecture , 2014, 2014 17th Euromicro Conference on Digital System Design.

[73]  Richard Zurawski,et al.  The Industrial Information Technology Handbook , 2004, The Industrial Information Technology Handbook.

[74]  Nandini Mukherjee,et al.  iHealth: A fuzzy approach for provisioning intelligent health-care system in smart city , 2014, 2014 IEEE 10th International Conference on Wireless and Mobile Computing, Networking and Communications (WiMob).