7/15/2015 1 VLSI Placement Prof. Shiyan Hu Office: EERC 731.

Slides:



Advertisements
Similar presentations
Linear Programming. Introduction: Linear Programming deals with the optimization (max. or min.) of a function of variables, known as ‘objective function’,
Advertisements

MS&E 211 Quadratic Programming Ashish Goel. A simple quadratic program Minimize (x 1 ) 2 Subject to: -x 1 + x 2 ≥ 3 -x 1 – x 2 ≥ -2.
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.
Optimization of thermal processes2007/2008 Optimization of thermal processes Maciej Marek Czestochowa University of Technology Institute of Thermal Machinery.
Convex Optimization Chapter 1 Introduction. What, Why and How  What is convex optimization  Why study convex optimization  How to study convex optimization.
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.
Totally Unimodular Matrices Lecture 11: Feb 23 Simplex Algorithm Elliposid Algorithm.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 15: March 12, 2007 Interconnect 3: Richness.
ENGR 351 Numerical Methods Instructor: Dr. L.R. Chevalier
EDA (CS286.5b) Day 5 Partitioning: Intro + KLFM. Today Partitioning –why important –practical attack –variations and issues.
Global Routing Prof. Shiyan Hu Office: EERC 731.
Lecture 9: Multi-FPGA System Software October 3, 2013 ECE 636 Reconfigurable Computing Lecture 9 Multi-FPGA System Software.
Gate Sizing by Mathematical Programming Prof. Shiyan Hu
Chip Planning 1. Introduction Chip Planning:  Deals with large modules with −known areas −fixed/changeable shapes −(possibly fixed locations for some.
1 ENTITY test is port a: in bit; end ENTITY test; DRC LVS ERC Circuit Design Functional Design and Logic Design Physical Design Physical Verification and.
Solving quadratic equations Factorisation Type 1: No constant term Solve x 2 – 6x = 0 x (x – 6) = 0 x = 0 or x – 6 = 0 Solutions: x = 0 or x = 6 Graph.
Chih-Hung Lin, Kai-Cheng Wei VLSI CAD 2008
VLSI Physical Design Automation
Global Routing.
Etron Project: Placement and Routing for Chip-Package-Board Co-Design
CSE 494: Electronic Design Automation Lecture 4 Partitioning.
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,
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Gordian Placement Tool: Quadratic and Linear Problem Formulation Ryan Speelman Jason Gordon Steven Butt EE 201A
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 8 Lecture 8 Network Flow Based Modeling Mustafa Ozdal Computer Engineering Department,
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.
Massachusetts Institute of Technology 1 L14 – Physical Design Spring 2007 Ajay Joshi.
Solving Quadratic Equations by Factoring. Solution by factoring Example 1 Find the roots of each quadratic by factoring. factoring a) x² − 3x + 2 b) x².
1 Prune-and-Search Method 2012/10/30. A simple example: Binary search sorted sequence : (search 9) step 1  step 2  step 3  Binary search.
Quadratic VLSI Placement Manolis Pantelias. General Various types of VLSI placement  Simulated-Annealing  Quadratic or Force-Directed  Min-Cut  Nonlinear.
Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.
An Effective Congestion Driven Placement Framework André Rohe University of Bonn, Germany joint work with Ulrich Brenner.
§ 3.6 Solving Quadratic Equations by Factoring. Martin-Gay, Developmental Mathematics 2 Zero Factor Theorem Quadratic Equations Can be written in the.
Simulated Annealing in 512 bytes EMICRO2004 Microelectronics School Marcelo Johann B R A Z I L.
Solving Quadratic Equations Quadratic Equations: Think of other examples?
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 8 Lecture 8 Network Flow Based Modeling Mustafa Ozdal Computer Engineering Department,
Solving Quadratic Equations by Factoring. Martin-Gay, Developmental Mathematics 2 Zero Factor Theorem Quadratic Equations Can be written in the form ax.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 13: February 6, 2003 Interconnect 3: Richness.
Chapter 13 Backtracking Introduction The 3-coloring problem
IE 312 Review 1. The Process 2 Problem Model Conclusions Problem Formulation Analysis.
Effective Linear Programming-Based Placement Techniques Sherief Reda UC San Diego Amit Chowdhary Intel Corporation.
CSE 144 Project. Overall Goal of the Project Implement a physical design tool for a two- row standard cell design
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1 Part 2 - Chapter 7 Optimization.
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.
Lap Chi Lau we will only use slides 4 to 19
Chapter 7 – Specialized Routing
VLSI Physical Design Automation
Topics in Algorithms Lap Chi Lau.
Systems of Equations and Inequalities
VLSI Quadratic Placement
Solving Equations by Factoring and Problem Solving
GORDIAN Placement Perform GORDIAN placement
Factoring Quadratic Functions if a ≠ 1 (Section 3.5)
EE5780 Advanced VLSI Computer-Aided Design
Sensitivity.
Quadratics Lesson 2 Objective: Vertex Form of a Quadratic.
CS184a: Computer Architecture (Structures and Organization)
Chapter 6 Network Flow Models.
VLSI Physical Design Automation
Topics in Algorithms 2005 Max Cuts
Presentation transcript:

7/15/ VLSI Placement Prof. Shiyan Hu Office: EERC 731

2 7/15/2015 Problem formulation Input: –Blocks (standard cells and macros) B 1,..., B n –Shapes and Pin Positions for each block B i –Nets N 1,..., N m Output: –Coordinates (x i, y i ) for block B i. –The total wire length is minimized. –Subject to area constraint or the area of the resulting block is minimized

3 7/15/2015 Placement can Make A Difference Random Initial Placement Final Placement

4 7/15/2015 Partitioning: Objective: Given a set of interconnected blocks, produce two sets that are of equal size, and such that the number of nets connecting the two sets is minimized.

5 7/15/2015 FM Partitioning: Initial Random Placement After Cut 1 After Cut 2 list_of_sets = entire_chip; while(any_set_has_2_or_more_objects(list_of_sets)) { for_each_set_in(list_of_sets) { partition_it(); } /* each time through this loop the number of */ /* sets in the list doubles. */ }

6 7/15/2015 FM Partitioning: each object is assigned a gain - objects are put into a sorted gain list - the object with the highest gain is selected and moved. - the moved object is "locked" - gains of "touched" objects are recomputed - gain lists are resorted Object Gain: The amount of change in cut crossings that will occur if an object is moved from its current partition into the other partition Moves are made based on object gain.

7 7/15/ FM Partitioning:

8 7/15/

9 7/15/

10 7/15/

11 7/15/

12 7/15/

13 7/15/

14 7/15/

15 7/15/

16 7/15/

17 7/15/

18 7/15/

19 7/15/

20 7/15/

21 7/15/2015 Analytical Placement Write down the placement problem as an analytical mathematical problem Quadratic placement: –Sum of squared wire length is quadratic in the cell coordinates. –So the wirelength minimization problem can be formulated as a quadratic program. –It can be proved that the quadratic program is convex, hence polynomial time solvable

22 7/15/2015 x2 x1 x=100 x=200 Example:

23 7/15/2015 x2 x1 x=100x=200 Interpretation of matrices A and B: The diagonal values A[i,i] correspond to the number of connections to xi The off diagonal values A[i,j] are -1 if object i is connected to object j, 0 otherwise The values B[i] correspond to the sum of the locations of fixed objects connected to object i Example:

24 7/15/2015 Quadratic Placement aGlobal optimization: solves a sequence of quadratic programming problems aPartitioning: enforces the non-overlap constraints

25 7/15/2015 Solution of the Original QP

26 7/15/2015 Partitioning Use FM to cut.

27 7/15/2015 Perform the Global Optimization again with additional constraints that the center of gravities should be in the center of regions. Applying the Idea Recursively Center of Gravities

28 7/15/2015 Process of Gordian (a) Global placement with 1 region(b) Global placement with 4 region(c) Final placements

29 7/15/2015 Quadratic Techniques: Pros: - mathematically well behaved - efficient solution techniques Cons: - solution of Ax + B = 0 is not a legal placement, so generally some additional partitioning techniques are required. - solution of Ax + B = 0 is minimizes wirelength squared, not linear wire length.