Chapter 1 – Introduction

Slides:



Advertisements
Similar presentations
Embedded Systems Design: A Unified Hardware/Software Introduction 1 Chapter 10: IC Technology.
Advertisements

Ch.7 Layout Design Standard Cell Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
1 A Lithography-friendly Structured ASIC Design Approach By: Salman Goplani* Rajesh Garg # Sunil P Khatri # Mosong Cheng # * National Instruments, Austin,
Multiobjective VLSI Cell Placement Using Distributed Simulated Evolution Algorithm Sadiq M. Sait, Mustafa I. Ali, Ali Zaidi.
MICROELETTRONICA Design methodologies Lection 8. Design methodologies (general) Three domains –Behavior –Structural –physic Three levels inside –Architectural.
Problem 1 Defining Netlist Snarl Factor. Some Background A B C D F G EH A B C D F G EH Congested area PlacementRouting A B C D F G E H Netlist == Graph.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
Chapter 2 – Netlist and System Partitioning
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.
Chapter 1 – Introduction
Physical Design Outline –What is Physical Design –Design Methods –Design Styles –Analysis and Verification Goal –Understand physical design topics Reading.
Can Recursive Bisection Alone Produce Routable Placements? Andrew E. Caldwell Andrew B. Kahng Igor L. Markov Supported by Cadence.
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.
ECE 506 Reconfigurable Computing Lecture 7 FPGA Placement.
The printed circuit board (PCB) design
Introduction to Routing. The Routing Problem Apply after placement Input: –Netlist –Timing budget for, typically, critical nets –Locations of blocks and.
Module-3 (MOS designs,Stick Diagrams,Designrules)
Global Routing.
CAD for Physical Design of VLSI Circuits
Open Discussion of Design Flow Today’s task: Design an ASIC that will drive a TV cell phone Exercise objective: Importance of codesign.
© KLMH Lienig 1 Chapter 1 – Introduction Original Authors: Andrew B. Kahng, Jens Lienig, Igor L. Markov, Jin Hu VLSI Physical Design: From Graph Partitioning.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Testability and architecture. Design methodologies. Multiprocessor system-on-chip.
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 2 Background and Introduction Mustafa Ozdal Computer Engineering Department, Bilkent.
CMP 4202: VLSI System Design Lecturer: Geofrey Bakkabulindi
Modern VLSI Design 3e: Chapter 2 Copyright  1998, 2002 Prentice Hall PTR Topics n Design rules and fabrication. n SCMOS scalable design rules. n Stick.
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.
Field Programmable Gate Arrays (FPGAs) An Enabling Technology.
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing © KLMH Lienig 1 What Makes a Design Difficult to Route Charles.
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.
Topics Design methodologies. Kitchen timer example.
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 3 Partitioning Mustafa Ozdal Computer Engineering Department, Bilkent University Mustafa.
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
Exercise TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
ECE 260B – CSE 241A /UCB EECS Kahng/Keutzer/Newton Physical Design Flow Read Netlist Initial Placement Placement Improvement Cost Estimation Routing.
Detailed Routing مرتضي صاحب الزماني.
CMOS Fabrication nMOS pMOS.
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 1 Course Overview Mustafa Ozdal Computer Engineering Department, Bilkent University.
Integrated Microsystems Lab. EE372 VLSI SYSTEM DESIGNE. Yoon 1-1 Panorama of VLSI Design Fabrication (Chem, physics) Technology (EE) Systems (CS) Matel.
VLSI Floorplanning and Planar Graphs prepared and Instructed by Shmuel Wimer Eng. Faculty, Bar-Ilan University July 2015VLSI Floor Planning and Planar.
ICS 353: Design and Analysis of Algorithms Backtracking King Fahd University of Petroleum & Minerals Information & Computer Science Department.
An Exact Algorithm for Difficult Detailed Routing Problems Kolja Sulimma Wolfgang Kunz J. W.-Goethe Universität Frankfurt.
EE141 Manufacturing 1 Chapter 2 Manufacturing Process and CMOS Circuit Layout 1 st rev. : March 7, nd rev. : April 10, 2003.
EMT 351/4 DIGITAL IC DESIGN Week # 1 EDA & HDL.
VLSI Physical Design Automation
ASIC Design Methodology
سبکهاي طراحي (Design Styles)
Layout of CMOS Circuits
Chapter 7 – Specialized Routing
STICK Diagrams UNIT III : VLSI CIRCUIT DESIGN PROCESSES VLSI DESIGN
Day 33: November 19, 2014 Crosstalk
EE141 Design Styles and Methodologies
Chapter 2 – Netlist and System Partitioning
Chapter 10: IC Technology
Day 31: November 23, 2011 Crosstalk
Objective of This Course
Chapter 5 – Global Routing
Where are we? Lots of Layout issues Line of diffusion style
ELEC 7770 Advanced VLSI Design Spring 2016 Technology Mapping
Chapter 10: IC Technology
HIGH LEVEL SYNTHESIS.
Algorithms for Budget-Constrained Survivable Topology Design
ECE 424 – Introduction to VLSI Design
VLSI CAD Flow: Logic Synthesis, Placement and Routing Lecture 5
ICS 353: Design and Analysis of Algorithms
Chapter 10: IC Technology
Chapter 6 (I) CMOS Layout of Complexe Gate
Presentation transcript:

Chapter 1 – Introduction VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 1 – Introduction Original Authors: Andrew B. Kahng, Jens Lienig, Igor L. Markov, Jin Hu

Chapter 1 – Introduction 1.1 Electronic Design Automation (EDA) 1.2 VLSI Design Flow 1.3 VLSI Design Styles 1.4 Layout Layers and Design Rules 1.5 Physical Design Optimizations 1.6 Algorithms and Complexity 1.7 Graph Theory Terminology 1.8 Common EDA Terminology

1.1 Electronic Design Automation (EDA) Moore’s Law In 1965, Gordon Moore (Fairchild) stated that the number of transistors on an IC would double every year. 10 years later, he revised his statement, asserting that they double every 18 months. Since then, this “rule” has been famously known as Moore’s Law. Moore: „Cramming more components onto integrated circuits" Electronics, Vol. 38, No. 8, 1965

1.1 Electronic Design Automation (EDA) Impact of EDA technologies on overall IC design productivity and IC design cost

1.1 Electronic Design Automation (EDA) Time Period Circuit and Physical Design Process Advancements 1950 -1965 Manual design only. 1965 -1975 Layout editors, e.g., place and route tools, first developed for printed circuit boards. 1975 -1985 More advanced tools for ICs and PCBs, with more sophisticated algorithms. 1985 -1990 First performance-driven tools and parallel optimization algorithms for layout; better understanding of underlying theory (graph theory, solution complexity, etc.). 1990 -2000 First over-the-cell routing, first 3D and multilayer placement and routing techniques developed. Automated circuit synthesis and routability-oriented design become dominant. Start of parallelizing workloads. Emergence of physical synthesis. 2000 - now Design for Manufacturability (DFM), optical proximity correction (OPC), and other techniques emerge at the design-manufacturing interface. Increased reusability of blocks, including intellectual property (IP) blocks. © 2011 Springer Verlag

Functional Design and Logic Design Physical Verification and Signoff 1.2 VLSI Design Flow System Specification Partitioning Architectural Design ENTITY test is port a: in bit; end ENTITY test; Functional Design and Logic Design Chip Planning Circuit Design Placement Physical Design Clock Tree Synthesis Physical Verification and Signoff DRC LVS ERC Signal Routing Fabrication Timing Closure Packaging and Testing © 2011 Springer Verlag Chip

1.3 VLSI Design Styles Layout editor Menu Bar Toolbar Drawing Tools Layer Palette Locator Cell Browser Mouse Buttons Bar Text Windows Layout Windows Status Bar © 2011 Springer

1.3 VLSI Design Styles Common digital cells AND OR INV NAND NOR IN1 OUT 1 IN1 IN2 OUT 1 IN OUT 1 IN1 IN2 OUT 1 IN1 IN2 OUT 1

1.3 VLSI Design Styles Vdd Vdd IN2 IN2 IN1 OUT OUT IN1 GND GND IN1 OUT Contact Metal layer Vdd IN2 Poly layer IN2 IN1 OUT Diffusion layer OUT IN1 p-type transistor GND n-type transistor GND IN1 OUT IN2

1.3 VLSI Design Styles Vdd Vdd IN2 IN2 IN1 OUT OUT IN1 GND GND IN1 OUT Contact Metal layer Vdd IN2 Poly layer IN2 IN1 OUT Diffusion layer OUT IN1 p-type transistor GND n-type transistor GND IN1 OUT IN2 Power (Vdd)-Rail Ground (GND)-Rail

1.3 VLSI Design Styles Standard cell layout with a feedthrough cell Standard cell layout using over-the-cell (OTC routing Power Pad Standard Cells Ground Pad Power Pad Standard Cells Ground Pad Pad Pad A A VDD VDD A’ GND GND A’ © 2011 Springer Verlag Feedthrough Cell Routing Channel

1.3 VLSI Design Styles Layout with macro cells RAM PLA RAM VDD RAM Standard Cell Block GND PLA © 2011 Springer Verlag Pad Routing Regions

SB SB SB LB SB SB SB SB SB SB SB SB SB 1.3 VLSI Design Styles LB LB LB Field-programmable gate array (FPGA) Logic Element LB LB LB LB LB LB LB LB Switchbox Connection SB SB SB LB SB SB SB LB LB LB LB LB LB LB LB LB SB SB SB SB SB SB LB LB LB LB LB LB LB LB LB © 2011 Springer Verlag

1.4 Layout Layers and Design Rules Layout layers of an inverter cell with external connections Inverter Cell Vdd Metal2 Contact Metal1 Via polysilicon p/n diffusion GND © 2011 Springer Verlag External Connections

1.4 Layout Layers and Design Rules Categories of design rules Size rules, such as minimum width: The dimensions of any component (shape), e.g., length of a boundary edge or area of the shape, cannot be smaller than given minimum values. These values vary across different metal layers. Separation rules, such as minimum separation: Two shapes, either on the same layer or on adjacent layers, must be a minimum (rectilinear or Euclidean diagonal) distance apart. Overlap rules, such as minimum overlap: Two connected shapes on adjacent layers must have a certain amount of overlap due to inaccuracy of mask alignment to previously-made patterns on the wafer.

1.4 Layout Layers and Design Rules Categories of design rules : smallest meaningful technology-dependent unit of length a  c Minimum Width: a Minimum Separation: b, c, d Minimum Overlap: e e d b © 2011 Springer Verlag

1.5 Physical Design Optimizations Types of constraints Technology constraints enable fabrication for a specific technology node and are derived from technology restrictions. Examples include minimum layout widths and spacing values between layout shapes. Electrical constraints ensure the desired electrical behavior of the design. Examples include meeting maximum timing constraints for signal delay and staying below maximum coupling capacitances. Geometry (design methodology) constraints are introduced to reduce the overall complexity of the design process. Examples include the use of preferred wiring directions during routing, and the placement of standard cells in rows.

1.6 Algorithms and Complexity Runtime complexity Runtime complexity: the time required by the algorithm to complete as a function of some natural measure of the problem size, allows comparing the scalability of various algorithms Complexity is represented in an asymptotic sense, with respect to the input size n, using big-Oh notation or O(…) Runtime t(n) is order f (n), written as t(n) = O(f (n)) when where k is a real number Example: t(n) = 7n! + n2 + 100, then t(n) = O(n!) because n! is the fastest growing term as n  .

1.6 Algorithms and Complexity Runtime complexity Example: Exhaustively Enumerating All Placement Possibilities Given: n cells Task: find a single-row placement of n cells with minimum total wirelength by using exhaustive enumeration. Solution: The solution space consists of n! placement options. If generating and evaluating the wirelength of each possible placement solution takes 1 s and n = 20, the total time needed to find an optimal solution would be 77,147 years! A number of physical design problems have best-known algorithm complexities that grow exponentially with n, e.g., O(n!), O(nn), and O(2n). Many of these problems are NP-hard (NP: non-deterministic polynomial time) No known algorithms can ensure, in a time-efficient manner, globally optimal solution Heuristic algorithms are used to find near-optimal solutions

1.6 Algorithms and Complexity Heuristic algorithms Deterministic: All decisions made by the algorithm are repeatable, i.e., not random. One example of a deterministic heuristic is Dijkstra’s shortest path algorithm. Stochastic: Some decisions made by the algorithm are made randomly, e.g., using a pseudo-random number generator. Thus, two independent runs of the algorithm will produce two different solutions with high probability. One example of a stochastic algorithm is simulated annealing. In terms of structure, a heuristic algorithm can be Constructive: The heuristic starts with an initial, incomplete (partial) solution and adds components until a complete solution is obtained. Iterative: The heuristic starts with a complete solution and repeatedly improves the current solution until a preset termination criterion is reached.

1.6 Algorithms and Complexity Heuristic algorithms Problem Instance Constructive Algorithm Initial Solution Iterative Improvement no Termination Criterion Met? yes Return Best-Seen Solution

1.7 Graph Theory Terminology Hypergraph Multigraph b b b a e f a a c d e g f d c c © 2011 Springer Verlag

1.7 Graph Theory Terminology Directed graphs with cycles Directed acyclic graph c f c f a a a b b d g b d g e e © 2011 Springer Verlag

1.7 Graph Theory Terminology Undirected graph with maximum node degree 3 Directed tree b a a f b c d c e g e f g h i j k d © 2011 Springer Verlag

1.7 Graph Theory Terminology Rectilinear minimum spanning tree (RMST) Rectilinear Steiner minimum tree (RSMT) b (2,6) b (2,6) Steiner point c (6,4) c (6,4) a (2,1) a (2,1) © 2011 Springer Verlag

1.8 Common EDA Terminology Netlist a (a: N1) (b: N2) (c: N5) (x: IN1 N1, IN2 N2, OUT N3) (y: IN1 N1, IN2 N2, OUT N4) (z: IN1 N3, IN2 N4, OUT N5) (N1: a, x.IN1, y.IN1) (N2: b, x.IN2, y.IN2) (N3: x.OUT, z.IN1) (N4: y.OUT, z.IN2) (N5: z.OUT, c) x N3 N5 N1 N2 z c N4 y b Pin-Oriented Netlist Net-Oriented Netlist © 2011 Springer

1.8 Common EDA Terminology Connectivity graph a a x x N3 N5 N1 N2 z c z c N4 y b b y © 2011 Springer Verlag

1.8 Common EDA Terminology Connectivity matrix a b x y z c a 1 1 b 1 1 a x x 1 1 2 1 N3 N5 N1 N2 z c y 1 1 2 1 N4 z 1 1 1 y b c 1 © 2011 Springer Verlag

1.8 Common EDA Terminology Distance metric between two points P1 (x1,y1) and P2 (x2,y2) dM = 7 with n = 2: Euclidean distance n = 1: Manhattan distance dE = 5 P1 (2,4) P2 (6,1)

Summary of Chapter 1 IC production experienced huge growth since the 1960s Exponential decrease in transistor size, cost per transistor, power per transistor, etc IC design is impossible without simplification and automation Row-based standard-cell layout with design rules Traditionally, each step in the VLSI design flow has been automated separately by software (CAD) tools Software tools use sophisticated algorithms Many problems in physical design are NP-hard – solved by heuristic algorithms that find near-optimal solutions Deterministic versus stochastic algorithms Constructive algorithms versus iterative improvement Graph algorithms – deal with circuit connectivity Computational geometry – deal with circuit layout