Chapter 2 Boolean Algebra and Logic Gates
Chapter 2 Boolean Algebra and Logic Gates
AND OR NOT
x y x.y x y x+y x x'
0 0 0 0 0 0 0 1
0 1 0 0 1 1 1 0
1 0 0 1 0 1
1 1 1 1 1 1
1. Closure (+ and‧)
2. The identity elements
(1) +: 0
(2) . : 1
Postulates of Two-Valued Boolean Algebra
3. The commutative laws
4. The distributive laws
y+ x. x. (x . y)+
x y z x.z
z (y+z) y (x . z)
0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0
0 1 0 1 0 0 0 0
0 1 1 1 0 0 0 0
1 0 0 0 0 0 0 0
1 0 1 1 1 0 1 1
1 1 0 1 1 1 0 1
1 1 1 1 1 1 1 1
Postulates of Two-Valued Boolean Algebra
5. Complement
x+x'=1 → 0+0'=0+1=1; 1+1'=1+0=1
x . x'=0 → 0 . 0'=0 . 1=0; 1 . 1'=1 . 0=0
6. Has two distinct elements 1 and 0, with 0 ≠ 1
Note
A set of two elements
+ : OR operation; . : AND operation
A complement operator: NOT operation
Binary logic is a two-valued Boolean algebra
Duality
The principle of duality is an important concept. This
says that if an expression is valid in Boolean algebra,
the dual of that expression is also valid.
To form the dual of an expression, replace all +
operators with . operators, all . operators with +
operators, all ones with zeros, and all zeros with ones.
Form the dual of the expression
a + (bc) = (a + b)(a + c)
Following the replacement rules…
a(b + c) = ab + ac
Take care not to alter the location of the parentheses if
they are present.
Basic Theorems
Boolean Theorems
Huntington’s postulates define some rules
Post. 1:
closure
Post. 2:
(a) x+0=x, (b) x·1=x
Post. 3:
(a) x+y=y+x, (b) x·y=y·x
Post. 4:
(a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
Need more rules to modify Post. 5: (a) x+x’=1, (b) x·x’=0
algebraic expressions
Theorems that are derived from postulates
What is a theorem?
A formula or statement that is derived from
postulates (or other proven theorems)
Basic theorems of Boolean algebra
Theorem 1 (a): x + x = x (b): x · x = x
Looks straightforward, but needs to be proven !
Proof of x+x=x
We can only use Huntington postulates:
Huntington postulates:
Post. 2: (a) x+0=x, (b) x·1=x
Post. 3: (a) x+y=y+x, (b) x·y=y·x
Post. 4: (a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
Post. 5: (a) x+x’=1, (b) x·x’=0
Show that x+x=x.
x+x = (x+x)·1 by 2(b)
= (x+x)(x+x’) by 5(a)
= x+xx’ by 4(b)
= x+0 by 5(b)
=x by 2(a)
x y xy x+x
y
0 0 0 0
0 1 0 0
1 0 0 1
1 1 1 1
DeMorgan’s Theorem
Theorem 5(a): (x + y)’ = x’y’
Theorem 5(b): (xy)’ = x’ + y’
By means of truth table
x y z F1 F2 F3 F4
0 0 0 0 0 0 0
0 0 1 0 1 1 1
0 1 0 0 0 0 0
0 1 1 0 0 1 1
1 0 0 0 1 1 1
1 0 1 0 1 1 1
1 1 0 1 1 0 0
1 1 1 0 1 0 0
F2 = x + y'z
F4 = x y' + x' z
Algebraic Manipulation
To minimize Boolean expressions
Literal: a primed or unprimed variable (an input to a gate)
Term: an implementation with a gate
The minimization of the number of literals and the number of terms → a circuit with less
equipment
It is a hard problem (no specific rules to follow)
Example 2.1
1. x(x'+y) = xx' + xy = 0+xy = xy
2. x+x'y = (x+x')(x+y) = 1 (x+y) = x+y
3. (x+y)(x+y') = x+xy+xy'+yy' = x(1+y+y') = x
4. xy + x'z + yz = xy + x'z + yz(x+x') = xy + x'z + yzx + yzx' = xy(1+z) + x'z(1+y) = xy +x'z
5. (x+y)(x'+z)(y+z) = (x+y)(x'+z), by duality from function 4. (consensus theorem with
duality)
Complement of a Function
An interchange of 0's for 1's and 1's for 0's in the value of F
By DeMorgan's theorem
(A+B+C)' = (A+X)' let B+C = X
= A'X' by theorem 5(a) (DeMorgan's)
= A'(B+C)' substitute B+C = X
= A'(B'C') by theorem 5(a) (DeMorgan's)
= A'B'C' by theorem 4(b) (associative)
Generalizations: a function is obtained by interchanging AND and OR
operators and complementing each literal.
(A+B+C+D+ ... +F)' = A'B'C'D'... F'
(ABCD ... F)' = A'+ B'+C'+D' ... +F'
Examples
Example 2.2
F1' = (x'yz' + x'y'z)' = (x'yz')' (x'y'z)' = (x+y'+z) (x+y+z')
F2' = [x(y'z'+yz)]' = x' + (y'z'+yz)' = x' + (y'z')' (yz)‘
= x' + (y+z) (y'+z')
= x' + yz‘+y’z ; XX’=0
Example 2.3: a simpler procedure
Take the dual of the function and complement each literal
1. F1 = x'yz' + x'y'z.
The dual of F1 is (x'+y+z') (x'+y'+z).
Complement each literal: (x+y'+z)(x+y+z') = F1'
2. F2 = x(y' z' + yz).
The dual of F2 is x+(y'+z') (y+z).
Complement each literal: x'+(y+z)(y' +z') = F2'
2.6 Canonical and Standard Forms
Minterms and Maxterms
A minterm (standard product): an AND term consists of all literals in their
normal form or in their complement form.
For example, two binary variables x and y,
xy, xy', x'y, x'y'
It is also called a standard product.
n variables can be combined to form 2n minterms.
A maxterm (standard sums): an OR term
It is also called a standard sum.
2n maxterms.
Minterms and Maxterms
Minterms and Maxterms
Minterms and Maxterms
Sum of Minterms
Sum of minterms: there are 2n minterms with n Boolean variables.
Example 2.4: express F = A+B'C as a sum of minterms.
F = A+B'C = A (B+B') + B'C = AB +AB' + B'C = AB(C+C') + AB'(C+C') + (A+A')B'C =
ABC+ABC'+AB'C+AB'C'+A'B'C
F = A'B'C +AB'C' +AB'C+ABC'+ ABC = m1 + m4 +m5 + m6 + m7
F(A, B, C) = (1, 4, 5, 6, 7)
or, built the truth table first
Product of Maxterms
Conversion between Canonical Forms
Example
F = xy + xz
F(x, y, z) = (1, 3, 6, 7)
F(x, y, z) = (0, 2, 4, 5)
Standard Forms
Canonical forms are very seldom the ones with the least number of literals.
Standard forms: the terms that form the function may obtain one, two, or
any number of literals.
Sum of products: F1 = y' + xy+ x'yz'
Product of sums: F2 = x(y'+z)(x'+y+z')
F3 = A'B'CD+ABC'D'
Implementation
Two-level implementation
Multi-level implementation
2.7 Other Logic Operations
Boolean Expressions
2.8 Digital Logic Gates
Boolean expression: AND, OR and NOT operations
Constructing gates of other logic operations
The feasibility and economy;
The possibility of extending gate's inputs;
The basic properties of the binary operations (commutative and associative);
The ability of the gate to implement Boolean functions.
Standard Gates
Consider the 16 functions in Table 2.8 (slide 33)
Two are equal to a constant (F0 and F15).
Four are repeated twice (F4, F5, F10 and F11).
Inhibition (F2) and implication (F13) are not commutative or associative.
The other eight: complement (F12), transfer (F3), AND (F1), OR (F7), NAND (F14), NOR
(F8), XOR (F6), and equivalence (XNOR) (F9) are used as standard gates.
Complement: inverter.
Transfer: buffer (increasing drive strength).
Equivalence: XNOR.
Summary of Logic Gates
X= 1. y=0. z=0