EE477_Lab2
EE477_Lab2
Lab 2
TAs: Tony Huang, Xiao Tuo, and Haodi Hu
Due on February 19, 2025 11:59 pm
General Note
1. This assignment is based on individual work. No collaboration is allowed.
2. The design you did in this lab will be used as part of your final project. If you aim for the top team for
winning the bonus points, be sure to optimize your design with regards to area, delay, power, etc.
3. You are expected to submit a pdf as your lab report, which includes screenshots and any explanatory text
you find necessary. Notice that lab reports with other formats will not be graded.
4. You don’t need to submit any source file unless specifically stated.
8. (Suggestion) For routing M2, M4 , . . ., draw the metallic tracks in the direction parallel to the ground and
power rails.
9. (Suggestion) For routing M3, M5 , . . ., draw the metallic tracks in the direction perpendicular to the ground
and power rails.
Submission Guideline
1. Report should be named as LAB2 FirstnameLastname USCID.pdf. For example,
LAB2 TommyTrojan 1234567890.pdf.
2. In the report, include all required screenshots and make sure your every screenshot shows your username.
Include any text you find necessary for helping graders to grade your report. The following figure demonstrates
an example.
1
1 Introduction
In this lab, we will design the schematic and layout of different static CMOS logic gates to achieve higher driving
strengths. In the last lab, we balanced the worst-case delay path in two respects:
1. equalize the approximate pull-up and -down resistance
2. match the approximate output resistance to the baseline inverter, i.e., the balanced-delay inverter with minimal
size
VDD
PA
A A
NA PA
NA NOT 2X 240 nm 480 nm
NOT 4X 480 nm 960 nm
2
VDD VDD
A PA PB B
A·B
A NA
B NB NA NB PA PB
NAND 2X 480 nm 480 nm 480 nm 480 nm
NAND 4X 960 nm 960 nm 960 nm 960 nm
VDD
B PB
A PA
A+B
A NA NB B NA NB PA PB
NOR 2X 240 nm 240 nm 960 nm 960 nm
NOR 4X 480 nm 480 nm 1920 nm 1920 nm
In the report, you can verify its functionality by testing it with the same input patterns as you do for the NAND
gates. To perform a complete propagation delay measurement, you have to test all possible single-input-toggle
transitions that result in specific output transition. You should also tabulate the delays in a table. Moreover, you
have to point out the worst delay. Take the measurement of propagation delay of rising output as an example. The
possible input transitions are (A, B) = (0, 1) → (A, B) = (0, 0) and (A, B) = (1, 0) → (A, B) = (0, 0).
3
First, we need to design an XOR gate with balanced delays and minimal size. In Lab 1, we know that the
mobility ratio ( µµnp ) of this fabrication technology is around 2. Based on this result, we can size all the transistors.
Here, an alternative way to realize an XOR gate is offered. It enables the removal of contacts at some non-output
internal nodes, hence lower parasitic capacitance. Observing A ⊕ B = AB + AB, we learn that when A = 1, the
outcome is B, and when A = 0, the outcome is B. According to this observation, we can derive two VDD-to-ground
branches to implement an XOR gate, as shown in fig. 4. The left branch realizes the case when A = 1, whereas the
right represents the case when A = 0.
Next, we need to design two XOR gates with double and quadruple driving strengths (XOR 2X and XOR 4X),
respectively. To minimize the area, we can implement them with an XNOR gate followed by an inverter. It can be
understood from the fact that XOR(A, B) = XN OR(A, B). Since the gate drives its load with an inverter, we can
adjust its driving strength by changing its output stage’s driving strengths. Figure 5 shows the schematic circuit of
XOR 2X and XOR 4X. Although XOR 1X can be designed this way, it is not preferable because an additional inverter
takes more area, increases the delay, and introduces more leakage.
The sizes of transistors of XOR 1X XOR 2X and XOR 4X cells are tabulated in table 4.
A
A
VDD NA0 A PA1 PB2 B
Output
PB0 A NA1 NB2 B
B
B
Table 4: Transistor widths of XOR 1X, XOR 2X, and XOR 4X (unit: nm)
In the report, you can verify its functionality by testing it with the same input patterns as you do for the
NAND or NOR gates. To perform a complete propagation delay measurement, you have to test all possible input
transitions that result in specific output state transitions. A valid input transition means toggling one of the inputs
at a time. You should also tabulate the delays in a table. Moreover, you have to point out the worst delay. Take
the measurement of propagation delay of rising output as an example. the possible input transitions are tabulated
in table 5.
4
VDD VDD VDD
A
A
VDD NA0 A PA1 PB2 B PC
Output
PB0 A NA1 NB2 B NC
B
B
4 Report Checklist
1. Schematic of all the gates (NOT 2X, NOT 4X, NAND 2X, NAND 4X, NOR 2X, NOR 4X, XOR 1X, XOR 2X, XOR 4X)
6. Functionality verification by plotting input and output waveforms for all the gates with FO4 testbench and
extracted views
7. A Table listing propagation delays for rising and falling outputs for all the gates with FO4 testbench and
extracted views
8. Highlight the highest rising and falling propagation delays for each gate