100 likes | 255 Views
Global Routing. Prof. Shiyan Hu shiyan@mtu.edu Office: EERC 731. Global Routing Approaches. Sequential Approach Net ordering based approach Concurrent Approach Integer Programming. Net Ordering. In sequential approach, we need some net ordering .
E N D
Global Routing Prof. Shiyan Hu shiyan@mtu.edu Office: EERC 731
Global Routing Approaches • Sequential Approach • Net ordering based approach • Concurrent Approach • Integer Programming
Net Ordering • In sequential approach, we need some net ordering. • A bad net ordering will increase the total wire length, and may even prevent completion of routing for some circuits which are indeed routable. A B A B B B A B first (Good order) A first (Bad order) A
Criteria for Net Ordering • Criticality of net - critical nets first. • Estimated wire length - short nets first since they are less flexible. • Consider bounding rectangles (BR): A B B A B is in A’s BR
Nets Set of possible routing trees net 1 T11, T12, ...... , T1k1 : : : : net n Tn1, Tn2, ... , Tnkn Concurrent Approach • Consider all the nets simultaneously. • Formulate as an integer program. • Given: Lij = Total wire length of Tij Ce= Capacity of edge e • Determine variable xij s.t. xij = 1 if Tij is used xij = 0 otherwise.
Solution 1 1 2 3 What are the constraints for edge capacity? 3 1 2 2 Concurrent Approach: Example Possible trees: 1 1 2 3 net 1: 2 3 3 3 1 2 2 net 2: 2 3 3 net 3: 2 2
Integer Programming Approach • Standard techniques to solve IP. • No net ordering. Give global optimum. • Can be extremely slow, especially for large problems. • To make it faster, a fewer choices of routing trees for each net can be used. • Determining a good set of choices of routing trees is a hard problem by itself.