3.2.12 · D2CMOS Circuit Design

Visual walkthrough — Domino logic

1,785 words8 min readBack to topic

Step 1 — What a "node" and its "charge" even are

WHAT. A node is just a wire — a piece of metal where signals meet. Because it is metal near other metal, it behaves like a tiny bucket that stores electric charge. We call that storage its capacitance , and the amount of charge sitting in it . The two connect by one rule:

  • ::: how much electric charge is parked on the node (in coulombs).
  • ::: the "bucket size" of the node — how much charge it holds per volt.
  • ::: the voltage on the node — think "how full the bucket is."

WHY start here. Dynamic logic remembers a value by leaving charge sitting on a wire. To understand why the value can be lost (the whole danger), we must first see the wire as a bucket. Nothing else in this page makes sense without it.

PICTURE. The node is drawn as a bucket. Voltage = water level; charge = water inside.

Figure — Domino logic

Step 2 — Why a floating node freezes its value

WHAT. If no wire lets charge flow in or out, the node is floating. The current (the flow of charge per second) is then exactly zero:

  • ::: the rate at which charge changes — how fast the bucket fills or drains.
  • ::: current, the same thing, given its circuit name.
  • setting it to ::: says "no pipe is open," so the water level cannot move.

WHY this tool (the derivative). We use because "does the stored value change?" is literally a question about rate of change over time — and the derivative is the one tool built to answer exactly that. No conducting path ⇒ zero rate ⇒ frozen level.

PICTURE. A sealed bucket: both pipes shut, water level pinned. This is why a dynamic node can hold HIGH — and also why a wrong drain is unrecoverable.

Figure — Domino logic

Step 3 — The two phases of the clock

WHAT. A single control wire — the clock — swings between two values, and each value opens a different pipe:

Name Top pipe (PMOS) Bottom pipe (evaluate NMOS)
Precharge OPEN → fills to SHUT
Evaluate SHUT OPEN → may drain
  • ::: the clock signal, the referee that says "now fill" or "now decide."
  • ::: the supply voltage — the "full bucket" level, our logic HIGH.

WHY. A dynamic gate cannot both fill and decide at once, or it would fight itself. Splitting time into fill-then-decide is the whole trick, and is the switch that does the splitting. See Clocking and Precharge Schemes for the timing.

PICTURE. Same bucket, two snapshots side by side: (top pipe open, filling) and (bottom pipe open, maybe draining).

Figure — Domino logic

Step 4 — The bare dynamic gate: node across a full cycle

WHAT. Put the pull-down network (PDN) — the stack of NMOS switches that "asks the question" — on the bottom pipe. Trace :

  • Precharge: climbs to (HIGH), guaranteed.
  • Evaluate, PDN conducts: bottom pipe opens and the PDN drains to (LOW).
  • Evaluate, PDN blocked: node floats (Step 2) → stays HIGH.

WHY. This is the raw Dynamic CMOS Logic gate. Notice the danger already: during evaluate, begins HIGH. If we fed this raw into another gate, the downstream gate sees HIGH too early. Hold that thought.

PICTURE. A timeline of : flat-high through precharge, then at evaluate either a red fall to 0 or a blue flat line staying high.

Figure — Domino logic

Step 5 — Bolt on the inverter → the domino output

WHAT. Attach a static CMOS inverter to . Its job: output the opposite of its input.

  • ::: the usable output of the domino gate — the wire we hand to the next gate.
  • ::: "NOT ": HIGH when is LOW, LOW when is HIGH.

Now re-read the levels through the inverter:

Phase
Precharge HIGH LOW
Evaluate HIGH or falls to 0 LOW or rises to 1

WHY the inverter and not just a buffer. Two reasons at once. (1) It flips the "starts HIGH" danger into "starts LOW." (2) It gives real drive strength to push the next gate. The flip is the star — see Step 6.

PICTURE. 's waveform on the left, inverter in the middle, 's mirror-image waveform on the right — where falls, rises.

Figure — Domino logic

Step 6 — The central result: is monotonically rising

WHAT. During evaluate, starts at and the only move it can make is . It can never fall inside an evaluate phase. A signal that can only go up is called monotonically rising.

Why can't it fall? Because falling would need to rise during evaluate — but during evaluate the top pipe is SHUT (Step 3), so has no way to refill. can only stay or fall ⇒ can only stay or rise.

WHY this is the whole point. Feed such a into a downstream PDN transistor. That transistor's gate starts LOW ⇒ it starts OFF ⇒ the downstream node cannot drain early. It drains only after an upstream climbs 0→1 — i.e. only after the previous "domino" has fallen. The race is structurally impossible.

PICTURE. A single evaluate window with shown as: the only allowed transition is a green up-arrow; a red down-arrow is crossed out.

Figure — Domino logic

Step 7 — Cascade proof: two gates never fight

WHAT. Gate 1's output drives a transistor in Gate 2's PDN.

  • At evaluate start: (from precharge) ⇒ Gate 2's transistor OFF ⇒ Gate 2's node safe.
  • Later: if the logic demands it, rises ⇒ Gate 2's transistor turns ON exactly once, in the right order ⇒ Gate 2 evaluates correctly.

WHY. This is Step 6 applied twice. The monotonic rule guarantees an ordering: nothing downstream moves until its upstream input has finished. Dominoes fall left to right, never backward.

PICTURE. Two gate boxes chained; timeline shows rising first, then rising after — like two dominoes toppling in sequence.

Figure — Domino logic

Step 8 — The degenerate case: charge sharing (when the picture breaks)

WHAT. The PDN's internal wires are also buckets (call one , sitting at ). If evaluate opens a path from to that empty bucket but not all the way to ground, charge splits between them. Conserve charge:

  • ::: all the charge originally on (the only charge in the system).
  • ::: the empty internal bucket contributes nothing.
  • ::: the two buckets now share one common level, so add their sizes.

The drop . If it pushes below the inverter's switching point, falsely rises — breaking monotonicity for the wrong reason.

WHY show this. A derivation that only shows the happy path is a lie. This edge case is real, and its cure — a weak keeper PMOS (gate ) that trickle-refills — is why Charge Sharing and Keepers exists. The keeper fights so stays HIGH when it should.

PICTURE. Big bucket (full) connected to small empty bucket ; water levels out to ; a small tap (keeper) drips back up.

Figure — Domino logic

The one-picture summary

Everything above, compressed: precharge fills (so ), evaluate either drains (so rises) or holds it — and because the top pipe is shut during evaluate, can only rise, which lets dominoes chain safely.

Figure — Domino logic
Recall Feynman: the whole walkthrough in plain words

A wire is a bucket; how full it is = its voltage; how much water = its charge. Seal the bucket and the level can't change — that's how a chip "remembers" a bit. A clock opens one of two pipes: first a top pipe fills the bucket (precharge), then a bottom pipe lets it maybe drain (evaluate). We slap an inverter on the bucket, so "full bucket" reads out as 0 and "empty bucket" reads out as 1. Because the top pipe is shut during evaluate, the bucket can only stay full or drain — never refill — so the readout can only stay 0 or climb to 1, never fall. Every gate's output starts at 0 and only ever rises. Wire them in a row and each one waits for the one before it to "fall" before it moves — a chain of dominoes that can only topple forward, so they never knock each other over by mistake. The one wrinkle: tiny hidden buckets inside the gate can steal some water when the pipe opens, lowering the level enough to fool the inverter — so we add a slow dripping tap (the keeper) to top it back up.


Connections

  • Domino logic (index 3.2.12) — the parent this walkthrough derives
  • Dynamic CMOS Logic — the precharge/evaluate base (Steps 3–4)
  • Static CMOS Logic — the inverter bolted on (Step 5)
  • Charge Sharing and Keepers — the degenerate case (Step 8)
  • Clocking and Precharge Schemes — timing of
  • Pull-Down Network Design — the NMOS network that "asks the question"
  • NP / Zipper Domino — variants that beat the non-inverting limit