Presentation is loading. Please wait.

Presentation is loading. Please wait.

Circuit Simulation Based Obstacle-Aware Steiner Routing Yiyu Shi, Paul Mesa, Hao Yu and Lei He EE Department, UCLA Partially supported by NSF Career Award.

Similar presentations


Presentation on theme: "Circuit Simulation Based Obstacle-Aware Steiner Routing Yiyu Shi, Paul Mesa, Hao Yu and Lei He EE Department, UCLA Partially supported by NSF Career Award."— Presentation transcript:

1 Circuit Simulation Based Obstacle-Aware Steiner Routing Yiyu Shi, Paul Mesa, Hao Yu and Lei He EE Department, UCLA Partially supported by NSF Career Award Address comments to lhe@ee.ucla.edu

2 Outline Background CktSteiner Algorithm Experimental Results Conclusions

3 Background Rectilinear Steiner Minimum Tree (RSMT)  Exact Algorithm: GeoSteiner [Warme, Technical Report DIKU ‘98]  Several heuristics to speed up: FLUTE [Chu, ISPD ‘05], FastSteiner [Kahng, ASPDAC ‘03]. Obstacle-Avoiding Rectilinear Steiner Minimum Tree (OARSMT)  Treat macro-cells, IP blocks and pre-routed nets as obstacles  Several heuristics: Yang’s 2-step Heuristic [Yang, ASICON ’03], FORst [Hu, ISC&I ’04], An-OARSMan [Hu, ASPDAC ‘05]. Improvement still desired  Easy-adjusted balance between runtime and wirelength  Runtime and wirelength still need to be improved, especially for routing with obstacles

4 Major Contributions of cktSteiner It uses numerical method, and is a new addition to the existing simulation-based algorithms such as  simulated annealing  genetic algorithm  force-based (placement) algorithm. It shortens wirelength under the same runtime compared with the existing approaches for RSMT with and without obstacles. It provides smooth tradeoff between runtime and wirelength simply by adjusting one algorithm parameter

5 Outline Background cktSteiner Algorithm Experimental Results Conclusions

6 Circuit Model for Routing Routing Graph Circuit Model Step 1: Map the routing graph into a circuit, with each edge replaced with a uniform R and each node connected to GND via uniform R//C. Step 2: Add a uniform impulse current source at each terminal.

7 Key Observation A Hanan node is more likely to become a Steiner point when the voltage response of the corresponding node in the RC mesh reaches its peak (i.e., peak time) earlier. 1.5 ns 0.2 ns 1.3 ns 39 6163

8 Verification of the Observation As the order in the sequence increases, the peak time increases, and the probability decreases  The x-axis is the order of the Hanan nodes sequence sorted by the peak time  The y-axis is the probability of it being an Steiner node in optimal solution given by GeoSteiner.

9 CktSteiner Algorithm Outline of cktSteiner Algorithm  Step 1: Build and simulate the circuit model  Step 2: Sort the Hanan nodes according to their peak times.  Step 3: According to the sorted node list, iteratively: add one Hanan node to the node list (1-ckt) add one block of Hanan nodes to the node list (B-ckt) Construct MST using selected Steiner nodes. If the wirelength is decreased, then the nodes are selected. Speedup techniques for cktSteiner  Model order reduction is used for fast simulation  Bypass checking the nodes that cannot be the Steiner points or the nodes already in the tree.  Algorithm terminates When we have already added n-1 Steiner nodes (n is the terminal number). When we have examined a certain number of nodes and the wirelength keeps still. With selected Steiner points, any routing algorithm can be applied

10 Outline Background cktSteiner Algorithm Experimental Results Conclusions

11 Experiments on RSMT 1-ckt is 0.7% away from the optimal wirelength (Geo). It has a similar wirelength as FastSteiner, but is 5X faster. It has shorter wirelength than Flute, but more runtime.  Newest results obtain similar runtime by using more effective MST algorithm. Terminal # WirelengthRuntime (ms) GeoFastSteiner1-cktFluteGeoFastSteiner1-cktFlute 599993.050.230.060.0007 1027 3.630.320.090.008 207778 7914.41.80.800.043 5029029129230338.68.11.530.18 100811821819862298153.120.47 50083508377839590321260014012.43.97 Average1.0001.0061.0071.0371.0000.0930.0250.002

12 Tradeoff between wirelength and runtime Block size is an effective knob for trade-off between wirelength and runtime setting can result in a good balance between wirelength and runtime (n is the terminal number).

13 Comparison on obstacle-aware routing Compared with An-OARSMan, 1-ckt is 0.35% shorter in wirelength with a similar runtime. B-ckt (B=n/8) is up to 109X faster with a similar wirelength. Terminal # Obstacle # WirelengthRuntime (s) An- OARS Man 1-cktB-cktAn- OARS Man 1-cktB-ckt 534380 46200.020.060.00001 1092699026980274500.090.240.0009 20104363041270458200.390.490.03 50105326050710537703.224.170.98 1001080040763808134031.332.52.37 5002020036018809020324016601082109 Average1.0000.9651.0271.0001.6510.089

14 Conclusions CktSteiner uses numerical circuit simulation based algorithm, different from the existing work which all use combinational optimization CktSteiner produces shorter wirelength under the same runtime compared with the existing approaches both for RSMT and OARSMT By simply changing the block size for B-cktSteiner, the balance between runtime and wirelength can be easily adjusted. CktSteiner is efficient and can be used for congestion estimation. CktSteiner is effective and is ideal for congested routing cases.

15 Thank you!


Download ppt "Circuit Simulation Based Obstacle-Aware Steiner Routing Yiyu Shi, Paul Mesa, Hao Yu and Lei He EE Department, UCLA Partially supported by NSF Career Award."

Similar presentations


Ads by Google