4
Efficient Modeling of Spatial Correlations for Parameterized Statistical 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 model spatial correlations in the context of parameterized statistical static timing analysis (SSTA). Multiple spatially-correlated pro- cess parameters with different spatial properties can be handled by this method simultaneously and efficiently. Experiment results with industrial circuits show that the proposed approach is signif- icantly more efficient than the existing principle component anal- ysis approach without loosing accuracy. I. INTRODUCTION As the CMOS technology continues to scale down, considering process variation becomes increasingly important to achieve robust timing closure. Recently, statistical static timing analy- sis (SSTA) has become a widely recognized technique to pre- dict statistical characteristics of digital circuits in the presence of variability. One of the most promising techniques of SSTA is parameterized SSTA, in which all timing quantities in the timing graph are represented as a first-order canonical form [1, 2], i.e., a linear function of a set of mutually independent random variables. This representation simplifies the computa- tion of SSTA, as all necessary operations on timing quantities can be carried out analytically. Modem SSTA tools can handle both inter-chip and intra- chip process variations. The inter-chip variations repres ent global variations that are the same for all devices on a given chip. The intra-chip variations represent variations of param- eters within the same chip. These include spatially corre- lated variations and purely independent or uncorrelated vari- ations. Spatial correlation describes the phenomenon that de- vices close to each other are more likely to have similar char- acteristics than when they are far apart. Several authors have addressed the problem of modeling spatial correlation in pa- rameterized SSTA [2, 3, 4, 5]. The problem, however, is far from being solved for mainstream practical use. This paper develops a novel method to model spatial cor- relations in the context of parameterized SSTA. The method is accurate and efficient, and it can be used for large indus- trial designs with different spatial correlation behaviors. The technique is fully compatible with the existing parameterized SSTA framework and requires no modification of the timer's core engine in order to consider spatial correlations. Exper- iment results with industrial circuits show that the propos ed approach 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 ac- curacy. II. PARAMETRIZED SPATIAL CORRELATION MODELING We divide the chip area into a set of grid cells, such as rect- angular grids [2, 3, 4] or hexagonal grids [6] . The distance between cells is defined as their center to center distance. In general, the number of process parameters that exhibit spatial correlation can be more than one. For simplicity of presentation, however, only one parameter will be assumed to have spatial correlation in this paper. But it is understood that this is not a limitation of our techniques to be presented. We model the spatial variation of the process parameter of interest at grid cell j as a random variable and at different grids are spatially correlated. When grid cell j and k are physically close to each other, the correlation between and is higher than when they are far apart. The set of all these n random variables can be compactly represented as a vector aF. The spatial correlation can be captured by the spatial covariance matrix of aF. Without loss of generality, we assume that aF follows a multivariate normal distribution with zero mean and unit variance. Therefore, the covariance matrix of aF becomes the correlation matrix On,n' The spatial correlation distance is defined as the minimum distance beyond which the spatial correlation between any two grid cells is sufficiently small (or smaller than a given thresh- old value) so that we can ignore it. For a fixed chip area, if the spatial correlation distance is large, meaning parameters at grid cells far apart are still spatially correlated, the correlation matrix On n will be dense. On the contrary, if the spatial corre- lation distance is relatively small, the correlation matrix On,n will be sparse because a lot of entries in On,n are zero. In parameterized SSTA, timing variation is captured by a function of the underlying physical process parameter varia- tions. For example, timing at grid cell j can be written as where dj,o is the mean value of D j; ax g , aF, and 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 sen- sitivities of D j to different variations.

[IEEE 2009 IEEE 8th International Conference on ASIC (ASICON) - Changsha, Hunan, China (2009.10.20-2009.10.23)] 2009 IEEE 8th International Conference on ASIC - Efficient modeling

  • Upload
    chandu

  • View
    216

  • Download
    3

Embed Size (px)

Citation preview

Page 1: [IEEE 2009 IEEE 8th International Conference on ASIC (ASICON) - Changsha, Hunan, China (2009.10.20-2009.10.23)] 2009 IEEE 8th International Conference on ASIC - Efficient modeling

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 pro­cess parameters with different spatial properties can be handledby this method simultaneously and efficiently. Experiment resultswith industrial circuits show that the proposed approach is signif­icantly more efficient than the existing principle component anal­ysis 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 analy­sis (SSTA) has become a widely recognized technique to pre­dict 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 computa­tion of SSTA, as all necessary operations on timing quantitiescan be carried out analytically.

Modem SSTA tools can handle both inter-chip and intra­chip 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 param­eters within the same chip. These include spatially corre­lated variations and purely independent or uncorrelated vari­ations. Spatial correlation describes the phenomenon that de­vices close to each other are more likely to have similar char­acteristics than when they are far apart. Several authors haveaddressed the problem of modeling spatial correlation in pa­rameterized 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 cor­relations in the context of parameterized SSTA. The methodis accurate and efficient, and it can be used for large indus­trial 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. Exper­iment 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 ac­curacy.

II. PARAMETRIZED SPATIAL CORRELATION MODELING

We divide the chip area into a set of grid cells, such as rect­angular 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 thresh­old 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 corre­lation 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 varia­tions. 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 sen­sitivities of D j to different variations.

Page 2: [IEEE 2009 IEEE 8th International Conference on ASIC (ASICON) - Changsha, Hunan, China (2009.10.20-2009.10.23)] 2009 IEEE 8th International Conference on ASIC - Efficient modeling

If we were to carry out SSTA in the form of (1), covari­ance between different timing quantities has to be computedby multiplying the correlation matrices of those spatially cor­related 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 repre­sented 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 di­mension 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 ex­pressed in terms of the "artificially" transformed random vari­ables 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 trans­form the resulting first-order canonical forms back to the orig­inal process parameters aF. This transformation again is ex­pensive 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 param­eterized SSTA in the literature. Hence we review this approachwith discussion of its drawbacks in the following.

The PCA approach first performs eigen-value decomposi­tion (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 parame­ters 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 ran­dom 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 vec­tor 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 tim­ing 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 param­eters not far away so that the structure of On,n is inherently

723

Page 3: [IEEE 2009 IEEE 8th International Conference on ASIC (ASICON) - Changsha, Hunan, China (2009.10.20-2009.10.23)] 2009 IEEE 8th International Conference on ASIC - Efficient modeling

According to the above system of equations (7) to (12), wehave total of six equations with only three unknown coeffi­cients 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 noth­ing 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 homo­geneous and isotropic random field so that any two parameterswith the same distance d will have the same correlation coef­ficient p(d). Stated differently, spatial correlation can be fullydescribed by a spatial correlation function p(d). The correla­tion distance d is the distance beyond which the spatial correla­tion 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 dis­tance, the number of unique correlation coefficients in On,nequals the number of unique distances between any two cor­related grid cells. For example, assuming the spatial corre­lation 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 dis­tance 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 to­tal 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 in­dex. 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 differ­ence 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 ex­ploited 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 struc­ture 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 gen­eral formulation for the PCA-based approach. By insisting onaxs and aF having the same size, i.e, q == n, and ignor­ing the special structure of Gn,n, we can show that the op­timal 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 ap­proach 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

Page 4: [IEEE 2009 IEEE 8th International Conference on ASIC (ASICON) - Changsha, Hunan, China (2009.10.20-2009.10.23)] 2009 IEEE 8th International Conference on ASIC - Efficient modeling

tool, EinsStat [1]. For each spatially correlated process param­eter, the tool allows the specification of different spatial cor­relation 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 accord­ing 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 ver­sion ofEVD for the PCA-based approach.

Table I compares the modeling accuracy between our fitting­based 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 pur­posely 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, respec­tively. 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 correla­tion 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 ap­proach and the PCA-based approach in Table II. The run­time includes both the spatial correlation modeling time andthe parameterized SSTA runtime. Results are reported for thefirst design D1. Different correlation distances d with differ­ent 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 corre­lation, considering spatial correlation seems to have no impacton the mean circuit delay, but does change the standard devia­tion. When the correlation distance (d) is increasingly smaller,the standard deviation becomes smaller, implying that the spa­tial 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 over­head 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 demon­strated that the proposed technique provides an efficient wayto handle spatial correlation while retaining similar accuracycompared to the PCA-based approach. Moreover, the pro­posed approach can handle large designs with small runtimeand memory overhead.

REFERENCES

[1] c. Visweswariah, K. Ravindran, K. Kalafala, S. Walker, and S. Narayan, "First­order incremental block-based statistical timing analysis," in Proc. Design Automa­tion Conf, June 2004.

[2] H. Chang and S. S. Sapatnekar, "Statistical timing analysis considering spatial cor­relations 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 tim­ing 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 within­die spatial correlation effects for process-design co-optimization," in Sixth Interna­tional 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