2015-06-25 1 Global Routing Prof. Shiyan Hu Office: EERC 731.

Slides:



Advertisements
Similar presentations
ECE 667 Synthesis and Verification of Digital Circuits
Advertisements

Branch-and-Bound Technique for Solving Integer Programs
ECE Longest Path dual 1 ECE 665 Spring 2005 ECE 665 Spring 2005 Computer Algorithms with Applications to VLSI CAD Linear Programming Duality – Longest.
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.
Lecture 10: Integer Programming & Branch-and-Bound
Progress in Linear Programming Based Branch-and-Bound Algorithms
Water Resources Development and Management Optimization (Integer Programming) CVEN 5393 Mar 11, 2013.
Shuai Li and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University West Lafayette, IN, Mixed Integer Programming Models.
5-1 Chapter 5 Tree Searching Strategies. 5-2 Satisfiability problem Tree representation of 8 assignments. If there are n variables x 1, x 2, …,x n, then.
5/14/ Routing Prof. Shiyan Hu Office: EERC 731.
Non Linear Programming 1
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.
F.F. Dragan (Kent State) A.B. Kahng (UCSD) I. Mandoiu (Georgia Tech/UCLA) S. Muddu (Silicon Graphics) A. Zelikovsky (Georgia State) Provably Good Global.
COMP322/S2000/L23/L24/L251 Camera Calibration The most general case is that we have no knowledge of the camera parameters, i.e., its orientation, position,
ECE LP Duality 1 ECE 665 Spring 2005 ECE 665 Spring 2005 Computer Algorithms with Applications to VLSI CAD Linear Programming Duality.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Gate Sizing by Mathematical Programming Prof. Shiyan Hu
VLSI Physical Design Automation Prof. David Pan Office: ACES Lecture 18. Global Routing (II)
7/15/ VLSI Placement Prof. Shiyan Hu Office: EERC 731.
Chip Planning 1. Introduction Chip Planning:  Deals with large modules with −known areas −fixed/changeable shapes −(possibly fixed locations for some.
(Not in text).  An LP with additional constraints requiring that all the variables be integers is called an all-integer linear program (IP).  The LP.
Introduction to Routing. The Routing Problem Apply after placement Input: –Netlist –Timing budget for, typically, critical nets –Locations of blocks and.
Network Optimization Models
Global Routing. Global routing:  To route all the nets, should consider capacities  Sequential −One net at a time  Concurrent −Order-independent 2.
Global Routing.
1 Coupling Aware Timing Optimization and Antenna Avoidance in Layer Assignment Di Wu, Jiang Hu and Rabi Mahapatra Texas A&M University.
Chapter 2 Sections 5-6 Problem Solving and Formulas.
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Massachusetts Institute of Technology 1 L14 – Physical Design Spring 2007 Ajay Joshi.
Placement. Physical Design Cycle Partitioning Placement/ Floorplanning Placement/ Floorplanning Routing Break the circuit up into smaller segments Place.
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing © KLMH Lienig 1 What Makes a Design Difficult to Route Charles.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
ARCHER:A HISTORY-DRIVEN GLOBAL ROUTING ALGORITHM Muhammet Mustafa Ozdal, Martin D. F. Wong ICCAD ’ 07.
Minimizing Stall Time in Single Disk Susanne Albers, Naveen Garg, Stefano Leonardi, Carsten Witt Presented by Ruibin Xu.
Goal Programming Linear program has multiple objectives, often conflicting in nature Target values or goals can be set for each objective identified Not.
GLOBAL ROUTING Anita Antony PR11EC1011. Approaches for Global Routing Sequential Approach: – Route the nets one at a time. Concurrent Approach: – Consider.
Optimal Sequencing of Traffic Streams at a Signalized Intersection Peter G. Furth Dept. of Civil & Environmental Engineering Northeastern University, Boston,
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
Lesson 5-8: Problem Solving
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
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.
Integer Linear Programming Terms Pure integer programming mixed integer programming 0-1 integer programming LP relaxation of the IP Upper bound O.F. Lower.
Integer Programming Key characteristic of an Integer Program (IP) or Mixed Integer Linear Program (MILP): One or more of the decision variable must be.
1 An Arc-Path Model for OSPF Weight Setting Problem Dr.Jeffery Kennington Anusha Madhavan.
Prof. Shiyan Hu Office: EERC 518
IE 312 Review 1. The Process 2 Problem Model Conclusions Problem Formulation Analysis.
Introduction to Integer Programming Integer programming models Thursday, April 4 Handouts: Lecture Notes.
XGRouter: high-quality global router in X-architecture with particle swarm optimization Frontiers of Computer Science, 2015, 9(4):576–594 Genggeng LIU,
1 Chapter 5 Branch-and-bound Framework and Its Applications.
Tuesday, March 19 The Network Simplex Method for Solving the Minimum Cost Flow Problem Handouts: Lecture Notes Warning: there is a lot to the network.
EMIS 8373: Integer Programming Combinatorial Optimization Problems updated 27 January 2005.
Unified Adaptivity Optimization of Clock and Logic Signals Shiyan Hu and Jiang Hu Dept of Electrical and Computer Engineering Texas A&M University.
VLSI Physical Design Automation
Water Resources Development and Management Optimization (Integer and Mixed Integer Programming) CVEN 5393 Mar 28, 2011.
VLSI Physical Design Automation
St. Edward’s University
EMIS 8373: Integer Programming
2 University of California, Los Angeles
Integer Programming Set up the mathematical programming problem to choose the set of capital investments to make that will maximize the Net Present Value.
Chapter 6. Large Scale Optimization
Integer Programming (정수계획법)
EE5780 Advanced VLSI Computer-Aided Design
Prof. Shiyan Hu Gate Sizing Prof. Shiyan Hu
Integer Programming (정수계획법)
Chapter 1. Formulations.
Chapter 6. Large Scale Optimization
Branch-and-Bound Technique for Solving Integer Programs
1.2 Guidelines for strong formulations
Presentation transcript:

Global Routing Prof. Shiyan Hu 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 A B B B first (Good order) A A B B A first (Bad order)

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 A B B B is in A’s BR

Net Ordering (cont’d)

Concurrent Approach Consider all the nets simultaneously. Formulate as an integer program. Given: L ij = Total wire length of T ij C e = Capacity of edge e Determine variable x ij s.t. x ij = 1 if T ij is used x ij = 0 otherwise. T n1, T n2,..., T nk n net n :::: :::: T 11, T 12,......, T 1k 1 net 1 Set of possible routing treesNets

Integer Program Formulation

Concurrent Approach: Example Possible trees: net 1: 233 net 2: 233 net 3: Solution What are the constraints for edge capacity?

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.