Power saving and fault-tolerance in real-time critical embedded systems

In this paper, a method with the double purpose of reducing the consumption of energy and giving a deterministic guarantee on the fault tolerance of real-time embedded systems operating under the Rate Monotonic discipline is presented. A lower bound exists on the slack left free by tasks being executed at their worst-case execution time. This deterministic slack can be redistributed and used for any of the two purposes. The designer can set the trade-off point between them. In addition, more slack can be reclaimed when tasks are executed in less than their worst-case time. Fault-tolerance is achieved by using the slack to recompute the faulty task. Energy consumption is reduced by lowering the operating frequency of the processor as much as possible while meeting all time-constraints. This leads to a multifrequency method; simulations are carried out to test it versus two single frequency methods (nominal and reduced frequencies). This is done under different trade-off points and rates of faults' occurrence. The existence of an upper bound on the overhead caused by the transition time between frequencies in Rate Monotonic scheduled real-time systems is formally proved. The method can also be applied to multicore or multiprocessor systems.

[1]  Rami G. Melhem,et al.  Dynamic and aggressive scheduling techniques for power-aware real-time systems , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[2]  Steve Goddard,et al.  A dynamic voltage scaling algorithm for sporadic tasks , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[3]  Giuseppe Lipari,et al.  Using resource reservation techniques for power-aware scheduling , 2004, EMSOFT '04.

[4]  Tajana Simunic,et al.  Server Controlled Power Management for Wireless Portable Devices , 2003 .

[5]  Rami G. Melhem,et al.  The interplay of power management and fault recovery in real-time systems , 2004, IEEE Transactions on Computers.

[6]  A. Singh Exponential Distribution: Theory, Methods and Applications , 1996 .

[7]  Jorge Santos,et al.  Rate Monotonic Scheduling in Hard Real-Time Systems , 1993, Inf. Process. Lett..

[8]  Gang Quan,et al.  Energy efficient fixed-priority scheduling for real-time systems on variable voltage processors , 2001, DAC '01.

[9]  Krithi Ramamritham,et al.  Preemptive Scheduling Under Time and Resource Constraints , 1987, IEEE Transactions on Computers.

[10]  John P. Lehoczky,et al.  The rate monotonic scheduling algorithm: exact characterization and average case behavior , 1989, [1989] Proceedings. Real-Time Systems Symposium.

[11]  Kang G. Shin,et al.  Real-time dynamic voltage scaling for low-power embedded operating systems , 2001, SOSP.

[12]  Wayne H. Wolf Embedded Computing - What Is Embedded Computing? , 2002, Computer.

[13]  Sanjoy K. Baruah,et al.  Greedy reclamation of unused bandwidth in constant-bandwidth servers , 2000, Proceedings 12th Euromicro Conference on Real-Time Systems. Euromicro RTS 2000.

[14]  Christian Poellabauer,et al.  Energy-aware traffic shaping for wireless real-time applications , 2004, Proceedings. RTAS 2004. 10th IEEE Real-Time and Embedded Technology and Applications Symposium, 2004..

[15]  Rami G. Melhem,et al.  Scheduling with dynamic voltage/speed adjustment using slack reclamation in multi-processor real-time systems , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[16]  R. Obenza,et al.  Rate monotonic analysis for real-time systems , 1993, Computer.

[17]  Kymie M. C. Tan,et al.  Anomaly Detection in Embedded Systems , 2002, IEEE Trans. Computers.

[18]  Jorge Santos,et al.  A least upper bound on the fault tolerance of real-time systems , 2005, J. Syst. Softw..

[19]  Johan Pouwelse,et al.  Dynamic voltage scaling on a low-power microprocessor , 2001, MobiCom '01.

[20]  Narayanan Vijaykrishnan,et al.  Reliability concerns in embedded system designs , 2006, Computer.

[21]  D. Geer,et al.  Chip makers turn to multicore processors , 2005, Computer.

[22]  Jorge Santos,et al.  New methods for redistributing slack time in real-time systems: applications and comparative evaluations , 2004, J. Syst. Softw..

[23]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[24]  Edward A. Lee Absolutely Positively on Time: What Would It Take? , 2005, Computer.

[25]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[26]  Krishnendu Chakrabarty,et al.  Energy-Aware Fault Tolerance in Fixed-Priority Real-Time Embedded Systems , 2003, ICCAD 2003.

[27]  Jason Flinn,et al.  Energy-aware adaptation for mobile applications , 1999, SOSP.

[28]  Ricardo Cayssials,et al.  Design of a learning fuzzy production system to solve an NP-hard real-time assignment problem , 1996, Proceedings of the Eighth Euromicro Workshop on Real-Time Systems.

[29]  Alan Burns,et al.  Allocating hard real-time tasks: An NP-Hard problem made easy , 1992, Real-Time Systems.

[30]  Ragunathan Rajkumar,et al.  Practical voltage-scaling for fixed-priority RT-systems , 2003, The 9th IEEE Real-Time and Embedded Technology and Applications Symposium, 2003. Proceedings..

[31]  Sheng Cheng,et al.  Scheduling Groups of Tasks in Distributed Hard Real-Time Systems , 1987 .

[32]  Mathai Joseph,et al.  Finding Response Times in a Real-Time System , 1986, Comput. J..

[33]  Sanjoy K. Baruah,et al.  Static-priority scheduling on multiprocessors , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[34]  Israel Koren,et al.  Towards energy-aware software-based fault tolerance in real-time systems , 2002, ISLPED '02.

[35]  Rami G. Melhem,et al.  Determining optimal processor speeds for periodic real-time tasks with different power characteristics , 2001, Proceedings 13th Euromicro Conference on Real-Time Systems.

[36]  Jia Xu,et al.  Multiprocessor Scheduling of Processes with Release Times, Deadlines, Precedence, and Exclusion Relations , 1993, IEEE Trans. Software Eng..

[37]  Aloysius Ka-Lau Mok,et al.  Fundamental design problems of distributed systems for the hard-real-time environment , 1983 .

[38]  Sanjoy K. Baruah,et al.  Energy-aware Implementation of Hard-real-time Systems upon Multiprocessor Platforms , 2003, PDCS.