1 VLSI CAD Flow: Logic Synthesis, 6.375 Lecture 13 by Ajay Joshi (Slides by S. Devadas)

Slides:



Advertisements
Similar presentations
Modern VLSI Design 3e: Chapter 3 Copyright 1998, 2002 Prentice Hall PTR Topics n Combinational logic functions. n Static complementary logic gate structures.
Advertisements

Logic Gates.
TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
Technology Mapping. Perform the final gate selection from a particular library Two basic approaches 1. ruled based technique 2. graph covering technique.
ELEC Digital Logic Circuits Fall 2014 Logic Synthesis (Chapters 2-5) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and.
ECE 551 Digital System Design & Synthesis Lecture 08 The Synthesis Process Constraints and Design Rules High-Level Synthesis Options.
Logic Synthesis – 3 Optimization Ahmed Hemani Sources: Synopsys Documentation.
CSE241 Formal Verification.1Cichy, UCSD ©2003 CSE241A VLSI Digital Circuits Winter 2003 Recitation 6: Formal Verification.
ECE 667 Synthesis and Verification of Digital Systems
ECE Synthesis & Verification - Lecture 8 1 ECE 697B (667) Spring 2006 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Circuits Introduction.
Modern VLSI Design: Chapter 3 Copyright  1998 Prentice Hall PTR Topics n Combinational logic functions n Static complementary logic gate structures.
ELEN 468 Lecture 121 ELEN 468 Advanced Logic Design Lecture 12 Synthesis of Combinational Logic I.
Modern VLSI Design 2e: Chapter4 Copyright  1998 Prentice Hall PTR.
CSE241 L5 Synthesis.1Kahng & Cichy, UCSD ©2003 CSE241 VLSI Digital Circuits UC San Diego Winter 2003 Lecture 05: Logic Synthesis Cho Moon Cadence Design.
Technology Mapping.
Technology Mapping 2 Outline Goal Reading Tree Pattern Matching
EDA (CS286.5b) Day 2 Covering. Why covering now? Nice/simple cost model problem can be solved well (somewhat clever solution) general/powerful technique.
Logical Effort.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 2: January 23, 2008 Covering.
1 Technology Mapping as a Binate Covering Problem Slides adapted from A. Kuehlmann, UC Berkeley 2003.
Lecture 5 Multilevel Logic Synthesis
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 16: March 23, 2009 Covering.
Technology Mapping 1 Outline –What is Technology Mapping? –Rule-Based Mapping –Tree Pattern Matching Goal –Understand technology mapping –Understand mapping.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 3 – Combinational Logic Design Part 1 –
EE141 © Digital Integrated Circuits 2nd Combinational Circuits 1 Logical Effort - sizing for speed.
Technology Mapping Outline Goal What is Technology Mapping?
FPGA Technology Mapping. 2 Technology mapping:  Implements the optimized nodes of the Boolean network to the target device library.  For FPGA, library.
ECE Synthesis & Verification, Lecture 17 1 ECE 697B (667) Spring 2006 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Systems Technology.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 3 – Combinational Logic Design Part 1 –
Combinational Logic Design
Overview Part 1 – Design Procedure 3-1 Design Procedure
Modern VLSI Design 4e: Chapter 3 Copyright  2008 Wayne Wolf Topics n Combinational logic functions. n Static complementary logic gate structures.
Design methodology.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Lecture 12 – Design Procedure.
CAD for Physical Design of VLSI Circuits
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 2: January 26, 2015 Covering Work preclass exercise.
Zvi Kohavi and Niraj K. Jha 1 Multi-level Logic Synthesis.
ECE 260B – CSE 241A Static Timing Analysis 1http://vlsicad.ucsd.edu ECE260B – CSE241A Winter 2005 Logic Synthesis Website:
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
L05 – Synthesis Spring /14/05 Synthesis: Verilog  Gates // 2:1 multiplexer or a or b) begin if (sel) z
Shantanu Dutt ECE Dept. UIC
Modern VLSI Design 3e: Chapter 4 Copyright  1998, 2002 Prentice Hall PTR Topics n Combinational network delay. n Logic optimization.
Logical Effort and Transistor Sizing Digital designs are usually expected to operate at high frequencies, thus designers often have to choose the fastest.
Introduction to CMOS VLSI Design Lecture 5: Logical Effort GRECO-CIn-UFPE Harvey Mudd College Spring 2004.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 3 – Combinational Logic Design Part 1 –
1 Technology Mapping Example: t t 1 = a + bc; t 2 = d + e; t 3 = ab + d; t 4 = t 1 t 2 + fg; t 5 = t 4 h + t 2 t 3 ; F = t 5 ’; This shows an unoptimized.
Technology Mapping. 2 Technology mapping is the phase of logic synthesis when gates are selected from a technology library to implement the circuit. Technology.
Example: Base Functions & Pattern Trees inv 1 nand3 3 oai21 3 nor2 2nand2 2 Base Functions: Pattern Trees:
Logic synthesis flow Technology independent mapping –Two level or multilevel optimization to optimize a coarse metric related to area/delay Technology.
Give qualifications of instructors: DAP
Modern VLSI Design 4e: Chapter 4 Copyright  2008 Wayne Wolf Topics n Combinational network delay. n Logic optimization.
Manufacture Testing of Digital Circuits
ELEC Digital Logic Circuits Fall 2015 Logic Synthesis (Chapters 2-5) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and.
ENGG 340 Midterm Review. Introduced the Concept of Variables and Functions Introduced the Concept of AND, OR, and NOT Introduced the Concept of Truth.
State university of New York at New Paltz Electrical and Computer Engineering Department Logic Synthesis Optimization Lect18: Multi Level Logic Minimization.
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 2: September 28, 2005 Covering.
Overview Part 1 – Design Procedure Beginning Hierarchical Design
Combinatorial Logic Circuit
ELEC 7770 Advanced VLSI Design Spring 2014 Technology Mapping
ESE535: Electronic Design Automation
ELEC 7770 Advanced VLSI Design Spring 2016 Technology Mapping
Sungho Kang Yonsei University
ECE 667 Synthesis and Verification of Digital Systems
Combinational Circuits
Technology Mapping I based on tree covering
VLSI CAD Flow: Logic Synthesis, Placement and Routing Lecture 5
Combinational Circuits
Agenda Lecture Content: Combinatorial Circuits Boolean Algebras
Presentation transcript:

1 VLSI CAD Flow: Logic Synthesis, Lecture 13 by Ajay Joshi (Slides by S. Devadas)

2 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 a b s q 0 1 d

3 Logic optimization flow LOGIC EQUATIONS TECHNOLOGY-INDEPENDENT OPTIMIZATION Factoring Commonality Extraction LIBRARY TECH-DEPENDENT OPTIMIZATION (MAPPING, TIMING) OPTIMIZED LOGIC NETWORK

4 Logic optimization flow LOGIC EQUATIONS TECHNOLOGY-INDEPENDENT OPTIMIZATION Factoring Commonality Extraction LIBRARY TECH-DEPENDENT OPTIMIZATION (MAPPING, TIMING) OPTIMIZED LOGIC NETWORK

5 Why logic optimization? Transistor count redution AREA Circuit count redutionPOWER Gate count (fanout) reductionDELAY (Speed) Area reduction, power reduction and delay reduction improves design

6 Boolean Optimizations Find common expressions Extract and substitute common expression F= f1f1 =AB+AC+AD+AE+ABCDE f2f2 =AB+AC+AD+AF+ABCDF    F= f1f1 =AB+C+D+E()+ABCDE f2f2 =AB+C+D+F()+ABCDF    G  g1g1 =B+C+D f1f1 =Ag1g1 +E()+AEg1g1 f2f2 =Ag1g1 +F()+AFg1g1     Involves: Finding common subexpressions. Substituting one expression into another. Factoring single functions.

7 Algebraic Optimizations Algebraic techniques view equations as polynomials Rules of polynomial algebra are used For e.g. in algebraic substitution (or division) if a function f = f(a, b, c) is divided by g = g(a, b), a and b will not appear in f / g Boolean algebra rules are not applied

8 Logic optimization flow LOGIC EQUATIONS TECHNOLOGY-INDEPENDENT OPTIMIZATION Factoring Commonality Extraction LIBRARY TECH-DEPENDENT OPTIMIZATION (MAPPING, TIMING) OPTIMIZED LOGIC NETWORK

9 “Closed Book” Technologies A standard cell technology or library is typically restricted to a few tens of gates e.g., MSU library: 31 cells Gates may be NAND, NOR, NOT, AOIs. A A A C A B AB+C B C A

10 Standard cell library For each cell Functional information Timing information Input slew Intrinsic delay Output capacitance Physical footprint Power characteristics

11 Sample Library INVERTER2 NAND23 NAND34 NAND45

12 Sample Library - 2 AOI21 4 AOI22 5

13 Mapping via DAG * Covering Represent network in canonical form  subject DAG Represent each library gate with canonical forms for the logic function  primitive DAGs Each primitive DAG has a cost Goal: Find a minimum cost covering of the subject DAG by the primitive DAGs * Directed Acyclic Graph

14 Trivial Covering Reduce netlist into ND2 gates → subject DAG 7NAND2 = 21 5INV = (area cost)

15 Covering #1 2 INV= 4 2 NAND2= 6 1 NAND3= 4 1 NAND4 = 5 19 (area cost)

16 Covering #2 1 INV= 2 1 NAND2= 3 2 NAND3= 8 1 AOI21= 4 17 (area cost)

17 Multiple fan-out

18 Partitioning a Graph Partition input netlist into a forest of trees Solve each tree optimally Stitch trees back together

19 Optimum Tree Covering NAND2 3 AOI = 7 INV = 13 NAND = 11 NAND = 6 NAND2 3 INV 2

20 Partition DAG into a forest of trees Normalize the netlist Optimally cover each tree Generate all candidate matches Find optimal match using dynamic programming DAG Covering steps

21 Summary Logic optimization is an important step in the design flow Two-step flow Technology independent optimization Technology dependent optimization Advantages of logic optimization Reduce area Reduce power Reduce delay

22 For more details… Refer to Srinivas Devadas’ slides for 6.373