CMOS NAND gate 2026-10-31
A static CMOS implementation of a NAND gate has a pull-down network of NMOS transistors in series and a pull-up network of PMOS transistors in parallel. With inputs it uses devices of each kind. All inputs high connect the output to ground; any low input breaks the pull-down path and connects the output to the positive supply through its corresponding p-channel device.
Complementary CMOS network duality Created 2026-10-25 Updated 2026-10-31
For an NMOS transistor network described by a series-parallel expression in conducting inputs, replace series by parallel, parallel by series, and each device by a PMOS transistor driven by the same input. De Morgan's laws show recursively that the resulting pull-up network conducts exactly when the original pull-down network does not. This proves complementary rail connections for stable binary inputs in the ideal static model. Factoring a Boolean function before constructing its dual can remove duplicated devices: needs three lower and three upper devices, instead of four of each. Physical switching transients, device sizing and delays are additional engineering questions.
For a CMOS inverter, connect one PMOS transistor from the positive supply to the output and one NMOS transistor from the output to ground; drive both gates with the input . When , the PMOS transistor conducts and the NMOS transistor is off; when , the reverse holds. Thus the output is , using two transistors.
For a four-input NAND gate, use four NMOS transistors in series between the output and ground, with gates . Use four PMOS transistors in parallel between and the output, with the same gate signals. The pull-down network conducts exactly when all four inputs are one; the pull-up network conducts whenever at least one input is zero. Hence
As usual for static CMOS, tie the NMOS transistor bodies to ground and the PMOS transistor bodies to .
A more economical static CMOS design follows from factoring the condition for . The output is low exactly when both input pairs disagree:
Generate with four CMOS inverters. Write or for an NMOS transistor or PMOS transistor whose gate receives . In the following network expressions, a dash means a series connection and means a parallel connection.
Connect this eight-device pull-down network between and ground:
The first parallel module conducts exactly when and the second exactly when . Their series connection therefore conducts precisely when should be zero.
By complementary CMOS network duality, connect this eight-device pull-up network between and :
A PMOS transistor conducts when its gate is zero. Consequently the first upper branch conducts when , namely ; the second conducts when . Their parallel connection gives the required logical disjunction. For every stable binary input, exactly one of the pull-up network and pull-down network conducts.
Figure 1.
Complementary CMOS networks: eight PMOS transistors above the output and eight NMOS transistors below it
. Details.
The figure labels each MOSFET channel by its gate signal; the four input CMOS inverters are additional to the devices drawn.
The two lower conducting branches are the series pairs controlled by and by . Their overall NMOS transistor conduction condition is . Apply complementary CMOS network duality: the upper network has the parallel pair of PMOS transistors controlled by , in series with the parallel pair controlled by . Its first end connects to the high rail, its last end connects to , and the junction between the two pairs is internal to the upper network.
The left panel gives that completion. Every upper transistor uses its correspondingly named input and conducts when that input is low. Its conducting condition is , exactly the complement of the lower condition. Thus the ideal static circuit connects the output to one supply rail for every stable binary input.
The lower network pulls the output low exactly when either series branch conducts. Therefore the Boolean function is
The inversion is important: describes connection to the low rail, not a high output. The pull-up network found in part a implements the complementary high condition.
Pull-up network 2026-10-25
A pull-up network connects a logic output to the high supply rail when its conducting condition holds. In static complementary CMOS, it is built from PMOS transistors and paired with a complementary pull-down network.