The following table identifies the Vivado tools behavior for the feedback path based on the compensation mode for the MMCM. The COMPENSATION attribute values are documented for informational purposes only, and the Vivado tools automatically select the appropriate compensation based on the circuit topology.
COMPENSATION | Vivado Tool Behavior |
---|---|
BUF_IN |
The same clock root is assigned to the net driven by the feedback path global clock buffer and by all global clock buffers directly connected to the CLKOUT0 pin. The Vivado tools do not automatically match the insertion delay with the other MMCM/XPLL outputs. To perform delay matching and clock root matching with other MMCM/XPLL output pins, it is necessary to use the CLOCK_DELAY_GROUP and USER_CLOCK_ROOT constraints. |
INTERNAL |
A feedback path is not needed for INTERNAL compensation. Having a feedback path with a global clock buffer is an unnecessary use of clocking resources. This could negatively impact QoR in designs with high clocking utilization. The Vivado tools attempt to remove unnecessary feedback path global clock buffers. In some cases, the Vivado tools are unable to remove the unnecessary feedback path global clock buffer, and you must remove the feedback path global clock buffers manually. |
EXTERNAL | The MMCM can be configured for external deskew where the feedback board
trace matches the trace to the external components. The external delay
value is set using the following XDC
constraint: The
external delay value is used by the Vivado tools in the calculation of the MMCM compensation
delay. |