System Level Interconnect Prediction (SLIP) 20081 Sidewinder: A Scalable ILP-Based Router Jin Hu, Jarrod Roy, and Igor Markov Dept. of Computer Science.

Slides:



Advertisements
Similar presentations
INSTITUTE FOR CYBER SECURITY April Access Control and Semantic Web Technologies Ravi Sandhu Executive Director and Endowed Chair Institute for Cyber.
Advertisements

Cognitive Radio Communications and Networks: Principles and Practice By A. M. Wyglinski, M. Nekovee, Y. T. Hou (Elsevier, December 2009) 1 Chapter 12 Cross-Layer.
GL10 – December 8-9, Grey literature in French digital repositories: a survey J. Schöpfel (University of Lille 3) C. Stock (INIST-CNRS)
Sep 3, 2008NVOSS Mobile VO Mike Fitzpatrick NOAO.
Masterclass Introduction to hands-on Exercise Aim of the exercise Find out what happens in proton-proton collisions at the LHC as seen by the ATLAS.
Masterclass Introduction to hands-on Exercise Aim of the exercise Identify electrons, muons, neutrinos in the ATLAS detector Types of Events (particles.
Copyright Josep Torrellas 2003,20081 Cache Coherence Instructor: Josep Torrellas CS533 Term: Spring 2008.
MIP-based Detailed Placer for Mixed-size Circuits Shuai Li, Cheng-Kok Koh ECE, Purdue University {li263,
Determination of Forward and Futures Prices Chapter 5 Options, Futures, and Other Derivatives, 7th Edition, Copyright © John C. Hull
Patterns and Algebra in Stages 3 and 4 Judy Anderson The University of Sydney AIS Conference 2008.
Competitive Intelligence – It’s Not Just For Spies! March 10, 2008 Linda Rink President.
Modular – Flexible – Networked
UK Higher Education library statistics The role of SCONUL.
Optimization of Placement Solutions for Routability Wen-Hao Liu, Cheng-Kok Koh, and Yih-Lang Li DAC’13.
1 Advancing Supercomputer Performance Through Interconnection Topology Synthesis Yi Zhu, Michael Taylor, Scott B. Baden and Chung-Kuan Cheng Department.
Wen-Hao Liu1, Yih-Lang Li, and Cheng-Kok Koh Department of Computer Science, National Chiao-Tung University School of Electrical and Computer Engineering,
Meng-Kai Hsu, Sheng Chou, Tzu-Hen Lin, and Yao-Wen Chang Electronics Engineering, National Taiwan University Routability Driven Analytical Placement for.
F.F. Dragan (Kent State) A.B. Kahng (UCSD) I. Mandoiu (UCLA) S. Muddu (Sanera Systems) A. Zelikovsky (Georgia State) Provably Good Global Buffering by.
Ripple: An Effective Routability-Driven Placer by Iterative Cell Movement Xu He, Tao Huang, Linfu Xiao, Haitong Tian, Guxin Cui and Evangeline F.Y. Young.
EXPLORING HIGH THROUGHPUT COMPUTING PARADIGM FOR GLOBAL ROUTING Yiding Han, Dean Michael Ancajas, Koushik Chakraborty, and Sanghamitra Roy Electrical and.
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.
MCFRoute: A Detailed Router Based on Multi- Commodity Flow Method Xiaotao Jia, Yici Cai, Qiang Zhou, Gang Chen, Zhuoyuan Li, Zuowei Li.
38 th Design Automation Conference, Las Vegas, June 19, 2001 Creating and Exploiting Flexibility in Steiner Trees Elaheh Bozorgzadeh, Ryan Kastner, Majid.
1 BoxRouter: A New Global Router Based on Box Expansion and Progressive ILP Minsik Cho and David Z. Pan ECE Dept. Univ. of Texas at Austin DAC 2006, July.
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.
Routing 1 Outline –What is Routing? –Why Routing? –Routing Algorithms Overview –Global Routing –Detail Routing –Shortest Path Algorithms Goal –Understand.
Metal Layer Planning for Silicon Interposers with Consideration of Routability and Manufacturing Cost W. Liu, T. Chien and T. Wang Department of CS, NTHU,
VLSI Physical Design Automation Prof. David Pan Office: ACES Lecture 18. Global Routing (II)
Cost-Based Tradeoff Analysis of Standard Cell Designs Peng Li Pranab K. Nag Wojciech Maly Electrical and Computer Engineering Carnegie Mellon University.
Routing 2 Outline –Maze Routing –Line Probe Routing –Channel Routing Goal –Understand maze routing –Understand line probe routing.
General Routing Overview and Channel Routing
WISCAD – VLSI Design Automation GRIP: Scalable 3-D Global Routing using Integer Programming Tai-Hsuan Wu, Azadeh Davoodi Department of Electrical and Computer.
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.
A Parallel Integer Programming Approach to Global Routing Tai-Hsuan Wu, Azadeh Davoodi Department of Electrical and Computer Engineering Jeffrey Linderoth.
Global Routing. Global routing:  Sequential −One net at a time  Concurrent −Order-independent −ILP 2.
ESE Spring DeHon 1 ESE534: Computer Organization Day 19: April 7, 2014 Interconnect 5: Meshes.
CRISP: Congestion Reduction by Iterated Spreading during Placement Jarrod A. Roy†‡, Natarajan Viswanathan‡, Gi-Joon Nam‡, Charles J. Alpert‡ and Igor L.
Confidentiality Preserving Integer Programming for Global Routing Hamid Shojaei, Azadeh Davoodi, Parmesh Ramanathan Department of Electrical and Computer.
1 Coupling Aware Timing Optimization and Antenna Avoidance in Layer Assignment Di Wu, Jiang Hu and Rabi Mahapatra Texas A&M University.
TSV-Aware Analytical Placement for 3D IC Designs Meng-Kai Hsu, Yao-Wen Chang, and Valerity Balabanov GIEE and EE department of NTU DAC 2011.
Solving Hard Instances of FPGA Routing with a Congestion-Optimal Restrained-Norm Path Search Space Keith So School of Computer Science and Engineering.
K.Yuan, J.Yang and D.Pan ECE Dept. Univ. of Texas at Austin
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.
Seeing the Forest and the Trees: Steiner Wirelength Optimization in Placement Jarrod A. Roy, James F. Lu and Igor L. Markov University of Michigan Ann.
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Thermal-aware Steiner Routing for 3D Stacked ICs M. Pathak and S.K. Lim Georgia Institute of Technology ICCAD 07.
Kwangsoo Han, Andrew B. Kahng, Hyein Lee and Lutong Wang
Kwangsoo Han‡, Andrew B. Kahng‡† and Hyein Lee‡
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.
A Faster Approximation Scheme for Timing Driven Minimum Cost Layer Assignment Shiyan Hu*, Zhuo Li**, and Charles J. Alpert** *Dept of ECE, Michigan Technological.
Congestion Estimation and Localization in FPGAs: A Visual Tool for Interconnect Prediction David Yeager Darius Chiu Guy Lemieux The University of British.
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.
System in Package and Chip-Package-Board Co-Design
High-Performance Global Routing with Fast Overflow Reduction Huang-Yu Chen, Chin-Hsiung Hsu, and Yao-Wen Chang National Taiwan University Taiwan.
Congestion Analysis for Global Routing via Integer Programming Hamid Shojaei, Azadeh Davoodi, and Jeffrey Linderoth* Department of Electrical and Computer.
An Exact Algorithm for Difficult Detailed Routing Problems Kolja Sulimma Wolfgang Kunz J. W.-Goethe Universität Frankfurt.
VLSI Physical Design Automation
VLSI Physical Design Automation
Multi-Commodity Flow Based Routing
2 University of California, Los Angeles
Chapter 5 – Global Routing
Interconnect Architecture
ICS 252 Introduction to Computer Design
Under a Concurrent and Hierarchical Scheme
Presentation transcript:

System Level Interconnect Prediction (SLIP) Sidewinder: A Scalable ILP-Based Router Jin Hu, Jarrod Roy, and Igor Markov Dept. of Computer Science and Engineering University of Michigan

System Level Interconnect Prediction (SLIP) Why is Global Routing Important? High-level Abstract away design rules Chip  routing grid Nets  set of points Connect net points and assign to routing edges Low level Uses global routing solution Assigns routes to routing tracks Must obey design rules Must be certain distance apart Global Routing Detail Routing Final solution quality heavily dependent on global routing solution

System Level Interconnect Prediction (SLIP) Given:  Routing grid G with capacities  Net list N with n nets Global Routing Problem... Net 1 Net 2 Net n X Y g (x,y) c g(x,y)→g(x+1,y) … c g(x,y)→g(x-1,y) c g(x,y)→g(x,y+1) … c g(x,y)→g(x,y-1) … …

System Level Interconnect Prediction (SLIP) Objective – route all nets while minimizing:  Overflow:exceeded (violations)grid capacities  Wirelength:total routed distance of nets (traditional goal of routers)  Bends: changes in routing direction (additional goal due to technology scaling) Global Routing Problem capacity = 2 overflow = 1 wirelength = 4 bends = 2

System Level Interconnect Prediction (SLIP) Directional preference on each metal layer Bends require change in metal layers  vias  Tungsten vs. copper or aluminum  More resistant, larger area, less reliable  ISPD 2007 Routing Contest (IBM) heavily penalizes vias: 3x more than WL Why Minimize Bend Count? Metal 1: Local routing (not shown) Metal 3: Horizontal tracks Metal 2: Vertical tracks via

System Level Interconnect Prediction (SLIP) Outline Common routing approaches Sidewinder  Methodology  Example Results Conclusion Our Contributions

System Level Interconnect Prediction (SLIP) Rip-up and Reroute (RRR)  Route one net at a time  Rip-up congested nets and reroute in less congested areas Routing Nets in Series Net ordering very important! capacity = 2 Blue Black Red Blue Red Black violation Maze route Reroute with different order

System Level Interconnect Prediction (SLIP) Routing nets in Parallel Integer Linear Programming (ILP)  Considers all variables simultaneously  Finding optimal solutions is NP-Complete Historically unscalable but have improved  ILP solver technology: CPLEX v9, v10, v11  More powerful CPUs Significant progress in ILP formulations  Previous work: BoxRouter 1.0 [Cho DAC06]

System Level Interconnect Prediction (SLIP) Sidewinder Methodology Initial Routing Improve? Path Selection for ILP yes Final Routing no Generate Congestion Map ILP Routing Breaks up multi-pin nets into subnets Routes with L-shape initially Calculates total congestion Chooses best 2 options for each net ILP route for new solution  New solution is never worse than previous Repeats until no improvement Routes remaining nets with maze router Allows overflow

System Level Interconnect Prediction (SLIP) Initial Routing Decompose 3+ pin nets into 2-pin subnets Route all subnets with only Ls  Some nets may be unrouted capacity = 2 Routed Nets: Blue, Red Unrouted Nets: Black Net Subnet 1Net topology Subnet 2 Subnet 3

System Level Interconnect Prediction (SLIP) Generate Congestion Map Use current solution to see congestion For each routed net, subtract 90% of usage from total capacities  Later account for 2 nd path candidate capacity = capacity

System Level Interconnect Prediction (SLIP) Path Selection For each net, consider possible patterns L-shapes Z-shapes C-shapes (Potential) Maze Route

System Level Interconnect Prediction (SLIP) Path Selection Use legal choices only For each legal choice, calculate priority P if all path segments have space P = min(each grid edge); else P = -total overflow; Use total available space for tie-breaker

System Level Interconnect Prediction (SLIP) Path Selection Path TypePriorityTiebreaker L1 (over, up) L2 (up, over) ILLEGAL Z1 (vertical) ILLEGAL Z2 (horizontal) ILLEGAL C1 (+1N) ILLEGAL C2 (+1S) ILLEGAL C3 (+1E) 28 C4 (+1W) 28 C5 (+1N, +1E) ILLEGAL C6 (+1S, +1W) ILLEGAL Maze Consider all unrouted nets first: Black Path L1 C3C4 Pick top 2 choices as candidates Update congestion map each with usage of 50% Maze

System Level Interconnect Prediction (SLIP) Path Selection L1 C3C4Maze Path TypePriorityTiebreaker L1 (over, up) L2 (up, over) ILLEGAL Z1 (vertical) ILLEGAL Z2 (horizontal) ILLEGAL C1 (+1N) ILLEGAL C2 (+1S) ILLEGAL C3 (+1E) 1.56 C4 (+1W) 1.56 C5 (+1N, +1E) ILLEGAL C6 (+1S, +1W) ILLEGAL Maze Consider all routed nets next: Red Path Pick top 1 choice as candidate Update congestion map with usage of 10%

System Level Interconnect Prediction (SLIP) Path Selection L1C3C4Maze Path TypePriorityTiebreaker L1 (over, up) L2 (up, over) ILLEGAL Z1 (vertical) ILLEGAL Z2 (horizontal) ILLEGAL C1 (+1N) ILLEGAL C2 (+1S) ILLEGAL C3 (+1E) C4 (+1W) 1.56 C5 (+1N, +1E) ILLEGAL C6 (+1S, +1W) ILLEGAL Maze Consider all routed nets next: Blue Path Pick top 1 choice as candidate Update congestion map with usage of 10%

System Level Interconnect Prediction (SLIP) ILP Formulation Maximizes total number of nets routed Ensures at most 1 path is selected Capacity constraint in N direction Capacity constraint in S direction Capacity constraint in E direction Capacity constraint in W direction

System Level Interconnect Prediction (SLIP) Choosing the Net Weights Objective Function Prioritizes choices by lowest wirelength and number of bends Path Type +WL+bends L-shapes Z-shapes C-shapes /+4+2 Maze Route0.97 variable

System Level Interconnect Prediction (SLIP) Iterative Improvement Recall: for each routed net, 1 choice is from previous solution  Worst Case: New solution = Previous solution Iterations stop when no improvement Final Routing: route all remaining nets with maze router (Dijkstra’s) Every new solution is no worse than previous

System Level Interconnect Prediction (SLIP) Empirical Validation (ILP Only) ISPD98 Benchmark Suite Real designs from IBM Standard suite in global routing Experiments ran on AMD Opteron 2.4 GHz with 4 GB of RAM ILP solver: CPLEX Net Decomposition: FLUTE [Chu TCAD07]

System Level Interconnect Prediction (SLIP) Results - Overflow 7/10 Able to fully route 7/10 benchmarks 8/10 Better than BoxRouter 1.0 [DAC06] on 8/10 benchmarks

System Level Interconnect Prediction (SLIP) Results - Wirelength 0.5% On Average: 0.5% Less Wirelength Than BoxRouter 1.0 Normalized to GeoSteiner GeoSteiner: Steiner tree generator Best lower bound for WL No capacity restrictions (routing solutions illegal) Impractically slow

System Level Interconnect Prediction (SLIP) Results – Bends 6.4% On Average: 6.4% Fewer Vias Than BoxRouter 1.0 Normalized to Minimum of Both Routers Significantly fewer bends Vast majority of routes are patterns – L, Z, C Better bend count on every benchmark

System Level Interconnect Prediction (SLIP) Sidewinder: Summary Scalable global router based on ILP  Uses dynamically updated congestion map  First ILP-based router to have global scope – looks at entire routing grid Produces better solution quality  Average of 0.5% less wirelength  Average of 6.4% fewer vias