Towards the design of fault-tolerant mixed-criticality systems on multicores

Mixed-criticality is a significant recent trend in the embedded system industry, where common computing platforms are utilized to host functionalities of varying criticality levels. To date, most scheduling techniques have focused on the timing aspect of this problem, while functional safety (i.e. fault-tolerance) is often neglected. This paper presents design methodologies to guarantee both safety and schedulability for real-time mixed-criticality systems on identical multicores. Assuming hardware/software transient errors, we model safety requirements on different criticality levels explicitly according to safety standards; based on this, we further propose fault-tolerant mixed-criticality scheduling techniques with task replication and re-execution to enhance system safety. To cope with runtime urgencies where critical tasks do not succeed after a certain number of trials, our techniques can perform system reconfigurations (task killing or service degradation) in those situations to reallocate system resources to the critical tasks. Due to explicit modeling of safety, we can quantify the impact of task killing and service degradation on system feasibility (safety and schedulability), enabling a rigorous design. To this end, we derive analysis techniques when reconfigurations are triggered either globally (synchronously) on all cores or locally (asynchronously) on each core. To our best knowledge, this is the first work on fault-tolerant mixed-criticality scheduling on multicores, matching theoretical insights with industrial safety standards. Our proposed techniques are validated with an industrial application and extensive simulations.

[1]  Hoyt Lougee,et al.  SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS AND EQUIPMENT CERTIFICATION , 2001 .

[2]  Sanjoy K. Baruah,et al.  Load-based schedulability analysis of certifiable mixed-criticality systems , 2010, EMSOFT '10.

[3]  Alan Burns,et al.  A Wormhole NoC Protocol for Mixed Criticality Systems , 2014, 2014 IEEE Real-Time Systems Symposium.

[4]  Patrick Graydon,et al.  Safety Assurance Driven Problem Formulation for Mixed-Criticality Scheduling , 2013, RTSS 2013.

[5]  Alois Knoll,et al.  A framework for reliability-aware design exploration on MPSoC based systems , 2012, Design Automation for Embedded Systems.

[6]  Sanjoy K. Baruah,et al.  Mixed-Criticality Scheduling of Sporadic Task Systems , 2011, ESA.

[7]  Alan Burns,et al.  Mixed Criticality on Controller Area Network , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[8]  Lothar Thiele,et al.  Scheduling of mixed-criticality applications on resource-sharing multicore systems , 2013, 2013 Proceedings of the International Conference on Embedded Software (EMSOFT).

[9]  Lothar Thiele,et al.  An Isolation Scheduling Model for Multicores , 2015, 2015 IEEE Real-Time Systems Symposium.

[10]  Goldberg,et al.  Genetic algorithms , 1993, Robust Control Systems with Genetic Algorithms.

[11]  Shuhei Yamashita,et al.  Introduction of ISO 26262 'Road vehicles-Functional safety' , 2012 .

[12]  Lui Raymond Sha Resilient mixed-criticality systems , 2009 .

[13]  Lothar Thiele,et al.  On the scheduling of fault-tolerant mixed-criticality systems , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[14]  Sanjoy K. Baruah,et al.  The Preemptive Uniprocessor Scheduling of Mixed-Criticality Implicit-Deadline Sporadic Task Systems , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[15]  Sanjoy K. Baruah,et al.  Schedulability Analysis of Sporadic Tasks with Multiple Criticality Specifications , 2008, 2008 Euromicro Conference on Real-Time Systems.

[16]  Soonhoi Ha,et al.  Static mapping of mixed-critical applications for fault-tolerant MPSoCs , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[17]  Christian Prehofer,et al.  Towards runtime adaptation in AUTOSAR , 2013, SIGBED.

[18]  Lui Sha,et al.  Memory Access Control in Multiprocessor for Real-Time Systems with Mixed Criticality , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[19]  Sanjoy K. Baruah,et al.  Mixed-criticality scheduling on multiprocessors , 2013, Real-Time Systems.

[20]  Soontae Kim,et al.  Dynamic scheduling algorithm and its schedulability analysis for certifiable dual-criticality systems , 2011, 2011 Proceedings of the Ninth ACM International Conference on Embedded Software (EMSOFT).

[21]  Simon Brown,et al.  Overview of IEC 61508. Design of electrical/electronic/programmable electronic safety-related systems , 2000 .

[22]  S. Brown Overview of IEC 61508 , 2002 .

[23]  Wang Yi,et al.  Outstanding Paper Award: Bounding and Shaping the Demand of Mixed-Criticality Sporadic Tasks , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[24]  Sanjoy K. Baruah,et al.  Mixed-Criticality Real-Time Scheduling for Multicore Systems , 2010, 2010 10th IEEE International Conference on Computer and Information Technology.

[25]  Laurent George,et al.  Relaxing Mixed-Criticality Scheduling Strictness for Task Sets Scheduled with FP , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[26]  Steve Vestal,et al.  Preemptive Scheduling of Multi-criticality Systems with Varying Degrees of Execution Time Assurance , 2007, 28th IEEE International Real-Time Systems Symposium (RTSS 2007).

[27]  Robert I. Davis,et al.  Mixed Criticality Systems - A Review , 2015 .

[28]  Markus Peloquin A Comparison of Scheduling Algorithms for Multiprocessors , 2010 .

[29]  Lothar Thiele,et al.  Mapping mixed-criticality applications on multi-core architectures , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[30]  Nuno Pereira,et al.  Static-Priority Scheduling over Wireless Networks with Multiple Broadcast Domains , 2007, RTSS 2007.