Clock Domain Crossing (CDC) constraints apply to timing paths that have a different launch and capture clock. There are synchronous CDC and asynchronous CDC depending on the launch and capture clocks relationship and on the timing exceptions set on the CDC paths. For example, CDC paths between synchronous clocks but covered by false path constraints are not timed, and consequently are treated as asynchronous CDCs.
Asynchronous CDC paths can be safe or unsafe. The terminology of safe and unsafe for asynchronous CDC paths is different from the terminology used for inter-clock timing analysis (see report_clock_interaction). An asynchronous CDC path is considered safe when it uses a synchronization circuitry to prevent metastability of the capture sequential cell.
For more information, refer to this link in the Vivado Design Suite User Guide: Design Analysis and Closure Techniques (UG906).
The timing analysis of CDC paths can be fully ignored by using set_false_path
or set_clock_groups
constraints, or partially analyzed by using set_max_delay -datapath_only
. In addition, the multibit CDC
paths capture time spread can be constrained using the set_bus_skew
constraint.