Professional Documents
Culture Documents
1966
Recommended Citation
Nelson, Donald Robert, "An algorithm for the synthesis of NAND logic networks using a diagrammatic approach" (1966). Masters
Theses. 5761.
http://scholarsmine.mst.edu/masters_theses/5761
This Thesis - Open Access is brought to you for free and open access by Scholars' Mine. It has been accepted for inclusion in Masters Theses by an
authorized administrator of Scholars' Mine. This work is protected by U. S. Copyright Law. Unauthorized use including reproduction for redistribution
requires the permission of the copyright holder. For more information, please contact scholarsmine@mst.edu.
2
ABSTRACT
ACKNOWLEDGEMENT
TABLE OF CONTENTS
ABSTRACT 2
ACKNOWLEDGEMENT 3
LIST OF FIGURES 5
CHAPTER I. INTRODUCTION 6
CHAPTER II. THE SYNTHESIS OF NAND NETWORKS
a-~ Diagram 22
B. The Network Synthesis 23
1. The Synthesis 24
2. Extension to NOR Synthesis 44
3. Worked Examples 44
CHAPTER III. SUMMARY 52
BIBLIOGRAPHY 53
VITA 54
5
LIST OF FIGURES
Figure page
1 An a-~ diagram illustration 12
2 Example function for the a-set 14
determination
4 An a-~ diagram 20
5 Dual and complement a-~ diagrams 21
CHAPTER I
INTRODUCTION
ber of variables.
tion.
employed to select the minimum NAND and NOR network for gen-
all others using the same number of gates. The one with the
one.
gates and inputs than the two-level network for the minimum
inverters.
are listed and then grouped into one of three basic patterns.
CHAPTER II
ent which means that F cannot be both 0 and 1 for the same
1.
A B A B
c c D D f = ABAB + CCDD = AB + CD
1. The a-set
Clearly, there may be more than one a-set for any given func-
A B c D :tf
0 0 0 0 0
0 0 0 1 0
0 0 1 1 0
0 0 1 0 1
0 1 0 0 1 CD
0 1 0 1 1 AB 00 01 11 10
0 1 1 1 0 00 0 0 0 1
0 1 1 0 1 01 1 1 0 1
1 1 0 0 0 11 0 1 1 0
1 1 0 1 1 10 1 0 1 1
1 1 1 1 1 (b)
1 1 1 0 0
1 0 0 0 1
1 0 0 1 0
1 1 1 1 1
1 0 1 0 1
(a)
.
F ~gure 2. Example function for the a-set determination
15
products expressions.
1. a·a =0
2. a·a =a
3. a + ab = a
An equivalent procedure, and one that will save time
sl' s2, s3 . . . s
n
. That is to say
fl = r + sl
f2 = r + s2
f3 = r + 53
r + sn
to f.
s
n
s2 = ACD + BCD
s3 = ABC + ABD
Therefore
follows:
products expressions.
a-set.
2. The {3-set
CD
AB 00 01 11 10
00 1 1 0 1
01 1 1 1 1
11 0 1 0 1
10 0 1 0 0
the resulting NAND network. For this example there are two
f2 = (A + c + D)(B + c + D) (A + c + D) (A + B + c)
are as follows,
fl dual
= ACD + BCD + ACD + ABD
rectangular array having one row for each term of the a-set
and one column for each term of the ~-set. The literals in
each term of the a-set are the labels for the rows. The
literals of each term of the ~-set are the labels for the
have been entered in the squares , the labels on the rows and
as
20
{ ABD~ BCD~
--
ACD~ ABc}.
The a-{3 diagram for this function is shown with the row and
ABD B -D -
AD A
ACD -A -
CD -D c
ABC
-A B
-c B
ABCD
-BD c A AC
ABCD D BC A ABC
ABCD D B
-
AC AB
ing a-{3 diagram may contain squares with more than one entry.
definitions.
Definition 1.
A column (row) of an a-{3 diagram that has as entries
Definition 2.
A column (row) of an a-{3 diagram that has as entries
able to form the a-{3 diagram of the dual and of the comple-
-B D D A B
-D
A
-A -B c
B c B A
-D A
-B c D -A -B
a-{3 diagram of f D B c
a-{3 diagram of the
dual of f
(a)
-
A B D
B
-c -A
D A B
-D -B -c
(b) a-{3 diagram of f
AB + AC + A( D + E)
there are five variables A, B, C, D, and E. Each occurance
be used interchangeably.
diagram:
1. Rows and columns may be rearranged in any order.
it may be removed.
3. A literal may be removed from any row (column)
variables.
variable.
variables.
4. Remove redundant literals so as to yield a
uncomplemented.
5. Remove redundant literals so as to form an
uncomplemented row.
6. Remove redundant literals so as to form a
ed or uncomplemented row.
Step 1.
Does the a-~ diagram contain only uncomplemented vari-
step 3.
Step 2.
synthesize the function that is diagrammed, f, by using
two levels of logic. The variables on each row form the in-
puts to second-level gates, one gate for each row. The out-
c
A B c
D E F
f
G H I
conditions of step 2.
The variables A, B, C,
step 5.
Step 4.
Remove from the a-p diagram that row whose entries are
all the same complemented variable, say A. The new a-p dia-
-
f == fl + A
(a)
A B c
D E F
..
-G -G -G
G G
-G
and finally
c---t.._____.
(b)
Step .5..
Does the a-~ diagram contain only complemented variables?
-A -D
-B -E
-c -F
a-~ diagram for f
c ----1 .____.,
f
Step ']_.
not, go to step 9·
28
Step 8.
Synthesize the function, f, with a TANT network. The
A A B
-c -D
D c D
-A -A
D B D
-A -A
A A D
-c -B
a-~ diagram of f
A A
c B
A
B ---1 c
D--~~....,__,..., D
B
D
A
B
--·-------------------
29
Step 2.·
Does the a-~ diagram contain an uncomplemented row? If
Step 10.
10.
A IB Ic A B c
step 11.
Step 12.
~~ffi rn
B
A f
c
Step l3_.
algorithm may contain gates which feed the same gates and
have identical inputs. All but one of these gates are re-
in Figure 12.
c -B c
-A -B -B
c -A c A
B
a-~ diagram for f
Redundant
Figure 13 (b) .
{x} {--
{y} {--
A
B
B ------1
f
B
c
C-----1...___
Inputs marked by an
may be removed.
f1 = AB CD = AB + CD f 2 = AB + CD
(a) (b)
Figure 15. Two-level equivalents
f = A + BCD + BCD
B
D
c
A J----f
c~-A-ID-t
B
D - - - - t __ __.
c
f
D
36
c A
~
A c
= (A+ C + B)(A + C)
A B
f = AC + A(C + B)
and
f = (A+ c)(A + C) + AB
c
D
A
A B
A B
C B
A
B
AB + BC
B
c
B c
-A -A
c ----l..___ A---1.___
A+ BC
39
~
~ ~
B c
~
~ ~
A c
a-~ a-~
ing network,
c
= CA + CB
A
B
the output of which is the function read from the a-~ diagram.
-
A B
B
-A
A------~
+ B(A + B)=
a-{3 diagram.
A B
c -A
-
A c
A
B
A(A + C) +
c(A + c) =
AB + AC + AC
is shown below.
12 is
42
A C(A + B) + A(A + B)
B BC + AB
= "Ac + Ai3
c--
variables.
x(x + Y) (Y + z) = x(x + Y)
The output of the network in Figure 14 before the appli-
X+ XY =X+ Y.
In some cases when a large a-~ diagram is encounteredJ
inputs.
in Figure 18.
a-P diagram of F
G
H
the priority list (see page 23) than the original diagram.
2. Extension to NOR Synthesis
tion twice, once forming the dual a-~ diagram and once by re-
3. Worked Examples
In order to illustrate the diagrammatic procedure pre-
mapped below.
CD
AB 00 01 11 10
00 0 0 0 0
01 0 1 0 0
11 1 1 0 1
10 0 0 0 1
45
CD BC AD
-
ABC c B A
-
BCD c B D
ACD -D c A
NAND realization is
c B
X
D D
c
46
mapped below.
CD
AB 00 01 11 10
00 1 0 0 1
01 1 1 1 1
11 1 0 1 1
10 1 1 1 1
yl = D + AB + AB + AC
y 2 = D + AB + AB + BC
yly2 = D + AB + AB + ABC
{ D, AB , AB , ABC}
{ ABD, ABCD }
ABD ABCD
D
-
D
-D
-
AB A B
AB B
-A
ABC AB c
A B
-
B A
A c
to which the algorithm is applied. The conditions of step 9
are the first to be satisfied and the uncomplemented row is
GI!J
GI!J
is synthesized by step 8. The result of thissynthesis is
B
48
With the addition of the gate for the uncomplemented row and
the input to the output gate for the complemented row, the
A
y
B
mapped below.
CD
AB 00 01 11 10
00 l l 0 1
01 0 l 0 1
ll 0 0 l 0
10 0 l 0 1
products expression as
is determined as
49
ABCD CD
--
CD --
AB AB A B
ACD
-c -c AD A AD D
:AciS -D D
-A AC
-AC c
BCD c c BD 13 D BD
BCD D D B BC c BC
ABCD A B D c CD CD
-c -c -A -
A
-A -B
-
c -c -A -A D D
-D -D -A -
A c c
1--·
-c -c -
B
-B D D
-D -D -B -B c c
A B D c D D
B
c--r--.....
c
D
D---1...___
A
B
A
51
CHlU'TER III
SUMMARY
BIBLIOGRAPHY
in May, 1962.
He was enrolled in the Graduate School of the University
Epsilon, Tau Beta Pi, Eta Kappa Nu, and the Institute of