240 likes | 413 Views
ASP-DAC 2008 Jhih-Rong Gao Pei-Ci Wu Ting-Chi Wang. A New Global Router for Modern Designs. Outline. Introduction Problem formulation NTHU-router Experimental Results Conclusion. Outline. Introduction Problem formulation NTHU-router Experimental Results Conclusion. Outline.
E N D
ASP-DAC 2008 Jhih-Rong Gao Pei-Ci Wu Ting-Chi Wang A New Global Router for Modern Designs
Outline • Introduction • Problem formulation • NTHU-router • Experimental Results • Conclusion
Outline • Introduction • Problem formulation • NTHU-router • Experimental Results • Conclusion
Outline • Introduction • Problem formulation • NTHU-router • Experimental Results • Conclusion
Global bins Global bins Cells Global edges Global edges Problem Formulation • supply s(e) • the number of available routing tracks passing through an edge e • demand d(e) • the number of wires that utilize an edge e • Wirelength is as small as possible
Outline • Introduction • Problem formulation • NTHU-router • Experimental Results • Conclusion
NTHU-router:Methodology Initial congestion map construction Congested region identification Monotonic pattern routing For several iterations Overflow resolved? Yes No Adaptive multi-source multi-sink maze routing For several iterations Refinement
NTHU-router:Methodology Initial congestion map construction Congested region identification Monotonic pattern routing For several iterations Overflow resolved? Yes No Adaptive multi-source multi-sink maze routing For several iterations Refinement
Initial congestion map construction Decompose using FLUTE Route with two probabilistic L-shaped patterns Modify net topology by edge shifting Reroute with less cost L-shaped pattern
Initial congestion map construction Decompose using FLUTE c a Route with two probabilistic L-shaped patterns b d Modify net topology by edge shifting c e Reroute with less cost L-shaped pattern a f b d
Initial congestion map construction c Decompose using FLUTE e a f Route with two probabilistic L-shaped patterns b d Modify net topology by edge shifting c Reroute with less cost L-shaped pattern a f e b d
Initial congestion map construction Decompose using FLUTE c a f Route with two probabilistic L-shaped patterns e b d Modify net topology by edge shifting c Reroute with less cost L-shaped pattern a f e b d
NTHU-router:Methodology Initial congestion map construction Congested region identification Monotonic pattern routing For several iterations Overflow resolved? Yes No Adaptive multi-source multi-sink maze routing For several iterations Refinement
Rip-up and Reroute Based on Congested Region Identification • The order of nets to be ripped up & rerouted affects the routing quality very much • We propose an algorithm to identify congested regions and rip-up & reroute two-pin nets with similar congestion at a time
History Based Cost Function Congestion penalty pe Congestion
Congested Region Identification • Partition the interval between the maximum congestion value and 1 into 10 sub-intervals • Each congested edge belongs to a sub-interval • For each sub-interval Ik • Expand a rectangular region re from each edge e until avg_cong(re) is smaller than the lower bound of Ik • Find two-pin nets within the region • For each 2-pin net in increasing order of size of bounding box • Rip-up & reroute using historical Monotonic Pattern Routing • Optional historical Adaptive Multi-source Multi-sink Maze Routing
Congested Region Identification:An Example of Range Identification 1.5 1.5 1.5 1.5 1.6 1.6 1.6 1.5 1.5 1.6 1.6 1.8 1.8 2 1.8 1.8 1.5 1.5 1.8 1.8 1.6 1.6 1.5 1.6 1.6 1.6 1.5 1.5 1.5 1.5 1.5 • Partition [2, 1] • {I1=[2, 1.8), I2=[1.8, 1.6),I3= [1.6, 1.4),...,Im= [1.2, 1)}
NTHU-router:Methodology Initial congestion map construction Congested region identification Monotonic pattern routing For several iterations Overflow resolved? Yes No Adaptive multi-source multi-sink maze routing For several iterations Refinement
NTHU-router:Methodology Initial congestion map construction Congested region identification Monotonic pattern routing For several iterations Overflow resolved? Yes No Adaptive multi-source multi-sink maze routing For several iterations Refinement
Adaptive multi-source multi-sink maze routing T1 T1 a a T2 T2 b b x x y y multi-source multi-sink maze routing Adaptive multi-source multi-sink maze routing
NTHU-router:Methodology Initial congestion map construction Congested region identification Monotonic pattern routing For several iterations Overflow resolved? Yes No Adaptive multi-source multi-sink maze routing For several iterations Refinement
Refinement • Apply when iterative historical routing gets stuck • coste=1+he.pe • he dominates edge cost when e tends to be congested • Another evaluation way • If passing e induces overflow coste=1 • Otherwise coste=0 • Rip-up & reroute 2-pin nets in decreasing order of total overflow • Monotonic pattern routing • Optional adaptive multi-source multi-sink maze routing
Conclusion • History based cost function to perform iterative rip-ups and reroutes. • A congestion region identification method is proposed to specify the order for the nets to be ripped up and rerouted. • Refinement method to further reduce overflow when iterative history based rip-ups and reroutes reach its bottleneck.