Visible to Intel only — GUID: aov1730751260618
Ixiasoft
Visible to Intel only — GUID: aov1730751260618
Ixiasoft
3.1.6. Debug CDC Example 3—CDC Depending on Two Simultaneous Clock Domains
CDC Example 3 Description
CDC Example 3 includes the same three-stage CDC synchronizer instance from previous examples named my_sync. In CDC Example 3, the inputs of a multiplexer are under the clk1 clock domain, while the control signal depends on the clk2 clock domain, as the following circuit shows:
CDC Example 3 has the following clock relationship derived from this set_clock_groups constraint:
set_clock_groups -asynchronous -group [get_clocks clk1] \ -group [get_clocks clk2]
CDC Example 3 Debug Overview
CDC Example 3 topology is incorrect because the multiplexer control signal is asynchronous to the reg_A and reg_B registers. This topology is incorrect, even though the multiplexer control signal is synchronous to the destination clock domain. CDC Example 3 topology results in a control signal that can change at a critical time, causing instability at the multiplexer output.
The following topics use CDC Example 3 to describe how you can identify and resolve similar CDC issues by analyzing the CDC-50012 Multiple Clock Domains Driving a Synchronizer Chain rule violation that Design Assistant reports, and then synchronizing each input to the multiplexer with the destination clock domain to resolve the violations.