Detailed Routing مرتضي صاحب الزماني.

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

VLSI DESIGN & COMPARABILITY GRAPHS By Deepak Katta.
An Introduction to Channel Routing
Ch.7 Layout Design Standard Cell Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
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.
Rajat K. Pal. Chapter 3 Emran Chowdhury # P Presented by.
Chapter 3 The Greedy Method 3.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE VLSI Circuit Design Lecture 11 - Combinational.
Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam # P Presented by Section 5.3: NP-completeness of Multi-Layer.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 21: April 15, 2009 Routing 1.
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.
A General Framework for Track Assignment in Multilayer Channel Routing (Multi layer routing) -VLSI Layout Algorithm KAZY NOOR –E- ALAM SIDDIQUEE
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 19: April 9, 2008 Routing 1.
3.3 Multi-Layer V i+1 H i Channel Routing Presented by Zulfiquer Md. Mizanur Rhaman Student # p.
ECE Routing 1 ECE 665 Spring 2004 ECE 665 Spring 2004 Computer Algorithms with Applications to VLSI CAD Channel Routing Global Routing.
Multi-Layer Channel Routing Complexity and Algorithm Rajat K. Pal.
3.3 Multi-Layer V i+1 H i Channel Routing Presented by Md. Shaifur Rahman Student #
A Specialized A* Algorithm. Specialized A* Algorithm As soon as a goal node is found, we may stop and return an optimal solution. In ordinary A* algorithm,
Multi-Layer Channel Routing Complexity and Algorithm Rajat K. Pal.
Chapter 5: Computational Complexity of Area Minimization in Multi-Layer Channel Routing and an Efficient Algorithm Presented by Md. Raqibul Hasan Std No.
7/13/ EE4271 VLSI Design VLSI Routing. 2 7/13/2015 Routing Problem Routing to reduce the area.
Routing 2 Outline –Maze Routing –Line Probe Routing –Channel Routing Goal –Understand maze routing –Understand line probe routing.
Joanna Ellis-Monaghan, St. Michaels College Paul Gutwin, Principal Technical Account Manager, Cadence.
General Routing Overview and Channel Routing
9/4/ VLSI Physical Design Automation Prof. David Pan Office: ACES Detailed Routing (I)
1 Geometric Intersection Determining if there are intersections between graphical objects Finding all intersecting pairs Brute Force Algorithm Plane Sweep.
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
Global Routing. Global routing:  To route all the nets, should consider capacities  Sequential −One net at a time  Concurrent −Order-independent 2.
Modern VLSI Design 4e: Chapter 4 Copyright  2008 Wayne Wolf Topics n Standard cell-based layout. n Channel routing. n Simulation.
Global Routing.
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.
1 Global Routing Method for 2-Layer Ball Grid Array Packages Yukiko Kubo*, Atsushi Takahashi** * The University of Kitakyushu ** Tokyo Institute of Technology.
Modern VLSI Design 3e: Chapter 4 Copyright  1998, 2002 Prentice Hall PTR Topics n Layouts for logic networks. n Channel routing. n Simulation.
Modern VLSI Design 3e: Chapters 1-3 week12-1 Lecture 30 Scale and Yield Mar. 24, 2003.
Maze Routing مرتضي صاحب الزماني.
4. Combinational Logic Networks Layout Design Methods 4. 2
YK Channel Routing (1/16)Practical Problems in VLSI Physical Design Yoshimura-Kuh Channel Routing Perform YK channel routing with K = 100 TOP = [1,1,4,2,3,4,3,6,5,8,5,9]
Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.
Modern VLSI Design 3e: Chapter 4 Copyright  1998, 2002 Prentice Hall PTR Topics n Layouts for logic networks. n Channel routing. n Simulation.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 13: February 20, 2002 Routing 1.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 13: March 3, 2015 Routing 1.
Detailed Routing مرتضي صاحب الزماني.
Maze Routing Algorithms with Exact Matching Constraints for Analog and Mixed Signal Designs M. M. Ozdal and R. F. Hentschke Intel Corporation ICCAD 2012.
مرتضي صاحب الزماني 1 Detailed Routing. مرتضي صاحب الزماني 2 Greedy Routing “ A greedy channel router ”, Rivest, Fiduccia, Proceedings of the nineteenth.
2/27/ VLSI Physical Design Automation Prof. David Pan Office: ACES Detailed Routing (II)
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.
مرتضي صاحب الزماني 1 Maze Routing. Homework 4 مهلت تحویل : 23 اردیبهشت پروژه 1 : انتخاب طرح : امروز مرتضي صاحب الزماني 2.
The Annealing Algorithm Revisited L.P.P.P. van Ginneken DigiPen Institute of Technology.
DECISION 1. How do you do a Bubble Sort? Bubble Sort:  You compare adjacent items in a list;  If they are in order, leave them.  If they are not in.
EE4271 VLSI Design VLSI Channel Routing.
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 21: November 28, 2005 Routing 1.
VLSI Physical Design Automation
Chapter 7 – Specialized Routing
VLSI Physical Design Automation
Multi-Layer Channel Routing Complexity and Algorithms
Intra-Domain Routing Jacob Strauss September 14, 2006.
CS223 Advanced Data Structures and Algorithms
ESE535: Electronic Design Automation
Sequence Pair Representation
By Santhosh Reddy Katkoori
Iterative Deletion Routing Algorithm
Performance Analysis (Clock Signal) مرتضي صاحب الزماني.
CSE 144 Project Part 3.
Optimal Non-Manhattan Bubble Sort Channel Router
EE4271 VLSI Design, Fall 2016 VLSI Channel Routing.
VLSI Physical Design Automation
Algorithms CSCI 235, Spring 2019 Lecture 35 Graphs IV
Presentation transcript:

Detailed Routing مرتضي صاحب الزماني

Left-Edge Algorithm Vertical constraint may occur here. Assumptions: One horizontal routing layer No vertical constraint, e.g., VHV model Always gives a solution with channel width equal to channel density, i.e., optimal solution. 2 1 Vertical constraint may occur here. 2 1 1 2 مرتضي صاحب الزماني

Left-Edge Algorithm All the wires are sorted in increasing order of their left edge Scan the sorted list of wires the first unplaced wire is placed in the first track and that wire is deleted from the list Search the sorted list to find the first wire which does not overlap the wire which was just placed If there are no other non-overlapping wires then move to the next track مرتضي صاحب الزماني

Example LEA example: 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6 Step One: The sorted list of wires (by left edge) is: (1,2,3,4,5,6,7) مرتضي صاحب الزماني

Sorted List 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6 1 2 3 4 5 6 7 مرتضي صاحب الزماني

Step Two The first wire in the list is 1, so place it on track 1 the first non overlapping wire is 6, so place it on track 1 as well 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6 7 1 2 3 4 5 6 مرتضي صاحب الزماني

Step Three There are no other non-overlapping wires so move to the second track and start over with the revised sorted list (2,3,4,5,7) place wire 2, followed by 5, followed by 7 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6 7 2 3 4 5 مرتضي صاحب الزماني

Example - Final Result The next two cycles will place wire 3 on track 3 and wire 4 on track 4 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6 3 4 مرتضي صاحب الزماني

Problem Short circuits are possible on the vertical segments: 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6 We need to account for the vertical wire constraints مرتضي صاحب الزماني

Constrained LE Algorithm The Constrained Left Edge Algorithm uses a vertical constraint graph, VCG(V,E), to document cases where one wire must be placed above another in a routing VCG is a directed graph The nodes, V, are the wires There is a directed link from node i to node j if there is a vertical column in which node i has a pin on top and node j has a pin on the bottom مرتضي صاحب الزماني

VG Example For the example problem the VG graph looks like: 6 3 4 5 7 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6 6 3 4 5 7 1 2 مرتضي صاحب الزماني

CLE Algorithm Modify the Left Edge Algorithm in two ways RESULT: Only place a wire if it has no descendants in VG When a wire is placed it is removed from the VG RESULT: 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6 مرتضي صاحب الزماني

Solution Steps 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6 7 1 2 3 4 5 6 6 6 3 3 5 5 4 1 4 2 7 7 1 2 مرتضي صاحب الزماني

Vertical Constraint Loop This algorithm will fail if there is a cycle in the vertical constraint graph - vertical constraint loop occurs when a constraint in one column requires wire A to be placed above wire B while a constraint in another column requires wire B to be placed above wire A EXAMPLE 1 1 2 2 1 Solution: use a dogleg 1 1 2 2 1 1 2 مرتضي صاحب الزماني

Deutch’s Dogleg Algorithm “A Dogleg Channel Router”, D. Deutch, DAC, pages 425-433, 1976. مرتضي صاحب الزماني

Reduce Channel Width by Dogleg Even without cycle in the VCG, Dogleg is useful because it can reduce channel width. Without Dogleg With Dogleg 1 1 2 2 ??? 2 3 3 مرتضي صاحب الزماني

Deutch’s Dogleg Algorithm Split each multi-terminal net into several horizontal segments. Split only at columns that contain a pin (i.e. using Restricted Dogleg only). Simply apply the Constrained Left-edge algorithm. Restricted Dogleg Unrestricted Dogleg 1 1 2 2 1 1 2 2 3 3 2 3 3 مرتضي صاحب الزماني

Deutch’s Dogleg Algorithm 1 1 2 2 3 Vertical Constraint Graph 1 1 2a 2b 3a 3b 2 3 4 4 2 3 3 4 4 Without Dogleg 1 1 2 2 3 2 3 3 4 4 مرتضي صاحب الزماني

Deutch’s Dogleg Algorithm 1 1 2 2 3 1 Vertical Constraint Graph after splitting 1 2a 3a 2a 2b 3a 3b 2b 3b 4 4 2 3 3 4 4 By Deutch’s Dogleg Algorithm 2a, 3a, 4 1 1 2 2 3 3a, 4 3a, 2b, 3b 1, 2b, 3b 1, 2b 2 3 3 4 4 مرتضي صاحب الزماني

Drawbacks of CLEA Vertical Constraint Graph By Constrained Left- 1 3 3 Vertical Constraint Graph 1 3 2 1 2 2 1 3 2 By Constrained Left- edge algorithm There is a better solution... مرتضي صاحب الزماني

Drawbacks of CLEA By Constrained Left- edge algorithm A better solution 1 3 3 1 3 3 1 2 2 1 2 2 What’s wrong with the CLEA? It takes care of the vertical constraints, but it does not have a global view to optimize the length of the longest path in the VCG. مرتضي صاحب الزماني

Constrained LEA Cannot resolve VCG cycle problem. Routing Sequence: The following sequence gives better results: Switch between up and down tracks. Switch between “left” and “right” edge. مرتضي صاحب الزماني