PCIE协议-4-逻辑物理层-8.0 GT/s及更高数据速率编码

4.2.2  8.0 GT/s及更高数据速率编码

当PCI Express链路以8.0 GT/s或更高的数据速率运行时,它使用本小节中描述的编码规则:128b/130b编码。为了向后兼容,链路最初在2.5 GT/s数据速率下使用8b/10b编码进行训练到L0,如第4.2.1节所述,然后当数据速率更改为8.0 GT/s或更高时,使用128b/130b编码。128b/130b编码是一种链路范围内的数据包机制和每个通道的块码以及扰乱。数据传输的基本单位是一个8位数据字符,称为符号,如图4-11和图4-12所示。

4.2.2.1 通道级编码

物理层使用每个通道的块码。每个块由2bit 同步头标和有效载荷组成。有两种有效的同步头标编码:10b和01b。同步头标定义了块所包含的有效载荷类型。

10b的同步头标表示数据块。每个数据块有一个128位的有效载荷,因此块大小为130位。有效载荷是数据流,如第4.2.2.3节所述。

01b的同步头标表示有序集块。每个有序集块有一个128位的有效载荷,因此块大小为130位,除了SKP有序集可以是可变长度。

多通道链路的所有通道必须同时传输具有相同同步头标的块,除非在轮询合规性中传输抖动测量模式。

bit传输顺序如下。表示为'H1H0'的同步头标放置在通道上,从'H0'开始,以'H1'结束。表示为'S7S6S5S4S3S2SiS0'的符号放置在通道上,从'S0'开始,以'S7'结束。 在显示时间尺度的图表中,位代表传输顺序。在布局图表中,位以小端格式排列,与本规范其他章节的数据包布局图表一致。

4.2.2.2 有序集块

有序集块包含一个同步头标,后面跟着一个有序集。多通道链路的所有通道必须同时传输相同类型的有序集。有序集中的第一个符号定义了有序集的类型。有序集的后续符号由有序集类型定义,并且不必在多通道链路的通道间保持一致。有序集在第4.2.4节和第4.2.7节中有详细描述。

4.2.2.2.1 块对齐

在链路训练期间,电气空闲退出有序集(EIEOS)的130位是一个独特的位模式,接收器使用它来确定接收到的比特流中块同步头标的位置。从概念上讲,接收器可以处于三种不同的块对齐阶段:未对齐、对齐和锁定。这些阶段被定义为说明所需的行为,但并不意味着指定所需的实现。

未对齐阶段

  • 接收器在一段电气空闲后进入此阶段,例如当数据速率更改为使用128b/130b编码时,或者当它们退出低功耗链路状态时,或者如果被特定实现指导。在这个阶段,接收器监测接收到的比特流中的EIEOS位模式。当检测到一个时,它们会调整自己的对齐方式以适应它,并进入对齐阶段。

对齐阶段

  • 接收器监测接收到的比特流中的EIEOS位模式和接收到的块中的数据流开始(SDS)有序集。如果在与当前对齐不匹配的对齐上检测到EIEOS位模式,接收器必须调整它们的对齐方式以适应新接收到的EIEOS位模式。如果接收到SDS有序集,接收器将进入锁定阶段。如果接收到未定义的同步头标(00b或11b),接收器允许返回到未对齐阶段。

锁定阶段

  • 在这个阶段,接收器不得调整它们的块对齐方式,期望在SDS有序集之后接收数据块,调整块对齐将干扰这些块的处理。如果接收到未定义的同步头标,接收器必须返回到未对齐或对齐阶段。

额外要求:

  • 在对齐或锁定阶段,当接收到SKP有序集时,接收器必须根据需要调整其对齐方式。有关SKP有序集的更多信息,请参见第4.2.7节。
  • 在LTSSM转换到恢复状态后的任何时候,接收器必须忽略所有接收到的TS(定时同步)有序集,直到它们接收到EIEOS。从概念上讲,接收到EIEOS验证了接收器的对齐,并允许TS有序集处理继续进行。如果接收到的EIEOS启动了从L0(链路初始化)到恢复的LTSSM转换,接收器被允许处理任何跟随EIEOS的TS有序集,或者直到进入恢复后再次接收到EIEOS之前忽略它们。
  • 接收器被允许在数据流处理停止的情况下从锁定阶段转换到未对齐或对齐阶段。有关数据流要求的更多信息,请参见第4.2.2.3节。
  • 回环主设备:在回环进入阶段,主设备必须能够调整其接收器的块对齐以适应接收到的EIEOS位模式。在回环活跃阶段,主设备被允许传输EIEOS并调整其接收器的块对齐以适应回环的比特流。
  • 回环从设备:在回环进入阶段,从设备必须能够调整其接收器的块对齐以适应接收到的EIEOS位模式。在回环活跃阶段,从设备不得调整其接收器的块对齐。从概念上讲,当从设备开始回环接收到的比特流时,接收器被引导到锁定阶段。

4.2.2.3 数据块

数据块的有效载荷是一系列符号流,定义为“数据流”,由帧定界符、TLPs和DLLPs组成。数据流中的每个符号都被放置在链路的单一通道上,并且这些符号流被条纹化,跨链路的所有通道分布,并跨越块的边界。

数据流从跟随SDS(数据流开始)有序集后的数据块的第一个符号开始。它以检测到帧定界错误时结束,或者在非SKP有序集之前的最后一个数据块的符号结束。在数据流中出现的SKP有序集有特定的要求,这些要求在以下各节中描述。

4.2.2.3.1 帧定界符

物理层使用的帧定界符显示在表4.2中,每个帧定界符指定或暗示了与该符号关联的符号数量,因此也确定了下一个帧定界符的位置。图4-15展示了在x8链路上传输的TLPs(事务层包)、DLLPs(数据链路层协议包)和IDLs(空闲数据流)的一个示例。 数据流的第一个帧定界符始终位于数据的第一个数据块的通道0的符号0。 

物理层DLLP 的布局在图4-14中展示。符号0和1是SDP标记,符号2到7是数据链路层DLLP信息。 

物理层TLP布局在图4-14中展示。STP帧定界符的详细信息在图4-13中展示。正在传输的TLP的长度(以DW,数据字单位)由一个11位的字段称为TLP长度来指定。TLP长度字段是传输的总信息量,包括帧定界符、TLP前缀(如果有)、TLP头标、TLP数据有效载荷(如果有)、TLP digest(如果有)和TLP LCRC(TLP长的循环冗余校验)。

例如,如果一个TLP有一个3DW的头标,1DW的数据有效载荷,并且不包含TLP digest,TLP长度字段的值是6:1(帧定界符)+ 0(TLP前缀)+ 3(TLP头标)+ 1(TLP数据有效载荷)+ 0(TLP digest)+ 1(TLP LCRC)。如果相同的TLP包含TLP digest,TLP长度字段的值将是7。当TLP被无效化时,EDB(特定于PCIe规范的特殊数据包)标记被视为TLP的扩展,但不包括在TLP长度字段的计算中。

TLP长度字段受到一个4位CRC(帧CRC)的保护,并且一个偶校验位(帧校验)保护TLP长度和帧CRC字段。帧CRC和帧校验的计算方法如下:

 

帧校验的偶校验位减少到  P = L[10] ^ L[9] ^ L[8] ^ L[6] ^ L[5] ^ L[2] ^ L[0]

TLP长度字段在上述方程中表示为L[10:0],其中L[0]是最不重要的位,L[10]是最重要的位。发射器在传输前计算帧CRC和帧校验。接收器必须使用与发射器相同的算法计算帧CRC和帧校验,然后比较计算值与接收到的值。

STP标记没有TLP长度字段值为1。如果接收到的符号序列与TLP长度字段值为1的STP标记格式匹配,则评估这些符号以确定它们是否与EDS(特定于PCIe规范的特殊标记)标记匹配。

请注意,对于TLPs,数据链路层在计算LCRC之前,在TLP序列号字段前添加了4个保留位(0000b)。当使用128b/130b编码时,这些保留位不会明确传输,接收器在计算LCRC时假定接收到的4位是0000b。

包含大于1535的TLP长度字段的数据包是PMUX数据包。对于这样的数据包,实际的数据包长度以不同的方式计算,STP标记中的TLP序列号字段包含其他信息,并且链路CRC使用不同的规则计算,详细信息见附录G。

包含在1152和1535(含)之间的TLP长度字段的数据包为将来标准化保留。

发射器必须根据STP帧定界符的TLP长度字段指定的所有DWs传输TLP。即使在无效化时,使用128b/130b编码也绝不会截断TLP。图4-16展示了一个无效化的23 DW TLP的示例。

图4-17展示了TLPs、DLLPs、IDLs以及一个EDS(特定于PCIe规范的特殊标记)的示例,其后跟随一个SKP有序集。SKP有序集在第4.2.7.2节中定义。

4.2.2.3.2 发射器帧定界要求

以下要求适用于传输的数据流。

  • 传输TLP(事务层包):
    • 必须立即传输一个STP(特定于PCIe规范的特殊标记)标记,紧接着是数据链路层提供的完整TLP信息。
    • 必须传输STP标记的TLP长度字段指定的所有DWs,即使TLP被无效化。
    • 如果TLP被无效化,在TLP之后必须立即传输一个EDB(特定于PCIe规范的特殊标记)标记。TLP的最后一个符号和EDB标记的第一个符号之间不能有其他符号。无效化TLP的STP标记的TLP长度字段值不调整以考虑EDB标记。
    • STP标记的传输频率不能超过每个符号时间一次。
  • 传输DLLP(数据链路层协议包):
    • 必须立即传输一个SDP(特定于PCIe规范的特殊标记)标记,紧接着是数据链路层提供的完整DLLP信息。
    • 必须传输DLLP的所有6个符号。
    • SDP标记的传输频率不能超过每个符号时间一次。
  • 在数据流中传输SKP有序集:
    • 在当前数据块的最后一个DW中传输EDS标记。例如,在x1链路中,该标记在块的符号时间12-15的通道0上传输,而在x16链路中,该标记在块的符号时间15的通道12-15上传输。
    • 紧接着当前数据块后传输SKP有序集。
    • 在SKP有序集后传输一个数据块。数据流从数据块的第一个符号恢复。如果有多个SKP有序集计划传输,每个SKP有序集之前都必须有一个带有EDS标记的数据块。
  • 结束数据流:

    • 在当前数据块的最后一个DW中传输EDS标记,然后在下一个块中跟随一个EIOS或EIEOS。EIOS用于LTSSM电源管理状态转换,而EIEOS用于所有其他情况。例如,在x1链路中,该标记在块的符号时间12-15的通道0上传输,而在x16链路中,该标记在块的符号时间15的通道12-15上传输。

  • 当不传输TLP、DLLP或其他帧定界标记时,必须在所有通道上传输IDL标记。
  • 多通道链路
    • 传输IDL标记后,下一个STP或SDP标记的第一个符号必须在将来的某个符号时间的通道0上传输。由于它必须在块的最后一个DW中传输,因此在同一个符号时间内可以跟在IDL标记后面传输EDS标记。
    • 对于N等于8或更大的xN链路,如果EDB标记、TLP或DLLP在通道K结束,而K不等于N-1,并且它后面不是通道K+1的第一个STP、SDP或EDB标记,则必须在通道K+1到N-1中放置IDL标记。例如,在x8链路中,如果TLP或DLLP在通道3结束,必须在通道4到7中放置IDL标记。EDS标记是这一要求的例外,并且可以在IDL标记后传输。
    • 标记、TLP和DLLP被允许连续跟随彼此,以便在同一个符号时间内传输多个标记,只要它们的传输符合本节中所述的其他要求。
    • 比x4宽的链路可以从通道4'N开始放置标记,其中N是正整数。例如,可以在x8链路的通道0和4中放置标记,并且可以在x16链路的通道0、4、8或12中放置标记。

4.2.2.3.3 接收器帧定界要求

以下要求适用于接收到的数据流以及在数据流开始和结束时发生的块类型转换。

  • 当处理预期为帧定界符的符号时,如果接收到的符号或符号序列与帧定界符的定义不匹配,则为帧定界错误。强烈建议多通道链路的接收器在接收到预期帧定界符的第一个符号时,如果该符号与STP(仅位[3:0])、IDL、SDP、EDB或EDS标记的符号+0不匹配,则在通道错误状态寄存器中报告错误(见图4-13)。
  • 本节中所有可选的错误检查和错误报告均为独立可选(见第6.2.3.4节)。
  • 当接收到STP标记时:
    • 接收器必须计算接收到的TLP长度字段的帧CRC和帧校验,并将其结果与接收到的帧CRC和帧校验字段进行比较。帧CRC或帧校验不匹配是帧定界错误。
      • 带有帧定界错误的STP标记在报告给数据链路层时不被视为TLP的一部分。

    • 如果TLP长度字段为1,则这些符号不是STP标记,而是被评估以确定它们是否是EDS标记。
    • 接收器可以检查TLP长度字段是否为0。如果检查了,接收到TLP长度字段为0是帧定界错误。
    • 接收器可以检查TLP长度字段是否有值2、3或4。如果检查了,接收到这样的TLP长度字段是帧定界错误。
    • 接收器可以检查TLP长度字段是否有值在1152和1535(含)之间。如果检查了,接收到这样的TLP长度字段是帧定界错误。
    • 不支持协议多路复用的端口上的接收器可以检查TLP长度字段是否大于1535。如果检查了,接收到这样的TLP长度字段是帧定界错误。
    • 支持协议多路复用的端口上的接收器应将TLP长度字段大于1535的STP标记处理为附录G中定义的PMUX数据包的开始。
    • 下一个要处理的标记以TLP的最后一个DW之后的符号开始,由TLP长度字段确定。
      • 接收器必须评估此符号并确定它是否是EDB标记的第一个符号,因此确定TLP是否被无效化,见EDB标记的要求。
    • 接收器可以检查是否在单个符号时间内接收到多个STP标记。如果检查了,接收到单个符号时间内的多个STP标记是帧定界错误。
  • 当接收到EDB标记时:
    • 如果在TLP之后立即接收到EDB标记(TLP的最后一个符号和EDB标记的第一个符号之间没有符号),接收器必须通知数据链路层已接收到EDB标记。接收器可以在处理EDB标记的第一个符号后或在处理EDB标记的其余符号后通知数据链路层已接收到EDB标记。无论何时通知数据链路层接收到EDB标记,接收器都必须检查EDB标记的所有符号。接收到与EDB标记定义不匹配的符号是帧定界错误。
    • 除了紧随TLP之后,任何其他时间接收到EDB标记都是帧定界错误。
    • 下一个要处理的标记以EDB标记之后的符号开始。
  • 当在链路跨数据块的最后四个符号中接收到EDS标记时:
    • 接收器必须停止处理数据流。
    • 在EDS标记后的数据块中接收到除SKP、EIOS或EIEOS之外的有序集是帧定界错误。
    • 如果在EDS标记后的数据块中接收到SKP有序集,除非检测到帧定界错误,否则接收器将在SKP有序集后的第一个数据块符号处恢复数据处理。
  • 当接收到SDP标记时:
    • 下一个要处理的标记以DLLP的最后一个符号之后的符号开始。
    • 接收器可以检查是否在单个符号时间内接收到多个SDP标记。如果检查了,接收到单个符号时间内的多个SDP标记是帧定界错误。
  • 当接收到IDL标记时:
    • 对于x1链路,下一个要处理的标记以接收到的下一个符号开始。
    • 对于x2链路,下一个要处理的标记以下一个符号时间在通道0接收到的符号开始。强烈建议接收器检查在通道1接收到的符号(如果通道1没有接收到IDL),在通道0接收到IDL标记后是否也是IDL,并在通道错误状态寄存器中为通道1报告错误。如果检查了,接收到IDL以外的符号是帧定界错误。
    • 对于x4链路,下一个要处理的标记以下一个符号时间在通道0接收到的符号开始。强烈建议接收器检查在通道1-3接收到的符号,在通道0接收到IDL标记后是否也是IDL,并在通道错误状态寄存器中为没有接收到IDL的通道报告错误。如果检查了,接收到IDL以外的符号是帧定界错误。
    • 对于x8、x12、x16和x32链路,下一个要处理的标记以IDL标记之后接收到的下一个DW对齐通道的符号开始。例如,如果在x16链路的通道4接收到IDL标记,下一个标记的位置以同一符号时间的通道8开始。然而,如果在x8链路的通道4接收到IDL标记,下一个标记的位置以下一个符号时间的通道0开始。强烈建议接收器检查在IDL标记和下一个标记位置之间接收到的符号是否也是IDL,并在通道错误状态寄存器中为没有接收到IDL的通道报告错误。如果检查了,接收到IDL以外的符号是帧定界错误。注意:在IDL标记之后,同一符号时间内预期接收到的唯一标记是额外的IDL标记或EDS标记。
  • 在处理数据流时,接收器还必须在考虑通道到通道的去偏斜后,检查每个通道接收到的块类型,以检查以下条件:
    • 在任何通道上紧随SDS有序集之后接收到有序集块是帧定界错误。
    • 接收到未定义块类型的块(同步头为11b或00b)是帧定界错误。强烈建议多通道链路的接收器在通道错误状态寄存器中为接收到未定义块类型的任何通道报告错误。
    • 在前一个块中没有接收到EDS标记的情况下,在任何通道上接收到有序集块是帧定界错误。例如,接收到没有前一个EDS标记的SKP有序集是帧定界错误。此外,在数据流中,接收到紧随SKP有序集之后的另一个有序集块(包括另一个SKP有序集)也是帧定界错误。强烈建议,如果有序集的第一个符号是SKP,多通道链路的接收器在通道错误状态寄存器中报告错误,如果接收到的符号编号1到4N与表4-22或表4-23中的相应符号不匹配。
    • 在包含EDS标记的前一个块之后,在任何通道上接收到数据块是帧定界错误。强烈建议多通道链路的接收器在通道错误状态寄存器中为接收到数据块的通道报告错误。
    • 接收器可以检查不同通道上不同的有序集。例如,通道0接收到SKP有序集,通道1接收到EIEOS。如果检查了,接收到不同的有序集是帧定界错误。

4.2.2.3.4 从帧定界错误中恢复

如果接收器在处理数据流时检测到帧定界错误,它必须:

  • 如第4.2.4.8节所述,报告一个接收器错误。
  • 停止处理数据流。当接收到下一个SDS有序集时,将如前所述启动新的数据处理流。
  • 启动4.2.4.8节中描述的错误恢复过程。如果LTSSM(链路训练、同步和状态机)状态是L0(空闲),则直接将LTSSM导向恢复状态。如果在检测到帧定界错误时LTSSM状态是Configuration.Complete(配置完成)或Configuration.Idle(配置空闲),则错误恢复过程可以通过从Configuration.Idle到Recovery.RcvrLock(由于指定的超时)的转换,或通过L0到Recovery的转换来满足。如果在检测到帧定界错误时LTSSM状态是Recovery.RcvrCfg(接收器配置恢复)或Recovery.Idle(恢复空闲),则错误恢复过程可以通过从Recovery.Idle到Recovery.RcvrLock(由于指定的超时)的转换,或从L0到Recovery的有向转换来满足。如果LTSSM子状态是Recovery.RcvrLock(恢复接收器锁定)或Configuration.Linkwidth.Start(配置链路宽度开始),则在退出这些子状态时满足错误恢复过程,不需要将LTSSM导向恢复。

    注意:帧定界错误恢复机制预期不直接引起数据链路层发起的恢复动作,如NAK(否定确认)。

4.2.2.4 扰码

在多通道链路中,每个发射通道可以实现一个单独的LFSR(线性反馈移位寄存器)来进行扰码。在多通道链路中,每个接收通道可以实现一个单独的LFSR来进行解扰。实现者可以选择实现较少的LFSR,但必须达到与独立LFSR相同的功能。 LFSR使用以下多项式:𝐺(𝑋)=𝑥23+𝑥21+𝑥16+𝑥8+𝑥5+𝑥2+1,在图4-18中展示。

扰码规则如下:

  • 同步头标的两位不进行扰码,并且不推进LFSR。
  • 电气空闲退出有序集(EIEOs)的所有16个符号绕过扰码,发射LFSR在EIEOs的最后一个符号传输后初始化,接收LFSR在EIEOs的最后一个符号接收后初始化。
  • TS1和TS2有序集:
    • TS1或TS2有序集的符号0绕过扰码。
    • 符号1-13进行扰码。
    • 如果需要为直流平衡,符号14和15绕过扰码,但如果不需要为直流平衡,则进行扰码。
  • 快速训练序列(FTS)有序集的所有16个符号绕过扰码。
  • 数据流开始(SDS)有序集的所有16个符号绕过扰码。
  • 电气空闲有序集(EIOS)的所有符号绕过扰码。
  • SKP有序集的所有符号绕过扰码。
  • 发射器除了SKP有序集之外,对所有有序集的所有符号推进其LFSR。对于SKP有序集的任何符号,LFSR不推进。
  • 接收器评估有序集块的符号0以确定是否推进其LFSR。如果块的符号0是SKP(见第4.2.7.2节),那么块的任何符号的LFSR都不推进。否则,块的所有符号的LFSR都会推进。

  • 数据块的所有16个符号都被扰码并推进扰码器。对于需要扰码的符号,最低位首先扰码,最高位最后扰码。

  • LFSR的种子值取决于当链路首次进入配置空闲状态(即,通过检测的轮询,LinkUp=0b)时分配给通道的通道号。通道号的种子值模8为:

 

  • LFSR的种子值在LinkUp=1时不会改变,通过LTSSM配置状态进行链路重新配置,只要LinkUp保持为1,就不会修改最初的通道号分配(即使在配置期间通道分配可能会改变)。
  • 使用128b/130b编码时,在Configuration.Complete状态下不能禁用扰码。
  • 回环从设备不得对回环的比特流进行解扰或扰码。

4.2.2.5 预编码

接收器可能会要求其发射器在32.0 GT/s或更高数据速率下进行预编码操作。预编码规则如下:

  • 端口或伪端口必须在链路的所有配置通道上请求预编码。如果端口或伪端口仅在某些通道上请求预编码而在其他通道上不请求,行为是未定义的。
  • 端口或伪端口可以独立于其他端口或伪端口请求预编码。例如,在图4-35所示没有重定时器的情况下,只有上游端口可能仅打开预编码,或者在图4-35所示两个重定时器示例中,Tx(A)和Tx(E)的所有通道都打开预编码。
  • 当LTSSM处于检测状态时,对于32.0 GT/s及以上所有数据速率,预编码将关闭。
  • 如果要在32.0 GT/s或更高数据速率下进行预编码请求,必须在进入该数据速率之前,通过在EQ TS2有序集或128b/130b EQ TS2有序集中设置适当的位来进行。在过渡到目标数据速率的恢复速度之前,必须通过设置EQ TS2或128b/130b EQ TS2有序集中的发射器预编码请求来进行预编码请求。对于所有高于32.0 GT/s的数据速率,必须独立进行预编码请求。
  • 如果链路在没有通过(修改后的)TS1/TS2有序集中不需要均衡机制进行均衡的情况下以32.0 GT/s或更高数据速率运行,那么必须执行最后一次等化结果中正在使用的预编码请求。因此,每个(伪)端口必须存储每个通道上的预编码请求以及Tx Eq值,如果它宣传不需要等化机制。如果在链路升级之前从未在链路上执行过等化(当前链路升级之前),则不会打开预编码。
  • 如果在进入恢复速度之前的恢复接收器配置期间,连续接收到的八个EQ TS2或128b/130b EQ TS2有序集中的发射器预编码请求设置为1b,则发射器必须在退出恢复速度时针对链路将要运行的目标数据速率打开预编码,如果目标数据速率为32.0 GT/s或更高。一旦打开,预编码将在发射器接收到同一组八个连续的EQ TS2或128b/130b EQ TS2有序集之前对该目标数据速率有效。
  • 发射器不得为低于32.0 GT/s的任何数据速率打开预编码。
  • 对于32.0 GT/s或更高的数据速率,如果预编码已打开,发射器必须在恢复状态的TS1有序集中将发射器预编码开启位设置为1b;否则,该位必须设置为0b。
  • 只有扰码后的位才会进行预编码,当预编码被打开时。
  • 用于预编码的“前一位”在每个块边界上设置为1b,并通过当前块边界内传输的最后一个扰码和预编码位更新。
  • 当预编码被打开时,对于已扰码的符号,接收器必须在将它们发送到解扰器之前先对预编码位进行解码。
  • 在通道0上为32.0 GT/s数据速率打开预编码的发射器,必须在32.0 GT/s状态寄存器中将发射器预编码开启位设置为1b;否则,它必须将该位设置为0b。已经请求或将请求在32.0 GT/s数据速率下打开预编码的接收器,必须在32.0 GT/s状态寄存器中将发射器预编码请求设置为1b;否则,它必须将该位设置为0b。

4.2.2.6 使用128b/130b编码的回环

在使用128b/130b编码时,回环主设备必须传输具有定义的01b和10b同步头标的块。然而,在从有序集块转换为数据块时,它们不需要传输SDS有序集,也不需要在从数据块转换为有序集块时传输EDS标记。 主设备必须按照第4.2.7节中定义的周期性传输SKP有序集,并且它们必须能够处理接收到的(回环的)长度不同的SKP有序集。主设备可以传输在数据块和有序集块中预期被回环的任何有效载荷。如果回环主设备传输的有序集块的第一个符号与SKP有序集、EIEOS或EIOS的第一个符号匹配,那么该有序集块必须是完整且有效的SKP有序集、EIEOS或EIOS。

在使用128b/130b编码时,回环从设备必须重新传输所有接收到的位,不做修改,SKP有序集可以根据需要进行调整以进行时钟补偿。如果需要时钟补偿,从设备必须每个有序集中添加或删除4个SKP符号。修改后的SKP有序集必须满足第4.2.7.2节中的定义(即,它必须有4到20个SKP符号,随后是SKP_END符号和由回环主设备传输的随后的三个符号)。如果从设备无法获得块对齐或它不对齐,它可能无法执行时钟补偿,因此无法回环所有接收到的位。在这种情况下,允许添加或删除符号以继续操作。当检测到从有序集块到数据块的转换时,从设备不得检查接收到的SDS有序集,当检测到从数据块到有序集块的转换时,它们不得检查接收到的EDS标记。 

 

  • 13
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值