2003-4-8 IC-SOC'2003, Taiwan 1
On the Global Routing Algorithms ConsideringOn the Global Routing Algorithms ConsideringRoutabilityRoutability and Timing Performanceand Timing Performance
Tong Tong JingJing, , XianXian--Long HongLong HongJingJing--YuYu XuXu, , YiYi--CiCi CaiCai
EDA Lab., Dept . of Computer Science and Technology Tsinghua Univ., Beijing 100084, P. R. China
2003-4-8 IC-SOC'2003, Taiwan 2
OutlineOutline1. Single Net----Steiner Tree Algorithms
Topology optimization considering minimal wire length / timing performance
2. Routability----Congestion Reduction
3. Unified Timing and Congestion Optimization
4. Future Research
2003-4-8 IC-SOC'2003, Taiwan 3
IntroductionIntroduction
Minimizing congestion is still a problem
Fabrication technology → VDSM device size and giga-hertz clock frequencies
Interconnect delay → chip timing
Need efficient timing and congestion optimization global routing algorithms
2003-4-8 IC-SOC'2003, Taiwan 4
1.1. Single NetSingle Net--------SteinerSteiner Tree AlgorithmsTree AlgorithmsPrevious ResearchMinimum Wire Length Steiner Tree AlgorithmHierarchical Steiner Tree Algorithm Based on Dreyfus-Wagner Algorithm
H. Y. Bao, X. L. Hong, Y. C. Cai Microelectronics & Computer, 1998
Timing-Driven Steiner Tree AlgorithmsIDW: Iterative Dreyfus-Wanger BasedCFD: Constructed Force Directed Approach
X. L. Hong. ACM/IEEE DAC, 1993X. L. Hong. Chinese J. Computers, 1995 X. L. Hong. Chinese J. of Semiconductors, 1995
Timing-Driven Steiner Tree Algorithm Based on Sakurai ModelH. Y. Bao, X. L. Hong, Y. C. CaiChinese J. of Semiconductors, 1999
2003-4-8 IC-SOC'2003, Taiwan 5
Hierarchical Timing-Driven Steiner Tree AlgorithmJ. Y. Xu, X. L. Hong, T. Jing, Y. C. Cai, J. GuIEEE/ACM ASP-DAC, 2002
s
T1t
GRG
e
2003-4-8 IC-SOC'2003, Taiwan 6
Experimental Results--Comparison on run time
1
10
100
1000
10000
100000
1000000
6 7 8 9 10 11 12Number of Pins
CPU
Tim
e(m
s)Optimal SolutionCPU Time(ms)Hierarchical SolutionCPU Time(ms)
2003-4-8 IC-SOC'2003, Taiwan 7
ConclusionsBy decomposing the minimum time delay Steiner tree problem into hierarchy, the high-quality solutions are provided with a significant speed up.
Comparison on time delay show a total speed up of 1000x ~ 100000x with no degradation of wire length performance.
For nets with large number of pins, our approach also achieves satisfactory results in a very short time.
2003-4-8 IC-SOC'2003, Taiwan 8
Congestion Reduction Algorithms for Global RoutingCongestion Reduction Algorithms for Global Routing** Based on Search Space Traversing Technology (SSTT)* Random GR Independent of Net Ordering (RINO)
RINO Algorithm. H. Y. Bao, T. Jing, X. L. Hong, Y. C. Cai IEEE/ACM ASP-DAC, 1999 Chinese J. Computers, 2001
Parallel RINO Algorithm.J. Y. Xu, H. Y. Bao, X. L. Hong, Y. C. Cai, T. Jing Chinese J. of Semiconductors, 2002
SSTT Algorithm.T. Jing, X. L. Hong, H. Y. Bao, Y. C. Cai, J. Y. Xu
. IEEE ASICON, 2001Journal of Computer Science and Technology, 2003
2.2. Congestion ReductionCongestion ReductionStill a critical problem in global routing
2003-4-8 IC-SOC'2003, Taiwan 9
Local search method with search space smoothing (SSS, J. Gu, 1994)Manages to smooth the search space and “hides” some local
minimum points�Reduce the effect of local minimum pointsNeeds to find a suitable “trivial case” �The usage of this method is
limited.
T h e m in im u m so lu tion in o rig in al space
T he in itia l searchp o in t in o rig in a l space
T he sm o o thed so lu tion space 1
T h e sm oo th ed so lu tion space 2
… … …
T h e sm o o thed so lu tion space n
T he o rig in al so lu tion space
A n exam ple o f one d im ensiona l so lu tion space sm oo th ing : th e m in im u m so lu tiono f so lu tio n space i w ill be the in itia l s ta rting p o in t in th e so lu tion sp ace i+ 1
2003-4-8 IC-SOC'2003, Taiwan 10
Stochastic optimization strategyReroute a random subset of congested nets
simultaneously using the concurrent routing procedure R1 (search towards the optimum point in one direction)
Deterministic optimization strategyThe mid-solution got in R1 is then refined by
the sequential processing procedure R2 (search towards the optimum point in another direction)
There is a repeated iteration between R1 and R2
Local enumeration strategy
2003-4-8 IC-SOC'2003, Taiwan 11
Ncong = {n1, n2, . . . , ni}
1. Get the set of congestednets from GRG
Nran is a random subset of Ncong
2. Get the set of nets fromNcong to be rerouted
3. Free the GRG edge resourcesheld by nets in Nran
4. Rip up & reroutethe nets in Nran
GRG without nets in Nran
GRG after reroute
Rerouting done by R1
2003-4-8 IC-SOC'2003, Taiwan 12
|Nran||Ncong|
Iterations
0.2 Upper Bound
LowerBound
Get Mid-Solution Smid
Start R2Start R1
Get Sgood
Start R1
The repeating iterations between R1 and R2
2003-4-8 IC-SOC'2003, Taiwan 13
TheOriginal
Tree
The NewConstructed
Tree
The BestTree Circular
LinkedList
The best Steiner tree selecting for a congested net
done by R3
2003-4-8 IC-SOC'2003, Taiwan 14
Thus, it disturbs the environment of getting trapped in local minimum. As a result, it is able to transit from local minimum point and make a fast search in the whole search space.
an initial solution of one optimization sub-strategy
search trace
a local minimum point
a global minimum point
search space
search transition
Fig.3. The illustration of SSTT algorithm
a mid-solution
2003-4-8 IC-SOC'2003, Taiwan 15
Our router performs fast and get good routing solutions
Our router does well on both MCNC benchmarks and industrial circuits.
Since any arbitrary initial solution can be accepted, the initialization in our algorithm is greatly simplified.
Conclusions
2003-4-8 IC-SOC'2003, Taiwan 16
The main contribution of this workThe main contribution of this workDifferent from existing algorithms, the UTACO algorithm adopts a
shadow price mechanism to incorporate timing and congestion optimizing into one unified objective function. It can optimize timing and congestion simultaneously. The shadow price of a net is the sum of its congestion price and timing price.
The timing analysis strategy in UTACO is different from that in the above mentioned approaches. Based on the CC-net and its cut, we can reduce the delay in an overall survey instead of greedy trying.
UTACO AlgorithmUTACO AlgorithmT. Jing, X. L. Hong, H. Y. Bao, Y. C. Cai, J. Y. XuIEEE/ACM ASP-DAC, 2003
3.3. Unified timing and congestion optimizationUnified timing and congestion optimization
2003-4-8 IC-SOC'2003, Taiwan 17
Timing modelThe Sakurai-delay-based timing model is used here. Note that the
Sakurai-delay-based timing model is an extension of Elmore-delay-based timing model with adjusted weights on different terms.
Problem formulation
GRC1
GRGv1
e
v2
SteinerTree
Pin Chip
Global Routing Graph (GRG)
2003-4-8 IC-SOC'2003, Taiwan 18
The nets-based timing analysis strategy[J. Huang, X .L. Hong, C. K. Cheng et al, IEEE/ACM DAC, 1993]
The critical-path-based timing analysis strategy[X. L. Hong, T. X. Xue, J. Huang et al, IEEE TCAD, 1997]
The critical-network-based timing analysis strategy[J. Tong, X. L. Hong et al,
IEEE ISCAS, 2002Journal of Computer Science and Technology, 2003]
Prof. X. L. Hong introduced it in IC-SOC 2002, USA.
Previous ResearchTypical timing analysis strategies
2003-4-8 IC-SOC'2003, Taiwan 19
Ref. [Shragowitz’87, Carden IV’96, Albrecht’00] introduce the multi-commodity flow into global routing. The goal of these algorithms is only to minimize congestion. Timing optimization does not be considered and formulated.
Based on shadow price mechanism, we formulate global routing as a multi-commodity flow problem and incorporate timing and congestion optimizing into one unified objective function.
The objective function is the slack of congestion with the clock period as the delay limit that from registers and inputs to registers and outputs.
2003-4-8 IC-SOC'2003, Taiwan 20
In this paper, The multi-commodity flow is expressed by a linear programming formulation as a primal problem. We then convert the primal problem into a dual formulation using the shadow price as the variables.
In the dual formulation, the wiring congestion is reflected by the congestion price at each edge of the GRG. The congestion price of a net is defined to be the sum of the congestion prices on the edges passed by that net.
The signal delay is reflected by the timing price at each net. If we view each timing price as a timing flow on each net, the timing flow forms paths flowing from inputs and registers to registers and outputs. The amount of the timing flow on each path corresponds to the criticality of the timing constraint on that path.
2003-4-8 IC-SOC'2003, Taiwan 21
The shadow price of a net is the sum of its congestion price and timing price. The objective of the dual problem is to maximize the sum of shadow prices of all nets together with the clock period limit on the boundary of the circuit.
The primal and dual formulation offers theoretical upper and lower bounds of the routing solution. Throughout the optimization process, the difference of the two bounds reduces. When the difference approaches zero, we have an optimal solution.
However, the amount of routing flow is limited by discrete numbers, the difference always exists. The bounds thus provide the user’s insight into the quality of the solutions.
2003-4-8 IC-SOC'2003, Taiwan 22
Linear programming formulationMinimize sSubject to
re: ∀ e ∈ E (A)
λn: ∀ n ∈ N (B)
ωij: ∀ i ∈ ns, j ∈ nt, ∀ n ∈ N (C)
ui: ∀ node i (D)
ai ≥ 0, ≥0, s ≥ 0 ∀ node i, n ∈ N
0)(,
≥⋅+⋅− ∑∈
eNnf
fne
fn cstt ϕ
nf
fn bt ≥∑
01 ≥+⋅⋅−− ∑ jf
fn
fij
ni atdb
a
Pai −≥−
2003-4-8 IC-SOC'2003, Taiwan 23
Maximize (E)
Subject tos : (F)
: ∀ n ∈ N (G)
ai : ∀ node i (H)
λn ≥ 0, ωij ≥ 0 ∀ n ∈ N, i ∈ ns, j ∈ ntui ≥ 0, re ≥ 0 ∀ node i, e ∈ E
)( ∑∑ ⋅−⋅∈ i
iNn
nn Pubλ
1≤⋅∑∈Ee
ee rc
fnt
0≤−+− ∑∑ ij
jij
ij uωω
Dual linear programming formulation
01)(,
≤⋅⋅−+⋅− ∑∑∈∈∈
ijf
ijnjnin
nEe
fnee db
trts
ωλϕ
2003-4-8 IC-SOC'2003, Taiwan 24
By using the method of iterating the primal dual process, we will choose the nets with to reroute.)(max )1()(
,max+−=∆ k
tk
tnff
nf
nλλλ
)(max )1()(,max
+−=∆ kt
ktnf
fn
fn
λλλ
))1)((
)1)(((max
)1()1(
)()(
,
+
∈∈∈
+
∈∈∈
⋅⋅+⋅
−⋅⋅+⋅=
∑∑
∑∑
kij
fij
njninEe
fne
ke
kij
fij
njninEe
fne
kenf
db
tr
db
tr
ts
ts
ωϕ
ωϕ
∀ n ∈ N (O)
)1)(( ijf
ijnjninEe
fneet
db
trts
fn
ωϕλ ⋅⋅+⋅= ∑∑∈∈∈
Let . Then, )(min,
fntnfn
λλ =
2003-4-8 IC-SOC'2003, Taiwan 25
How to select the nets?----By creating the CC-net
Based on the information about congested edges and critical paths given by the primal iteration, we create a network NW.
NW= (Vcc, Ecc, , PI, PO), which consists of and only consists of all congested edges and critical paths. The network NW is called CC-net.
Where Vcc is the set of pins of NWEcc is the set of edges of NWPI is the source of NWPO is the sink of NW
λmax∆
2003-4-8 IC-SOC'2003, Taiwan 26
Partial CC-net in MCNC C2
PI
PO
2003-4-8 IC-SOC'2003, Taiwan 27
How can we get in CC-net?We select the min-cut of the CC-net. Then, decrease
the delay and congestion of all edges in the min-cut. As a result, we are able to get the nets with .
Based on the theory of maximum network flow, we can get the maximum flow of the CC-net. If the value of the maximum flow does not equal ∝, we will get its min-cut.
λmax∆
λmax∆
2003-4-8 IC-SOC'2003, Taiwan 28
Experimental results and conclusionsonclusions
The UTACO algorithm has been implemented in the C language on a Sun Ultra Enterprise 450.
We compare routing results between UTACO and SSTT algorithm on main optimization objectives. The experimental results are also compared with other typical algorithms.
The experimental results show that the UTACO algorithm is able to:
• Optimize both timing and congestion simultaneously and efficiently
• Reduce the delay in an overall survey
• Obtain good routing results on other optimizing objectives, such as wire length, overflow edges
• Take a very short running time
2003-4-8 IC-SOC'2003, Taiwan 29
Coupling considered GR algorithms• Coupling effects → longer delay • Coupling effects → noise (crosstalk)
Efficient timing models
Routing for special applications• Data-path routing inside SOC
Interconnect optimization• Topology optimization + buffer insertion / sizing
+ wire sizing
4. Future Research
2003-4-8 IC-SOC'2003, Taiwan 30
Thank you!Thank you!
Tong Tong JingJing ((����),), PhPh.D..D.Associate Prof.
Dept . of CST, Tsinghua Univ.Beijing 100084, P. R. ChinaTel.: +86-10-62785564Fax: +86-10-62781489E-mail: [email protected]