CSEE 4823 Advanced Logic Design Handout: Lecture #2 1/22/15

Slides:



Advertisements
Similar presentations
Techniques for Combinational Logic Optimization
Advertisements

Minimization of Circuits
FUNCTION OPTIMIZATION Switching Function Representations can be Classified in Terms of Levels Number of Levels, k, is Number of Unique Boolean (binary)
Glitches & Hazards.
ECE C03 Lecture 31 Lecture 3 Two-Level Logic Minimization Algorithms Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
ECE 3110: Introduction to Digital Systems Simplifying Sum of Products using Karnaugh Maps.
ELEC Digital Logic Circuits Fall 2008 Logic Minimization (Chapter 3) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and.
ITEC 352 Lecture 4 Boolean logic / Karnaugh Maps.
1 Consensus Definition Let w, x, y, z be cubes, and a be a variable such that w = ax and y = a’z w = ax and y = a’z Then the cube xz is called the consensus.
EDA (CS286.5b) Day 15 Logic Synthesis: Two-Level.
CS 151 Digital Systems Design Lecture 6 More Boolean Algebra A B.
Chapter 3 Simplification of Switching Functions
SYEN 3330 Digital Systems Jung H. Kim Chapter SYEN 3330 Digital Systems Chapter 2 – Part 6.
Give qualifications of instructors: DAP
Simplifying Boolean Expressions Using K-Map Method
Two Level Logic Optimization. Two-Level Logic Minimization PLA Implementation Ex: F 0 = A + B’C’ F 1 = AC’ + AB F 2 = B’C’ + AB product term AB, AC’,
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Two-Level Minimization II.
2-Level Minimization Classic Problem in Switching Theory
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.
Combinatorial Algorithms Unate Covering Binate Covering Graph Coloring Maximum Clique.
Quine-McCluskey (Tabular) Minimization Two step process utilizing tabular listings to: Identify prime implicants (implicant tables) Identify minimal PI.
2-Level Minimization Classic Problem in Switching Theory Tabulation Method Transformed to “Set Covering Problem” “Set Covering Problem” is Intractable.
Two-Level Simplification Approaches Algebraic Simplification: - algorithm/systematic procedure is not always possible - No method for knowing when the.
ICS 252 Introduction to Computer Design Lecture 9 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
Two Level Networks. Two-Level Networks Slide 2 SOPs A function has, in general many SOPs Functions can be simplified using Boolean algebra Compare the.
Chapter 6 Quine-McCluskey Method Mei Yang ECG Logic Design 1.
ECE2030 Introduction to Computer Engineering Lecture 8: Quine-McCluskey Method Prof. Hsien-Hsin Sean Lee School of Electrical and Computer Engineering.
CMPUT Computer Organization and Architecture II1 CMPUT329 - Fall 2003 Topic 5: Quine-McCluskey Method José Nelson Amaral.
1 ECE2030 Introduction to Computer Engineering Lecture 8: Quine-McCluskey Method Prof. Hsien-Hsin Sean Lee School of ECE Georgia Institute of Technology.
1 Quine-McCluskey Method. 2 Motivation Karnaugh maps are very effective for the minimization of expressions with up to 5 or 6 inputs. However they are.
CHAPTER 3: PRINCIPLES OF COMBINATIONAL LOGIC
Lecture 4 Nand, Nor Gates, CS147 Circuit Minimization and
ENGIN112 L6: More Boolean Algebra September 15, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 6 More Boolean Algebra A B.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 15: March 4, 2002 Two-Level Logic-Synthesis.
ELEC Digital Logic Circuits Fall 2015 Logic Minimization (Chapter 3) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and.
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.
EECS 270 Lecture 10. K-map “rules” – Only circle adjacent cells (remember edges are adjacent!) – Only circle groups that are powers of 2 (1, 2,
Boolean Functions 1 ECE 667 ECE 667 Synthesis and Verification of Digital Circuits Boolean Functions Basics Maciej Ciesielski Univ.
ECE 301 – Digital Electronics Minimizing Boolean Expressions using K-maps, The Minimal Cover, and Incompletely Specified Boolean Functions (Lecture #6)
Lecture 5 More Boolean Algebra A B. Overview °Expressing Boolean functions °Relationships between algebraic equations, symbols, and truth tables °Simplification.
Lecture 5: K-Map minimization in larger input dimensions and K-map minimization using max terms CSE 140: Components and Design Techniques for Digital Systems.
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
©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.
CHAPTER 6 Quine-McCluskey Method
Lecture 6 Quine-McCluskey Method
Lecture 4 Nand, Nor Gates, CS147 Circuit Minimization and
ELEC Digital Logic Circuits Fall 2014 Logic Minimization (Chapter 3)
Prof. Sin-Min Lee Department of Computer Science
Lecture #6 EGR 277 – Digital Logic
CSE 140: Components and Design Techniques for Digital Systems
QUINE-McCLUSKEY METHOD
Plotting functions not in canonical form
CS 352 Introduction to Logic Design
Boolean Expressions Lecture No. 10.
ECE 2110: Introduction to Digital Systems
Chapter 6 Quine-McCluskey Method
Synthesis of Two Level Circuits
ECE 331 – Digital System Design
Digital Logic & Design Dr. Waseem Ikram Lecture 13.
CHAPTER 5 KARNAUGH MAPS 5.1 Minimum Forms of Switching Functions
CSE 140: Components and Design Techniques for Digital Systems
Optimization Algorithm
Function Minimization Algorithms
Representing Boolean Functions
Minimization of Switching Functions
CHAPTER 6 QUINE-McCLUSKEY METHOD
ECE 331 – Digital System Design
Presentation transcript:

CSEE 4823 Advanced Logic Design Handout: Lecture #2 1/22/15 Prof. Steven M. Nowick nowick@cs.columbia.edu Department of Computer Science (and Elect. Eng.) Columbia University New York, NY, USA

Combinational Logic: Basic Definitions + 2-Level Logic Minimization

Review: Basic Definitions Literal: a variable (x) or its complement (x’) Product: an “AND” of literals (e.g. xy’z, a’bcd’) Cube: a product (another equivalent name) Minterm: a product including a literal for every input of the function Example: If a function has 3 inputs, A/B/C, then A’BC’ is a minterm, but A’C is not. A minterm is also an input vector or combination (i.e. corresponds to a single row in the truth table) ON-set minterm: minterm where the function is 1 OFF-set minterm: minterm where the function is 0 DC-set minterm: minterm where the function is DC (-) Implicant: a cube/product which contains no OFF-set minterm (i.e. 0 value) Prime Implicant (PI, prime): a maximal implicant (i.e. it is contained in no larger implicant) Essential Prime Implicant (essential): a prime which contains at least one ON-set minterm (i.e. 1 value) which is not contained by any other prime Sum-of-products (SOP, disjunctive normal form): a sum of products (“AND-OR” 2-level circuit) Cover: a set of primes (SOP) containing all the ON-set minterms (1 points) of a function Complete Sum: a cover containing all possible prime implicants of the function

Review: 2-Level Logic Minimization Problem The 2-Level Logic Minimization Problem: given a Boolean function f (i) Find a minimum-cost set of prime implicants which “covers” (i.e. contains) all ON-set minterms -- (… and possibly some DC-set minterms) Or, equivalently: (ii) Find a minimum-cost cover F of function f 4

2-Level Logic Minimization: Example AB 00 01 11 10 CD 1 00 01 11 10 5

2-Level Logic Minimization: Example Solution #1: All Primes = 5 Products (AND gates) AB 00 01 11 10 CD 1 00 01 11 10 “Complete Sum” = cover containing all prime implicants 6

2-Level Logic Minimization: Example Solution #2: Subset of Primes = 4 Products (AND gates) AB 00 01 11 10 CD 1 00 01 11 Locally sub-optimal solution 10 “Redundant Cover” = can remove a product and still have legal cover 7

2-Level Logic Minimization: Example Solution #3: Subset of Primes = 4 Products (AND gates) AB 00 01 11 10 CD 1 00 01 11 Locally optimal solution 10 “Irredundant Cover” (but still globally sub-optimal!) = cannot remove any product and still have legal cover 8

2-Level Logic Minimization: Example Solution #4: Subset of Primes = 3 Products (AND gates) AB 00 01 11 10 CD 1 00 01 11 Globally optimal solution 10 OPTIMAL SOLUTION (also irredundant) 9

Exact 2-Level Logic Minimization: Quine-McCluskey (QM) Method 10

Quine-McCluskey Method: Examples Example #1: f(A,B,C,D) = m(0,4,5,11,15) + d(2,6,9) [m = ON-set minterms, d = DC-set minterms] AB 00 01 11 10 CD 1 - 00 01 11 10 11

Quine-McCluskey Method: Examples Example #1 (cont.) AB 00 01 11 10 CD 1 - 00 01 P4 P1 P2 11 P3 10 Generate all prime implicants

Quine-McCluskey Method: Examples Prime Implicant Table Example #1 (cont.) prime implicants P1 P2 P3 P4 AB X 00 01 11 10 * CD 1 - 00 * 4 * 01 P4 P1 P2 ON-set minterms * 5 * 11 11 P3 * 10 15 = essential prime Approach: remove & save essentials {p1, p2, p3}, and delete intersecting rows … empty table: nothing left to cover. * = distinguished minterm 13

Quine-McCluskey Method: Examples Example #2: f(A,B,C) = m(0,1,2,6) + d(5) [m = ON-set minterms, d = DC-set minterms] A 0 1 BC 1 - 00 01 11 10 More complex example: illustrates “table reduction step” using column dominance 14

Quine-McCluskey Method: Examples Example #2: f(A,B,C) = m(0,1,2,6) + d(5) [m = ON-set minterms, d = DC-set minterms] Prime Implicant Table A prime implicants 0 1 P1 P2 P3 P4 BC 1 - 00 X P1 01 1 P2 P3 11 ON-set minterms 2 P4 * 10 6 * = essential prime * = distinguished minterm Initial PI Table 15

Quine-McCluskey Method: Examples Example #2: f(A,B,C) = m(0,1,2,6) + d(5) [m = ON-set minterms, d = DC-set minterms] prime implicants prime implicants P1 P2 P3 P4 P1 P3 P4 X X ON-set minterms 1 1 ON-set minterms 2 * 6 Reduced PI Table (a) = essential prime Initial PI Table Approach: remove & save essential p2, and delete intersecting rows. 16

Quine-McCluskey Method: Examples Example #2: f(A,B,C) = m(0,1,2,6) + d(5) [m = ON-set minterms, d = DC-set minterms] prime implicants prime implicants P1 P3 P4 P1 X X ON-set minterms 1 1 Reduced PI Table (a) Reduced PI Table (b) “Column Dominance”: - column p1 ‘column-dominates’ column p3 - column p1 ‘column-dominates’ column p4 …delete dominated columns {p3,p4} 17

Quine-McCluskey Method: Examples Example #2: f(A,B,C) = m(0,1,2,6) + d(5) [m = ON-set minterms, d = DC-set minterms] prime implicants P1 “Secondary Essential Primes”: - column p1 has now become ‘essential’ X 1 Approach: remove & save secondary essential p1, and delete intersecting rows. … empty table: nothing left to cover. = secondary essential prime Reduced PI Table (b) Final solution: {p1,p2} 18

Quine-McCluskey Method: Examples Example #3: f(A,B,C) = m(0,2,3,4,5,7) [m = ON-set minterms, d = DC-set minterms] A 0 1 P1 BC 1 00 P2 01 P3 P4 P6 11 P5 10 More complex example: illustrates (i) no reduction possible, and (ii) resulting “cyclic core” FOR EXACT SOLUTION: can use Petrick’s Method (or more advanced techniques) SEE QUINE-MCCLUSKEY HANDOUT 19