ece 331 – digital system design minterms and maxterms, incompletely specified functions, and...

38
ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5) The slides included herein were taken from the materials accompanying Fundamentals of Logic Design, 6 th Edition, by Roth and Kinney, and were used with permission from Cengage Learning.

Upload: katrina-horn

Post on 19-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

ECE 331 – Digital System Design

Minterms and Maxterms,Incompletely Specified Functions,

andDesign and Analysis of Combinational Logic Ckts

(Lecture #5)

The slides included herein were taken from the materials accompanying Fundamentals of Logic Design, 6th Edition, by Roth and Kinney,

and were used with permission from Cengage Learning.

Page 2: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 2

Minterms and Maxterms

Page 3: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 3

Minterm In general, a minterm of n variables is a product

(ANDing) of n literals in which each variable appears exactly once in either true or complemented form, but not both.

A literal is a variable or its complement. For a given row in the truth table, the

corresponding minterm is formed by Including the true form a variable if its value is 1. Including the complemented form of a variable if

its value is 0.

Page 4: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 4

Minterms

Page 5: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 5

Minterm Expansion

When a function f is written as a sum (ORing) of minterms, it is referred to as a minterm expansion or a standard sum of products.

aka. “canonical sum of products” aka. “disjunctive normal form”

If f = 1 for row i of the truth table, then mi must be present in the minterm expansion.

The minterm expansion for a function f is unique. However, it is not necessarily the lowest cost.

Page 6: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 6

Minterm Expansion

Exercise:

Determine the minterm expansion for the function specified by the following truth table.

A B C F

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 0

Page 7: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 7

Minterm Expansion

Exercise:

Determine the minterm expansion for each of the following Boolean expressions.

F1 = ABC' + AB'C + A'BC + A'BC' + AB'C'

F2 = ABCD + ABC'D' + A'BC'D + AB'C'D

Page 8: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 8

Minterm Expansion

Exercise:

Determine the minterm expansion for each of the following Boolean expressions.

F3 = AB + BC + A'C'

F4 = A.(B + C) + (A' + B).(B + C')

Page 9: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 9

Minterm Expansion

The minterm expansion for a general function of three variables can be written as follows:

This is the truth table for a general function of three variables.

Each ai is a constant with a value of 0 or 1.

Denotes the logical sum operation

Page 10: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 10

Maxterm In general, a maxterm of n variables is a sum

(ORing) of n literals in which each variable appears exactly once in either true or complemented form, but not both.

A literal is a variable or its complement. For a given row in the truth table, the

corresponding maxterm is formed by Including the true form a variable if its value is 0. Including the complemented form of a variable if

its value is 1.

Page 11: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 11

Maxterms

Page 12: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 12

Maxterm Expansion

When a function f is written as a product (ANDing) of maxterms, it is referred to as a maxterm expansion or a standard product of sums.

aka. “canonical product of sums” aka. “conjunctive normal form”

If f = 0 for row i of the truth table, then Mi must be present in the maxterm expansion.

The maxterm expansion for a function f is unique. However, it is not necessarily the lowest cost.

Page 13: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 13

Maxterm Expansion

Exercise:

Determine the maxterm expansion for the function specified by the following truth table.

A B C F

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 0

Page 14: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 14

Maxterm Expansion

Exercise:

Determine the maxterm expansion for each of the following Boolean expressions.

F1 = (A+B+C')(A+B'+C)(A'+B+C)(A'+B+C')(A+B'+C')

F2 = (A+B+C+D)(A+B+C'+D')(A'+B+C'+D)(A+B'+C'+D)

Page 15: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 15

Maxterm Expansion

Exercise:

Determine the maxterm expansion for each of the following Boolean expressions.

F3 = (A + B')(A + C)(B + C')

F4 = A'.B' + A'.C' + B'.C

Page 16: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 16

Maxterm Expansion

The maxterm expansion for a general function of three variables can be written as follows:

This is the truth table for a general function of three variables.

Each ai is a constant with a value of 0 or 1.

Denotes the logical product operation

Page 17: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 17

Conversion between Forms

Page 18: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 18

Circuit Design A function f can be represented by either a minterm

expansion or a maxterm expansion. Both forms of the function can be realized using logic

gates that implement the basic logic operations. Minterm Expansion (Standard SOP)

Consists of the sum (OR) of product (AND) terms. Realized using an AND-OR circuit.

Maxterm Expansion (Standard POS) Consists of the product (AND) of sum (OR) terms. Realized using an OR-AND circuit.

Page 19: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 19

Circuit Design However, the two combinational logic circuits realized

for function f do not necessarily have the same cost. Objective: minimize the cost of the circuit to be built. Synthesis Process

Determine the minterm expansion. Determine the maxterm expansion. Use Boolean Algebra (and K-maps) to find an

optimal, functionally equivalent, expression for each. Compare the cost of the two expressions. Build the “cheaper” circuit.

Page 20: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 20

Incompletely Specified Functions

Page 21: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 21

Incompletely Specified Functions

A function f is completely specified when its output is defined (i.e. either 0 or 1) for all combinations of its inputs.

However, if the output of a function f is not defined for all combinations of its inputs, then it is said to be incompletely specified.

Those combinations of the inputs for which the output of function f is not defined are referred to as “don't care” outputs.

Page 22: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 22

Incompletely Specified Functions

Consider the following example in which the output of circuit N1 drives the input of circuit N2:

Assume the output of N1 does not generate all possible combinations of values for A, B, and C.

In particular, assume there are no combinations of values for w, x, y, and z which cause A, B, and C to assume values of 001 or 110.

Page 23: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 23

Incompletely Specified Functions The truth table representing an incompletely

specified function includes an “x” (or a “d”) in each row corresponding to an input combination for which the output is not defined.

For the example under consideration:

“don't care” for ABC = 001

“don't care” for ABC = 110

Page 24: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 24

Incompletely Specified FunctionsWhen we realize the function, we must specify values for the don’t-cares. It is desirable to choose values which will help simplify the function. If we assign the value 0 to both X’s, then

If we assign 1 to the first X and 0 to the second, then

If we assign 1 to both X’s, then

The second choice of values leads to the simplest solution.

Page 25: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 25

Incompletely Specified Functions

The minterm expansion for this example is:

The maxterm expansion for this example is:

“don't care” minterms

“don't care” maxterms

Page 26: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 26

Design and Analysisof

Combinational Logic Circuits

Page 27: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 27

Design

Combinational Logic Circuits Outputs are functions of (present) inputs No memory Can be described using Boolean expressions Can be described using Truth tables

Page 28: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 28

Design

Hierarchical design Used to solve large design problems Break problem into smaller (sub-)problems Solve each sub-problem (i.e. realize design) Combine individual solutions

Page 29: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 29

Design

Specification Describes the problem to be solved. Describes what needs to be done,

not how to do it.

Implementation Describes how the problem is solved.

Page 30: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 30

Design

Issues Most solutions are not unique.

More than one solution may meet the specifications.

Cannot always satisfy all of the requirements. Must identify (and study) design tradeoffs.

Cost Speed Power consumption etc.

Page 31: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 31

Design Process

• Identify requirements circuit specifications

• Determine the inputs and outputs.

• Derive the Truth Table

• Determine simplified Boolean expression(s)

• Implement solution

• Verify solution

Page 32: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 32

We will design a simple binary adder that adds two 1-bit binary numbers, a and b, to give a 2-bit sum. The numeric values for the adder inputs and outputs are as follows:

Design: Exercise

Page 33: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

ECE 331 - Digital System Design 33

Design a combinational logic circuit to meet the following specifications:

1. 3-bit input (A = a2a

1a

0)

2. 1-bit output (z)3. Output is high (logic 1) when 2 < A <= 5.

Design: Exercise

Page 34: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 34

Analysis

Determining the behavior of a system given its description.

The description of the system is often provided in the form of a circuit diagram.

Page 35: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 35

Analysis

For two-level circuits, the analysis process is simple.

The Boolean expression representing the circuit can often be written by inspection.

For multilevel circuits, the analysis process is much more complicated.

Cannot write a Boolean expression by inspection.

Must follow a procedure to implement the analysis.

Page 36: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 36

Analysis Process

• Identify inputs and outputs

• Track circuit behavior from input to output

• Determine Boolean expression for output(s)

• Determine Truth Table

• Examine circuit timing, power dissipation, etc.

Page 37: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

ECE 331 - Digital System Design 37

Analyze the following combinational logic circuit:

1. Derive the Boolean expression2. Determine the Truth table

Analysis: Exercise

Page 38: ECE 331 – Digital System Design Minterms and Maxterms, Incompletely Specified Functions, and Design and Analysis of Combinational Logic Ckts (Lecture #5)

Fall 2010 ECE 331 - Digital System Design 38

Questions?