VLSI DV Interview Puzzles · All levels
Clocking Block Puzzles
Clocking blocks remove many races, but only when skew and cycle-delay semantics are understood precisely. These puzzles test sampling versus driving instants, plus `##1` expectations in clocking-domain assertions.
About this puzzle set
Clocking blocks remove many races, but only when skew and cycle-delay semantics are understood precisely. These puzzles test sampling versus driving instants, plus `##1` expectations in clocking-domain assertions.
Puzzles in this topic
diagram
1. Why First Sample Sees Old grant [Medium]
2. Interpreting |=> ##1 in Clocking Domain [Hard]
3. output #1step Misses Current Edge [Medium]
4. input #0 vs input #1step Snapshot [Hard]
5. Raw @posedge Monitor vs @(cb) Monitor [Medium]
6. Mixing Direct Drive and cb Drive [Hard]Work each puzzle before reading the solution: predict the exact output or answer, name the rule that governs it, then check yourself.
SV scheduling regions at puzzle scale
diagram
SYSTEMVERILOG EVENT REGIONS (SIMPLIFIED ORDER)
time slot T
|
+--> ACTIVE : blocking statements, RHS sampling
+--> INACTIVE : #0 queued work
+--> NBA : non-blocking LHS updates commit
+--> OBSERVED : assertions sample stable design values
+--> REACTIVE : testbench/program reaction code
If behavior looks impossible, ask: "Which region saw which value?"