Interface Protocols · All levels

USB Link & Packet Model: Mechanism

Mechanism for USB Link & Packet Model.

Mechanism to understand

Mechanism for USB Link & Packet Model focuses on enumeration success, retry count, endpoint throughput. The goal is to connect the observable symptom to protocol mechanism, ownership, and regression risk.

USB combines host-driven enumeration, endpoints, packets, link states, and PHY behavior into a software-visible device model. Think of it as a contract enforced at boundaries: the sender promises stability and legality, the receiver promises forward progress, and the fabric in between promises not to silently change identity or ordering.

  • Identify the transaction boundary: request, data, response, completion, or retry.

  • Identify the flow-control boundary: valid/ready, grant, credit, FIFO depth, or lane state.

  • Identify what the receiver is allowed to assume and what the sender must hold stable.

Layered view

diagram
PROTOCOL STACK VIEW — USB Link & Packet Model

software / firmware intent
        |
        v
transaction semantics: address, ID, length, attributes, ordering
        |
        v
link / channel behavior: handshake, credits, backpressure, retries
        |
        v
physical or timing layer: clocking, reset, pins, lanes, PHY
        |
        v
observability: waveform, VIP transaction, counter, analyzer trace

Debug rule: never jump layers without carrying the transaction identity with you.

USB transfer = token/data/handshake

diagram
USB TRANSACTION

host: TOKEN (IN/OUT/SETUP, addr, endpoint)
        |
        v
data: DATA0/DATA1 packet
        |
        v
ack : HANDSHAKE (ACK/NAK/STALL)

NAK = "not ready, retry" (normal). STALL = "error, software must clear".

Layer responsibilities

diagram
LAYER RESPONSIBILITY — USB Link & Packet Model

layer          owns                         common failure
-----------    --------------------------   -----------------------
software       intent, ordering needs       wrong assumption
transaction    id/addr/len/attributes       ordering / outstanding
link/channel   handshake, credits, retry    backpressure / deadlock
physical       clock/reset/lanes/PHY        timing / training / SI
observability  waveform/log/counter         missing evidence

Protocol deep dive

USB/Ethernet/MIPI failures cross MAC counters, PCS framing, PHY adaptation, and channel SI.

Concept diagram

diagram
HIGH-SPEED STACK

app -> MAC/framing -> PCS/encoding -> SerDes/PHY -> channel

CRC errors often mean PCS/PHY/channel, not TCP.

Metric graph

diagram
BER vs EQ SETTING

BER
1e-3 |*
1e-6 |  *
1e-9 |     **** usable window
1e-12|          *
     +-----------------> EQ tap

Metrics and artifacts to collect

  • CRC error rate

  • retrain count

  • frame drop

  • lane error

  • BER

Mini case study

Ethernet link up at 100G but lossy: equalization margin on one lane narrow after package change. Digital counters were clean; PHY margin was not.

Debug branches

  • If link up but lossy, PHY margin and retrain.

  • If enumeration OK but throughput low, check packet size and DMA batching.

  • If MIPI frame drops, blanking budget and lane polarity.

Senior review question

Ask: what is the first transaction that deviates, and which spec rule does it test?

Key takeaways

  • Connect every protocol claim to a transaction identity and measurable metric.

  • Store the artifact (waveform, log, counter) next to every signoff decision.

Common pitfalls

  • Debugging timeouts without finding the first bad transaction.

  • Quoting peak bus width without payload efficiency and retry overhead.

  • Treating VIP compliance as a substitute for system integration replay.

Mechanism deep dive

USB combines host-driven enumeration, endpoints, packets, link states, and PHY behavior into a software-visible device model.

Walk the transaction forward: request accepted → data moves → response completes → software visible effect.