下图展示了含 PCS/PMA 时钟设置的 40/50G MAC 的时钟架构。此版本的子系统在 RX 中包含 FIFO。在数据路径中有 3 个时钟域,如下图中虚线所示:
refclk_p0、refclk_n0 和 tx_serdes_refclk
refclk
差分对是必需的,用作为 FPGA 的输入。设计示例包含缓冲器,用于将该时钟转换为单端信号 refclk
,此信号用作为 GT 块的参考时钟。tx_serdes_refclk
直接衍生自 refclk
。请注意,必须选择 refclk
,以确保 tx_serdes_refclk
满足 802.3 的要求,即范围应分别在 312.5 MHz 的 100 ppm 内(针对 40G)和 390.625 MHz 的 100 ppm 内(针对 50G)。
tx_clk_out
此时钟用作为时钟设置数据输入 TX AXI4-Stream 接口,它还用作为 TX 控制信号和状态信号的参考时钟。其频率与 tx_serdes_refclk
相同。
rx_clk_out
提供的 rx_clk_out
输出信号可供 RX 核所处理的 RX 控制信号和状态信号作为参考。其频率与 rx_serdes_clk
相同。
rx_clk
rx_clk
是 RX 核的输入时钟。该 rx_clk
可用作 rx_core_clk
(必须通过设计示例进行驱动)。应以与 tx_clk
相同的频率来驱动 rx_core_clk
。启用 FIFO 时,系统端数据路径的首选运行模式是将 tx_clk_out
连接到 rx_core_clk
。通过这种方式进行连接时,RX AXI4-Stream 接口和 TX AXI4-Stream 接口都位于同一时钟域中。
dclk
dclk
信号必须为稳定且便于使用的时钟。它用作为 GT 帮助程序块(用于启动 GT 本身)的参考频率。在设计示例中,典型值为 75 MHz,该值直接衍生自 VCU107 评估板上可用的 300 MHz 时钟。