Intel® Cyclone® 10 GX收发器PHY用户指南

ID 683054
日期 12/28/2017
Public
文档目录

6.15.2.3. PRBS软累加器

Pseudo Random Binary Sequence(PRBS,伪随机二进制序列)软累加器与收发器通道中的硬PRBS块协同使用。 本节介绍可添加到Native PHY IP核的软逻辑。要使能该选项,请在Native PHY IP参数逻辑器中开启Enable PRBS Soft Accumulators选项。
PRBS软累加器有3个控制位(Enable、Reset和Snapshot)和一个状态位(PRBS Done)。
  • Enable位—用于打开累加逻辑。该位还用于选择性错误累加以暂停序列。
  • Reset位—复位PRBS多项式以及位和错误累加器。如果使用独立通道快照,该位还可复位快照寄存器。
  • Snapshot位—同时采集已累加位的当前值和错误。从而中和因使用Avalon-MM接口增加的读取时间所产生的影响。采集快照可提供相关位特定时间内的确切错误计数。
  • 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块的详细信息,请参阅“使用数据码型生成器和检查器”部分。

表 183.  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累加器时,Intel建议禁用字节串行器和解串器模块。使能字节串行器和解串器模块时,所计算的位数量会因以半速率运行的时钟而减半。