高速收发器 GTP_GTX_GTH

目录

高速收发器 GTP/GTX/GTH(参考ug482/ug476)

概述

  • GT(Gigabit Transceiber)

7 系列 FPGA 高速收发器资源情况

GTP/GTX/GTH 特性区别

GroupFeatureGTP(6.6Gb/s)GTX(12.5Gb/s)GTH(13.1Gb/s)
PCS2-byte internal datapath to support differentline rate requirements
4-byte internal datapath to support differentline rate requirements
8B/10B encoding and decoding
64B/66B and 64B/67B support
Comma detection and byte and word alignment
PRBS generator and checker
FIFO for clock correction and channel bonding
Programmable FPGA logic interface
100 Gb Attachment Unit Interface (CAUI) support
Native multi-lane support for buffer bypass
TX Phase Interpolator PPM Controller for external voltage-controlled crystal oscillator (VCXO) replacement
PMAShared LC tank phase-locked loop (QPLL) per Quad for best jitter performance
One ring PLL per channel for best clocking flexibility
Two shared ring oscillator PLLs per Quad
Flexible reference clocking options
Power-efficient adaptive linear equalizer mode called the low-power mode (LPM)
5-tap decision feedback equalization (DFE)
7-tap DFE
Reflection cancellation for enhanced backplane support
TX Pre-emphasis
Programmable TX output
Beacon signaling for PCI Express® designs
Out-of-band (OOB) signaling including COM signal support for Serial ATA (SATA) designs
RX Margin Analysis
Line rate support up to 6.6 Gb/s
Line rate support up to 12.5 Gb/s
Line rate support up to 13.1 Gb/s

注:

  • RX margin analysis feature to provide non-destructive, 2-D post-equalization eye scan.

支持使用模式

LPM、DFE 的区别

Power-efficient, adaptive linear equalizer mode called the low-power mode (LPM) and a high-performance, adaptive decision feedback equalization (DFE) mode to compensate for high frequency losses in the channel while providing maximum flexibility.

Device 布局

在这里插入图片描述

Quad Configuration

GTP 一个 Quad 共享两个 PLL,而 GTX/GTH 一个 Quad 共享一个 QPLL,同时每个通道单独拥有一个 CPLL

在这里插入图片描述

GT_CHANNEL 结构框图

  • GTP 不具备 DFE 功能
  • GT 参考时钟类型不一样

在这里插入图片描述

时钟结构

GTP

参考时钟选择
  • 每个通道可以根据 TXSYSCLKSEL 和 RXSYSCLKSEL 信号选择 GT_CHANNEL 参考时钟为 PLL0OUTCLK 或 PLL1OUTCLK

在这里插入图片描述

  • PLL 参考时钟选择可通过 PLL0REFCLKSEL[2:0] 和 PLL1REFCLKSEL[2:0] 信号进行选择

在这里插入图片描述

在这里插入图片描述

PLL
结构框图

在这里插入图片描述

  • 结构同 GTX/GTH 的 CPLL
  • GTP 的 PLL 的正常工作频率范围:1.6 GHz ~ 3.3 GHz
TX 端时钟结构

在这里插入图片描述

  • TXOUTCLKPCS 和 TXOUTCLKFABRIC 为多余输出,使用 TXOUTCLK 驱动逻辑

  • 图中 ÷4 or ÷5 由GT_CHANNEL 的 TX_DATA_WIDTH 参数控制

    • ÷4:TX_DATA_WIDTH = 16/32
    • ÷5:TX_DATA_WIDTH = 20/40
  • 串行数据时钟分频系数 D

在这里插入图片描述

  • 并行数据时钟分频系数及时钟选择
    • TXOUTCLKSEL = 3’b001: The TXOUTCLKPCS path is not recommended for use because it incurs extra delay from the PCS block(不建议使用,经过 PCS 增加了延迟).
    • TXOUTCLKSEL = 3’b010: TXOUTCLKPMA is the divided down PLL clock after the TX phase interpolator and is used by the TX PCS block. This clock is interrupted when the PLL is reset by one of the related reset signals(当 PLL 复位时该时钟会中断).
    • TXOUTCLKSEL = 3’b011 or 3’b100: TXPLLREFCLK_DIV1 or TXPLLREFCLK_DIV2 is the input reference clock to the PLL0 or PLL1, depending on the TXSYSCLKSEL[1] setting. TXPLLREFCLK is the recommended clock for general usage and is required for the TX buffer bypass mode(建议使用该时钟).
RX 端时钟结构

在这里插入图片描述

GTX/GTH

外部参考时钟选择

在这里插入图片描述

在这里插入图片描述

CPLL
结构框图

在这里插入图片描述
在这里插入图片描述

  • GTX 的 CPLL 的正常工作频率范围:1.6 GHz ~ 3.3 GHz
  • GTH 的 CPLL 的正常工作频率范围:1.6 GHz ~ 5.16 GHz
不同协议下 CPLL 系数配置

在这里插入图片描述

在这里插入图片描述

动态更改 CPLL 设置

步骤如下:

  1. 通过 CPLLREFCLKSEL 或 DRP 接口更改 CPLL 设置
  2. 参考复位逻辑章节的 CPLL 复位,进行 CPLL 复位
  3. 等待 CPLL locked,置位 GTTXRESET/GTRXRESET 复位整个发送/接收逻辑
  4. 可以继续其他操作
动态切换 CPLL 至 QPLL

步骤如下:

  1. 拉低 QPLLPD 和 QPLLRESET 信号,启用 QPLL
  2. 等待 QPLLLOCK = 1
  3. 置位 GTTXRESET/GTRXRESET 信号,TXSYSCLKSEL[0] 和 RXSYSCLKSEL[0] 都设置为 1,置位 TXUSERRDY/RXUSERRDY
  4. 拉低 GTTXRESET/GTRXRESET 信号,等待 TXRESETDONE 和 RXRESETDONE 都变为 1
  5. 置位 CPLLRESET 和 CPLLPD 信号禁用 CPLL 以节约功耗
  6. 可以继续其他操作
QPLL
结构框图

在这里插入图片描述

不同协议下 QPLL 系数配置

在这里插入图片描述

动态更改 QPLL 设置

步骤如下:

  1. 通过 QPLLREFCLKSEL 或 DRP 接口更改 QPLL 设置
  2. 参考复位逻辑章节的 QPLL 复位,进行 QPLL 复位
  3. 等待 QPLL locked,置位 GTTXRESET/GTRXRESET 复位整个发送/接收逻辑
  4. 可以继续其他操作
动态切换 QPLL 至 CPLL

步骤如下:

  1. 拉低 CPLLPD 和 CPLLRESET 信号,启用 CPLL
  2. 等待 CPLLLOCK = 1
  3. 置位 GTTXRESET/GTRXRESET 信号,TXSYSCLKSEL[0] 和 RXSYSCLKSEL[0] 都设置为 0,置位 TXUSERRDY/RXUSERRDY
  4. 拉低 GTTXRESET/GTRXRESET 信号,等待 TXRESETDONE 和 RXRESETDONE 都变为 1
  5. 置位 QPLLRESET 和 QPLLPD 信号禁用 QPLL 以节约功耗
  6. 可以继续其他操作
TX 端时钟结构

在这里插入图片描述

  • TXOUTCLKPCS 和 TXOUTCLKFABRIC 为多余输出,使用 TXOUTCLK 驱动逻辑

  • 图中 ÷2 or ÷4 由GT_CHANNEL 的 TX_INT_DATAWIDTH 参数控制

    • ÷2:TX_INT_DATAWIDTH = 0(2-byte internal datapath)
    • ÷4:TX_INT_DATAWIDTH = 1(4-byte internal datapath)
  • 图中 ÷4 or ÷5 由GT_CHANNEL 的 TX_DATA_WIDTH 参数控制

    • ÷4:TX_DATA_WIDTH = 16/32/64
    • ÷5:TX_DATA_WIDTH = 20/40/80
  • 串行数据时钟分频系数 D

在这里插入图片描述

  • 并行数据时钟分频系数及时钟选择
    • TXOUTCLKSEL = 3’b001: The TXOUTCLKPCS path is not recommended for use because it incurs extra delay from the PCS block(不建议使用,经过 PCS 增加了延迟).
    • TXOUTCLKSEL = 3’b010: TXOUTCLKPMA is the divided down PLL clock after the TX phase interpolator and is used by the TX PCS block. This clock is interrupted when the PLL is reset by one of the related reset signals(当 PLL 复位时该时钟会中断).
    • TXOUTCLKSEL = 3’b011 or 3’b100: TXPLLREFCLK_DIV1 or TXPLLREFCLK_DIV2 is the input reference clock to the CPLL or QPLL, depending on the TXSYSCLKSEL[1] setting. TXPLLREFCLK is the recommended clock for general usage and is required for the TX buffer bypass mode(建议使用该时钟).
RX 端时钟结构

在这里插入图片描述

  • RXOUTCLKPCS 和 RXOUTCLKFABRIC 为多余输出,使用 RXOUTCLK 驱动逻辑

  • 图中 ÷4 or ÷5 由GT_CHANNEL 的 RX_DATA_WIDTH 参数控制

    • ÷4:RX_DATA_WIDTH = 16/32/64
    • ÷5:RX_DATA_WIDTH = 20/40/80
  • 图中 ÷2 or ÷4 由GT_CHANNEL 的 RX_INT_DATAWIDTH 参数控制

    • ÷2:RX_INT_DATAWIDTH = 0(2-byte internal datapath)
    • ÷4:RX_INT_DATAWIDTH = 1(4-byte internal datapath)
  • 串行数据时钟分频系数 D
    在这里插入图片描述

  • 并行数据时钟分频系数及时钟选择

    • RXOUTCLKSEL = 3’b001: RXOUTCLKPCS path is not recommended to be used as it incurs extra delay from the PCS block.

    • RXOUTCLKSEL = 3’b010: RXOUTCLKPMA is the recovered clock that can be brought out to the FPGA logic. The recovered clock is used by protocols that do not have a clock compensation mechanism and require to use a clock synchronous to the data (the recovered clock), to clock the downstream fabric logic. It is also used by the RX PCS block. This clock is interrupted when the PLL or CDR is reset by one of the related reset signals.

    • RXOUTCLKSEL = 3’b011 or 3’b100: RXPLLREFCLK_DIV1 or RXPLLREFCLK_DIV2 is the input reference clock to the CPLL or QPLL depending on the RXSYSCLKSEL[1] setting. For usages that do not require outputting a recovered clock to the fabric, RXPLLREFCLK_DIV1 or RXPLLREFCLK_DIV2 can be used as the system clock. However, TXOUTCLK is usually used as system clock.

复位逻辑

CPLL 复位

在这里插入图片描述

QPLL 复位

在这里插入图片描述

复位模式

  • Sequential mode:要完整进行整个状态机处理流程
  • Single mode:只执行部分逻辑复位
    在这里插入图片描述

注:

  • 上电初始化复位必须使用 Sequential mode
  • TX 只支持 Sequential mode

TX 初始化及复位

复位状态机

在这里插入图片描述

上电初始化
  1. FPGA 加载完成后等待至少 500 ns(只有 GTX 才需要)
  2. 置位所有复位信号:QPLLRESET/CPLLRESET、MMCM_RESET、GTTXRESET、RESET_PHALIGNMENT
  3. 等待一段时间后释放 PLL 复位,并等待 PLL locked 后释放 GTTXRESET 复位
  4. 等待一段时间后释放 MMCM 复位,并等待 MMCM locked
  5. 等待一段时间后 TXUSERRDY 信号置位,并等待 TXRESETDONE 置位
  6. 上电初始化完成(TX_FSM_RESET_DONE 置位)

在这里插入图片描述

复位整个 TX 部分逻辑

在这里插入图片描述

只复位 PMA

在这里插入图片描述

只复位 PCS

在这里插入图片描述

复位影响域

在这里插入图片描述

不同情况下复位建议

在这里插入图片描述

RX 初始化及复位

复位状态机

在这里插入图片描述

上电初始化
  1. FPGA 加载完成后等待至少 500 ns(只有 GTX 才需要)
  2. 置位所有复位信号:QPLLRESET/CPLLRESET、MMCM_RESET、GTRXRESET、RESET_PHALIGNMENT
  3. 等待一段时间后释放 PLL 复位,并等待 PLL locked 后释放 GTRXRESET 复位
  4. 等待一段时间后释放 MMCM 复位,并等待 MMCM locked
  5. 等待一段时间后 RXUSERRDY 信号置位,并等待 RXRESETDONE 置位
  6. 释放 RESET_PHALIGNMENT 并等待数据对齐(PHALIGNMENT_DONE 置位)
  7. 上电初始化完成(RX_FSM_RESET_DONE 置位)

复位影响域

在这里插入图片描述

在这里插入图片描述

不同情况下复位建议

在这里插入图片描述

发送端结构

结构框图

在这里插入图片描述

1. FPGA TX Interface

GTX/GTH
参数及端口

在这里插入图片描述

数据位宽
  • 数据位宽可以设置为 16/20/32/40/64/80 bits,具体取决于 TX8B10BEN、TX_DATA_WIDTH、TX_INT_DATAWIDTH 参数
    在这里插入图片描述

  • 当 TX8B10BEN = 0 时,数据结构如下所示,使用 TXCHARDISPMODE、TXCHARDISPVAL 信号进行拼接

在这里插入图片描述

时钟
时钟频率

发送接口包含两个并行数据时钟 TXUSRCLK 和 TXUSRCLK2

  • TXUSRCLK 用于驱动 PCS 内部逻辑,具体频率取决于线速率和内部数据位宽,具体公式如下所示:

在这里插入图片描述

  • TXUSRCLK2 发送端用户时钟域,与 TXUSRCLK 关系如下所示

在这里插入图片描述

注:TXUSRCLK 和 TXUSRCLK2 必须上升沿对齐,也就是说必须由 BUFG/BUFH/BUFR 来驱动以保证低时钟歪斜

时钟驱动源 TXOUTCLK

TXUSRCLK 和 TXUSRCLK2 由 TXOUTCLK 驱动产生,TXOUTCLK 驱动源如下所示:

在这里插入图片描述

时钟拓扑
  • TXOUTCLK Drives TXUSRCLK2 (2-Byte or 4-Byte Mode)

在这里插入图片描述

  • TXOUTCLK Drives TXUSRCLK2 (4-Byte or 8-Byte Mode)

在这里插入图片描述

GTP
参数及端口

在这里插入图片描述

数据位宽
  • 数据位宽可以设置为 16/20/32/40 bits,具体取决于 TX8B10BEN、TX_DATA_WIDTH 参数

在这里插入图片描述

  • 当 TX8B10BEN = 0 时,数据结构如下所示,使用 TXCHARDISPMODE、TXCHARDISPVAL 信号进行拼接

在这里插入图片描述

时钟
时钟频率

发送接口包含两个并行数据时钟 TXUSRCLK 和 TXUSRCLK2

  • TXUSRCLK 用于驱动 PCS 内部逻辑,具体频率取决于线速率和内部数据位宽,具体公式如下所示:

在这里插入图片描述

  • TXUSRCLK2 发送端用户时钟域,与 TXUSRCLK 关系如下所示

在这里插入图片描述

注:TXUSRCLK 和 TXUSRCLK2 必须上升沿对齐,也就是说必须由 BUFG/BUFH/BUFR 来驱动以保证低时钟歪斜

时钟驱动源 TXOUTCLK

在这里插入图片描述

时钟拓扑
  • TXOUTCLK Drives TXUSRCLK2 (2-Byte Mode)

在这里插入图片描述

  • TXOUTCLK Drives TXUSRCLK2 (4-Byte Mode)

在这里插入图片描述

2. 8B/10B Encode

  • 对待发送的数据进行8B/10B编码,直流均衡,保证已传输的数据中 1 和 0 的个数长期相等

  • 当 8B/10B 编码使能,则 TX_DATA_WIDTH 只能为 20/40/80 bit

在这里插入图片描述

  • 发送顺序:低 bit 优先发送

在这里插入图片描述

  • 极性控制

在这里插入图片描述

3. TX Gearbox

  • 支持 64B/66B 和 64B/67B 编码,但是加扰(Scrambling)部分需要自己实现
  • GTX 提供内部计数器,也可以外部自己实现计数器功能
  • GTH 只能外部自己实现计数器功能

4. TX PIPE Control

  • 全称为 Physical Interface for PCI Express,PCIe 物理层接口。如果使能 PCIE 接口,则该通道是 PCIE 的数据通道,否则将不会被使用

5. Pattern Generator

  • 支持一下几种测试模式:

在这里插入图片描述

  • 其中,伪随机序列(Pseudo-random bit sequences,PRBS)是一种貌似随机,实际上是有规律的周期性二进制序列,用于高速串行通信通道传输的误码率测试。举例:PRBS-7 的输出数据每 2^7-1 个时钟循环一次

在这里插入图片描述

  • 相关参数及接口

在这里插入图片描述

  • 两种测试模型,区别于 RXPRBS_ERR_LOOPBACK 参数值

    • Link Test Mode
      在这里插入图片描述

    • Jitter Tolerance Test Mode

在这里插入图片描述

6. TX Phase Interpolator Controller(GTH)

  • TX 相位插值器控制器模块,支持动态控制 PMA 中的 TX 相位插值器(16. TX Phase Interpolator)以实现对 TX PMA 中的数据进行微调

7. Phase Adjust FIFO

  • 在发送端的 PCS 子层里面有两个并行时钟域,分别是 PMA 相连的并行时钟(XCLK)和 TXUSRCLK 时钟。要传输数据,XCLK速率必须与TXUSRCLK速率匹配,并且必须解决两个域之间的相位差。

在这里插入图片描述

  • GTX的发送数据通道包括一个 FIFO 缓冲器和一个 TX 相位对准电路,用于解决 XCLK 和 TXUSRCLK 域之间的相位差。若不考虑 FIFO 的延迟,推荐直接使用 FIFO 进行相位校准;若对延时比较敏感,则可以使用相位对齐电路,只不过需要用户自己编写这部分控制代码。

8. SATA OOB

  • SATA(Serial Advanced Technology Attachment);OOB (Out of Band)

  • SATA 是硬盘接口,建立通信主要是通过检测 OOB 实现的,并且向上层传输连接情况,因此只有在使用 SATA 协议时,才会使用该模块,否则不用考虑

9. PCIe Beacon

PICE 唤醒功能,只有在使用 PCIE 协议时才会用到,否则不考虑。

10. Polarity

  • 极性控制,主要是针对 PCB 设计时将差分对设计反了,模块内部可以将极性反转,从而解决PCB设计问题。
  • 通过 TXPOLARITY 信号置 1 进行极性翻转

11. PISO

  • 并串转换模块(parallel input Serial output),将 PCS 发送的并行数据转换为串行数据。

12. TX Pre/Post Emp + TX Driver

GTX/GTH

在这里插入图片描述

  • 具有差分电压控制、预/后加重、校准终端电阻功能

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

GTP

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

13. TX OOB and PCIe

  • 使用 PCIE、SATA 协议时才会使用的功能,否则不会用到。

15. TX Clock Dividers

  • 详细介绍见 “TX时钟结构” 章节
  • GTX/GTH

在这里插入图片描述

  • GTP
    在这里插入图片描述

接收端结构

结构框图

  • GTP 接收端相比 GTX/GTH 少了 DFE 部分

1. 模拟前端

  • RX_CM_SEL 参数可控制 RX 端接模式(AVTT、GND、Floating、Programmable)
  • 不同端接模式下适用的协议以及参数及端口设置详见 ug476 第 4 章节

2. RX OOB

  • 与 SATA、PCIe 这些协议有关,如果不使用这些协议,可以忽略

3. DFE(GTX/GTH)

  • 根据功率和性能之间的系统级权衡,GTX 接收通道有两种类型的自适应滤波器可以使用(LPM 和 DFE)。
    • 如果传输过程中损耗比较小,传输距离近,可以使用低功耗模式(LPM)的节能自适应滤波器
    • 如果传输过程中损耗比较大,传输距离远,此时应该使用 DFE 自适应滤波器
  • 通过 RXLPMEN 信号进行滤波器类型选择,0 = DFE,1 = LPM
  • 运行过程中可以动态切换类型,切换后需置位 RXPMARESET 复位接收端的 PMA 部分

4. RX Clock Divider

  • 详细介绍见 “RX时钟结构” 章节

    • GTX/GTH

    • GTP

  • PLL 时钟输出时钟进入 PMA 后,需先经过 CDR 调整时钟相位后才进行分频操作

  • 时钟数据恢复(CDR)技术是从接收的串行数据中恢复时钟和数据的相位关系

5. SIPO

  • 串并转换模块,将接收的串行数据转换为并行数据,然后输出到PCS侧进行处理

6. Polarity

  • 极性控制,主要是针对 PCB 设计时将差分对设计反了,模块内部可以将极性反转,从而解决 PCB 设计问题。
  • 通过 RXPOLARITY 信号置 1 进行极性翻转

7. PRBS Checker

8. Comma Detect and Align

  • Use comma detection:使能内部 K 码检测功能

  • Decode valid comma only:使能后检测器只会检测 K28.5 和 K28.1 的 K 码

  • Combine plus/minus commas:使能后会同时检测双字节对齐,对齐 plus comma 后下一个字为 minus comma 才对齐成功

  • Comma Value:支持自定义(不勾选 Decode valid comma only)或者 K28.5 和 K28.1

  • Plus comma + Minus Comma:由于 8B10B编码的极性问题,所以有两值

  • Comma Mask:掩码,只检测为 1 对应的 bit

  • Align to:任意字节、2字节、4字节边界对齐,对应下表中的 ALIGN_COMMA_WORD 参数(下图阴影部分表示可能出现 K 码的位置)
    20240710200400895.png" alt="image-20240710200400895" style="zoom:40%;" />

以下信号都属于 RXUSRCLK2 时钟域:

  • ENPCOMMAALIGN/ENMCOMMAALIGN:使能正/负极性 K 码对齐功能
  • RXSLIDE:手动对齐时使用,置位一个周期整体数据移动 1 位,两次 RXSLIDE 信号置位至少间隔 32 个时钟周期
  • RXBYTEISALIGN:表示当前已完成对齐操作,高有效
  • TXBYTEREALIGN:表示正在重新进行对齐操作,高有效
  • RXCOMMADET:表示检测到 K 码,高有效,会持续多个周期

9. 8B/10B Decoder

  • 当 8B/10B 编码使能,则 RX_DATA_WIDTH 只能为 20/40/80 bit

  • 接收顺序:优先接收到置于低 bit

  • RXDISPERR:每一 bit 置位表示对应字节极性错误

  • RXNOTINTABLE:每一 bit 置位表示对应字节不存在于 8B10B 表内

10. RX PIPE Control

  • 这个与发送通道的 PIPE Control应该功能是一样的,与PCIE协议有关,不使用该协议时可以忽略

11. RX Status Control + RX Elastic Buffer + 时钟校正功能

RX Status Control 对弹性 buffer 的一些状态进行检测,包括溢出等等,然后去做一个时钟纠正的处理。

RX 弹性 buffer 用于同步两个不同的时钟域 RXUSRCLK 和 XCLK 的数据,XCLK 是从 CDR 恢复的时钟。即使 RXUSRCLK 和 XCLK 以相同的时钟频率运行,频率差异也始终很小,日积月累,也会导致读写数据的速率不一致,可能造成数据溢出。

这是因为 RXUSRCLK 和 XCLK 差异决定的,并不能消除,因此提供了一种时钟纠正的方式来防止数据出现错误。为了允许校正,发送数据时需要在有效数据中周期性的插入一个或多个特殊字符,GTX 接收通道可以根据需要在弹性 buffer 中删除或者复制这些字符。

当弹性 buffer 快要装满数据时,可以删除 buffer 中的一些特殊字符使得 buffer 不被溢出。当弹性 buffer 快要被读空时,可以复制一些特殊字符存入 buffer,防止弹性 buffer 被读空,最终使得弹性 buffer 始终保持在半满的状态。

由于 XCLK 和 RXSUCLK 频率只有微小差异,所以可以通过上述方式进行纠正,防止 buffer 上溢或者下溢。

  • IP 设置
    • ① 启用时钟校正功能
    • ② 选择每次插入特殊字符个数
    • ③ 设置需要插入特殊字符的值
    • ④ 确定插入字符是否为 K 码

13. RX Gearbox

  • 支持 64B/66B 和 64B/67B 解码,但是解扰(Descrambling)部分需要自己实现
  • GTX 提供内部计数器,也可以外部自己实现计数器功能
  • GTH 只能外部自己实现计数器功能

14. FPGA RX Interface

GTX/GTH
参数及端口

数据位宽
  • 数据位宽可以设置为 16/20/32/40/64/80 bits,具体取决于 RX8B10BEN、RX_DATA_WIDTH、RX_INT_DATAWIDTH 参数

  • 当 RX8B10BEN = 0 时,数据结构如下所示,使用 RXDISPERR、RXCHARISK 信号进行拼接

时钟
时钟频率

接收接口包含两个并行数据时钟 RXUSRCLK 和 RXUSRCLK2

  • RXUSRCLK 用于驱动 PCS 内部逻辑,具体频率取决于线速率和内部数据位宽,具体公式如下所示:

在这里插入图片描述

  • RXUSRCLK2 接收端用户时钟域,与 RXUSRCLK 关系如下所示

在这里插入图片描述

注:RXUSRCLK 和 RXUSRCLK2 必须上升沿对齐,也就是说必须由 BUFG/BUFH/BUFR 来驱动以保证低时钟歪斜

时钟驱动源 RXOUTCLK

RXUSRCLK 和 RXUSRCLK2 由 TXOUTCLK 或者 RXOUTCLK 驱动产生

  • 当收发端的外部参考时钟由同一个晶振产生,则可以由 TXOUTCLK 或者 RXOUTCLK 驱动产生
  • 当收发端的外部参考时钟由不一个晶振产生,则只能由 RXOUTCLK 驱动产生
GTP
参数及端口

在这里插入图片描述

数据位宽

在这里插入图片描述

在这里插入图片描述

时钟

在这里插入图片描述

15. 通道绑定功能

XAUI 和 PCI Express 等协议结合了多个串行收发器连接,以创建一个更高吞吐量的通道。每个串行收发器连接称为一个通道,除非每个串行连接的长度完全相同,否则通道之间的偏斜会导致数据同时传输,但到达时间不同。

RX buffer可以用作可变延迟模块,信道绑定消除了 GTX 收发器各个通道之间的偏斜。用于绑定信道的发送通道在发送数据都同时发送信道绑定字符(或字符序列)。

当接收到序列时,GTX 接收通道可以确定每个通道之间的偏斜,并调整 RX buffer 的延迟,以便在 RX fabric 用户界面上呈现无偏斜的数据。

后续在使用 PCIE 这种多通道协议时,在进行详细了解,本质上发送端向每个通道同时发送一组数据,接收端检测这组数据,确定每条线路延迟,进而调整弹性 buffer 输出数据的延迟,来达到多个通道输出给用户的数据对齐的目的。

其他功能

Power Down

在这里插入图片描述

Loopback

在这里插入图片描述

动态配置接口

在这里插入图片描述

应用

PCI Express

后续学 PCIe 整理,可以参考 ug476 第 6 章节

XAUI

后续学 XAUI 整理,可以参考 ug476 第 6 章节

参考资料

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FPGA的花路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值