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.

Slides:



Advertisements
Similar presentations
Group: Wilber L. Duran Duo (Steve) Liu
Advertisements

Ch.7 Layout Design Standard Cell Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
1 Interconnect Layout Optimization by Simultaneous Steiner Tree Construction and Buffer Insertion Presented By Cesare Ferri Takumi Okamoto, Jason Kong.
Rajat K. Pal. Chapter 3 Emran Chowdhury # P Presented by.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE VLSI Circuit Design Lecture 11 - Combinational.
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.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 21: April 15, 2009 Routing 1.
Routing 1 Outline –What is Routing? –Why Routing? –Routing Algorithms Overview –Global Routing –Detail Routing –Shortest Path Algorithms Goal –Understand.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 19: April 9, 2008 Routing 1.
Fall 2006EE VLSI Design Automation I VI-1 EE 5301 – VLSI Design Automation I Kia Bazargan University of Minnesota Part VI: Routing.
VLSI Physical Design Automation Prof. David Pan Office: ACES Lecture 18. Global Routing (II)
CSE 144 Project Part 2. Overview Multiple rows Routing channel between rows Components of identical height but various width Goal: Implement a placement.
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.
Lecture 5: FPGA Routing September 17, 2013 ECE 636 Reconfigurable Computing Lecture 5 FPGA Routing.
CDCTree: Novel Obstacle-Avoiding Routing Tree Construction based on Current Driven Circuit Model Speaker: Lei He.
Floorplanning. Obtained by subdividing a given rectangle into smaller rectangles. Each smaller rectangle corresponds to a module.
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.
ECE260B – CSE241A Winter 2005 Routing
Routing.
MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD
9/4/ VLSI Physical Design Automation Prof. David Pan Office: ACES Detailed Routing (I)
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 7 Global Routing Mustafa Ozdal Computer Engineering Department, Bilkent University.
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 Global Routing Method for 2-Layer Ball Grid Array Packages Yukiko Kubo*, Atsushi Takahashi** * The University of Kitakyushu ** Tokyo Institute of Technology.
Low-Power Gated Bus Synthesis for 3D IC via Rectilinear Shortest-Path Steiner Graph Chung-Kuan Cheng, Peng Du, Andrew B. Kahng, and Shih-Hung Weng UC San.
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.
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Maze Routing مرتضي صاحب الزماني.
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.
ARCHER:A HISTORY-DRIVEN GLOBAL ROUTING ALGORITHM Muhammet Mustafa Ozdal, Martin D. F. Wong ICCAD ’ 07.
Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.
GLOBAL ROUTING Anita Antony PR11EC1011. Approaches for Global Routing Sequential Approach: – Route the nets one at a time. Concurrent Approach: – Consider.
Modern VLSI Design 3e: Chapter 4 Copyright  1998, 2002 Prentice Hall PTR Topics n Layouts for logic networks. n Channel routing. n Simulation.
ECE 260B – CSE 241A /UCB EECS Kahng/Keutzer/Newton Physical Design Flow Read Netlist Initial Placement Placement Improvement Cost Estimation Routing.
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 مرتضي صاحب الزماني.
CSE 494: Electronic Design Automation LectureRouting.
Routing Topology Algorithms Mustafa Ozdal 1. Introduction How to connect nets with multiple terminals? Net topologies needed before point-to-point routing.
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 7 Global Routing Mustafa Ozdal Computer Engineering Department, Bilkent University.
An Exact Algorithm for Difficult Detailed Routing Problems Kolja Sulimma Wolfgang Kunz J. W.-Goethe Universität Frankfurt.
مرتضي صاحب الزماني 1 Maze Routing. Homework 4 مهلت تحویل : 23 اردیبهشت پروژه 1 : انتخاب طرح : امروز مرتضي صاحب الزماني 2.
EE4271 VLSI Design VLSI Channel Routing.
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 21: November 28, 2005 Routing 1.
Parallel Algorithms for VLSI Routing 曾奕倫 Department of Computer Science & Engineering Yuan Ze University.
VLSI Physical Design Automation
VLSI Physical Design Automation
Chapter 7 – Specialized Routing
VLSI Physical Design Automation
VLSI Physical Design Automation
Chapter 5 – Global Routing
CSE 144 Project Part 3.
Placement and Routing With Congestion Control
Topics Logic synthesis. Placement and routing..
Routing Algorithms.
EE4271 VLSI Design, Fall 2016 VLSI Channel Routing.
Register-Transfer (RT) Synthesis
Detailed Routing مرتضي صاحب الزماني.
VLSI Physical Design Automation
ICS 252 Introduction to Computer Design
Under a Concurrent and Hierarchical Scheme
Presentation transcript:

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 the terminals of the nets  Levels of abstraction: oGlobal routing oDetailed routing Objectives  Cost components: oArea (channel width) oWire delays oNumber of layers oAdditional cost components: number of bends, vias

Global vs. Detailed Routing Global routing  Input: detailed placement, with exact terminal locations  Determine “channel” (routing region) for each net  Objective: minimize area (congestion), and timing (approximate) Detailed routing  Input: channels and approximate routing from the global routing phase  Determine the exact route and layers for each net  Objective: valid routing, minimize area (congestion), meet timing constraints  Additional objectives: min via, power Figs. [©Sherwani]

Routing Environment Chip architecture  Full-custom  Standard cell  Gate Array

Routing Environment Chip architecture  Full-custom: oNo constraint on routing regions Objective functions are the objective functions of general routing problem. Routability Area Minimization Total wire length minimization Maximum wire length minimization

Routing Environment Chip architecture  Standard cell: oVariable channel height? oFeed-through cells connect channels Failed net Channel Feedthroughs Channels do not have predetermined capacity Feedthroughs have predetermined capacty Area minimization Minimization to total wire length Minimization of maximum wire lenght

Routing Environment Chip architecture  Gate Array: oFixed channel height oLimited switchbox connections oPrefabricated wire segments have different weights Figs. [©Sherwani] Tracks Failed connection Routability Minimize total wire length Minimize maximum wire length

Maze Routing (Lee Algorithm) Similar to breadth-first search  Very simple algorithm  Works on grid graph  Time complexity: grid size (NxN) Algorithm  Propagate a “wave” from source until hit the sink (implemented using a queue)  Trace back to find the path Guaranteed to find the optimal solution  Usually multiple optimal solutions exist More than two terminals?  For the third terminal, use the path between the first two as the source of the wave s t

Maze Routing Key to popularity:  Simplicity  Guaranteed to find the optimal solution  Can realize more complex cost functions too (e.g., number of bends in a path) Weakness:  Multiple terminals not handled efficiently  Dependent on grid, a two dimensional data structure Different variations exist  Soukup’s alg: oFirst use DFS, when get to an obstacle, use BFS to get around oNo guarantee to find the shortest path

Multiple Terminal Nets A E B C D

D E C B A

D E C B A

D E C B A

Finding More Desirable Paths

Finding More Desirable Paths

Finding More Desirable Paths

Finding More Desirable Paths

Speed Improvement ST

Hadlock’s Algorithm S T

Soukup’s Algorithm S T

Line Search (Probe) Algorithm Mikami-Tabuchi’s Algorithm

Line Search (Probe) Algorithm Hightower’s Algorithm

Multi Terminal Nets Steiner Tree Steiner tree Steiner point MST Rectilinear Steiner Tree Minimize Wire length