CDC / RDC · All levels

Handshake Protocols Across Domains: Worked Example

Worked Example for Handshake Protocols Across Domains.

Worked example

Worked Example for Handshake Protocols Across Domains focuses on req/ack completion reliability, deadlock risk, backpressure behavior. The goal is to convert issue observations into mechanism-backed closure decisions.

A milestone review shows req/ack completion reliability, deadlock risk, backpressure behavior. Teams disagree on severity. The right move is to isolate one representative issue, prove mechanism class, and decide fix or waiver with explicit residual risk.

Crossing under inspection

diagram
CROSSING FLOW — Handshake Protocols Across Domains

source clock domain -> launch signal -> crossing structure -> destination sample
      |                    |                 |                    |
   source FF           protocol           sync / fifo         destination FF

Key metric: req/ack completion reliability, deadlock risk, backpressure behavior

Req/Ack flow

diagram
SRC: req -----> DEST
SRC: <----- ack  DEST

Rules:
1) req stable until ack observed
2) req/ack each cross through synchronizer
3) no combinational loop across domains
  1. Capture warning, waveform, and owning module context.

  2. Tag mode/reset/traffic state for the failure.

  3. Validate assumptions against spec and assertions.

  4. Compare outcome with handshake timing spec, assertion suite, latency histogram.

  5. Choose one reversible action and define regression upfront.

Did the action work?

diagram
BEFORE / AFTER — Handshake Protocols Across Domains

open critical issues
  ^
  |  o baseline
  |     o after fix batch
  |         o after protocol proof
  |             o signoff-ready
  +---------------------------------> closure iteration

Track issue burn-down with evidence quality, not only count.

CDC/RDC deep dive

Protocol correctness is the bridge between structural clean and functional safe.

Concept diagram

diagram
PROTOCOL FLOW

intent -> transport protocol -> synchronization -> destination acceptance

Metric graph

diagram
PROTOCOL ISSUE BURNDOWN

open issues: 20 -> 11 -> 5 -> 0

Reports 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