前言
USRCLK以及USRCLK2必须成双成对,由之前讲到的TXUSERCK以及TXUSRCLK2,那TX端必须有对应的结构,与对应的时钟RXUSRCLK以及RXUSRCLK2.
以及其来源RXOUTCLK。
下面对其进行分析。
正文
RX架构框图
首先,先给出RX端的架构框图:
RX块电路框图
今天的主角RXUSERCLK以及RXUSRCLK2就出现在右侧RX 接口。
FPGA RX接口是GT Transceiver的RX数据路径通道。应用程序通过GTX/GTH收发器接收数据,在RXUSRCLK2的正沿从RXDATA端口读取数据。
接口处的并行时钟(RXUSRCLK2)的速率由RX线路速率、RXDATA端口的宽度以及是否启用8B/10B解码决定。在某些工作模式下,必须为发射器的内部PCS逻辑提供第二个并行时钟(RXUSRCLK)。
RXUSRCLK以及RXUSRCLK2的产生
FPGA的RX接口包括两个并行时钟RXUSRCLK和RXUSRCLK2。RXUSRCLK是GTX/GTH发射器中PCS逻辑的内部时钟。RXUSRCLK所需的速率取决于GTXE2_CHANNEL/GTHE2_CHANNEL原语的内部数据通路宽度和GTX/GTH发送器的RX线速率。下面的公式显示了如何计算RXUSRCLK的所需速率。
RXUSRCLK2是进入GTX/GTH收发器RX侧的所有信号的主要同步时钟。
大多数进入GTX/GTH收发器RX端的信号都是在RXUSRCLK2的正边沿进行采样。
RXUSRCLK2和RXUSRCLK有一个基于RX_DATA_WIDTH和RX_INT_DATAWIDTH设置的固定速率关系。
下表显示了每个RX_DATA_WIDTH和RX_INT_DATAWIDTH值的RXUSRCLK2和RXUSRCLK之间的关系。大于6.6Gb/s的线速需要通过设置RX_INT_DATAWIDTH为1来使用一个4字节的内部数据通路。
对于RXUSRCLK和RXUSRCLK2,必须遵守这些关于时钟之间关系的规则。
- RXUSRCLK和RXUSRCLK2必须是正边对齐,它们之间的偏移尽可能小。因此,应使用低偏移的时钟资源(BUFG和BUFR)来驱动RXUSRCLK和RXUSRCLK2。
- 如果通道被配置成由同一个振荡器驱动发射器和接收器的参考时钟,TXOUTCLK可以用来驱动RXUSRCLK和RXUSRCLK2,其方式与驱动TXUSRCLK和TXUSRCLK2相同。当时钟校正被关闭或RX缓冲器被旁路时,必须使用RX相位校准来校准串行时钟和并行时钟。
- 如果单独的振荡器驱动通道上发射器和接收器的参考时钟,并且不使用时钟校正,RXUSRCLK和RXUSRCLK2必须由RXOUTCLK驱动(RXOUTCLKSEL = 3'b010用于RXOUTCLKPMA),并且必须使用相位校正电路。
- 如果使用时钟校正,RXUSRCLK和RXUSRCLK2可以由RXOUTCLK或TXOUTCLK提供源。
- END -