Optimizing the Software Architecture for Extensibility in Hard Real-Time Distributed Systems

We consider a set of control tasks that must be executed on distributed platforms so that end-to-end latencies are within deadlines. We investigate how to allocate tasks to nodes, pack signals to messages, allocate messages to buses, and assign priorities to tasks and messages, so that the design is extensible and robust with respect to changes in task requirements. We adopt a notion of extensibility metric that measures how much the execution times of tasks can be increased without violating end-to-end deadlines. We optimize the task and message design with respect to this metric by adopting a mathematical programming front-end followed by postprocessing heuristics. The proposed algorithm as applied to industrial strength test cases shows its effectiveness in optimizing extensibility and a marked improvement in running time with respect to an approach based on randomized optimization.

[1]  A. Burns,et al.  Scheduling hard real-time systems: a review , 1991, Softw. Eng. J..

[2]  Wei Zheng,et al.  Definition of Task Allocation and Priority Assignment in Hard Real-Time Distributed Systems , 2007, RTSS 2007.

[3]  J. Javier Gutiérrez,et al.  Optimized priority assignment for tasks and messages in distributed hard real-time systems , 1995, Proceedings of Third Workshop on Parallel and Distributed Real-Time Systems.

[4]  Alberto L. Sangiovanni-Vincentelli,et al.  Period Optimization for Hard Real-time Distributed Automotive Systems , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[5]  Alberto L. Sangiovanni-Vincentelli,et al.  Platform-Based Design and Software Design Methodology for Embedded Systems , 2001, IEEE Des. Test Comput..

[6]  Ramesh Yerraballi,et al.  Scalability in real-time systems with end-to-end requirements , 1996, J. Syst. Archit..

[7]  Weijia Jia,et al.  Rendezvous Planning in Mobility-Assisted Wireless Sensor Networks , 2007, RTSS 2007.

[8]  Alan Burns,et al.  Controller Area Network (CAN) schedulability analysis: Refuted, revisited and revised , 2007, Real-Time Systems.

[9]  Wei Zheng,et al.  Definition of Task Allocation and Priority Assignment in Hard Real-Time Distributed Systems , 2007, 28th IEEE International Real-Time Systems Symposium (RTSS 2007).

[10]  Christer Norström,et al.  Frame packing in real-time communication , 2000, Proceedings Seventh International Conference on Real-Time Computing Systems and Applications.

[11]  Christian Herde,et al.  RTSAT-- An Optimal and Efficient Approach to the Task Allocation Problem in Distributed Architectures , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[12]  Rolf Ernst,et al.  Methods for multi-dimensional robustness optimization in complex embedded systems , 2007, EMSOFT '07.

[13]  Martin Lukasiewycz,et al.  FlexRay schedule optimization of the static segment , 2009, CODES+ISSS '09.

[14]  Ehl Emile Aarts,et al.  Simulated annealing and Boltzmann machines , 2003 .

[15]  Rolf Ernst,et al.  Multi-dimensional Robustness Optimization in Heterogeneous Distributed Embedded Systems , 2007, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[16]  Ieee Xplore,et al.  IEEE Transactions on Industrial Informatics , 2005 .

[17]  Giorgio C. Buttazzo,et al.  Sensitivity Analysis for Fixed-Priority Real-Time Systems , 2006, ECRTS.

[18]  Alan Burns,et al.  Hard Real-Time Scheduling: The Deadline-Monotonic Approach , 1991 .

[19]  Petru Eles,et al.  Design optimization of mixed time/event-triggered distributed embedded systems , 2003, First IEEE/ACM/IFIP International Conference on Hardware/ Software Codesign and Systems Synthesis (IEEE Cat. No.03TH8721).

[20]  Iain Bate,et al.  Incorporating Scenarios And Heuristics To Improve Flexibility In Real-Time Embedded Systems , 2006, 12th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'06).

[21]  Rolf Ernst,et al.  A formal approach to robustness maximization of complex heterogeneous embedded systems , 2006, Proceedings of the 4th International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS '06).

[22]  John P. Lehoczky,et al.  Timing Analysis for Fixed-Priority Scheduling of Hard Real-Time Systems , 1994, IEEE Trans. Software Eng..

[23]  Rolf Ernst,et al.  Applying Sensitivity Analysis in Real-Time Distributed Systems , 2005, IEEE Real-Time and Embedded Technology and Applications Symposium.

[24]  Aloysius K. Mok,et al.  Non-preemptive robustness under reduced system load , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).