L-Tile和H-Tile收发器PHY用户指南

ID 683621
日期 3/29/2021
Public
文档目录

5.2.2.10.5. 10GBASE-R模式

在10GBASE-R模式下,RX Core FIFO用作一个时钟补偿FIFO。当模块同步器实现模块锁定时,会通过FIFO发送数据。空闲有序集(OS)将被删除,会插入空闲数据以补偿RX低速并行时钟与FPGA架构时钟之间的时钟差(对于最大数据包长度64,000个字节,为 ±100 ppm)。

空闲OS删除

在包含四个OS的组中删除空闲数据(当存在两个连续的OS时),直到rx_fifo_rd_pfull标志置低为止。通过检查当前字和上一个字来检查每个字(由小写字(LW)和大写字(UW)组成),决定是否可以删除。

表 149.  可以删除字的情况在下表中,X=don’t care, T=Terminate, I=Idle, and OS=Ordered Set。
Deletable Case Word Previous Current Output
Lower Word 1 UW !T X !T X
LW X I X X
2 UW OS X OS X
LW X OS X X
Upper Word 1 UW X I X X
LW X !T X !T
2 UW X OS X X
LW X OS X OS

如果仅删除了一个字,那么由于数据路径的宽度是两个字,因此必须对数据进行移位。在删除了两个字之后,FIFO 会对一个周期停止写入,并在下一个8-byte数据模块上出现一个同步标志(rx_control[8])。还有一个不经过FIFO的异步状态信号rx_enh_fifo_del

图 202. 空闲字删除下图显示了从接收器数据流中删除空闲字。
图 203. OS字删除下图显示了删除接收器数据流中的有序集字(ordered set word)。

空闲插入(Idle Insertion)

rx_enh_fifo_pempty标志置低之后会在包含8个Idle的组中出现空闲插入。Idle可以插在Idle或OS后面。Idle将插入在8个字节的组中。数据移位不是必需的。有一个同步状态 rx_enh_fifo_insert信号附加到所插入的8字节Idle。

表 150.  插入两个空闲字的情况在此表中,X=don’t care, S=Start, OS=Ordered Set, I-DS=Idle in data stream, and I-In=Idle inserted。在case 3和case 4中,Idle插入在LW和UW之间。
Case Word Input Output
1 UW I-DS I-DS I-In
LW X X I-In
2 UW OS OS I-In
LW X X I-In
3 UW S I-In S
LW I-DS I-DS I-In
4 UW S I-In S
LW OS OS I-In
图 204. 空闲字插入(Idle Word Insertion)下图显示如何在接收器数据流中插入空闲字。