A Depth-First-Search Controlled Gridless Incremental Routing Algorithm for VLSI Circuits Hasan Arslan and Shantanu Dutt Electrical & Computer Eng. University.

Slides:



Advertisements
Similar presentations
Optimal Bus Sequencing for Escape Routing in Dense PCBs H.Kong, T.Yan, M.D.F.Wong and M.M.Ozdal Department of ECE, University of Illinois at U-C ICCAD.
Advertisements

Cadence Design Systems, Inc. Why Interconnect Prediction Doesn’t Work.
Optimization of Placement Solutions for Routability Wen-Hao Liu, Cheng-Kok Koh, and Yih-Lang Li DAC’13.
Native-Conflict-Aware Wire Perturbation for Double Patterning Technology Szu-Yu Chen, Yao-Wen Chang ICCAD 2010.
Hsi-An Chien Ting-Chi Wang Redundant-Via-Aware ECO Routing ASPDAC2014.
Wen-Hao Liu1, Yih-Lang Li, and Cheng-Kok Koh Department of Computer Science, National Chiao-Tung University School of Electrical and Computer Engineering,
1 Physical Hierarchy Generation with Routing Congestion Control Chin-Chih Chang *, Jason Cong *, Zhigang (David) Pan +, and Xin Yuan * * UCLA Computer.
Coupling-Aware Length-Ratio- Matching Routing for Capacitor Arrays in Analog Integrated Circuits Kuan-Hsien Ho, Hung-Chih Ou, Yao-Wen Chang and Hui-Fang.
ICS 252 Introduction to Computer Design Routing Fall 2007 Eli Bozorgzadeh Computer Science Department-UCI.
38 th Design Automation Conference, Las Vegas, June 19, 2001 Creating and Exploiting Flexibility in Steiner Trees Elaheh Bozorgzadeh, Ryan Kastner, Majid.
ER UCLA UCLA ICCAD: November 5, 2000 Predictable Routing Ryan Kastner, Elaheh Borzorgzadeh, and Majid Sarrafzadeh ER Group Dept. of Computer Science UCLA.
VLSI Routing. Routing Problem  Given a placement, and a fixed number of metal layers, find a valid pattern of horizontal and vertical wires that connect.
ECE Routing 1 ECE 665 Spring 2004 ECE 665 Spring 2004 Computer Algorithms with Applications to VLSI CAD Channel Routing Global Routing.
Ryan Kastner ASIC/SOC, September Coupling Aware Routing Ryan Kastner, Elaheh Bozorgzadeh and Majid Sarrafzadeh Department of Electrical and Computer.
Metal Layer Planning for Silicon Interposers with Consideration of Routability and Manufacturing Cost W. Liu, T. Chien and T. Wang Department of CS, NTHU,
Routing 2 Outline –Maze Routing –Line Probe Routing –Channel Routing Goal –Understand maze routing –Understand line probe routing.
HARP: Hard-Wired Routing Pattern FPGAs Cristinel Ababei , Satish Sivaswamy ,Gang Wang , Kia Bazargan , Ryan Kastner , Eli Bozorgzadeh   ECE Dept.
General Routing Overview and Channel Routing
Introduction to Routing. The Routing Problem Apply after placement Input: –Netlist –Timing budget for, typically, critical nets –Locations of blocks and.
MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD
A Topology-based ECO Routing Methodology for Mask Cost Minimization Po-Hsun Wu, Shang-Ya Bai, and Tsung-Yi Ho Department of Computer Science and Information.
Authors: Jia-Wei Fang,Chin-Hsiung Hsu,and Yao-Wen Chang DAC 2007 speaker: sheng yi An Integer Linear Programming Based Routing Algorithm for Flip-Chip.
CAFE router: A Fast Connectivity Aware Multiple Nets Routing Algorithm for Routing Grid with Obstacles Y. Kohira and A. Takahashi School of Computer Science.
A Parallel Integer Programming Approach to Global Routing Tai-Hsuan Wu, Azadeh Davoodi Department of Electrical and Computer Engineering Jeffrey Linderoth.
CRISP: Congestion Reduction by Iterated Spreading during Placement Jarrod A. Roy†‡, Natarajan Viswanathan‡, Gi-Joon Nam‡, Charles J. Alpert‡ and Igor L.
Global Routing.
1 Coupling Aware Timing Optimization and Antenna Avoidance in Layer Assignment Di Wu, Jiang Hu and Rabi Mahapatra Texas A&M University.
Solving Hard Instances of FPGA Routing with a Congestion-Optimal Restrained-Norm Path Search Space Keith So School of Computer Science and Engineering.
1 Global Routing Method for 2-Layer Ball Grid Array Packages Yukiko Kubo*, Atsushi Takahashi** * The University of Kitakyushu ** Tokyo Institute of Technology.
Wen-Hao Liu 1, Yih-Lang Li 1, and Kai-Yuan Chao 2 1 Department of Computer Science, National Chiao-Tung University, Hsin-Chu, Taiwan 2 Intel Architecture.
March 20, 2007 ISPD An Effective Clustering Algorithm for Mixed-size Placement Jianhua Li, Laleh Behjat, and Jie Huang Jianhua Li, Laleh Behjat,
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing © KLMH Lienig 1 EECS 527 Paper Presentation High-Performance.
Archer: A History-Driven Global Routing Algorithm Mustafa Ozdal Intel Corporation Martin D. F. Wong Univ. of Illinois at Urbana-Champaign Mustafa Ozdal.
Efficient Multi-Layer Obstacle- Avoiding Rectilinear Steiner Tree Construction Chung-Wei Lin, Shih-Lun Huang, Kai-Chi Hsu,Meng-Xiang Li, Yao-Wen Chang.
Massachusetts Institute of Technology 1 L14 – Physical Design Spring 2007 Ajay Joshi.
Kwangsoo Han‡, Andrew B. Kahng‡† and Hyein Lee‡
A Routing Approach to Reduce Glitches in Low Power FPGAs Quang Dinh, Deming Chen, Martin D. F. Wong Department of Electrical and Computer Engineering University.
AUTOMATIC BUS PLANNER FOR DENSE PCBS Hui Kong, Tan Yan and Martin D.F. Wong Department of Electrical and Computer Engineering, University of Illinois at.
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing © KLMH Lienig 1 What Makes a Design Difficult to Route Charles.
ARCHER:A HISTORY-DRIVEN GLOBAL ROUTING ALGORITHM Muhammet Mustafa Ozdal, Martin D. F. Wong ICCAD ’ 07.
Congestion Estimation and Localization in FPGAs: A Visual Tool for Interconnect Prediction David Yeager Darius Chiu Guy Lemieux The University of British.
1 Efficient Obstacle-Avoiding Rectilinear Steiner Tree Construction Chung-Wei Lin, Szu-Yu Chen, Chi-Feng Li, Yao-Wen Chang, Chia-Lin Yang National Taiwan.
GLOBAL ROUTING Anita Antony PR11EC1011. Approaches for Global Routing Sequential Approach: – Route the nets one at a time. Concurrent Approach: – Consider.
1 ER UCLA ISPD: Sonoma County, CA, April, 2001 An Exact Algorithm for Coupling-Free Routing Ryan Kastner, Elaheh Bozorgzadeh,Majid Sarrafzadeh.
A Negotiated Congestion based Router for Simultaneous Escape Routing Q.Ma, T.Yan and Martin D.F. Wong Department of Electrical and Computer Engineering.
Hasan Arslan and Shantanu Dutt Hasan Arslan and Shantanu Dutt Electrical & Computer Eng. University of Illinois at Chicago DATE 2006 Efficient Timing-Driven.
1 A Min-Cost Flow Based Detailed Router for FPGAs Seokjin Lee *, Yongseok Cheon *, D. F. Wong + * The University of Texas at Austin + University of Illinois.
On Routing Fixed Escaped Boundary Pins for High Speed Boards T. Tsai, R. Lee, C. Chin and Y. Kajitani Global UniChip Corp. Hsinchu, Taiwan DATE 2011.
ECE 260B – CSE 241A /UCB EECS Kahng/Keutzer/Newton Physical Design Flow Read Netlist Initial Placement Placement Improvement Cost Estimation Routing.
Timing-Driven Routing for FPGAs Based on Lagrangian Relaxation
Simultaneous Analog Placement and Routing with Current Flow and Current Density Considerations H.C. Ou, H.C.C. Chien and Y.W. Chang Electronics Engineering,
ILP-Based Inter-Die Routing for 3D ICs Chia-Jen Chang, Pao-Jen Huang, Tai-Chen Chen, and Chien-Nan Jimmy Liu Department of Electrical Engineering, National.
Maze Routing Algorithms with Exact Matching Constraints for Analog and Mixed Signal Designs M. M. Ozdal and R. F. Hentschke Intel Corporation ICCAD 2012.
BOB-Router: A New Buffering-Aware Global Router with Over-the-Block Routing Resources Yilin Zhang1, Salim Chowdhury2 and David Z. Pan1 1 Department of.
LEMAR: A Novel Length Matching Routing Algorithm for Analog and Mixed Signal Circuits H. Yao, Y. Cai and Q. Gao EDA Lab, Department of CS, Tsinghua University,
High-Performance Global Routing with Fast Overflow Reduction Huang-Yu Chen, Chin-Hsiung Hsu, and Yao-Wen Chang National Taiwan University Taiwan.
1 ROAD : An Order-Impervious Optimal Detailed Router Hasan Arslan, Shantanu Dutt Electrical & Computer Eng. University of Illinois at Chicago ICCD 2003.
An Exact Algorithm for Difficult Detailed Routing Problems Kolja Sulimma Wolfgang Kunz J. W.-Goethe Universität Frankfurt.
FPGA Routing Pathfinder [Ebeling, et al., 1995] Introduced negotiated congestion During each routing iteration, route nets using shortest.
Dept. of Electronics Engineering & Institute of Electronics National Chiao Tung University Hsinchu, Taiwan ISPD’16 Generating Routing-Driven Power Distribution.
VLSI Physical Design Automation
VLSI Physical Design Automation
VLSI Physical Design Automation
2 University of California, Los Angeles
Performance Optimization Global Routing with RLC Crosstalk Constraints
EE4271 VLSI Design, Fall 2016 VLSI Channel Routing.
Detailed Routing مرتضي صاحب الزماني.
VLSI Physical Design Automation
ICS 252 Introduction to Computer Design
Under a Concurrent and Hierarchical Scheme
Presentation transcript:

A Depth-First-Search Controlled Gridless Incremental Routing Algorithm for VLSI Circuits Hasan Arslan and Shantanu Dutt Electrical & Computer Eng. University of Illinois at Chicago ICCD 2004

Outline Introduction Importance of Incremental Routing Previous work Our Goals A DFS-Based Incr. Routing Alg. Non-Uniform Grids DSR (Depth first search controlled Segment bump and Refit) Algorithm Experimental Results Conclusion

Introduction In current VLSI Chip The size gets smaller High clock frequency Interconnections on chip very important Technical Problems Wire-congestion and routability Crosstalk / noise Power consumption Terminal distribution

Incremental Routing After a chip layout is completed Time/noise violation One or more optimization metrics Technology constraints Make changes to the circuit/system Engineering Change Order (ECO) process Time to meet market requirements Enormous resources and time already spent. Need a time-efficient & effective incremental routing algorithm

Incremental Routing Problem Set of existing routed nets R Set of new nets S (due to timing violation, noise…) Quality metrics for an Incr. Routing Near-optimal incr. solutions in a short amount of time Preserve previous routing results as much as possible Complete the required incremental routing in the available channel area if such a solution exists Incremental Routing (Cont.)

Prior work on Incremental Routing 1) Emmert and Bhatia, “Incremental Routing in FPGA”, IEEE Int. ASIC Conference, ) Cong and Sarrafzadeh, “Incremental Physical Design”, ISPD ) Dutt, Shanmugavel and Trimberger, “Efficient Incremental Rerouting for Fault Reconfiguration in FPGAs”, ICCAD ) Dutt, Verma and Arslan “A Search-Based Bump and Refit Approach to Incremental Routing for ECO Applications in FPGAs”, TODAES ) Xiang, Chao, Wong “An ECO Algorithm for Eliminating Crossalk Violations”, ISPD 2004

Emmert-Bhatia (ASIC’98) Nets connected to faulty PLB, deleted and rerouted A graph is built, from source pin to target pin Standard single-net routing mode (global then detailed) Do not perturb or move existing nets Single Net Routing : Route new nets without removing any existing nets. Rip & Reroute : If some nets cannot be routed, rip-up the existing nets which occupy the resources of new nets. Reroute the ripped up nets. Cong-Sarrafzadeh (ISPD’00)

Dutt, Shanmugavel and Trimberger (ICCAD’99) Used incremental rerouting for dynamic fault reconfiguration in FPGAs Does not rip-up and reroute Shift them (or their subnets) to other track positions --- Bump-&-Refit (B&R) No change in topology, length of existing nets Optimal: Finds a detailed route if exists Dutt, Verma and Arslan (TODAES’02) Extended basic B&R significantly for: –full incremental routing (global + detailed) –complex switchboxes –much better results than Std and R&R (routing succ within avail res, HP of failed nets, speed under certain conditions)

Our Goals Incremental routing for VLSI (ASIC) circuits Gridless framework for non-uniform width & spacing req. and memory & time efficiency Address the quality metrics of incr. routing –Near-optimal incr. solutions (min. WL and vias) in a short amt. of time –Preserve previous routing results as much as possible –Complete the required incremental routing in the available channel area if such a solution exists = min. # of metal layers = max. routing success in given layers Approach: –Allow bumping of existing nets for near-optimal solns to new nets –However, to obtain an overall good solution  control the amount of perturbation of existing nets or their routing failures by retracting their bumpings using an overall DFS control

n1n1 n 2 n 1 n 2 Adjacent-via DFS-Based Incr. Routing Alg. ( Incr. Routing Concepts ) R-BBox

If there is an edge between two nets in OG, they might bump each other during shifting one of them. DFS-Based Incr. Routing Alg. ( Incr. Routing Concepts ) For net n i in OG higher degree (more adj. net in OG)  might bump more nets, passing through in dense area Check only adj. nets/blocks in OG to create non-uniform grid for n i CG ofn n 1 n 2 n 1. h 1 n 2. h 1 n v 1 n 1. v 1 ob 1 n 1. v 1 n h 1 n 2. v 1 n h 1 ob 1 1 CG ofn 2 possible overlapping

All paths in Cp tested? DFS-Based Incr. Routing Alg. Generate grid line in R-BB Soln? Route-with-Bumping(n i ) For each bumped net n k Do-DFS-Routing(n k ) Soln? Retract curr. bumping-causing routing path return(succ.) Cp=Get-Candidate-Paths return(succ.) Do-DFS-Routing(n i ) Route-with-Bumping(n i ) Route-without-Bumping(n i ) Soln? return(fail) NO YES return(fail)

Non-Uniform Grid Extraction Variable width/spacing rule To route new net Create obstruction zone around existing nets Find zero width path for new net Width / space req. of new net

Non-Uniform Grid Extr. & Routing s BGLs (Boundary Grid Lines) OGLs (Occupied Grid Lines) VGLs (Vacant Grid Lines) t Use VGLs to get solution without bumping. Use VGLs and OGLs to do B&R type routing (OGLs has higher cost than VGLs).

DFS-Based Incr. Routing Alg. Generate grid line in R-BB Soln? Route-with-Bumping(n i ) For each bumped net n k Do-DFS-Routing(n k ) Soln? Retract curr. bumping-causing Routing path return(succ.) Cp=Get-Candidate-Paths All paths in Cp tested? return(succ.) Do-DFS-Routing(n i ) Route-with-Bumping(n i ) Route-without-Bumping(n i ) Soln? return(fail) NO YES return(fail) YES NO Get-Next-Path(CP)

Finding Solution without Bumping – Use the 4- via Algorithm (Carothers,Lee,T-CS,1999) n 1 n 2 n 3 n 2 1-via routing Adj-via Adj-via n 1 n 1 2-via routing Adj-via Adj-via n 1 n 1 3-via routing Adj-via Adj-via n 1 n 1 cv 4-via routing Adj-via Adj-via n j Bumped seg. If 1-via path cannot be found due to obstaclesIf 2-via path cannot be found due to obstaclesIf 3-via path cannot be found due to obstacles

DFS-Based Incr. Routing Alg. For each bumped net n k Do-DFS-Routing(n k ) Soln? Retract curr. bumping-causing Routing path All paths of Cp tested? return(succ.) Do-DFS-Routing(n i ) Route-with-Bumping(n i ) NO YES return(fail) YES NO Get-Next-Path(Cp) Generate grid line in R-BB solution Route-with-Bumping(n i ) return(succ.) Route-without-Bumping(n i ) Soln? return(fail) NO YES Cp=Get-Candidate-Paths

Selecting Paths to Route Bumped Seg. Adj-via n 1 n 1 Random m paths Adj-via n 1 n 1 Equal distance m paths Adj-via n 1 n 1 The first m paths The randomized initial path set selection gave the best solutions in terms of both quality and runtime.

DFS-Based Incr. Routing Alg. For each bumped net n k Do-DFS-Routing(n k ) solution Retract previous bumping-causing routing Have all path of CP tested return(succ.) Do-DFS-Routing(n i ) Route-with-Bumping(n i ) NO YES return(failed) YES NO Get-Next-Path(CP) Generate grid line in R-BB Soln? Route-with-Bumping(n i ) return(succ.) Route-without-Bumping(n i ) Soln? return(failed) NO YES Cp=Get-Candidate-Paths

DFS-Controlled Routing with Bump & Refit n1n1 njnj n2n2 n3n3 n 1..b-seg n 2..h 2 n 3..h 1 n 3..v 1 njnj n 1.b-seg njnj n 2..h 1 P i = i-via path is explored n 1..b-seg n 2.pin or obs P1P1

DFS-Controlled Routing with Bump & Refit n1n1 njnj n2n2 n3n3 n 2..h 2 n 3..h 1 n 3..v 1 njnj n 1.b-seg n 2.pin or obs P1P1 njnj n 2..h 1 P i = i-via path is explored n 2.h 2 P2P2 n 3.v 1 P1P1 n 1..b-seg n 2..h 2

DFS-Controlled Routing with Bump & Refit n1n1 njnj n2n2 n3n3 n 3..v 1 njnj n 1.b-seg n 2.pin or obs P1P1 njnj n 2..h 1 P i = i-via path is explored n 2.h 2 P2P2 n 3.v 1 P1P1 n 1..b-seg n 2..h 2 P1P1 obs P1P1 anc obs or anc.n 1 or anc.n j P 2 -P 4 n 3..h 1 n 3..v 1 n 2..h 2

DFS-Controlled Routing with Bump & Refit n1n1 njnj n2n2 n3n3 n 3..v 1 njnj n 1.b-seg n 2.pin or obs P1P1 njnj n 2..h 1 P i = i-via path is explored n 2.h 2 P2P2 n 3.v 1 P1P1 n 1..b-seg P1P1 obs P1P1 anc obs or anc.n 1 or anc.n j P 2 -P 4 n 3..h 1 n 3..v 1 n 3.h 1 P 2 -P 3 n 2..h 2 obs P1P1 obs or anc.n 1 or anc.n j P 2 -P 4

DFS-Controlled Routing with Bump & Refit n1n1 njnj n2n2 n3n3 n 3..v 1 njnj n 1.b-seg n 2.pin or obs P1P1 njnj n 2..h 1 P i = i-via path is explored n 2.h 2 P2P2 n 3.v 1 P1P1 n 1..b-seg P1P1 obs P1P1 anc obs or anc.n 1 or anc.n j P 2 -P 4 n 3.h 1 P 2 -P 3 n 2..h 2 obs P1P1 obs or anc.n 1 or anc.n j P 2 -P 4 n 3..h 1 n 3..v 1 n 2..h 2

DFS-Controlled Routing with Bump & Refit n1n1 njnj n2n2 n3n3 n 3..v 1 njnj n 1.b-seg n 2.pin or obs P1P1 njnj P i = i-via path is explored n 2.h 2 P2P2 n 3.v 1 P1P1 n 1..b-seg P1P1 obs P1P1 anc obs or anc.n 1 or anc.n j P 2 -P 4 n 3.h 1 P 2 -P 3 obs P1P1 obs or anc.n 1 or anc.n j P 2 -P 4 n 3..h 1 n 3..v 1 n 2..h 2 n 2.h 1 P2P2 n 2..h 1 obs P1P1 n 1..b-seg

DFS-Controlled Routing with Bump & Refit n1n1 njnj n2n2 n3n3 n 3..v 1 njnj n 1.b-seg n 2.pin or obs P1P1 njnj P i = i-via path is explored n 2.h 2 P2P2 n 3.v 1 P1P1 P1P1 obs P1P1 anc obs or anc.n 1 or anc.n j P 2 -P 4 n 3.h 1 P 2 -P 3 obs P1P1 obs or anc.n 1 or an.n j P 2 -P 4 n 3..h 1 n 3..v 1 n 2..h 2 n 2.h 1 P2P2 obs P1P1 VGL P2P2

Characteristics of Benchmark Circuits –Width of net unit –Space req. btw. nets unit –Base 2x2 tile of Mcc1 benchmark is replicated with diff. cell sizes and diff. # of pins –Nets connected to pins randomly generated routed by using max 4-via routing –Experiment involved routing as many nets as possible under the constraint of 2 metal layers only  routing succ. rate = efficacy of router

Experimental Results

Experimental Results (Comparison of Failed Nets) Unrouted nets are longer and wider when Std. and R&R used DSR gets more compact layout by routing more and wider nets

Experimental Results (Comparison of Modified Nets)

Experimental Results (Global Nets)

Conclusions New Incremental Routing Algorithm DSR –gridless routing –variable width/space Produces significant impr. over Std. R&R –Via incr. of modified nets (3 (5) times less than R&R, 10% and 20%, respectively) –Higher routing success rate (Std.=10.8 (8.5) R&R= 4.6 (2.4) times worse) –Wire length (HPBB) of failed nets: Std. = 36.7 (6.59) R&R = 5.1 (2.15) times worse) –Degree of modification (~20% less modification than R&R) Future Work –Tile-based approach to avoid congestion –Timing-driven DSR algorithm

THANK YOU