29.01.2015 Views

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 33<br />

ADAPTIVE CHECKPOINTING WITH<br />

DYNAMIC VOLTAGE SCALING IN EMBEDDED<br />

REAL-TIME SYSTEMS<br />

Ying Zhang and Krishnendu Chakrabarty<br />

Department of Electrical & Computer Engineering, Duke University, Durham, NC 27708, USA<br />

Abstract. We present an integrated approach that provi<strong>de</strong>s fault tolerance and dynamic power<br />

management <strong>for</strong> a real-time task executing in an embed<strong>de</strong>d system. Fault tolerance is achieved<br />

through an adaptive checkpointing scheme that dynamically adjusts the checkpointing interval<br />

during task execution. Adaptive checkpointing is then combined with a dynamic voltage scaling<br />

scheme to achieve power reduction. Finally, we <strong>de</strong>velop an adaptive checkpointing scheme <strong>for</strong><br />

a set of multiple tasks in real-time systems. Simulation results show that compared to previous<br />

methods, the proposed approach significantly reduces power consumption and increases the<br />

likelihood of timely task completion in the presence of faults.<br />

Key words: dynamic voltage scaling, fault tolerance, low power, on-line checkpointing<br />

1. INTRODUCTION<br />

<strong>Embed<strong>de</strong>d</strong> systems often operate in harsh environmental conditions that necessitate<br />

the use of fault-tolerant computing techniques to ensure <strong>de</strong>pendability.<br />

These systems are also severely energy-constrained since system lifetime is<br />

<strong>de</strong>termined to a large extent by the battery lifetime. In addition, many<br />

embed<strong>de</strong>d systems execute real-time applications that require strict adherence<br />

to task <strong>de</strong>adlines [1].<br />

Dynamic voltage scaling (DVS) has emerged as a popular solution to the<br />

problem of reducing power consumption during system operation [2–4]. Many<br />

embed<strong>de</strong>d processors are now equipped with the ability to dynamically scale<br />

the operating voltage. Fault tolerance is typically achieved in real-time systems<br />

through on-line fault <strong>de</strong>tection [5], checkpointing and rollback recovery [6];<br />

see Figure 33-1. At each checkpoint, the system saves its state in a secure<br />

<strong>de</strong>vice. When a fault is <strong>de</strong>tected, the system rolls back to the most recent<br />

checkpoint and resumes normal execution.<br />

Checkpointing increases task execution time and in the absence of faults,<br />

it might cause a missed <strong>de</strong>adline <strong>for</strong> a task that completes on time without<br />

checkpointing. In the presence of faults however, checkpointing can increase<br />

the likelihood of a task completing on time with the correct result. There<strong>for</strong>e,<br />

the checkpointing interval, i.e., duration between two consecutive checkpoints,<br />

449<br />

A Jerraya et al. (eds.), <strong>Embed<strong>de</strong>d</strong> <strong>Software</strong> <strong>for</strong> SOC, 449–463, 2003.<br />

© 2003 Kluwer Aca<strong>de</strong>mic Publishers. Printed in the Netherlands.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!