lcdf3 chap 03
TRANSCRIPT
-
Chapter 3 Gate-Level Minimization
Digital Design with an Introduction to the Verilog HDL
-
Pearson Education, Inc. Modified by Y. L. Li, CS/NCTU Digital Design with Verilog Practice
Chap 3
Overview
The Map Method Four-Variable K-Map Product-of-Sums Simplification Dont-Care Conditions NAND and NOR Implementation Exclusive-OR Function
2
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
3
Circuit Optimization
Goal: To obtain the simplest implementation for a given function Optimization is a more formal approach to
simplification that is performed using a specific procedure or algorithm Optimization requires a cost criterion to
measure the simplicity of a circuit Two distinct cost criteria we will use:
Literal cost (L) Gate input cost (G) Gate input cost with NOTs (GN)
bL1
-
3
bL1 boris Li, 2015/3/24
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
4
D
Literal a variable or its complement Literal cost the number of literal
appearances in a Boolean expression corresponding to the logic circuit diagram Examples:
F = BD + A C + A L = 8 F = BD + A C + A + AB L = 11 F = (A + B)(A + D)(B + C + )( + + D) L = 10 Which solution is best? (first verify the equality)
Literal Cost
DB CB B D C
B C
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
5
Gate Input Cost Gate input costs - the number of inputs to the gates in the
implementation corresponding exactly to the given equation or equations. (G - inverters not counted, GN - inverters counted)
For SOP and POS equations, it can be found from the equation(s) by finding the sum of: all literal appearances the number of terms excluding terms consisting only of a single literal,(G)
and optionally, the number of distinct complemented single literals (GN).
Example: which solution is best ? F = BD + A C + A G = 11, GN = 14 F = BD + A C + A + AB G = 15, GN = 19 F = (A + )(A + D)(B + C + )( + + D) G = 14, GN = 17
DB CB B D C
B D B C
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
6
Example 1:
F = A + B C +
Cost Criteria (continued)
A
BC
F
B C L = 5
L (literal count) counts the AND inputs and the singleliteral OR input.
G = L + 2 = 7
G (gate input count) adds the remaining OR gate inputs
GN = G + 2 = 9
GN(gate input count with NOTs) adds the inverter inputs
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
7
Example 2:
F = A B C + L = 6 G = 8 GN = 11 F = (A + )( + C)( + B) L = 6 G = 9 GN = 12 Same function and same
literal cost But first circuit has better
gate input count and bettergate input count with NOTs
Select it!
Cost Criteria (continued)
BC
A
ABC
F
C B
F
ABC
A
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
8
Boolean Function Optimization Minimizing the gate input (or literal) cost of a (a set
of) Boolean equation(s) reduces circuit cost. We choose gate input cost. Boolean Algebra and graphical techniques are tools to
minimize cost criteria values. Some important questions:
When do we stop trying to reduce the cost? Do we know when we have a minimum cost?
Treat optimum or near-optimum cost functionsfor two-level (SOP and POS) circuits first.
Introduce a graphical technique using Karnaugh maps (K-maps, for short)
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
9
Karnaugh Maps (K-map)
A K-map is a collection of squares Each square represents a minterm The collection of squares is a graphical representation of a
Boolean function Adjacent squares differ in the value of one variable Alternative algebraic expressions for the same function are
derived by recognizing patterns of squares The K-map can be viewed as
A reorganized version of the truth table A topologically-warped Venn diagram as used to visualize
sets in algebra of sets
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
10
Some Uses of K-Maps Provide a means for:
Finding optimum or near optimum SOP and POS standard forms, and two-level AND/OR and OR/AND circuit
implementationsfor functions with small numbers of variables
Visualizing concepts related to manipulating Boolean expressions, and
Demonstrating concepts used by computer-aided design programs to simplify large circuits
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
11
Two Variable Maps A 2-variable Karnaugh Map:
Note that minterm m0 andminterm m1 are adjacentand differ in the value of thevariable y
Similarly, minterm m0 andminterm m2 differ in the x variable.
Also, m1 and m3 differ in the x variable as well.
Finally, m2 and m3 differ in the value of the variable y
y = 0 y = 1
x = 0 m0 = m1 =
x = 1 m2 = m3 =yx yx
yx yx
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
12
K-Map and Truth Tables
The K-Map is just a different form of the truth table. Example Two variable function:
We choose a,b,c and d from the set {0,1} to implement a particular function, F(x,y).
Function Table K-MapInput Values(x,y)
Function ValueF(x,y)
0 0 a0 1 b1 0 c1 1 d
y = 0 y = 1x = 0 a bx = 1 c d
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
13
K-Map Function Representation
Example: F(x,y) = x
For function F(x,y), the two adjacent cells containing 1s can be combined using the Minimization Theorem:
F = x y = 0 y = 1
x = 0 0 0
x = 1 1 1
xyxyx)y,x(F
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
14
K-Map Function Representation
Example: G(x,y) = x + y
For G(x,y), two pairs of adjacent cells containing 1s can be combined using the Minimization Theorem:
G = x+y y = 0 y = 1
x = 0 0 1
x = 1 1 1
yxyxxyyxyx)y,x(G Duplicate xy
reduce y reduce x
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
15
Three Variable Maps
A three-variable K-map:
Where each minterm corresponds to the product terms:
Note that if the binary value for an index differs in one bit position, the minterms are adjacent on the K-Map
yz=00 yz=01 yz=11 yz=10
x=0 m0 m1 m3 m2x=1 m4 m5 m7 m6
yz=00 yz=01 yz=11 yz=10
x=0
x=1
zyx zyx zyx zyxzyx zyx zyx zyx
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
16
Alternative Map Labeling
Map use largely involves: Entering values into the map, and Reading off product terms from the map.
Alternate labelings are useful:y
zx
10 2
4
3
5 67
xy
zz
yy z
z
10 2
4
3
5 67
x0
1
00 01 11 10
x
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
17
Example Functions
By convention, we represent the minterms of F by a "1" in the map and leave the minterms of blank
Example:
Example:
Learn the locations of the 8 indices based on the variable order shown (x, most significantand z, least significant) on themap boundaries
y
x10 2
4
3
5 67
111
1
z
x
y10 2
4
3
5 671 111
z
(2,3,4,5)z)y,F(x, m
(3,4,6,7)c)b,G(a, m
F
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
18
Combining Squares By combining squares, we reduce number of literals in
a product term, reducing the literal cost, thereby reducing the other two cost criteria
On a 3-variable K-Map: One square represents a minterm with three variables Two adjacent squares represent a product term with two
variables (apply identities 7,14 one time) Four adjacent terms represent a product term with
one variable (apply identities 7,14 three times) Eight adjacent terms is the function of all ones (no
variables) = 1. (apply identities 7,14 seven times)
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
19
Example: Combining Squares
Example: Let
Applying the Minimization Theorem three times:
Thus the four terms that form a 2 2 square correspond to the term "y".
yzyyz
zyxzyxzyxzyx)z,y,x(F
x
y10 2
4
3
5 671 111
z
m(2,3,6,7)F 0
100 01 11 10
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
20
Three-Variable Maps
Reduced literal product terms for SOP standard forms correspond to rectangles on K-maps containing cell counts that are powers of 2.
Rectangles of 2 cells represent 2 adjacent minterms; of 4 cells represent 4 minterms that form a pairwise adjacent ring.
Rectangles can contain non-adjacent cells as illustrated by the pairwise adjacent ring above.
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
21
Three-Variable Maps
Topological warps of 3-variable K-maps that show all adjacencies: Venn Diagram Cylinder
Y Z
X
1376 5
4
2
0
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
22
Three-Variable Maps
Example Shapes of 2-cell Rectangles:
Read off the product terms for the rectangles shown
y0 1 3 2
5 64 7xz
0
1
00 01 11 10X YZ
XYYZ
XZ
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
23
Three-Variable Maps
Example Shapes of 4-cell Rectangles:
Read off the product terms for the rectangles shown
y0 1 3 2
5 64 7xz
0
1
00 01 11 10X YZ
Y ZZ
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
24
Three Variable Maps
z)y,F(x,
y
11
x
z
1 1
1
z
z
yx
yx
K-Maps can be used to simplify Boolean functions bysystematic methods. Terms are selected to cover the1sin the map.
Example: Simplify )(1,2,3,5,7z)y,F(x, m
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
25
Three-Variable Map Simplification Use a K-map to find an optimum SOP
equation for ,7)(0,1,2,4,6 Z)Y,F(X, m
0
1
00 01 11 10X YZ
1 1 1
111Z
XY
XY
F = XY + XY + Z
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
26
Four Variable Maps
Map and location of minterms:
8 9 1011
12 13 1415
0 1 3 2
5 64 7
X
Y
Z
WVariable Order
WXYZ
00
01
10
11
00 01 11 10
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
27
Four Variable Terms
Four variable maps can have rectangles corresponding to:
A single 1 = 4 variables, (i.e. Minterm) Two 1s = 3 variables, Four 1s = 2 variables Eight 1s = 1 variable, Sixteen 1s = zero variables (i.e.
Constant "1")
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
28
Four-Variable Maps
Example Shapes of Rectangles:
8 9 1011
12 13 1415
0 1 3 2
5 64 7
X
Y
Z
W
WXYZ
00
01
10
11
00 01 11 10
XZ
WY
XZ
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
29
Four-Variable Maps
Example Shapes of Rectangles:
X
Y
Z
8 9 1011
12 13 1415
0 1 3 2
5 64 7
W
WXYZ
00
01
10
11
00 01 11 10
W
XY Z
X
Z
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
30
Four-Variable Map Simplification )8,10,13,152,4,5,6,7,(0,Z)Y,X,F(W, m
X
Y
Z
8 9 1011
12 13 1415
0 1 3 2
5 64 7
W
WXYZ
00
01
10
11
00 01 11 10
WXXZ
1
1 1 1 1
1
1
11
1
XZ
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
31
3,14,15
Four-Variable Map Simplification )(3,4,5,7,9,1Z)Y,X,F(W, m
X
Y
Z
8 9 1011
12 13 1415
0 1 3 2
5 64 7
W
WXYZ
00
01
10
11
00 01 11 10
XZ
1
1 1 1
1
111
WYZWXY
WYZWXY
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
32
Systematic Simplification
Implicant a product term of which if the function has the value 1 for all minterms.
A Prime Implicant is a product term obtained by combining the maximum possible number of adjacent squares in the map into a rectangle with the number of squares a power of 2 remove any literal not a implicant.
A prime implicant is called an Essential Prime Implicant if it is the only prime implicant that covers (includes) one or more minterms.
Prime Implicants and Essential Prime Implicants can be determined by inspection of a K-Map.
A set of prime implicants "covers all minterms" if, for each minterm of the function, at least one prime implicant in the set of prime implicants includes the minterm.
Minterm iMinterm j Product term
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
33
DB
CB
1 1
1 1
1 1
B
D
A
1 1
1 1
1
Example of Prime Implicants
Find ALL Prime ImplicantsESSENTIAL Prime Implicants
C
BD
CD
BD
Minterms covered by single prime implicant
DB
1 1
1 1
1 1
B
C
D
A
1 1
1 1
1
AD
BA
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
34
Prime Implicant Practice
Find all prime implicants for:
A
B
C
D
1
13,14,15),10,11,12,(0,2,3,8,9D)C,B,F(A, m
1 1
11 1 1
11 1 1A
BCBD
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
35
Another Example
Find all prime implicants for:
Hint: There are seven prime implicants!
A
B
C
D
1 1 1
1 1
11 1 1
15),12,13,14,(0,2,3,4,7D)C,B,G(A, m
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
36
Five Variable or More K-Maps
For five variable problems, we use two adjacent K-maps. It becomes harder to visualize adjacent minterms for selecting PIs. You can extend the problem to six variables by using four K-Maps.
X
Y
Z
W
V = 0
X
Z
W
V = 1 Y
X
Y
Z
W
V = 0
X
Z
W
V = 1Y
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
37
Prime Implicants Selection Rule
Find all prime implicants. Include all essential prime implicants in the
solution Select a minimum cost set of non-essential prime
implicants to cover all minterms not yet covered: Minimize the overlap among prime implicants as much
as possible.
Make sure that each prime implicant selected includes at least one minterm not included in any other prime implicant selected avoid redundancy.
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
38
Selection Rule Example
Simplify F(A, B, C, D) given on the K-map.
1
1
1
1 1
1
1
B
D
A
C
1
1
1
1
1
1
1 1
1
1
B
D
A
C
1
1
Essential
Minterms covered by essential prime implicants
Selected
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
39
Selection Rule Example
B
C
D
A
1 1
11
1 1
1 1
1
Essential
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
40
Product-of-Sums Simplification
Concept: mi = Mi How to derive a POS using SOP derivation:
Derive F = mi+mj +mn F = Mi Mj Mn
B
C
D
A
1 1
1
1
0 0
1 1
1
0
0 0 0
0
0
0
F = AB + CD + BD
F = (A+B)(C+D)(B+D)
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
41
Product-of-Sums Simplification
How to derive a simplified SOP and POS from a POS?F =(A+C+D)(A+C+D)(A+B+D)(A+B+D)F = ACD + ACD + ABD + ABD
B
C
D
A
1 1
0
0
0 0
0 1
1
0
1 0 1
1
1
1
F = AB + CD + AD + BC
F = AC + BD
F = (A+C)(B+D)
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
42
Sometimes a function table or map contains entries for which it is known: the input values for the minterm will never occur, or The output value for the minterm is not used
In these cases, the output value need not be defined Incompletely specified functions functions that have unspecified
outputs (it can be 1 or 0)for some input combinations. Instead, the output value is defined as a don't care By placing don't cares ( an x entry) in the function table or
map, the cost of the logic circuit may be lowered. Example 1: A logic function having the binary codes for the
BCD digits as its inputs. Only the codes for 0 through 9 are used. The six codes, 1010 through 1111 never occur, so the output values for these codes are x to represent dont cares.
Don't Cares in K-Maps
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
43
Example 2: A circuit that represents a very common situation that occurs in computer design has two distinct sets of input variables: A, B, and C which take on all possible combinations, and Y which takes on values 0 or 1.
and a single output Z. The circuit that receives the output Z observes it only for (A,B,C) = (1,1,1) and otherwise ignores it. Thus, Z is specified only for the combinations (A,B,C,Y) = 1110 and 1111. For these two combinations, Z = Y. For all of the 14 remaining input combinations, Z is a dont care.
Ultimately, each x entry may take on either a 0 or 1 value in resulting solutions
For example, an x may take on value 0 in an SOP solution and value 1 in a POS solution, or vice-versa.
Any minterm with value x need not be covered by a prime implicant.
Don't Cares in K-Maps
AB
C
Y
01
XXXX
XXXX
XX
X
XX
X
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
44
Example: BCD 5 or More The map below gives a function F1(w,x,y,z) which is
defined as "5 or more" over BCD inputs. With the don't cares used for the 6 non-BCD combinations:
F1 (w,x,y,z) = w + x z + x y G = 7 This is much lower in cost than F2 where the
don't cares were treated as "0s."G = 12
For this particular function, cost G for the POS solution for F1(w,x,y,z) is not changed by using the don't cares.
z
w
0 1 3 2
4 5 7 6
12 13 15 14
8 9 11 10
1
1
11
1
X X X
X X
X
0 0 0 0
0x
y
yxwyxwzxwz) y,x,F2(w,
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
45
Dont Care Another Example
B
C
D
A
X 1
X
0
0 1
0 0
X
0
0 1 0
1
0
1
B
C
D
A
X 1
X
0
0 1
0 0
X
0
0 1 0
1
0
1
F = CD + AB F = CD + AD
F = D + AC
F = D ( A+C)
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
46
Selection Rule Example with Don't Cares
Simplify F(A, B, C, D) given on the K-map. Selected
Minterms covered by essential prime implicants
1
1
x
x
x x
x
1
B
D
A
C
1
1 1
1
x
x
x x
x
1
B
D
A
C
1
1
Essential
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
47
Product of Sums Example
Find the optimum POS solution:
Hint: Use and complement it to get the result.
,13,14,15)(3,9,11,12D)C,B,F(A, m (1,4,6) d
F
B
C
D
A
0 X
0
0
1 1
1 0
0
1
X 0 X
1
1
1
F = AB + BD
F = (A + B) (B + D)
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
48
Universal
A set of gates is said to be universal if any Boolean function can be composed of the elements of this set. {AND, OR, NOT} a universal set.
Universal gate - a gate type that can implement any Boolean function.
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
49
Other Gate Types
Why? Implementation feasibility and low cost Power in implementing Boolean functions Convenient conceptual representation
Gate classifications Primitive gate - a gate that can be described using a
single primitive operation type (AND or OR) plus an optional inversion(s).
Complex gate - a gate that requires more than one primitive operation type for its description
Primitive gates will be covered first
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
50
Buffer
A buffer is a gate with the function F = X:
In terms of Boolean function, a buffer is the same as a connection! So why use it?
A buffer is an electronic amplifier used to improve circuit voltage levels and increase the speed of circuit operation.
X F
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
51
NAND Gate
The basic NAND gate has the following symbol, illustrated for three inputs: AND-Invert (NAND)
NAND represents NOT AND, i. e., the AND function with a NOT applied. The symbol shown is an AND-Invert. The small circle (bubble) represents the invert function.
XYZ
ZYX)Z,Y,X(F
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
52
NAND Gates (continued)
Applying DeMorgan's Law gives Invert-OR (NAND)
This NAND symbol is called Invert-OR, since inputs are inverted and then ORed together.
AND-Invert and Invert-OR both represent the NAND gate. Having both makes visualization of circuit function easier.
A NAND gate with one input degenerates to an inverter.
XYZ
ZYX)Z,Y,X(F
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
53
NAND Gates (continued)
The NAND gate is the natural implementation for the simplest and fastest electronic circuits
The NAND gate is a universal gate as shown in the following.
NAND usually does not have a operation symbol defined since the NAND operation is not associative, and we have difficulty dealing with non-associative mathematics!
x x xy xy xyxy=x+y
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
54
Two-level NAND Gates
A function of sum-of-products form is easy to convert to NAND gates. F = AB + CD F = AB + CD F = AB CD
AB
CD
F
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
55
Two-level NAND Gates cont.
Converting procedures Simplify the function and express it in sum-of-
products form, For each line connecting to the 2-level OR gate,
insert two inverters the its two ends, Transform the invert-OR gate to NAND gate.
1 1 1
11 1F = XY + XY + Z
F = XY + XY + Z
F = XY XY Z
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
56
Multilevel NAND Gates
The procedures to convert to multilevel NAND gates circuits: Convert all AND gates to NAND gates with
AND-NOT graphic symbols, Convert all OR gates to NAND gates with
NOT-OR graphic symbols, Complement the input literal if the signal has
single bubble, and insert a NOT gate for the output signal with single bubble.
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
57
Multilevel NAND Gates Cont.
AB
CD
BC
B
A
B
D
B
A
CE
D C
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
58
NOR Gate
The basic NOR gate has the following symbol, illustrated for three inputs: OR-Invert (NOR)
NOR represents NOT - OR, i. e., the OR function with a NOT applied. The symbol shown is an OR-Invert. The small circle (bubble) represents the invert function.
XYZ
ZYX)Z,Y,X(F +
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
59
NOR Gate (continued)
Applying DeMorgan's Law gives Invert-AND (NOR)
This NOR symbol is called Invert-AND, since inputs are inverted and then ANDed together.
OR-Invert and Invert-AND both represent the NOR gate. Having both makes visualization of circuit function easier.
A NOR gate with one input degenerates to an inverter.
XYZ
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
60
NOR Gate (continued)
The NOR gate is another natural implementation for the simplest and fastest electronic circuits
The NOR gate is a universal gate NOR usually does not have a defined operation
symbol since the NOR operation is not associative, and we have difficulty dealing with non-associative
mathematics!
x x xy x+y xyx+y=xy
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
61
NOR Gate (continued)
A
B
D
B
A
CEE
A B
B A
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
62
Exclusive OR/ Exclusive NOR
The eXclusive OR (XOR) function is an important Boolean function used extensively in logic circuits.
The XOR function may be; implemented directly as an electronic circuit (truly a gate) or implemented by interconnecting other gate types (used as a
convenient representation)
The eXclusive NOR function is the complement of the XOR function
By our definition, XOR and XNOR gates are complex gates.
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
63
Exclusive OR/ Exclusive NOR
Uses for the XOR and XNORs gate include: Adders/subtractors/multipliers Counters/incrementers/decrementers Parity generators/checkers
Definitions The XOR function is: The eXclusive NOR (XNOR) function, otherwise
known as equivalence is:
Strictly speaking, XOR and XNOR gates do no exist for more than two inputs. Instead, they are replaced by odd and even functions.
YXYXYX
YXYXYX
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
64
Truth Tables for XOR/XNOR
Operator Rules: XOR XNOR
The XOR function means:X OR Y, but NOT BOTH
Why is the XNOR function also known as the equivalence function, denoted by the operator ?
X Y XY
0 0 00 1 11 0 11 1 0
X Y
0 0 10 1 01 0 01 1 1
or XY(XY)
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
65
XOR/XNOR (Continued)
The XOR function can be extended to 3 or more variables. For more than 2 variables, it is called an odd function or modulo 2 sum (Mod 2 sum), not an XOR:
The complement of the odd function is the even function. The XOR identities:
X1XX0X 1XX0XX
XYYX ZYX)ZY(XZ)YX(
ZYXZYXZYXZYXZYX
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
66
Symbols For XOR and XNOR
XOR symbol:
XNOR symbol:
Symbols exist only for two inputs
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
67
XOR Implementations
The simple SOP implementation uses the following structure:
A NAND only implementation is:
X
Y
X Y
X
Y
X Y
xy = xy + xx
= x(x+y)
= xxy
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
68
Odd and Even Functions
The odd and even functions on a K-map form checkerboard patterns.
The 1s of an odd function correspond to minterms having an index with an odd number of 1s.
The 1s of an even function correspond to minterms having an index with an even number of 1s.
Implementation of odd and even functions for greater than 4 variables as a two-level circuit is difficult, so we use trees made up of : 2-input XOR or XNORs 3- or 4-input odd or even functions
EO E
EE
EE
EE
00 01 11 1O
00
01
11
10 O
O
OO
O
OO
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
69
Example: Odd Function Implementation
Design a 3-input odd function F = X Y Zwith 2-input XOR gates
Factoring, F = (X Y) Z The circuit:
+ +
+ +
XY
ZF
W
WF
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
70
Example: Even Function Implementation
Design a 4-input even function F = W X Y Zwith 2-input XOR and XNOR gates
Factoring, F = (W X) (Y Z) The circuit:
+ + +
+ + +
WX
YF
Z
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
71
Parity Generators and Checkers In Chapter 1, a parity bit added to n-bit code to produce an n
+ 1 bit code: Add odd parity bit to generate code words with even parity Add even parity bit to generate code words with odd parity Use odd parity circuit to check code words with even parity Use even parity circuit to check code words with odd parity
Example: n = 3. Generate evenparity code words of length 4 withodd parity generator:
Check even parity code words of length 4 with odd parity checker:
Operation: (X,Y,Z) = (0,0,1) gives(X,Y,Z,P) = (0,0,1,1) and E = 0.If Y changes from 0 to 1 betweengenerator and checker, then E = 1 indicates an error.
XYZ P
XY
ZE
P
001 1
00
11
0
-
2004 Pearson Education, Inc. Modified by Y. L. Li, CIS/NCTU Logic & Computer Design Fundamentals
Chap 3
72
Terms of Use 2004 by Pearson Education,Inc. All rights reserved. The following terms of use apply in addition to the standard
Pearson Education Legal Notice. Permission is given to incorporate these materials into classroom
presentations and handouts only to instructors adopting Logic and Computer Design Fundamentals as the course text.
Permission is granted to the instructors adopting the book to post these materials on a protected website or protected ftp site in original or modified form. All other website or ftp postings, including those offering the materials for a fee, are prohibited.
You may not remove or in any way alter this Terms of Use notice or any trademark, copyright, or other proprietary notice, including the copyright watermark on each slide.
Return to Title Page