Dergiler / Turkish Journal of Electrical Engineering and Computer Sciences / 2019 / Cilt: 27 - Sayı: 4

Energy-efficient scheduling for real-time tasks using dynamic slack reclamation

Sayfa
2746–2754
DOI
—

Abstract

The application domains of portable embedded real-time systems range from safety-critical applications likeelectronic control units in the automotive sector to entertainment applications like digital cameras and setup boxes inthe consumer electronics sector. These systems attract users with multiple and sophisticated functionalities in a singlesystem. The developments in VLSI technology have enabled IC manufacturers to incorporate more features in a singledie, which facilitates these multipurpose systems. The increase in features and functionalities has a direct impact onpower consumption and has to be strictly accounted for in the design of these embedded systems. The possibility ofachieving low power consumption is obtained by using only effective software techniques along with the hardware powersaving methods. The dynamic power management techniques with the support of real-time operating systems (RTOSs)provided in recent microcontrollers enable better power management using software control. The scheduling of tasksin real-time systems is based on the worst-case execution time (WCET), whereas tasks based on their environmentalconditions may complete their execution before the WCET. This leads to increased laxity (slack time) and reducedutilization of the CPU. This paper proposes Fixed Window DynaClam, a dynamic reclamation algorithm, to effectivelyutilize slack time. The clock frequency of the processor is slowed down by reclaiming the available slack time to reducethe energy consumption. The Fixed Window DynaClam algorithm is implemented for nonpreemptive periodic tasks inthe controllers with dynamic voltage and frequency scaling power management features. The novelty of the algorithmis that the clock frequency is not only adjusted based on the real-time demands of the tasks but also does not overloadthe kernel of the RTOS as the complexity is on the lower side.