Upload
chandu
View
216
Download
3
Embed Size (px)
Citation preview
Efficient Modeling of Spatial Correlations for ParameterizedStatistical Static Timing Analysis
Jinjun Xiong, Vladimir Zolotov, Chandu Visweswariah*IBM Thomas J. Watson Research Center, Yorktown Heights, NY, USA
*IBM System and Technology Group, Hopewell Junction, NY, USA
Abstract- This paper presents an efficient method to modelspatial correlations in the context of parameterized statisticalstatic timing analysis (SSTA). Multiple spatially-correlated process parameters with different spatial properties can be handledby this method simultaneously and efficiently. Experiment resultswith industrial circuits show that the proposed approach is significantly more efficient than the existing principle component analysis approach without loosing accuracy.
I. INTRODUCTION
As the CMOS technology continues to scale down, consideringprocess variation becomes increasingly important to achieverobust timing closure. Recently, statistical static timing analysis (SSTA) has become a widely recognized technique to predict statistical characteristics of digital circuits in the presenceof variability. One of the most promising techniques of SSTAis parameterized SSTA, in which all timing quantities in thetiming graph are represented as a first-order canonical form[1, 2], i.e., a linear function of a set of mutually independentrandom variables. This representation simplifies the computation of SSTA, as all necessary operations on timing quantitiescan be carried out analytically.
Modem SSTA tools can handle both inter-chip and intrachip process variations. The inter-chip variations repres entglobal variations that are the same for all devices on a givenchip. The intra-chip variations represent variations of parameters within the same chip. These include spatially correlated variations and purely independent or uncorrelated variations. Spatial correlation describes the phenomenon that devices close to each other are more likely to have similar characteristics than when they are far apart. Several authors haveaddressed the problem of modeling spatial correlation in parameterized SSTA [2, 3, 4, 5]. The problem, however, is farfrom being solved for mainstream practical use.
This paper develops a novel method to model spatial correlations in the context of parameterized SSTA. The methodis accurate and efficient, and it can be used for large industrial designs with different spatial correlation behaviors. Thetechnique is fully compatible with the existing parameterizedSSTA framework and requires no modification of the timer'score engine in order to consider spatial correlations. Experiment results with industrial circuits show that the propos edapproach is significantly more efficient than the existing prin-
978-1-4244-3870-9/09/$25.00 ©2009 IEEE
722
ciple component analysis (PCA) technique without loosing accuracy.
II. PARAMETRIZED SPATIAL CORRELATION MODELING
We divide the chip area into a set of grid cells, such as rectangular grids [2, 3, 4] or hexagonal grids [6] . The distancebetween cells is defined as their center to center distance.
In general, the number of process parameters that exhibitspatial correlation can be more than one. For simplicity ofpresentation, however, only one parameter will be assumed tohave spatial correlation in this paper. But it is understood thatthis is not a limitation of our techniques to be presented.
We model the spatial variation of the process parameter ofinterest at grid cell j as a random variable ~Fj, and ~Fj atdifferent grids are spatially correlated. When grid cell j andk are physically close to each other, the correlation between~Fj and ~Fk is higher than when they are far apart. The setof all these n random variables can be compactly representedas a vector aF. The spatial correlation can be captured by thespatial covariance matrix of aF. Without loss of generality,we assume that aF follows a multivariate normal distributionwith zero mean and unit variance. Therefore, the covariancematrix of aF becomes the correlation matrix On,n'
The spatial correlation distance is defined as the minimumdistance beyond which the spatial correlation between any twogrid cells is sufficiently small (or smaller than a given threshold value) so that we can ignore it. For a fixed chip area, ifthe spatial correlation distance is large, meaning parameters atgrid cells far apart are still spatially correlated, the correlationmatrix On n will be dense. On the contrary, ifthe spatial correlation distance is relatively small, the correlation matrix On,nwill be sparse because a lot of entries in On,n are zero.
In parameterized SSTA, timing variation is captured by afunction of the underlying physical process parameter variations. For example, timing at grid cell j can be written as
where dj,o is the mean value of D j; axg , aF, and ~Xr,j
are random variables used to model inter-chip global variation,spatial correlation, and locally independent random variation,respectively; and ag,j, {3s,j, and {3r,j are the corresponding sensitivities of D j to different variations.
If we were to carry out SSTA in the form of (1), covariance between different timing quantities has to be computedby multiplying the correlation matrices of those spatially correlated parameters, i.e.,
thus significantly slowing down the computation of SSTA [5].Therefore, we need to transform the correlated random vectoraF into a linear combination of a set of uncorrelated randomvariables such that all timing quantities are represented as thefirst-order canonical form as
where axs is a vector of independent random variables usedto model the spatial correlation. Once all quantities are represented as shown in (3), all SSTA operations can be carried outefficiently and analytically [1, 2].
sparse. After EVD on On,n, however, the obtained Vn,n maybe dense so that each timing quantity becomes a function ofalmost all random variables in axs through (5), although dimension reduction helps a bit. In other words, we now havea very long representation for each timing quantity in (3). Ifwe were to use these new first-order canonical forms for SSTAcomputation, it would obviously require more computationsfor every atomic operation and more storage.
Lastly, for PCA-based approach, all timing quantities are expressed in terms of the "artificially" transformed random variables axs as in (5). These variables do not correspond toany particular region of the chip. In case of timing failures, itis impossible to understand what area of the chip incurs thosefailures directly. To obtain such information, we have to transform the resulting first-order canonical forms back to the original process parameters aF. This transformation again is expensive and it has to be done for all timing quantities.
In the following, we present a novel technique to overcomethe above problems in modeling spatial correlation.
III. EFFICIENT FITTING-BASED ApPROACH
A. Review ofPCA-based Approach
The PCA-based approach has been used extensively for parameterized SSTA in the literature. Hence we review this approachwith discussion of its drawbacks in the following.
The PCA approach first performs eigen-value decomposition (EVD) on the correlation matrix On,n to obtain
B. Fitting-based Approach
We associate each grid cell with one dedicated spatial randomvariable Dt.Xs,k that is independent of all other spatial randomvariables. We introduce the concept of correlation index I,which defines a set of indices of Dt.Xs,k to model the spatialcorrelation behavior of Dt.Fj as
On n == V n n . An n . vi.:, , , , (4)sr, == L 1k . Dt.Xs,k,
kEI
(6)
Fig. 1. Modeling of the spatial correlations with the correlation index definedfor each cell as its nine neighboring cells.
where 1k is coefficient of Dt.Fj to Dt.Xs,k. For example, asshown in Fig. 1, if the correlation index for each grid cell isdefined as its closest nine neighboring grid cells, then parameters at each grid cell can be represented as a linear combinationof nine spatial random variables, e.g., for Dt.Fs at the grid cell5, we have Dt.Fs = 11Dt.Xs,l + ... + 19Dt.Xs,g .
The concept of correlation index helps to model the spatialcorrelation. For example, for Dt.Fi and Dt.Fj that are physicallyclose to each other, we can define their respective correlationindices in a way so that they share more common spatial random variables. For two that are physically far apart from eachother, their correlation indices can be defined so that they donot share any common correlated random variables. Using the
d5,
d4,~ 2 3
d3 4~~ 6V]5
d2/ • 97 dl 8
15
10 11 12 13 14
1 2 3
4 5 6
7 8 9
(5)
where An,n is a diagonal matrix with each entry being aneigen-value ofOn,n; V n,n is an orthonormal matrix with eachcolumn being an eigen-vector of On,n. By introducing a vector of n independent random variables axs through changingof variables, we obtain
Plugging (5) into (1), we obtain the desired form as (3). Thisapproach, however, has several drawbacks.
Firstly, the computation cost of EVD for On,n is high. Forexample, to reasonably capture the spatial correlation and timing characteristics, the number of grid cells required to coverthe whole chip area can not be too small. For a chip that is10 x 10mm2 with a correlation distance as 100jLm, dividingthe chip area into 100 x 100 grid cells is barely enough tomodel the spatial correlation, as each grid cell itself is already100jLm in length. In this case, the matrix size On,n would be10000 x 10000. EVD on such a large matrix is quite expensive.
Secondly, the PCA-based approach complicates the SSTAcomputation. Note that D j at grid cell j is usually affected bya small number of local grid cells, so the number ofnon-zeroesin {3s,j in (1) is small. In addition, when the spatial correlationdistance is small compared to the chip size, process parametersat each grid cell are only spatially correlated to process parameters not far away so that the structure of On,n is inherently
723
According to the above system of equations (7) to (12), wehave total of six equations with only three unknown coefficients to be determined. Thus it is an over-determined system.We can solve it by formulating it as a non-linear least squareproblem. An example ofhow to solve this system of equationsbased on hexagonal grid cells has been given in [6].
Because the above problem mimics the least-square fittingproblem, we call our method fitting-based method for spatialcorrelation modeling.
same example as shown in Fig. 1, the parameter located at gridcell 12 (~F12) shares ~Xs,l, ~Xs,2 and ~Xs,3 with ~F5;
~F10 shares only ~Xs,l with ~F5; while ~F15 shares nothing with ~F5. In other words, ~F12 will be more spatiallycorrelated with ~F5 than ~F10 does, while there is no spatialcorrelation between ~F15 and ~F5 at all.
Same as [7, 8], we model the spatial correlation as a homogeneous and isotropic random field so that any two parameterswith the same distance d will have the same correlation coefficient p(d). Stated differently, spatial correlation can be fullydescribed by a spatial correlation function p(d). The correlation distance d is the distance beyond which the spatial correlation p(d) becomes sufficiently small and can be approximatedas zero, i.e., p(d) ~ 0 for all d 2:: d.
Because the spatial correlation is only a function of distance, the number of unique correlation coefficients in On,nequals the number of unique distances between any two correlated grid cells. For example, assuming the spatial correlation distance d=3d e with de as the the length of one gridcell in Fig. 1, we obtain five unique correlation distances, i.e.,d1 == d., d2 == y'2de, d3 == 2de, d4 == VSde, and d5 == 2y'2de.Correspondingly, we have five unique correlation coefficientsin On n without including zero correlation for distance greaterthan dor full correlation unity for distance within one grid cell.
Because spatial correlation is homogeneous and isotropic, itmakes sense to use the same correlation index for all grid cells,and the coefficient ,k should be the same for the same distance from the center cell of interest. For the example shown inFig. 1, among the nine coefficients, we only have three uniquevalues, i.e., ,1 =,3=,7=,9, ,2=,4=,6=,8, and ,5 because gridcell 1, 3, 7 and 9 have the same distance from grid cell 5, sodo grid cells 2, 4, 6 and 8. In other words, we have ~F5 ='l(~Xs,l + ~Xs,3 + ~Xs,7 + ~Xs,9) +,2 (~Xs,2 + ~Xs,4
+ ~Xs,6 + ~Xs,8) + '5~Xs,5'
To determine the three unique values of ,1, ,2 and ,5, ac-cording to (6), we first compute the correlation between ~Fj
and ~Fk of two grid cells with different distances, and thenmatch the so-obtained value with the corresponding spatialcorrelation function p(d). Hence we obtain
IV. EXPERIMENTAL RESULTS
(13)
(15)min: II Gn,q . «; - On,n II .
C. Relation to PCA-based Approach
We can compactly represent (6) for all grid cells in a matrixform as
where axs contains q number of independent spatial randomvariables with q generally greater than n to accommodate theperipheral grid cells' modeling in (6). The structure of Gn,q isdetermined by the correlation index I following (6). Becausethe correlation index I contains only neighboring grid cells'spatial random variables, which are a small fraction of the total spatial random variables, each row of Gn,q is sparse (so isGn,q). To determine Gn,q, we compute the correlation matrixof aF as follows
The proposed technique for handling spatial correlations hasbeen implemented in the industrial statistical timing analysis
On n = E(aF. aFT) = Gn,q . E(aX s . axs T) . G~ q = Gn,q . G~,q', , (14)
By equating each entry ofOn,n with each entry ofGn,q' G~,q,we obtain n 2 equations as we know all entries in On,n. Thenumber of unknowns in Gn,q depends on the correlation index. In general, Gn,q is a sparse matrix so the exact number ofunknowns in Gn,q will be far less than n 2
. Hence, we end upwith an over-determined system of equations.
The problem of solving Gn,q can thus be formalized as anunconstrained optimization problem that minimizes the difference between Gn,q . G~,q and On,n, i.e.,
Once the minimization problem is formulated, it can be solvedvia any nonlinear unconstrained minimization technique.
In our solution to this problem, however, we further exploited the special structure of Gn,q and On,n by noting thatthe spatial correlation is a homogeneous and isotropic randomfield. Therefore, we reduce the problem of (15) to an evensimpler and more compact problem as given by (7) to (12).
The exact formulation of (15) depends on the specific structure of Gn,q, or equivalently, the choice of correlation indexfor each grid cell. It is this flexibility that allows us to trademodel accuracy with runtime efficiency smoothly.
The above minimization problem (15) is in fact a more general formulation for the PCA-based approach. By insisting onaxs and aF having the same size, i.e, q == n, and ignoring the special structure of Gn,n, we can show that the optimal solution to (15) is Gn,n = V n,n . A 1/2 with a globalminimum value of zero. By plugging the solution into (13),we obtain exactly the same results as obtained from the PCAapproach as shown in (5). In other words, the PCA-based approach achieves the global minimum to problem (15) withoutexploiting any special matrix structure resulting from spatialcorrelation at the expense ofmore complicated computation.
(7)
(8)
(9)
(10)
(11)
(12)
p(O) == 1
p(d1 )
p(d2 )
p(d3 )
p(d4 )
p(d5 )
4,~ + 4,? +,g2,5,2 + 4,2,1
2,~ + 2'5'1
2,? +,~
2,2,1
,?
724
tool, EinsStat [1]. For each spatially correlated process parameter, the tool allows the specification of different spatial correlation functions with different correlation distances. Threeindustrial 65 nm ASIC designs are used for our experiments(the gate counts are lOOK for Dl , 60K for D2, and 10K forD3, respectively), and all sources of variation are set according to our foundry rules. The grid used in this experiment isthe hexagonal grid described in [6].
For comparison purposes, we have also implemented thePCA-based approach. Theoretically, the PCA-based approachis exact in capturing the given spatial correlation matrix.Therefore, we use it as the baseline case for comparison. Notethat, for the sparse correlation matrix, we used the sparse version ofEVD for the PCA-based approach.
Table I compares the modeling accuracy between our fittingbased approach and the existing PCA approach. The timingdifferences between them are results of their differences inmodeling the spatial correlation. The first four columns showthe chip name, chip area, the correlation distance d, and thegrid cell size de (all length units in jLm). Compared to gridsize de, the correlation distance d in this experiment is purposely set to be relatively large, which favors the PCA-basedapproach. We report the mean and standard deviation (J" (inns) of the circuit delay in columns 5 and 6 for the PCA-basedapproach and in columns 7 and 8 for our approach, respectively. We observe that our proposed approach achieves thesame mean delay value as the PCA-based approach, and thestandard deviation from our approach is almost the same as theone from the PCA-based approach. This convincingly showsthat our approach is accurate in capturing the spatial correlation for parameterized SSTA.
TABLE ITIMING ACCURACY COMPARISON BASED ON MONTE-CARLO.
PCA Ours
Chip Area d de Mean a- Mean a-Dl 1200x 1080 400 80 3.715 0.178 3.715 0.176D2 1342x 1344 400 80 4.210 0.624 4.210 0.652D3 9996x9996 4000 800 11.45 0.918 11.45 0.987
We further compare runtime performance between our approach and the PCA-based approach in Table II. The runtime includes both the spatial correlation modeling time andthe parameterized SSTA runtime. Results are reported for thefirst design D1. Different correlation distances d with different grid cell sizes de are tested. According to Table II, whenthe grid cell size becomes increasingly smaller, the PCA-basedapproach becomes very slow. This observation is expected,as the smaller the grid cell size, the larger the total grid ce11number, hence the larger the correlation matrix for EVD. Forlarge correlation matrices, EVD is very expensive and becomesthe bottle-neck of the whole computation. Moreover, in ourexperiments, we also observe that EVD has convergence andaccuracy issues for large matrices. In contrast, our proposedmethod is almost invariant with the number of grid cells usedto model the spatial correlation. Compared to the PCA-basedapproach, our method achieves more than 150x speedup.
We also compare the timing results, runtime, and memoryusage of our approach with the basic SSTA without modeling
TABLE IIRUN TIME COMPARISON FOR D 1 IN SECONDS.
d de Grid Cell # PCARuntime Our Runtime400 160 63 127 80200 80 143 124 80100 40 378 128 8350 20 1167 390 8725 10 4599 17703 98
spatial correlation. We observe that, compared to the timingresults obtained from SSTA without considering spatial correlation, considering spatial correlation seems to have no impacton the mean circuit delay, but does change the standard deviation. When the correlation distance (d) is increasingly smaller,the standard deviation becomes smaller, implying that the spatial correlation becomes more localized. Compared to SSTAwithout modeling spatial correlation, our approach incurs verysmall amount of runtime overhead. For example, for designD1, the former consumes 63 seconds CPU time, while ourapproach considering spatial correlation consumes 98 secondsCPU time. The relative runtime overhead is about 50% at most.In terms of memory usage, the former needs 930 megabytes,while ours needs 1550 megabytes. The relative memory overhead is no more than 50%.
V. CONCLUSION
In this paper, we have presented a novel technique to modelspatial correlation in parameterized statistical static timinganalysis. Experimental results have convincingly demonstrated that the proposed technique provides an efficient wayto handle spatial correlation while retaining similar accuracycompared to the PCA-based approach. Moreover, the proposed approach can handle large designs with small runtimeand memory overhead.
REFERENCES
[1] c. Visweswariah, K. Ravindran, K. Kalafala, S. Walker, and S. Narayan, "Firstorder incremental block-based statistical timing analysis," in Proc. Design Automation Conf, June 2004.
[2] H. Chang and S. S. Sapatnekar, "Statistical timing analysis considering spatial correlations using a single PERT -like traversal," in Proc. Int. Conf on Computer AidedDesign, pp. 621 - 625, Nov. 2003.
[3] A. Agarwal, D. Blaauw, and V. Zolotov, "Statistical timing analysis for intra-dieprocess variations with spatial correlations," in Proc. Int. Conf on Computer AidedDesign, pp. 900 - 907, Nov. 2003.
[4] V.Khandelwal and A. Srivastava, "A general framework for accurate statistical timing analysis considering correlations," in Proc. Design Automation Conf, pp. 89 - 94,June 2005.
[5] L. Zhang, W. Chen, Y. Hu, 1. A. Gubner, and C. C.-P. Chen, "Statistical timinganalysis with extended pseudo-canonical timing model," in Proc. Design Automationand Test in Europe, pp. 952 - 957, March 2005.
[6] R. Chen, L. Zhang, V.Zolotov, C. Visweswariah, and 1. Xiong, "Static timing: backto our roots," in Proc. Asia South Pacific Design Automation Conf., Jan. 2008.
[7] P. Friedberg, Y. Cao, J. Cain, R. Wang, 1. Rabaey, and C. Spanos, "Modeling withindie spatial correlation effects for process-design co-optimization," in Sixth International Symposium on Quality ofElectronic Design, pp. 516 - 521, March 2005.
[8] 1. Xiong, V.Zolotov, and L. He, "Robust extraction of spatial correlation," in Proc.Int. Symp. on Physical Design, pp. 2-9, April 2006.
725