Digital Logic Design ENEE x. Lecture 12

Similar documents
Lecture 6: Gate Level Minimization Syed M. Mahmud, Ph.D ECE Department Wayne State University

Lecture 6: Manipulation of Algebraic Functions, Boolean Algebra, Karnaugh Maps

CprE 281: Digital Logic

Unit 2 Boolean Algebra

Lecture 5: NAND, NOR and XOR Gates, Simplification of Algebraic Expressions

Boolean Algebra & Logic Gates. By : Ali Mustafa

DIGITAL CIRCUIT LOGIC BOOLEAN ALGEBRA (CONT.)

Unit 6. Quine-McClusky Method. Unit 6 1

Optimizations and Tradeoffs. Combinational Logic Optimization

Digital Circuit And Logic Design I. Lecture 3

Lecture 7: Karnaugh Map, Don t Cares

Signals and Systems Digital Logic System

Digital Circuit And Logic Design I. Lecture 4

Chapter 4 Optimized Implementation of Logic Functions

CS/EE 181a 2010/11 Lecture 4

Gate-Level Minimization

Binary Logic and Gates. Our objective is to learn how to design digital circuits.

E&CE 223 Digital Circuits & Systems. Lecture Transparencies (Boolean Algebra & Logic Gates) M. Sachdev

Digital Logic Design ENEE x. Lecture 14

Combinatorial Logic Design Principles

DIGITAL CIRCUIT LOGIC BOOLEAN ALGEBRA

E&CE 223 Digital Circuits & Systems. Lecture Transparencies (Boolean Algebra & Logic Gates) M. Sachdev. Section 2: Boolean Algebra & Logic Gates

ECE 20B, Winter 2003 Introduction to Electrical Engineering, II LECTURE NOTES #2

CS 121 Digital Logic Design. Chapter 2. Teacher Assistant. Hanin Abdulrahman

ECE 238L Boolean Algebra - Part I

Unit 2 Boolean Algebra

UNIT 5 KARNAUGH MAPS Spring 2011

Binary Logic and Gates

Logic Design I (17.341) Fall Lecture Outline

Chapter 2 Combinational Logic Circuits

Digital Logic Design. Malik Najmus Siraj

Boolean Algebra, Gates and Circuits

Chapter 2. Boolean Algebra and Logic Gates

Synthesis of 2-level Logic Exact and Heuristic Methods. Two Approaches

MC9211 Computer Organization

CHAPTER 3 BOOLEAN ALGEBRA

Functions. Computers take inputs and produce outputs, just like functions in math! Mathematical functions can be expressed in two ways:

Chapter 2 Boolean Algebra and Logic Gates

Chapter 2: Switching Algebra and Logic Circuits

Standard Expression Forms

Computer Organization I

CS61c: Representations of Combinational Logic Circuits

Logic Design. Chapter 2: Introduction to Logic Circuits

211: Computer Architecture Summer 2016

14:332:231 DIGITAL LOGIC DESIGN. Combinational Circuit Synthesis

The Karnaugh Map COE 202. Digital Logic Design. Dr. Muhamed Mudawar King Fahd University of Petroleum and Minerals

Week-I. Combinational Logic & Circuits

Chapter 2 Combinational Logic Circuits

Lecture 4: More Boolean Algebra

Digital Logic Design. Combinational Logic

Chapter 2 : Boolean Algebra and Logic Gates

CHAPTER1: Digital Logic Circuits Combination Circuits

12/31/2010. Overview. 05-Boolean Algebra Part 3 Text: Unit 3, 7. DeMorgan s Law. Example. Example. DeMorgan s Law

CHAPTER III BOOLEAN ALGEBRA

Chapter 2 Boolean Algebra and Logic Gates

Chap 2. Combinational Logic Circuits

Total Time = 90 Minutes, Total Marks = 50. Total /50 /10 /18

Combinational Logic Fundamentals

Boolean Algebra and Logic Gates

CS/EE 181a 2008/09 Lecture 4

DIGITAL CIRCUIT LOGIC BOOLEAN ALGEBRA

ENG2410 Digital Design Combinational Logic Circuits

II. COMBINATIONAL LOGIC DESIGN. - algebra defined on a set of 2 elements, {0, 1}, with binary operators multiply (AND), add (OR), and invert (NOT):

Circuits & Boolean algebra.

Chapter 2 Combinational Logic Circuits

Z = F(X) Combinational circuit. A combinational circuit can be specified either by a truth table. Truth Table

Unit 2 Session - 6 Combinational Logic Circuits

CHAPTER III BOOLEAN ALGEBRA

Chapter 2 Boolean Algebra and Logic Gates

This form sometimes used in logic circuit, example:

Systems I: Computer Organization and Architecture

Logical Design of Digital Systems

CHAPTER 2 BOOLEAN ALGEBRA

Logic and Boolean algebra

Section 4.1 Switching Algebra Symmetric Functions

EEE130 Digital Electronics I Lecture #4

AMTH140 Trimester Question 1. [8 marks] Answer

S C F F F T T F T T S C B F F F F F T F T F F T T T F F T F T T T F T T T

Adders - Subtractors

Standard & Canonical Forms

Introduction to Digital Logic Missouri S&T University CPE 2210 Karnaugh Maps

EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits)

Number System conversions

Simplifying Logic Circuits with Karnaugh Maps

Boolean Algebra CHAPTER 15

Combinational Logic Design Principles

Chapter 4: Combinational Logic Solutions to Problems: [1, 5, 9, 12, 19, 23, 30, 33]

Outline. EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) Combinational Logic (CL) Defined

XOR - XNOR Gates. The graphic symbol and truth table of XOR gate is shown in the figure.

EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits

Review for Test 1 : Ch1 5

DIGITAL ELECTRONICS & it0203 Semester 3

Chapter 2 Combinational Logic Circuits

Adequate set of connectives, logic gates and circuits

UC Berkeley College of Engineering, EECS Department CS61C: Representations of Combinational Logic Circuits

Formal Verification Methods 1: Propositional Logic

Lecture 2 Review on Digital Logic (Part 1)

Goals for Lecture. Binary Logic and Gates (MK 2.1) Binary Variables. Notation Examples. Logical Operations

Lab 1 starts this week: go to your session

Boolean Algebra. Boolean Variables, Functions. NOT operation. AND operation. AND operation (cont). OR operation

Transcription:

Digital Logic Design ENEE 244-010x Lecture 12

Announcements HW5 due today HW6 up on course webpage, due at the beginning of class on Wednesday, 10/28.

Agenda Last time: Quine-McClusky (4.8) Petrick s Method (4.9) Table Reductions (4.10) This time: Multiple Output Simplification Problem (4.12, 4.13)

The Multiple-Output Simplification Problem General combinational networks can have several output terminals. The output behavior of the network is described by a set of functions f 1, f 2,, f m, one for each output terminal, each involving the same input variables, x 1, x 2,, x n. The set of functions is represented by a truth table with m + n columns. Objective is to design a multiple-output network of minimal cost. Formally: A set of normal expressions that has associated with it a minimal cost as given by some cost criteria. Cost criteria: number of gates or number of gate inputs in the realization.

Pitfalls of Naïve Approach Multiple-output minimization problem is normally more difficult than sharing common terms in independently obtained minimal expressions. Consider: f 1 x, y, z = m 1,3,5 f 2 x, y, z = m(3,6,7) f 1 x, y, z = yz + xz f 2 x, y, z = yz + xy

Pitfalls of Naïve Approach Naïve Approach: y z x z f 1 y z x y f 2 Better Approach: y z x y z x y f 1 f 2

Multiple Output Prime Implicants A multiple-output prime implicant for a set of Boolean functions f 1, f 2,, f m, is a product term that: Is a prime implicant of one of the individual functions Is a prime implicant of one of the product functions Π i S f i, S {1,.., m}

Examples of Multiple Output Prime Implicants x y z f 1 f 2 0 0 0 1 0 0 0 1 0 1 0 1 0 1 1 0 1 1 0 0 1 0 0 0 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 yz is a prime implicant of f 1

Examples of Multiple Output Prime Implicants x y z f 1 f 2 f 1 f 2 0 0 0 1 0 0 0 0 1 0 1 0 0 1 0 1 1 1 0 1 1 0 0 0 1 0 0 0 1 0 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 0 xyz is a prime implicant of f 1 f 2

Multiple Output Prime Implicants Theorem: Formulas that achieve the multipleoutput minimal sum consist only of sums of multiple-output prime implicants.

Tagged Product Terms Term consists of two parts: a kernel and a tag. Kernel: product term involving the variables of the function Tag: Appended to denote which functions are implied by its kernel.

Tagged Product Term Example x y z f 1 f 2 0 0 0 1 0 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 0 1 0 1 1 -- 1 1 0 0 0 1 1 1 1 1 Algebraic Form Binary Form x y zf 1 000f 1 x yzf 1 f 2 001f 1 f 2 xyzf 1 f 2 010f 1 f 2 xyz f 2 011 f 2 xyzf 1 f 2 101f 1 f 2 xyzf 1 f 2 111f 1 f 2

Quine-McClusky for tagged multipleoutput prime implicants 0 0 0 0 f 1 1 0 0 1 f 1 f 2 2 0 1 0 f 1 f 2 3 0 1 1 f 2 5 1 0 1 f 1 f 2 7 1 1 1 f 1 f 2 (0,1) 0 0 f 1 (0,2) 0 0 f 1 (1,3) 0 1 f 2 (1,5) 0 1 f 1 f 2 (2,3) 0 1 f 2 (3,7) 1 1 f 2 (5,7) 1 1 f 1 f 2 (1,3,5,7) 1 f 2 (1,5,3,7) 1 f 2 Why doesn t (0,1,2,3) appear? The tag of a generated term has f i iff f i appears in both the tags of the generating terms. A generating term is checked only if its tag is identical to the tag of the generated term.

Minimal Sums Using Petrick s Method

Multiple Outputs Prime Implicant Tables m 0 m 1 m 2 m 5 m 7 m 1 m 2 m 3 m 7 f 1 B x y X X f 1 C x z X X f 2 A z X X X f 2 E xz X X f 1 f 2 D yz X X X f 1 f 2 F xz X X X f 1 f 2 G xyz X X

Multiple Outputs Prime Implicant Tables m 0 m 1 m 2 m 5 m 7 m 1 m 2 m 3 m 7 f 1 B x y X X f 1 C x z X X f 2 A z X X X f 2 E xz X X f 1 f 2 D yz X X X f 1 f 2 F xz X X X f 1 f 2 G xyz X X When writing down p-expression, must make a distinction between primes associated with different functions.

Multiple Outputs Prime Implicant Tables m 0 m 1 m 2 m 5 m 7 m 1 m 2 m 3 m 7 f 1 B x y X X f 1 C x z X X f 2 A z X X X f 2 E xz X X f 1 f 2 D yz X X X f 1 f 2 F xz X X X f 1 f 2 G xyz X X P-expression: B 1 + C 1 B 1 + D 1 C 1 + G 1 D 1 + F 1 F 1 (A 2 + D 2 )(E 2 + G 2 )(A 2 + E 2 )(A 2 + F 2 )

Manipulating P-expression into sum of product form p = B 1 + C 1 B 1 + D 1 C 1 + G 1 D 1 + F 1 F 1 (A 2 + D 2 ) E 2 + G 2 A 2 + E 2 A 2 + F 2 = A 2 B 1 C 1 E 2 F 1 + A 2 B 1 C 1 F 1 G 2 + B 1 C 1 D 2 E 2 F 1 F 2 + A 2 B 1 E 2 F 1 G 1 + A 2 B 1 F 1 G 1 G 2 + B 1 D 2 E 2 F 1 F 2 G 1 + A 2 C 1 D 1 E 2 F 1 + A 2 C 1 D 1 F 1 G 2 + C 1 D 1 D 2 E 2 F 1 F 2 When calculating cost of a product term, we can disregard subscripts. i.e. F 1 F 2 is the same cost as F.

Calculating Cost of Product Terms The term A 2 B 1 F 1 G 1 G 2 yields f 1 x, y, z = x y + xz + xy z f 2 x, y, z = z + xyz The term C 1 D 1 D 2 E 2 F 1 F 2 yields f 1 x, y, z = x z + yz + xz f 2 x, y, z = yz + xy + xz

Calculating Cost of multiple output combinational network f 1,, f m m p α i + β j i=1 j=1 Where t 1,, t p is the set of distinct terms, β j is equal to the number of literals in t j, unless the term consists of a single literal, in which case β j = 0. Let α i be the number of terms in f i unless there is only a single term, in which case α i = 0.

Calculating Cost of Product Terms The term A 2 B 1 F 1 G 1 G 2 yields f 1 x, y, z = x y + xz + xy z f 2 x, y, z = z + xyz Distinct terms: x y, xz, xy z, z Beta costs: 2 + 2 + 3 + 0 = 7 Alpha costs = 3 + 2 = 5 Total cost: 12 The term C 1 D 1 D 2 E 2 F 1 F 2 yields f 1 x, y, z = x z + yz + xz f 2 x, y, z = yz + xy + xz Distinct terms: x z, yz, xz, xy Beta costs: 2+2+2+2 = 8 Alpha costs = 3 +3 = 6 Total cost: 14

Minimal Sums using Table Reduction

Table Reduction m 0 m 1 m 2 m 5 m 7 m 1 m 2 m 3 m 7 Cost B x y X X 3 C x z X X 3 A z X X X 1 E xy X X 3 D yz X X X 3,4 F xz X X X 3,4 G xyz X X 4,5 Cost in case D is used in f 1 or f 2 but not both, Cost in case D is used in both f 1, f 2

Table Reduction m 0 m 1 m 2 m 5 m 7 m 1 m 2 m 3 m 7 Cost B x y X X 3 C x z X X 3 A z X X X 1 E xy X X 3 D yz X X X 3,4 F xz X X X 3,4 G xyz X X 4,5 Essential prime implicant for f 1.

Table Reduction m 0 m 1 m 2 m 1 m 2 m 3 m 7 Cost B x y X X 3 C x z X X 3 A z X X X 1 E xy X X 3 D yz X X 3,4 *1 F xz X 1 G xyz X X 4,5 m 7 column cannot be removed from f 2 part since xz is not essential for f 2. f 1 = xz + f 2 =

Table Reduction m 0 m 1 m 2 m 1 m 2 m 3 m 7 Cost B x y X X 3 C x z X X 3 A z X X X 1 E xy X X 3 D yz X X 3,4 *1 F xz X 1 G xyz X X 4,5 Dominated Rows f 1 = xz + f 2 =

Table Reduction m 0 m 1 m 2 m 1 m 2 m 3 m 7 Cost B x y X X 3 C x z X X 3 A z X X X 1 E xy X X 3 D yz X X 3,4 *1 F xz X 1 G xyz X X 4,5 Dominated Rows Row A dominates Row F Cost for Row A is not greater than cost for Row F. f 1 = xz + f 2 =

Table Reduction m 0 m 1 m 2 m 1 m 2 m 3 m 7 Cost B x y X X 3 C x z X X 3 A z X X X 1 E xy X X 3 D yz X X 3,4 G xyz X X 4,5 f 1 = xz + f 2 =

Table Reduction m 0 m 1 m 2 m 1 m 2 m 3 m 7 Cost B x y X X 3 C x z X X 3 A z X X X 1 E xy X X 3 D yz X X 3,4 G xyz X X 4,5 Only row that covers m 7 f 1 = xz + f 2 =

Table Reduction m 0 m 1 m 2 m 2 Cost B x y X X 3 C x z X X 3 *2 A z 1 E xy X 3 D yz X 3,4 G xyz X X 4,5 Delete m 1, m 3, m 7 f 1 = xz + f 2 = z +

Table Reduction m 0 m 1 m 2 m 2 Cost B x y X X 3 C x z X X 3 E xy X 3 D yz X 3 G xyz X X 4,5 Delete row A f 1 = xz + f 2 = z +

Table Reduction m 0 m 1 m 2 m 2 Cost B x y X X 3 C x z X X 3 E xy X 3 D yz X 3 G xyz X X 4,5 Row D is dominated by Row B. f 1 = xz + f 2 = z +

Table Reduction m 0 m 1 m 2 m 2 Cost B x y X X 3 C x z X X 3 E xy X 3 D yz X 3 G xyz X X 4,5 Row D is dominated by Row B. f 1 = xz + f 2 = z +

Table Reduction m 0 m 1 m 2 m 2 Cost B x y X X 3 C x z X X 3 E xy X 3 G xyz X X 4,5 Row D is dominated by Row B. f 1 = xz + f 2 = z +

Table Reduction m 0 m 1 m 2 m 2 Cost B x y X X 3 C x z X X 3 E xy X 3 G xyz X X 4,5 Row B is the only row covering m 1 f 1 = xz + f 2 = z +

Table Reduction m 0 m 1 m 2 m 2 Cost *1 B x y X X 3 C x z X X 3 E xy X 3 G xyz X X 4,5 Row B is the only row covering m 1 f 1 = xz + x y + f 2 = z +

Table Reduction m 2 m 2 Cost *1 B x y 3 C x z X 3 E xy X 3 G xyz X X 4,5 Delete columns m 0, m 1 f 1 = xz + x y + f 2 = z +

Table Reduction m 2 m 2 Cost C x z X 3 E xy X 3 G xyz X X 4,5 Delete columns m 0, m 1 f 1 = xz + x y + f 2 = z +

Table Reduction m 2 m 2 Cost C x z X 3 E xy X 3 G xyz X X 4,5 Cannot delete dominated rows since their cost is lower. **Table is cyclic** f 1 = xz + x y + f 2 = z +

Table Reduction m 2 m 2 Cost C x z X 3 E xy X 3 G xyz X X 4,5 Cannot delete dominated rows since their cost is lower. **Table is cyclic** f 1 = xz + x y + xyz f 2 = z + xyz