The clocking architecture for the 10G/25G PCS is illustrated below. There are three clock domains in the datapath, as illustrated by the dashed lines in the following figure.
Figure 1. PCS/PMA Clocking
- gt_refclk_p, gt_refclk_n, tx_serdes_refclk
- The
refclk
differential pair is required to be an input to the FPGA. The example design includes a buffer to convert this clock to a single-ended signalrefclk
, which is used as the reference clock for the GT block. Thetx_serdes_refclk
is directly derived fromrefclk
.refclk
must be chosen so that thetx_mii_clk
meets the requirements of 802.3, which is within 100 ppm of 390.625 MHz for 25G and 156.25 MHz for 10G. For Versal devices,refclk
is 322.265625 MHz. - tx_mii_clk
- The
tx_mii_clk
is an output that is the same as thetx_serdes_refclk
. The entire TX path is driven by this clock. You must synchronize the TX pathmii
bus to this clock output. All TX control and status signals are referenced to this clock. - rx_serdes_clk
- The
rx_serdes_clk
is derived from the incoming data stream within the GT block. The incoming data stream is processed by the RX core in this clock domain. - rx_clk_out
- The
rx_clk_out
output signal is presented as a reference for the RX control and status signals processed by the RX core. It is the same frequency as therx_serdes_clk
. - rx_mii_clk
- The
rx_mii_clk
input is required to be synchronized to the RX XGMII/25GMII data bus. This clock and the RX XGMII/25GMII bus must be within 100 ppm of the required frequency, which is 390.625 MHz for 25G and 156.25 MHz for 10G. - dclk
- The
dclk
signal must be a convenient, stable clock. It is used as a reference frequency for the GT helper blocks, which initiate the GT itself. In the example design, a typical value is 75 MHz, which is readily derived from the 300 MHz clock available on the VCU107 evaluation board. The actual frequency must be known to the GT helper blocks for proper operation.