07.08.2013 Views

Design a Single-Output Combinational Switching Circuit Minterm ...

Design a Single-Output Combinational Switching Circuit Minterm ...

Design a Single-Output Combinational Switching Circuit Minterm ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 4<br />

Applications of Boolean Algebra<br />

<strong>Minterm</strong> and Maxterm<br />

Expansions<br />

Xiaojun Qi<br />

Conversion of English Sentences<br />

to Boolean Equations<br />

• For simple problems, it may be possible to<br />

go directly from a word description of the<br />

desired behavior of the circuit to an<br />

algebraic expression for the output function.<br />

– Break down each sentence into phrases and<br />

associate a Boolean variable with each phrase.<br />

– Define a two-valued variable to indicate the<br />

truth or falsity of each phrase.<br />

– Construct the Boolean expression by using the<br />

defined Boolean variable, which is associated<br />

with a phrase.<br />

• Example 2: You will get a good mark if and only if you<br />

understand the material in the class, do exercises and<br />

read the problems of the exams carefully.<br />

• Step 1: Break down the sentence into phrases and<br />

associate a Boolean variable with each phrase.<br />

– G: you will get good mark<br />

– M: you understand the material in the class<br />

– E: you do exercises<br />

– R: you read questions carefully<br />

• Step 2: Define a two-valued variable to indicate the truth<br />

or falsity of each phrase.<br />

– G=1 if you will get good mark is true; otherwise G=0<br />

– M=1 if you understand the material in the class is true;<br />

otherwise M=0<br />

– E=1 if you do exercises is true; otherwise E=0<br />

– R=1 if you read questions carefully is true; otherwise R=0.<br />

• Step 3: Construct the Boolean expression.<br />

G = MER<br />

<strong>Design</strong> a <strong>Single</strong>-<strong>Output</strong><br />

<strong>Combinational</strong> <strong>Switching</strong> <strong>Circuit</strong><br />

• Three main steps in designing a singleoutput<br />

combinational switching circuit are:<br />

– Find a switching function which specifies the<br />

desired behavior of the circuit.<br />

– Find a simplified algebraic expression for the<br />

function.<br />

– Realize the simplified function using available<br />

logic elements.<br />

• Example 1: There will be a party if and only if you have<br />

time and money, or you have a very good friend come to<br />

visit you.<br />

• Step 1: Break down the sentence into phrases and<br />

associate a Boolean variable with each phrase.<br />

– T: you have time<br />

– M: you have money<br />

– V: you have a very good friend come to visit you<br />

– P: there will be a party<br />

• Step 2: Define a two-valued variable to indicate the truth<br />

or falsity of each phrase.<br />

– T=1 if you have time is true; otherwise, T=0<br />

– M=1 if you have money is true; otherwise, M=0<br />

– V=1 if you have a very good friend come to visit you is true;<br />

otherwise V=0<br />

– P=1 if there will be a party is true; otherwise P=0<br />

• Step 3: Construct the Boolean expression.<br />

P = TM+V<br />

<strong>Minterm</strong> Expansion<br />

• <strong>Minterm</strong>: A minterm of n variables is a<br />

product of n literals in which each<br />

variable appears exactly once in either<br />

true or complemented form, but not both<br />

• Based on the truth table, the minterm<br />

expansion can be obtained by:<br />

– 1. Generate a product term corresponding to<br />

each row in which the value of the function is 1.<br />

– 2. In each product term, if the value is 1, then<br />

use the variable, if is 0, then use its<br />

complement.<br />

• <strong>Minterm</strong> expansion also is referred to as<br />

a canonical sum of products (SOP)<br />

or standard sum of products (SOP).


Maxterm Expansion<br />

• Maxterm: A maxterm of n variables is a<br />

sum of n literals in which each variable<br />

appears exactly once in either true or<br />

complemented form, but not both<br />

• Based on the truth table, the maxterm<br />

expansion can be obtained by:<br />

– 1. Generate a sum term corresponding to each<br />

row in which the value of the function is 0.<br />

– 2. In each sum term, if the value is 1, then use<br />

its complement, if is 0, then use the variable<br />

itself.<br />

• Maxterm expansion also is referred to as<br />

a canonical product of sums (POS) or<br />

standard product of sums (POS).<br />

<strong>Combinational</strong> Logic <strong>Design</strong><br />

Using a Truth Table<br />

Example 1:<br />

• The canonical SOP form F=A’B’+A’B<br />

• The canonical POS form<br />

F = (A’+B)(A’+B’)<br />

A B F<br />

Row 0 0 0 1<br />

Row 1 0 1 1<br />

Row 2 1 0 0<br />

Row 3 1 1 0<br />

• Simplify the <strong>Minterm</strong> Expansion:<br />

F(A,B,C) = A’BC+AB’C’+AB’C+ABC’+ABC<br />

=A’BC + AB’ + ABC’ + ABC<br />

=A’BC + AB’ + AB<br />

=A’BC + A<br />

=A + BC<br />

• The circuit based on this simplified<br />

expression is:<br />

<strong>Minterm</strong>s and Maxterms for<br />

Three Variables<br />

<strong>Combinational</strong> Logic <strong>Design</strong><br />

Using a Truth Table<br />

Example 2: <strong>Minterm</strong> Expansion:<br />

F(A,B,C) =<br />

A’BC+AB’C’+AB’C+ABC’+ABC<br />

=m3 +m4 +m5 +m6 +m7 ∑ = ∑ m(3, 4, 5, 6, 7)<br />

Maxterm Expansion:<br />

F(A,B,C)<br />

=(A+B+C)(A+B+C’)(A+B’+C)<br />

=M0M1M2 = ∏ M(0, 1, 2)<br />

• Simplify the Maxterm Expansion:<br />

F(A,B,C) =(A+B+C)(A+B+C’)(A+B’+C)<br />

=(A+B)(A+B’+C)<br />

=A+B(B’+C)<br />

=A+BC<br />

• This result is the same as the one<br />

obtained from the simplification of the<br />

maxterm expansion.


<strong>Combinational</strong> Logic <strong>Design</strong><br />

Using a Truth Table<br />

Example 1: <strong>Minterm</strong> Expansion:<br />

F’(A,B,C) = A’B’C’+A’B’C+A’BC’<br />

=m0 +m1 +m2 = ∑ m(0, 1, 2)<br />

∑ Maxterm Expansion:<br />

F’(A,B,C)<br />

=(A+B’+C’)(A’+B+C)(A’+B+C’)<br />

(A’+B’+C)(A’+B’+C’)<br />

=M3M4M5M6M7 = ∏ M(3, 4, 5, 6, 7)<br />

Conversion Between <strong>Minterm</strong><br />

and Maxterm -- In General<br />

(4-9)<br />

(4-10)<br />

<strong>Minterm</strong> Expansion (p. 89)<br />

Conversion of <strong>Minterm</strong> and<br />

Maxterm of the Above Example<br />

The Method to Get<br />

Canonical Form<br />

Algebraic Method:<br />

Using distribution law and adding some<br />

terms having value 0 or multiply some<br />

terms having value 1.<br />

Q =AB+AC=AB(C+C’)+A(B+B’)C<br />

=ABC+ABC’+ABC+AB’C<br />

=ABC+ABC’+AB’C<br />

P = (A’+B)(A+B+C)<br />

=(A’+B+CC’)(A+B+C)<br />

=(A’+B+C)(A’+B+C’)(A+B+C)<br />

f = a'(b'+d) + acd'<br />

(4-11)<br />

Maxterm Expansion (p. 90)


F<br />

' '<br />

' '<br />

= ABC D + A BCD + ABC D<br />

1101<br />

= ∑ ( 7,<br />

12 , 13 )<br />

0101<br />

0111<br />

1001<br />

1100<br />

'<br />

' '<br />

'<br />

'<br />

P = ( A+<br />

B + C + D )( A + B + C + D )( A+<br />

B + C + D)<br />

0010<br />

= ∏(<br />

2,<br />

5,<br />

9)<br />

EX:<br />

Given<br />

Q(<br />

A,<br />

B,<br />

C,<br />

D)<br />

= ∑(<br />

0,<br />

1,<br />

7,<br />

8,<br />

10,<br />

11,<br />

12,<br />

15)<br />

Note: Q is four variable function and there will be 2 4<br />

= 16 combinations whose decimal values range from<br />

0 to 15. It has 8 minterms and should have 16-8=8 16 8=8<br />

maxterms<br />

Q(<br />

A,<br />

B,<br />

C,<br />

D)<br />

= ∏(<br />

2,<br />

3,<br />

4,<br />

5,<br />

6,<br />

9,<br />

13,<br />

14)<br />

Incompletely Specified Function<br />

Truth Table with Don't Cares which are indicated<br />

by X in the output<br />

Case 2: We do not care<br />

whether it is 0 or 1 for certain<br />

input combination.<br />

F = ∑ m(<br />

0,<br />

3,<br />

7)<br />

+ ∑ d(<br />

1,<br />

6)<br />

F = ∏ M ( 2,<br />

4,<br />

5)<br />

• ∏(<br />

1,<br />

6)<br />

It is desirable to choose values<br />

for the don’t care terms which<br />

will help simplify the function!<br />

X Y Cin Cout Sum<br />

0 0 0 0 0<br />

0 0 1 0 1<br />

0 1 0 0 1<br />

0 1 1 1 0<br />

1 0 0 0 1<br />

1 0 1 1 0<br />

1 1 0 1 0<br />

1 1 1 1 1<br />

Truth Table for a Full Adder<br />

Incompletely Specified Function<br />

First Case: Assume that the output of N1 does not<br />

generate all possible combinations of values for A,<br />

B, and C. This will lead to the incompletely<br />

specified function for N2 since certain combination<br />

of circuit inputs did not occur.<br />

Examples of Truth Table<br />

Construction<br />

•Example 1<br />

•Example 2<br />

•Example 3<br />

•Example 4<br />

On Pages 94-97.<br />

Truth Table for Binary Full Subtracter

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!