Professional Documents
Culture Documents
D. Radhakrishnan
Paper 75156 (ElO), first received 13th February 1989 and in revised A series connection of a number of nMOS (pMOS)
form 14th March 1989 transistors passes the input to the output when all
The author is with the NETECH Corporation, 60 Bethpage Drive, control signals are high (low). For an nMOS chain, this is
Hicksville, NY 11801, USA represented by the expression X , X , . . . X,(V), where X , ,
I E E PROCEEDINGS-G, Vol. 138, No. I , F E B R U A R Y 1991 83
Authorized licensed use limited to: SARDAR VALLABHBHAI NATIONAL INSTITUTE OF TECH. Downloaded on January 31, 2010 at 07:06 from IEEE Xplore. Restrictions apply.
X , , . . . , X, are the control variables applied to the gates network is a special type of pass network where the
of the transistors and V is the pass variable. number of branches from each node is limited to two [6].
A product term P = X I X , . . . X,, passing an input The control variables for the two branches are always
signal V, is defined as a pass implicant and is denoted by complements of each other. Hence, in the design of a BTS
P( V). A pass function is formed by the sum of a number pass network the K-map is always divided into two equal
of pass implicants. In a minimal pass function, all pass halves at each step of the minimisation process. The
implicants belong to the set of pass prime implicants. A
pass prime implicant is a pass implicant that cannot
subsume any other pass implicant with a smaller number
of literals in it that implies the same function.
The major difference in the design of a pass network,
as compared to a gate network, is that both Os and 1s of
the function must be included. The pass network design
procedures given in Reference 4, which make use of a
K-map and modified Quine-McCluskey algorithmic
approach, first select all essential pass prime implicants
from the function and then a minimal set of pass prime
implicants to cover the whole function. Fig. 3 nMOS pass network f o r Fig. 2
The K-map minimisation procedure is based on the f = o(A(1) + C(A))+ d(S)+ 6C(B)
following:
(a) Each and every entry in the map must be covered nMOS BTS pass function and its pass network for the
at least once. K-map in Fig. 2 are given in Fig. 4.
(b) Pass implicants are identified in accordance with BTS pass networks, if designed properly, provide
the following rules: optimal realisations in most cases because of their inher-
(i) Each implicant PAC) consists of 2' adjacent cells
;I
ent factorising nature. The only nonoptimal networks
in the K-map and the product term P i is formed found so far correspond to XOR functions. The following
in an identical manner to traditional implicants.
(ii) The pass variable in the implicant must be
, equal to one of the elements from the set {O, 1,
X i , Xi} throughout the implicant.
A pass function obtained from a K-map may be factor-
ised to reduce the transistor count in the implementation. 1
The following example illustrates the design of an nMOS f
pass function by the use of a K-map.
Example I: The K-map for a four-variable function is Fig. 4 nMOS BTS puss network for the K-map in Fig. 2
shown in Fig. 2. The nMOS pass function is given by f= "ca + RO))+ A(1))+ LxB)
f = AD(1) + CD(A)+ D ( B ) + A'C'(B)
definition is useful for the minimisation of BTS pass func-
tions.
Authorized licensed use limited to: SARDAR VALLABHBHAI NATIONAL INSTITUTE OF TECH. Downloaded on January 31, 2010 at 07:06 from IEEE Xplore. Restrictions apply.
The first problem can be overcome if we break longer implicant is augmented with the 1 cells 0, 2, 8 and 10.
chains of pass transistors into smaller ones by interposing The same is true of other pass implicants inf(N). The
buffer stages. The second has two solutions: two pass prime implicants D’(B’) and CD(A) together
(i) Use CMOS pass networks. -
(ii) Design an nMOS pass network for the complemen- A D
tary pass functionf’ and then invert it to getf by means I
of a CMOS inverter. The inverter threshold may be
adjusted to take into account the worst case logic levels
on f‘. In addition to restoring the logic levels on the
output, this solution gives some drive capability to the
output signal.
3 CMOS networks
CMOS networks can be classified into two types, CMOS
pass networks and CMOS gate networks. CMOS pass
networks behave similarly to nMOS pass networks. They E n I
use fewer transistors compared to CMOS gate networks
and can be used to advantage in the design of complex
CMOS networks.
3.1 Notation Fig. 5 CMOS pass networkfrom Fig. 3
The following notation is used in the remainder of this
paper to represent the different switching functions: cover all the 0 cells except cell 5. This 0 cell can be
f: represents the switching function of a network. covered in three different ways. They are A’B(O), A’C‘(B’)
f(1): partial pass function obtained by combining the or BD(A). If BD(A) is chosen instead of A’B(O), then
1s of the function. f ( N ) = D’(B’) + D(C(A) + B(A)). This complementation
f ( 0 ) :partial pass function obtained by combining the needs 4 nMOS transistors. Similarly, the PMOS network,
Os of the function. to cover the 1s of the function, is given by
f(P): partial pass function for a PMOS pass network.
f(N): partial pass function for an nMOS pass network. f(P)= D’(B’) + AD(1) + B’C‘(1).
f”: Dual of functionf: A second choice is possible where B’C‘(1) is replaced
The following relationship is valid for switching func- with A’C‘(B’).In both cases, the PMOS transistor count is
tions: five. The complete CMOS pass network is shown in Fig.
6.
f = f ( l ) +f@)
3.2 CMOS pass networks
CMOS pass networks use both nMOS and PMOS tran-
sistors in their implementation. An nMOS pass network
can be easily converted to a CMOS pass network by the
following two steps:
(a) Replace all nMOS transistors with PMOS tran- “--f
Authorized licensed use limited to: SARDAR VALLABHBHAI NATIONAL INSTITUTE OF TECH. Downloaded on January 31, 2010 at 07:06 from IEEE Xplore. Restrictions apply.
to the special class of pass networks where the pass vari-
ables belong to the set {0, I}.
Some additional notation is introduced here to sim-
plify the presentation in the remainder of this paper:
7-
r-7
'DD
p-net
r-l
I
n-net
V554
Fig. 7 CMOS gate network
4
\AE
Authorized licensed use limited to: SARDAR VALLABHBHAI NATIONAL INSTITUTE OF TECH. Downloaded on January 31, 2010 at 07:06 from IEEE Xplore. Restrictions apply.
will be incurred because of the finite pull down time. In a cascaded set of logic blocks, each stage evaluates
Thus, the precharged node can discharge the output node and causes the next stage to evaluate. Any number of
of the following gate before the first gate is correctly logic stages may be cascaded, provided the sequence can
evaluated. evaluate within the evaluate clock phase. A single clock
The n-net design is exactly the same as in the pseudo- can be used to precharge and evaluate all logic gates
nMOS gate. Thus, the two possible implementations of a within a block. The limitations of this structure include
dynamic CMOS gate for the K-map in Fig. 8 are as the charge redistribution problem and the buffering of
shown in Fig. 10. each gate. Furthermore, only noninverting structures are
possible. The two possible implementations for this gate,
corresponding to the K-map in Fig. 8, are shown in Fig.
11.
d
Fig. 11
vss
d-
to the presence of the inverter at the output, the n-net is A K-map minimisation procedure and a tabular
designed according to the function. During the precharge approach to the design of the n-nets is given in Reference
phase (4 = 0), the output node of the dynamic gate is 10. This procedure is based on the generation of four dif-
precharged high and, hence, the output of the buffer is ferent lists: 10, 01, 1 and 0. For a function of n variables
kept low. As subsequent logic stages are fed from this XI,X,,. . . ,X, the transistor trees formed by the use of
buffer, transistors in subsequent logic blocks will be 10 and 01 lists are always connected to the outputsfand
turned off during the precharge phase. When the gate is f’ by transistors controlled by X, and X,. In addition,
evaluated, the output will conditionally discharge, the control variables X iin each of the tree branches are
causing the output of the buffer, conditionally, to go high. arranged from top to bottom in ascending order, with
Thus, each gate in sequence can make, at most, one tran- magnitudes of i. This procedure does not always guar-
sition 1 -+ 0. Hence, the buffer can only make a transition antee minimal transistor implementations, as shown later
from 0 + 1. in this paper. Furthermore, the four lists, 1401, 1, and 0,
IEE PROCEEDINGS-G, Vol. 138, No. I , FEBRUARY 1991 87
. . .-. ..
Authorized licensed use limited to: SARDAR VALLABHBHAI NATIONAL INSTITUTE OF TECH. Downloaded on January 31, 2010 at 07:06 from IEEE Xplore. Restrictions apply.
correspond to the pass implicants with pass variables Xi, The following example illustrates the design of a
X i , 1 and 0, respectively, where X i is an input variable CVSL gate by means of procedure 1.
for the Function. Hence, Chu’s procedure [lo] for the
Example 3: Consider the K-map shown in Fig. 14a. A
minimal nMOS pass function for this K-map is given by
+ +
f = DA(1) DA’B’(C) D(B’) B(D). +
-Mf
f
I!“
design of CVSL gates can be described by the following
procedure based on pass logic design. To apply this pro-
;i
cedure, a minimal nMOS pass function is first derived
from a K-map or by the modified Q-M technique pre-
sented in Reference 4. This pass function can always be
represented by a sum of m pass prime implicants as C
VSS
T v O O
\AB
0 b
Fig. 1 4 C V S L gate implementationdesigned according to Chu’s approach
+
(I Four-variable K-map./= DA(1) + DA’B’(C) + D’(B‘) B(D)
b CVSL implementation
Authorized licensed use limited to: SARDAR VALLABHBHAI NATIONAL INSTITUTE OF TECH. Downloaded on January 31, 2010 at 07:06 from IEEE Xplore. Restrictions apply.
the CVSL gate in example 3 is ten. This justifies our (b) Connect the output node to V,.
earlier statement regarding the nonoptimality of Chu’s (c) Connect each input node of the pass network to
procedure [IO] for the design of CVSL gates. eitherforf’ according to the following criteria:
One way to find a minimal transistor implementation (i) If the pass variable is 0, then connect the input
is by trying all possible choices for the n-nets, N o and NI node to$
in Fig. 12, with maximum sharing of transistors between (ii) If the pass variable is 1, then connect the input
them. This can be done in the following manner. First, node tof‘.
assume that the two n-nets are labelled N I and N o , as (iii) If the pass variable is X, then connect the input
shown in Fig. 12. Their corresponding logic expressions node tof through a transistor controlled by X’
are denoted by f N 1 and f N o , respectively. f N o can be and tof’ through a transistor controlled by X.
obtained either from f(O), by simply dropping the pass (iv) If the pass variable is X , then connect the input
variables, or from f ( l ) , by dropping the pass variables node to f ‘ through a transistor controlled by
and complementing the expression. In a similar manner, X and to f through a transistor controlled by
f N , can be obtained either fromf(1) or fromf(0).fN, and X.
f N o can then be factorised in different ways, which gives
many choices for the implementation of the CVSL gate. The following example illustrates the design of a static
This is illustrated by the following example. CVSL gate by means of procedure 2.
1 I I
Example 6 : Consider the XOR function f(A, B, C,
D)= A 8 B 0 C 0 D. A minimal transistor implementa-
tion of this function uses 14nMOS transistors and is
Fig. 15 Optimal CVSL gate for the K-map in Fig. 14a
given in Reference 9. An nMOS BTS pass function forf
/*, = ED + B(A + C + D ) , f * , = E D + BDC‘A’ can be written as
are shared between the two n-nets. Thus, the total nMOS
+ +
f = A’(B’(C‘(D) C(D’)) B(C‘(D) + C(D)))
transistor count is ten. + A(B’(C‘(D’) + C(D))+ B(C‘(D) + C ( D ) ) )
The method used in example 4 for optimal design of a If we use the two complementary sums C ( D ) + C ( D ) and
CVSL gate is very laborious and time-consuming. Hence, C‘(D’)+ C(D)inJ this can be factorised and rewritten as
a modified procedure for the design of an optimal CVSL
gate is given below. This procedure is based on the opti- f = {A’B’ + AB}(C‘(D)+ C ( D ) )
mality property of BTS pass networks.
+ {A’B + AB}(C‘(D’)+ C(D))
Procedure 2: This function gives the same minimal transistor imple-
( a ) Form the BTS pass network for the function. mentation as in Reference 9.
IEE PROCEEDINGS-G, Vol. 138, N o . I, FEBRUARY 1991 89
Authorized licensed use limited to: SARDAR VALLABHBHAI NATIONAL INSTITUTE OF TECH. Downloaded on January 31, 2010 at 07:06 from IEEE Xplore. Restrictions apply.
Even though CVSL gates designed by means of BTS 4 Conclusions
pass networks give minimum transistor implementations,
they may not always be the best choice in terms of Different methods for the design of complex CMOS net-
switching speed. In many implementations, the stack works are given in this paper. All of these designs are
shown to follow directly from the design of pass net-
works. These methods always provide a means for the
CD
E€dl
00
design of optimal networks. It is also shown that CVSL
designs based on BTS pass networks always use the
minimum number of transistors.
5 Acknowledgment
I PP I 9
ceedings of 21st Annual Asilomar Conference on Signals, Systems
and Computers, Nov. 1987, pp. 52S-530
WESTE, N., and ESHRAGHIAN, K.: ‘Principles of CMOS VLSI
design’ (Addison-Wesley, Massachusetts, USA, 1985)
10 CHU, K.M., and PULFREY, D.1.: ‘Design procedures for differen-
tial cascode voltage switch circuits’, IEEE J., 1986, SC-21, pp. 1082-
1087
Biographical details
Fig. 16 Optimal C V S L gate realisation from BTS pass network
n Four-variable K-map of Fig. 140
Damu Rndhakrishono received the BSc
b BTS pass network degree in Electronics and Communication
e CVSL network Engineering from the University of
Kerala, India in 1968 and the MTech and
P h D degrees from the Indian Institute of
height increases because of the BTS nature, which Technology, Kanpur, India and the Uni-
increases the switching delay. This can be seen by com- versity of Idaho, Moscow, Idaho, USA,
paring the CVSL gates in Figs. 14b and 16c. For min- both in Electrical Engineering, in 1975
terms m 5 and m, off, the switching network in Fig. 146 and 1983, respectively.
consists of the series circuit controlled by the two tran- From 1983 to 1985 he was a n Assistant
sistors B and D connectingf’ to Vss. On the other hand, Professor in the Department of Electrical
Engineering, Old Dominion University, Norfolk, Virginia. Since
in Fig. 16b, the switching network consists of the series 1985 he has been with the Department of Electrical Engineer-
circuit controlled by the three transistors D, A’ and B. ing, University of Idaho, Moscow, Idaho. At present he is the
This introduces an extra delay in switching, which slows Vice President of the NETECH Corporation, New York. His
the gate. Hence, in high performance designs, there is a current research interests include VLSI design, fault tolerant
tradeoff between speed and transistor count. digital systems, computer architecture and switching theory.
Authorized licensed use limited to: SARDAR VALLABHBHAI NATIONAL INSTITUTE OF TECH. Downloaded on January 31, 2010 at 07:06 from IEEE Xplore. Restrictions apply.