An Effective Congestion Driven Placement Framework André Rohe University of Bonn, Germany joint work with Ulrich Brenner.

Slides:



Advertisements
Similar presentations
Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.
Advertisements

MIP-based Detailed Placer for Mixed-size Circuits Shuai Li, Cheng-Kok Koh ECE, Purdue University {li263,
Optimization of Placement Solutions for Routability Wen-Hao Liu, Cheng-Kok Koh, and Yih-Lang Li DAC’13.
Natarajan Viswanathan Min Pan Chris Chu Iowa State University International Symposium on Physical Design April 6, 2005 FastPlace: An Analytical Placer.
Meng-Kai Hsu, Sheng Chou, Tzu-Hen Lin, and Yao-Wen Chang Electronics Engineering, National Taiwan University Routability Driven Analytical Placement for.
A Size Scaling Approach for Mixed-size Placement Kalliopi Tsota, Cheng-Kok Koh, Venkataramanan Balakrishnan School of Electrical and Computer Engineering.
Shuai Li and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University West Lafayette, IN, Mixed Integer Programming Models.
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.
National Tsing Hua University Po-Yang Hsu,Hsien-Te Chen,
1 Physical Hierarchy Generation with Routing Congestion Control Chin-Chih Chang *, Jason Cong *, Zhigang (David) Pan +, and Xin Yuan * * UCLA Computer.
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.
1 Thermal Via Placement in 3D ICs Brent Goplen, Sachin Sapatnekar Department of Electrical and Computer Engineering University of Minnesota.
Multiobjective VLSI Cell Placement Using Distributed Simulated Evolution Algorithm Sadiq M. Sait, Mustafa I. Ali, Ali Zaidi.
International Conference on Computer-Aided Design San Jose, CA Nov. 2001ER UCLA UCLA 1 Congestion Reduction During Placement Based on Integer Programming.
38 th Design Automation Conference, Las Vegas, June 19, 2001 Creating and Exploiting Flexibility in Steiner Trees Elaheh Bozorgzadeh, Ryan Kastner, Majid.
Placement 1 Outline Goal What is Placement? Why Placement?
Routing 1 Outline –What is Routing? –Why Routing? –Routing Algorithms Overview –Global Routing –Detail Routing –Shortest Path Algorithms Goal –Understand.
Reconfigurable Computing (EN2911X, Fall07)
Estimation of Wirelength Reduction for λ-Geometry vs. Manhattan Placement and Routing H. Chen, C.-K. Cheng, A.B. Kahng, I. Mandoiu, and Q. Wang UCSD CSE.
A Proposal for Routing-Based Timing-Driven Scan Chain Ordering Puneet Gupta 1 Andrew B. Kahng 1 Stefanus Mantik 2
POLAR 2.0: An Effective Routability-Driven Placer Chris Chu Tao Lin.
Cost-Based Tradeoff Analysis of Standard Cell Designs Peng Li Pranab K. Nag Wojciech Maly Electrical and Computer Engineering Carnegie Mellon University.
CDCTree: Novel Obstacle-Avoiding Routing Tree Construction based on Current Driven Circuit Model Speaker: Lei He.
7/15/ VLSI Placement Prof. Shiyan Hu Office: EERC 731.
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing © KLMH Lienig 1 FLUTE: Fast Lookup Table Based RSMT Algorithm.
Introduction to Routing. The Routing Problem Apply after placement Input: –Netlist –Timing budget for, typically, critical nets –Locations of blocks and.
MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD
Global Routing. Global routing:  To route all the nets, should consider capacities  Sequential −One net at a time  Concurrent −Order-independent 2.
Mixed-Size Placement with Fixed Macrocells using Grid-Warping Zhong Xiu*, Rob Rutenbar * Advanced Micro Devices Inc., Department of Electrical and Computer.
CRISP: Congestion Reduction by Iterated Spreading during Placement Jarrod A. Roy†‡, Natarajan Viswanathan‡, Gi-Joon Nam‡, Charles J. Alpert‡ and Igor L.
Power Reduction for FPGA using Multiple Vdd/Vth
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.
10/11/ VLSI Physical Design Automation Prof. David Pan Office: ACES Placement (2)
March 20, 2007 ISPD An Effective Clustering Algorithm for Mixed-size Placement Jianhua Li, Laleh Behjat, and Jie Huang Jianhua Li, Laleh Behjat,
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.
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
1 Wire Length Prediction-based Technology Mapping and Fanout Optimization Qinghua Liu Malgorzata Marek-Sadowska VLSI Design Automation Lab UC-Santa Barbara.
Analytic Placement. Layout Project:  Sending the RTL file: −Thursday, 27 Farvardin  Final deadline: −Tuesday, 22 Ordibehesht  New Project: −Soon 2.
Thermal-aware Steiner Routing for 3D Stacked ICs M. Pathak and S.K. Lim Georgia Institute of Technology ICCAD 07.
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.
Congestion Estimation and Localization in FPGAs: A Visual Tool for Interconnect Prediction David Yeager Darius Chiu Guy Lemieux The University of British.
Quadratic VLSI Placement Manolis Pantelias. General Various types of VLSI placement  Simulated-Annealing  Quadratic or Force-Directed  Min-Cut  Nonlinear.
I N V E N T I V EI N V E N T I V E A Morphing Approach To Address Placement Stability Philip Chong Christian Szegedy.
Physical Synthesis Comes of Age Chuck Alpert, IBM Corp. Chris Chu, Iowa State University Paul Villarrubia, IBM Corp.
Chris Chu Iowa State University Yiu-Chung Wong Rio Design Automation
Simulated Annealing in 512 bytes EMICRO2004 Microelectronics School Marcelo Johann B R A Z I L.
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 1 Course Overview Mustafa Ozdal Computer Engineering Department, Bilkent 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.
Routing Topology Algorithms Mustafa Ozdal 1. Introduction How to connect nets with multiple terminals? Net topologies needed before point-to-point routing.
"Fast estimation of the partitioning Rent characteristic" Fast estimation of the partitioning Rent characteristic using a recursive partitioning model.
International Symposium on Physical Design San Diego, CA April 2002ER UCLA UCLA 1 Routability Driven White Space Allocation for Fixed-Die Standard-Cell.
Proximity Optimization for Adaptive Circuit Design Ang Lu, Hao He, and Jiang Hu.
A Snap-On Placement Tool Israel Waldman. Introduction.
6/19/ VLSI Physical Design Automation Prof. David Pan Office: ACES Placement (3)
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.
Min-Cut Placement.
HeAP: Heterogeneous Analytical Placement for FPGAs
VLSI Quadratic Placement
Multilevel Full-Chip Routing for the X-Based Architecture
2 University of California, Los Angeles
EE5780 Advanced VLSI Computer-Aided Design
Reconfigurable Computing (EN2911X, Fall07)
FLUTE: Fast Lookup Table Based RSMT Algorithm for VLSI Design
Presentation transcript:

An Effective Congestion Driven Placement Framework André Rohe University of Bonn, Germany joint work with Ulrich Brenner

A dense Placement good wirelength impossible to route

Possible Solution easy to route bad wirelength/timing

Congestion Driven Placement easy to route + good wirelength almost no extra computation efford !

Our Basis: Bonn Place Partitioning based approach Solves QP in each level, followed by partitioning Partitioning is done by quadrisection: circuits are partitioned with minimum movement (Vygen)

Methods used for congestion driven placement Very fast congestion calculation Inflate circuits in congested regions Spreading inflated cells

Congestion calculation Calculate Steiner Tree for each net Probablitiy estimation for each 2-point connection (similar to Hung & Flynn, Lou et al.)

Quality of congestion calculation congestion estimation

Quality of congestion calculation Bonn Global HDP Global

Inflation of circuits (used previously by Hou et al.) Initial inflation (based on pin density) Given a circuit c in Region R, c is inflated by up to 100% The inflation is based on the congestion in R and the surrounding regions & the pin density in R Deflation is possible if the circuit is no longer critical.

Placement Step 0

Placement Step 1

Placement Step 2

Placement Step 3

Placement Step 4

Placement Step 5

Placement Step 6

Placement Step 7

Spreading inflated cells Repartitioning considers 2x2 windows in placement grid to optimize netlength Use extra repartitioning step to move cells away from overloaded regions

Summary: Algorithm overview 1.Init: Set window_set := {chip area}, set circuit_list(chip area):={all circuits} 2.Main Loop: While (window size big enough) Solve a QP to minimize quadratic netlength For (each window w in window_set) Quadrisection(w) Repartitioning 3.Legalization

Algorithm overview 1.Init: Set window_set := {chip area}, set circuit_list(chip area):={all circuits} For (each c in {all circuits}) Increase b(c) proportionally to |pins(c)|/size(c) # initial inflation b(c) 2.Main Loop: While (window size big enough) Solve a QP to minimize quadratic netlength For (each window w in window_set) Quadrisection(w) Repartitioning 3.Legalization

Algorithm overview 1.Init: Set window_set := {chip area}, set circuit_list(chip area):={all circuits} For (each c in {all circuits}) Increase b(c) proportionally to |pins(c)|/size(c) # initial inflation b(c) 2.Main Loop: While (window size big enough) Solve a QP to minimize quadratic netlength For (each window w in window_set) Quadrisection(w) Compute congestion and update b(c) # update inflation b(c) Quadrisection(w) Repartitioning 3.Legalization

Algorithm overview 1.Init: Set window_set := {chip area}, set circuit_list(chip area):={all circuits} For (each c in {all circuits}) Increase b(c) proportionally to |pins(c)|/size(c) # initial inflation b(c) 2.Main Loop: While (window size big enough) Solve a QP to minimize quadratic netlength For (each window w in window_set) Quadrisection(w) Compute congestion and update b(c) # update inflation b(c) Quadrisection(w) Reduce overloaded windows # extra repartitioning steps Repartitioning 3.Legalization

Computational Results I ChipTech|Nets|DensityGridsizeRelease IBM 1sa2773, % 4091x3563x IBM 2sa1273, % 6118x6119x IBM 3sa27426, % 26792x26792x IBM 4sa27706, % 14028x13110x IBM 5sa271,390, % 23912x23912x7 2001

Computational Results II StandardCongestion Driven ChipCPUlenCPUlenBlow IBM 10:23 h7.2 m0:26 h7.4 m10.2 % IBM 20:26 h7.9 m0:27 h9.0 m6.6 % IBM 33:50 h134 m4:39 h142 m20.1 % IBM 47:08 h241 m7:24 h270 m20.2 % IBM 516:10 h375 m16:37 h406 m57.8 %

Computational Results II StandardCongestion Driven ChipCPUlenCPUlenBlow IBM 10:23 h7.2 m0:26 h7.4 m10.2 % IBM 20:26 h7.9 m0:27 h9.0 m6.6 % IBM 33:50 h134 m4:39 h142 m20.1 % IBM 47:08 h241 m7:24 h270 m20.2 % IBM 516:10 h375 m16:37 h406 m57.8 % Mean+8.7 %+8.5%

Computational Results III StandardCongestion Driven ChipHDPovCPUlenHDPovCPUlen IBM :15 h9 m75.500:05 h7.5 m IBM :19 h11.5 m75.400:05 h10.1 m IBM :36 h162 m77.304:51 h164 m IBM :18 h324 m75.202:48 h326 m IBM :57 h512 m :48 h527 m

Computational Results III StandardCongestion Driven ChipHDPovCPUlenHDPovCPUlen IBM :15 h9 m75.500:05 h7.5 m IBM :19 h11.5 m75.400:05 h10.1 m IBM :36 h162 m77.304:51 h164 m IBM :18 h324 m75.202:48 h326 m IBM :57 h512 m :48 h527 m Mean-9 %-73 %-5.2 %

Thank you for your attention !