1
BASICS OF BOOLEAN ALGEBRA AND TECHNIQUE FOR THE
MINIMIZATION OF BOOLAN EXPRESSION
Dr. Naveen Saini
Assistant Professor,
Department of Information Technology Indian Institute
of Information Technology Allahabad
Uttar Pradesh, India
[email protected] https://sites.google.com/view/nsaini
BASIC LOGIC BLOCK - LOGIC GATE -
Binary Binary
Digital Digital
. Gate Output
Input .
Signal . Signal
Types of Basic Logic Blocks
- Combinational Logic Block
Logic Blocks whose output logic value depends only on the input logic
values (clock independent)
E.g. -> Encoder, Decoder, Multiplexer, Demultiplexer, Half Adder, Full
Adder, Full Subtractor, etc.
- Sequential Logic Block
Those circuits which are dependent on clock cycles and depends on
present as well as past inputs to generate any output.
E.g. -> Flip-flops, Counters
Functions of Gates can be described by
- Truth Table
- Boolean Function
- Karnaugh Map
Logic Gates
COMBINATIONAL GATES
Name Symbol Function Truth Table
A B X
A X=A•B 0 0 0
AND X or 0
1
1
0
0
0
B X = AB
1 1 1
A B X
A 0 0 0
OR X X=A+B 0 1 1
B 1 0 1
1 1 1
A X
I A X X = A’ 0
1
1
0
A X
Buffer A X X=A 0 0
1 1
A B X
A 0 0 1
NAND X X = (AB)’ 0
1
1
0
1
1
B 1 1 0
A B X
A 0 0 1
NOR X X = (A + B)’ 0
1
1
0
0
0
B 1 1 0
A B X
A X=AB
XOR X or 0 0 0
Exclusive OR 0 1 1
B X = A’B + AB’ 1 0 1
1 1 0
A B X
A X = (A B)’
XNOR X or
0
0
0
1
1
0
Exclusive NOR
or Equivalence B X = A’B’+ AB 1 0 0
1 1 1
Boolean Algebra
BOOLEAN ALGEBRA
Boolean Algebra
• Algebra with Binary(Boolean) Variable and Logic Operations
• Useful in Analysis and Synthesis of Digital Logic Circuits
• Input and Output signals can be represented by Boolean Variables, and
• Function of the Digital Logic Circuits can be represented by Logic
Operations, i.e., Boolean Function(s)
• From a Boolean function, a logic diagram can be constructed using
basic logic gates
Truth Table
* The most elementary specification of the function of a Digital Logic
Circuit is the Truth Table
- Table that describes the Output Values for all the combinations
of the Input Values, called MINTERMS
- n input variables → 2n minterms
Boolean Function
• Any Boolean functions can be formed from binary variables and the Boolean op
erators • , +, and ' (for AND, OR, and NOT, respectively).
• For a given value of variable, the function can take only one value either 0 or 1.
• A function can be specified or represented in any of the following ways: truth ta-
-ble, a circuit, a boolean expression, SOP (Sum Of Products), POS (Product of S
ums), etc.
Important Boolean operations Table of Some Basic Theorems
over Boolean values
https://byjusexamprep.com/boolean-algebra-i-eaaafc11-c590-11e5-84d7-cfd116a26dba
Boolean Algebra
LOGIC CIRCUIT DESIGN
x y z F
0 0 0 0
Truth 0 0 1 1
Table 0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
Boolean F = x + y’z
Function
x
F
Logic y
Diagram
z
Boolean Algebra
BASIC IDENTITIES OF BOOLEAN ALGEBRA
[1] x + 0 = x [2] x • 0 = 0
[3] x + 1 = 1 [4] x • 1 = x
[5] x + x = x [6] x • x = x
[7] x + x’ = 1 [8] x • X’ = 0
[9] x + y = y + x [10] xy = yx
[11] x + (y + z) = (x + y) + z [12] x(yz) = (xy)z
[13] x(y + z) = xy +xz [14] x + yz = (x + y)(x + z)
[15] (x + y)’ = x’y’ [16] (xy)’ = x’ + y’
[17] (x’)’ = x
[15] and [16] : De Morgan’s Theorem
Usefulness of this Table
- Simplification of the Boolean function
- Derivation of equivalent Boolean functions to obtain logic diagrams
utilizing different logic gates
-- Ordinarily ANDs, ORs, and Inverters (NOT gate)
-- But a certain different form of Boolean function may be convenient
to obtain circuits with NANDs or NORs
→ Applications of De Morgans Theorem
x’y’ = (x + y)’ x’+ y’= (xy)’
I, AND → NOR I, OR → NAND
EQUIVALENT CIRCUITS
Many different logic diagrams are possible for a given Function
F = ABC + ABC’ + A’C .......…… (1)
= AB(C + C’) + A’C [13] ..…. (2)
= AB • 1 + A’C [7]
= AB + A’C [4] ...…. (3)
A
B
(1) C
F
(2) A
B
C F
(3) A
B
F
C
Map Simplification
SIMPLIFICATION/MINIMIZATION
Truth Boolean
Table Function
Unique Many different expressions exist
• Another issue is literals (variables) used in original Boolean function is usually high,
and if that function is implemented using logic gates so it will increase the
complexity and cost of the system.
• Simplification from Boolean function
• Finding an equivalent expression that is least expensive to implement
• For a simple function, it is possible to obtain a simple expression for low cost
implementation, but, with complex functions, it is a very difficult task
• Karnaugh Map (K-map) is a simple procedure for simplifying Boolean
expressions. So, the process of minimizing and simplifying a algebraic
expression is known as minimization
Truth
Table
Simplified
Karnaugh Boolean
Map Function
Boolean
function
Basic Terms
• The product of all literals, either with complement or without complement, is known as minterm.
The minterm for the Boolean variables A and B is: A.B , A. B', A'.B
• The sum of all literals, either with complement or without complement, is known as maxterm. The
maxterm for the Boolean variables A and B will be: A+B , A+ B', A' +B
• In Minterm, we look for the functions where the output results in “1” while in Maxterm we look for
function where the output results in “0”.
• We perform Sum of minterm also known as Sum of products (SOP).
We perform Product of Maxterm also known as Product of sum (POS).
Boolean functions expressed as a sum of minterms or product of maxterms
Map Simplification
KARNAUGH MAP
Karnaugh Map for an n-input digital logic circuit (n-variable sum-of-products
form of Boolean Function, or Truth Table) is
- Rectangle divided into 2n cells
- Each cell is associated with a Minterm
- An output(function) value for each input value associated with a
mintern is written in the cell representing the minterm
→ 1-cell, 0-cell
Each Minterm is identified by a decimal number whose binary representation
is identical to the binary interpretation of the input values of the minterm.
Karnaugh Map
x Identification x value
x
0
F
1 0 0 of the cell 0 1 of F
1 0 1 1 1 0
F(x) = (0)
1-cell
x y F
x0 1
0 0 0
y x0 1
0 1 1
0 0 1 y
0 0 1
1 0 1 1 2 3
1 1 1 1 1 1
F(x,y) = (1,2,3)
Map Simplification
KARNAUGH MAP
x y z F
0 0 0 0
yz y yz
0 0 1 1
0 1 0 1 x 00 01 11 10 x 00 01 11 10
0 1 1 0 0 0 1 3 2 0 0 1 0 1
1 0 0 1 x 1 4 5 7 6
1 0 1 0 1 1 0 0 0
1 1 0 0 z
1 1 1 0 F(x,y,z) = (1,2,4)
wx w
u v w x F
0 0 0 0 0 uv 00 01 11 10
0 0 0 1 1 00 0 1 3 2 v
0 0 1 0 0
0 0 1 1 1 01 4 5 7 6
0 1 0 0 0
u 11
12 13 15 14
0 1 0 1 0
0 1 1 0 1
0 1 1 1 0 10 8 9 11 10
1
1
0
0
0
0
0
1
1
1
x
1 0 1 0 0 wx
1 0 1 1 1 uv 00 01 11 10
1 1 0 0 0 00 0 1 1 0
1 1 0 1 0
1 1 1 0 1
1 1 1 1 0 01 0 0 0 1
11 0 0 0 1
10 1 1 1 0
F(u,v,w,x) = (1,3,6,8,9,11,14)
1
4
Email: [email protected]