Constrained Floorplanning Using Network Flows Teng Wang 05/04/2004.

Slides:



Advertisements
Similar presentations
Network Design with Degree Constraints Guy Kortsarz Joint work with Rohit Khandekar and Zeev Nutov.
Advertisements

Approximation algorithms for geometric intersection graphs.
Octagonal Drawing Johan van Rooij. Overview What is an octagonal drawing Good slicing graphs Octagonal drawing algorithm for good slicing graphs Correctness.
Covers, Dominations, Independent Sets and Matchings AmirHossein Bayegan Amirkabir University of Technology.
Introduction to Kernel Lower Bounds Daniel Lokshtanov.
Approximation Algorithms Chapter 14: Rounding Applied to Set Cover.
Approximations of points and polygonal chains
An Effective Floorplanning Algorithm in Mixed Mode Placement Integrated with Rectilinear- Shaped Optimization for Soft Blocks Changqi Yang, Xianlong Hong,
Linear Constraint Graph for Floorplan Optimization with Soft Blocks Jia Wang Electrical and Computer Engineering Illinois Institute of Technology Chicago,
“Devo verificare un’equivalenza polinomiale…Che fò? Fò dù conti” (Prof. G. Di Battista)
Approximation Algorithms for Capacitated Set Cover Ravishankar Krishnaswamy (joint work with Nikhil Bansal and Barna Saha)
1 Routing and Wavelength Assignment in Wavelength Routing Networks.
Paul Falkenstern and Yuan Xie Yao-Wen Chang Yu Wang Three-Dimensional Integrated Circuits (3D IC) Floorplan and Power/Ground Network Co-synthesis ASPDAC’10.
Online Social Networks and Media. Graph partitioning The general problem – Input: a graph G=(V,E) edge (u,v) denotes similarity between u and v weighted.
Optimization of Pearl’s Method of Conditioning and Greedy-Like Approximation Algorithm for the Vertex Feedback Set Problem Authors: Ann Becker and Dan.
Windows Scheduling Problems for Broadcast System 1 Amotz Bar-Noy, and Richard E. Ladner Presented by Qiaosheng Shi.
Data Transmission and Base Station Placement for Optimizing Network Lifetime. E. Arkin, V. Polishchuk, A. Efrat, S. Ramasubramanian,V. PolishchukA. EfratS.
Randomized Algorithms and Randomized Rounding Lecture 21: April 13 G n 2 leaves
reconstruction process, RANSAC, primitive shapes, alpha-shapes
A 2-Approximation algorithm for finding an optimum 3-Vertex-Connected Spanning Subgraph.
Processing Rate Optimization by Sequential System Floorplanning Jia Wang 1, Ping-Chih Wu 2, and Hai Zhou 1 1 Electrical Engineering & Computer Science.
9-1 Chapter 9 Approximation Algorithms. 9-2 Approximation algorithm Up to now, the best algorithm for solving an NP-complete problem requires exponential.
9-1 Chapter 9 Approximation Algorithms. 9-2 Approximation algorithm Up to now, the best algorithm for solving an NP-complete problem requires exponential.
Graph-Cut Algorithm with Application to Computer Vision Presented by Yongsub Lim Applied Algorithm Laboratory.
Linear Programming – Max Flow – Min Cut Orgad Keller.
1 Introduction to Approximation Algorithms Lecture 15: Mar 5.
7/13/ EE4271 VLSI Design VLSI Routing. 2 7/13/2015 Routing Problem Routing to reduce the area.
Floorplanning. Obtained by subdividing a given rectangle into smaller rectangles. Each smaller rectangle corresponds to a module.
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.
Integrality Gaps for Sparsest Cut and Minimum Linear Arrangement Problems Nikhil R. Devanur Subhash A. Khot Rishi Saket Nisheeth K. Vishnoi.
Chih-Hung Lin, Kai-Cheng Wei VLSI CAD 2008
9/7/06CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2006 Triangulations and Guarding Art Galleries Carola Wenk.
Escape Routing For Dense Pin Clusters In Integrated Circuits Mustafa Ozdal, Design Automation Conference, 2007 Mustafa Ozdal, IEEE Trans. on CAD, 2009.
CAFE router: A Fast Connectivity Aware Multiple Nets Routing Algorithm for Routing Grid with Obstacles Y. Kohira and A. Takahashi School of Computer Science.
Efficient Gathering of Correlated Data in Sensor Networks
Pattern Selection based co-design of Floorplan and Power/Ground Network with Wiring Resource Optimization L. Li, Y. Ma, N. Xu, Y. Wang and X. Hong WuHan.
Network Aware Resource Allocation in Distributed Clouds.
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.
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 8 Lecture 8 Network Flow Based Modeling Mustafa Ozdal Computer Engineering Department,
Copyright © Cengage Learning. All rights reserved The Area Problem.
Multiple Integration Copyright © Cengage Learning. All rights reserved.
1 Efficient Obstacle-Avoiding Rectilinear Steiner Tree Construction Chung-Wei Lin, Szu-Yu Chen, Chi-Feng Li, Yao-Wen Chang, Chia-Lin Yang National Taiwan.
A Memetic Algorithm for VLSI Floorplanning Maolin Tang, Member, IEEE, and Xin Yao, Fellow, IEEE IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART.
1 A Min-Cost Flow Based Detailed Router for FPGAs Seokjin Lee *, Yongseok Cheon *, D. F. Wong + * The University of Texas at Austin + University of Illinois.
1 WEEK 11 Graphs III Network Flow Problems A Simple Maximum-Flow Algorithm Izmir University of Economics.
Multicommodity flow, well-linked terminals and routing problems Chandra Chekuri Lucent Bell Labs Joint work with Sanjeev Khanna and Bruce Shepherd Mostly.
CS223 Advanced Data Structures and Algorithms 1 Maximum Flow Neil Tang 3/30/2010.
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 8 Lecture 8 Network Flow Based Modeling Mustafa Ozdal Computer Engineering Department,
New algorithms for Disjoint Paths and Routing Problems
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
VLSI Floorplanning and Planar Graphs prepared and Instructed by Shmuel Wimer Eng. Faculty, Bar-Ilan University July 2015VLSI Floor Planning and Planar.
The geometric GMST problem with grid clustering Presented by 楊劭文, 游岳齊, 吳郁君, 林信仲, 萬高維 Department of Computer Science and Information Engineering, National.
Constrained ‘Modern’ Floorplanning
VLSI Physical Design Automation
Minimum Spanning Tree 8/7/2018 4:26 AM
June 2017 High Density Clusters.
Lecture 22 Network Flow, Part 2
Analysis and design of algorithm
Computational Geometry (35/33)
Enumerating Distances Using Spanners of Bounded Degree
Finding Subgraphs with Maximum Total Density and Limited Overlap
Neuro-RAM Unit in Spiking Neural Networks with Applications
Chapter 11 Limitations of Algorithm Power
Lesson 9-5 Similar Solids.
Haitao Wang Utah State University SoCG 2017, Brisbane, Australia
VLSI Physical Design Automation
Ch09 _2 Approximation algorithm
Lecture 22 Network Flow, Part 2
Given a list of n  8 integers, what is the runtime bound on the optimal algorithm that sorts the first eight? O(1) O(log n) O(n) O(n log n) O(n2)
Presentation transcript:

Constrained Floorplanning Using Network Flows Teng Wang 05/04/2004

Outline Constrained Modern Floorplanning Problem (CMFP) Bound-feasibility check BFS/IBFS/CBFS Algorithm Postprocessing Experimental Results

Modern Floorplanning Problem Classic Floorplanning Problem:  A set of modules (height, width)  A connectivity matrix  Objective: minimize area, wire length, etc. Modern Floorplanning Problem – Kahng, 2000  Bounding rectangle is fixed  Modules can be rectilinear  “Round” blocks are preferred Constrained Modern Floorplanning Problem (CMFP):  Approximate relative positions of the modules are known

Design Flow Steps: 1.Bound-feasibility check 2.Floorplanning algorithm 3.Postprocessing 4.Connectivity check

CMFP Inputs  A H x W bounding box  A set of modules center point bounds required area Theroem1: CMFP is NP-hard Outputs For each, assign units of area

Bound-Feasibility Bound-Feasibility: N is the set of modules, for any subset T of N

Bound-Feasibility Check Theorem2: If the max flow of G is equal to, then the input is bound-feasible Theorem3: The complexity of the algorithm is O(n 2 logn) and O(n 5 logn) in worst case G

Min-Cost Max-Flow Algorithm Problem: A module could be assigned to regions that are not adjacent. Solution: A min-cost max-flow algorithm  Maintaining maximum flow of G,  Minimize, where c e is the cost assigned to the edge of G, f e is the flow of e. This encourages assigning the connected regions to a module.

BFS BFS: assign an integer cost to each edge Complexity: O(n 2 log 2 n) and O(n 6 logn) in the worst case Problem: two modules compete for a region in the same priority RG: Region Graph

IBFS – Improved BFS IBFS: assign a fractional cost to each edge Complexity: the same as BFS

CBFS – Compromise BFS CBFS: a region splits into several subregions, one subregion for each module that competes for this region. Assign different cost for different subregions Complexity: O(n 2 log 2 n) and O(n 8 logn) in the worst case

Postprocessing Postprocessing: make modules connected and assign an area to each module A module m has a subgraph of RG, with vertices that correspond to regions assigned to m Module m is connected if and only if its subgraph is connected A floorplan is connected => each module is connected Graph connectivity doesn’t imply geometric connectivity

Experiments Implementations: Java and C++ Benchmarks: ami33, ami49 and n300a An initial step to obtain initial module positions

Experimental Results - I IDI1I1 I2I2 I3I3 I4I4 I5I5 I6I6 I7I7 I8I8 I9I9 I 10 BMami33 ami49 Ratio Regions Benchmarks ID I1I1 I2I2 I3I3 I4I4 I5I5 I6I6 I7I7 I8I8 I9I9 I 10 MaxFlow BFS IBFS CBFS Number of disconnected regions

Experimental Results - II ID I1I1 I2I2 I3I3 I4I4 I5I5 I6I6 I7I7 I8I8 I9I9 I 10 BFS3(8)3(5)3(2)3(4)3(9)3(7)4(1)3(7)4(1)3(7) IBFS3(3)3(1)3(2) 3(1)3(4)3(3)3(2) 3(4) CBFS7(4)8(1)8(3) 8(4)8(5)8(2)8(1)8(3) Max number of modules assigned to a region (number of such regions) ID I1I1 I2I2 I3I3 I4I4 I5I5 I6I6 I7I7 I8I8 I9I9 I 10 Avg No of Sides Average Number of the sides of modules (IBFS) ami33ami49 Sweep Plane Min-Cost Max-Flow Postprocessing Total Breakdown of runtime (s) No of modules Runtime vs Input size(s)

END Thank you!