Interface Protocols · All levels

Enumeration & Link Training: Review Checklist

Review Checklist for Enumeration & Link Training.

Review checklist

Review Checklist for Enumeration & Link Training focuses on link width, link speed, LTSSM failure state, enumeration time. The goal is to connect the observable symptom to protocol mechanism, ownership, and regression risk.

  • Spec revision and implemented feature subset are named.

  • Clock/reset and CDC assumptions are reviewed.

  • Traffic classes, IDs/tags, ordering, and outstanding limits are documented.

  • VIP/compliance coverage maps back to requirements.

  • Performance metric and debug artifact are stored with the signoff note.

  • Owners signed: firmware owner, PHY owner, PCIe integration owner.

Sign-off ownership

diagram
OWNERSHIP MAP — Enumeration & Link Training

evidence type        owner who reads it
-----------------    ---------------------------
waveform/RTL        firmware owner
spec/VIP            PHY owner
firmware/system     PCIe integration owner

Rule: every metric must have a named owner before a review starts.

Protocol deep dive

PCIe is reliable packet delivery over unreliable links; debug flows PHY -> DLL -> TLP -> firmware.

Concept diagram

diagram
PCIe DEBUG TOP-DOWN

L0 link healthy?  -> credits OK?  -> TLP completes?  -> driver happy?

Skip a layer and you will mis-own the bug.

Metric graph

diagram
LINK DEGRADE EXAMPLE

target x4 Gen4  ---- ---- ---- ----
actual   x4 Gen4  ---- ---- ---- ----   (eval board)
actual   x1 Gen3  -                   (product board)

Package/SI often shows up as width downgrade, not hard fail.

Metrics and artifacts to collect

  • link width/speed

  • replay count

  • completion timeout

  • AER error log

  • LTSSM history

Mini case study

Endpoint enumerated but DMA timed out: completion credits exhausted because a switch port was misconfigured in firmware, not because the endpoint was broken.

Debug branches

  • If degrade at width/speed, PHY/SI before driver.

  • If replay storm, link layer before transaction layer.

  • If CXL coherency bug, separate .io vs .cache vs .mem traffic.

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.

Principal review addendum

Re-read Enumeration & Link Training against one concrete product workload, not a synthetic directed test.

firmware enumeration and LTSSM link training establish topology, capabilities, resources, and negotiated speed.