Logic Synthesis 1 Outline –Logic Synthesis Problem –Logic Specification –Two-Level Logic Optimization Goal –Understand logic synthesis problem –Understand.

Slides:



Advertisements
Similar presentations
Digital Circuits.
Advertisements

Overview Part 1 – Gate Circuits and Boolean Equations
ECE C03 Lecture 31 Lecture 3 Two-Level Logic Minimization Algorithms Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Gate-Level Minimization
Logic Synthesis 2 Outline –Two-Level Logic Optimization –ESPRESSO Goal –Understand two-level optimization –Understand ESPRESSO operation.
Gate-Level Minimization. Digital Circuits The Map Method The complexity of the digital logic gates the complexity of the algebraic expression.
ELEN 468 Lecture 121 ELEN 468 Advanced Logic Design Lecture 12 Synthesis of Combinational Logic I.
EDA (CS286.5b) Day 15 Logic Synthesis: Two-Level.
Chapter 3 Simplification of Switching Functions
Logic Synthesis Outline –Logic Synthesis Problem –Logic Specification –Two-Level Logic Optimization Goal –Understand logic synthesis problem –Understand.
1 Optimizations and Tradeoffs We now know how to build digital circuits –How can we build better circuits? Let’s consider two important design criteria.
Lecture 5 Multilevel Logic Synthesis
Give qualifications of instructors: DAP
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
Gate Logic: Two Level Canonical Forms
Contemporary Logic Design Two-Level Logic © R.H. Katz Transparency No. 4-1 Chapter #2: Two-Level Combinational Logic Section 2.3, Switches and Tools.
Technology Mapping 1 Outline –What is Technology Mapping? –Rule-Based Mapping –Tree Pattern Matching Goal –Understand technology mapping –Understand mapping.
Logic Synthesis 3 Outline –Multi-Level Logic Optimization –Local Transformations –Weak Division Goal –Understand multi-level optimization –Understand local.
ECE 331 – Digital System Design Multi-level Logic Circuits and NAND-NAND and NOR-NOR Circuits (Lecture #8) The slides included herein were taken from the.
بهينه سازي با نقشة کارنو Karnaugh Map. 2  Method of graphically representing the truth table that helps visualize adjacencies 2-variable K-map 3-variable.
Unit 8 Combinational Circuit Design and Simulation Using Gates Ku-Yaw Chang Assistant Professor, Department of Computer Science.
Overview Part 2 – Circuit Optimization 2-4 Two-Level Optimization
Unit 7 Multi-Level Gate Circuits / NAND and NOR Gates Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information.
Introduction to Digital Logic Design Appendix A of CO&A Dr. Farag
Overview of Chapter 3 °K-maps: an alternate approach to representing Boolean functions °K-map representation can be used to minimize Boolean functions.
1 Fundamentals of Computer Science Propositional Logic (Boolean Algebra)
1 Lecture 10 PLDs  ROMs Multilevel logic. 2 Read-only memories (ROMs) Two dimensional array of stored 1s and 0s  Input is an address  ROM decodes all.
B-1 Appendix B - Reduction of Digital Logic Principles of Computer Architecture by M. Murdocca and V. Heuring © 1999 M. Murdocca and V. Heuring Principles.
K-map Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2009.
Based on slides by: Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. ECE/CS 352: Digital System Fundamentals Lecture 9 – Multilevel Optimization.
1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each.
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
Department of Computer Engineering
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC. K-Map (1)  Karnaugh Mapping is used to minimize the number of logic gates that are required in a digital circuit.
ECE 331 – Digital System Design
ECE 331 – Digital System Design NAND and NOR Circuits, Multi-level Logic Circuits, and Multiple-output Logic Circuits (Lecture #9) The slides included.
Gate-Level Minimization Chapter 3. Digital Circuits The Map Method The complexity of the digital logic gates the complexity of the algebraic expression.
D IGITAL L OGIC D ESIGN I G ATE -L EVEL M INIMIZATION.
Optimization Algorithm
Two-Level Simplification Approaches Algebraic Simplification: - algorithm/systematic procedure is not always possible - No method for knowing when the.
UM EECS 270 Spring 2011 – Taken from Dr.Karem Sakallah Logic Synthesis: From Specs to Circuits Implementation Styles –Random –Regular Optimization Criteria.
Combinational Logic Part 2: Karnaugh maps (quick).
2-1 Introduction Gate Logic: Two-Level Simplification Design Example: Two Bit Comparator Block Diagram and Truth Table A 4-Variable K-map for each of the.
Chapter3: Gate-Level Minimization Part 1 Origionally By Reham S. Al-Majed Imam Muhammad Bin Saud University.
ETE 204 – Digital Electronics
1 K-Maps, Multi-level Circuits, Time Response Today: Reminder: Test #1, Thu 7-9pm K-map example, espressoFirst Hour: K-map example, espresso –Section 2.3.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 15: March 4, 2002 Two-Level Logic-Synthesis.
THE K-MAP.
1 Example: Groupings on 3-Variable K-Maps BC F(A,B,C) = A ’ B ’ A BC F(A,B,C) = B ’ A
Digital Logic (Karnaugh Map). Karnaugh Maps Karnaugh maps (K-maps) are graphical representations of boolean functions. One map cell corresponds to a row.
CMPUT Computer Organization and Architecture II1 CMPUT329 - Fall 2003 Topic 4: Cost of Logic Circuits and Karnaugh Maps José Nelson Amaral.
Karnaugh Maps (K maps).
Boolean Functions 1 ECE 667 ECE 667 Synthesis and Verification of Digital Circuits Boolean Functions Basics Maciej Ciesielski Univ.
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
1 CS 352 Introduction to Logic Design Lecture 4 Ahmed Ezzat Multi-level Gate Circuits and Combinational Circuit Design Ch-7 + Ch-8.
©2010 Cengage Learning SLIDES FOR CHAPTER 6 QUINE-McCLUSKEY METHOD Click the mouse to move to the next page. Use the ESC key to exit this chapter. This.
Digital Systems Design 1 Signal Expressions Multiply out: F = ((X + Y)  Z) + (X  Y  Z) = (X  Z) + (Y  Z) + (X  Y  Z)
Lecture 3: Incompletely Specified Functions and K Maps
DeMorgan’s Theorem DeMorgan’s 2nd Theorem
Lecture 3: Incompletely Specified Functions and K Maps
BASIC & COMBINATIONAL LOGIC CIRCUIT
CHAPTER 5 KARNAUGH MAPS 5.1 Minimum Forms of Switching Functions
Optimization Algorithm
CSE 370 – Winter Combinational Implementation - 1
EECS150 - Digital Design Lecture 7 - Boolean Algebra II
Overview Part 2 – Circuit Optimization
3-Variable K-map AB/C AB/C A’B’ A’B AB AB’
VLSI CAD Flow: Logic Synthesis, Placement and Routing Lecture 5
Laws & Rules of Boolean Algebra
Lecture 3: Incompletely Specified Functions and K Maps
Presentation transcript:

Logic Synthesis 1 Outline –Logic Synthesis Problem –Logic Specification –Two-Level Logic Optimization Goal –Understand logic synthesis problem –Understand logic optimization problem

Logic Synthesis Problem Map from logic equations to gate-level combinational logic –will consider FSM synthesis later Goals –maximize speed –minimize power –minimize chip/board area Constraints –target technology –CAD tool CPU time a’bc + abc + dbc + d b c d b c d

Logic Specification.i 3.o 3.p 4 10x101 x x010.e Two-level logic equations –sum of products –“PLA format” –“ESPRESSO format” Multiple-level logic equations –Berkeley Logic Intermediate Format (BLIF) –arbitrary set of equations –generated in converting directly from RTL »e.g. logic equations for ALU –generated from gate-level netlist x = ab’ + b’c + abc’ y = abc’ + ab z = ab’ literaloperand x = abc’ + def + ghi + jkl +... y = bc + e’ + ghi + jk +... x = (a(b+c)d + ef(i+j))(k + l)

Logic Specification Logic equations are flattened to two levels –AND-OR, NAND-NAND, NOR-NOR –common starting point for most tools –eliminates any input bias –causes exponential explosion in equation size in worst case »does not occur in practice

Logic Synthesis Problem 1. logic equation simplification –reduce literal and operand count »less “stuff” to implement –generally reduces chip area –does not always minimize delay 2. logic synthesis –map equations to generic gates »AND, OR, NOT 3. gate-level optimization –“local” transformations for speed, area, power »e.g. AND-NOT => NAND –need estimate of technology costs 4. technology mapping –map from gates to component library »FPGAs, standard cells, TTL, etc.

Karnaugh Maps - Two-Level Minimization A B C D F = A’BC’D + A’BCD + ABC’D’ + ABC’D + ABCD + ABCD’ + AB’C’D’ + AB’C’D F = AB + AC’ + BD Build map - 2 N entries –label entries »0 - F = 0 »1 - F = 1 »X - F = don’t care Find minimum prime cover –cover - set of terms whose union is true for all entries that are 1 »can also cover all 0 entries instead and complement F –prime - terms are simplest (largest cover) they can be »AB vs. ABC + ABC’ –minimum - fewest terms F’ = A’B’ + B’C + A’D’

Examples A B C D F = AC’ + BD + ABCD’ ABCD’ is not prime A B C D F = AC’ + BD F is not a cover

Examples A B C D F’ = A’B’ + A’D’ + B’C A B C D 00 X X1 F = A + BD Use don’t care terms when determining if term is prime Solve for complement

Can Get Into Local Minima A B C D A B C D A B C D A B C D

Local Minima A B C D A B C D A B C D A B C D

A B C D Result is not minimal A B C D F = BD’ + A’D’ + A’B’F = A’B’ + BD’ Result is minimal Solution –try different cover sequences Minimum cover is NP-complete –exponential time in worst case Usually many minima

Problems with Karnaugh Maps Exponential space in number of inputs –e.g. 100 input function needs cells –very inefficient if number of 1 or 0 cells is small Needs of two-level minimization –efficient data structure »ideally linear in size of function –efficient means of searching for minimal prime cover »get close to optimal in reasonable time –serve as a building-block for multi-level minimization