CDC / RDC · All levels
Handshake Protocols Across Domains: Software / Programmer View
Software / Programmer View for Handshake Protocols Across Domains.
RTL / implementation view
State machine contracts must encode eventual delivery and backpressure.
What designers feel
Intermittent sync failure
mode-dependent startup hangs
RTL structure impact
state machine handshake discipline
reset release assumptions
cross-domain data packaging
Synthesis interaction
retiming can invalidate implicit assumptions
lint clean does not imply CDC-safe
RTL-side mitigations
explicit synchronizer wrappers
protocol assertions
reset sequence tests
RTL VIEW — Handshake Protocols Across Domains
// ensure crossing intent and protocol assumptions are explicit in module contractImplementation layers touched
CDC/RDC OWNERSHIP LAYERS — Handshake Protocols Across Domains
layer owns common failure
------------------ ----------------------------- -----------------------------
design intent crossing architecture wrong topology selected
protocol semantics req/ack, fifo, ordering liveness/deadlock bugs
reset behavior assert/deassert sequencing boot instability
analysis setup tool rules + waivers false confidence
signoff governance risk acceptance + dashboard stale critical waiversCDC/RDC deep dive
Protocol correctness is the bridge between structural clean and functional safe.
Concept diagram
PROTOCOL FLOW
intent -> transport protocol -> synchronization -> destination acceptanceMetric graph
PROTOCOL ISSUE BURNDOWN
open issues: 20 -> 11 -> 5 -> 0Reports and artifacts
FIFO pointer proofs
req/ack liveness
pulse miss checks
protocol assertions
Mini case study
Async FIFO empty/full logic looked correct until gray decode mismatch appeared during reset overlap.
Debug branches
Pointer sync audit
formal liveness checks
reset interaction review
Senior review question
Ask: what evidence proves this risk is closed for silicon, not just tool-clean?
Key takeaways
State crossing class, assumptions, and owner with every issue.
Run structural and dynamic regressions after each fix.
Common pitfalls
Treating all warnings as equivalent risk.
Waiving issues without containment evidence.
Skipping reset and reconvergence stress after CDC fixes.
Principal CDC/RDC review addendum
Two-way handshakes guarantee delivery across asynchronous clocks when both request and acknowledge paths are synchronized and protocol invariants are enforced.
Metric: req/ack completion reliability, deadlock risk, backpressure behavior