0% found this document useful (0 votes)
20 views65 pages

(Lecture) DigialSystems Chap02 P1

Uploaded by

kangmin007
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views65 pages

(Lecture) DigialSystems Chap02 P1

Uploaded by

kangmin007
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 65

Digital Systems

School of Electrical Engineering


Korea University
Logic and Computer Design Fundamentals
Chapter 2 – Combinational
Logic Circuits
Part 1 – Gate Circuits and Boolean Equations
Overview
▪ Part 1 – Gate Circuits and Boolean
Equations
• Binary Logic and Gates
• Boolean Algebra
• Standard Forms

Chapter 2 - Part 1 3
Combinational Logic Circuits
▪ Digital systems consist of digital circuits
▪ Digital circuits are hardware components
that manipulate binary information
▪ Circuits are implemented using transistors
and semi-conductor devices
▪ A basic (digital) circuit is called a logic gate
• Transistor-based electronic circuits are modeled
using logic gates
▪ A logic gate performs a specific (mathematical)
logical operation
▪ The outputs of gates are connected to the inputs of other
gates to form a digital combinational logic circuit

Chapter 2 - Part 1 4
Boolean Algebra
▪ To analyze and design digital combinational logic
circuits, a mathematical system is needed
▪ The mathematical system is called Boolean
Algebra
• George Boole published a book in 1854 introducing the
mathematical theory of logic
▪ Boolean Algebra is used to describe the
interconnection of digital gates and to design logic
circuits

Chapter 2 - Part 1 5
Binary Logic and Gates
▪ Boolean Algebra deals with binary variables and
their logical operations
• Binary variables take on one of two discrete values
• Logical operations include three basic logic functions
AND, OR and NOT
• Logic gates implement logic functions
• Boolean Algebra: a useful mathematical system for
specifying and transforming logic functions
▪ We study Boolean algebra as a foundation for
designing and analyzing digital systems!

Chapter 2 - Part 1 6
Binary Variables
▪ Recall that the two binary values have different
names:
• True/False
• On/Off
• Yes/No
• 1/0
▪ We use 1 and 0 to denote the two values
▪ Variable identifier examples:
• A, B, C, …, X, Y, Z, or a, b, c, …, x, y, z

Chapter 2 - Part 1 7
Logical Operations
▪ The three basic logical operations are:
• AND
• OR
• NOT

Chapter 2 - Part 1 8
Logical Operations: AND
▪ AND is denoted by a dot (·)
• 𝑌 = 𝐴 ∙ 𝐵 is read “Y is equal to A AND B”
• Y = 1 if and only if A = 1 and B = 1, otherwise Y = 0
• Similar to binary multiplication

AND
0 ·0 = 0
0 ·1 = 0
1 ·0 = 0
1 ·1 = 1
Chapter 2 - Part 1 9
Logical Operations: OR
▪ OR is denoted by a plus (+)
• 𝑧 = 𝑥 + y is read “z is equal to x OR y”
• z = 1 if x = 1 or y = 1, or if both x = 1 and y = 1
• z = 0 if and only if x = 0 and y = 0
• Similar to binary addition
OR
0+0=0
0+1=1
Note:
The statement: 1 + 1 = 2
1+0=1
(read “one plus one equals two”) 1+1=1
is not the same as 1 + 1 = 1
(read “1 or 1 equals 1”) Chapter 2 - Part 1 10
Logical Operations: NOT
▪ NOT is by an overbar ( ¯ ), a single quote mark (')
after, or (~) before the variable: 𝐴,ҧ 𝐴′, ~𝐴
• 𝑋 = 𝐴ҧ is read “X is equal to NOT A” (complement of A)
• X = 1 if A = 0, X = 0 if A = 1
• a.k.a., complement operation
NOT
0=1
1=0

Chapter 2 - Part 1 11
Truth Table
▪ Truth table - a tabular listing of the values of a function
for all possible combinations of values on its arguments
▪ Example: Truth tables for the basic logic operations:

AND OR NOT
X Y Z = X·Y X Y Z = X+Y X Z=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
Chapter 2 - Part 1 12
Logic Gates
▪ Logic operations can be implemented using a
logic gate
• Logic gates accept binary signals and generate binary
signals
▪ Logic gates have special symbols:

Chapter 2 - Part 1 13
Logic Gates Behavior

▪ Waveform behavior in time as follows:

Chapter 2 - Part 1 14
Gate Delay
▪ In actual physical gates, if one or more input
changes causes the output to change, the output
change does not occur instantaneously
▪ The delay between an input change(s) and the
resulting output change is the gate delay denoted
by tG:
1
Input
0 tG = 0.3 ns
tG tG
Output 1
0
0 0.5 1 1.5 Time (ns)
Chapter 2 - Part 1 15
Gates with More Than Two Inputs

Chapter 2 - Part 1 16
Boolean Function
▪ We can use basic operations to form complex
Boolean functions, e.g.,:
𝐹(𝑋, 𝑌, 𝑍) = 𝑋 + 𝑌ത ∙ 𝑍
Boolean
• F is the name of the function Expression
• X, Y, Z are the input variables
(Listing the inputs is optional)
• Boolean expression: binary variables, constants (0, 1),
logic operation symbols, and parenthesis
• Literals: a binary variable or its complement
ത 𝑍
▪ F has 3 literals: 𝑋, 𝑌,

Chapter 2 - Part 1 17
Boolean Operator Precedence
▪ The order of evaluation in a Boolean expression
is:
1. Parentheses
2. NOT
3. AND
4. OR
• Consequence: Parentheses appear around OR
expressions
▪ Example: F = A(B + C)(C + D)
• May omit ∙ (AND)

Chapter 2 - Part 1 18
Logic Diagrams and Expressions
Truth Table Equation
X Y Z F = X + Y Z
0 0 0 0 F = X +Y Z
0 0 1 1
0 1 0 0 Logic Circuit Diagram
0 1 1 0 X
1 0 0 1
Y F
1 0 1 1
1 1 0 1 Z
1 1 1 1
▪ Boolean equation, truth table and logic diagram describe the
same function!
▪ Truth tables are unique; expressions and logic diagrams are not.
This gives flexibility in implementing functions
Chapter 2 - Part 1 19
Boolean Function Evaluation
F1 = xy z x y z F1 F2 F3 F4
F2 = x + yz 0 0 0 0 0
F3 = x y z + x y z + x y 0 0 1 0 0
F4 = x y + x z 0 1 0 0 1
0 1 1 0 0
1 0 0 0 1
1 0 1 0 1
1 1 0 1 1
1 1 1 0 1

Chapter 2 - Part 1 20
Boolean Algebra
Boolean Algebra
▪ Basic identities of Boolean algebra:

1-4: Existence of 0 and 1


5-6: Idempotence
7-8: Existence of complement
9: Involution

Chapter 2 - Part 1 22
DeMorgan’s Law
▪ 𝑋 + 𝑌 = 𝑋ത ∙ 𝑌ത 𝑋 ∙ 𝑌 = 𝑋ത + 𝑌ത

▪ Can be extended to three or more variables:


𝑋1 + 𝑋2 + ⋯ + 𝑋𝑛 = 𝑋1 ∙ 𝑋2 … 𝑋𝑛
𝑋1 𝑋2 … 𝑋𝑛 = 𝑋1 + 𝑋2 + ⋯ + 𝑋𝑛
Chapter 2 - Part 1 23
Boolean Algebra: Duality
▪ The dual of an algebraic expression is obtained by
interchanging + and · and interchanging 0’s and
1’s
▪ Do not exchange 𝑋 with 𝑋ത
▪ Example
ത 𝑍ҧ
• An expression: 𝑋𝑌
• Dual of the expression: 𝑋ത + 𝑌 + 𝑍ҧ
▪ If a Boolean expression is valid, its dual is also
valid

Chapter 2 - Part 1 24
Boolean Algebra: Duality Examples

▪ 𝐹 = 𝐴+𝐶 𝐵+0
▪ Dual 𝐹 =

▪ 𝐺 = 𝑋𝑌 + (𝑊 + 𝑍)
▪ Dual 𝐺 =

▪ 𝐻 = 𝐴𝐵 + 𝐴𝐶 + 𝐵𝐶
▪ Dual 𝐻 =

Chapter 2 - Part 1 25
Useful Theorems
▪ Minimization
𝑋 ∙ 𝑌 + 𝑋ത ∙ 𝑌 = 𝑌
▪ Absorption
𝑋+𝑋∙𝑌 =𝑋
▪ Simplification
𝑋 + 𝑋ത ∙ 𝑌 = 𝑋 + 𝑌
▪ Consensus
𝑋 ∙ 𝑌 + 𝑋ത ∙ 𝑍 + 𝑌 ∙ 𝑍 = 𝑋 ∙ 𝑌 + 𝑋ത ∙ 𝑍

Chapter 2 - Part 1 26
Useful Theorems: Duality
▪ Minimization
𝑋 ∙ 𝑌 + 𝑋ത ∙ 𝑌 = 𝑌 𝑋 + 𝑌 𝑋ത + 𝑌 = 𝑌
▪ Absorption
𝑋+𝑋∙𝑌 =𝑋 𝑋∙ 𝑋+𝑌 =𝑋
▪ Simplification
𝑋 + 𝑋ത ∙ 𝑌 = 𝑋 + 𝑌 𝑋 ∙ 𝑋ത + 𝑌 = 𝑋 ∙ 𝑌
▪ Consensus
𝑋 ∙ 𝑌 + 𝑋ത ∙ 𝑍 + 𝑌 ∙ 𝑍 = 𝑋 ∙ 𝑌 + 𝑋ത ∙ 𝑍
𝑋 + 𝑌 ∙ 𝑋ത + 𝑍 ∙ 𝑌 + 𝑍 = 𝑋 + 𝑌 𝑋ത + 𝑍

Chapter 2 - Part 1 27
Proof of Minimization Theorem
▪ 𝑋 ∙ 𝑌 + 𝑋ത ∙ 𝑌 = 𝑌 (𝑋 + 𝑌)(𝑋ത + 𝑌) = 𝑌

Proof Steps Justification (identity or theorem)


𝑋 ∙ 𝑌 + 𝑋ത ∙ 𝑌
= (𝑋ത + 𝑋) ∙ 𝑌 𝐴 𝐵 + 𝐶 = 𝐴𝐵 + 𝐴𝐶 (Distributive Law)

=1∙𝑌 𝐴 + 𝐴ҧ = 1

=𝑌 𝐴∙1=𝐴

Chapter 2 - Part 1 28
Proof of Absorption Theorem
▪ 𝑋+𝑋∙𝑌 =𝑋

Proof Steps Justification (identity or theorem)


𝑋+𝑋∙𝑌
=𝑋∙1+𝑋∙𝑌 𝐴=𝐴∙1

= 𝑋 ∙ (1 + 𝑌) 𝐴 ∙ 𝐵 + 𝐴 ∙ 𝐶 = 𝐴(𝐵 + 𝐶) (Distributive Law)

=𝑋 𝐴∙1=𝐴

Chapter 2 - Part 1 29
Proof of Consensus Theorem
ത + 𝑌𝑍 = 𝑋𝑌 + 𝑋𝑍
▪ 𝑋𝑌 + 𝑋𝑍 ത

Proof Steps Justification (identity or theorem)


ത + 𝑌𝑍
𝑋𝑌 + 𝑋𝑍
ത + 1 ∙ 𝑌𝑍
= 𝑋𝑌 + 𝑋𝑍 1∙𝐴=𝐴
ത + (𝑋 + 𝑋)
= 𝑋𝑌 + 𝑋𝑍 ത ∙ 𝑌𝑍 𝐴 + 𝐴ҧ =1
ത + 𝑋𝑌𝑍 + 𝑋𝑌𝑍
= 𝑋𝑌 + 𝑋𝑍 ത 𝐴 𝐵 + 𝐶 = 𝐴𝐵 + 𝐴𝐶 (Distributive Law)

= 𝑋𝑌 + 𝑋𝑌𝑍 + 𝑋𝑍ത + 𝑋𝑌𝑍


ത 𝐴 + 𝐵 = 𝐵 + 𝐴 (Commutative Law)
ത ∙ 1 + 𝑋𝑍𝑌
= 𝑋𝑌 ∙ 1 + 𝑋𝑌𝑍 + 𝑋𝑍 ത 𝐴 ∙ 1 = 𝐴, 𝐴 ∙ 𝐵 = 𝐵 ∙ 𝐴 (Commutative Law)

= 𝑋𝑌(1 + 𝑍) + 𝑋𝑍(1 + 𝑌) 𝐴 𝐵 + 𝐶 = 𝐴𝐵 + 𝐴𝐶 (Distributive Law)
ത ∙ 1 = 𝑋𝑌 + 𝑋𝑍
= 𝑋𝑌 ∙ 1 + 𝑋𝑍 ത 𝐴∙1=𝐴

Chapter 2 - Part 1 30
Algebraic Manipulation
▪ (𝑋 + 𝑌)𝑍 + 𝑋𝑌ത = 𝑌(𝑋
ത + 𝑍)

Proof Steps Justification (identity or theorem)


(𝑋 + 𝑌)𝑍 + 𝑋𝑌ത
= 𝑋ത 𝑌𝑍
ത + 𝑋𝑌ത 𝐴 + 𝐵 = 𝐴ҧ𝐵ത (DeMorgan’s Law)

= 𝑌ത 𝑋𝑍
ത + 𝑌𝑋 ത 𝐴 + 𝐵 = 𝐵 + 𝐴 (Commutative Law)

ത 𝑋𝑍
= 𝑌( ത + 𝑋) 𝐴 𝐵 + 𝐶 = 𝐴𝐵 + 𝐴𝐶 (Distributive Law)

ത 𝑋ത + 𝑋)(𝑍 + 𝑋)
= 𝑌( 𝐴 + 𝐵𝐶 = (𝐴 + 𝐵)(𝐴 + 𝐶) (Distributive Law)

= 𝑌ത ∙ 1 ∙ (𝑍 + 𝑋) 𝐴 + 𝐴ҧ =1
ത + 𝑍)
= 𝑌(𝑋 1 ∙ 𝐴 = 𝐴, 𝐴 + 𝐵 = 𝐵 + 𝐴 (Commutative Law)

Chapter 2 - Part 1 31
Expression Simplification
▪ Simplify to contain the smallest number of literals
(complemented and uncomplemented variables):
ҧ
AB + 𝐴𝐶𝐷 + 𝐴𝐵𝐷 ҧ ҧ 𝐷
+ 𝐴𝐶 ഥ + 𝐴𝐵𝐶𝐷
= 𝐴𝐵 + 𝐴𝐵𝐶𝐷 + 𝐴𝐶𝐷 ҧ + 𝐴𝐶 ҧ 𝐷 ҧ
ഥ + 𝐴𝐵𝐷
= 𝐴𝐵 + 𝐴𝐵 𝐶𝐷 + 𝐴𝐶 ҧ 𝐷+𝐷 ഥ + 𝐴𝐵𝐷ҧ
= 𝐴𝐵 + 𝐴𝐶 ҧ + 𝐴𝐵𝐷
ҧ
= 𝐵 𝐴 + 𝐴𝐷 ҧ + 𝐴𝐶 ҧ
= 𝐵 𝐴 + 𝐷 + 𝐴𝐶 ҧ 5 literals

Chapter 2 - Part 1 32
Complementing Functions
▪ The complement of a function is obtained from an
interchange of 1s to 0s and 0s to 1s in the truth
table
𝐹 𝑋, 𝑌, 𝑍 = 𝑋ത + 𝑋𝑌𝑍ҧ
X Y Z F X Y Z F’
0 0 0 1 0 0 0 0
0 0 1 1 0 0 1 0
0 1 0 1 0 1 0 0
0 1 1 1 0 1 1 0
1 0 0 0 1 0 0 1
1 0 1 0 1 0 1 1
1 1 0 1 1 1 0 0
1 1 1 0 1 1 1 1
Chapter 2 - Part 1 33
Complementing Functions

▪ Use DeMorgan's Theorem to complement a


function:
1. Interchange AND and OR operators
2. Complement each constant value and literal
▪ Example: Complement F = 𝑥𝑦 ҧ 𝑧ҧ + 𝑥 𝑦ത𝑧ҧ
𝐹ത = (𝑥 + 𝑦ത + 𝑧)(𝑥ҧ + 𝑦 + 𝑧)
▪ Example: Complement G = 𝑎ത + 𝑏𝑐 𝑑ҧ + 𝑒
𝐺ҧ = 𝑎 𝑏ത + 𝑐ҧ + 𝑑 𝑒ҧ

Chapter 2 - Part 1 34
Implementation of Boolean Function with Gates

Chapter 2 - Part 1 35
Standard Forms
Standard Forms
▪ A Boolean function can be written in many ways
• Some ways may be more useful than others
▪ There are certain ways of writing the function that
are considered to be standard forms
▪ Standard forms contains
ത → AND operation among three
• Product terms: X𝑌𝑍
literals
• Sum terms: X + 𝑌ത + 𝑍 → OR operation among three
literals

Chapter 2 - Part 1 37
Minterms
▪ Minterms are AND terms with every variable present in
exactly once either normal or complemented form
▪ Given that each binary variable may appear normal
ത there are 2n minterms
(e.g., 𝑋) or complemented (e.g., 𝑋),
for n variables
▪ Example: Two variables (X and Y) produce
22 = 4 combinations:
XY (both normal)
𝑋𝑌ത (X normal, Y complemented)

𝑋𝑌 (X complemented, Y normal)
𝑋ത 𝑌ത (both complemented)
▪ Thus there are four minterms of two variables

Chapter 2 - Part 1 38
Maxterms
▪ Maxterms are OR terms with every variable present in
normal or complemented form
▪ Given that each binary variable may appear normal
ത there are 2n maxterms
(e.g., 𝑋) or complemented (e.g., 𝑋),
for n variables
▪ Example: Two variables (X and Y) produce
22 = 4 combinations:
X+Y (both normal)
𝑋 + 𝑌ത (X normal, Y complemented)
𝑋ത + 𝑌 (X complemented, Y normal)
𝑋ത + 𝑌ത (both complemented)

Chapter 2 - Part 1 39
Maxterms and Minterms
▪ Examples: Two variable minterms and maxterms

▪ The index above is important for describing which


variables in the terms are true and which are
complemented
Chapter 2 - Part 1 40
Standard Order
▪ Minterms and maxterms are designated with a
subscript
▪ The subscript is a number, corresponding to a
binary pattern
▪ The bits in the pattern represent the complemented
or normal state of each variable listed in a
standard order
▪ All variables will be present in a minterm or
maxterm and will be listed in the same order
(usually alphabetically)

Chapter 2 - Part 1 41
Standard Order
▪ Example: For variables a, b, c:
• Maxterms: (𝑎 + 𝑏 + 𝑐), ҧ (𝑎 + 𝑏 + 𝑐)
• Terms: (𝑏 + 𝑎 + 𝑐), a 𝑐ҧ 𝑏, and (𝑐 + 𝑏 + 𝑎) are NOT in
standard order
• Minterms: a 𝑏ത 𝑐, a 𝑏 𝑐, 𝑎ത 𝑏ത 𝑐
• Terms: a + c , 𝑏ത 𝑐, and (𝑎ത + 𝑏) do not contain all
variables

Chapter 2 - Part 1 42
Purpose of the Index
▪ The index for the minterm or maxterm, expressed
as a binary number, is used to determine whether
the variable is shown in the normal form or
complemented form
▪ For Minterms:
• “1” means the variable is “Not Complemented” and
• “0” means the variable is “Complemented”
▪ For Maxterms:
• “0” means the variable is “Not Complemented” and
• “1” means the variable is “Complemented”

Chapter 2 - Part 1 43
Index Example in Three Variables
▪ Three variables: X, Y, and Z
• The standard order is X, then Y, then Z
▪ The Index 0 (base 10) = 000 (base 2) for three
variables
ത 𝑌,
• minterm 0 (𝑋, ത 𝑍)ҧ : All three variables are
complemented
• Maxterm 0 (𝑋, 𝑌, 𝑍) : no variables are complemented
▪ Minterm 0, called m0 is 𝑋ത 𝑌ത 𝑍ҧ
▪ Maxterm 0, called M0 is (X + Y + Z)
▪ Minterm 6 ?
▪ Maxterm 6 ? Chapter 2 - Part 1 44
Index Examples – Four Variables

Index i Binary Minterm Maxterm


Pattern mi Mi
0 0000 𝑎ത 𝑏ത 𝑐ҧ𝑑ҧ 𝑎+𝑏+𝑐+𝑑
1 0001 𝑎ത 𝑏ത 𝑐𝑑
ҧ
3 0011 𝑎 + 𝑏 + 𝑐ҧ + 𝑑ҧ
5 0101 𝑎𝑏
ത 𝑐𝑑
ҧ 𝑎 + 𝑏ത + 𝑐 + 𝑑ҧ
7 0111 𝑎 + 𝑏ത + 𝑐ҧ + 𝑑ҧ
10 1010 ത 𝑑ҧ
𝑎𝑏𝑐 𝑎ത + 𝑏 + 𝑐ҧ + 𝑑
13 1101 𝑎𝑏𝑐𝑑ҧ
15 1111 𝑎𝑏𝑐𝑑 𝑎ത + 𝑏ത + 𝑐ҧ + 𝑑ҧ

Chapter 2 - Part 1 45
Minterm and Maxterm Relationship

▪ Review: DeMorgan's Theorem


𝑥 ∙ 𝑦 = 𝑥ҧ + 𝑦ത and 𝑥 + 𝑦 = 𝑥ҧ ∙ 𝑦ത
▪ Two-variable example:
𝑀2 = 𝑥ҧ + 𝑦 and 𝑚2 = 𝑥 ∙ 𝑦ത
Thus 𝑀2 is the complement of 𝑚2 and vice-versa
▪ Since DeMorgan's Theorem holds for n variables,
the above holds for terms of n variables
▪ giving:
𝑀𝑖 = 𝑚𝑖 and 𝑚𝑖 = 𝑀𝑖
Thus 𝑀𝑖 is the complement of 𝑚𝑖

Chapter 2 - Part 1 46
Function Tables for Both
▪ Minterms of 2 variables Maxterms of 2 variables
xy m0 m1 m2 m3 x y M0 M1 M2 M3
00 1 0 0 0 00 0 1 1 1
01 0 1 0 0 01 1 0 1 1
10 0 0 1 0 10 1 1 0 1
11 0 0 0 1 11 1 1 1 0

▪ 𝑚2 = 𝑥 𝑦ത : 𝑚2 defines a Boolean function has 1 for the


combination 𝑥𝑦ത and 0 for all others
▪ Each column in the maxterm function table is the
complement of the column in the minterm function table
since 𝑀𝑖 is the complement of 𝑚𝑖

Chapter 2 - Part 1 47
Observations
▪ In the function tables:
• Each minterm has one and only one 1 present in the 2n terms,
All other entries are 0 (a minimum of 1s)
• Each maxterm has one and only one 0 present in the 2n terms,
All other entries are 1 (a maximum of 1s)
▪ We can implement any function by "ORing" the minterms
corresponding to "1" entries in the function table
→ These are called the minterms of the function
▪ We can implement any function by "ANDing" the
maxterms corresponding to "0" entries in the function table
→ These are called the maxterms of the function
▪ This gives us two forms for stating any Boolean function
• Sum of Minterms (SOM)
• Product of Maxterms (POM)
Chapter 2 - Part 1 48
Minterm Function Example
▪ Example: Find 𝐹1 = 𝑚1 + 𝑚4 + 𝑚7
𝐹1 = 𝑥ҧ 𝑦𝑧
ത + 𝑥 𝑦ത𝑧ҧ + 𝑥𝑦𝑧
x y z index m1 + m4 + m7 = F1
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7
Chapter 2 - Part 1 49
Minterm Function Example
▪ 𝐹 𝐴, 𝐵, 𝐶, 𝐷, 𝐸 = 𝑚2 + 𝑚9 + 𝑚17 + 𝑚23
▪ 𝐹 𝐴, 𝐵, 𝐶, 𝐷, 𝐸

Chapter 2 - Part 1 50
Maxterm Function Example
▪ Example: Implement 𝐹1 in maxterms:
𝐹1 = 𝑀0 ∙ 𝑀2 ∙ 𝑀3 ∙ 𝑀5 ∙ 𝑀6
𝐹1 = 𝑥 + 𝑦 + 𝑧 ∙ 𝑥 + 𝑦ത + 𝑧 ∙ 𝑥 + 𝑦ത + 𝑧ҧ
∙ 𝑥ҧ + 𝑦 + 𝑧ҧ ∙ 𝑥ҧ + 𝑦ത + 𝑧

Chapter 2 - Part 1 51
Maxterm Function Example
▪ 𝐹 𝐴, 𝐵, 𝐶, 𝐷 = 𝑀3 ∙ 𝑀8 ∙ 𝑀11 ∙ 𝑀14
▪ 𝐹 𝐴, 𝐵, 𝐶, 𝐷

Chapter 2 - Part 1 52
Canonical Sum of Minterms
▪ Any Boolean function can be expressed as
a Sum of Minterms (SOM)
• For the function table, the minterms used are the terms
corresponding to the 1's
• For expressions, expand all terms first to explicitly list
all minterms
• Do this by “ANDing” any term missing a variable v
with a term ( 𝑣 + 𝑣ҧ )
▪ Example: Implement f = 𝑥 + 𝑥ҧ 𝑦ത as a sum of
minterms
First expand terms: f = 𝑥 y + 𝑦ത + 𝑥ҧ 𝑦ത
Then distribute terms: f = 𝑥𝑦 + 𝑥𝑦ത + 𝑥ҧ 𝑦ത
Express as sum of minterms: f = 𝑚3 + 𝑚2 + 𝑚0
Chapter 2 - Part 1 53
SOM Example
▪ Example: 𝐹 = 𝐴 + 𝐵𝐶 ത
▪ There are three variables, A, B, and C which we
take to be the standard order.
▪ Expanding the terms with missing variables:
𝐹 = 𝐴 𝐵 + 𝐵ത 𝐶 + 𝐶ҧ + 𝐴 + 𝐴ҧ 𝐵𝐶

▪ Collect terms (removing all but one of duplicate
terms):
= 𝐴𝐵𝐶 + 𝐴𝐵𝐶ҧ + 𝐴𝐵𝐶
ത + 𝐴𝐵ത 𝐶ҧ + 𝐴𝐵𝐶
ത + 𝐴ҧ𝐵𝐶

= 𝐴𝐵𝐶 + 𝐴𝐵𝐶ҧ + 𝐴𝐵𝐶
ത + 𝐴𝐵ത 𝐶ҧ + 𝐴ҧ𝐵𝐶

▪ Express as SOM:
= 𝑚7 + 𝑚6 + 𝑚5 + 𝑚4 + 𝑚1
= 𝑚1 + 𝑚4 + 𝑚5 + 𝑚6 + 𝑚7
Chapter 2 - Part 1 54
Shorthand SOM Form
▪ From the previous example, we started with:

F = 𝐴 + 𝐵𝐶
▪ We ended up with:
F = 𝑚1 + 𝑚4 + 𝑚5 + 𝑚6 + 𝑚7
▪ This can be denoted in the formal shorthand:
F(A, B, C) = Σ𝑚 (1,4,5,6,7)
▪ Note that we explicitly show the standard
variables in order and drop the “m” designators

Chapter 2 - Part 1 55
Canonical Product of Maxterms
▪ Any Boolean Function can be expressed as a
Product of Maxterms (POM)
• For the function table, the maxterms used are the terms
corresponding to the 0's
• For an expression, expand all terms first to explicitly
list all maxterms
• Do this by first applying the second distributive law,
“ORing” terms missing variable v with a term equal to
𝑣 ∙ 𝑣ҧ and then applying the distributive law again

Chapter 2 - Part 1 56
Canonical Product of Maxterms
▪ Example: Convert to product of maxterms:
f 𝑥, 𝑦, 𝑧 = 𝑥 + 𝑥ҧ 𝑦ത
Apply the distributive law:
𝑥 + 𝑥ҧ 𝑦ത = 𝑥 + 𝑥ҧ 𝑥 + 𝑦ത
= 1 ∙ 𝑥 + 𝑦ത = 𝑥 + 𝑦ത
Add missing variable z:
𝑥 + 𝑦ത + 𝑧 ∙ 𝑧ҧ = 𝑥 + 𝑦ത + 𝑧 𝑥 + 𝑦ത + 𝑧ҧ
Express as POM: f = 𝑀2 ∙ 𝑀3

Chapter 2 - Part 1 57
POM Example
▪ Convert to Product of Maxterms:
f 𝐴, 𝐵, 𝐶 = 𝐴𝐶ҧ + 𝐵𝐶 + 𝐴ҧ 𝐵ത
▪ Use the distributive law: 𝑥 + 𝑦𝑧 = (𝑥 + 𝑦) ∙ (𝑥 + 𝑧)
with 𝑥 = (𝐴𝐶ҧ + 𝐵𝐶), y = 𝐴ҧ and z = 𝐵ത to get:
f = (𝐴𝐶ҧ + 𝐵𝐶 + 𝐴)(𝐴ҧ 𝐶ҧ + 𝐵𝐶 + 𝐵)

▪ Then use the simplification theorem:
𝑥 + 𝑥𝑦
ҧ = 𝑥 + 𝑦 to get:
f = (𝐶ҧ + 𝐵𝐶 + 𝐴)(𝐴
ҧ 𝐶ҧ + 𝐶 + 𝐵)

and a second time to get:
f = (𝐶ҧ + 𝐵 + 𝐴)(𝐴
ҧ + 𝐶 + 𝐵)ത
▪ Rearrange to standard order,
f = (𝐴 + 𝐵ത + 𝐶)(𝐴ҧ + 𝐵 + 𝐶)ҧ to give f = 𝑀2 ∙ 𝑀5
Chapter 2 - Part 1 58
Function Complements
▪ The complement of a function expressed as a sum
of minterms is constructed by selecting the
minterms missing in the sum-of-minterms
▪ Also, the complement of a function expressed by a
Sum of Minterms form is simply the Product of
Maxterms with the same indices
▪ Example: Given 𝐹 𝑥, 𝑦, 𝑧 = Σ𝑚 1,3,5,7
𝐹ത 𝑥, 𝑦, 𝑧 = Σ𝑚 0,2,4,6
𝐹ത 𝑥, 𝑦, 𝑧 = Π𝑀 1,3,5,7
again, 𝐹(𝑥, 𝑦, 𝑧) = Π𝑀 (0,2,4,6)

Chapter 2 - Part 1 59
Standard Forms
▪ Standard Sum-of-Products (SOP) form: equations
are written as an OR of AND terms
▪ Standard Product-of-Sums (POS) form: equations
are written as an AND of OR terms
▪ Examples:
• SOP: 𝐴𝐵𝐶 + 𝐴ҧ𝐵𝐶
ത + 𝐴ҧ
• POS: (𝐴 + 𝐵) ∙ (𝐴 + 𝐵ത + 𝐶)ҧ ∙ 𝐶
▪ These “mixed” forms are neither SOP nor POS
• (𝐴𝐵 + 𝐶) ∙ (𝐴 + 𝐶)
• 𝐴𝐵𝐶ҧ + 𝐴𝐶(𝐴 + 𝐵)

Chapter 2 - Part 1 60
Standard Sum-of-Products (SOP)
▪ The sum of minterms (SOM) form is a standard algebraic
expression that is obtained from a truth table
▪ Simplifying a function in SOM form by reducing the
number of product terms or by reducing the number of
literals in the terms results in Sum-of-Products (SOP)
form
▪ SOP form can be implemented as a two-level circuit
• First level: n-input AND gates, and
• Second level: a single OR gate

F = Σ𝑚 0,1,2,3,4,5,7 : SOM
F = 𝑌ത + 𝑋𝑌
ത 𝑍ҧ + 𝑋𝑌 : SOP

Chapter 2 - Part 1 61
Standard Sum-of-Products (SOP)
▪ A Simplification Example:
F 𝐴, 𝐵, 𝐶 = Σ𝑚 1,4,5,6,7
▪ Writing the minterm expression:
F = 𝐴ҧ𝐵𝐶
ത + 𝐴𝐵ത 𝐶ҧ + 𝐴𝐵𝐶
ത + 𝐴𝐵𝐶ҧ + 𝐴𝐵𝐶
▪ Simplifying:
F = 𝐴ҧ 𝐵𝐶
ത +𝐴 𝐵ത 𝐶ҧ + 𝐵𝐶
ത + 𝐵𝐶ҧ + 𝐵𝐶
= 𝐴ҧ𝐵𝐶
ത +𝐴 𝐵ത + 𝐵)(𝐶ҧ + 𝐶
= 𝐴ҧ𝐵𝐶
ത +𝐴
ത +𝐴
= 𝐵𝐶
Simplified F contains 3 literals!

Chapter 2 - Part 1 62
AND/OR Two-level Implementation of
SOP Expression
▪ The two implementations for F are shown below –
it is quite apparent which is simpler!

A
F
B
C ത +𝐴
F = 𝐵𝐶

F = 𝐴ҧ𝐵𝐶
ത + 𝐴𝐵ത 𝐶ҧ + 𝐴𝐵𝐶
ത + 𝐴𝐵𝐶ҧ + 𝐴𝐵𝐶

Chapter 2 - Part 1 63
Standard Products-of-Sum (POS)
▪ POS form can be implemented as a two-level
circuit
• First level: n-input OR gates, and
• Second level: a single AND gate
▪ F = 𝑋(𝑌ത + 𝑍)(𝑋 + 𝑌 + 𝑍)ҧ

Chapter 2 - Part 1 64
SOP and POS Observations
▪ The previous examples show that:
• Canonical forms (Sum-of-minterms, Product-of-
Maxterms) and Standard forms (SOP, POS) differ in
complexity
• Boolean algebra can be used to manipulate equations
into simpler forms
• Simpler equations lead to simpler two-level
implementations
▪ Questions:
• How can we attain the “simplest” expression?
• Is there only one minimum cost circuit?
• The next part will deal with these issues
Chapter 2 - Part 1 65

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy