Exercises — Dynamic CMOS logic
Constants used throughout unless a problem says otherwise: .

Level 1 — Recognition
Can you name the parts and read the clock?
L1·Q1
In a dynamic gate the clock is . Precharge happens when and evaluate happens when . Which transistor is ON in each phase? (Use the labelled and from the schematic above.)
Recall Solution
- Precharge: . Recall what "ON" means for a PMOS: it conducts only when its gate is more than a threshold magnitude below its source. Here the source is and the gate is , so . The precise ON-condition is , i.e. , which is true as long as (always the case in a working chip). So is comfortably ON, pulling the output to . The foot NMOS has gate , so its (NMOS needs to turn on) → OFF.
- Evaluate: . Now 's gate is , so → OFF; 's gate is → ON, and the pull-down network decides. WHAT it looks like: picture the output node as a bucket. At you fill it ( open, drain valve shut). At the fill valve closes and the drain valve opens.
L1·Q2
Count the transistors in a dynamic 3-input gate (PDN uses 3 NMOS). Compare with a static CMOS gate of the same 3 inputs.
Recall Solution
Let = the number of inputs to the gate; here . Dynamic . Static CMOS needs one PMOS and one NMOS per input (a full PUN plus a full PDN), so Static . So dynamic saves 1 transistor here; because dynamic grows as while static grows as , the gap grows for wider gates.
L1·Q3
A dynamic gate has 4 NMOS in parallel in its PDN. What logic function is the output ?
Recall Solution
Parallel NMOS conducts if any input is 1 → discharge condition is . The output is — a 4-input NOR. (See Pull-down networks (series = AND, parallel = OR): parallel = OR inside the bar.)
Level 2 — Application
Build the PDN, run the truth table.
L2·Q1
Build a dynamic gate for (3-input NAND). Describe the PDN, then give for inputs and .
Recall Solution
PDN: three NMOS in series (series = AND). Why series? A series chain conducts only when all gates are 1, matching the discharge condition .
- : whole chain conducts → output discharges → . ✓
- : middle transistor off → chain broken → node stays precharged → . ✓
L2·Q2
Build a dynamic gate for . Describe the PDN topology.
Recall Solution
The discharge expression is .
- (an AND) → and in series.
- (an OR) → put in parallel with that series pair. So: branch 1 = ( series ); branch 2 = (); the two branches in parallel between output node and the foot NMOS .
- : branch 1 conducts → .
- alone: branch 2 conducts → .
- : no branch conducts → . ✓ (.)
L2·Q3
During precharge, is the foot NMOS ON or OFF, and what disaster does that prevent if in a series-PDN gate?
Recall Solution
During precharge → foot NMOS OFF. With all inputs high, the series NMOS chain is fully conducting. If were absent (or on), current would flow ground: a static short-circuit, wasting power and preventing the node reaching . breaks the ground path, so precharge succeeds no matter what the inputs are.
Level 3 — Analysis
Charge, leakage, and timing numbers.
L3·Q1
A dynamic node has , precharged to . During evaluate a series PDN turns on but stops at a discharged internal node of (the lower transistor stays off, so no path to ground). Compute the final output voltage after charge sharing, and decide if it could be read as a false 0 (assume the input threshold of the next stage is ).

Recall Solution
Read the figure first. On the LEFT (BEFORE), all the charge lives on the big orange at , while the small dashed sits empty at — the top transistor is still off, so they are isolated. The purple arrow marks the moment turns on. On the RIGHT (AFTER), and are now connected, so the same charge has spread across both and both boxes sit at the drooped level . The figure is the picture behind the formula below. WHY this formula: total charge is conserved. Before sharing, all charge sits on : . After the top transistor connects to the empty , that same charge spreads over the combined capacitance : Plug in: , so it still reads HIGH — no false 0 this time. But the droop (visible as the fading orange in the figure) eats noise margin; larger would flip it. See Charge sharing and keepers.
L3·Q2
Repeat L3·Q1 but with . Does it now read as a false 0?
Recall Solution
WHY the numerator is (restated): the charge trapped by the precharge lives on the output cap , so the conserved quantity is — that is why (not ) sits on top. When the top transistor connects to the empty , this same spreads over the combined , giving . Now with : → below the next stage's threshold → this is now a false 0. The output should have stayed 1 (path to ground was open) but charge sharing dragged it under threshold. This is exactly the failure the parent note warned about.
L3·Q3
A logic-1 is held only as trapped charge. Leakage current drains . How long until the node droops from to the threshold? (Assume constant leakage — a worst-case linear model.)
Recall Solution
WHY : current is the rate charge leaves the cap, . On a capacitor , so differentiating (with fixed) gives ; hence . With constant , is constant, so voltage falls linearly and . Allowed droop . Numerator . Divide by : . So the value is safe for ~18 ms — the clock period must be shorter than this (or add a keeper). Compare with Clocking and precharge timing.
Level 4 — Synthesis
Design and diagnose whole circuits.
L4·Q1
Design a dynamic gate realizing . Give the PDN and confirm three input cases.
Recall Solution
Discharge expression .
- is ANDed with everything → put in series with the rest (top of the stack).
- is an OR → parallel . So the PDN is: in series with (), all above the foot NMOS .
- : on, on → path conducts → . ✓
- : on but both off → no path → . ✓
- : off → chain broken regardless of → . ✓
L4·Q2
Two dynamic gates are cascaded: output of gate 1 feeds an NMOS in gate 2's PDN. During precharge, gate 1's output is HIGH. Explain the monotonicity failure and give the standard fix.
Recall Solution
The failure: at every dynamic output precharges to . So gate 2's input is a spurious HIGH before gate 1 has actually evaluated. When (evaluate), gate 2 starts discharging based on that HIGH input. If gate 1's true result is 0, its output later falls — but by then gate 2's node may already be wrongly discharged. Charge lost cannot come back (no path pulls it up during evaluate). A dynamic PDN can only safely tolerate inputs that go during evaluate, never . This is a monotonicity violation. The fix: insert a static inverter after each dynamic gate → Domino logic. Now each stage's output is LOW during precharge and can only rise in evaluate — exactly the allowed monotonic direction.
L4·Q3
A 4-input dynamic NOR vs a static 4-input NOR: count transistors and name the specific static structure that dynamic logic eliminates and why that matters for speed.
Recall Solution
Dynamic NOR: (parallel PDN) () () . Static NOR: — an NMOS parallel PDN plus a 4-PMOS series pull-up stack. Dynamic removes the 4-PMOS series stack. That stack is slow for two compounding reasons:
- Stack sizing / resistance. Series PMOS resistances add, and holes are less mobile than electrons, so each PMOS is already ~2–3× more resistive than an equal-width NMOS. To hit a target rise-time you must widen every PMOS in the stack (upsizing), which balloons area and input capacitance — a vicious circle that gets worse the deeper the stack.
- Threshold-drop edge case in deep series PMOS. As you stack PMOS in series, the internal source nodes of the upper devices no longer sit at a clean ; each device's magnitude is eroded, and the body effect raises the effective of the transistors farther from the rail. Their overdrive shrinks, so they conduct weakly right at the end of the rise — the last stretch toward crawls, stretching rise-time badly for tall stacks. Replacing that whole stack with one clocked precharge PMOS (which sees a full across it and no series partners) sidesteps both problems → the gate is smaller and faster. This is the headline win of dynamic logic. See Static CMOS logic.
Level 5 — Mastery
Invent, size, and trade off.
L5·Q1
You must guarantee a dynamic node holds its 1 for a full clock period of against leakage. If and the maximum tolerated droop before the next stage's threshold is , what is the largest leakage current you can tolerate? If actual leakage is higher, what circuit element do you add?
Recall Solution
WHY : leakage is a flow of charge off the node, . The trapped charge lives on the output cap, , so with fixed, → . Modelling the droop as linear over the period gives , so the tolerable leakage is: Numerator . Divide by : . (In real 20 fF nodes leakage is far below this, so a 10 ns period is comfortably safe.) If leakage ever exceeded the budget, you add a keeper: a weak feedback PMOS that trickles charge back onto the node to replace what leaks. See Charge sharing and keepers.
L5·Q2
A keeper is a weak PMOS that fights leakage but also fights the PDN during a legitimate discharge. If the PDN pull-down resistance is and the keeper's on-resistance is , the node's low-state voltage settles at the resistive divider . For the low level to stay below , find the minimum .
Recall Solution
WHY a divider: during a real discharge, keeper (up) and PDN (down) form a series path ground; the node sits at the divider point. Require: So the keeper must be at least — i.e. weak (much more resistive than the PDN). This is exactly why keepers are drawn as tiny minimum-width devices.
L5·Q3
A 3-input series PDN has transistors (top), (middle), (bottom), with an internal node between each pair; each internal node has cap and both start discharged. Output is precharged to . Among the input patterns that leave the path to ground broken (so the output should stay 1), which one causes the worst charge-sharing droop, and what is for it?
Recall Solution
Reasoning about "worst case": droop grows as more internal capacitance gets connected to while ground stays isolated. Exposing more internal nodes = larger total = larger droop. So we want to turn on as many top transistors as possible while keeping at least one lower transistor off to block ground.
- Turn on only ( off): exposes just the top node, .
- Turn on and ( off, still blocks ground): exposes both internal nodes, . The second pattern () is the worst case: it connects the most internal capacitance while off still blocks ground, giving the largest droop . Fix: precharge the internal nodes too (secondary precharge PMOS), or add a keeper.
Recall Self-test checklist
Did each phase go the right direction? ::: Precharge () pulls UP to ; evaluate may pull DOWN through NMOS PDN via . Charge-sharing fraction? ::: — numerator is . Why can't you cascade raw dynamic gates? ::: Precharge makes all outputs HIGH → non-monotonic inputs → use Domino. Keeper design rule? ::: Weak PMOS, (about ), so it beats leakage but loses to the PDN.