1 simplification of boolean functions: an implementation of a boolean function requires the use of...

30
1 Simplification of Boolean Functions: An implementation of a Boolean Function requires the use of logic gates. A smaller number of gates, with each gate (other then Inverter) having less number of inputs, may reduce the cost of the implementation. There are 2 methods for simplification of Boolean functions.

Upload: chastity-morris

Post on 28-Dec-2015

232 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

1

Simplification of Boolean Functions:

An implementation of a Boolean Function requires the use of logic gates.

A smaller number of gates, with each gate (other then Inverter) having less number of inputs, may reduce the cost of the implementation.

There are 2 methods for simplification of Boolean functions.

Page 2: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

2

Simplification of Boolean Functions: Two Methods

The algebraic method by using Identities The graphical method by using Karnaugh Map method

The K-map method is easy and straightforward.

A K-map for a function of n variables consists of 2n cells, and, in every row and column, two adjacent cells

should differ in the value of only one of the logic variables.

Page 3: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

3

Examples of K-Maps:

Examples:Cell numbers are written in the cells. 2-variable K-map

0 1

2 3

0

1

0 1A

B

Page 4: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

4

3-Variable K-Map:

3-variable K-map

0 1 3 2

4 5 7 6

00 01 11 10

01

ABC

Page 5: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

5

4-variable K-map 4-variable K-map

0 1 3 2

4 5 7 6

12

13

15

14

8 9 11

10

00 01 11 10

0001

1110

ABCD

Page 6: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

6

Literal, minterm of n variable:

Literal: A variable or its complement is called a

literal.Minterm of n variable: A product of n literals

in which each variable appears exactly once, in either its true or its complemented form, but not in both, and,

which is equal to 1 for exactly one combination of values of the n variables.

Page 7: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

7

Minterms and Maxterms

For every K-map, each cell has a minterm associated with it .

Thus for cell no. 13 in the 4-variable K-map, the minterm is A.B.C’.D Or

m13 = A.B.C’.D.Maxterm of n variables:

A sum of n literals in which each variable appears exactly once, in

either its true or its complemented form, but not in both

which has a value of O for exactly one combination of values of the n variables.

Page 8: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

8

Maxterms (continued):

For every K-map, each cell has one Maxterm associated with it. Thus for cell no.13 in the 4-variable K-map, M13 = A’ + B’ + C + D’By De Morgan’s theorem, mi = Mi

ADJACENT minterms (Maxterms): Minterm which are identical, except for one variable,

are considered to be adjacent to one another. In a K-map, the corresponding cells are said to be

adjacent cells.

Page 9: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

9

Adjacent minterms:

Thus in K-4, Cell O is adjacent to cells 1, 4, 2 and 8. In a K-map, the corresponding cells in the top and

the bottom rows are adjacent to each other. Similarly the corresponding cells in the leftmost

column and the rightmost column are adjacent to each other.

An Example: A function F, of 4 variables, is defined by the truth

table given in the next slide. ( and again given in the next 3 slides):

Page 10: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

10

Example: Truth Table

Page 11: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

11

Example: TruthTable

Dec number

A B C D F

0 0 0 0 0 1

1 0 0 0 1 0

2 0 0 1 0 1

3 0 0 1 1 1

4 0 1 0 0 0

5 0 1 0 1 1

Page 12: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

12

Example: TruthTable (continued)

Dec number

A B C D F

6 0 1 1 0 1

7 0 1 1 1 1

8 1 0 0 0 1

9 1 0 0 1 0

10 1 0 1 0 1

11 1 0 1 1 1

Page 13: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

13

Example: TruthTable (continued)

Dec Number

A B C D F

12 1 1 0 0 0

13 1 1 0 1 0

14 1 1 1 0 1

15 1 1 1 1 1

Page 14: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

14

Sum of Products form:

The above table can be described by F = m(0, 2, 3, 5, 6, 7, 8, 10, 11, 14, 15)The function can be written as:F = A’B’C’D’ + A’B’CD’ + A’B’CD + A’BC’D + A’BCD’

+ A’BCD + AB’C’D’ + AB’CD’ + AB’CD + ABCD’ + ABCD

…………………………………(1) Each term on the RHS is a minterm. The above function can be simplified by using the

Identities.

Page 15: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

15

The graphical method steps:

The graphical method steps: Insert 1 in those cells where the

function F has a value of 1. Put 0 in the other cells.

Examples:

1 0 1 1

0 1 1 1

0 0 1 1

1 0 1 1

00 01 11 10

00

0111

10

ABCD

Page 16: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

16

Steps of graphical method (continued):

Combine adjacent 1’s into group of 2n each such that

Each group contains only 1’s. The group is not completely a part of a larger group.

Choose the minimum number of the largest sized groups needed to cover all the 1’s.

Each group is represented by an expression which is an intersection of the minterm in the group.

The simplified solution is a logical OR of the expressions of all the groups chosen in steps 3 above.

Page 17: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

17

Product of Sums Form: Using Maxterms

For the same example,F= M(1,4,9,12,13) = (A + B + C+ D’).(A + B’+ C + D).(A’+ B + C

+D’). (A’ + B’ + C + D).( A’ + B’ + C +D’) …………..

(2)

The simplification process is a dual of the

process for the SOP form.

Page 18: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

18

Some definitions:The definitions: Given a function F of n variables.Implicant: A minterm P is an implicant of F if and only if, for

the combination of values of the n variables, for which P = 1, F is also equal to 1.

Prime Implicant : An implicant is a Prime Implicant if after deleting any literal from it , the remaining product term is no longer an implicant.

Or an implicant whose group in the K-map is not completely covered by another implicant, represented by a larger group.

Page 19: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

19

Essential Prime Implicant:

Essential prime Implicant: A Prime Implicant that contains an ‘ANDing of

literals’, that is not contained in any other prime Implicant.

Or a Prime Implicant, representing a group in the K-map, such that at least one cell of the group is not covered by any other Prime Implicant.

Page 20: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

20

CANONIC form of a Boolean ExpressionCANONIC: A SOP or POS expression of n variables is

canonic if each product or sum has exactly n literals. SOP format: F = ‘ORing’ of minterms -----(3) POS format: F = ‘ORing’ of minterms -----(4)

The sum of the number of terms on the RHS of equations (3) and (4) is always equal to 2n.

A minterm that is covered by only one PI is called a distinguished minterm.

A Maxterm that is covered by only one PI is called a distinguished Maxterm.

Equations (1) and (2) show the canonic form of the Boolean expression for the example given on slide 10.

Page 21: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

21

Use of KARNAUGH MAP for Simplification of Logic FunctionsSOL: On reading the three sets of adjacent boxes of 8, 4

and 2 cells respectively, we get:

F = C + B’.D’ + A’.B.D

Page 22: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

22

SIMPLIFICATION using KARNAUGH MAP

Exam 2: F=∑ m(0,2,8,9,10,11,14,15)

F= A.B’+A.C+B’.D’

Page 23: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

23

SIMPLIFICATION using KARNAUGH MAP

A B C S Carry0 0 0 0 00 0 1 1 00 1 0 1 00 1 1 0 11 0 0 1 01 0 1 0 11 1 0 0 11 1 1 1 1

Exam 3:

Full-adder:

Carry= A.C+A.B+B.C

S=A.B’.C’ + A’.B’.C+A.B.C+A’.B.C’

Page 24: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

24

Multistage Logic Circuit

Multistage Logic Circuit:

N1 and N2 ; Two logic circuits. W, X, Y, Z: independent logic variablesFor each of the 16 possible combination of values for W, X, Y and Z,

some specific value of A, B and C would be the outputs.

Three variables normally have 8 possible sets of values .However, in the above circuit N1 may constrain the values to a smaller set. The remaining set of values for A, B and C would not affect the output of N2.Thus for N2, the non available inputs are called ‘don’t care’ inputs, since these inputs do not have any effect on F.

Page 25: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

25

Don’t care condition

Example 1:

Let A,B and C never have 001 or 110 values. Then for F, values of 001 and 110 for A, B and C are not of any importance.

Exam 2: All possible input combinations are present. But the output is used in such a way that we do not care whether it is 0 or 1 for certain input combinations.F= ∑ m(0,3,7)+ ∑ d(1,6)

Or F = Π M(2,4,5) Π D(1,6)

N1 N2

A

B

C

Fw

xy

z

Page 26: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

26

SIMPLIFICATION using KARNAUGH MAP

Example: Given the Characteristic Table for a 2-stage network. (Please see the Figure in the next slide.)

Solution: F1 = ∑m (1,2,5,6)F2 =∑ m(0,2,4,6)F3 =∑m (1,3,5,7)F= ∑m (1, 2, 6 ), d(0, 3, 4, 7)

Solution is continued in the next 3 slides.

Page 27: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

27

Page 28: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

28

SIMPLIFICATION using KARNAUGH MAP Designing for N1

F1=B’C+BC’

F2=C’

F3=C

F1 = ∑m (1,2,5,6)F2 =∑ m(0,2,4,6)F3 =∑m (1,3,5,7)

Page 29: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

29

K- Map for F: Designing for N2

Page 30: 1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each

30

B

N1 N2