Presentation on theme: "Designing a Processor from the Ground Up to Allow Voltage/Reliability Tradeoffs Andrew Kahng (UCSD) Seokhyeong Kang (UCSD) Rakesh Kumar (Illinois) John."— Presentation transcript:
Designing a Processor from the Ground Up to Allow Voltage/Reliability Tradeoffs Andrew Kahng (UCSD) Seokhyeong Kang (UCSD) Rakesh Kumar (Illinois) John Sartori (Illinois)
Timing Errors Power is a first-order design constraint Voltage scaling can significantly reduce power Voltage scaling may result in timing errors Operating Voltage
Research Questions How does a conventional processor behave when we fix frequency and scale down voltage? How can we reduce the voltage at which timing errors are observed? Reduce power while maintaining the same performance level
Limitation of Voltage Scaling At some voltage, circuit breaks down Voltage scaling must halt after only 10% scaling.
Limitation of Voltage Scaling Error Rate (%) Module1.0V0.9V0.8V0.7V0.6V0.5V lsu_dctl0.000.238.6029.4645.1354.90 lsu_qctl10.005.9410.8516.9916.5637.53 lsu_stb_ctl0.000.080.655.1911.7922.38 sparc_exu_div0.000.150.230.350.491.10 sparc_exu_ecl0.003.3110.9787.0888.9373.03 sparc_ifu_dec0.000.080.877.0915.2220.48 sparc_ifu_errdp0.00 9.21 sparc_ifu_fcl0.0010.5622.2550.0455.0656.95 spu_ctl0.00 1.302.9635.53 tlu_mmu_ctl0.000.010.020.060.140.19 What problems are caused by steep error degradation?
Problems with Steep Error Degradation Voltage scaling limited in traditional designs.
No power savings as error rate increases Traditional design No reliability/power tradeoff Problems with Steep Error Degradation
Why do circuits fail catastrophically? Reliability/power tradeoffs enabled Allows switching between error tolerance techniques at different voltages/error rates Higher error rate Lower power Problems with Steep Error Degradation
Reason for Steep Error Degradation Critical paths are bunched up in traditional designs.
Question… How can we change the slack distribution to achieve a graceful failure characteristic?
Power-optimized design: Reclaim excess timing slack Make slack distribution gradual by re-distributing slack between paths. Both gradual failure and low power can be achieved. Slack-optimized design: Optimize critical paths Design Objectives and Insight Optimize frequently exercised critical paths. De-optimize rarely exercised paths.
Proposed Design Flow Voltage Scaling Path Optimization Area Reduction Input: RTL description Output: Gradual slack design Objective: Minimize voltage for a given error rate over a range of error rates
Using fixed target results in over-optimization.Iterative optimization avoids unnecessary swaps. Iterative Optimization
Functional simulation Cadence NC Verilog – Gate-level simulation Library characterization Cadence SignalStorm – Synopsys Liberty generation for each voltage Slack Optimization C++ with Synopsys PrimeTime interface ECO P&R Cadence SOCEncounter – Placement and Routing Benchmark generation Virtutech Simics – Test vector generation Design-level Methodology
Gradual Slack Distribution Slack optimization achieves gradual slack distribution.
Processor Module Optimization Slack optimized design has lowest power for all error rates.
Processor Error Rate and Power Designs with comparable error rates have much higher power/area overheads.
Reliability/Power Tradeoff Slack-optimized design enjoys continued power reduction as error rate increases.
Enhancing Razor-based Design Slack optimization extends range of voltage scaling and reduces Razor recovery cost.
Summary and Conclusion Showed limitations of traditional processors w.r.t. voltage scaling Traditional designs break down Presented design technique that enables voltage/reliability tradeoffs Optimize frequently exercised critical paths De-optimize rarely-exercised paths Demonstrated significant power benefits of gradual slack design Reduced power 29% for 2% error rate, 27% on average
Slack Optimization Techniques Path Optimization and Power Reduction
Extended Voltage Scaling Focus on frequently exercised negative slack paths Reduce error rate while minimizing cell swaps (power overhead) PathTGOpt. Rank A-B-C-D0.221 A-B-D0.152 A-C-D0.053 Rank paths by error rate contribution.Upsize cells in paths to increase slack. SWAP
Power Reduction Downsize cells on rarely exercised paths Reduce leakage power while leaving error rate unaffected SWAP Toggle Rate ≈ 0 Check Path Slack
Error Rate Forecasting Error rate contribution of one FF Error rate of design
Significance of Processor Power Power is a first-order design constraint Voltage scaling can significantly reduce power Voltage Scaling: 50% Power Reduction: 80%
DVFS Benefit and Cost How effective is voltage scaling when frequency is fixed?
Alternatives – Blueshift Goal: Optimize paths that cause errors to enable more frequency overscaling Techniques: PCT/OSB Uses iterative simulation loop – infeasible for large designs
Alternatives – Tightly Constrained SP&R Goal: Optimize all paths aggressively Technique: Traditional SP&R with aggressive target Some paths will not meet tight constraint, and slack distribution becomes more gradual
Insight Optimize frequently exercised paths at the expense of rarely exercised paths Optimizing frequently exercised paths enables deeper voltage scaling De-optimizing rarely exercised paths keeps power overhead low