CSE 144 Project Part 2. Overview Multiple rows Routing channel between rows Components of identical height but various width Goal: Implement a placement.

Slides:



Advertisements
Similar presentations
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE VLSI Circuit Design Lecture 11 - Combinational.
Advertisements

ISQED’2015: D. Seemuth, A. Davoodi, K. Morrow 1 Automatic Die Placement and Flexible I/O Assignment in 2.5D IC Design Daniel P. Seemuth Prof. Azadeh Davoodi.
Placement 1 Outline Goal What is Placement? Why Placement?
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 21: April 15, 2009 Routing 1.
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.
Reconfigurable Computing (EN2911X, Fall07)
Physical Design Outline –What is Physical Design –Design Methods –Design Styles –Analysis and Verification Goal –Understand physical design topics Reading.
On Legalization of Row-Based Placements Andrew B. KahngSherief Reda CSE & ECE Departments University of CA, San Diego La Jolla, CA 92093
ICS 252 Introduction to Computer Design Lecture 15 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 19: April 9, 2008 Routing 1.
Simulated Annealing 10/7/2005.
EDA (CS286.5b) Day 7 Placement (Simulated Annealing) Assignment #1 due Friday.
Lecture 9: Multi-FPGA System Software October 3, 2013 ECE 636 Reconfigurable Computing Lecture 9 Multi-FPGA System Software.
Partitioning 1 Outline –What is Partitioning –Partitioning Example –Partitioning Theory –Partitioning Algorithms Goal –Understand partitioning problem.
Cost-Based Tradeoff Analysis of Standard Cell Designs Peng Li Pranab K. Nag Wojciech Maly Electrical and Computer Engineering Carnegie Mellon University.
Routing 2 Outline –Maze Routing –Line Probe Routing –Channel Routing Goal –Understand maze routing –Understand line probe routing.
ECE 506 Reconfigurable Computing Lecture 7 FPGA Placement.
CSE 242A Integrated Circuit Layout Automation Lecture 5: Placement Winter 2009 Chung-Kuan Cheng.
The printed circuit board (PCB) design
Register-Transfer (RT) Synthesis Greg Stitt ECE Department University of Florida.
Protein Structure Alignment by Incremental Combinatorial Extension (CE) of the Optimal Path Ilya N. Shindyalov, Philip E. Bourne.
MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD
Escaping local optimas Accept nonimproving neighbors – Tabu search and simulated annealing Iterating with different initial solutions – Multistart local.
Placement by Simulated Annealing. Simulated Annealing  Simulates annealing process for placement  Initial placement −Random positions  Perturb by block.
Global Routing. Global routing:  To route all the nets, should consider capacities  Sequential −One net at a time  Concurrent −Order-independent 2.
CSE 242A Integrated Circuit Layout Automation Lecture: Partitioning Winter 2009 Chung-Kuan Cheng.
Modern VLSI Design 4e: Chapter 4 Copyright  2008 Wayne Wolf Topics n Standard cell-based layout. n Channel routing. n Simulation.
Global Routing.
CSE 494: Electronic Design Automation Lecture 4 Partitioning.
LOPASS: A Low Power Architectural Synthesis for FPGAs with Interconnect Estimation and Optimization Harikrishnan K.C. University of Massachusetts Amherst.
Open Discussion of Design Flow Today’s task: Design an ASIC that will drive a TV cell phone Exercise objective: Importance of codesign.
1 Global Routing Method for 2-Layer Ball Grid Array Packages Yukiko Kubo*, Atsushi Takahashi** * The University of Kitakyushu ** Tokyo Institute of Technology.
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.
Gordian Placement Tool: Quadratic and Linear Problem Formulation Ryan Speelman Jason Gordon Steven Butt EE 201A
Improved Cut Sequences for Partitioning Based Placement Mehmet Can YILDIZ and Patrick H. Madden State University of New York at BinghamtonComputer Science.
Thermal-aware Steiner Routing for 3D Stacked ICs M. Pathak and S.K. Lim Georgia Institute of Technology ICCAD 07.
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.
"A probabilistic approach to clock cycle prediction" A probabilistic approach to clock cycle prediction J. Dambre, D. Stroobandt and J. Van Campenhout.
4. Combinational Logic Networks Layout Design Methods 4. 2
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.
Register Placement for High- Performance Circuits M. Chiang, T. Okamoto and T. Yoshimura Waseda University, Japan DATE 2009.
Dept. of Electrical and Computer Engineering The University of Texas at Austin E-Beam Lothography Stencil Planning and Optimization wit Overlapped Characters.
Exercise TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
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.
CHAPTER 8 Developing Hard Macros The topics are: Overview Hard macro design issues Hard macro design process Physical design for hard macros Block integration.
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 مرتضي صاحب الزماني.
Circuit Partitioning Divides circuit into smaller partitions that can be efficiently handled Goal is generally to minimize communication between balanced.
LEMAR: A Novel Length Matching Routing Algorithm for Analog and Mixed Signal Circuits H. Yao, Y. Cai and Q. Gao EDA Lab, Department of CS, Tsinghua University,
The printed circuit board (PCB) design §PCB design is part of the design process of a product in electronics industry. §PCB is a piece of insulating plastic.
CSE 144 Project. Overall Goal of the Project Implement a physical design tool for a two- row standard cell design
Register-Transfer (RT) Synthesis Greg Stitt ECE Department University of Florida.
1 CS270 Project Overview Maximum Planar Subgraph Danyel Fisher Jason Hong Greg Lawrence Jimmy Lin.
1 Double-Patterning Aware DSA Template Guided Cut Redistribution for Advanced 1-D Gridded Designs Zhi-Wen Lin and Yao-Wen Chang National Taiwan University.
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 21: November 28, 2005 Routing 1.
Min-Cut Placement.
VLSI Physical Design Automation
ESE535: Electronic Design Automation
ECE 556 Project Presentation
Sheqin Dong, Song Chen, Xianlong Hong EDA Lab., Tsinghua Univ. Beijing
CSE 144 Project Part 3.
Placement and Routing With Congestion Control
FPGA Interconnection Algorithm
Algorithms for Budget-Constrained Survivable Topology Design
VLSI Physical Design Automation
Reconfigurable Computing (EN2911X, Fall07)
Presentation transcript:

CSE 144 Project Part 2

Overview Multiple rows Routing channel between rows Components of identical height but various width Goal: Implement a placement tool for standard cell design

Problems to be resolved Assignment of components to rows  Optimization goal: Reducing inter-row connections  Strategy: Slicing bisection algorithm Concrete row positions in each row  Optimization goal: Minimizing overall interconnect length in channels  Strategy: Simulated annealing algorithm

Row 1 Row-based component grouping Algorithm: slicing bisection for N-row layout  Need to slice (partition) the circuit into N rows  Rows should have similar size  Connection between rows are minimized  Repeatedly partition the circuit Example: a 3-row design Row 2 Row 3

How to generate slicing? Slicing algorithm requires  unbalanced partitioning  minimized cutsize between rows Repeatedly apply Fiduccia-Mattheyses algorithm under varying area constraints Each partitioning step generates one new row

Row 1 Feed-through problem Remaining rows Partitioning after the 1 st step Components 1&3 fixed in row 1 Component 2 connected with row 1 If component 2 assigned to row 3 in the next partition, a feed-through generated Need to consider the connections between components already assigned and components yet to be assigned

Row 1 Feed-through reduction (1) Remaining rows Partitioning strategy  Always partition the complete set of components  Area constraints change for distinct step  Components already assigned fixed in Partition 1 Step Fixed components

Feed-through reduction (1) Partitioning strategy  Always partition the complete set of components  Area constraints change for distinct step  Components already assigned fixed in Partition 1 Step Components 1 & 3 fixed in Partition 1 This strategy pushes components heavily connected with 1&3 to be assigned in Partition 1 too

Feed-through reduction (2) Penalize partitionings generating feed- throughs Partitioning after the 1 st step Assign a large penalty value to edges between fixed components and unfixed components If 2 is not assigned to Partition 2 in the next partition (the case generating feed-through), cutsize significantly increased

Intra-row component arrangement Arrange the components in each row to minimize the overall interconnect cost in the channel Interconnect cost model:  The overall length of horizontal wires  Ignore consider the feed-through wires

Simulated annealing algorithm Start from an initial arrangement Randomly change the position of one component (the position of its neighbors need to be adjusted accordingly) Accept moves that reduce cost; probabilistically accept moves that increase cost Try multiple moves at each temperature Terminate when the benefit is less than 2% in 3 successive temperatures

How to calculate cost? The horizontal wire length depends on pin positions in components Pin location specification Pin number increases from left to right Distance between two adjacent pins is 2 Each pin is of width A 3-pin component

How to calculate cost? The cost of the example placement is 32

Summary Slicing bisection Simulated annealing Row generation Component arrangement Inter-rowIntra-row Goal: Algorithm: Issues to consider: Feed-through Cost model For the implementation of slicing bisection, we provide to you a set of candidate penalty values {1, 2, 5, 10, 15}, try them and figure out the best one