深入分析RGMII接口延时问题

问题1:为什么RGMII时钟线和数据线要做延时处理?

       由于RGMII的数据传输是根据时钟信号采样获得的,RGMII时钟在1000Mb/s速率下在上升沿和下降沿均进行采样;在100Mb/s速率及10Mb/s速率下,仅在上升沿采样数据位。这就会出现一个问题,在时钟上升沿或下降沿采样时,数据要保证稳定才能使采样结果更加准确,这就要求采样点尽量靠近数据位中间点,在时钟线上延时就是为了让采样点尽量靠近数据位信号中心点,使采样结果更加稳定。

问题2:为什么RGMII配置下1000Mb/s的延时要求比100Mb/s要求严格?

       因为在1000Mb/s速率下,RGMII时钟速率为125M,在100Mb/s速率下,RGMII时钟速率为25M,在125M的时钟速率下,每个时钟所占有的时间长度会很短,稍微一点延时误差就会导致采样出错,而25M时钟下,每个时钟所占时间长度稍长,对延时误差的容错性更高。

问题3:RGMII1.3协议和RGMII2.0协议的区别?

(1)对于RGMII1.3协议,部分PHY芯片或者交换机芯片不支持芯片配置时钟延时,只能依靠PCB走线延时或支持配置延时的芯片配置。

(2)对于RGMII2.0协议,部分PHY芯片或者交换机芯片支持芯片配置时钟延时,在依靠PCB走线延时的同时,在芯片内部也能调整TX_CLK或者RX_CLK,这就使得PCB走线的容错性大大提高。

问题4:RGMII如何配置延时?

按照RGMII数据随时钟源端发送的原理(数据线和时钟线同方向),RGMII延时一般都会配置在发送端,再结合线上延时最终使数据完美传输。

但对于异常情况,若时钟发送端无法配置延时,这就需要在接收端配置接收延时,在配置接收延时时,示波器无法测出配置的延时数据,只能看到延时偏差,即数据是超前时钟,还是滞后时钟。因为这是芯片内部在接收时自己做的延时,线上的时钟信号仍然是由时钟发送端发送过来的无延时时钟。

问题5:RGMII的时钟延时为什么常用2ns?

在125M时钟下,最佳的延时时间是2ns。

物联沃分享整理
物联沃-IOTWORD物联网 » 深入分析RGMII接口延时问题

发表评论