Professional Documents
Culture Documents
© KLMH
High-Performance Global Routing
with Fast Overflow Reduction
- by Huang-Yu Chen, Chin-Hsiung Hsu, and Yao-Wen Chang
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 1
Lienig
EECS 527 Paper Presentation
© KLMH
Outlines
Introduction
Problem Formulation
Routing Methodology
• Pre-routing
• Initial Iterative Monotonic Routing
• Iterative Forbidden-Region Rip-up/Rerouting (IFR)
• Layer Assignment
Experimental Results
Q&A
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 2
Lienig
Introduction
© KLMH
• State-of-the-art routing techniques
maze routing
A*-search routing
pattern routing
monotonic routing
multi-commodity flow
integer linear programming (ILP)
Not clear on their capability to handle
the upcoming design challenges
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 3
Lienig
Introduction
© KLMH
State-of-the-art Routers
Based on INR (iterative negotiation-based
rip-up/rerouting)
INR becomes the main stream due to its great ability
to spread out congestion as well as to reduce the
overflow
Lagrange Relaxation (IR) mathematical basis
to improve the INR
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 4
Lienig
Introduction
© KLMH
Developments on this paper
New global router - NTUgr, that contains 3 major
steps: pre-routing, initial routing and enhanced INR
New techniques in pre-routing
• Congestion-hotspot historical cost pre-increment
• Small bounding-box area routing
Enhanced INR
• Multiple forbidden regions expansion
• Critical subnets rerouting selection
• Look-ahead historical cost increment
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 5
Lienig
Problem Formulation
© KLMH
Routing & Goal
Routing region - partitioned into global cells and a 2D or
3D routing graph composed of nodes (global tile nodes)
and edges (global edges)
Each global edge is associated with a capacity
Objectives of global routing – Minimize the total overflow
Prioritized order of ISPD’08
• Total overflow
• Maximum overflow
• Weighted total wire length
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 6
Lienig
Some basics
© KLMH
Global tile node & global edge
Overflow: the amount of routing demand
that exceeds the given capacity
Global edge
Tile boundary
Global tile
Tile
node
7
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing
Lienig
Some basics
© KLMH
State-of-the-art INR
Proposed in PathFinder [McMurchie and Ebeling, FPGA’95]
Spreads the congested wires iteratively
At the (i)-th iteration, the cost of a global edge e:
(be he( i ) ) pe
h ( i 1)
1 if e has overflow
be: base cost of using e, he (i 1)
(i ) e
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing
Lienig
Routing Methodology – Flow Chart
© KLMH
Flow of the global router
Three new techniques
2nd place of ISPD 2008 Global Routing Contest
3D
3DBenchmark
Benchmark
3D Prerouting
Prerouting
2D
3D 2Dcapacity
capacitymapping
mapping
Enhanced Initial
InitialRouting
Routing
Enhanced2D
2Drouting
routing
Iterative
IterativeForbidden-region
Forbidden-region
2D 3D
2D 3Dlayer
layerassignment
assignment Rip-up/rerouting
Rip-up/rerouting(IFR)
(IFR)
3D
3Drouting
routingresult
result
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 9
Lienig
Routing Methodology - Prerouting
© KLMH
3D
3DBenchmark
Benchmark
Prerouting
Prerouting
3D 2D
3D 2Dcapacity
capacitymapping
mapping
Initial
InitialRouting
Routing
Enhanced
Enhanced2D
2Drouting
routing
Iterative
IterativeForbidden-region
Forbidden-region
2D 3D
2D 3Dlayer
layerassignment
assignment Rip-up/rerouting
Rip-up/rerouting(IFR)
(IFR)
3D
3Drouting
routingresult
result
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 10
Lienig
Routing Methodology - Prerouting
© KLMH
Pre-routing
Congestion-hotspot Historical Cost Pre-increment
• Mainly for difficult routing instances, e.g., ISPD’07 newblue3 circuit
• Handle with high pin density
• Pre-increment the historical cost he, in cost function (be + he) ・
pe
• For ith global edges lying around the high-pin-density tiles
before going into the INR procedures
• Achieve the least 31024 overflows for newblue3 ever
in the literature
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 11
Lienig
Routing Methodology – Initial Iterative Monotonic
Routing
© KLMH
3D
3DBenchmark
Benchmark
Prerouting
Prerouting
3D 2D
3D 2Dcapacity
capacitymapping
mapping
Initial
InitialRouting
Routing
Enhanced
Enhanced2D
2Drouting
routing
Iterative
IterativeForbidden-region
Forbidden-region
2D 3D
2D 3Dlayer
layerassignment
assignment Rip-up/rerouting
Rip-up/rerouting(IFR)
(IFR)
3D
3Drouting
routingresult
result
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 12
Lienig
Routing Methodology – Initial Iterative Monotonic
Routing
© KLMH
Initial Iterative Monotonic Routing
First stage that completes all subnets in the whole chip
Monotonic paths: this stage stops when the overflow reduction
at the (i+1)-th iteration is less than 5% from the i-th iteration
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 13
Lienig
Routing Methodology - IFR
© KLMH
3D
3DBenchmark
Benchmark
Prerouting
Prerouting
3D 2D
3D 2Dcapacity
capacitymapping
mapping
Initial
InitialRouting
Routing
Enhanced
Enhanced2D
2Drouting
routing
Iterative
IterativeForbidden-region
Forbidden-region
2D 3D
2D 3Dlayer
layerassignment
assignment Rip-up/rerouting
Rip-up/rerouting(IFR)
(IFR)
3D
3Drouting
routingresult
result
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 14
Lienig
Routing Methodology - IFR
© KLMH
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 15
Lienig
Routing Methodology - IFR
© KLMH
Modified pe in IFR
Pe is usually set as de/ce
In proposed IFR
Lienig
Routing Methodology - IFR
© KLMH
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 17
Lienig
Routing Methodology - IFR
© KLMH
Multiple Forbidden-region Construction at the first phase
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 18
Lienig
Routing Methodology - IFR
© KLMH
Second Phase
Invoked when the number of overflows in the first phase stops
decreasing and gets stuck at local optimal solution
New technique: Region Propagation Leveling (RPL)
“Inherit” all forbidden regions at the previous iterations and then
expands these forbidden regions simultaneously
Avoids the local optima solutions in the first phase
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 19
Lienig
Routing Methodology - IFR
© KLMH
Effects of RPL
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 20
Lienig
Routing Methodology - IFR
© KLMH
Third Phase
Starts when the current number of overflows is less than 0.5%
of the total overflows after the initial iterative monotonic routing
Final expansion – expand the forbidden region
to the entire routing graph to quickly reduce the remaining overflows
Why? Because INR becomes less effective in reducing the
overflows when the total overflows become smaller
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 21
Lienig
Routing Methodology - IFR
© KLMH
Comparisons of Congested Regions
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 22
Lienig
Routing Methodology – Critical Subnets Rerouting
Selection
© KLMH
New speed-up scheme into IFR – Critical Subnets rerouting
selection
Reduce the number of rerouting subnets in each iteration
Iterative rip-up/rerouting takes the most run-time,
thus the key for speed-up is to reduce the number of rerouting
subnets in each iteration
Only critical subnets are ripped-up and rerouted in IFR
Criterion for a critical subnet n, S is a constant and e is a global
edge passed by n
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 23
Lienig
Routing Methodology – Look-ahead Historical Cost
Increment
© KLMH
Recall: main advantage of INR is the great ability to spread out
congestion (overflows)
he Update scheme for most state-of-the-art routers, where K is a
constant, and ce and de represent the capacity and demand of e
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 24
Lienig
Routing Methodology – Look-ahead Historical Cost
Increment & Layer Assignment
© KLMH
New updating scheme
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 25
Lienig
Experimental Results
© KLMH
NTUgr in C++ on 2.8GHz AMD Opteron Linux workstation
with 12 GB memory
Comparisons with state-of-the-art global routers in literature
ISPD’07 and ISPD’08
Proposed NTUgr obtains the best routing solutions for the most
difficult instance, newblue3 (with only 31024 overflows) and
newblue4 (with only 142 overflows)
High-quality results for the ISPD’07 and ISPD’08 benchmarks
for both overflow and runtime
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 26
Lienig
Experimental Results
© KLMH
Achieved 1.94X speed up and better overflow reduction
with similar total wire length
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 27
Lienig
Experimental Results
© KLMH
3-D ISPD’07 Results
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 28
Lienig
Experimental Results
© KLMH
3-D ISPD’08 Results
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 29
Lienig
EECS 527 Paper Presentation
© KLMH
Thanks!
Q&A
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing 30
Lienig