CMOS Circuit Design
Level: 4 — Application (novel problems, no hints) Time limit: 60 minutes Total marks: 60
Assume the following unless a question states otherwise:
- Supply voltage
- NMOS threshold , PMOS threshold
- Unit transistor transconductance where noted
Question 1 — Compound gate synthesis and sizing (14 marks)
A designer needs a single static CMOS complex gate implementing
(a) Draw (describe transistor-by-transistor) the pull-down network (PDN) and pull-up network (PUN), stating series/parallel arrangement for each. (4)
(b) The reference inverter uses NMOS width and PMOS width (to equalise drive, given electron mobility hole mobility). Size every transistor in your complex gate so its worst-case pull-up and pull-down strengths equal those of the reference inverter. Give each transistor width. (7)
(c) State which input assignment gives the worst-case (slowest) charging path through the PUN, and justify. (3)
Question 2 — Noise margins from a piecewise VTC (12 marks)
Measurements on a fabricated inverter give the voltage transfer characteristic slope at two points:
- with output
- with output
(a) Compute and . (4)
(b) This inverter drives an identical stage across a bus that couples in a noise spike of amplitude onto a logic-LOW line. Will the receiving gate misinterpret the level? Justify numerically. (3)
(c) The transition (undefined) region width is . A second design has the same but a steeper VTC giving , . Compare both noise margins and the transition width, and explain the design trade-off implied. (5)
Question 3 — Dynamic vs static power and PDP (12 marks)
A CMOS block on a supply switches at with an average node switching activity . Total switched capacitance . Static leakage current is .
(a) Compute the dynamic power and static power. State which dominates. (5)
(b) Total propagation delay through the critical path is . Compute the power–delay product using total power. (3)
(c) The designer lowers to . Assuming dynamic power scales as , leakage scales linearly with , and delay increases by a factor , recompute total power and PDP. Comment on whether voltage scaling improved the PDP. (4)
Question 4 — Dynamic / Domino logic evaluation (12 marks)
Consider a footed dynamic logic gate evaluating (i.e. a dynamic NAND-like structure) with a clock .
(a) Describe the precharge and evaluate phases, and explain what the "foot" (clocked NMOS) transistor prevents. (4)
(b) Explain why a plain dynamic gate cannot be directly cascaded to another dynamic gate, and how converting to domino logic fixes this. State one function limitation domino logic introduces. (5)
(c) During evaluation the dynamic node (, precharged to ) suffers charge sharing with an internal node (, initially at ) when only the top transistor turns on. Compute the resulting dynamic node voltage and state whether this risks a false evaluation if the gate's switching threshold is . (3)
Question 5 — Pass-transistor / transmission-gate mux delay (10 marks)
A 2:1 multiplexer is built from two transmission gates (TGs) selecting between inputs .
(a) Explain why a single NMOS pass transistor passing a logic HIGH suffers a "threshold drop", and how the TG removes it. (4)
(b) Each TG can be modelled as a resistance driving the output load plus a following inverter input . Using the Elmore delay estimate , compute the propagation delay from a TG input to the output node. (4)
(c) State one reason a chain of pass transistors gives delay growing as , and how buffering breaks this. (2)
Answer keyMark scheme & solutions
Question 1
(a) Function . PDN pulls low when .
- PDN (NMOS): transistor in series with the parallel combination of and . (Series – parallel .) (2)
- PUN (PMOS): dual network — in parallel with the series combination of and . (Parallel – series .) (2)
(b) Reference: , .
PDN sizing (match to single reference NMOS of width 1):
- The series path is then ( ∥ ). Worst-case pull-down is a series stack of two transistors → each series device doubled to keep the effective series resistance equal to one unit NMOS.
- : series with the stage → width .
- and are in parallel, but the worst case (only one of B,C on) must still drive: each must be sized as a series element → width each. (3)
PUN sizing (match to reference PMOS width 2):
- and in series → each doubled: each.
- in parallel (single device path) → . (3)
Summary table: , ; , (µm). (1)
(c) Worst-case (slowest) PUN charging: the path through the series – PMOS stack, which occurs when (so the parallel PMOS is OFF) and . Charging must flow through two stacked PMOS in series → highest resistance → slowest rise. (3)
Question 2
(a) (4)
(b) A logic-LOW line sits at . Adding a spike gives . Compare to : since , the input is still interpreted as valid LOW. Equivalently the spike () is less than , so no misinterpretation. (3)
(c) Design 2: , .
- Transition width: design 1 ; design 2 . (2)
- Design 2 has larger noise margins and narrower transition (steeper VTC → higher gain). (1)
- Trade-off: steeper VTC (higher gain in transition) improves noise immunity but a higher-gain, higher- stage generally costs larger devices / more current / more sensitivity to process variation, and a sharper transition can increase short-circuit power during switching. (2)
Question 3
(a) (3) (1) Dynamic power dominates (). (1)
(b) . (3)
(c) Scaling to (factor ):
- (3)
Comparison: PDP falls from to , so voltage scaling improved the PDP despite slower speed (power drops with faster than delay rises here). (1)
Question 4
(a) Precharge (): the top PMOS turns on, charging the dynamic output node to ; the foot NMOS is OFF so no DC path. Evaluate (): PMOS off, foot NMOS on; if the input NMOS stack conducts, the node discharges (output goes LOW), else it holds HIGH. The foot transistor prevents a short-circuit / static discharge path during precharge (ensures no crowbar current while the PMOS charges the node, and prevents evaluation before the clock is high). (4)
(b) During precharge all dynamic nodes are HIGH. If gate G1's output (HIGH) feeds gate G2's input, in evaluate phase G2 may begin discharging before G1 has decided to fall — a transition at G1's output can wrongly trigger G2, but dynamic gates only work with monotonic inputs during evaluate. A dynamic input starting HIGH violates monotonicity → false discharge. (2) Domino fix: add a static inverter after each dynamic node. Its output is LOW after precharge and can only rise during evaluate — a monotonically rising signal — which is a legal input to the next dynamic stage. (2) Limitation: because of the inverter, each domino stage is non-inverting; domino logic can only realise non-inverting functions (cannot directly build inverting logic without extra techniques). (1)
(c) Charge sharing (conservation of charge): (2) Since (the switching threshold), the node stays above threshold → no false evaluation (safe, but margin is reduced). (1)
Question 5
(a) An NMOS passing a HIGH conducts only while ; as the source (output) rises, shrinks and the device shuts off when the output reaches . Hence the output cannot exceed (a "threshold drop", weak "1"). The transmission gate adds a parallel PMOS driven by the complementary control; the PMOS passes a strong HIGH (loses no near ) while the NMOS passes a strong LOW, so together they deliver a full-swing to . (4)
(b) Total load . (4)
(c) A chain of pass transistors forms a distributed RC ladder; the Elmore delay sums - products over all upstream sections, giving → quadratic growth. Inserting buffers/inverters every few stages restores full logic levels and breaks the ladder into segments, making total delay grow linearly with . (2)
[
{"claim":"Q2 noise margins NMH=0.65 and NML=0.58",
"code":"VOH,VIH,VIL,VOL=1.70,1.05,0.70,0.12; NMH=VOH-VIH; NML=VIL-VOL; result=(abs(NMH-0.65)<1e-9 and abs(NML-0.58)<1e-9)"},
{"claim":"Q3a dynamic power = 9.72 mW",
"code":"Pdyn=0.15*40e-12*1.8**2*500e6; result=abs(Pdyn-9.72e-3)<1e-9"},
{"claim":"Q3c scaled PDP approx 1.325 pJ",
"code":"Pd=9.72e-3*(1.2/1.8)**2; Ps=8e-6*1.2; Pt=Pd+Ps; tp=180e-12*1.7; PDP=Pt*tp; result=abs(PDP-1.325e-12)<5e-15"},
{"claim":"Q4c charge-sharing node voltage = 27/21 V",
"code":"V=(15*1.8+6*0)/(15+6); result=abs(V-27/21)<1e-9 and V>0.9"},
{"claim":"Q5b TG delay approx 29 ps",
"code":"tp=0.69*1200*35e-15; result=abs(tp-2.898e-11)<1e-13"}
]