performance and rlc crosstalk driven global routing
Post on 31-Dec-2015
20 Views
Preview:
DESCRIPTION
TRANSCRIPT
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
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
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.
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)
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)
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.
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
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
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)
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:
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
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
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
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
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.
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;
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.
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
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
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
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
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
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..
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
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.
23/4/1923/4/19 ISCAS 2004, Vancouver, CanadaISCAS 2004, Vancouver, Canada 2626
THANK YOUTHANK YOU
top related