26
Performance and RLC Crosstalk Performance and RLC Crosstalk Driven Global Routing Driven Global Routing Ling Zhang, Tong Jing, Ling Zhang, Tong Jing, Xianlong Hong, Jingyu Xu Jinju Xianlong Hong, Jingyu Xu Jinju n Xiong, Lei He n Xiong, Lei He Dept. of CST, Tsinghua Univ Dept. of EE, UC, Los Angeles Dept. of CST, Tsinghua Univ Dept. of EE, UC, Los Angeles Speaker: Xianlong Hong

Performance and RLC Crosstalk Driven Global Routing

Embed Size (px)

DESCRIPTION

Performance and RLC Crosstalk Driven Global Routing. Ling Zhang, Tong Jing, Xianlong Hong, Jingyu Xu Jinjun Xiong, Lei He Dept. of CST, Tsinghua Univ Dept. of EE, UC, Los Angeles. Speaker: Xianlong Hong. Outline. Introduction & Previous Work - PowerPoint PPT Presentation

Citation preview

Page 1: Performance and RLC Crosstalk Driven Global Routing

Performance and RLC Crosstalk Driven Performance and RLC Crosstalk Driven Global RoutingGlobal Routing

Ling Zhang, Tong Jing,Ling Zhang, Tong Jing, Xianlong Hong, Jingyu Xu Jinjun Xiong, Lei HeXianlong Hong, Jingyu Xu Jinjun Xiong, Lei He

Dept. of CST, Tsinghua Univ Dept. of EE, UC, Los AngelesDept. of CST, Tsinghua Univ Dept. of EE, UC, Los Angeles

Speaker: Xianlong Hong

Page 2: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 22

OutlineOutline

Introduction & Previous WorkIntroduction & Previous WorkProblem FormulationsProblem FormulationsOur Algorithm: PO-GR Our Algorithm: PO-GR Experimental Results & DiscussionsExperimental Results & DiscussionsConclusionsConclusions

Page 3: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 33

IntroductionIntroduction

Device size shrinking and clock frequency Device size shrinking and clock frequency increasingincreasing

Coupling capacitance and inductance Coupling capacitance and inductance could not be ignoredcould not be ignored

Longer delay and crosstalk caused by Longer delay and crosstalk caused by coupling effectscoupling effects

Global routing with performance Global routing with performance optimization becomes more important.optimization becomes more important.

Page 4: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 44

Previous Work(1)Previous Work(1)

Noise modelingNoise modelingSakurai model Sakurai model (T. Sakurai, C. Kobayashi, M. Node, 1993)

LSK model for calculating coupling inductanceLSK model for calculating coupling inductance (L. He, K. M. Lepak, 2000)

Model for calculating noise voltageModel for calculating noise voltage (K. M. Lepak, I. Luwandi, L. He, 2001)

Page 5: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 55

Previous Work(2)Previous Work(2)

Noise minimizationNoise minimization Spacing in detailed routing phaseSpacing in detailed routing phase (K. Chaudhary, A. Onozawa et al, 1993) Track permutation in detailed routing phaseTrack permutation in detailed routing phase (T. Gao, C. L. Liu, 1996) WWire perturbationire perturbation in detailed routing phase in detailed routing phase (P. Saxena, C. L. Liu, 1999) Crosstalk reduction after global routing phaseCrosstalk reduction after global routing phase (T. X. Xue, E. S. Kuh, D. F. Wang, 1997) (J. J. Xiong, J. Chen, J. Ma, L. He, 2002) Coupling capacitance crosstalk reductionCoupling capacitance crosstalk reduction in global routing phasein global routing phase

(J. Y. Xu, T. Jing, X. L. Hong, L. Zhang, 2004, ASP-DAC)

Page 6: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 66

Major ContributionsMajor Contributions

An efficient crosstalk elimination algorithm An efficient crosstalk elimination algorithm based on Tabu search and shielding technbased on Tabu search and shielding technology is proposed.ology is proposed.

Timing performance and routability are simTiming performance and routability are simultaneously considered at global routing leultaneously considered at global routing level. vel.

By using LSK model, we take coupling indBy using LSK model, we take coupling inductance into consideration. uctance into consideration.

Page 7: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 77

OutlineOutline

Introduction & Previous WorkIntroduction & Previous WorkProblem FormulationsProblem FormulationsOur Algorithm: PO-GR Our Algorithm: PO-GR Experimental Results & DiscussionsExperimental Results & DiscussionsConclusionsConclusions

Page 8: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 88

GRCi

Cells

Problem Formulations(1)—Global Problem Formulations(1)—Global Routing ProblemRouting Problem

Fig.1 Global Routing Graph(GRG)

1GRC

GRG1v

e

v2

Page 9: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 99

Problem Formulations(2)—LSK ModelProblem Formulations(2)—LSK Model

2

)()( jgifkij

ij jtitit kK ,

1

K

f(i)

g(j)

gl Ni Nj gr

Wire

order

kij

Accurate calculation:ji

jiij

LL

Lk

,

Simplified calculation in LSK model:

Fig.2 LSK Model

Kit for segment of net i in region t:

(for all j sensitive to i)

t

itt KlLSK

LSK, the total K value for net i:

(for all t occupied by net i)

Page 10: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 1010

Problem Formulations(3)—Tabu SearchProblem Formulations(3)—Tabu Search

Step1. Select an initial solution xnow, and set Tabu list H=empty;Step2. While not meet the stop conditions do

Generate a candidate list Can_N(xnow) from the neighborhood N(xnow,H) of xnow that doesn’t conflict with H;

Select the best solution from Can_N(xnow):xnext;xnow=xnext;Update Tabu list H;

End While

Key factors: neighborhood

Tabu object & Tabu length

aspiration rule

How to search efficiently

How to choose properly

How to set the reasonably

Outline:

Page 11: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 1111

OutlineOutline

Introduction & Previous WorkIntroduction & Previous WorkProblem FormulationsProblem FormulationsOur Algorithm: PO-GR Our Algorithm: PO-GR Experimental Results & DiscussionsExperimental Results & DiscussionsConclusionsConclusions

Page 12: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 1212

Our Algorithm: Our Algorithm: PO-GR—(1)PO-GR—(1)

Part 1Part 1: timing performance and routability: timing performance and routability Part 2Part 2: Crosstalk estimation and elimination : Crosstalk estimation and elimination

Part 1 firstly generates an initial routing solution considering congestion and timing optimization

Then, Part 2 eliminates the crosstalk from the solution by inserting shields and gets a mid-result

Finally, regard the mid-result as input and send it to Part 1 for iterations

Page 13: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 1313

Part 2

Part 1

Subtract tracks used by shields

Iterations

Our Algorithm: Our Algorithm: PO-GR—(2)PO-GR—(2)

Fig.3 flow chart of PO-GR

Call Part 1 to generate a minimum wire length

initial solution X0 without congestion and timing

violation;

Call Part 2 to obtain X1 = CEE(X0);

If no edge overflow in X1 then go to 4.;

Else do go back to 1. to generate a new

solution;

Call Part 1 again to obtain congestion and timing

optimized solution X2 from X1;

pseudo code of PO-GR

1.

2.3.

4.

CEE

Page 14: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 1414

Part 2—CEEPart 2—CEE

Get LSK bound

Step 1: Crosstalk bound budgeting

Step 2: Eliminate crosstalk in each region

Step 3: Local refinement

partition the LSK bound at each sink of a net into the GRG edges belonging to the source-sink paths.

Insert shield with specific

method Check each net

to eliminate possible remnant

crosstalk and delete

unnecessary shields to

minimize total area. Fig.4 flow chart of CEE

Page 15: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 1515

Crosstalk Elimination Based on TabCrosstalk Elimination Based on Tabu Search(1)u Search(1)

Get LSK bound

Step 1: Crosstalk bound budgeting

Step 2: Eliminate crosstalk in each region

Step 3: Local refinement

Simulated Annealing, or Tabu

search?

The runtime of Simulated Annealing could be very long,

while with similar performance, Tabu search is much faster.

Page 16: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 1616

Set the global solution in one GRG edge as initial solution xcur;Set Tabu list H=empty; a=0; c=0;While( a < Na )

tmpcost = ;b = 0;While (b < Nb )

xnew = xcur;randommove ( xnew );If cost (xnew) is in H

c++;If c < Nc, then continue;Else c = 0;

If cost (xnew) < tmpcost, then xtmp = xnew;

tmpcost = cost (xnew);b++;

End WhileInsert xcur into H;xcur= xtmp;If cost (xcur) < cost (xmin), then xmin = xcur; a = 0;Else a++;Update H;

End While

xcur: current solution;

xnew: candidate in neighborhood of xcur;

xtmp: best candidate;

xmin: best solution ever reached;

Na: maximum iteration times with no improvement;

Nb: number of candidates selected from neighborhood;

Nc: maximum trying times for searching one candidate;

randommove(x): method of generate a candidate in neighborhood of x;

cost(x): evaluation of solution x;

Page 17: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 1717

Crosstalk Elimination Based on TabCrosstalk Elimination Based on Tabu Search(2)u Search(2)

randommove(x):

{

swap two net randomly,

move one net randomly,

insert one shield randomly,

remove one shield randomly

}

cost(x)=w1*c1 + w2*c2 + w3*c3 + w4*c4

c1: total number of nets that are adjacent

to their sensitive nets;

c2: total number of shields in a GRG edge;

c3: summation of (Keff - Kth ) for all nets wit

h Keff > Kth in a GRG edge;

c4: total number of nets with (Keff > Kth) in

a GRG edge.

Page 18: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 1818

OutlineOutline

Introduction & Previous WorkIntroduction & Previous WorkProblem FormulationsProblem FormulationsOur Algorithm: PO-GR Our Algorithm: PO-GR Experimental Results & DiscussionsExperimental Results & DiscussionsConclusionsConclusions

Page 19: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 1919

Benchmark DataBenchmark Data

Circuits Number of nets Grids

 C2

745 9 11

 C5

1764 16 18

 C7

2356 16 18

Technology: 0.2um

Sensitivity rate: 0.5 for all nets and sensitivity matrix is random.

LSK bound:1000 at each sink

Page 20: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 2020

Experimental Results(1)Experimental Results(1)Circuits C2 C5 C7

Step 2 inCEE

Simulated Annealing(SA)

901.97 2140.36 3748.78

Tabu search 45.75 112.87 237.80

Runtime reduction 856.22 2027.49 3510.98

Step 3 inCEE

SA 153.53 56.36 453.70

Tabu search 91.44 34.08 227.50

Runtime reduction 62.09 22.28 226.20

Total runtime(Step2+Step3

)

SA 1055.50 2196.72 4202.48

Tabu search 137.19 146.95 465.30

Total runtime reduction 918.31 2049.77 3737.18

Comparison of runtime(s) between Tabu search and Simulate Annealing

Page 21: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 2121

Experimental Results(2)Experimental Results(2)

Circuits C2 C5 C7

Area SA 149196 271301 342395

Tabu search 149202 273307 346393

Shieldnumber

(Sn)

SA 158 460 589

Tabu search 165 501 621

Sn increment 7 41 32

Comparison of results between Tabu search and Simulated Annealing

Page 22: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 2222

Experimental Results(3)Experimental Results(3)Circuits C2 C5 C7

W mode(um)

(Part 1)Wire length 480350 1307456 1552916

(PO-GR) Wire length 477326 1368198 1575922

Wire length increment -0.63% 4.65% 1.48%

T mode

(Part 1)Wire length 476424 1346876 1569366

(PO-GR) Wire length 479100 1280352 1567818

Wire length increment 0.56% -4.94% -0.10%

(Part 1) Min-R -0.009243 0.012124 0.000034

(PO-GR) Min-R -0.007195 0.003439 0.001243

Comparison of results between P1 and PO-GR

Page 23: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 2323

DiscussionsDiscussions

Tabu search sharply decreases the runtime of step2 in CETabu search sharply decreases the runtime of step2 in CE

E(about 20x speedup), and E(about 20x speedup), and doesn’t make any bad effects doesn’t make any bad effects

onon step3 in CEE(its runtime slightly decreases too). step3 in CEE(its runtime slightly decreases too).

Tabu search Tabu search can can obtains similar results in routing area obtains similar results in routing area

compared with compared with SA SA methodmethod,, while twhile the shielding number he shielding number

only increases a little.only increases a little.

Tabu search Tabu search achieve 2.5x wire length reductionachieve 2.5x wire length reduction compared compared

with SA.with SA.

PO-GR keeps the effectiveness in timing optimizationPO-GR keeps the effectiveness in timing optimization..

Page 24: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 2424

OutlineOutline

Introduction & Previous WorkIntroduction & Previous WorkProblem FormulationsProblem FormulationsOur Algorithm: PO-GR Our Algorithm: PO-GR Experimental Results & DiscussionsExperimental Results & DiscussionsConclusionsConclusions

Page 25: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 2525

ConclusionsConclusions

PO-GR is able to:PO-GR is able to:

Take coupling inductance into consideration. Take coupling inductance into consideration.

Tackle coupling noise, timing performance and routability Tackle coupling noise, timing performance and routability

simultaneously.simultaneously.

Efficiently eliminate crosstalk throughout the global routinEfficiently eliminate crosstalk throughout the global routin

g phase by inserting shields and has little influence on wig phase by inserting shields and has little influence on wi

re length and timing performance.re length and timing performance.

Preserve the good routing result and greatly decrease thPreserve the good routing result and greatly decrease th

e running time.e running time.

Page 26: Performance and RLC Crosstalk Driven Global Routing

23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 2626

THANK YOUTHANK YOU