欢迎光临
我们一直在努力

FPGA SERDES 通用基础(十五)Xilinx GTP、GTX、GTH 与 GTY 架构演进

Xilinx 不同系列的 GT 收发器延续了 Quad、Channel 和 PCS/PMA 的基本结构,但 PLL 的归属与数量、内部并行宽度、PCS 数据路径和接收均衡能力并不相同。本文以 GTX 为基础,对照 GTP、GTH 和 GTY 的架构图,说明这些差异如何影响时钟资源共享、并行处理频率、码块传输方式及信道适应能力。

本文以六张手册架构图展开比较,先看 Quad 中的时钟资源,再看 Channel 内的收发通路。GTX 与 GTH 的共同结构合并介绍,接收均衡差异则单独比较。

比较对象器件范围单 Lane 线路速率范围主要手册
GTP 7 系列 0.5~6.6 Gb/s UG482 — 7 Series FPGAs GTP Transceivers User Guide
GTX 7 系列 0.5~12.5 Gb/s UG476 — 7 Series FPGAs GTX/GTH Transceivers User Guide
GTH 7 系列 0.5~13.1 Gb/s UG476 — 7 Series FPGAs GTX/GTH Transceivers User Guide
GTY UltraScale 0.5~30.5 Gb/s UG578 — UltraScale Architecture GTY Transceivers User Guide
GTY UltraScale+ 0.5~32.75 Gb/s UG578 — UltraScale Architecture GTY Transceivers User Guide

表中为各类收发器的总体支持范围,不代表每个器件、速度等级和工作电压组合都能达到最高速率,具体上限需要查对应器件数据手册。线路速率指串行引脚上的传输速率,未扣除编码和协议开销,也不是 Quad 内四个 Channel 的合计带宽。

7 系列 GTX 与 GTH 的最高线路速率较接近,但接收均衡能力仍有差异;GTY 则将最高线路速率提高到 30 Gb/s 以上。后文比较的 PLL 资源、内部并行宽度和均衡结构,说明了这些收发器在不同速率需求下的架构差异。

GTP、GTX、GTH 和 GTY 并非依次替代的四代产品。7 系列同时存在 GTP、GTX 和 GTH;UltraScale / UltraScale+ 中也保留了 GTH。这里比较的是代表性架构,不将不同系列中同名的 GT 混为一谈。

1. Quad 架构与 PLL 资源

这几类 GT 都以四个 Channel 组成一个 Quad。每个 Channel 包含一组 TX 和 RX,Common 则容纳 Quad 内的公共 PLL。三张 Quad 图的主要区别,在于是否具有 Channel 本地 PLL,以及 Common 中公共 PLL 的类型与数量。

1.1 GTP:两套 PLL 由 Quad 共享

7系列GTP Quad架构:Common内PLL0与PLL1

图中下方的参考时钟经过 REFCLK Distribution,送入 GTPE2_COMMON 内的 PLL0 和 PLL1,再通过上方的选择网络分配给四个 GTPE2_CHANNEL。TX 与 RX 可以分别选择所用的 PLL,Channel 内没有独立 CPLL。

PLL0 和 PLL1 均采用环形压控振荡器结构,由 Quad 内的 Channel 共享。多条 Lane 使用同一 PLL 时,线路速率需要与该 PLL 的工作频率及各自输出分频相容;复位或重新配置这套 PLL,也会影响依赖它的收发通路。

因此,GTP 的时钟资源规划从 Common 开始。四个 Channel 如何分组、哪些 TX/RX 共用 PLL,需要与线路速率一并确定。

1.2 GTX/GTH:本地 CPLL 与公共 QPLL 并存

7系列GTX Quad架构:Channel CPLL与Common QPLL

GTX 图中,每个 GTXE2_CHANNEL 内都有一套 CPLL,GTXE2_COMMON 中另有一套 QPLL。参考时钟选择网络可以将时钟送往各 CPLL 和 QPLL,TX/RX 再选择所需的 PLL 输出。7 系列 GTH 采用相同的本地 CPLL 与公共 QPLL 资源组织。

CPLL 采用环形压控振荡器,QPLL 采用 LC 谐振式压控振荡器。对于资源使用而言,重要的变化是 Channel 获得了自己的 PLL:使用各自 CPLL 的 Lane,可以分别配置和复位 PLL;需要共享高速时钟的 Lane,则可以使用 Common 中的 QPLL。

这使 GTX/GTH 能在 Channel 独立性与 Quad 共享之间选择。共用 QPLL 也不要求各 Lane 的线路速率完全相同,只要输出分频关系允许即可。具体选源仍取决于目标速率和 PLL 工作范围,不能仅凭“独立”或“共享”决定。

1.3 GTY:Common 中增加第二套 QPLL

GTY Quad架构:Channel CPLL与Common双QPLL

GTY 保留了每个 Channel 一套 CPLL 的结构,Common 中则具有 QPLL0 和 QPLL1 两套 LC PLL。图中两套 QPLL 的输出都进入 Channel 时钟选择网络,四个 Channel 可以按配置使用本地 CPLL 或公共 QPLL。

与 7 系列 GTX/GTH 相比,这里增加的是第二套公共高速时钟资源。两组 Lane 可以分别使用 QPLL0 和 QPLL1,不必全部受同一套 QPLL 配置约束。两套 QPLL 仍有各自的工作范围,多速率组合需要满足对应的 PLL 和分频条件。

架构每个 Channel 内的 PLL每个 Common 内的 PLL
7 系列 GTP PLL0、PLL1,两套环形 PLL
7 系列 GTX/GTH 一套 CPLL 一套 LC QPLL
UltraScale / UltraScale+ GTY 一套 CPLL QPLL0、QPLL1,两套 LC QPLL

PLL 的数量和归属决定了哪些通道共享时钟配置,也决定了 PLL 复位的影响范围。这是三类 Quad 最直接的结构差异。

2. Channel 架构与收发通路

Channel 内部仍分为 PCS 和 PMA。PCS 负责并行数据处理,PMA 负责高速串并转换、时钟恢复以及收发模拟电路。三张 Channel 图都可以按相同的数据方向阅读:

TX:FPGA Interface → TX PCS → TX PMA → TXP/TXN
RX:RXP/RXN → RX PMA → RX PCS → FPGA Interface

2.1 GTP:完整的字符与码块处理通路

GTPE2_CHANNEL收发数据通路

上半部分是 TX,数据由右向左传输。FPGA TX Interface 接入用户并行数据,PCS 中具有 8B/10B Encoder、TX Gearbox 和 Phase Adjust FIFO。编码路径与 Gearbox 路径通过选择器接入后续通路;PMA 中的 PISO 完成并串转换,TX Pre/Post Emphasis 与 TX Driver 对发送波形进行整形并驱动差分输出。Pattern Generator 是可替代用户数据的测试源,并非用户数据必须经过的处理级。

下半部分是 RX,数据由左向右传输。接收信号经过模拟前端和串并转换后进入 PCS;Comma Detect and Align、8B/10B Decoder、RX Elastic Buffer 和 RX Gearbox 分别承担字符对齐、解码、缓冲和码块重组。图中的选择器与旁路线表示这些模块按模式组合使用,而不是每种数据都要依次通过全部模块。

GTP 已经具备前面文章讨论的大部分 PCS 功能。与 GTX 相比,它保留了相近的字符和码块处理通路,主要差别在于 PLL 资源组织、内部并行宽度和接收均衡能力。

2.2 GTX/GTH:保留 PCS 结构,扩展内部通路与均衡

GTXE2_CHANNEL收发数据通路

GTX 的 TX、RX 数据方向与 GTP 相同,8B/10B、Comma、Gearbox 和 Buffer 的相对位置也基本一致。图中从 Channel Clocking Architecture 进入的时钟,与上一节的 CPLL/QPLL 选择网络相对应;RX 前端则增加了明确标出的 DFE 模块。

除图中可见的均衡差异外,GTX/GTH 的内部数据通路可以选择 2-Byte 或 4-Byte。相同线路速率下,采用更宽的通路可以让 PCS 每周期处理更多数据,降低并行处理所需的时钟频率。

7 系列 GTH 与 GTX 具有相近的 PCS 组织,但接收均衡结构不同,部分专用功能也有差异。这里用 GTX 图比较共同的数据层级,后面再单独比较 GTX 与 GTH 的 DFE 能力。

2.3 GTY:增加异步 Gearbox 与协议专用支路

GTYE3及GTYE4_CHANNEL收发数据通路

GTY 的 PMA 仍包括 PISO/SIPO、TX Driver、接收均衡和相关时钟电路,PCS 也保留了 8B/10B、Comma、Buffer 与测试功能。与前两张图相比,变化更集中在 PCS 的可选支路。

TX 图中同时出现 TX Sync Gearbox、TX Async Gearbox 和 128B/130B Encoder;RX 图中对应增加 RX Async Gearbox,以及包含 128B/130B Decoder、Block Detect and Align、PCIe RX Buffer 的支路。它们通过不同路径连接到收发接口,共享后面的串行发送电路或前面的接收电路。

因此,GTY 图中更多的方框并不表示每条链路都增加了同样多的串联处理级。不同编码和接口模式选择不同支路,图中体现的是硬核可提供的数据处理组合。下面重点比较内部宽度和 PCS 支路带来的变化。

3. 内部并行宽度与处理时钟

GTP、GTX/GTH 和 GTY 的串行侧都要按线路速率收发数据,内部 PCS 则用并行方式处理。内部通路越宽,每个周期能够处理的数据越多;在相同编码和处理模式下,可以用更低的并行时钟完成同样的数据吞吐量。

架构Internal Datapath 支持宽度
7 系列 GTP 2-Byte
7 系列 GTX/GTH 2-Byte、4-Byte
UltraScale / UltraScale+ GTY 2-Byte、4-Byte、8-Byte

这里的 2-Byte、4-Byte 和 8-Byte 是手册中的通路组织模式,不能在所有模式下直接乘以 8 得到实际位数。启用 8B/10B 时,一个 8 bit 用户字符会转换为 10 bit 编码字符,例如 2-Byte 通路对应 20 bit 编码数据。实际内部位宽应结合所选数据模式查表确定。

Internal Datapath 与 FPGA Interface 也不必同宽。以前文讨论过的未编码数据接口为例,64 bit FPGA Interface 可以配合 32 bit 内部通路:用户逻辑每个 USRCLK2 周期提供 64 bit,内部用两个 USRCLK 周期处理完,此时 USRCLK 的频率是 USRCLK2 的两倍。这里描述的是普通并行宽度转换,未启用异步 Gearbox。

GTY 将内部通路扩展到 8-Byte 后,也支持与之配合的更宽 FPGA 接口。其价值是降低高速链路对并行处理时钟的要求,代价则是 FPGA 侧总线更宽、每周期需要处理的数据更多。内部宽度和接口宽度需要配套选择,不能只将接口参数调大而保持其余时钟关系不变。

4. PCS 的同步、异步与协议支路

前面的 Channel 图显示,8B/10B、字符对齐和 Buffer 在各类 GT 中持续保留。它们的基本职责相近,端口名称和配置细节可能不同。相比逐项比较这些接口,GTY 中新增的异步 Gearbox 和协议专用支路,更能说明 PCS 架构的变化。

4.1 同步 Gearbox:用有效节拍完成码块重组

GTP、GTX/GTH 和 GTY 都具有同步 Gearbox。它将 Header 与 Payload 组成的码块,映射到内部固定宽度的数据通路,完成跨周期的数据拼接和切分。

以 64B/66B 为例,每 64 bit Payload 需要额外传输 2 bit Header。如果 Payload 持续占满固定宽度内部通路的所有节拍,就没有容量传输 Header。同步 Gearbox 因此通过规定的有效节拍平衡数据量:TX 在指定位置暂停接收新数据,为 Header 留出传输容量;RX 则通过数据与 Header 的有效指示,告诉用户逻辑何时采纳输出。

前文已经介绍了相应的 Sequence、Pause 和 Slip。这些机制在跨系列比较中可以合并理解为一个共同特点:码块重组所需的非连续有效节拍,仍体现在 FPGA 接口上。

4.2 异步 Gearbox:跨时钟域保持连续的数据接口

GTY 的 TX Async Gearbox 为 64B/66B 提供另一条实现路径。用户逻辑不必按同步 Gearbox 的 Pause 序号周期性停送数据,可以在每个 TXUSRCLK2 周期连续提供 Payload。Header 仍按照接口宽度规定的节奏输入。

连续输入并没有消除编码开销。以 64 bit Payload 为单位,每输入一组数据,线路侧就需要发送包含 Header 的 66 bit。异步 Gearbox 通过两侧不同的时钟频率承担这一速率关系,在内部完成缓存与重新切分。因此,用户时钟需要按 Payload 的吞吐量设置,而串行侧仍按包含 Header 的线路速率运行。

从 GTY 图中可以看到,TX Async Gearbox 与 Phase Adjust FIFO 所在路径并列;RX Async Gearbox 也有独立于普通 RX Elastic Buffer 路径的连接。它们承担码块处理与跨时钟域转换,不能理解成在原有 Buffer 后面简单追加一级。对于这里讨论的 GTY TX 异步 Gearbox,UG578 规定不能同时使用 TX Buffer Bypass。

异步 Gearbox 简化了 FPGA 侧连续数据的供给,但两侧时钟仍需满足线路速率和编码开销的关系,不能用它吸收任意的长期频差。扰码等处理也仍需由相应的外部逻辑完成,Gearbox 本身不等于完整协议 PCS。

4.3 协议专用支路:128B/130B 与 PCIe Buffer

GTY 图中的 128B/130B 编解码、Block Detect and Align 和 PCIe RX Buffer,属于手册介绍的 PCI Express Gen3 相关路径。这类模块将特定协议需要的部分物理层处理放入 GT 硬核,与通用的 8B/10B 和 Gearbox 路径分别组织。

这里可以看出 PCS 的两类功能:一类提供字符编码、码块重组、缓冲等通用处理;另一类针对特定协议增加专用数据路径。协议专用路径与完整的链路训练、协议状态机仍有区别,不能仅根据 Channel 图中的编码模块推导出完整协议支持。

PCS 处理结构7 系列 GTP/GTX/GTHUltraScale / UltraScale+ GTY
8B/10B 与字符对齐 保留字符处理通路 保留字符处理通路
同步 Gearbox 通过规定的有效节拍完成码块重组 保留同步 Gearbox 路径
异步 Gearbox 本文所比较架构中无此独立路径 增加跨时钟域的异步 Gearbox 路径
PCIe 128B/130B 相关处理 无对应的 128B/130B 硬核支路 增加编解码与相关块对齐、缓冲支路

5. RX 均衡:CTLE 与不同 DFE 结构

PCS 决定接收数据如何组织,RX 均衡则影响高速波形能否被可靠采样。Channel 总图通常只用 RX EQ 和 DFE 等少量方框表示模拟前端,内部结构的差别需要结合均衡章节理解。

GTP 使用自适应 CTLE,即连续时间线性均衡器,通过频率响应整形补偿信道对高频成分的衰减。GTX/GTH 和 GTY 则提供 LPM 与 DFE 两种均衡模式。LPM 的全称是 Low-Power Mode(低功耗模式),采用线性均衡;CTLE 描述的是电路类型,两者不是同一层级的名称。

架构线性均衡或对应工作模式DFE 结构
7 系列 GTP 自适应 CTLE 无 DFE
7 系列 GTX LPM 5 个 fixed tap
7 系列 GTH LPM 7 个 fixed tap 与 4 个 sliding tap
UltraScale / UltraScale+ GTY LPM 15-tap DFE

DFE 利用已经完成的历史判决,抵消当前采样中来自先前符号的干扰。fixed tap 的“固定”指符号延迟位置固定,并非系数不变。与 GTX 相比,GTH 增加了 fixed tap 的数量,并提供 sliding tap,使部分反馈能够针对更远的延迟位置。这里改变的不只是 tap 数量,还包括反馈能够覆盖的位置。

WP419《Equalization for High-Speed Serial Interfaces in Xilinx 7 Series FPGA Transceivers》对这一差异给出了具体解释:GTH 的 7 个 fixed tap 可用于补偿高频衰减及较近的反射,4 个 sliding tap 则用于处理较远的反射,覆盖范围可延伸至 main cursor 之后第 63 个 post-cursor 位置。第 63 个位置表示反射相对主响应的延迟范围,不表示内部有 63 个同时工作的 DFE tap。

GTY 采用 15-tap DFE,并通过自动 adaptation 调整均衡参数以匹配信道。tap 数量不能直接换算为可传输距离或可补偿损耗,实际效果还取决于信道的衰减与反射分布,以及输入数据能否支持可靠的 adaptation。对于线性均衡已经满足要求的链路,LPM 仍然是可用的选择。

6. 总结

不同 GT 延续了 Quad、Channel 和 PCS/PMA 的基本组织。主要架构差异体现在公共与本地 PLL 的分配、内部并行通路宽度、PCS 可选数据路径,以及 RX 均衡的反馈结构。它们分别影响多通道时钟共享、并行处理频率、码块接口节奏和接收信道适应能力。

对照架构图时,可以将已有的 GTX 知识用于理解相同模块,再重点检查新增或变化的连接关系。确定了所用 PLL、并行宽度、PCS 路径和均衡模式后,再进入对应手册查端口与属性,能够把架构理解与具体配置衔接起来。

赞(0)
未经允许不得转载:171主机测评 » FPGA SERDES 通用基础(十五)Xilinx GTP、GTX、GTH 与 GTY 架构演进
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址