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

  • Start Here4
  • UVM Foundations14
  • UVM Phases & Simulation Lifecycle26
  • Factory & Configuration15
  • Transaction-Level Modeling (TLM)13
  • UVM Sequences & Stimulus21
  • UVM Agents & Protocol VIP21
  • Environment & Test Classes11
  • Checking & Coverage in UVM21
  • UVM Register Abstraction Layer (RAL)22
  • Advanced UVM in Practice13
  • Debug & Regression10
  • Coding Practice47
    • How to Use This Course
    • Whiteboard Delivery Framework
    • Scoreboard Coding
      • Ordered FIFO Compare
      • Out-of-Order Reorder Buffer
      • Multi-Stream Merge
      • Predictor & Reference Model
      • Scoreboard Tricky Q&A
    • Monitor & Driver Coding
    • Sequences Coding
    • TLM & Analysis
    • RAL & Adapters
    • Factory & config_db
    • Phases & Objections
    • Env & Test Architecture
    • Debug Broken Testbench
    • Mock Interview Sets
    • Senior UVM Coding Cheat Sheet
  • Verification in Industry Practice10
  • Senior Prep: Architecture, Leadership and Interviews32
Loading lesson

←Scoreboard Coding
  1. Topics
  2. UVM Verification
  3. Coding Practice
  4. Scoreboard Coding
  5. Out-of-Order Reorder Buffer
On this page

    UVM Coding PracticeSenior

    Out-of-Order Reorder Buffer

    Reorder buffer, sequence IDs, timeout stale entries.

    Interview prompt

    AXI read responses can return out of order. Whiteboard a scoreboard that matches by ID.

    Diagram
    WHITEBOARD CHAIN
    
    1. DECLARE    interfaces / types / ports you need
    2. SKELETON   class extends + utils macro + key methods
    3. MECHANISM  fill one critical method while narrating
    4. PITFALL    name one bug juniors make on this pattern
    5. TEST       how you would smoke-test the component

    Reference sketch (≤40 lines)

    design.sv
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function void write_act(axi_txn t);
      int idx = find_exp_id(t.id);
      if (idx >= 0) compare_and_remove(idx, t);
      else act_q.push_back(t);
    endfunction
    function int find_exp_id(int id);
      foreach (exp_q[i]) if (exp_q[i].id == id) return i;
      return -1;
    endfunction

    Smoke test (5 minutes)

    • Two reads different IDs — responses reversed order.

    • Verify compare succeeds.

    • Timeout test: exp without act — policy fires.

    Code lab drill

    After reading, try Code lab exercise uvm-l8-int-scoreboard-ooo — topic reference: /topics/uvm/coding-practice/scoreboard/out-of-order-reorder

    Common pitfalls

    • Head-only compare on OOO bus.

    • No stale entry timeout — memory leak in exp_q.

    • ID width mismatch between monitor and predictor.

    Previous

    187 / 280

    Next: Multi-Stream Merge

    Up next

    Up nextMulti-Stream Merge

    Sign in to save progress

    Practice this lessonPrevious lessonReport an error

    See also

    • Ordered FIFO Compare
    • Predictor & Reference Model
    • Scoreboard Tricky Q&A