Chapter 2 Boolean Algebra and Logic Gates
Chapter 2 Boolean Algebra and Logic Gates
1
Algebras
What is an algebra?
Mathematical system consisting of
Set of elements
Set of operators
Axioms or postulates
Why is it important?
Defines rules of “calculations”
Example: arithmetic on natural numbers
Set of elements: N = {1,2,3,4,…}
Operator: +, –, *
Axioms: associativity, distributivity, closure, identity elements,
etc.
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
January 4, 2025 2
BASIC DEFINITIONS
A set is collection of having the same property.
S: set, x and y: element or event
For example: S = {1, 2, 3, 4}
If x = 2, then xÎS.
If y = 5, then y S.
A binary operator defines on a set S of elements is a
rule that assigns, to each pair of elements from S, a
unique element from S.
For example: given a set S, consider a*b = c and * is a binary
operator.
If (a, b) through * get c and a, b, cÎS, then * is a binary
operator of S.
On the other hand, if * is not a binary operator of S and a, bÎS,
then c S.
January 4, 2025 3
BASIC DEFINITIONS
The most common postulates used to formulate various
algebraic structures are as follows:
1. Closure: a set S is closed with respect to a binary operator if, for
every pair of elements 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 binary
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 whenever
(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 whenever
x * y = y * x for all x, yÎS
x+y = y+x
January 4, 2025 4
BASIC DEFINITIONS
4. Identity element: a set S is said to have an identity element with
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
binary operator to have an inverse whenever, for every xÎS, there
exists an element yÎS such that
x*y=e x*x’= 0 x+x’ =1
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)
January 4, 2025 5
George Boole
Father of Boolean algebra
He came up with a type of linguistic algebra, the three
most basic operations of which were (and still are) AND,
OR and NOT. It was these three functions that formed
the basis of his premise, and were the only operations
necessary to perform comparisons or basic
mathematical functions.
Boole’s system (detailed in his 'An Investigation of the
Laws of Thought, on Which Are Founded the
Mathematical Theories of Logic and Probabilities', 1854)
was based on a binary approach, processing only two
objects - the yes-no, true-false, on-off, zero-one
approach.
George Boole (1815 - 1864)
Surprisingly, given his standing in the academic
community, Boole's idea was either criticized or
completely ignored by the majority of his peers.
Eventually, one bright student, Claude Shannon (1916-
2001), picked up the idea and ran with it
January 4, 2025 6
Axiomatic Definition of Boolean Algebra
We need to define algebra for binary values
Developed by George Boole in 1854
Huntington postulates for Boolean algebra (1904):
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
January 4, 2025 7
Boolean Algebra
Terminology:
Literal: A variable or its complement A-Z a –z b’A’ a’
Product term: literals connected by • a.b
Sum term: literals connected by + a+b
January 4, 2025 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
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
January 4, 2025 9
Postulates of Two-Valued Boolean
Algebra
3. The commutative laws - x+y = y+x, x·y = y·x
4. The distributive laws
y+ x. x. (x . y)+(x .
x y z x.z
z (y+z) y 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
January 4, 2025 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’=0 . 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
January 4, 2025 11
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.
January 4, 2025 12
Basic Theorems
January 4, 2025 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 !
January 4, 2025 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.x=x
= (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
January 4, 2025 15
Proof of x·x=x
Similar to previous Huntington postulates:
proof
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
Th. 1: (a) x+x=x (b) x.x=x
January 4, 2025 16
Proof of x+1=1
Theorem 2(a): x + 1 = 1 Huntington postulates:
January 4, 2025 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
= x (1 + y) 4(a) Post. 3: (a) x+y=y+x, (b) x·y=y·x
= x (y + 1) 3(a) Post. 4: (a) x(y+z) = xy+xz,
=x.1 Th 2(a) (b) x+yz = (x+y)(x+z)
=x 2(b) Post. 5: (a) x+x’=1, (b) x·x’=0
Th. 1: (a) x+x=x
Theorem 6(b): x (x + y) = x by duality
By means of truth table (another way to proof )
x y xy x+x
y
0 0 0 0
0 1 0 0
1 0 0 1
1 1 1 1
January 4, 2025 18
DeMorgan’s Theorem
Theorem 5(a): (x + y)’ = x’y’
Theorem 5(b): (xy)’ = x’ + y’
By means of truth table
January 4, 2025 19
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 + 1.yz = xy + x’z + (x+x’)yz
= xy + x’z + xyz + x’yz
= (xy + xyz) + (x’z + x’zy)
=xy(1+z)+x’z(1+y) = xy.1+ x’z.1
= xy + x’z
QED (2 true by duality).
January 4, 2025 20
Operator Precedence
The operator precedence for evaluating Boolean
Expression is
Parentheses
NOT
AND
OR
Examples
x y' + z
(x y + z)'
January 4, 2025 21
Boolean Functions
A Boolean function
Binary variables
Binary operators OR and AND
Unary operator NOT
Parentheses
Equal sign
Examples
F1= x y z’ here F1=1 if x=1,y=1,z’=1 otherwise F=0.
F2 = x + y'z
F3 = x' y' z + x' y z + x y'
F4 = x y' + x’ z
These above all Boolean function represented as an
algebraic expression can represented in a truth table.
January 4, 2025 22
Boolean Functions
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
January 4, 2025 23
Boolean Functions
X Y Z X’ Y’ Xy’ X’z X’z+xy’
0 0 0 1 1 0 0 0
0 0 1 1 1 0 1 1
0 1 0 1 0 0 0 0
0 1 1 1 0 0 1 1
1 0 0 0 1 1 0 1
1 0 1 0 1 1 0 1
1 1 0 0 0 0 0 0
1 1 1 0 0 0 0 0
0 0 1 1 1 1 0 0 1
0 1 0 1 0 0 0 0 0
0 1 1 1 0 0 1 0 1
1 0 0 0 1 0 0 1 1
1 0 1 0 1 0 0 1 1
1 1 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0
F2 = x + y'z
F4 = x y' + x' z
January 4, 2025 26
Algebraic Manipulation
To minimize Boolean expressions
Literal: a primed (0) or unprimed (1) 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)
January 4, 2025 27
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'
January 4, 2025 28
Examples
Example 2.2
Find the complement of F1=x’yz’+x’y’z and
F2=x(y’z’+yz) by applying De Morgan’s theorem as
many times as necessary.
F1' = (x'yz' + x'y'z)’
= (x'yz')' (x'y'z)’ (Demorgan’s )
= (x+y'+z) (x+y+z’) (demorgan’s) (xy’z’ +xyz)’
F2' = [x(y'z'+yz)]’
= x' + (y'z'+yz)’
= x' + (y'z')' (yz)‘
= x' + (y+z) (y'+z’) …………………
=x’+yy’+yz’+zy’+zz’ (x’+y+z)(x’+y’+z’) = x’+(y+z)(y’+z’)
= x' + yz‘+y’z x’+(y+z)(y’+z’)
January 4, 2025 29
Examples
Example 2.3: complement of F1 and F2 function of
previous example by Taking 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'
January 4, 2025 30
Exercise
Simplify the following Boolean function to a minimum
number of literals.
1) xy + xy’ = x(y+y’) = x
2) xyz+x’y+xyz’ =xy(z+z’)+x’y = xy +x’y =y(x+x’) =y
3) zx +zx’y
4) Y(wz’ + wz) +xy
5) ABC + A’B’C + A’BC+ABC’ + A’B’C’ to five literals
=AB(C+C’)+A’B’(C+C’)+A’BC
=AB+A’B’+A’BC (c+c’=1)
=A’B’+B(A+A’C)
=A’B’+B((A+A’)(A+C)) (distributive)
=A’B’ + B(A+C) (a+a’=1)
Implement above expression using logic gates.
January 4, 2025
Exercise
2) (A+C+D)(A+C+D’)(A+C’+D)(A+B’) to four literals.
= (ACD)+(ACD’)+(AC’D)+(AB’) (DUAL)
= AD(C+C’)+A(CD’+B’)
= AD +A(CD’+B’)
= A(D+CD’) +AB’
=A(D+D’)(D+C) +AB’
=A(C+D)+AB’
= A(C+D) +AB’
=A(B’+C +D)
=A+B’CD (DUAL)
3) [(CD)’+A]’+A+CD+AB
January 4, 2025
Exercise
2) (A+C+D)(A+C+D’)(A+C’+D)(A+B’) to four literals.
= (A+C)(A+C’+D)(A+B’)
= (AA+AC’+AD+AC+CC’+CD)(A+B’)
=(A+AC’+AD+AC+CD)(A+B’)
=(A+A+AD+CD)(A+B’)
=(A(1+1+D)+CD)(A+B’)
=A+CD(A+B’)
=A+ACD+B’CD
=A(1+CD)+B’CD
=A+B’CD
January 4, 2025
Exercise
3) [(CD)’+A]’+A+CD+AB
=(CD)(A’)+A+CD+AB
CD(A’+1)+A+AB
=CD+A(1+B)
=CD+A
(x+y)’ = x’.y’
(xy)’ =x’+y’
(x’y’+z)’= (x+y).z’ de-morgan’s
3) [(AB)’A][(AB)’B] =1
4) AB’+C’D’ =(A’+B)(C+D)
January 4, 2025
Exercise
([(AB)’A][(AB)’B])’
=((AB)’A)’ +((AB)’B)’
=((A’+B’)’+A’)+((A’+B’)’+B’)
=AB+A’+AB+B’
=AB+A’+B’
=(A+A’)(B+A’)+B’
=B+A’+B’
=1+A’
=1
January 4, 2025
Exercise
2) B’D+A’BC’ + ACD +A’BC x+xy =x
= (B’D+A’BC’ + ACD +A’BC)’
=(B+D’)(A+B’+C)(A’+C’+D’)(A+B’+C’)
=(BA+BC+AD’+D’B’+CD’)
(A’B’+A’C’+C’A+C’B’+C’+D’A+B’D’+C’D’)
=(BA+BC+AD’+D’B’+CD’)
(A’B’+AD’+B’D+AC’+A’C’+D’C’+C’)
=(BA+BC+AD’+D’B’+CD’)(A’B’+AD’+B’D+AC’+A’C’+C’)
=(BA+BC+AD’+D’B’+CD’)(A’B’+AD’+B’D+AC’+C’)
=(BA+BC+AD’+D’B’+CD’)(A’B’+AD’+B’D+C’)
=ABD’+ABC’+ABCD’+AD’+AC’D’+A’B’D’+AB’D’+B’C’D’
+A’B’CD’+ACD’
= January 4, 2025
Exercise
==ABD’+ABC’+ABCD’+AD’+AC’D’+A’B’D’+AB’D’+B’C’D’
+A’B’CD’+ACD’
=ABD’+ABC’+ABCD’+AD’+AC’D’+B’D’+B’C’D’
+A’B’CD’+ACD’
=ABD’+ABC’+ABCD’+AD’+AC’D’+B’D’ +A’B’CD’+ACD’
=ABD’+ABC’+ABCD’+AD’+AC’D’+B’D’+ACD’
=ABD’+ABC’+ABCD’+AD’+AD’+B’D’
=ABD’+ABC’+ABCD’+AD’+B’D’
=ABD’+ABC’+AD’+AD’+B’D’
=ABD’+ABC’+AD’+B’D’
=B’D’+AD’+ABC’
=B’D’+A(D’+BC’)……………….FINAL RESULT
January 4, 2025
Exercise
Reduce the following Boolean expressions:
1) AABBC === ABC
2) 2) ABB’AC==== 0
3) 3) P+P+P+P===P
4) 4) 0+P+Q+1== 0+Q+1=0+1=1
5) 5) P+Q+R+R+R’====1
6) AB+A(B+C)+B’(B+D) ===AB+AC+B’D
7) (X+Y+Z)(X’+Y’+X’)X ==XY’ +XY’Z =XY’
8) AB+(AC)’+AB’C(AB+C)=== AB+A’+C’+AB’C
=A(B+B’C)+A’+C’ = A(B+C)+A’+C’ = AB+AC+A’+C’
=(A+A’)(B+A’)+(A+C’)(C+C’)=(A’+B)+(A+C’)
9)Verify by the truth table method.
A+A’B+AB =A+B
January 4, 2025
Exercise
AB+(AC)’+AB’C(AB+C)
\= AB+A’+C’+AB’CAB+AB’CC
=AB+A’+C’+AB’C
=A(B+B’C)+A’+C’
= A(B+B’)(B+C)+A’+C’
= AB+AC+A’+C’
=(AB+A’)+(AC+C’)
=(A+A’)(B+A’) +(C+C’)(A+C’)
=(A+A’)(B+A’)+(A+C’)(C+C’)=(A’+B)+(A+C’)
9)Verify by the truth table method.
A+A’B+AB =A+B
F=x’yz’+x’yz+xyz’+xyz
January 4, 2025
Exercise
F= (xy+x’y’+y’z)
Implement it with AND, OR and NOT gates
Implement it with only OR and NOT gates.
Implement it with only AND and not gates.
January 4, 2025
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/minterms
n variables con be combined to form 2n minterms.
X=1 and x’=0 xyz= 111
A maxterm (standard sums): an OR term
It is also call a standard sum/maxterms
2n maxterms. For n literals x+y+z 000
X+y,x’+y,x+y’,x’+y’ x=0 and x’=1
January 4, 2025 42
Minterms and Maxterms
Each maxterm is the complement of its corresponding
minterm, and vice versa.
January 4, 2025 43
Minterms and Maxterms
An Boolean function can be expressed by
A truth table
Sum of minterms x y z= 1 1 1= xyz ====1
f1 = x'y'z + xy'z' + xyz = m1 + m4 +m7 (Minterms)= sum of
product =sop== Boolean expression of the minterms
f2 = x'yz+ xy'z + xyz'+xyz = m3 + m5 +m6 + m7 (Minterms)
Boolean function form by forming a minterm for each combination of
those terms.
January 4, 2025 44
Minterms and Maxterms
The complement of a Boolean f1 = m1 + m4 +m7
The minterms that produce a 0
f1' = m0 + m2 +m3 + m5 + m6 = (x'y'z'+x'yz'+x'yz+xy'z+xyz’)’
f1 = (f1')’ product of maxterms/OR
f2 = (x+y+z)(x+y+z')(x+y'+z)(x'+y+z)=M0M1M2M4
Any Boolean function can be expressed as
A sum of minterms (“sum” meaning the ORing of terms).
A product of maxterms (“product” meaning the ANDing of
terms).
Both boolean functions are said to be in Canonical form.
January 4, 2025 45
Sum of Minterms
Sum of minterms: there are 2n minterms and 22n
combinations of function 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
January 4, 2025
46
Sum of Minterms
Sum of minterms: n-literals , 2n minterms ,
22n combinations of function
Example 2.4: express F = A+B’C as a sum of minterms.
F=A+B’C =A(B+B’)(C+C’) +(A+A’)B’C
=ABC+ABC’+AB’C+AB’C’+AB’C+A’B’C
F= ABC+ABC’+AB’C+AB’C’+A’B’C
=ACB+AC’B+ACB’+AC’B’+A’CB’
=111+110+101+100+001
=m1+m4+m5+m6+m7
F(A, C,B) = S(1, 4, 5, 6, 7)
January 4, 2025 47
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
maxterms.
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’)
X+z=x+yy’+z=(x+y+z)(x+y’+z)
Y+z=xx’+y+z=(x+y+z)(x’+y+z)
F = (x+y+z)(x+y'+z)(x'+y+z)(x'+y+z') = M0M2M4M5
(0 0 0)(010)(100)(101) =M0M2M4M5
=
F(x, y, z) = P(0, 2, 4, 5)
January 4, 2025 48
sum of minterms and product of maxterms
F(A,B,C,D)=D(A’+B)+B’D
Sum of minterm:
DA’+DB+B’D = A’(B+B’)(C+C’)D +(A+A’)B(C+C’)D+(A+A’)
(C+C’)B’D
=A’(BC+BC’+B’C+B’C’)D + (AB+A’B)(CD+C’D)+
(AC+AC’+A’C+A’C’)B’D
=A’BCD+A’BC’D+A’B’CD+A’B’C’D+ABCD+ABC’D+A’BCD
+A’BC’D+AB’CD+AB’C’D+A’BCD+A’B’C’D
=0111+0101+0011+0001+1111+1101+0111+0101+1011+1
001+0111+0001
=m7+m5+m3+m1+m15+m13+m11+m9 =
F=P(1,3,5,7,9,11,13,15)
F’=P(0,2,4,6,8,10,12,14) complement of POS=SOP
January 4, 2025 49
sum of minterms and product of maxterms
D(A’+B)+B’D= DA’+DB+B’D =D
F’=P(0,2,4,6,8,10,12,14)
=(A+B+C+D)(A+B+C’+D)(A+B’+C+D)
(A+B+C+D)(A+B+C’+D)(A+B’+C+D)
AA’+BB’+CC’+D
=(A+B+CC’+D)(A+B’+CC’+D)(A’+B+CC’+D)(A’+B’+CC’+D)
=(A+B+C+D)(A+B+C’+D)(A+B’+C+D)(A+B’+C’+D)
(A’+B+C+D)(A’+B+C’+D)(A’+B’+C+D)(A’+B’+C’+D)
=M0 M2 M4 M8M10 M14 M12M6
January 4, 2025 50
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) = m1+m4+m5+m6+m7
Thus, F'(A, B, C) = S(0, 2, 3) = m0+m2+m3
By DeMorgan's theorem (F’)’ =F (F)’ =F’
F(A, B, C) = P(0, 2, 3)
F'(A, B, C) =P (1, 4, 5, 6, 7)
mj' = Mj
Sum of minterms = product of maxterms
Interchange the symbols S and P and list those numbers
missing from the original form
S of 1's
P of 0's
January 4, 2025 51
Example
F = xy + xz
F(x, y, z) = S(1, 3, 6, 7)
F(x, y, z) = P (0, 2, 4, 6)
January 4, 2025 52
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’
Standard form is minimization of canonical form.
Standard form is useful when to implement using logic
gates.
Canonical form is useful when to implement using table.
January 4, 2025 53
Implementation
Two-level implementation
Multi-level implementation
January 4, 2025 54
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.
All the new symbols except for the exclusive-OR symbol are
not in common use by digital designers.
January 4, 2025 55
Boolean Expressions
January 4, 2025 56
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.
January 4, 2025 57
Standard Gates
Consider the 16 functions in Table 2.8 (slide 33)
Two are equal to a constant (F0 and F15).
Four functions with unary operations complement(F10,F12)
and transfer(F3,F5).
The other Ten with binary operations : AND (F1), OR (F7),
NAND (F14), NOR (F8), XOR (F6), and equivalence (XNOR) (F9)
,inhibition(F2,F4), and implication(F11,F13).
Complement: inverter.
Transfer: buffer (increasing drive strength).
Equivalence: XNOR.
January 4, 2025 58
Summary of Logic Gates
January 4, 2025
Figure 2.5 Digital logic gates
59
Summary of Logic Gates
January 4, 2025 61
Multiple Inputs
NAND and NOR are commutative but not associative → they
are not extendable.
(x↓y) =(y ↓x) ---NOR
(x↑y) =(y ↑ x) ---NAND
(x ↓y) ↓z= [(x+y)’+z]’ = (x+y)z’ =xz’+yz’
x ↓(y ↓z)= [x+(y+z)’]’ = x’(y+z) = x’y + x’z
X ↑(Y ↑Z) =
Figure 2.6 Demonstrating the nonassociativity of the NOR operator;
(x ↓ y) ↓ z ≠ x ↓(y ↓ z)
(X ↑Y) ↑Z =
January 4, 2025 62
Multiple Inputs
NAND and NOR are commutative but not associative → they
are not extendable.
January 4, 2025
Figure 2.8 3-input XOR gate
65
Positive and Negative Logic
Positive and Negative Logic
Two signal values <=> two logic
values
Positive logic: H=1; L=0
Negative logic: H=0; L=1
Consider a TTL gate
A positive logic AND gate
A negative logic OR gate
The positive logic is used in this
book
Figure
January 4, 2025 2.10 Demonstration of positive and negative logic
67
Positive and Negative Logic
Positive logic AND gate:
x Y Z
Negative Logic AND gate: (x’.y’)’
1 1 1
1 0 1
0 1 1
0 0 0
January 4, 2025 68
Positive and Negative Logic
Positive logic OR gate: x Y Z
(x+y)
0 0 0
0 1 1
1 0 1
1 1 1
Negative Logic OR gate:
POSITIVE LOGIC AND= x Y Z
(x’+y’)’
NEGATIVE LOGIC OR 1 1 1
1 0 0
POSITIVE LOGI OR= 0 1 0
0 0 0
NEGATIVE LOGIC AND
January 4, 2025 69
2.9 Integrated Circuits
Level of Integration
An IC (a chip)
Examples:
Small-scale Integration (SSI): < 10 gates
Medium-scale Integration (MSI): 10 ~ 100 gates
Large-scale Integration (LSI): 100 ~ xk gates
Very Large-scale Integration (VLSI): > xk gates
VLSI
Small size (compact size)
Low cost
Low power consumption
High reliability
High speed
January 4, 2025 70
Digital Logic Families
Digital logic families: circuit technology
TTL: transistor-transistor logic (dying?)
ECL: emitter-coupled logic (high speed, high power
consumption)
MOS: metal-oxide semiconductor (NMOS, high density)
CMOS: complementary MOS (low power)
BiCMOS: high speed, high density
January 4, 2025 71
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: it is the supplied power required to operate the
gate. This parameter is expressed in milliwatts and represents
the actual power dissipated in the gate.
Propagation delay: the average transition delay time for the
signal to propagate from input to output.
Noise margin: the minimum of external noise voltage that caused
an undesirable change in the circuit output.
January 4, 2025 72
CAD
CAD – Computer-Aided Design
Millions of transistors
Computer-based representation and aid
Automatic the design process
Design entry
Schematic capture
HDL – Hardware Description Language
Verilog, VHDL
Simulation
Physical realization
ASIC, FPGA, PLD
January 4, 2025 73
Chip Design
Why is it better to have more gates on a single chip?
Easier to build systems
Lower power consumption
Higher clock frequencies
1 0 1 1
1 1 0 1
1 1 1 1