linearity of max operation in statistical timing analysis · 2012. 10. 16. · worst-case timing...
TRANSCRIPT
-
Linearity of MAX Operation Linearity of MAX Operation in Statistical Timing Analysisin Statistical Timing Analysis
Lizheng ZhangLizheng ZhangWeijenWeijen Chen, Chen, YuHenYuHen HuHuCharlie Charlie ChungpingChungping ChenChen
University of Wisconsin, MadisonUniversity of Wisconsin, Madison
-
Variation SourcesVariation Sources
Environmental VariationsEnvironmental Variations–– Power Supply Uncertainty, Temperature Power Supply Uncertainty, Temperature
fluctuationfluctuation
Processing VariationsProcessing Variations–– Channel length, Doping density, Channel length, Doping density,
Threshold voltage, Oxide thickness, Wire Threshold voltage, Oxide thickness, Wire width and thickness, width and thickness, …………
-
Variation MagnitudeVariation Magnitude
The percentage of The percentage of the variation versus the variation versus absolute value for absolute value for parametersparameters–– 20~30% in today20~30% in today’’s s
technologytechnology–– Larger in the futureLarger in the future
“Models of process variations in device and interconnect”Duane Boning, MIT & Sani Nassif, IBM ARL.
-
Overestimation Overestimation of Worst Case Analysisof Worst Case Analysis
Bef or e Today
Over est i mat e
Pessimistic estimation: Pessimistic estimation: –– It is very rare to have all gates behave as the worst caseIt is very rare to have all gates behave as the worst case–– Larger variation make overestimation more significantLarger variation make overestimation more significant
-
WorstWorst--case Timing case Timing Analysis ExampleAnalysis Example
16-bit Adder – Longest path Delay
Monte Carlo– 3σ = 1.25
Worst-case Timing – Delay=1.45
Too pessimistic!– 20% overestimation
“Impact of Unrealistic Worst Case Modeling on the Performance of VLSI circuits in Deep Submicron Region CMOS Technologies”A.Nardi, A.Neviani, E.Zanoni,M.Quarantelli, IEEE ‘99
-
BlockBlock--Based SSTABased SSTA
Signal arrival timeSignal arrival time propagates from propagates from gate to gate in the circuit timing graph gate to gate in the circuit timing graph without looking back into its historywithout looking back into its historyElemental Operations: Elemental Operations: –– ADD and MAXADD and MAX
Linear to size of circuitLinear to size of circuit
-
ADD/MAX OperationADD/MAX Operation
dAi Ao
dAA io +=
ADD Operation
A1
A2
Aod
dAAAo += ),max( 21
MAX Operation
“Statistical timing analysis using bounds and selective enumeration” Agarwal, A.; Zolotov, V.; Blaauw, D.T.;TCAD, Vol. 22(9) , Sept. 2003, P1243 - P1260
-
Difficulty(1)Difficulty(1)----CorrelationCorrelation
pX
YX Y Z
g
Global CorrelationGlobal Correlation–– X,Y,ZX,Y,Z are all are all
dependent on dependent on gg
Path CorrelationPath Correlation–– XX and and YY both both
dependent on dependent on pp
-
Difficulty (2) Difficulty (2) –– MAXMAX
It is It is nonnon--linearlinear–– MAX of Gaussian random variables will MAX of Gaussian random variables will
notnot be Gaussianbe Gaussian
The difficulty comes from the fact that The difficulty comes from the fact that we want to we want to preserve correlationpreserve correlationinformation after noninformation after non--linear MAXlinear MAX
-
Linear MAX Linear MAX ApproximationApproximation
MAX operation is approximated by a MAX operation is approximated by a linear mixing operator:linear mixing operator:
–– Matching mean, variance and Matching mean, variance and covariancecovariance
“First-order incremental block-based statistical timing analysis”Visweswariah, C.; Ravindran, K.; Kalafala, K.; Walker, S.G.; Narayan, S.; DAC’04. June 7-11, 2004, 331 - 336
-
It is risky!!It is risky!!
•Risky: Underestimate delay in high confidence level
-
NonNon--Linearity of MAXLinearity of MAX
Linearity of the MAX depends on the inputsLinearity of the MAX depends on the inputsWhen inputs are Gaussian, nonWhen inputs are Gaussian, non--linearity of linearity of MAX operator is equivalent to the MAX operator is equivalent to the GaussianityGaussianity of the outputof the outputIs Is skewnessskewness a good choice to decide the a good choice to decide the GaussianityGaussianity??–– Pro: It can be computed analyticallyPro: It can be computed analytically–– Con: Generally zeroCon: Generally zero--skew does NOT mean skew does NOT mean
Gaussian.Gaussian.
-
SkewnessSkewness of MAX outputof MAX output
Overlap region
-
Positive Positive SkewnessSkewness
-
SkewnessSkewness and Correlationand Correlation
More positive correlation means small More positive correlation means small skewnessskewness and less nonand less non--linearitylinearity
-
Proposed Solution for Proposed Solution for nonnon--linear MAXlinear MAX
Determine when the nonDetermine when the non--linearity of linearity of MAX using MAX using skewnessskewnessUsing Linear approximation when MAX Using Linear approximation when MAX is linearis linearUsing Using BoundingBounding approach when MAX is approach when MAX is nonnon--linearlinear
-
Bounding TheoremsBounding Theorems
For nonFor non--decreasing decreasing functionsfunctionsFunction upperFunction upper--bounds bounds CDF CDF upper boundsupper boundsWith the same With the same confidence levelconfidence level
-
Apply to MAX OperationApply to MAX Operation
-
Graphical IllustrationGraphical Illustration
-
Conditional Mean Conditional Mean ModificationModification
-
NonNon--Gaussian CircuitsGaussian Circuits
Bounded Approach
Linear Approach
Monte Carlo
-
Gaussian CircuitsGaussian Circuits
-
ConclusionsConclusions
BlockBlock--based statistical timing faces the difficulty to based statistical timing faces the difficulty to preserve correlation information through nonpreserve correlation information through non--linear linear MAX operationMAX operationIt is risky to apply linear approximation for MAX It is risky to apply linear approximation for MAX unconditionallyunconditionallySkewnessSkewness is a good parameter to measure the is a good parameter to measure the linearity of the MAX operatorlinearity of the MAX operatorBased on the Based on the skewnessskewness, a new algorithm for block, a new algorithm for block--based timing analysis is developed to safely take based timing analysis is developed to safely take advantage of linear MAX approximation while advantage of linear MAX approximation while avoiding the risk it might hasavoiding the risk it might has