Boolean Algebra and Logic Gate
Boolean Algebra and Logic Gate
2
2.1 Algebras
What is an algebra?
Mathematical system consisting of
Set of elements (example: N = {1,2,3,4,…})
Set of operators (+, -, ×, ÷)
Axioms or postulates (associativity, distributivity, closure, identity el
ements, etc.)
Why is it important?
Defines rules of “calculations”
Note: operators with two inputs are called binary
Does not mean they are restricted to binary numbers!
Operator(s) with one input are called unary
3
BASIC DEFINITIONS
The common postulates used to formulate algebraic structures are:
1. Closure: a set S is closed with respect to a binary operator if, for every pair of el
ements of S, the binary operator specifies a rule for obtaining a unique element
of S.
For example, natural numbers N={1,2,3,...} is closed w.r.t. the bin
ary operator + by the rule of arithmetic addition, since, for any
a, bÎN, there is a unique cÎN such that
a+b = c
But operator – is not closed for N, because 2-3 = -1 and 2, 3 ÎN, but (-1)N.
2. Associative law: a binary operator * on a set S is said to be associative whenev
er
(x * y) * z = x * (y * z) for all x, y, zÎS
(x+y)+z = x+(y+z)
3. Commutative law: a binary operator * on a set S is said to be commutative wh
enever
x * y = y * x for all x, yÎS
x+y = y+x
4
BASIC DEFINITIONS
4. Identity element: a set S is said to have an identity element wit
h respect to a binary operation * on S if there exists an element e
ÎS with the property that
e * x = x * e = x for every xÎS
0+x = x+0 =x for every xÎI I = {…, -3, -2, -1, 0, 1, 2, 3, …}.
1×x = x×1 =x for every xÎI I = {…, -3, -2, -1, 0, 1, 2, 3, …}.
5. Inverse: a set having the identity element e with respect to the b
inary operator to have an inverse whenever, for every xÎS, there
exists an element yÎS such that
x * y = e
The operator + over I, with e = 0, the inverse of an element a is (-a), since a+(-a) =
0.
6. Distributive law: if (*) and (.) are two binary operators on a set
S, (*) is said to be distributive over (.) whenever
x * (y.z) = (x * y).(x * z)
5
George Boole
Father of Boolean algebra
He came up with a type of linguistic algebra, the thr
ee most basic operations of which were (and still are
) AND, OR and NOT. It was these three functions t
hat formed the basis of his premise, and were the on
ly operations necessary to perform comparisons or b
asic mathematical functions.
Boole’s system was based on a binary approach, pro
cessing only two objects - the yes-no, true-false,
George Boole (1815 - 1864)
on-off, zero-one approach.
Surprisingly, given his standing in the academic co
mmunity, Boole's idea was either criticized or compl
etely ignored by the majority of his peers.
Eventually, one bright student, claude shunnon(1916
-2001), picked up the idea and ran with it
6
2.3 Axiomatic Definition of Boolean Algebra
We need to define algebra for binary values
Developed by George Boole in 1854
Huntington postulates (1904) for Boolean algebra :
B = {0, 1} and two binary operations, (+) and (.)
Closure with respect to operator (+) and operator (.)
Identity element 0 for operator (+) and 1 for operator (.)
Commutativity with respect to (+) and (.)
x+y = y+x, x·y = y·x
Distributivity of (.) over (+), and (+) over (.)
x·(y+z) = (x·y)+(x·z) and x+(y·z) = (x+y)·(x+z)
Complement for every element x is x’ with x+x’=1, x·x’=0
There are at least two elements x,yB such that xy
7
Boolean Algebra
Terminology:
Literal: A variable or its complement
Product term: literals connected by (·)
Sum term: literals connected by (+)
8
Postulates of Two-Valued Boolean Algebra
B = {0, 1} and two binary operations, (+) and (.)
The rules of operations: AND 、 OR and NOT.
AND OR NOT
x y X.y x y x+y
x X’
0 0 0 0 0 0
0 1 1 0 1
0 1 0
1 0 0 1 0 1 1 0
1 1 1 1 1 1
1. Closure (+ and‧)
2.The identity elements
(1) + = 0
(2) · = 1 9
Postulates of Two-Valued Boolean Algebra
3. The commutative laws x+y = y+x, x.y = y.x
4. The distributive laws
x. x. x. (x . y)+(x .
x y z y+z
(y+z) y z 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
10
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
Note
A set of two elements
(+) : OR operation; (·) : AND operation
A complement operator: NOT operation
Binary logic is a two-valued Boolean algebra
11
2.4 Basic Theorems And Properties Of Boolean Algebra
Duality
The principle of duality is an important concept. This says that i
f an expression is valid in Boolean algebra, the dual of that expre
ssion is also valid.
To form the dual of an expression, replace all (+) operators with (
·) operators, all (·) operators with (+) operators, all ones with zer
os, and all zeros with ones.
Following the replacement rules…
a(b + c) = ab + ac
Form the dual of the expression
a + (bc) = (a + b)(a + c)
Take care not to alter the location of the parentheses if they are p
resent.
12
Basic Theorems
13
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 !
14
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)
Q.E.D.
We can now use Theorem 1(a) in future proofs 15
Proof of x·x=x Huntington postulates:
16
Huntington postulates:
Proof of x+1=1 Post. 2: (a) x+0=x, (b) x·1=x
Post. 3: (a) x+y=y+x, (b)
x·y=y·x
Theorem 2(a): x + 1 = 1 Post. 4: (a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
x + 1 = 1 . (x + 1) by 2(b) Post. 5: (a) x+x’=1, (b) x·x’=0
Th. 1: (a) x+x=x
=(x + x')(x + 1) 5(a)
= x + x' 1 4(b)
= x + x' 2(b)
= 1 5(a)
Theorem 2(b): x . 0 = 0 by duality
Theorem 3: (x')' = x
Postulate 5 defines the complement of x, x + x' = 1 a
nd x x' = 0
The complement of x' is x is also (x')'
17
Absorption Property (Covering)
Huntington postulates:
Theorem 6(a): x + xy = x
x + xy = x . 1 + xy by 2(b) Post. 2: (a) x+0=x, (b) x·1=x
Post. 3: (a) x+y=y+x, (b) x·y=y·x
= x (1 + y) 4(a)
Post. 4: (a) x(y+z) = xy+xz,
= x (y + 1) 3(a) (b) x+yz = (x+y)(x+z)
= x . 1 Th 2(a) Post. 5: (a) x+x’=1, (b) x·x’=0
=x 2(b) Th. 2: (a) x+1=1
x y xy x+xy
0 0 0 0
0 1 0 0
1 0 0 1
1 1 1 1
18
DeMorgan’s Theorem
Theorem 5(a): (x + y)’ = x’y’
Theorem 5(b): (xy)’ = x’ + y’
By means of truth table
19
THE END
THE END
Consensus Theorem
1. xy + x’z + yz = xy + x’z
2. (x+y)•(x’+z)•(y+z) = (x+y)•(x’+z) -- (dual)
Proof:
xy + x’z + yz
= xy + x’z + 1.yz 2(a)
= xy + x’z + (x+x’)yz 5(a)
= xy + x’z + xyz + x’yz 3(b) &4(a)
= (xy + xyz) + (x’z + x’zy) Th4(a)
= x(y + yz) + x’ (z + zy) 4(a)
= xy + x’z Th6(a)
QED (2 true by duality).
21
Operator Precedence
The operator precedence for evaluating Boolean E
xpression is
Parentheses
NOT
AND
OR
Examples
x y' + z
(x y + z)'
22
2.5 Boolean Functions
A Boolean function
Binary variables
Binary operators OR and AND
Unary operator NOT
Parentheses
Examples
F1= x y z'
F2 = x + y'z
F3 = x' y' z + x' y z + x y'
F4 = x y' + x' z
23
Boolean Functions
The truth table of 2n entries (n=number of variables)
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
Two Boolean expressions may specify the same function
F 3 = F4
24
Boolean Functions
Implementation with logic gates
F4 is more economical
F2 = x + y'z
F4 = x y' + x' z
25
Algebraic Manipulation
When a Boolean expression is implemented with logic gates, each t
erm requires a gate and each variable (Literal) within the term des
ignates an input to the gate. (F3 has 3 terms and 8 literal)
To minimize Boolean expressions, minimize 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. (consen
sus theorem with duality)
26
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)
Generalization: a function is obtained by interchanging A
ND and OR operators and complementing each literal.
(A+B+C+D+ ... +F)' = A'B'C'D'... F'
(ABCD ... F)' = A'+ B'+C'+D' ... +F'
27
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
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'
28
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 complem
ent 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 call a standard sum.
2n maxterms.
29
Minterms and Maxterms
Each maxterm is the complement of its correspondin
g minterm, and vice versa.
30
Minterms and Maxterms
An Boolean function can be expressed by
A truth table
Sum of minterms for each combination of variables tha
t produces a (1) in the function.
f1 = x'y'z + xy'z' + xyz = m1 + m4 +m7 (Minterms)
f2 = x'yz+ xy'z + xyz'+xyz = m3 + m5 +m6 + m7 (Minterms
)
31
Minterms and Maxterms
The complement of a Boolean function
The minterms that produce a 0
f1' = m0 + m2 +m3 + m5 + m6 = x'y'z'+x'yz'+x'yz+xy'z+xyz'
f1 = (f1')'
= (x+y+z)(x+y'+z) (x+y'+z') (x'+y+z')(x'+y'+z) = M0 M2 M3 M5 M6
f2 = (x+y+z)(x+y+z')(x+y'+z)(x'+y+z)=M0M1M2M4
Any Boolean function can be expressed asterms).
A product of maxterms (“product” meaning the ANDing of ter
ms).
32
Sum of Minterms
Sum of minterms: there are 2n minterms and 22n combinat
ions of functions 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) = S(1, 4, 5, 6, 7)
or, built the truth table first
33
Product of Maxterms
Product of maxterms: using distributive law to expand.
x + yz = (x + y)(x + z) = (x+y+zz')(x+z+yy') = (x+y+z)(x+y+z')(
x+y'+z)
Example 2.5: express F = xy + x'z as a product of maxter
ms.
F = xy + x'z = (xy + x')(xy +z) = (x+x')(y+x')(x+z)(y+z) = (x'+y)(
x+z)(y+z)
x'+y = x' + y + zz' = (x'+y+z)(x'+y+z')
F = (x+y+z)(x+y'+z)(x'+y+z)(x'+y+z') = M M M M
0 2 4 5
F(x, y, z) = P(0, 2, 4, 5)
34
Conversion between Canonical Forms
The complement of a function expressed as the sum of minterms
equals the sum of minterms missing from the original function.
F(A, B, C) = S(1, 4, 5, 6, 7)
Thus, F‘ (A, B, C) = S(0, 2, 3)
By DeMorgan's theorem
F(A, B, C) = P(0, 2, 3)
F'(A, B, C) =P (1, 4, 5, 6, 7)
mj' = Mj
To convert from one canonical form to another: interchange th
e symbols S and P and list those numbers missing from the orig
inal form
S of 1's
P of 0's
35
Example
F = xy + xz
F(x, y, z) = S(1, 3, 6, 7)
F(x, y, z) = P (0, 2, 4, 6)
36
Standard Forms
In canonical forms each minterm or maxterm must contain all
the variables either complemented or uncomplemented, thus
these forms are very seldom the ones with the least number of li
terals.
Standard forms: the terms that form the function may obtain o
ne, two, or any number of literals, .There are two types of stan
dard forms:
Sum of products: F1 = y' + xy+ x'yz'
Product of sums: F2 = x(y'+z)(x'+y+z')
A Boolean function may be expressed in a nonstandard form
F3 = AB + C(D + E)
But it can be changed to a standard form by using The distributi
. .
ve law
F3 = AB + C(D + E) = AB + CD + CE
37
Implementation
Two-level implementation
Multi-level implementation
38
2.7 Other Logic Operations
2n rows in the truth table of n binary variables.
22n functions for n binary variables.
16 functions of two binary variables.
40
2.8 Digital Logic Gates
Boolean expression: AND, OR and NOT operatio
ns
Constructing gates of other logic operations
The feasibility and economy;
The possibility of extending gate's inputs;
The basic properties of the binary operations (commut
ative and associative);
The ability of the gate to implement Boolean functions.
41
Standard Gates
Consider the 16 functions in Table 2.8
Two functions produce a constant : (F0 and F15).
Four functions with unary operations: complement and t
ransfer: (F3, F5, F10 and F12).
The other ten functions with binary operators
Eight function are used as standard gates : comple
ment (F12), transfer (F3), AND (F1), OR (F7), NAND (
F14), NOR (F8), XOR (F6), and equivalence (XNOR) (
F9).
Complement: inverter.
Transfer: buffer (increasing drive strength).
Equivalence: XNOR.
42
Summary of Logic Gates
AND
xy = yx
(x y)z = x(y z) = x y z
45
Multiple Inputs
Multiple NOR = a complement of OR gate, Multiple
NAND = a complement of AND.
The cascaded NAND operations = sum of products.
The cascaded NOR operations = product of sums.
51
Digital Logic Families
The characteristics of digital logic families
Fan-out: the number of standard loads that the output
of a typical gate can drive.
Power dissipation.
Propagation delay: the average transition delay time for
the signal to propagate from input to output.
Noise margin: the minimum of external noise voltage t
hat caused an undesirable change in the circuit output.
52