One of the predominant uses of the MMCM is for clock network deskew. The following figure shows the MMCM in this mode. The clock output from one of the CLKOUT counters is used to drive logic within the device and/or the I/Os. The feedback counter is used to control the exact phase relationship between the input clock and the output clock (if, for example a 90° phase shift is required). The associated clock waveforms are shown to the right for the case where the input clock and output clock need to be phase aligned. The configuration in the following figure is the most flexible, but it does require two global clock networks.
There are certain restrictions on implementing the feedback. The CLKFBOUT output can be used to provide the feedback clock signal. When an MMCM is driving both BUFGs and BUFGCTRL, only one of the clock buffers that is also used in the feedback path is deskewed. The fundamental restriction is that both input frequencies to the PFD must be identical. Therefore, this relationship must be met:
As an example, if Fin is 166 MHz, D = 1, M = 15, and O = 20, then VCO is 2490 MHz and the clock output frequency is 124.5 MHz. Because the M value in the feedback path is 15, both input frequencies at the PFD are 166 MHz.
Another more complex scenario has an input frequency of 66.66 MHz, D = 2, M = 100, and O = 8. The VCO frequency in this case is 3333 MHz and the CLKOUT output frequency is 416.625 MHz. Therefore, the feedback frequency at the PFD is 3333/100 or 33.33 MHz, matching the 66.66 MHz/2 input clock frequency at the PFD.