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

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

2.4.10. Standard PCS端口

图 25. 使用Standard PCS的收发器通道如果选择了其中一种使用Standard PCS的收发器配置模式,或者选择了Data Path Reconfiguration,即便收发器配置不是那些使用Standard PCS的收发器配置中的一种,那么也都会出现Standard PCS端口。

在下表中,变量代表这些参数:

  • <n>—通道数
  • <w>—接口宽度
  • <d>—串化因子
  • <s>—符号大小
  • <p>—PLL的数量
表 67.  TX Standard PCS:数据,控制和时钟
名称 方向 时钟域 说明
tx_parallel_data[<n>128-1:0]

输入

tx_clkout

从FPGA架构到TX PCS的TX并行数据输入。

unused_tx_parallel_data

输入

tx_clkout 当开启Enable simplified data interface时,此信号指定未使用的数据。当没有设置简化的数据接口时,未使用的比特是tx_parallel_data的一部分。将所有这些比特连接到0。如果未使用的数据比特未连接到0,那么TX并行数据可能不会被Native PHY IP core正确地串化。
tx_coreclkin[<n>-1:0] 输入 时钟

FPGA架构时钟。此时钟驱动TX FIFO的写端口。

tx_clkout[<n>-1:0]

输出

时钟

这是由本地CGB为非绑定配置(non bonded configurations)以及由主CGB为绑定配置(bonded configurations)生成的并行时钟。此时钟对FPGA架构到TX PCS的tx_parallel_data提供时钟。

表 68.  RX Standard PCS:数据,控制,状态和时钟
名称 方向 时钟域 说明
rx_parallel_data[<n> 128-1:0]

输出

与驱动FIFO的读取侧的时钟同步(rx_coreclkinrx_clkout)

从RX PCS到FPGA架构的RX并行数​​据。对于每个128-bit字的rx_parallel_data,8B/10B解码器使能时,数据比特对应于rx_parallel_data[7:0],8B/10B解码器禁用时,对应于rx_parallel_data[9:0]

unused_rx_parallel_data

输出

与驱动FIFO的读取侧的时钟同步(rx_coreclkinrx_clkout)

当开启Enable simplified data interface时,此信号指定未使用的数据。当没有设置简化的数据接口时,未使用的比特是rx_parallel_data的一部分。这些输出可以悬空。
rx_clkout[<n>-1:0]

输出

时钟

由收发器RX PMA恢复的低速并行时钟,对RX Standard PCS中的模块提供时钟。

rx_coreclkin[<n>-1:0] 输入 时钟

RX并行时钟,驱动RX FIFO的读取端时钟。

表 69.  Standard PCS FIFO
名称 方向 时钟域 说明
tx_std_pcfifo_full[<n>-1:0]

输出

与驱动FIFO的写入侧的时钟同步(tx_coreclkintx_clkout)

当标准TX FIFO达到满阈值时进行指示。

tx_std_pcfifo_empty[<n>-1:0]

输出

与驱动FIFO的写入侧的时钟同步(tx_coreclkintx_clkout)

当标准TX FIFO达到空阈值时进行指示。

rx_std_pcfifo_full[<n>-1:0]

输出

与驱动FIFO的读取侧的时钟同步(rx_coreclkinrx_clkout)

当标准RX FIFO变满时进行指示。

rx_std_pcfifo_empty[<n>-1:0]

输出

与驱动FIFO的读取侧的时钟同步(rx_coreclkinrx_clkout)

当标准RX FIFO变满时进行指示。

表 70.  Rate Match FIFO
名称 方向 时钟域 说明
rx_std_rmfifo_full[<n>-1:0]

输出

异步

速率匹配FIFO (rate match FIFO)满标志。置位时速率匹配FIFO是满的。您必须同步此信号。此端口仅用于GigE模式。

rx_std_rmfifo_empty[<n>-1:0]

输出

异步

速率匹配FIFO空标志。置位时速率匹配FIFO是空的。您必须同步此信号。此端口仅用于GigE模式。

rx_rmfifostatus[<n>-1:0]

输出

异步

表明FIFO状态。下面编码定义为:

  • 2'b00:正常操作
  • 2'b01: 删除,rx_std_rmfifo_full = 1
  • 2'b10:插入,rx_std_rmfifo_empty = 1
  • 2'b11:满。rx_rmfifostatusrx_parallel_data的一部分。 rx_rmfifostatus对应于rx_parallel_data[14:13]
表 71.  8B/10B编码器和解码器
名称 方向 时钟域 说明
tx_datak

输入

tx_clkout

如果使能了8B/10B并且设置了简化的数据接口,那么会显示rx_datak。为1时,表明rx_parallel_data的8B/10B解码字是控制。为0时,表明rx_parallel_data的8B/10B解码字是数据。当简化的数据接口未被设置时,rx_datakrx_parallel_data的一部分。

tx_forcedisp[<n>(<w>/<s>-1:0]

输入

异步

此信号使您能够强制8B/10B编码器的差异。为"1"时,强制输出数据的差异为tx_dispval上驱动的值。为"0"时,当前运行的差异继续。tx_forcedisptx_parallel_data的一部分。tx_forcedisp对应于tx_parallel_data[9]

tx_dispval[<n>(<w>/<s>-1:0]

输入

异步

指定数据的差异。为0时表明正差异,为1时表明负差异。tx_dispvaltx_parallel_data的一部分。tx_dispval对应于tx_dispval[10]

rx_datak[<n><w>/<s>-1:0]

输出

rx_clkout

如果使能了8B/10B并且设置了简化的数据接口,那么会显示rx_datak。为1时,表明rx_parallel_data的8B/10B解码字是控制。为0时,表明rx_parallel_data的8B/10B解码字是数据。当简化的数据接口未被设置时,rx_datakrx_parallel_data的一部分。

rx_errdetect[<n><w>/<s>-1:0] 输出

与驱动FIFO的读取侧的时钟同步(rx_coreclkinrx_clkout)

置位时表明在接收的代码组中检测到了代码组违规。与rx_disperr信号一起使用以区分代码组违规和差异错误。rx_errdetect/rx_disperr的代码定义如下:

  • 2'b00:没有错误
  • 2'b10:代码组违规
  • 2'b11:差异错误。 rx_errdetectrx_parallel_data的一部分。对于每个128-bit字, rx_errdetect对应于rx_parallel_data[9]
rx_disperr[<n><w>/<s>-1:0] 输出

与驱动FIFO的读取侧的时钟同步(rx_coreclkinrx_clkout)

置位时表明接收的代码组中的一个差异错误。rx_disperrrx_parallel_data的一部分。对于每个128-bit字,rx_disperr对应于rx_parallel_data[11]
rx_runningdisp[<n><w>/<s>-1:0] 输出

与驱动FIFO的读取侧的时钟同步(rx_coreclkinrx_clkout)

为高电平时,表明接收到了负差异的rx_parallel_data。为低电平时,表明接收到了正差异的rx_parallel_datarx_runningdisprx_parallel_data的一部分。对于每个128 bit字,rx_runningdisp对应于rx_parallel_data[15]
rx_patterndetect[<n><w>/<s>-1:0] 输出 异步 置位时,表明在当前字边界中已经检测到编程的字对齐码型。rx_patterndetectrx_parallel_data的一部分。对于每个128-bit字,rx_patterndetect对应于rx_parallel_data[12]
rx_syncstatus[<n><w>/<s>-1:0] 输出 异步 置位时表明满足同步锁需要的条件。rx_syncstatusrx_parallel_data的一部分。对于每个128-bit字,rx_syncstatus对应于rx_parallel_data[10]
表 72.  字对齐器和比特滑移(Word Aligner and Bitslip)
名称 方向 时钟域 说明
tx_std_bitslipboundarysel[5 <n>-1:0] 输入

异步

比特滑移边界选择信号。指定TX bit slipper必须滑移的比特数。

rx_std_bitslipboundarysel[5 <n>-1:0] 输出

异步

此端口用于确定性延迟字对齐模式。此端口报告RX模块滑掉的比特数。在Word Aligner的Deterministic Latency Mode或者Manual Mode中应考虑此端口值。

rx_std_wa_patternalign[<n>-1:0] 输入

同步到rx_clkout

当字对齐器置于手动模式下有效。在手动模式下,通过置位rx_std_wa_patternalign来对齐字。当PCS-PMA接口宽度为10比特时,rx_std_wa_patternalign是电平敏感的。对于所有其它PCS-PMA接口宽度,rx_std_wa_patternalign是边界敏感的。

仅当字对齐器在手动或确定性延迟模式下配置时,才能使用此端口。

当字对齐器在手动模式下并且PCS-PMA接口宽度是10比特时,这是一个电平敏感信号。在此情况下,当字对齐器发现对齐码型时,它会监控此字对齐码型的输入数据,并更新字边界。

对于所有其他PCS-PMA接口宽度,此信号是边界敏感的。此信号使用PCS并行时钟在PCS内部同步,应该置位至少2个时钟周期以现实同步。

rx_std_wa_a1a2size[<n>-1:0] 输入

异步

用于SONET协议。当必须检测A1和A2成帧字节时置位。A1和A2是SONET背板字节,仅在PMA数据位宽为8比特时使用。

rx_bitslip[<n>-1:0] 输入

异步

当字对齐器处于bitslip模式下时使用。当字对齐器在Manual (PLD controlled),Synchronous State Machine或者Deterministic Latency时,rx_bitslip signal无效,应连接到0。对于rx_std_bitslip信号的每个上升沿,字边界移动1比特。每个bitslip会将最早接收的比特从接收到数据中删除。

表 73.  比特倒转和极性反转(Bit Reversal and Polarity Inversion)
名称 方向 时钟域 说明
rx_std_byterev_ena[<n>-1:0]

输入

异步

当PMA宽度为16或20比特时,此控制信号可用。置位时,使能RX接口上的字节倒转。如果发送数据的MSB和LSB被错误地互换,则使用此控制信号。

rx_std_bitrev_ena[<n>-1:0]

输入

异步

置位时,使能RX接口上的比特倒转。如果外部发送电路先发送最高有效位,那么比特顺序被倒转。使能时,接收电路反序接收所有字。 比特倒转电路运行在字对齐器的输出上。

tx_polinv[<n>-1:0]

输入

异步

置位时,TX极性被反转。仅当TX比特极性反转使能时有效。

rx_polinv[<n>-1:0]

输入

异步

置位时,RX极性被反转。仅当RX比特极性反转使能时有效。

rx_std_signaldetect[<n>-1:0]

输出

异步

使能时,信号阈值检测电路检测出现在RX输入缓存上的信号电平是否高于指定的信号检测阈值电压。通过Quartus Prime Settings File (.qsf) assignment指定信号检测阈值。PCI Express*,SATA和SAS协议需要此信号。