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.

374 Chapter 28<br />

scales down into the <strong>de</strong>ep-submicron (DSM) domain, <strong>de</strong>vices and interconnect<br />

are subject to new types of malfunctions and failures that are har<strong>de</strong>r to<br />

predict and avoid with the current <strong>SoC</strong> <strong>de</strong>sign methodologies. These new types<br />

of failures are impossible to characterize using <strong>de</strong>terministic measurements<br />

so, in the near future, probabilistic metrics, such as average values and<br />

variance, will be nee<strong>de</strong>d to quantify the critical <strong>de</strong>sign objectives, such as<br />

per<strong>for</strong>mance and power [10, 11].<br />

Relaxing the requirement of 100% correctness in operation drastically<br />

reduces the costs of <strong>de</strong>sign but, at the same time, requires <strong>SoC</strong>s be <strong>de</strong>signed<br />

with some <strong>de</strong>gree of system-level fault-tolerance [12]. Distributed computing<br />

has <strong>de</strong>alt with fault-tolerance <strong>for</strong> a long time; un<strong>for</strong>tunately most of those<br />

algorithms are unlikely to be useful, because they need significant resources<br />

which are not easily available on-chip. Furthermore, classic networking protocols,<br />

as the Internet Protocol or the ATM Layer [13], need retransmissions<br />

in or<strong>de</strong>r to <strong>de</strong>al with incorrect data, thus significantly increasing the latency.<br />

Generally, simple <strong>de</strong>terministic algorithms do not cope very well with random<br />

failures [14]. On the other hand, the cost of implementing full-blown adaptive<br />

routing [15] <strong>for</strong> NoCs is prohibitive because of the need of very large buffers,<br />

lookup tables and complex shortest-path algorithms.<br />

To address these unsolved problems, the present chapter introduces a new<br />

communication paradigm called on-chip stochastic communication. This is<br />

similar, but not i<strong>de</strong>ntical, to the proliferation of an epi<strong>de</strong>mic in a large<br />

population [16]. This analogy explains intuitively the high per<strong>for</strong>mance and<br />

robustness of this protocol in the presence of failures. More precisely, we place<br />

ourselves in a NoC context (see Figure 28-1), where the IPs communicate<br />

using a probabilistic broadcast scheme, known as stochastic communication<br />

[4]. If a tile has a packet to send, it will <strong>for</strong>ward the packet to a randomly

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

Saved successfully!

Ooh no, something went wrong!