Clock cells
Each card shows a command to explain. A missed card returns later in the round and starts the schedule over. A card answered correctly moves up the schedule and next appears after 1, 3, 7, then 21 days. Keys 1 to 4 choose an option, h shows a hint, and Enter moves on. A hint keeps the card where it is on the schedule. An ordering card is answered by clicking its items in order, and one wrong click ends it. Time values are in nanoseconds. Progress is stored in this browser.
All 5 cards in this section, with answers
-
CLKBUF_X1 versus BUF_X1A clock buffer, drawn so its rise and fall delays match closely.
Hint: The clock cares about something the data path mostly does not.
A chain of unbalanced buffers slowly distorts the duty cycle, which eats the high or low pulse width the registers need. Clock cells are drawn to keep the two edges symmetric, and clock tree synthesis is given only those cells to build with. the open libraries reference
-
sky130_fd_sc_hd__clkinvlp_2A low-power clock inverter, traded against speed.
Hint: The letters before the drive strength say what it is optimized for.
The clock switches every cycle and reaches every register, so it is often the largest single consumer of dynamic power. A library that offers lower-power clock cells lets the tree use them where the extra delay is affordable. the open libraries reference
-
sky130_fd_sc_hd__dlygate4sd1_1A delay cell: it passes the signal through and adds a controlled delay.
Hint: Its function is the identity. Ask what it is bought for.
Hold repair needs delay without drive, and a buffer adds too little for its area. Delay cells give a predictable amount per cell. The
dlymetalfamily in the same library gets its delay from long internal wires instead of gates. the open libraries reference -
CLKBUF_X1 characterized with matched rise and fall delaysMatched edges keep the duty cycle from drifting along the tree.
Hint: Ask what happens to a pulse after twenty unmatched stages.
If a cell's rising delay differs from its falling one, every stage shifts one edge relative to the other and the high phase shrinks. After a deep tree the pulse can be too narrow for the registers at the leaves, which is what the minimum pulse width check catches. the open libraries reference
-
a tree of clock inverters, against a tree of clock buffersInverters give the same tree with half the stages, so sharper edges.
Hint: A buffer is two inverters. Ask what that costs at every level.
Since a buffer is a pair of inverters, building with inverters halves the number of stages for the same drive, which means less accumulated variation and a cleaner edge. The tree must then have an even number of levels to every leaf, or the registers see opposite phases. the open libraries reference