DESIGNING RELIABLE MICROARCHITCTRURES ACCORDING TO APPLICATION REQUIREMENTS
Abstract
One of the most important factors to consider when designing a new computer architecture besides
cost, energy consumption and performance is reliability. Reliability looks into how often the
computer produces the correct results and when it’s expected to fail (Mean time to failure).
Reliability heavily affects all the other factors such as cost, area and performance and therefore a
careful tradeoff has to be made between reliability and the other factors.
One factor that has come into play recently is application requirement. The need for more
computing power by applications has been increasing. Because of this, designers have designed
much more powerful and sophisticated architectures putting millions of transistors into a single
chip and more recently increasing the number of chips. However, this has increased the likelihood
of failures occurring. A study of these failures and the reliability of this microarchitectures is
therefore required.
In this study, we investigate the reliability of current micro architectures for different applications
and further propose reliable microarchitectures for those applications or mechanisms to adjust
reliability parameters based on the application. We mostly focus on fault tolerance as a reliability
parameter.