• DocumentCode
    1220208
  • Title

    Using Underutilized CPU Resources to Enhance Its Reliability

  • Author

    Timor, Avi ; Mendelson, Avi ; Birk, Yitzhak ; Suri, Neeraj

  • Author_Institution
    Electr. Eng. Dept., Technion - Israel Inst. of Technol., Haifa, Israel
  • Volume
    7
  • Issue
    1
  • fYear
    2010
  • Firstpage
    94
  • Lastpage
    109
  • Abstract
    Soft errors (or transient faults) are temporary faults that arise in a circuit due to a variety of internal noise and external sources such as cosmic particle hits. Though soft errors still occur infrequently, they are rapidly becoming a major impediment to processor reliability. This is due primarily to processor scaling characteristics. In the past, systems designed to tolerate such faults utilized costly customized solutions, entailing the use of replicated hardware components to detect and recover from microprocessor faults. As the feature size keeps shrinking and with the proliferation of multiprocessor on die in all segments of computer-based systems, the capability to detect and recover from faults is also desired for commodity hardware. For such systems, however, performance and power constitute the main drivers, so the traditional solutions prove inadequate and new approaches are required. We introduce two independent and complementary microarchitecture-level techniques: double execution and double decoding. Both exploit the typically low average processor resource utilization of modern processors to enhance processor reliability. double execution protects the out-of-order part of the CPU by executing each instruction twice. Double decoding uses a second, low-performance low-power instruction decoder to detect soft errors in the decoder logic. These simple-to-implement techniques are shown to improve the processor´s reliability with relatively low performance, power, and hardware overheads. Finally, the resulting ??excessive?? reliability can even be traded back for performance by increasing clock rate and/or reducing voltage, thereby improving upon single execution approaches.
  • Keywords
    circuit reliability; fault tolerance; microprocessor chips; complementary microarchitecture-level techniques; computer-based systems; double decoding; double execution; fault tolerance; internal noise; microprocessor faults; processor reliability; soft error detection; transient faults; underutilized CPU resources; voltage reduction; Double Execution; Fault tolerance; Micro-architecture; Soft Errors; Superscalar; Transient faults; double execution.; fault tolerance; microarchitecture; soft errors; superscalar;
  • fLanguage
    English
  • Journal_Title
    Dependable and Secure Computing, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1545-5971
  • Type

    jour

  • DOI
    10.1109/TDSC.2008.31
  • Filename
    4522564