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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Software</strong> Architectural Trans<strong>for</strong>mations 481<br />

Table 34-1. Experimental results showing the energy impact of software architectural<br />

trans<strong>for</strong>mations.<br />

Example<br />

Original<br />

Energy<br />

(mJ)<br />

# proc<br />

# ipc<br />

Optimized<br />

Energy<br />

(mJ)<br />

# proc<br />

# ipc<br />

% Energy<br />

reduction<br />

Aware<br />

Headphone<br />

Vcam<br />

Climate<br />

Navigator<br />

ATR<br />

12.956<br />

1.668<br />

1.572<br />

0.239<br />

1.659<br />

6.940<br />

8<br />

6<br />

4<br />

4<br />

5<br />

4<br />

11<br />

8<br />

5<br />

5<br />

7<br />

7<br />

8.204<br />

1.461<br />

1.375<br />

0.081<br />

1.456<br />

6.199<br />

7<br />

3<br />

2<br />

2<br />

3<br />

3<br />

9<br />

2<br />

1<br />

1<br />

3<br />

4<br />

36.7%<br />

12.4%<br />

12.5%<br />

66.1%<br />

12.2%<br />

10.7%<br />

sents the initial software architecture <strong>for</strong> this program is shown in Figure<br />

34-11(a). Explanation of the annotations in the figure were provi<strong>de</strong>d in Section<br />

3.2. For the purpose of illustration, we consi<strong>de</strong>r this program to execute un<strong>de</strong>r<br />

the embed<strong>de</strong>d Linux OS. Edges coming from the hardware <strong>de</strong>vices (indicated<br />

as empty square boxes) indicate the data flow from the <strong>de</strong>vices to the<br />

application processes, and are implemented using read() system calls in<br />

Linux. Some of these reads are blocking, indicated by a small square box at<br />

the tip of the arrow.<br />

The initial software architecture program co<strong>de</strong> is written in C. The energy<br />

consumption statistics of this program are obtained by running it in the energy<br />

simulation framework EMSIM [24]. Un<strong>de</strong>r the initial software architecture,

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

Saved successfully!

Ooh no, something went wrong!