仅对英特尔可见 — Ixiasoft
仅对英特尔可见 — Ixiasoft
2.4.2.2.1. 使用Standard PCS进行时钟补偿
- Rate Match FIFO in Basic 10-bit PMA mode
- Rate Match FIFO in Basic 20-bit PMA mode
- Rate Match FIFO in GbE mode
- Rate Match FIFO in PIPE mode
- Rate Match FIFO in PIPE 0 ppm mode
基本(单宽度)模式下的速率匹配FIFO
- 在RX rate match FIFO mode列表中选择basic (single width)。
- 输入以下参数的值。
参数 值 说明 RX rate match insert/delete +ve pattern (hex) 指定为十六进制字符串的20比特数据 前10个比特对应于跳过码型(skip pattern),后10个比特对应于控制码型(control pattern)。跳过码型必须具有中性差异(neutral disparity)。 RX rate match insert/delete –ve pattern (hex) 指定为十六进制字符串的20比特数据 前10个比特对应于跳过码型(skip pattern),后10个比特对应于控制码型(control pattern)。跳过码型必须具有中性差异(neutral disparity)。 ve (伏特编码)是NRZ_L条件,其中+ve编码0,–ve编码1。 ve是运行差异(+/–RD),特别与速率匹配器(rate matcher)一起使用。根据恢复的时钟和本地时钟之间的ppm差异(由协议定义),速率匹配器最多可添加或删除四个跳过码型(中性差异)。由于控制字在正和负差异之间交替,因此即使在跳过字插入或删除之后也会保持网络中立(net neutrality)。
在下图中,第一个跳过群集(skip cluster)有一个/K28.5/控制码型,紧跟着是两个/K28.0/跳过码型。第二个跳过群集有一个/K28.5/控制码型,紧跟着四个/K28.0/跳过码型。速率匹配FIFO仅从第一个跳过群集中删除一个/K28.0/跳过码型,删除后在群集中保留至少一个跳过码型。从第二个群集中删除两个/K28.0/跳过码型,以满足删除总共三个跳过码型的要求。
速率匹配FIFO能够在一个群集中最多插入四个跳过码型,如果插入后群集中有不超过五个跳过码型。
图 45. 速率匹配FIFO删除,包括删除操作所需要的三个跳过码型在下图中,/K28.5/是控制码型,而中性差异(neutral disparity) /K28.0/是跳过码型。第一个跳过群集含有一个/K28.5/控制码型,紧跟着是三个/K28.0/跳过码型。第二个跳过群集含有一个/K28.5/控制码型,紧跟着是两个/K28.0/跳过码型。速率匹配FIFO仅将两个/K28.0/跳过码型插入到第一个跳过群集中,以在插入后的群集中保留最多五个跳过码型。在第二个群集中插入一个/K28.0/跳过码型,以满足插入所要求的总共三个跳过码型。
图 46. 速率匹配FIFO插入,包括插入操作所需要的三个跳过码型下图显示了当上游发送器参考时钟频率大于本地接收器参考时钟频率时D5的删除。此操作在删除的同时置位rx_std_rmfifo_full一个并行时钟周期。
图 47. 速率匹配FIFO在接收到D5后变满下图显示了当本地接收器参考时钟频率大于上游发送器参考时钟频率时跳过符号的插入。此操作在插入的同时置位rx_std_rmfifo_empty一个并行时钟周期。
图 48. 速率匹配FIFO在接收到D3后变空
速率匹配FIFO基本(Double Width)模式
- 在RX rate match FIFO mode列表中选择basic (double width)。
- 输入以下参数的值。
参数 值 说明 RX rate match insert/delete +ve pattern (hex) 指定为十六进制字符串的20比特数据 前10个比特对应于跳过码型(skip pattern),后10个比特对应于控制码型(control pattern)。跳过码型必须具有中性差异(neutral disparity)。 RX rate match insert/delete -ve pattern (hex) 指定为十六进制字符串的20比特数据 前10个比特对应于跳过码型(skip pattern),后10个比特对应于控制码型(control pattern)。跳过码型必须具有中性差异(neutral disparity)。 速率匹配FIFO可以根据需要从群集中删除多对跳过码型,以避免速率匹配FIFO溢出。仅当两个10-bit跳过码型出现在20-bit字的LSByte和MSByte上的相同时钟周期时,速率匹配FIFO才能删除一对跳过码型。如果两个跳过码型跨越时钟周期的MSByte和下一个时钟周期的LSByte,则速率匹配FIFO不能删除跳过码型对。
在下图中,第一个跳过群集在LSByte中有一个/K28.5/控制码型,以及在一个周期时钟的MSByte中有/K28.0/跳过码型,下一个时钟周期的LSByte中的一个/K28.0/跳过码型紧跟其后。速率匹配FIFO无法删除此跳过群集中的两个跳过码型,因为它们没有出现在同一时钟周期中。第二个跳过群集在时钟周期的MSByte中含有一个/K28.5/控制码型,在下两个时钟周期中的两对/K28.0/跳过码型紧跟其后。速率匹配FIFO从第二个跳过群集中删除两对/K28.0/跳过码型(总共删除四个跳过码型),以满足三个跳过码型删除的要求。
速率匹配FIFO可以将多对跳过码型插入到一个群集中,以避免速率匹配FIFO下溢。10-bit跳过码型可以出现在20-bit字的MSByte,LSByte或两者上。
图 49. 速率匹配FIFO删除,包括删除操作所需要的四个跳过码型/K28.5/是控制码型,中性差异/K28.0/是跳过码型。在下图中,/K28.5/是控制码型,而中性差异/K28.0/是跳过码型。第一个跳过群集在LSByte中含有一个/K28.5/控制码型,以及在一个周期的MSByte中含有/K28.0/跳过码型。速率匹配FIFO在这个跳过群集中插入跳过码型对,以满足三个跳过码型插入的要求。
图 50. 速率匹配FIFO插入,包括插入操作所需要的四个跳过码型下图显示了20-bit字D7D8的删除。
图 51. 速率匹配FIFO在接收到20-Bit Word D5D6后变满下图显示了两个跳过码型的插入。
图 52. 速率匹配FIFO读出20-Bit Word D5D6后变空
GbE的速率匹配FIFO
遵照IEEE 802.3-2008规范中列出的规则,GbE协议要求发送器在数据包间的间隙(IPG)发送Idle有序集/I1/ (/K28.5/D5.6/)和/I2/ (/K28.5/D16.2/)。
字对齐器中的同步状态机表明通过驱高rx_syncstatus信号来获得同步之后,速率匹配操作开始。速率匹配器同时删除或插入/I2/有序集的两个符号(/K28.5/和/D16.2/,作为一对),来防止速率匹配FIFO上溢或下溢。速率匹配操作能够插入或删除必要数量的/I2/有序集。
下图显示了速率匹配删除操作的示例,其中要求删除三个符号。由于速率匹配FIFO仅能删除/I2/有序集,因此它会删除两个/I2/有序集(四个符号被删除)。
下图显示了速率匹配FIFO插入的实例,其中要求插入一个符号。由于数据速率FIFO仅能插入/I2/有序集,因此它会插入一个/I2/有序集(两个符号被插入)。
rx_std_rmfifo_full和rx_std_rmfifo_empty被转发到FPGA架构,以表明速率匹配FIFO满和空的情况。
速率匹配FIFO不会删除代码组以克服FIFO满状态。它会置位rx_std_rmfifo_full flag至少两个恢复时钟周期,以指示速率匹配FIFO已满。下图显示了当写指针比读指针快时的速率匹配FIFO满状态。
速率匹配FIFO不会插入代码组以克服FIFO空状态。它会置位rx_std_rmfifo_empty flag至少两个恢复时钟周期,以指示速率匹配FIFO已空。下图显示了当读指针比写指针快时的速率匹配FIFO空状态。
在速率匹配 FIFO变满和变空时,必须置位rx_digitalreset信号进行置位以对接收器PCS模块进行复位。
PIPE的时钟补偿
请参考Gen1 and Gen2 Clock Compensation和Gen3 Clock Compensation部分来了解详细信息。