L-Tile和H-Tile收发器PHY用户指南

ID 683621
日期 3/29/2021
Public
文档目录

2.3.5. PCS-Core接口参数

本节定义了Native PHY IP core GUI中用于自定义PCS到内核接口的参数。下表描述了可用参数。根据所选的Transceiver Configuration Rule ,如果指定的设置违反了协议标准,那么Native PHY IP core Parameter Editor将打印错误或警告消息。

表 18.  PCS-Core接口参数
参数 范围 说明
General Interface Options
Enable PCS reset status ports On / Off 使能可选的TX数字复位和RX数字复位释放状态输出端口包括:
  • tx_transfer_ready:状态端口,当TX通道准备好数据传输时进行指示。当TX PCS通道绑定时,仅适用主通道的传输准备就绪状态。
  • rx_transfer_ready:状态端口,当RX通道准备好输出传输时进行指示。当RX PCS通道绑定时,仅使用主通道的传输准备就绪状态。
  • osc_transfer_en:状态端口,当内部振荡器时钟准备好数据传输时进行指示。
  • tx_fifo_ready:状态端口,当TX FIFO准备好数据传输时进行指示。
  • rx_fifo_ready:状态端口,当RX FIFO准备好数据传输时进行指示。
  • tx_digitalreset_timeout:状态端口,当TX PCS数字复位释放超时,但TX PCS通道还没准备好数据传输时进行指示。
  • rx_digitalreset_timeout:状态端口,当RX PCS数字复位释放超时,但RX PCS通道还没准备好数据传输时进行指示。

PCS复位状态端口可帮助调试transceiver native phy没有退出复位的原因。您可以使用这些端口来调试常见的连接问题,例如:未驱动tx/rx_coreclkin,错误的频率或者没有正确设置FIFO。

请参考"Debugging with the PCS reset status ports"部分来获得详细信息。

TX PCS-Core Interface FIFO
TX Core Interface FIFO Mode

Phase-Compensation

Register

Interlaken

Basic

TX PCS FIFO总是在Phase Compensation模式下运行。选择范围(selection range)为TX Core FIFO指定以下其中一个模式:
  • Phase Compensation:TX Core FIFO对读时钟tx_clkout与写时钟tx_coreclkin或者tx_clkout之间的时钟相位差异进行补偿。
  • Register:此模式仅限于40比特或更窄接口宽度的PCS Direct。TX Core FIFO被旁路。您必须将写时钟tx_coreclkin连接到读时钟tx_clkouttx_parallel_datatx_controltx_enh_data_valid在FIFO输出上寄存。始终置位tx_enh_data_valid 端口1'b1。
  • Interlaken:TX Core FIFO用作弹性缓冲器。在此模式下,有控制进入FIFO的数据流的额外信号。因此,FIFO写时钟频率不必与读时钟频率相同。您可以通过tx_fifo_wr_en来控制对FIFO的写入。通过监控FIFO标志,您可以避免FIFO变满和变空的情况。Interlaken帧生成器控制从TX FIFO的数据读取。
  • Basic:TX Core FIFO用作弹性缓冲器。此模式允许以不同的时钟频率驱动FIFO的写入和读取端。监控FIFO标志以控制写入和读取操作。有关更多详细信息,请参考Enhanced PCS FIFO Operation部分。

请参考Special TX PCS Reset Release Sequence部分来了解是否需要在顶层代码中实现特殊的复位释放序列。

TX FIFO partially full threshold 0-31 指定PCS TX Core FIFO的半满阈值。输入一个要求TX Core FIFO标志一个半满状态的值。
TX FIFO partially empty threshold 0-31 指定PCS TX Core FIFO的半空阈值。输入一个要求TX Core FIFO标志一个半空状态的值。
Enable tx_fifo_full port On / Off 使能tx_fifo_full port。此信号在TX Core FIFO变满时指示。此信号同步于tx_coreclkin
Enable tx_fifo_empty port On / Off 使能tx_fifo_empty port。此信号在TX Core FIFO变空时指示。这是一个异步信号。
Enable tx_fifo_pfull port On / Off 使能tx_fifo_pfull port。此信号在TX Core FIFO达到指定的半满阈值时指示。此信号与tx_coreclkin同步。
Enable tx_fifo_pempty port On / Off 使能tx_fifo_pempty port。此信号在TX Core FIFO达到指定的半空阈值时指示。这是一个异步信号。
Enable tx_dll_lock port On/Off 使能发送延迟锁环(locked-loop)端口。此信号与tx_clkout同步。
RX PCS-Core Interface FIFO
RX PCS-Core Interface FIFO Mode

Phase-Compensation

Phase-Compensation - Register

Phase Compensation - Basic

Register

Register - Phase Compensation

Register - Basic

Interlaken

10GBASE-R
对PCS RX FIFO指定以下其中一种模式:
  • Phase Compensation:此模式将RX PCS FIFO以及RX Core FIFO置于Phase Compensation模式。此模式对读时钟rx_coreclkin或者tx_clkout与写时钟rx_clkout之间的时钟相位差异进行补偿。
  • Phase Compensation-Register:此模式将RX PCS FIFO置于Phase Compensation模式,将RX Core FIFO置于Register模式。RX Core FIFO的读时钟rx_coreclkin和写时钟rx_clkout连接在一起。在双倍速率传输模式禁用时,此模式受限于字节串化器/解串器禁用的8,10,16或20的Standard PCS PMA宽度组合,32:32或40:40的Gearbox Ratios的Enhanced PCS和40-bits或更窄接口宽度的PCS Direct。 在双倍速率传输模式使能时可支持其他配置。
  • Phase Compensation-Basic:此模式将RX PCS FIFO置于Phase Compensation模式,将RX Core FIFO置于Basic模式。此模式只能与Enhanced PCS和PCS Direct一起使用。Basic模式的RX Core FIFO用作弹性缓冲器或时钟交叉FIFO,类似于Interlaken,其中rx_coreclkinrx_clkout可以是异步的,并且有不同的频率。您必须实现一个FSM,用于监控FIFO状态标志和管理FIFO读写使能,以防止FIFO上溢和下溢。
  • Register:此模式受限于40-bits或更窄接口宽度的PCS Direct。RX PCS FIFO和RX Core FIFO被旁路。FIFO的读时钟rx_coreclkin和写时钟rx_clkout连接在一起。rx_parallel_datarx_controlrx_enh_data_valid在FIFO输出上寄存。
  • Register-Phase Compensation:此模式将RX PCS FIFO置于Register模式,将RX Core FIFO置于Phase Compensation模式。此模式受限于字节串化器/解串器禁用的8,10,16或20的Standard PCS PMA宽度组合,32:32或40:40的Gearbox Ratios的Enhanced PCS和40-bits或更窄接口宽度的PCS Direct。
  • Register-Basic:此模式将RX PCS FIFO置于Register模式,将RX Core FIFO置于Basic模式。此模式仅能与32:32或40:40的Gearbox Ratios的Enhanced PCS和40-bits或更窄接口宽度的PCS Direct一起使用。Basic模式的RX Core FIFO用作弹性缓冲器或时钟交叉FIFO,类似于Interlaken,其中rx_coreclkinrx_clkout可以是异步的,并且有不同的频率。您必须实现一个FSM,用于监控FIFO状态标志和管理FIFO读写使能,以防止FIFO上溢和下溢。
  • Interlaken:对Interlaken协议选择此模式。要实现去偏斜,必须实现一个FSM,FSM根据FIFO flag对FIFO操作进行控制。在此模式中,FIFO用作一个弹性缓冲器。
  • 10GBASE-R:在此模式中,实现模块锁定后,数据通过FIFO。OS (Ordered Sets)被删除,插入空闲字(idles)以补偿RX PMA时钟与架构时钟之间的+/- 100 ppm时钟差异,以实现64000字节的最大数据包长度。
注: fifo状态标志仅用于Interlaken和Basic模式,在所有其他情况下应该被忽略。
RX FIFO partially full threshold 0-63 指定PCS RX Core FIFO的半满阈值。默认值为5。
RX FIFO partially empty threshold 0-63 指定PCS RX Core FIFO的半空阈值。默认值为2。
Enable RX FIFO alignment word deletion (Interlaken) On / Off 开启此选项时,实现帧同步后,所有对齐字(sync words)(包括第一个同步字)都被移除。如果使能此选项,那么也必须使能控制字删除。
Enable RX FIFO control word deletion (Interlaken) On / Off 开启此选项时,使能Interlaken控制字移除。当Enhanced PCS RX Core FIFO在Interlaken模式下配置时,实现帧同步后,使能此选项将删除所有控制字。使能此选项也要求您使能对齐字删除。
Enable rx_data_valid port On / Off 使能rx_data_valid port。置位时,此信号在RX并行数据总线上存在有效数据时进行指示。
Enable rx_fifo_full port On / Off 使能rx_fifo_full port。当RX Core FIFO在Interlaken或者Basic模式下运行时需要此信号,此信号在RX Core FIFO变满时进行指示。这是一个异步信号。
Enable rx_fifo_empty port On / Off 使能rx_fifo_empty port。此信号在RX Core FIFO变空时进行指示。此信号同步于rx_coreclkin
Enable rx_fifo_pfull port On / Off 使能rx_fifo_pfull port。 此信号在RX Core FIFO达到指定的半满阈值时指示,此值是通过Native PHY IP core PCS-Core Interface选项卡设置的。这是一个异步信号。
Enable rx_fifo_pempty port On / Off 使能rx_fifo_pempty port。 此信号在RX Core FIFO达到指定的半空阈值时指示,此值是通过Native PHY IP core PCS-Core Interface选项卡设置的。此信号与rx_coreclkin同步。
Enable rx_fifo_del port (10GBASE‑R) On / Off 使能可选的rx_fifo_del status output port。当一个字从RX Core FIFO中删除时此信号发出指示。此信号仅用于10GBASE-R收发器配置规则。这是一个异步信号。
Enable rx_fifo_insert port (10GBASE‑R) On / Off 使能rx_fifo_insert port。当一个字被插入到Core FIFO时此信号发出指示。此信号仅用于10GBASE-R收发器配置规则。此信号与rx_coreclkin同步。
Enable rx_fifo_rd_en port On / Off 使能rx_fifo_rd_en input port。此信号使能后,从RX Core FIFO读取一个字。 此信号与rx_coreclkin同步,当RX Core FIFO在Interlaken或Basic模式下运行时需要此信号。
Enable rx_fifo_align_clr port (Interlaken) On / Off 使能rx_fifo_align_clr input port。仅用于Interlaken。此信号与rx_clkout同步。
表 19.  TX时钟选项
参数 范围 说明
Selected tx_clkout clock source

PCS clkout

PCS clkout x2

pma_div_clkout

指定tx_clkout输出端口源。

如果选择tx_pma_div_clkout作为tx_clkout2的时钟源,那么数据速率必须等于或大于5 Gbps。

Enable tx_clkout2 port On/ Off 使能tx_clkout2端口。
Selected tx_clkout2 clock source

PCS clkout

PCS clkout x2

pma_div_clkout

您必须使能tx_clkout2端口才能对此参数进行选择。

指定tx_clkout2输出端口源。

TX pma_div_clkout division factor

Disabled

1, 2, 33, 40, 66

为了对此参数进行选择,您必须在所选的tx_clkout时钟源或tx_clkcout2时钟源选项下选择pma_div_clkout

选择生成tx_clkouttx_clkout2端口使用的pma_div_clkout频率的分频器(divider)。

示例:

对于10.3125 Gbps数据速率,如果选择分频器值33,那么pma_div_clkout产生的频率为156.25MHz。

Selected tx_coreclkin clock network

Dedicated Clock

Global Clock

指定用于驱动tx_coreclkin输入的时钟网络。

如果从收发器通道的tx/rx_clkout或者tx/rx_clkout2驱动tx_coreclkin输入端口,那么选择“Dedicated Clock”。

如果tx_coreclkin输入端口由架构(Fabric)时钟网络驱动,那么选择“Global Clock”。如果tx_coreclkintx/rx_clkout或者tx/rx_clkout2通过架构(Fabric)时钟网络驱动,那么也可以选择“Global Clock”。

Enable tx_coreclkin2 port On/ Off 当双倍数据传输使能并且没有字节串化的PMA宽度为20时,使能此时钟来提供一个fifo读时钟。
表 20.  RX时钟选项
参数 范围 说明
Selected rx_clkout clock source

PCS clkout

PCS clkout x2

pma_div_clkout

指定rx_clkout输出端口源。
Enable rx_clkout2 port On/ Off 使能rx_clkout2端口。
Selected rx_clkout2 clock source

PCS clkout

PCS clkout x2

pma_div_clkout

您必须使能rx_clkout2端口才能对此参数进行选择。

指定rx_clkout2输出端口源。

RX pma_div_clkout division factor

Disabled

1, 2, 33, 40, 66

为了对此参数进行选择,您必须在所选的rx_clkout时钟源或rx_clkcout2时钟源选项下选择pma_div_clkout

选择生成tx_clkout端口使用的pma_div_clkout频率的分频器(divider)。

示例:

对于10.3125 Gbps数据速率,如果选择分频器值33,那么pma_div_clkout产生的频率为156.25 MHz。

Selected rx_coreclkin clock network

Dedicated Clock

Global Clock

指定用于驱动rx_coreclkin输入的时钟网络。

如果从收发器通道的tx/rx_clkout或者tx/rx_clkout2驱动rx_coreclkin输入端口,那么选择“Dedicated Clock”。

如果rx_coreclkin输入端口由架构(Fabric)时钟网络驱动,那么选择“Global Clock”。如果rx_coreclkintx/rx_clkout或者tx/rx_clkout2通过架构(Fabric)时钟网络驱动,那么也可以选择“Global Clock”。

表 21.  延迟测量选项
参数 范围 说明
Enable latency measurement ports On/ Off

使能延迟测量端口:

tx_fifo_latency_pulse, rx_fifo_latency_pulse

tx_pcs_fifo_latency_pulse, rx_pcs_fifo_latency_pulse, latency_sclk