Visible to Intel only — GUID: tqa1692908334057
Ixiasoft
Visible to Intel only — GUID: tqa1692908334057
Ixiasoft
5. CDC Parameterizable Macros
The CDC parameterizable macros allow you to generate various clock domain crossing (CDC) blocks. The current version of the Quartus® Prime Pro Edition software supports the following synchronizer parameterizable macros:
- Synchronous reset synchronizer parameterizable macro (ipm_cdc_sync_rst)
- Asynchronous reset synchronizer parameterizable macro (ipm_cdc_async_rst)
- Single bit synchronizer using single clock parameterizable macro (ipm_cdc_1clk_sync)
- Single bit synchronizer using two clocks parameterizable macro (ipm_cdc_2clks_sync)
- Glitchless Clock MUX parameterizable macro (ipm_cdc_glitchless_clk_mux)
- Bus synchronizer parameterizable macro (ipm_cdc_bus_sync)
This section provides the block diagrams, port descriptions, parameter tables, and instantiation templates for these parameterizable macros.
If you are synchronizing a reset signal across a clock domain, use one of the two reset synchronizer macros. If the signal is an asynchronous reset, use the ipm_cdc_async_rst macro. If the signal is a synchronous reset, use the ipm_cdc_sync_rst macro.
If you are synchronizing a single signal that is not a reset across a clock domain, you should use one of the two single bit synchronizer macros. Use the ipm_cdc_1clk_sync macro if the signal you are synchronizing does not have an associated clock. Use the ipm_cdc_2clk_sync macro if the signal you are synchronizing does have an associated clock.
Section Content
Synchronous Reset Synchronizer Parameterizable Macro (ipm_cdc_sync_rst)
Asynchronous Reset Synchronizer Parameterizable Macro (ipm_cdc_async_rst)
Synchronizer Using Single Clock Parameterizable Macro (ipm_cdc_1clk_sync)
Synchronizer Using Two Clocks Parameterizable Macro (ipm_cdc_2clks_sync)
Glitchless Clock MUX Parameterizable Macro (ipm_cdc_glitchless_clk_mux)
Bus Synchronizer Parameterizable Macro (ipm_cdc_bus_sync)
Pulse Synchronizer Parameterizable Macro (ipm_cdc_pulse_sync)