40G-CR4/100G-CR10 (C85)
PMA(C83)(二)
PMA功能
PMA的目的是使PCSL格式的信号适应适当数量的抽象或物理通道,从接收到的信号中恢复时钟,并可选地提供测试信号和环回。PMA和PMA客户端之间的每个输入(Tx方向)或输出(Rx方向)通道都携带一个或多个比特复用的PCSL。PMA和PMA上层客户端之间的所有输入和输出通道携带相同数量的PCSL,并以相同的标称信令速率运行。
同样,PMA和PMA下方的子层之间的每个输入(Rx方向)或输出(Tx方向)通道都携带一个或多个比特复用的PCSL。PMA和PMA下方的子层之间的所有输入和输出通道携带相同数量的PCSL,并以相同的标称信令速率运行。给定PMA的输入通道数量和输出通道数量是所支持接口类型的PCSL数量的因数。
时钟数据恢复(基于Lane)
如果PMA客户端和PMA之间的接口被物理实例化为XLAUI /CAUI-n,则PMA应符合附件83A(XLAUI /CAUI-10)、附件83B(C2M XLAUI /CAUI-10)、附件83D (CAUI-4)中的电气和时序规范,或附件83E(C2M CAUI-4)。如果PMA下方的子层和PMA之间的接口在物理上被实例化为XLAUI /CAUI-n或nPPI,则PMA应满足附件83A(XLAUI /CAUI-10)、附件83B(C2M XLAUI /CAUI-10)、附件83D(CAUI-4)、附件83E(C2M CAUI-4)或附件86A(XLPPI /CPPI)中规定的服务接口的电气和时序规范。
位复用
PMA在Tx和Rx方向上提供比特级复用。在Tx方向上,该功能在通过PMA: IS_UNITDATA_i .request从PMA客户端接收到的比特之间执行原语(对于PMA客户端通道i=0到p-1),结果使用inst: IS_UNITDATA_i .request原语(用于服务接口通道i=0至q-1)发送到PMA下方的服务接口。由输入通道组或输出通道组承载的聚合信号被安排为一组PCSL。对于支持40GBASE-R接口的PMA子层,PCSL的数量z为4,每个PCSL的标称信令速率R为10.3125GBd。对于支持100GBASE-R接口的PMA子层,PCSL的数量z为20,每个PCSL的标称信令速率R为5.15625GBd。
对于具有m个输入通道(Tx或Rx方向)的PMA,每个输入通道携带z/m个比特复用的PCSL。每个输入通道的标称信令速率为R × z/m。如果在输入通道上接收到的比特x属于特定的PCSL,则该PCSL的下一个比特在同一输入通道上的比特位置x+(z/m)处被接收。z/m PCSL可以以任何顺序到达给定的输入通道。对于具有n个输出通道(Tx或Rx方向)的PMA,每个输出通道携带z/n个比特复用的PCSL。每个输出通道的标称信号速率为R × z/n。每个PCSL都从z/m输入通道之一上的序列中的位置映射到z/n输出通道之一上序列中的一个位置。如果在输出通道上发送的位x属于特定的PCSL,则该PCSL的下一位将在同一输出通道上的位位置x +(z/n)处发送。PMA在所有输入通道上接收有效比特流时,应在所有输出通道上保持所选的PCSL序列。
在输入通道上的任何时间位置接收到的每个PCSL都被转移到输出通道上的时间位置。由于PCS具有完全灵活的接收逻辑,因此实现可以自由地执行PCSL从输入通道到输出通道的映射,而不受约束。下图说明了10:4 PMA比特多路复用器的一种可能的比特排序。其他位顺序也是有效的。

偏斜和偏斜变化
PCSL之间的偏斜(相对延迟)保持在限制范围内,以便PCS可以重新组装通道信息。任何将来自不同输入通道的PCSL组合到同一输出通道上的PMA都需要容忍输入通道之间的偏斜变化Skew Variation,而不改变输出上的PCSL位置。
时钟架构
具有m个输入通道和n个输出通道的PMA应以输入通道速率的m/n倍对输出通道进行计时。这适用于Tx和Rx发送方向。在“PMA客户端和PMA”和/或“PMA和PMA下方的子层”之间的接口被物理实例化的情况下,PMA可以从一个或多个输入通道上的电气接口导出其输入时钟,并使用适当的PLL乘法器/除法器电路生成输出时钟。
没有要求PMA同步所有输出通道。输出通道的独立时钟示例包括以下内容:
--输入和输出通道数量相等的情况(PMA用于信号的重定时和再生)。这可以在输入通道和输出通道之间不重新排列PCSL的情况下实现(尽管允许重新排列),并且可以通过使用从相应输入通道恢复的时钟驱动每个输出通道来实现这种PMA。
--如果输入和输出通道的数量有一个共同的因子,则可以对PMA进行分区,使得来自输入通道子集的PCSL仅映射到输出通道的子集(例如,10:4的PMA可以实现为两个5:2的PMA)。一个子集的输出时钟可以独立于其他子集的输出时钟。
信号驱动
对于PMA客户端和PMA之间或PMA和PMA下方的子层之间的接口表示物理实例化接口的情况,PMA为该接口提供电信号驱动器。这些接口的电气和抖动/时序规范见
--附录83A规定了芯片到芯片应用的XLAUI /CAUI-10接口。
--附录83B规定了芯片到模块应用的XLAUI /CAUI-10接口。
--附录83D规定了芯片到芯片应用的CAUI-4接口。
--附录83E规定了芯片到模块应用的CAUI-4接口。
--C86.2规定了40GBASE-SR4和100GBASE-SR10 PMD的PMD服务接口。
--C87.2规定了40GBASE-LR4和40GBASE-ER4 PMD的PMD服务接口。
--附录86A规定了并行物理接口(XLPPI和CPPI),这是40GBASE-SR4、40GBASE-LR4和100GBASES-SR10 PMD的PMD服务接口的可选物理实例化。
链路状态
PMA应使用PMA: IS_SIGNAL .indication原语向PMA客户端提供链路状态信息。PMA持续监控以下服务接口从inst: IS_SIGNAL .indication原语报告的链路状态,并将其用作信号指示逻辑(SIL)的输入,以确定要报告给上层的链路状态。SIL的其他输入可能包括PMA下层服务接口通道上的时钟和数据恢复状态,以及缓冲器/FIFO是否已达到所需的填充水平以适应偏斜变化,从而在输出通道上发送数据。
本地回环功能
PMA本地环回应由邻近PMD的PMA为40GBASE-KR4、40GBASE-CR4、100BASE-CR10、100GBASE-KR4和100GBASE-CR4 PMD提供。PMA本地环回对于其他PMD或不与PMD相邻的PMA,模式是可选的。PMA子层可以提供本地环回功能。该功能涉及将每个输入通道循环回相应的输出通道。从PMA: IS_UNITDATA_i .request(tx_bit)原语接收到的每个比特都弹回给在PCS的方向上的PMA: IS _UNITDATA_i .indication(rx_bit)原语。
执行此功能的能力由Local_loopback_Ability状态变量表示。如果实现了C45 MDIO,则可以通过位1.8.0访问此变量。当local_loopback_enable控制变量设置为1时,设备将处于本地环回模式,当此变量设置为0时,设备将从本地环回模型中删除。 如果实现了C45 MDIO,则可以通过PMA/PMD control 1 register(位1.0.0)访问此变量。
远端回环功能
如果提供远程环回,应在离PMD足够近的PMA子层中实现,以保持每个单独PMD通道上的比特序列。当启用远程环回时,通过inst: IS_UNITDATA_i .indication在PMA下方的服务接口的通道上接收到的每个比特都会通过inst: IS _UNITDATA_i .request环回到相应的输出通道,朝向PMD。请注意,PMA下方的服务接口可以由FEC、PMD或另一个PMA子层提供。
执行此功能的能力由Remote_loopback_ability状态变量表示。如果实现了C45 MDIO,则可以通过位1.13.15访问此变量。当remote_loopback_enable控制变量设置为1时,设备将处于远程环回模式,当此变量设置为0时,设备将从远程环回方式中删除。如果实现了C45 MDIO,则可以通过PMA/PMD Control register 1(位1.0.1)访问此变量。
测试图案
如果PMA的输出通道出现在物理实例化的接口XLAUI/CAUI-n或PMD服务接口上(无论是否物理实例化),PMA可以选择性地生成和检测测试图案。这些测试图案用于测试单个PMA子层的相邻层接口,或在PMA子层物理实例化的接口和外部测试设备之间进行测试。
在每个发送方向上生成每个相应测试图案的能力由PRBS9 _Tx_generator _ability、PRBS9 _Rx_generator _ability、PRBS31 _Tx_ggenerator _ability和PRBS31 _Rx_ggenerator _ability状态变量表示,如果实施了C45 MDIO,则可以分别通过位1.1500.5、1.1500.4、1.1500.3和1.1500.1访问这些状态变量。
在每个发送方向上检查PRBS31测试图案的能力由PRBS31_Tx_checker_ability和PRBS31_Rx_checker _ability状态变量表示,如果C45 MDIO已实现,可分别通过位1.1500.2和1.1500.0访问。
下行发送PRBS31生成
如果支持,当PRBS31_enable和PRBS_Tx_gen_enable控制变量启用发送Tx PRBS31测试图案时,PMA应在每个通道通过inst: IS_UNITDATA_i .request原语指向PMA下方的服务接口。为了避免相关串扰,强烈建议在每个通道上生成的PRBS31图案由独立的随机种子生成,或者在任何通道上的PRBS31序列和任何其他通道之间的最小偏移量为20000 UI。当禁用发送Tx PRBS31测试图案时,PMA返回正常操作。如果实现了C45 MDIO,则可以通过位访问控制变量PRBS31_enable和PRBS_Tx_gen_enable (1.1501.7和1.1501.3)。
上行接收PRBS31生成
如果支持,当PRBS31_enable和PRBS_Rx_gen_enable控制变量启用发送Rx PRBS31测试图案时,PMA应在每个通道上生成PRBS31图案,并通过PMA: IS_UNITDATA_i .indication原语向PMA客户端发送。启用此测试图案时,PMA还向PMA客户端生成PMA: IS_SIGNAL .indication(SIGNAL_OK),并且与PMA下方的服务接口处的链路状态无关。当禁用发送Rx PRBS31测试图案时,PMA返回正常操作。如果实施了C45 MDIO,则可以通过位1.1501.7和1.1501.1访问PRBS31_enable和PRBS_Rx_gen_enable控制变量。
下行发送PRBS31检查
如果支持,当PRBS31_enable和PRBS_Tx_check_enable控制变量启用检查Tx PRBS31测试图案时,PMA应检查通过PMA: IS_UNITDATA_i .request原语从PMA客户端接收到的每个通道上的PRBS31图案。对于孤立的单比特错误,检查器应为PRBS31模式中的每个输入比特错误将测试图案错误计数器增加一个。当滑动1000位窗口中出现一个或多个错误时,实现应该能够计算至少一个错误。如果实施了C45条MDIO,则可以通过位1.1501.7和1.1501.2访问PRBS31_enable和PRBS_Tx_check_enable控制变量。Tx测试图案错误计数器Ln0_PRBS_Tx_test_err_counter到Ln9_PRBS_Tx_test_error_counter计数每个通道在检测来自PMA客户端的通道上的PRBS31图案时的错误。如果实施了C45 MDIO,则可以通过寄存器1.1600至1.1609访问这些计数器。当禁用检查Tx PRBS31测试图案时,PMA预期正常流量,测试图案错误计数不会继续。在检查Tx PRBS31测试图案下,比特复用继续进行。注意,每通道PRBS31的比特复用可能会产生对下游子层没有意义的信号。
上行接收PRBS31检查
如果支持,当PRBS31_enable和PRBS_Rx_check_enable控制变量启用检查Rx PRBS31测试图案时,PMA应通过inst: IS_UNITDATA_i .request原语检查从PMA下方的服务接口接收到的每条通道上的PRBS31图案。
如果实施了C45 MDIO,则可以通过位1.1501.7和1.1501.0访问PRBS31_enable和PRBS_Rx_check_enable控制变量。Rx测试图案错误计数器Ln0_PRBS_Rx_test_err_counter到Ln9_PRBS_Rx_test_error_counter计数每个通道在检测来自PMA下方服务接口的通道上的PRBS31模式时的错误。如果实施了C45 MDIO,则可以通过寄存器1.1700至1.1709访问这些计数器。在检查Rx PRBS31测试图案下,PMA: IS_SIGNAL .indication原语不指示有效信号。当检查Rx PRBS31测试图案被禁用时,PMA返回正常操作,执行比特复用。
下行发送PRBS9生成
如果支持,当PRBS9_enable和PRBS_Tx_gen_enable控制变量启用发送Tx PRBS9测试图案时,PMA应生成PRBS9模式通过inst: IS_UNITDATA_i .request原语,在通往PMA下方服务接口的每条通道上。如果实施了C45 MDIO,则可以通过位1.1501.6和1.1501.3访问PRBS9_enable和PRBS_Tx_gen_enable控制变量。当禁用发送Tx PRBS9测试图案时,PMA返回正常操作,执行比特复用。
请注意,发送PRBS9测试图案旨在通过外部测试装置test gear进行检查,PMA中没有提供PRBS9检查功能。
上行接收PRBS9生成
如果支持,当PRBS9_enable和PRBS_Rx_gen_enable控制变量启用发送Rx PRBS9测试图案时,PMA应在每个通道上生成朝向PMA客户端通过PMA: IS_UNITDATA_i .indication原语。PMA还将向PMA客户端生成PMA: IS_SIGNAL .indication(SIGNAL_OK),与PMA下方服务接口处的链路状态无关。如果实施了C45 MDIO,则可以通过位1.1501.6和1.1501.1访问PRBS9_enable和PRBS_Rx_gen_enable控制变量。当禁用发送Rx PRBS9测试图案时,PMA返回正常操作,执行比特复用。
请注意,发送PRBS9测试图案旨在通过外部测试装置test gear进行检查,PMA中没有提供PRBS9检查功能。
下行发送方波生成
发射方波测试图案可选地应用于Tx方向PMA的每个通道,朝向物理实例化的XLAUI/CAUI-n或PMD服务接口,无论其是否被物理实例化。执行此功能的能力由Square_wave_ability状态变量表示。如果实现了C45 MDIO,则可以通过Square wave test ability bit 1.1500.12访问Square_wave_ability状态变量。如果实现,则通过控制变量square_wave_enable_0到square_wave_enable_9启用发送方波测试图案。
如果实施了C45 MDIO,则可以通过square wave testing control and status register bit 1.1510.0至1.1510.9访问这些控制变量(仅限于PMA下方服务接口的通道数量)。启用后,PMA应通过inst: IS_UNITDATA_i .request原语在朝向PMA下方服务接口的方波启用通道上生成方波测试图案(8个1后跟8个0)。未启用方波的通道将发送正常数据或由其他寄存器确定的测试图案。当所有通道都禁用发射方波测试图案时,PMA将执行正常操作。
EEE
当支持可选的节能以太网(EEE)深度睡眠功能,并且PMA服务接口被物理实例化为XLAUI或CAUI-n时,需要本款中列出的附加功能。这些功能实现了对EEE深度睡眠功能运行至关重要的服务接口参数的通信。EEE操作的时序参数如下图所示。

MDIO功能映射
与PMA相关的寄存器集中在C45寄存器MMD = 1(PMA/PMD)、 MMD = 8(Separated PMA (1))、MMD = 9(Separated PMA (2))、 MMD = 10(Separated PMA (3))和 MMD = 11(Separated PMA (4))里。MMD8, MMD9, MMD10, MMD11与MMD1功能定义相同。下面对MMD1做一个简单的介绍。

控制变量映射

状态变量映射
