Fall 2003EE 5301 - VLSI Design Automation I 149 EE 5301 – VLSI Design Automation I Kia Bazargan University of Minnesota Part V: Placement.

Slides:



Advertisements
Similar presentations
Capo: Robust and Scalable Open-Source Min-cut Floorplacer Jarrod A. Roy, David A. Papa,Saurabh N. Adya, Hayward H. Chan, James F. Lu, Aaron N. Ng, Igor.
Advertisements

3D-STAF: Scalable Temperature and Leakage Aware Floorplanning for Three-Dimensional Integrated Circuits Pingqiang Zhou, Yuchun Ma, Zhouyuan Li, Robert.
X-Architecture Placement Based on Effective Wire Models Tung-Chieh Chen, Yi-Lin Chuang, and Yao-Wen Chang Graduate Institute of Electronics Engineering.
A Size Scaling Approach for Mixed-size Placement Kalliopi Tsota, Cheng-Kok Koh, Venkataramanan Balakrishnan School of Electrical and Computer Engineering.
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.
FastPlace: Efficient Analytical Placement using Cell Shifting, Iterative Local Refinement and a Hybrid Net Model FastPlace: Efficient Analytical Placement.
Early Days of Circuit Placement Martin D. F. Wong Department of Electrical and Computer Engineering University of Illinois at Urbana-Champaign.
A Clustering Utility Based Approach for S. Areibi, M. Thompson, A. Vannelli uoguelph.ca September 2001 School of Engineering ASIC Design 14th.
Congestion Driven Placement for VLSI Standard Cell Design Shawki Areibi and Zhen Yang School of Engineering, University of Guelph, Ontario, Canada December.
EE 5301 – VLSI Design Automation I
International Conference on Computer-Aided Design San Jose, CA Nov. 2001ER UCLA UCLA 1 Congestion Reduction During Placement Based on Integer Programming.
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.
Constructive Benchmarking for Placement David A. Papa EECS Department University of Michigan Ann Arbor, MI Igor L. Markov EECS.
VLSI Layout Algorithms CSE 6404 A 46 B 65 C 11 D 56 E 23 F 8 H 37 G 19 I 12J 14 K 27 X=(AB*CD)+ (A+D)+(A(B+C)) Y = (A(B+C)+AC+ D+A(BC+D)) Dr. Md. Saidur.
VLSI Layout Algorithms CSE 6404 A 46 B 65 C 11 D 56 E 23 F 8 H 37 G 19 I 12J 14 K 27 X=(AB*CD)+ (A+D)+(A(B+C)) Y = (A(B+C)+AC+ D+A(BC+D)) Dr. Md. Saidur.
2004/9/16EE VLSI Design Automation I 85 EE 5301 – VLSI Design Automation I Kia Bazargan University of Minnesota Part III: Partitioning.
International Symposium of Physical Design Sonoma County, CA April 2001ER UCLA UCLA 1 Congestion Estimation During Top-Down Placement Xiaojian Yang Ryan.
ICS 252 Introduction to Computer Design winter 2005 Eli Bozorgzadeh Computer Science Department-UCI.
Fall 2003EE VLSI Design Automation I 118 EE 5301 – VLSI Design Automation I Kia Bazargan University of Minnesota Part IV: Floorplanning.
Fall 2006EE VLSI Design Automation I V-1 EE 5301 – VLSI Design Automation I Kia Bazargan University of Minnesota Part V: Placement.
ICS 252 Introduction to Computer Design Lecture 14 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
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.
ICS 252 Introduction to Computer Design Lecture 15 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
Fall 2006EE VLSI Design Automation I VI-1 EE 5301 – VLSI Design Automation I Kia Bazargan University of Minnesota Part VI: Routing.
Can Recursive Bisection Alone Produce Routable Placements? Andrew E. Caldwell Andrew B. Kahng Igor L. Markov Supported by Cadence.
Processing Rate Optimization by Sequential System Floorplanning Jia Wang 1, Ping-Chih Wu 2, and Hai Zhou 1 1 Electrical Engineering & Computer Science.
CSE 144 Project Part 2. Overview Multiple rows Routing channel between rows Components of identical height but various width Goal: Implement a placement.
Placement-Centered Research Directions and New Problems Xiaojian Yang Amir Farrahi Synplicity Inc.
Chip Planning 1. Introduction Chip Planning:  Deals with large modules with −known areas −fixed/changeable shapes −(possibly fixed locations for some.
General Routing Overview and Channel Routing
ECE 506 Reconfigurable Computing Lecture 7 FPGA Placement.
Placement by Simulated Annealing. Simulated Annealing  Simulates annealing process for placement  Initial placement −Random positions  Perturb by block.
VLSI Physical Design Automation
10/7/ VLSI Physical Design Automation Prof. David Pan Office: ACES Lecture 6. Floorplanning (1)
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.
10/11/ VLSI Physical Design Automation Prof. David Pan Office: ACES Placement (2)
1 Wire Length Prediction-based Technology Mapping and Fanout Optimization Qinghua Liu Malgorzata Marek-Sadowska VLSI Design Automation Lab UC-Santa Barbara.
Gordian Placement Tool: Quadratic and Linear Problem Formulation Ryan Speelman Jason Gordon Steven Butt EE 201A
Analytic Placement. Layout Project:  Sending the RTL file: −Thursday, 27 Farvardin  Final deadline: −Tuesday, 22 Ordibehesht  New Project: −Soon 2.
Quadratic and Linear WL Placement Using Quadratic Programming: Gordian & Gordian-L Shantanu Dutt ECE Dept., Univ. of Illinois at Chicago Acknowledgements:
Improved Cut Sequences for Partitioning Based Placement Mehmet Can YILDIZ and Patrick H. Madden State University of New York at BinghamtonComputer Science.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
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.
Jason Cong‡†, Guojie Luo*†, Kalliopi Tsota‡, and Bingjun Xiao‡ ‡Computer Science Department, University of California, Los Angeles, USA *School of Electrical.
Register Placement for High- Performance Circuits M. Chiang, T. Okamoto and T. Yoshimura Waseda University, Japan DATE 2009.
Quadratic VLSI Placement Manolis Pantelias. General Various types of VLSI placement  Simulated-Annealing  Quadratic or Force-Directed  Min-Cut  Nonlinear.
1 ER UCLA ISPD: Sonoma County, CA, April, 2001 An Exact Algorithm for Coupling-Free Routing Ryan Kastner, Elaheh Bozorgzadeh,Majid Sarrafzadeh.
International Workshop on System-Level Interconnection Prediction, Sonoma County, CA March 2001ER UCLA UCLA 1 Wirelength Estimation based on Rent Exponents.
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 1 Course Overview Mustafa Ozdal Computer Engineering Department, Bilkent University.
Routability-driven Floorplanning With Buffer Planning Chiu Wing Sham Evangeline F. Y. Young Department of Computer Science & Engineering The Chinese University.
1 NTUplace: A Partitioning Based Placement Algorithm for Large-Scale Designs Tung-Chieh Chen 1, Tien-Chang Hsu 1, Zhe-Wei Jiang 1, and Yao-Wen Chang 1,2.
FPGA CAD 10-MAR-2003.
International Symposium on Physical Design San Diego, CA April 2002ER UCLA UCLA 1 Routability Driven White Space Allocation for Fixed-Die Standard-Cell.
Dirk Stroobandt Ghent University Electronics and Information Systems Department A New Design Methodology Based on System-Level Interconnect Prediction.
CprE566 / Fall 06 / Prepared by Chris ChuPartitioning1 CprE566 Partitioning.
Dirk Stroobandt Ghent University Electronics and Information Systems Department Multi-terminal Nets do Change Conventional Wire Length Distribution Models.
A Snap-On Placement Tool Israel Waldman. Introduction.
RTL Design Flow RTL Synthesis HDL netlist logic optimization netlist Library/ module generators physical design layout manual design a b s q 0 1 d clk.
Placement and Routing Algorithms. 2 FPGA Placement & Routing.
Partial Reconfigurable Designs
VLSI Quadratic Placement
EE5780 Advanced VLSI Computer-Aided Design
Placement and Routing With Congestion Control
EDA Lab., Tsinghua University
FAR: Fixed Points Addition & Relaxation Based Placement
ICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design
Presentation transcript:

Fall 2003EE VLSI Design Automation I 149 EE 5301 – VLSI Design Automation I Kia Bazargan University of Minnesota Part V: Placement

Fall 2003EE VLSI Design Automation I 150 References and Copyright Textbooks referred (none required)  [Mic94] G. De Micheli “Synthesis and Optimization of Digital Circuits” McGraw-Hill,  [CLR90] T. H. Cormen, C. E. Leiserson, R. L. Rivest “Introduction to Algorithms” MIT Press,  [Sar96] M. Sarrafzadeh, C. K. Wong “An Introduction to VLSI Physical Design” McGraw-Hill,  [She99] N. Sherwani “Algorithms For VLSI Physical Design Automation” Kluwer Academic Publishers, 3 rd edition, 1999.

Fall 2003EE VLSI Design Automation I 151 References and Copyright (cont.) Slides used: (Modified by Kia when necessary)  [©Sarrafzadeh] © Majid Sarrafzadeh, 2001; Department of Computer Science, UCLA  [©Sherwani] © Naveed A. Sherwani, 1992 (companion slides to [She99])  [©Keutzer] © Kurt Keutzer, Dept. of EECS, UC-Berekeley  [©Gupta] © Rajesh Gupta UC-Irvine  [©Kang] © Steve Kang UIUC

Fall 2003EE VLSI Design Automation I 152 Placement Problem  Given a netlist, and fixed-shape cells (small, standard cell), find the exact location of the cells to minimize area and wire-length  Consistent with the standard-cell design methodology oRow-based, no hard-macros  Modules: oUsually fixed, equal height (exception: double height cells) oSome fixed (I/O pads) oConnected by edges or hyperedges Objectives  Cost components: area, wire length oAdditional cost components: timing, congestion

Fall 2003EE VLSI Design Automation I 153 Placement Cost Components Area  Would like to pack all the modules very tightly Wire length (half-perimeter of the hnet bbox)  Minimize the average wire length  Would result in tight packing of the modules with high connectivity Overlap  Could be prohibited by the moves, or used as penalty  Keep the cells from overlapping (moves cells apart) Timing  Not a 1-1 correspondent with wire length minimization, but consistent on the average Congestion  Measure of routability  Would like to move the cells apart

Fall 2003EE VLSI Design Automation I 154 Placement Algorithms Top-Down  Partitioning-based placement  Recursive bi-partitioning or quadrisection oCut direction? oPartition vs. physical location Iterative  Simulated annealing OR: Force directed  Start with an initial placement, iteratively improve the wire-length and area Constructive  Start with a few cells in the center, and place highly connected adjacent modules around them 1 2 B A D B F A C G L H

Fall 2003EE VLSI Design Automation I 155 Simulated Annealing Placement Cost  Area (usually fixed # of rows, variable row width)  Wirelength (Euclidian or Manhattan)  Cell overlap (penalty increases with temperature) Moves  Exchange two cells within a radius R (R temperature dependent?)  Displace a cell within a row  Flip a cell horizontally Low vs. High temperature  If used as a post processing, start with low-temp Post-processing?  Might be needed if there are still overlaps

Fall 2003EE VLSI Design Automation I 156 Force-Directed Placement Model  Wires simulated as springs (if the only force, what will happen?) Force ij = Weight ij x distance ij.  Cell sizes as repellant forces  [Eisenmann, DAC’98]: “vacant” regions work as “attracting” forces “overcrowded” regions work as “repelling” forces Algorithm  Solve a set of linear equations to find an intermediate solution (module locations)  Repeat the process until equilibrium

Fall 2003EE VLSI Design Automation I 157 Force-Directed Placement (cont.) Model (details):  Cell distances: either  OR:  Forces:  Objective: find x,y coordinates for all cells such that total force exerted on each cell is zero.

Fall 2003EE VLSI Design Automation I 158 Force-Directed Placement (cont.) Avoiding overlaps or collapsing in one point?  Use fixed boundary I/O cells  Use repelling force between cells that are not connected by a net  Do not allow a move that results in overlap  Use repelling “field” forces from congested areas to sparse ones [Eisenmann, DAC’98] Problems with force directed:  Overlap still might occur (cell sizes model artificially)  Flat design, not hierarchy

Fall 2003EE VLSI Design Automation I 159 Partitioning-based Placement Simultaneously perform:  Circuit partitioning  Chip area partitioning  Assign circuit partitions to chip slots Problem:  Circuit partitioning unaware of the physical location  Solution: Terminal propagation (add dummy terminals) A B A B A B [She99] p.239 AB

Fall 2003EE VLSI Design Automation I 160 Partitioning-based Placement More problems:  Direction of the cut? [Yildiz, DAC’01]  How to handle fixed blocks? (area assigned to a partition might not be enough)  How to correct a bad decision made at a higher level? Advantages:  Hierarchical, scalable  Inherently apt for congestion minimization, easily extendable to timing optimization (a) (b) (c) 12 3 (d)

Fall 2003EE VLSI Design Automation I 161 To Probe Further... Hans Eisenmann and Frank M. Johannes “Generic Global Placement and Floorplanning”, Design Automation Conference (DAC), pp , (force directed method) Maogang Wang, Xiaojian Yang and Majid Sarrafzadeh “Dragon2000: Standard-Cell Placement Tool for Large Industry Circuits”, International Conference on Computer-Aided Design (ICCAD), pp , (partitioning-based placement) Dennis J.-H. Huang and Andrew B. Kahng “Partitioning-based Standard-cell Global Placement With An Exact Objective”, International Symposium on Physical Design (ISPD), pp , (quadrisection-based placement)

Fall 2003EE VLSI Design Automation I 162 To Probe Further... Xiaojian Yang, Elaheh Bozorgzadeh and Majid Sarrafzadeh, “Wirelength Estimation based on Rent Exponents of Partitioning and Placement”, System Level Interconnect Prediction (SLIP), pp , Mehmet Can Yildiz and Patrick H. Madden “Improved Cut Sequences for Partitioning Based Placement”, Design Automation Conference (DAC), pp , (cut directions in partitioning-based placement) Chandra Mulpuri and Scott Hauck “Runtime and Quality Tradeoffs in FPGA Placement and Routing”, International Symposium on Field Programmable Gate Arrays (FPGA), pp , (placement and routing quality/speed trade-off)