Information Technology Reference
In-Depth Information
combinations should be multiplied by 2 because the third input can be either logic ''1''
or logic ''0''. The total number of primitives that belong to this type is calculated as
shown in Eq. (
7
).
ð
C
2
4
Þ
2
¼
48
ð
7
Þ
The last type of primitive has all of three variable-inputs. For this type, three of the
four variables ''a'' , '' b'' , '' c'' a n d '' d'' will be picked up to fill a majority gate and each
variable can appear as itself or its complement, thus giving a total number as calcu-
lated in Eq. (
8
). Therefore, the total number of primitives for four-variable functions is
calculated as Eq. (
9
).
C
3
2
3
¼
32
ð
8
Þ
2
þ
8
þð
C
2
4
Þ
2
þ
C
3
2
3
¼
10
þ
48
þ
32
¼
90
ð
9
Þ
The total number of primitives for three-variable problems can be obtained
through the same method. Equation (
10
) shows the detailed calculation.
8
þð
C
2
3
Þ
2
þ
2
3
¼
40
ð
10
Þ
In summary, there are ninety primitives for four-variable problems and forty for
three-variable problems. The three-variable primitives are a subset of the four-variable
primitives. Table
1
lists all four-variable primitives.
3.2
Majority Expression
The geometric interpretations of three-variable problems have been explored in [
10
].
However, four-variable functions are more complex because they cannot always be
built within two levels. The basic principle will be introduced through an example
described in Eq. (
11
):
f
¼
ab
0
c
0
d
0
þ
abcd
þ
ac
0
d
ð
11
Þ
As a four-variable function can be mapped on to a four by four K-map as a
collection of on-set and off-set squares, the K-map of the function f is shown in Fig.
9
with the filled squares as on-set and the white squares as off-set.
As shown in Fig.
10
, the solution can be represented by a tree structure with each
of its nodes containing at most three branches since a majority gate has only three
inputs. The top node of the tree is the result which is formed by selecting the proper
primitives as inputs to a majority gate. The rule for selecting primitives is stated as
follows:
The first primitives should cover as many on-set squares as possible and as few
off-set squares as possible. If several primitives meet this rule, any one of them can be
selected. The second primitive must cover the on-set squares that are not covered by
the first primitive and must not cover the off-set squares that are covered by the first
primitive. For the second primitive, it is also an objective to cover as many on-set
squares and as few off-set squares as possible. After the first two primitives are
Search WWH ::
Custom Search