340 likes | 460 Vues
ELEC 5270/6270 Spring 2009 Low-Power Design of Electronic Circuits Power Analysis and Process Variation. Vishwani D. Agrawal James J. Danaher Professor Dept. of Electrical and Computer Engineering Auburn University, Auburn, AL 36849 vagrawal@eng.auburn.edu
E N D
ELEC 5270/6270 Spring 2009Low-Power Design of Electronic CircuitsPower Analysis and Process Variation Vishwani D. Agrawal James J. Danaher Professor Dept. of Electrical and Computer Engineering Auburn University, Auburn, AL 36849 vagrawal@eng.auburn.edu http://www.eng.auburn.edu/~vagrawal/COURSE/E6270_Spr09/course.html ELEC5270-001/6270-001 Spr 09, Lecture 6
Process Variation in Nanoscale Devices • Nanoscale device have dimensions smaller than 100 nm, typically, 65nm, 45nm, 32nm, 22nm, etc. • As geometries become closer to molecular dimensions, percentage random variation in parameters become large. • Affected physical parameters: transistor width (W) and length (L), interconnect width and spacing, doping level. • Affected electrical characteristics: on and off resistances of transistors, threshold voltage and leakage current, capacitances. • Major influence on gate delays, ±20%, or more. ELEC5270-001/6270-001 Spr 09, Lecture 6
Dynamic Power and Process Variation • Dynamic power increases with glitch transitions, which are functions of gate delays. • Process variation can influence delays in a circuit, especially in nanoscale technologies. • Monte Carlo simulation used to address the variation is time consuming and expensive. • Bounded delay models are usually considered to address process variations in logic level simulation and timing analysis. ELEC5270-001/6270-001 Spr 09, Lecture 6
References • Simulation: • S. Chakraborty and D. L. Dill, “More Accurate Polynomial-Time Min-Max Timing Simulation,” Proc. 3rd International Symp. Advanced Research in Asynchronous Cir. and Syst., Apr. 1997, pp. 112-123. • J. W. Bierbauer, J. A. Eiseman, F. A. Fazal, and J. J. Kulikowski, “System Simulation With MIDAS,” AT&T Tech. J., vol. 70, no. 1, pp. 36–51, Jan. 1991. • S. Bose, H. Grimes, and V. D. Agrawal, “Delay Fault Simulation With Bounded Gate Delay Model,” Proc. International Test Conf., 2007, pp. 23–28. • Timing anlysis: • S. Chakraborty, D. L. Dill, and K. Y. Yun, “Min-Max Timing Analysis and an Application to Asynchronous Circuits,” Proc. IEEE, vol. 87, no. 2, pp. 332–346, Feb. 1999. • Delay fault testing: • H. Grimes, ReconvergentFanout Analysis of Bounded Gate Delay Faults, Master’s thesis, Auburn University, Dept. of ECE, Aug. 2008. ELEC5270-001/6270-001 Spr 09, Lecture 6
Problem Statement • Given a set of vectors (random or functional), determine the range of dynamic power consumption for specified bounds on delay variation. ELEC5270-001/6270-001 Spr 09, Lecture 6
Power Analysis Methods • Monte Carlo simulation: • R. Burch, F. Najm, P. Yang, and T. Trick, “McPOWER: A Monte Carlo Approach to Power Estimation,” Proc. IEEE/ACM International Conference on Computer-Aided Design, pp. 90–97, Nov 1992. • Bounded-delay analysis: • J. D. Alexander, Simulation Based Power Estimation for Digital CMOS Technologies, Master’s thesis, Auburn University, Dept. of ECE, Dec. 2008. ELEC5270-001/6270-001 Spr 09, Lecture 6
C880: Monte Carlo Simulation 1000 Random Vectors, 1000 Sample Circuits ± 20% random delay variation ELEC5270-001/6270-001 Spr 09, Lecture 6
Bounded Delay Model • Model delay uncertainties by assigning each gate a lower and an upper bound on delay, also known as min-max delay. • The bounds can be obtained by adding specified process-related variation to the nominal gate delay for the technology. • In this model, intervals of signal uncertainties are defined at the output of each gate. ELEC5270-001/6270-001 Spr 09, Lecture 6
Ambiguity Delay Intervals IV FV IV FV EA LS EA LS • EA is the earliest arrival time • LS is the latest stabilization time • IV is the initial signal value • FV is the final signal value EAsv=-∞ LSsv=∞ ? mindel, maxdel EAdv LSdv EAdv=-∞ LSdv=∞ EAsv LSsv ELEC5270-001/6270-001 Spr 09, Lecture 6
Sensitizing and Driving Values Relative to Gate a Signal Feeds Into Earliest possible termination of sensitization value LSsv=∞ EAsv=-∞ ? EAdv LSdv mindel, maxdel Sensitizing value (sv) EAsv LSsv EAdv=-∞ Driving value (dv) LSdv=∞ Definite termination of sensitization value ELEC5270-001/6270-001 Spr 09, Lecture 6
Propagating Ambiguity Intervals through Gates The ambiguity interval (EA,LS) for a gate output is determined from the ambiguity intervals of input signals, their pre-transition and post-transition steady-state values, and the min-max gate delays. (mindel, maxdel) ELEC5270-001/6270-001 Spr 09, Lecture 6
Summarize Input Signals • To evaluate the output of a gate, we analyze inputs i: ELEC5270-001/6270-001 Spr 09, Lecture 6
Use Inertial Delay of Gate • Ambiguity interval at gate output: where the inertial delay of the gate is bounded as (mindel, maxdel). ELEC5270-001/6270-001 Spr 09, Lecture 6
Finding Number of Transitions 3 14 7 10 12 14 2 5 8 10 12 [mintran,maxtran] [0,2] 3 14 (mindel, maxdel) 6 17 1,3 EA LS EA LS [0,4] 5 17 EA LS where mintran is the minimum number of transitions and maxtran the maximum number of transitions. ELEC5270-001/6270-001 Spr 09, Lecture 6
Estimating maxtran • Nd: First upper bound is the largest number of transitions that can be accommodated in the ambiguity interval given by the gate delay bounds and the (IV, FV) output values. • N: Second upper bound is the sum of the input transitions as the output cannot exceed that. Further modify it as N = N – k where k = 0, 1, or 2 for a 2-input gate and is determined by the ambiguity regions and (IV, FV) values of inputs. • The maximum number of transitions is lower of the two upper bounds: maxtran = min (Nd, N) ELEC5270-001/6270-001 Spr 09, Lecture 6
Effect of Gate Inertial Delay D << W W D < W D D ≈ W D > W ELEC5270-001/6270-001 Spr 09, Lecture 6
First Upper Bound, Nd Nd = 1 + (LS – EA)/mindel └┘ mindel, maxdel mindel EA LS ELEC5270-001/6270-001 Spr 09, Lecture 6
Examples of maxtran (k = 0) Nd = ∞ N = 8 maxtran=min (Nd, N) = 8 Nd = 6 N = 8 maxtran=min (Nd, N) = 6 ELEC5270-001/6270-001 Spr 09, Lecture 6
Example: maxtran With Non-Zero k [n1 = 6] [n1 + n2 – k = 8 ] , where k = 2 EAsv = - ∞ LSdv = ∞ EA LS EAdv LSsv [n2 = 4] LSdv = ∞ EAsv = - ∞ EAdv LSsv [ 6 ] [ 6 + 4 – 2 = 8 ] [ 4 ] ELEC5270-001/6270-001 Spr 09, Lecture 6
Estimating mintran • Ns: First lower bound is based on steady state values, IV FV, • If 0 0 or 11, then Ns = 0 • If 0 1 or 1 0, then Ns = 1 • In case of split ambiguity intervals, separate Ns is obtained for each interval and then all are added up • Ndet: Second lower bound is the minimum number of transitions permitted by the maximum inertial delay of the gate (maxdel). • The minimum number of transitions is the higher of the two lower bounds: mintran = max (Ns, Ndet) ELEC5270-001/6270-001 Spr 09, Lecture 6
Example: mintran • There will always be a hazard in the output as long as (EAsv – LSdv) ≥maxdel • Thus in this case the mintran is not 0 as per the steady state condition, but is 2. EA LS EAsv = - ∞ LSsv = ∞ EAdv LSdv d EAdv = - ∞ LSdv = ∞ (mindel, maxdel) EAsv LSsv ELEC5270-001/6270-001 Spr 09, Lecture 6
Multiple Ambiguity Intervals • Multiple ambiguity intervals are waveform containing intermittent regions of deterministic signal states. • We arrange the (EA, LS) values at the gate inputs in order of their temporal occurrences. • If an (LS) value occurs before an (EA) value, then multiple ambiguity are separated by a deterministic value. • We propagate the split ambiguity intervals to the output on the condition that the deterministic interval is longer than the gate inertial delay. ELEC5270-001/6270-001 Spr 09, Lecture 6
Example EA1 LS1 EA1+ d1 LS3 + d2 EA2 LS2 d1,d2 EA3 LS3 Without ordering input ambiguity intervals. EA1 LS1 EA1+ d1 EA3 + d1 EA2 LS2 d1,d2 LS2 + d2 LS3 + d2 EA3 LS3 Ordering of input ambiguity intervals. ELEC5270-001/6270-001 Spr 09, Lecture 6
Simulation Methodology • maxdel, mindel= nominal delay ± Δ% • Three linear-time passes for each input vector: • First pass: zero delay simulation to determine initial and final values, IV and FV, for all signals. • Second pass: determines earliest arrival (EA) and latest stabilization (LS) from IV, FV values and bounded gate delays. • Third pass: determines upper and lower bounds, maxtran and mintran, for all gates from the above information. ELEC5270-001/6270-001 Spr 09, Lecture 6
Effect of Gate Delay Distribution • Experiment conducted to see if the distribution of gate delays has an effect on power distribution. • For uniform distribution: Gate delays were randomly sampled from uniform distribution [a, b], where a = nominal delay – Δ% and b = nominal delay + Δ% This distribution has a variance σ2 = (b – a)2/12 = Δ2(nom. delay)2/30,000. • For normal distribution: Gate delays were randomly sampled from a Gaussian density with mean = nom. delay, and variance σ2 as above. ELEC5270-001/6270-001 Spr 09, Lecture 6
Monte Carlo Experiment • A standard gate node delay of 100 ps was taken. A wire load delay model was followed with each nominal gate delay being a function of its fan-out. • The power distribution is for 1000 random vectors with a vector period of 10000 ps. • For each vector pair 1000 sample circuits were simulated. ELEC5270-001/6270-001 Spr 09, Lecture 6
UniformDistribution NormalDistribution ELEC5270-001/6270-001 Spr 09, Lecture 6
Experimental Result (Maximum Power) • Monte Carlo Simulation vs. Min-Max analysis for circuit C880. 100 sample circuits with + 20 % variation were simulated for each vector pair (100 random vectors). R2 is coefficient of determination, equals 1.0 for ideal fit. ELEC5270-001/6270-001 Spr 09, Lecture 6
Result…(Minimum Power) R2 is coefficient of determination, equals 1.0 for ideal fit. ELEC5270-001/6270-001 Spr 09, Lecture 6
Results…(Average Power) R2 is coefficient of determination, equals 1.0 for ideal fit. ELEC5270-001/6270-001 Spr 09, Lecture 6
C880: Monte Carlo vs. Bounded Delay Analysis 1000 Random Vectors, 1000 Sample Circuits ELEC5270-001/6270-001 Spr 09, Lecture 6
Power Estimation Result • Circuits implemented using TSMC025 2.5V CMOS library , with standard size gate delay of 10 ps and a vector period of 1000 ps. Min-Max values obtained by assuming ± 20 % variation. The simulation was run on a UNIX operating system using a Intel Duo Core processor with 2 GB RAM. ELEC5270-001/6270-001 Spr 09, Lecture 6
Conclusion • Bounded delay model allows power estimation method with consideration of uncertainties in delays. • Analysis has a linear time complexity in number of gates and is an efficient alternative to the Monte Carlo analysis. ELEC5270-001/6270-001 Spr 09, Lecture 6
Future Refinements • Consider process dependent variations in leakage and in node capacitances. • Use statistical methods to determine distributions of average and peak power consuming circuits. See following references: • V. Bartkute and L. Sakalauskas, “Three Parameter Estimation of the Weibull Distribution by Order Statistics,” in C. H. Skiadas, editor, Recent Advances in Stochastic Modeling and Data Analysis, pp. 91–100, World Scientific, 2007. • Q. Qiu, Q. Wu, and M. Pedram, “Maximum power estimation using the limiting distributions of extreme order statistics,” in Proc. Design Automation Conference, June 1998, pp. 684–689. • Q.Wu, Q. Qiu, and M. Pedram, “Estimation of Peak Power Dissipation in VLSI Circuits Using the Limiting Distributions of Extreme Order Statistics,” IEEE transactions on Computer Aided Design of Integrated Circuits and Systems, vol. 20, no. 8, p. 942. ELEC5270-001/6270-001 Spr 09, Lecture 6