英特尔® Arria® 10收发器PHY用户指南

ID 683617
日期 3/28/2022
Public
文档目录

6.15.2.3. PRBS软核累加器

Pseudo Random Binary Sequence (PRBS,伪随机二进制序列)软核累加器与收发器通道中的硬核PRBS块协同使用。 本节介绍可添加到Native PHY IP core的软核逻辑。要使能该选项,请在Native PHY IP Parameter Editor中开启Enable PRBS Soft Accumulators选项。
PRBS软核累加器有3个控制比特(Enable,Reset和Snapshot)和一个状态比特(PRBS Done)。
  • Enable比特—用于打开累加逻辑。该位还用于选择性错误累加以暂停序列。
  • Reset比特—复位PRBS多项式以及比特和错误累加器。如果使用独立通道快照,该比特还可复位快照寄存器。
  • Snapshot波特—同时采集已累加比特的当前值和错误。从而中和因使用Avalon存储器映射接口增加的读取时间所产生的影响。采集快照可提供相关比特特定时间内的确切错误计数。
  • PRBS Done比特—表示PRBS检查器具有足够时间锁定到输入码型。

例如,要随时采集累加的错误并将其回读,需要执行如下操作。

  1. 执行执行动态重配置的步骤中的步骤1到步骤7的必要步骤。
  2. 对地址0x300执行一个read-modify-write操作,并将比特0设置成1'b1。此操作使能错误和比特计数器。
  3. 要采集特定实例中的累加错误,需对地址0x300执行read-modify-write操作,并将比特2设置成1'b1。在此过程中对错误计数器快照并将值存储在错误计数寄存器中。
  4. 采集快照后,需从相应错误寄存器0x301到0x307进行读取,以读取累加的错误数量。
  5. 要复位比特和错误累加器,可以对地址0x300位1执行一次read-modify-write操作。
  6. 执行执行动态重配置的步骤中的步骤9到步骤12的必要步骤。
注: 可使能错误和比特计数器(0x300[0])并在不同时间采集累加比特和错误。只要设置了计数器使能比特,错误计数寄存器和比特计数寄存器就更新为最新计数器值。

使用硬核PRBS模块时,可使用PRBS软核累加器计算所累加比特和错误的数量。PRBS软核累加器是基于字的计数器。从PRBS软核累加器中读取的值表示已计数字的数量。因此,为了获得总累加比特,用户需要将通过计数[49:0]寄存器读取的值和PCS-PMA接口的宽度相乘。对于Accumulated error count [49:0]寄存器,只要字中存在比特错误(某个字的其中一个比特错误或某个字的所有比特错误),都将计数一次。因此,Accumulated error count [49:0]寄存器无法提供完全的位错误计数。对于每个计数,完全位错误的范围可从1到PCS-PMA接口宽度。

有关使用硬核PRBS块的详细信息,请参阅“使用数据码型生成器和检查器”部分。

表 290.  PRBS累加器寄存器
地址 类型 名称 说明
0x300[0] RW Counter enable (enables both error and bit counters) 计数器使能(使能错误和比特计数器)
0x300[1] RW Reset 复位错误累加器
0x300[2] RW Error Count Snapshot 快照采集当时实例中的已累加比特和错误的当前值
0x300[3] RO PRBS Done 置位PRBS Done时表示验证器已采集了连续的PRBS码型,且多项式首次传递已完成
0x301[7:0] RO Accumulated error count [7:0] 已累加的错误计数[7:0]
0x302[7:0] RO Accumulated error count [15:8] 已累加的错误计数[15:8]
0x303[7:0] RO Accumulated error count[23:16] 已累加的错误计数[23:16]
0x304[7:0] RO Accumulated error count [31:24] 已累加的错误计数[31:24]
0x305[7:0] RO Accumulated error count [39:32] 已累加的错误计数[39:32]
0x306[7:0] RO Accumulated error count [47:40] 已累加的错误计数[47:40]
0x307[1:0] RO Accumulated error count [49:48] 已累加的错误计数[49:48]
0x30D[7:0] RO Accumulated bit pass through count[7:0] 已累加的比特通过计数[7:0]
0x30E[7:0] RO Accumulated bit pass through count[15:8] 已累加的比特通过计数[15:8]
0x30F[7:0] RO Accumulated bit pass through count[23:16] 已累加的比特通过计数[23:16]
0x310[7:0] RO Accumulated bit pass through count[31:24] 已累加的比特通过计数[31:24]
0x311[7:0] RO Accumulated bit pass through count[39:32] 已累加的比特通过计数[39:32]
0x312[7:0] RO Accumulated bit pass through count[47:40] 已累加的比特通过计数[47:40]
0x313[1:0] RO Accumulated bit pass through count[49:48] 已累加的比特通过计数[49:48]
注: 使用软和PRBS累加器时,英特尔建议禁用字节串行器和解串器模块。使能字节串行器和解串器模块时,所计算的比特数量会因以半速率运行的时钟而减半。