Terminology - 2025.2 English - UG906

Vivado Design Suite User Guide: Design Analysis and Closure Techniques (UG906)

Document ID
UG906
Release Date
2025-12-10
Version
2025.2 English

The terms safe, unsafe, and endpoints have different meanings in the context of cross domain crossing (CDC) analysis versus inter-clock timing analysis.

In CDC analysis:

  • An asynchronous crossing is considered safe when proper synchronization circuitry is used to prevent metastability.
    • A safe single-bit CDC uses a synchronizer, typically a chain of registers clocked and controlled (CE) by the same signals.
    • A safe multi-bit CDC uses structures such as MUX hold circuitry or Clock Enabled Controlled circuitry.
  • An asynchronous crossing is considered unsafe when the CDC analysis engine does not detect a recognized safe synchronization structure on the path.

The number of endpoints reported in a CDC report between two clock domains can differ from what is shown in timing analysis reports:

  • An asynchronous reset synchronizer can include multiple timing endpoints but is reported as a single CDC endpoint.
  • A multi-bit CDC contains several single-bit crossings but appears as one CDC endpoint. However, other timing reports list each bit as a separate timing path endpoint.
Important: Do not compare the number of endpoints between report_clock_interaction and report_cdc.
  • report_clock_interaction classifies crossings as safe or unsafe based on whether the timing engine can calculate slack that reflects the worst-case hardware behavior.
  • report_cdc classifies crossings as safe or unsafe based on whether known CDC synchronization circuits are present in the design.