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
  • 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
    • How to Dissect a Protocol
    • UART
    • SPI
    • I2C
    • APB
    • AHB
    • AXI4
    • AXI-Stream
    • PCI Express
    • DDR
    • CHI
    • Ethernet
    • USB
    • UCIe
    • CXL
    • Protocols Compared: Protocols Dissected
    • Drills: Protocols Dissected
  • Part 17: Capstones5
  • Part 18: Interview Preparation6
Loading lesson

‹First Principles of Hardware Protocols
  1. Topics
  2. First Principles of Hardware Protocols
  3. Part 16: Protocols Dissected

Part 16 · Protocols Dissected · All levels

Part 16: Protocols Dissected

How do real protocols answer the fifteen questions? Explain why each protocol made its main choices.

  • 17topics
  • 17lessons
On this page

    Part 16 answers: How do real protocols answer the fifteen questions?

    Each page in this part takes one real protocol and runs it through the same checklist: its constraints first, then its answer to each of the fifteen questions, each answer linked to the lesson that explains it. These pages are not spec tutorials; they show the principles paying off.

    After this part you can

    • Explain why each protocol made its main choices.

    • Compare two protocols question by question.

    • Apply the checklist to a protocol not covered here.

    Warm-up: three questions from Part 15

    Answer each in your head before opening it. If two or more feel shaky, revisit Part 15: Specifying and Verifying first.

    Check yourself What is the difference between a safety and a liveness property?

    Safety says nothing bad ever happens (checkable on a finite trace); liveness says something good eventually happens (needs a bound or a formal tool).

    Check yourself How should a scoreboard match AXI responses that share an ID?

    With a queue per ID: responses with the same ID return in order, so each matches the oldest outstanding request with that ID.

    Check yourself Name two coverage points every handshake interface needs.

    Any two of: back-to-back transfers, long stalls, ready before valid, maximum outstanding, boundary cases such as the last beat, and error responses.

    Lessons

    #

    Lesson

    Level

    Status

    16.1

    How to Dissect a Protocol

    W · Working

    Ready

    16.2

    UART

    F · Foundation

    Ready

    16.3

    SPI

    F · Foundation

    Ready

    16.4

    I2C

    F · Foundation

    Ready

    16.5

    APB

    F · Foundation

    Ready

    16.6

    AHB

    W · Working

    Ready

    16.7

    AXI4

    W · Working

    Ready

    16.8

    AXI-Stream

    W · Working

    Ready

    16.9

    PCI Express

    S · Senior

    Ready

    16.10

    DDR

    S · Senior

    Ready

    16.11

    CHI

    P · Principal

    Ready

    16.12

    Ethernet

    S · Senior

    Ready

    16.13

    USB

    W · Working

    Ready

    16.14

    UCIe

    P · Principal

    Ready

    16.15

    CXL

    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.

    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.

    • Bus Protocols course (to be retired)

    Related topics

    • Course hub

    • Previous: Part 15 · Specifying and Verifying

    • Next: Part 17 · Capstones

    PreviousNext: How to Dissect a Protocol

    Up next

    Up nextHow to Dissect a Protocol

    Sign in to save progress

    Practice this lessonReport an error

    See also

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