Lecture 5 Logistics Last lecture Today’s lecture

Slides:



Advertisements
Similar presentations
Logical Systems Synthesis.
Advertisements

ECE 301 – Digital Electronics Minterm and Maxterm Expansions and Incompletely Specified Functions (Lecture #6) The slides included herein were taken from.
ECE 331 – Digital System Design
Logic Gate Level Part 2. Constructing Boolean expression from truth table First method: write nonparenthesized OR of ANDs Each AND is a 1 in the result.
CS 151 Digital Systems Design Lecture 11 NAND and XOR Implementations.
ENGIN112 L11: NAND and XOR Implementation September 26, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 11 NAND and XOR Implementations.
Lecture 4 Logic gates and truth tables Implementing logic functions
BOOLEAN ALGEBRA Saras M. Srivastava PGT (Computer Science)
Lecture 4 4. Boolean functions – advanced
ECE 331 – Digital System Design
 Seattle Pacific University EE Logic System DesignSOP-POS-1 The Connection: Truth Tables to Functions abcF abcF
1 CSE370, Lecture 5 Lecture 5 u Logistics n HW1 due today n HW2 available today, due Wed 1/21 n Office Hours this week: íMe: Friday 10:00-11:00 CSE 668.
1 ENGR 254 Lecture DeMorgan Symbol Equivalence.
Chapter 2 Two- Level Combinational Logic. Chapter Overview Logic Functions and Switches Not, AND, OR, NAND, NOR, XOR, XNOR Gate Logic Laws and Theorems.
Test Slide SAT MCAT GRE. CSE 370 Spring 2006 Introduction to Digital Design Lecture 5: Canonical Forms Last Lecture Logic Gates Different Implementations.
Lecture 09 NAND and XOR Implementations. Overview °Developing NAND circuits °Two-level implementations Convert from AND/OR to NAND (again!) °Multi-level.
05 BA2 Page 1 ECEn/CS 224 Boolean Algebra – Part 2.
ENGIN112 L6: More Boolean Algebra September 15, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 6 More Boolean Algebra A B.
NAND-NAND and NOR-NOR Circuits and Even and Odd Logic Functions ECE 301 – Digital Electronics.
1 EENG 2710 Chapter 2 Algebraic Methods For The Analysis and Synthesis of Logic circuits.
1 Lect # 2 Boolean Algebra and Logic Gates Boolean algebra defines rules for manipulating symbolic binary logic expressions. –a symbolic binary logic expression.
BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC
CEC 220 Digital Circuit Design NAND/NOR Multi-Level Circuits
CEC 220 Digital Circuit Design SOP and POS forms Friday, January 23 CEC 220 Digital Circuit Design Slide 1 of 17.
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC. De Morgan’s Theorem De Morgan’s Theorem.
DE MORGAN’S THEOREM. De Morgan’s Theorem De Morgan’s Theorem.
CEC 220 Digital Circuit Design SOP and POS forms Friday, Sept 11 CEC 220 Digital Circuit Design Slide 1 of 17.
Chapter 5 Boolean Algebra and Reduction Techniques 1.
Combinational Circuits Part 1
Lecture 4 Logistics Last lecture --- Boolean algebra Today’s lecture
De Morgan’s Theorem,.
Prof. Hsien-Hsin Sean Lee
Chapter 2: Boolean Algebra and Logic Functions
Digital Fundamentals Floyd Chapter 5 Tenth Edition
CS 105 Digital Logic Design
Logic Gates.
Logic Gates Benchmark Companies Inc PO Box Aurora CO
Boolean Algebra and Combinational Logic
Lecture 9 Logistics Last lecture Today HW3 due Wednesday
Princess Sumaya University
Boolean Expressions Lecture No. 10.
ECE 331 – Digital System Design
Digital Fundamentals Floyd Chapter 5 Tenth Edition
CSE 311 Foundations of Computing I
Chapter 2 Boolean Algebra and Logic Gate
BASIC & COMBINATIONAL LOGIC CIRCUIT
Circuits, Truth Tables & Boolean Algebra
CSE 370 – Winter Combinational Logic - 1
Lecture 6 Logistics Last lecture Today’s lecture HW2 due on Wednesday
Lecture 13 Logistics Last lecture Today HW4 up, due on Wednesday PLDs
Combinatorial Logic Circuit
CSE 370 – Winter Combinational Implementation - 1
EECS150 - Digital Design Lecture 7 - Boolean Algebra II
January 19 W’05 Yutao He 4532B Boelter Hall CSM51A/EEM16-Sec.1 W’05
Logic Gates.
CSC 220: Computer Organization Logic Gates and Functions
Chapter 2 Introduction to Logic Circuits
Digital Fundamentals Floyd Chapter 5 Tenth Edition
Circuits, Truth Tables & Boolean Algebra
Lecture 4 Logistics Last lecture --- Boolean algebra Today’s lecture
Digital Fundamentals Floyd Chapter 5 Tenth Edition
Digital Fundamentals Floyd Chapter 5 Tenth Edition
Digital Fundamentals Floyd Chapter 5 Tenth Edition
Chapter 5 Combinational Logic Analysis
Analysis of Logic Circuits Example 1
Lecture 5 Converting to use NAND and NOR
Digital Fundamentals Floyd Chapter 5 Tenth Edition
Combinational Logic Circuit
Lecture 6 Logistics Last lecture Today’s lecture HW2 due on Wednesday
Presentation transcript:

Lecture 5 Logistics Last lecture Today’s lecture HW2 posted on Wed, due 10/8 Lab1 done Final exam schedule confirmed: 12/8 8:30am here Gowen 201 Last lecture Logic gates and truth tables Implementing logic functions Today’s lecture Example using de Morgan’s theorem Canonical forms Converting to use NAND and NOR Class rule: Interrupt when you don’t understand why we are doing something

The “WHY” slide More de Morgan’s theorem? Canonical forms De Morgan’s theorem is extremely useful and is used all the time for design implementation. But it is initially not an easy thing to do, so practicing it over and over is critical. Canonical forms There are many forms to expression one Boolean function. It is good to have one standard way. Canonical form is the standard form for Boolean expressions. It has a nice property that allows you to go back and forth between truth table/expressions/gates easily. Converting to use NAND and NOR NAND and NOR are more efficient gates than AND or OR (and therefore more common). Your computer is built almost exclusively on NAND and NOR gates. It is good to knowhow to convert any logic circuits to a NAND/NOR circuit. Class rule: Interrupt when you don’t understand why we are doing something

de Morgan’s theorem Replace Example 1: Z = A'B' + A'C' • with +, + with •, 0 with 1, and 1 with 0 All variables with their complements Example 1: Z = A'B' + A'C' Z' = (A'B' + A'C')' = (A+B) • (A+C) Example 2: Z = A'B'C + A'BC + AB'C + ABC' Z' = (A'B'C + A'BC + AB'C + ABC')' = (A+B+C') • (A+B'+C') • (A'+B+C') • (A'+B'+C)

Canonical forms Canonical forms Two canonical forms Standard forms for Boolean expressions Generally not the simplest forms Can be minimized Derived from truth table Two canonical forms Sum-of-products (minterms) Product-of-sum (maxterms)

Sum-of-products canonical form (SOP) Also called disjunctive normal form (DNF) Commonly called a minterm expansion minterm 001 011 101 110 111 F = A'B'C + A'BC + AB'C + ABC' + ABC A B C F F' 0 0 0 0 1 0 0 1 1 0 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 0 F' = A'B'C' + A'BC' + AB'C'

Minterms Variables appears exactly once in each minterm In true or inverted form (but not both) F in canonical form: F(A,B,C) = m(1,3,5,6,7) = m1 + m3 + m5 + m6 + m7 = A'B'C+A'BC+AB'C+ABC'+ABC canonical form  minimal form F(A,B,C) = A'B'C+A'BC+AB'C+ABC+ABC' = AB + C A B C minterms 0 0 0 A'B'C' m0 0 0 1 A'B'C m1 0 1 0 A'BC' m2 0 1 1 A'BC m3 1 0 0 AB'C' m4 1 0 1 AB'C m5 1 1 0 ABC' m6 1 1 1 ABC m7 short-hand notation

Product-of-sums canonical form (POS) Also called conjunctive normal form (CNF) Commonly called a maxterm expansion maxterm 000 010 100 F = (A + B + C) (A + B' + C) (A' + B + C) A B C F F' 0 0 0 0 1 0 0 1 1 0 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 0 F' = (A+B+C')(A+B'+C')(A'+B+C')(A'+B'+C)(A'+B'+C')

Maxterms Variables appears exactly once in each maxterm In true or inverted form (but not both) A B C maxterms 0 0 0 A+B+C M0 0 0 1 A+B+C' M1 0 1 0 A+B'+C M2 0 1 1 A+B'+C' M3 1 0 0 A'+B+C M4 1 0 1 A'+B+C' M5 1 1 0 A'+B'+C M6 1 1 1 A'+B'+C' M7 F in canonical form: F(A,B,C) = M(0,2,4) = M0 • M2 • M4 = (A+B+C)(A+B'+C)(A'+B+C) canonical form  minimal form F(A,B,C) = (A+B+C)(A+B'+C)(A'+B+C) = AB + C short-hand notation

Canonical implementations of F = AB + C

Conversion between canonical forms Minterm to maxterm Use maxterms that aren’t in minterm expansion F(A,B,C) = m(1,3,5,6,7) = M(0,2,4) Maxterm to minterm Use minterms that aren’t in maxterm expansion F(A,B,C) = M(0,2,4) = m(1,3,5,6,7) Minterm of F to minterm of F' Use minterms that don’t appear F(A,B,C) = m(1,3,5,6,7) F'(A,B,C) = m(0,2,4) Maxterm of F to maxterm of F' Use maxterms that don’t appear F(A,B,C) = M(0,2,4) F'(A,B,C) = M(1,3,5,6,7)

SOP, POS, and de Morgan's theorem Sum-of-products F' = A'B'C' + A'BC' + AB'C' Apply de Morgan's to get POS (F')' = (A'B'C' + A'BC' + AB'C')' F = (A+B+C)(A+B'+C)(A'+B+C) Product-of-sums F' = (A+B+C')(A+B'+C')(A'+B+C')(A'+B'+C)(A'+B'+C') Apply de Morgan's to get SOP (F')' = ((A+B+C')(A+B'+C')(A'+B+C')(A'+B'+C)(A'+B'+C'))' F = A'B'C + A'BC + AB'C + ABC' + ABC

NAND/NOR more common/efficient CMOS logic gates are more common and efficient in the inverted forms NAND, NOR, NOT Even though Canonical forms discussed so far used AND/OR, NAND/NOR preferred for real hardware implementation X Y Z X Y Z 0 0 1 0 1 1 1 0 1 1 1 0 X Y Z

NAND and NOR (truth table) X Y X' Y' (X + Y)' X' • Y' 0 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 (X + Y)' = X' • Y' NOR is equivalent to AND with inputs complemented X Y X' Y' (X • Y)' X' + Y' 0 0 1 1 1 1 0 1 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0 (X • Y)' = X' + Y' NAND is equivalent to OR with inputs complemented

NAND and NOR (logic gates) de Morgan's Standard form: A'B' = (A + B)' A' + B' = (AB)' Inverted: A + B = (A'B')' (AB) = (A' + B')' AND with complemented inputs  NOR OR with complemented inputs  NAND OR  NAND with complemented inputs AND  NOR with complemented inputs pushing the bubble NOR NOR NAND NAND AND AND OR OR

Converting to use NAND/NOR Introduce inversions ("bubbles") Introduce bubbles in pairs Conserve inversions Do not alter logic function Example AND/OR to NAND/NAND Z = AB + CD = (A'+B')'+(C'+D')' = [(A'+B')(C'+D')]' = [(AB)'(CD)']' A B C D Z A NAND B Z NAND C NAND D

Converting to use NAND/NOR (con’t) Example: AND/OR network to NOR/NOR Z = AB+CD = (A'+B')'+(C'+D')’ = [(A'+B')'+(C'+D')’]’’ = {[(A'+B')'+(C'+D')']'}' A B C D Z A’ NOR B’ Z NOR C’ NOR D’

Converting to use NAND/NOR (con’t) Example: OR/AND to NAND/NAND A B C D Z Z A’ B’ C’ D’ NAND

Converting to use NAND/NOR(con’t) Example: OR/AND to NOR/NOR A B C D Z Z A B C D NOR