Skip to content
DenseChip
Learn
PracticeCode labInterview

DenseChip

Navigate

Menu

LearnPracticeCode labInterview

Tools

All toolsSV editorCode repoResume
DenseChip

Practice, courses, and chip-design tools in one focused workspace.

LearnPracticeCode labInterviewToolsLearning paths

© 2026 DenseChip

AboutRoadmapCareersInternshipsFAQContactPrivacyTerms
Skip to lesson

Course contents

  • How to Use This Puzzle Bank
  • SystemVerilog Language Puzzles25
  • Difficulty Guide
  • Full Topic Map
  • Interview-Day Tips
  • Study Route: One Week Before the Interview
  • Study Route: Two Weeks
  • Study Route: Four Weeks (Full Course)4
  • OOP & Testbench Puzzles25
  • Concurrency & Timing Puzzles25
    • Event Scheduling Puzzles
    • Race Condition Puzzles
    • Clocking Block Puzzles
      • Why Every Sample Is One Cycle Old
      • Interpreting |=> ##1 in Clocking Domain
      • disable fork Kills Unrelated Background Threads
      • input #0 vs input #1step Snapshot
      • Nonzero Input Skew Looks Back in Time
      • Mixing Direct Drive and cb Drive
    • Semaphore & Mailbox Puzzles
    • Concurrency & Timing Puzzles: Tricky Q&A
  • Randomization & Constraint Puzzles25
  • SVA Assertion Puzzles25
  • Functional Coverage Puzzles25
  • Logic & Aptitude Puzzles25
  • Scenario & Debug Puzzles25
  • UVM Testbench Puzzles25
  • Clock, Reset & CDC Puzzles25
  • Bus and Interface Protocol Puzzles25
  • Interview Prep: Puzzle Rounds7
  • DV Puzzle Cheatsheet
Loading lesson

←Concurrency & Timing Puzzles
  1. Topics
  2. DV Interview Puzzles
  3. Concurrency & Timing Puzzles
  4. Clocking Block Puzzles
On this page

    VLSI DV Interview PuzzlesAll 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.

    • 6topics
    • 6lessons

    Topics in this section

    1. 1Why Every Sample Is One Cycle Old1 lesson
    2. 2Interpreting |=> ##1 in Clocking Domain1 lesson
    3. 3disable fork Kills Unrelated Background Threads1 lesson
    4. 4input #0 vs input #1step Snapshot1 lesson
    5. 5Nonzero Input Skew Looks Back in Time1 lesson
    6. 6Mixing Direct Drive and cb Drive1 lesson

    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 Every Sample Is One Cycle Old  [Medium]
    2. Interpreting |=> ##1 in Clocking Domain  [Easy]
    3. disable fork Kills Unrelated Background Threads  [Medium]
    4. input #0 vs input #1step Snapshot  [Medium]
    5. Nonzero Input Skew Looks Back in Time  [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?"

    Related topics

    • Concurrency & Timing Puzzles section

    • VLSI DV Interview Puzzles hub

    PreviousNext: Why Every Sample Is One Cycle Old

    Up next

    Up nextWhy Every Sample Is One Cycle Old

    Sign in to save progress

    Practice this lessonPrevious lessonReport an error

    See also

    • Event Scheduling Puzzles
    • Race Condition Puzzles
    • Semaphore & Mailbox Puzzles