1 / 14

Analysis of Instruction-level Vulnerability to Dynamic Voltage and Temperature Variations

Analysis of Instruction-level Vulnerability to Dynamic Voltage and Temperature Variations. Abbas Rahimi ‡ , Luca Benini † , Rajesh Gupta ‡. ‡ Computer Science and Engineering, UC San Diego. † Dipartimento di Elettronica, Informatica e Sistemistica, Università di Bologna. http:// mesl.ucsd.edu.

wiley
Download Presentation

Analysis of Instruction-level Vulnerability to Dynamic Voltage and Temperature Variations

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Analysis of Instruction-level Vulnerability to Dynamic Voltage and Temperature Variations Abbas Rahimi‡, Luca Benini†, Rajesh Gupta‡ ‡Computer Science and Engineering, UC San Diego †Dipartimento di Elettronica, Informatica e Sistemistica, Università di Bologna http://mesl.ucsd.edu http://variability.org http:// micrel.deis.unibo.it

  2. Outline • Dynamic variations • Dynamic variability among pipeline stages • Methodology and quantifying instruction-level vulnerability (ILV) • Classification of instructions • Adaptive clock scaling utilizing ILV • Conclusion

  3. Motivation: Increasing Dynamic Variations • Increasing dynamic environmental variations in ambient condition such as temperature fluctuations and supply voltage droops. • Dynamic Variations contain high-frequency and low-frequency components which occur locally as well as globally across the die.

  4. Instruction is a bridge to software side HW  SW  Voltage Temperature Instruction Compiler Aging What will be happened for instructions when we have dynamic voltage and temperature variations? Process

  5. Quantifying effects of operating conditions • We analyze the effect of a full range of operating conditions on the performance and power of the LEON-3 ‎processor compliant with the SPARC V8 architecture. Critical path (ns) • Specifically, we used a temperature range of -40°C−125°C, and a voltage range of 0.72V−1.1V. • Dynamic variations cause the critical path delay to increase by a factor of 6.1X. Consequently, a large conservative guard-band into the operating frequency is needed to ensure the error-free operation in presence of the dynamic variations.

  6. Variability among pipeline stages T= 125°C The execute and memory parts are very sensitive to voltage and temperature variations, and also exhibit a large number of critical paths in comparison to the rest of processor. Similarly, we anticipate that the instructions that significantly exercise the execute and memory stages are likely to be more vulnerable to voltage and temperature variations Instruction-level Vulnerability (ILV) VDD= 1.1V

  7. Methodology for ISA-level Vulnerability Voltage variation SPARC V8 instructions with random operands Temperature variation Post-Synthesis Simulation for 32-bit RISC Leon3 Processor Probability of failure( PoF) for every instruction @ different (Voltage, Temperature, Frequency)  ILV to dynamic variations

  8. Quantifying ILV • To quantify the ILV to voltage and temperature variations, we define the probability of failure (PoF) for each instructioni • where Ni is the total number of clock cycles in Monte Carlo simulation which takes to execute instructioni with random operands • Violationj indicates whether there is a violated stage at clock cyclej or not (If any of the analyzed stages has one or more violated flip-flop at clock cyclej, we consider that stage as a violated stage at cyclej)

  9. Classification of instructions, cont. Probability of failure of ISA at 0.88V, while varying temperature • Instructions are partitioned into three main classes: 1st Logical & arithmetic; 2nd Memory; 3rd Multiply & divide. • The 1st class shows an abrupt behavior when the clock cycle is slightly varied, mainly because the path distribution of the exercised part by this class is such that most of the paths have the same length, then we have a all-or-nothing effect, which implies that either all instructions within this class fail or all make it. 1st 2nd 3rd

  10. Classification of instructions Probability of failure of ISA at 0.72V, while varying temperature All instruction classes act similarly across the wide range of operating conditions: as the cycle time increases gradually, the PoF becomes 0, firstly for the 1st class, then for the 2nd class, and finally for the 3rd class: PoF (3rd Class) ≥ PoF (2nd Class) ≥ PoF (1st Class)

  11. Adaptive clock scaling utilizing ILV • We define an adaptive clock cycle for each class of instructions to mitigate the conservative guard-banding, not only within a fix process corner, but also across corners. • The ILV a valuable mechanism to alleviate the guard-banding: • within a fixed corner, by acquiring the knowledge about which classof instructions is running, the processor can adapt the guard-banding accordingly. • across every corner, processor adjusts its guard-banding by using a low-overhead variability observer . • Therefore, adaptive clock scaling can decide on the clock speed of the processor at a very fine grain: • just looking at the fetched instructions and keeping track of their entry into the stages of the pipeline • and at the same time monitoring the current corner with a low-overhead monitoring hardware.

  12. Effectiveness of Adaptive clock scaling This figure shows how a procedure consists of various classes of instructions can benefit by this technique under different operating conditions: the performance improvement when processor runs a procedure only consists of specific classes, in comparison to the traditional worst-case design.

  13. Conclusion • The concept of instruction-level vulnerability to dynamic voltage and temperature variations is defined. • Based on that, all exercised instruction in the integer pipeline of LEON-3 are partitioned into three classes for the full range of operating condition: • (i) the logical and arithmetic instructions • (ii) the memory instructions • (iii) the multiply and divide instructions. • Leveraging this classification in conjunction with less intrusive variability observers, not only provides us a great opportunity to enhance processor performance by 1.1X-5.5X, in TSMC 65nm technology.

  14. Thank you! http://variability.org http://mesl.ucsd.edu http:// micrel.deis.unibo.it

More Related