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

AboutContactPrivacyTerms
Skip to lesson

Course contents

  • How to Use This Course
  • Reading Paths
  • Concept Map
  • How to Read the Diagrams
  • Part 0: What Is a Protocol?10
  • Part 1: Timing and Clocking11
  • Part 2: Encoding and Framing12
  • Part 3: Handshakes13
  • Part 4: Flow Control17
  • Part 5: Transactions19
  • Part 6: Concurrency and Performance17
    • Latency, Throughput and Bandwidth
    • Little's Law
    • Outstanding Transactions
    • Tags and IDs
    • In-Order or Out-of-Order
    • Reorder Buffers
    • Interleaving
    • Split Completions
    • Protocol Efficiency
    • Peak and Sustained Bandwidth
    • Queueing Intuition
    • Tail Latency
    • Buffers That Hide Latency
    • Virtual Output Queues
    • Performance Modelling
    • Protocols Compared: Concurrency and Performance
    • Drills: Concurrency and Performance
  • Part 7: Ordering13
  • Part 8: Sharing and Arbitration12
  • Part 9: Deadlock and Liveness13
  • Part 10: Reliability and Recovery20
  • Part 11: Bring-Up and Link Management10
  • Part 12: Power8
  • Part 13: Shared State and Coherence9
  • Part 14: Security and Isolation7
  • Part 15: Specifying and Verifying11
  • Part 16: Protocols Dissected17
  • Part 17: Capstones5
  • Part 18: Interview Preparation6
Loading lesson

‹First Principles of Hardware Protocols
  1. Topics
  2. First Principles of Hardware Protocols
  3. Part 6: Concurrency and Performance

Part 6 · Concurrency and Performance · All levels

Part 6: Concurrency and Performance

How many requests can be in flight? Use Little's law to size outstanding requests and tag fields.

  • 17topics
  • 17lessons
On this page

    Part 6 answers: How many requests can be in flight?

    Where Part 6 sits among the fifteen questions of the course.

    A link that waits for each answer before asking again wastes most of its bandwidth. Keeping several requests in flight fixes that, and brings tags, reordering and new ways to run out of resources.

    This part covers latency versus throughput, Little's law, outstanding transactions, tags, out-of-order completion, reorder buffers, interleaving, efficiency, queueing, tail latency and performance modelling before RTL.

    After this part you can

    • Use Little's law to size outstanding requests and tag fields.

    • Turn a link's line rate into its real payload bandwidth.

    • Explain why latency explodes near full load.

    Warm-up: three questions from Part 5

    Answer each in your head before opening it. If two or more feel shaky, revisit Part 5: Transactions first.

    Check yourself Why are reads harder to make fast than writes?

    A read's data comes back only after a full round trip, so the requester waits. A write can be handed off and, if posted, forgotten.

    Check yourself What does a posted write give up?

    Knowledge of when, or whether, it completed: no response comes back, so errors and completion order are not visible to the writer.

    Check yourself Why must an AXI burst not cross a 4 KB boundary?

    Targets and address translation work in 4 KB pages, so a burst that crossed one could reach two different targets or translations.

    Lessons

    #

    Lesson

    Level

    Status

    6.1

    Latency, Throughput and Bandwidth

    F · Foundation

    Ready

    6.2

    Little's Law

    W · Working

    Ready

    6.3

    Outstanding Transactions

    W · Working

    Ready

    6.4

    Tags and IDs

    W · Working

    Ready

    6.5

    In-Order or Out-of-Order

    S · Senior

    Ready

    6.6

    Reorder Buffers

    S · Senior

    Ready

    6.7

    Interleaving

    S · Senior

    Ready

    6.8

    Split Completions

    S · Senior

    Ready

    6.9

    Protocol Efficiency

    W · Working

    Ready

    6.10

    Peak and Sustained Bandwidth

    W · Working

    Ready

    6.11

    Queueing Intuition

    S · Senior

    Ready

    6.12

    Tail Latency

    P · Principal

    Ready

    6.13

    Buffers That Hide Latency

    S · Senior

    Ready

    6.14

    Virtual Output Queues

    P · Principal

    Ready

    6.15

    Performance Modelling

    P · Principal

    Ready

    —

    Protocols compared

    all levels

    Ready

    —

    Drills and checkpoint

    all levels

    Ready

    Every lesson in this part is ready. Work through them in order: each one sets up the problem the next one solves.

    Tip

    DCLink in this part. Step 5: tags and four outstanding reads completing out of order. DCLink is the small protocol you build across the course; see How to use this course.

    Where other courses go deeper

    This course teaches why protocols are designed the way they are. These lessons show how to build or sign off the same ideas, so this part links to them instead of repeating them.

    • Architecture: Little's Law, MLP and the Waterfall

    Related topics

    • Course hub

    • Previous: Part 5 · Transactions

    • Next: Part 7 · Ordering

    PreviousNext: Latency, Throughput and Bandwidth

    Up next

    Up nextLatency, Throughput and Bandwidth

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • How to Use This Course
    • Reading Paths
    • Concept Map