CDC / RDC · All levels

Async FIFO CDC: Step-by-Step Walkthrough

Step-by-Step Walkthrough for Async FIFO CDC.

Step-by-step analysis walkthrough

Use this sequence when owning Async FIFO CDC in a signoff review.

  1. Inspect warning class and severity.

  2. Trace crossing endpoints and domains.

  3. Check protocol/reset assumptions against spec.

  4. Review synchronizer or FIFO implementation detail.

  5. Run focused assertion or formal check.

  6. Draft fix options with risk and schedule impact.

  7. Execute regression and publish closure memo.

Artifacts to collect

  • FIFO architecture diagram, pointer proof checks, formal safety properties

  • crossing inventory

  • waiver board notes

  • regression report

Decision memo template

diagram
CDC/RDC DECISION MEMO — Async FIFO CDC
risk class:
mechanism:
evidence:
fix/waiver:
owners: RTL owner, CDC owner, formal owner

Reference visuals

Async FIFO core

diagram
write clk domain                       read clk domain
wr_ptr(bin->gray) ---sync---> rd domain compare
rd_ptr(bin->gray) <---sync--- wr domain compare

full/empty must be computed with synchronized gray pointers.

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

Async FIFOs decouple domains with gray-coded pointers and synchronized status logic; correctness depends on pointer math, full/empty rules, and reset behavior.

Metric: overflow/underflow risk, pointer synchronization integrity, latency throughput