VLSI DV Interview Puzzles · All levels
within Timeout Window Escape
Property intent: ack ##1 done must complete inside req-to-timeout window. Timeline: C80 start=1 req=1, C82 ack=1, C83 timeout=1, C84 d1. Determine the verdict.
Puzzle
Difficulty: Hard · Puzzle 5 of 6 · Topic: Assertion Debug Puzzles
Property intent: ack ##1 done must complete inside req-to-timeout window. Timeline: C80 start=1 req=1, C82 ack=1, C83 timeout=1, C84 done=1. Determine the verdict.
Code
sequence timeout_window;
req ##[1:3] timeout;
endsequence
sequence rsp_pair;
ack ##1 done;
endsequence
property p_rsp_within_timeout;
@(posedge clk) start |-> (rsp_pair within timeout_window);
endpropertyHint
within requires the entire rsp_pair sequence to be enclosed by timeout_window.
Step-by-step solution
1) timeout_window can match from C80 to C83.
2) rsp_pair spans C82 to C84.
3) done at C84 falls outside the matched timeout window end at C83.
4) Containment fails.Answer
Answer: FAIL - the response starts inside the window but finishes after timeout, violating within containment.
Why candidates get it wrong
A classic review bug is checking only ack timing and ignoring full-sequence completion bounds.
Interviewer follow-up
How would you rewrite this if partial overlap (not full containment) were acceptable?