1. 概述
高速串行通信的核心目标,是解决通信系统中“并行数据位宽大、走线多”与“高速传输希望减少布线数量”之间的矛盾。
传统并行接口可能需要:
D0 D1 D2 ... D31 CLK Control如果采用高速串行通信,则可以把多位并行数据转换为一条或少量几条高速差分串行链路:
Parallel Data ↓ Serializer ↓ TXP / TXN ↓ PCB / Cable / Backplane ↓ RXP / RXN ↓ Deserializer ↓ Parallel Data这种技术称为:
SerDes(Serializer / Deserializer,串行器 / 解串器)
AMD / Xilinx FPGA 中的GTY,本质上就是集成在 FPGA 内部的一组高性能高速 SerDes 收发器硬核资源。
2. SerDes 是什么
SerDes 的英文全称:
Serializer / Deserializer中文通常称为:
串行器 / 解串器 串并转换器 高速串行收发器发送方向:
Parallel Data ↓ Serializer ↓ Serial Data接收方向:
Serial Data ↓ Deserializer ↓ Parallel Data例如 FPGA 内部:
32 bit × 250 MHz = 8 Gbit/s理论上可以通过串行器转换成:
1 lane × 8 Gbit/s这样原本几十根并行数据线,就可以减少为一对高速差分线:
TX+ TX-3. 为什么需要串并转换
并行总线的问题包括:
- PCB 走线数量多
- 布线空间大
- 长度匹配困难
- 时钟偏斜难控制
- 串扰增加
- 连接器 Pin 数量多
- 随着速率提高,并行总线越来越难扩展
高速串行链路通过:
低速宽并行总线 ↓ SerDes ↓ 高速窄串行链路减少布线数量,同时提升总体带宽。
例如:
64 bit @ 400 MHz理论数据率:
64 × 400 MHz = 25.6 GbpsSerDes 可以将其转换成约 25.6 Gbps 的高速串行信号。
因此 FPGA 内部逻辑不需要工作在 25 GHz,而只需要运行在几百 MHz。
4. 串并转换芯片的三种常见类型
4.1 简单移位寄存器
典型芯片:
74HC595 74HC165主要完成:
Serial → Parallel Parallel → Serial常用于:
- LED
- 数码管
- GPIO 扩展
- 继电器
- 简单控制信号
这类器件速度通常较低,不属于现代高速通信意义上的高速 SerDes。
4.2 独立高速 SerDes 芯片
这类芯片专门负责高速串并转换。
结构类似:
FPGA / ASIC │ Parallel Data │ ▼ Serializer IC │ TX+/TX- │ Cable / PCB │ RX+/RX- │ ▼ Deserializer IC │ Parallel Data ▼ FPGA / ASIC常见厂商包括:
- Texas Instruments
- Analog Devices
- Maxim
- Broadcom
- Marvell
- Microchip
- Renesas
典型应用:
- 汽车摄像头
- 工业视觉
- FPGA 板间通信
- 显示系统
- 高速背板
- 光通信模块
4.3 FPGA / ASIC 内部集成 SerDes
例如 AMD / Xilinx FPGA 内部:
GTP GTX GTH GTY GTYPIntel FPGA 中也集成有高速 Transceiver。
其特点是:
- 与 FPGA Fabric 紧密连接
- 可配置不同协议
- 支持更高速率
- 集成 PLL、CDR、均衡器
- 可用于 PCIe、Ethernet、Aurora、JESD 等协议
GTY 就属于这一类。
5. GTY 是什么
GTY 是 AMD / Xilinx FPGA 中的一类高速串行收发器。
可以简单理解为:
GTY = 集成在 FPGA 内部的高速 SerDes PHY 硬核。
GTY 常用于:
- PCI Express
- 10G / 25G / 100G Ethernet
- Aurora
- JESD204B / JESD204C
- CPRI
- DisplayPort
- 高速板间互联
- 光模块接口
基本数据流:
FPGA Logic │ Parallel Data │ ▼ GTY │ High-speed Serial │ TXP / TXNRX 方向则完全相反。
6. GTY 整体结构
一个 GTY Channel 可以粗略分为:
TX Path FPGA Fabric │ TXDATA ↓ PCS ↓ PMA ↓ Serializer ↓ TX Equalization ↓ TX Driver ↓ TXP / TXNRX 路径:
RXP / RXN ↓ RX Analog Frontend ↓ CTLE / DFE ↓ CDR ↓ Deserializer ↓ PCS ↓ RXDATA ↓ FPGA Fabric其中最重要的两个部分是:
PCS PMA7. PMA
PMA:
Physical Medium Attachment主要负责真正的高速模拟收发。
常见功能:
- Serializer
- Deserializer
- PLL
- CDR
- TX Driver
- TX Pre-emphasis
- RX Equalizer
- CTLE
- DFE
- Eye Scan
可以理解:
PMA 是真正与高速模拟信号直接打交道的部分。
8. PCS
PCS:
Physical Coding Sublayer主要负责数字逻辑处理。
常见功能:
- 8b/10b 编码
- 64b/66b
- Gearbox
- Byte Alignment
- Word Alignment
- Comma Detection
- Clock Correction
- Channel Bonding
- 数据对齐
可以简单记成:
PMA = 高速模拟物理层 PCS = 高速数字编码和对齐层9. Serializer 工作原理
假设输入为:
8-bit Parallel Data数据:
10110110Serializer 将其转换成:
1 → 0 → 1 → 1 → 0 → 1 → 1 → 0依次高速发送。
如果:
8 bit @ 1 GHz则串行数据速率为:
8 × 1 GHz = 8 Gbps一般可近似理解:
Line Rate ≈ Parallel Width × Parallel Clock但实际系统中还需要考虑编码开销。
10. 编码开销
例如 8b/10b:
8 bit Data ↓ 10 bit Line Code效率:
8 / 10 = 80%如果有效数据速率要求:
8 Gbps实际线路速率需要:
8 × 10 / 8 = 10 Gbps所以:
有效数据带宽 ≠ Line Rate高速 Ethernet 常采用 64b/66b:
64 bit ↓ 66 bit效率约:
64 / 66 ≈ 97%11. Deserializer 为什么更复杂
发送端知道:
- 自己的时钟
- 数据发送边界
- Bit 位置
但是接收端拿到的通常只有:
101101001101...它必须自己解决:
什么时候采样? Bit 边界在哪里? Byte 边界在哪里? 信号失真怎么办?所以 RX 中通常会包含:
- RX Equalizer
- CDR
- Deserializer
- Alignment
- Decoder
其中 CDR 是最关键的模块之一。
12. CDR
CDR:
Clock and Data Recovery即:
时钟与数据恢复高速串行链路通常不会单独传输一个几十 GHz 的高速时钟。
接收端需要从:
101101001101...的数据跳变中恢复时钟。
结构:
Serial Data ↓ CDR ↙ ↘ Clock DataCDR 的目标,是在眼图中心附近确定最佳采样时刻。
如果 CDR 无法 Lock:
RX CDR LOCK = 0那么后续的解串、编码检测和协议识别通常都会失败。
13. PLL
高速 SerDes 需要 PLL 产生高速时钟。
例如输入参考时钟:
REFCLK = 156.25 MHz通过内部 PLL:
156.25 MHz ↓ PLL ↓ High-speed Serial Clock可用于产生:
10.3125 Gbps 25.78125 Gbps ...PLL 的时钟质量会直接影响:
- Jitter
- BER
- Eye Opening
- Link Stability
14. GTY 中的 CPLL 和 QPLL
GTY 中常见两种 PLL。
14.1 CPLL
CPLL:
Channel PLL通常属于单个 GT Channel。
特点:
- Channel 独立
- 配置灵活
- 适合部分较低或中等速率应用
结构:
REFCLK ↓ CPLL ↓ GT Channel14.2 QPLL
QPLL:
Quad PLL通常由多个 GT Channel 共享。
例如:
QPLL │ ┌──────┼──────┐ ↓ ↓ ↓ GTY0 GTY1 GTY2 ...QPLL 通常:
- 支持更高 VCO 范围
- 更适合高 Line Rate
- 可供多个 Channel 共享
15. GT Quad
AMD / Xilinx 通常将多个 GT Channel 组织成一个 Quad。
典型结构:
GTY Quad QPLL0 QPLL1 │ ┌──────┼─────────────┐ │ │ │ │ GTY0 GTY1 GTY2 GTY3通常:
1 Quad = 4 GT ChannelsQuad 内部可以共享:
- QPLL
- Reference Clock
- Common Resources
16. Reference Clock
GTY 必须有高质量参考时钟。
常见频率包括:
100 MHz 125 MHz 156.25 MHz 161.1328125 MHz 322.265625 MHz例如 25G Ethernet 常见:
REFCLK = 156.25 MHzGTY 使用专门的高速参考时钟引脚:
MGTREFCLKP MGTREFCLKN它不同于普通 FPGA Clock IO。
参考时钟抖动会影响:
REFCLK Jitter ↓ PLL Jitter ↓ TX Jitter ↓ Eye Diagram ↓ BER因此高速系统对参考时钟质量要求很高。
17. User Clock
GTY 中经常出现:
TXOUTCLK RXOUTCLK TXUSRCLK TXUSRCLK2 RXUSRCLK RXUSRCLK2基本理解:
TXOUTCLK是 GT TX 路径输出或生成的相关时钟。
RXOUTCLK通常与 RX 恢复时钟相关。
TXUSRCLK / TXUSRCLK2用于 FPGA 到 GTY TX 数据路径。
RXUSRCLK / RXUSRCLK2用于 GTY RX 到 FPGA 数据路径。
例如:
Line Rate = 25.78125 Gbps Parallel Width = 80 bit则:
25.78125 Gbps / 80 ≈ 322.265625 MHzFPGA 内部可以使用约:
322.265625 MHz的用户时钟处理 80 bit 数据。
18. Gearbox
Gearbox 本质上是:
位宽 / 时钟转换例如协议内部处理:
66 bit但 GT 数据接口为:
32 bit 64 bit则需要 Gearbox 完成不同位宽之间转换。
典型应用:
64b/66b Ethernet19. TX Equalization
高速 PCB 对高频信号衰减更严重。
所以 TX 会进行预补偿。
常见参数:
Pre Cursor Main Cursor Post Cursor也常称:
Pre-emphasis De-emphasis基本思想是:
在信号发送之前主动改变波形,预先补偿 PCB Channel 对高频部分的损耗。
20. RX Equalization
RX 端也需要对通道损耗进行补偿。
常见技术:
CTLE DFE20.1 CTLE
CTLE:
Continuous Time Linear Equalizer主要补偿频率响应。
因为 PCB 高频损耗通常大于低频损耗,所以 CTLE 可以相对增强高频部分。
20.2 DFE
DFE:
Decision Feedback Equalizer利用前面已经判决的数据,对当前 bit 进行修正。
DFE 对以下场景特别重要:
- 高损耗 PCB
- Backplane
- 长距离高速通道
- 高 Line Rate
21. LPM 与 DFE
GTY RX 中常见不同接收均衡模式。
可以粗略理解:
模式 | 特点 |
LPM | 功耗较低 |
LPM | 适合通道损耗较小场景 |
DFE | 均衡能力更强 |
DFE | 适合高损耗 PCB / Backplane |
DFE | 自适应能力更强 |
22. Lane
高速 SerDes 系统通常以 Lane 为基本单位。
一条全双工 Lane 通常包括:
TX+ TX- RX+ RX-例如 PCIe:
PCIe x1 = 1 Lane PCIe x4 = 4 Lane PCIe x8 = 8 Lane PCIe x16 = 16 Lane多个 Lane 可以组合提高总带宽。
23. Multi-Lane 与 Channel Bonding
例如:
Lane0 Lane1 Lane2 Lane3由于 PCB 线长、连接器和传输路径不同,各 Lane 到达时间可能不同。
接收端需要进行:
Lane Alignment Deskew Channel Bonding从而恢复不同 Lane 之间正确的数据关系。
24. PRBS
PRBS:
Pseudo Random Binary Sequence即伪随机二进制序列。
常见:
PRBS7 PRBS9 PRBS15 PRBS23 PRBS31高速 SerDes 调试时,可以让 TX 内部直接产生 PRBS:
TX PRBS Generator ↓ GTY ↓ PCB / Cable ↓ GTY ↓ RX PRBS Checker如果接收到的数据与预期 PRBS 不一致:
PRBS ERROR ++通过长期测试可以评估链路 BER。
25. BER
BER:
Bit Error Rate即误码率。
例如发送:
10^12 bit出现:
1 bit error则:
BER = 10^-12高速接口常见目标:
10^-12 10^-15甚至更低。
26. Eye Diagram
Eye Diagram:
眼图是评估高速 SerDes 信号质量的重要工具。
眼图越开放:
Eye Height 大 Eye Width 大通常代表:
- Voltage Margin 大
- Timing Margin 大
- BER 更低
眼图越闭合,则说明链路质量越差。
GTY 支持内部 Eye Scan,可以直接分析 RX 接收裕量。
27. Jitter
Jitter:
时钟 / 数据边沿在时间轴上的抖动例如 25 Gbps:
1 UI = 1 / 25e9 ≈ 40 ps也就是说,一个 bit 的时间仅约 40 ps。
如果有:
10 ps Jitter就已经占一个 bit 周期的约 25%。
所以高速 SerDes 对 Jitter 极其敏感。
28. UI
UI:
Unit Interval表示一个 bit 的持续时间。
例如:
10 Gbps则:
1 UI = 100 ps25 Gbps:
1 UI = 40 ps32 GT/s:
1 UI ≈ 31.25 ps高速接口经常使用:
0.1 UI 0.2 UI描述抖动、眼图宽度和采样裕量。
29. NRZ 与 PAM4
传统高速 SerDes 常采用 NRZ。
NRZ:
0 1两个电平:
1 Symbol = 1 bit例如:
25 GBaud ≈ 25 GbpsPAM4 使用四个电平:
00 01 10 11因此:
1 Symbol = 2 bit例如:
56 GBaud ≈ 112 GbpsPAM4 可以提高单位带宽的数据吞吐量,但代价是:
- 电压 Margin 更小
- SNR 要求更高
- Equalization 更复杂
- 原始 BER 更高
30. Loopback
GTY 一般支持多种 Loopback。
例如:
TX ↓ Internal Loopback ↓ RX可用于逐层排查:
- GT 内部
- PCS
- PMA
- PCB
- Connector
- Cable
- Optical Module
如果内部 Loopback 正常,而外部连接失败,则问题更可能位于:
PCB Connector Cable Optical Module31. GTY Reset
GTY 中经常出现:
GTTXRESET GTRXRESET TXPMARESET RXPMARESET TXPCSRESET RXPCSRESET TXRESETDONE RXRESETDONE CPLLRESET QPLLRESET原因是 GTY 内部包含:
- PLL
- PMA
- PCS
- CDR
- Serializer
- Deserializer
- Clock Divider
- Analog Frontend
所以初始化需要按照一定顺序进行。
典型逻辑:
REFCLK Stable ↓ PLL Reset ↓ Wait PLLLOCK ↓ GT Reset ↓ Wait TXRESETDONE / RXRESETDONE ↓ CDR Lock ↓ PCS Alignment ↓ Protocol Link Training ↓ LINK UP32. GTY 与 PCIe 的关系
GTY 不是 PCIe 协议本身。
可以理解:
PCIe Transaction Layer ↓ PCIe Data Link Layer ↓ PCIe PHY / PCS ↓ GTY SerDes ↓ PCBGTY 主要负责:
高速电气收发PCIe IP 则负责:
- LTSSM
- TLP
- DLLP
- Flow Control
- Transaction Layer
因此:
GTY = 高速 PHY 底层收发资源 PCIe = 完整通信协议33. GTY 与 Ethernet 的关系
Ethernet 可以简化为:
MAC ↓ PCS ↓ PMA ↓ SerDes / GTY ↓ Copper / FiberMAC 负责:
Ethernet Frame例如:
- Destination MAC
- Source MAC
- EtherType
- Payload
- CRC
GTY 不关心 Ethernet Frame 的语义。
对 GTY 来说,底层主要就是高速 bit stream。
34. GTY、GTH、GTX 等区别
AMD / Xilinx FPGA 不同代际或不同系列中常见:
GTP GTX GTH GTY GTYP可以粗略理解为不同性能等级和不同代际的高速收发器。
总体发展方向:
更高 Line Rate 更强 Signal Integrity 更复杂 Equalization 更高协议速率但具体最高速率和能力必须根据具体 FPGA 型号和官方器件文档判断。
35. 独立 SerDes 与 FPGA GTY 的区别
FPGA GTY
结构:
FPGA Fabric ↓ GTY ↓ High-speed Serial优点:
- 灵活
- 可重新配置
- 可以支持多种协议
- 与 FPGA 内部逻辑紧密连接
典型:
PCIe Ethernet Aurora JESD独立 SerDes IC
结构:
FPGA / SoC │ Parallel Interface ↓ External SerDes IC ↓ High-speed Cable / PCB典型优势:
- 长距离传输
- 特殊线缆
- 汽车应用
- 工业应用
- 减轻 FPGA 高速 PHY 设计复杂度
36. 汽车 SerDes 应用
汽车摄像头是独立 SerDes 芯片非常典型的应用。
结构:
Camera Sensor ↓ MIPI / Parallel ↓ Serializer ↓ Coax / STP ↓ Deserializer ↓ MIPI CSI-2 ↓ SoC常见技术:
GMSL FPD-Link可以支持:
- 视频数据
- 控制信号
- 双向通信
- 长距离 Cable
- Power over Coax
37. SerDes 与 PHY / MAC 的关系
以 Ethernet 为例:
Application ↓ MAC ↓ PCS ↓ PMA ↓ SerDes ↓ Physical Medium可以粗略记忆:
MAC 负责帧和协议数据 PCS 负责编码、对齐 PMA / SerDes 负责高速物理 bit PHY 通常包含 PCS + PMA + SerDes38. PCB 设计注意事项
高速 SerDes PCB 设计需要重点关注:
- Differential Impedance
- Length Matching
- Via
- Stub
- Connector
- Insertion Loss
- Return Loss
- Crosstalk
- Reference Plane
- AC Coupling
- Jitter
常见差分阻抗:
约 100 Ω Differential具体必须依据:
- 协议规范
- FPGA User Guide
- SerDes Datasheet
不能简单一概而论。
39. AC Coupling
许多高速接口会使用 AC 耦合:
TXP ---||------ RXP TXN ---||------ RXN电容主要用于:
隔离 TX / RX 两侧 DC Common Mode常见电容值可能为:
100 nF但具体容量和放置位置必须根据协议标准确定。
40. Polarity Inversion
高速差分对有时可能出现:
P / N Swap例如:
TXP → RXN TXN → RXP很多 GTY 支持:
TXPOLARITY RXPOLARITY可以在内部进行极性翻转。
这样 PCB Layout 可以在一定程度上减少差分线交叉。
是否允许必须结合具体协议确认。
41. Lane Reversal
Lane Reversal 和 P/N Polarity Inversion 不同。
例如 PCIe x4:
Lane0 → Lane3 Lane1 → Lane2 Lane2 → Lane1 Lane3 → Lane0某些协议允许这种 Lane 顺序反转。
其作用主要是:
降低 PCB Layout 难度42. DRP
GTY 中还有重要接口:
DRP Dynamic Reconfiguration Port通过 DRP 可以在 FPGA 运行过程中访问 GT 内部配置寄存器。
典型信号:
DRPADDR DRPDI DRPDO DRPEN DRPWE DRPRDY可用于动态配置或读取:
- PLL
- CDR
- Equalization
- Eye Scan
- TX Parameters
- RX Parameters
43. IBERT
Vivado 中非常重要的 GT 调试工具:
IBERT Integrated Bit Error Ratio TesterIBERT 可以用于:
- PRBS 测试
- BER 测量
- Eye Scan
- PLL 状态检测
- TX Equalization 调整
- RX Equalization 调整
- GT Link Debug
对于刚学习 GTY,建议先通过 IBERT 熟悉 SerDes,而不是一开始直接调试 PCIe 或 Ethernet 协议。
44. 典型 GTY 调试流程
如果高速 GTY 链路无法 Link Up,可以按以下顺序排查:
1. REFCLK 是否存在且频率正确 ↓ 2. CPLL / QPLL 是否 Lock ↓ 3. TXRESETDONE 是否正常 ↓ 4. RXRESETDONE 是否正常 ↓ 5. TX 是否有高速输出 ↓ 6. RX 是否真正收到高速输入 ↓ 7. CDR 是否 Lock ↓ 8. PRBS 是否通过 ↓ 9. BER 是否正常 ↓ 10. Eye Scan 是否正常 ↓ 11. PCS Alignment 是否完成 ↓ 12. Protocol Training 是否正常这套思路适用于:
- PCIe
- Ethernet
- Aurora
- JESD
- 自定义 SerDes
45. 一个完整高速链路模型
可以用下面这张图理解整个系统:
TX CPU / FPGA / ASIC │ Parallel Data │ ▼ ┌──────────────┐ │ Encoder / PCS│ └──────┬───────┘ ▼ ┌──────────────┐ │ Serializer │ └──────┬───────┘ ▼ ┌──────────────┐ │ TX Equalizer │ │ TX Driver │ └──────┬───────┘ │ TX+/TX- │ ══════════════════════════════ PCB / Cable / Backplane ══════════════════════════════ │ RX+/RX- │ ▼ ┌──────────────┐ │ RX Equalizer │ │ CTLE / DFE │ └──────┬───────┘ ▼ ┌──────────────┐ │ CDR │ └──────┬───────┘ ▼ ┌──────────────┐ │Deserializer │ └──────┬───────┘ ▼ ┌──────────────┐ │ Decoder / PCS│ └──────┬───────┘ ▼ Parallel Data │ CPU / FPGA / ASIC46. 核心概念总结
SerDes
SerDes 是:
将低速宽位并行数据转换成高速窄位串行数据,并在接收端恢复为并行数据的一套高速收发技术。
现代高速 SerDes 通常包含:
Serializer Deserializer PLL CDR TX Equalization RX Equalization PCS PMA PRBS Eye ScanGTY
GTY 是:
AMD / Xilinx FPGA 内部集成的一类高速 SerDes Transceiver 硬核。
GTY 可以用于:
PCIe Ethernet Aurora JESD 高速板间通信 光模块一句话理解 GTY 和 SerDes 的关系
SerDes = 一种高速串并转换技术 GTY = AMD / Xilinx FPGA 内部实现 SerDes 的一种高速收发器资源47. 面试回答模板
如果面试官问:
什么是 SerDes?
可以回答:
SerDes 即 Serializer / Deserializer,是高速串行通信中的核心技术。发送端通过 Serializer 将 FPGA、CPU 或 ASIC 内部的低速宽位并行数据转换为高速差分串行数据,接收端通过 CDR 恢复时钟,再经过均衡、解串和数据对齐恢复成并行数据。现代高速 SerDes 通常集成 PLL、CDR、TX 预加重、RX CTLE/DFE、PRBS 和眼图扫描等功能,广泛应用于 PCIe、Ethernet、SATA、JESD 和高速板间通信。
如果面试官问:
FPGA GTY 是什么?
可以回答:
GTY 是 AMD / Xilinx FPGA 中集成的高速串行收发器硬核,本质上属于高速 SerDes PHY。它负责 FPGA 内部并行数据与外部高速差分串行数据之间的转换,并集成 Serializer、Deserializer、PLL、CDR、TX Equalization、RX CTLE/DFE、PCS/PMA、PRBS 和 Eye Scan 等功能。多个 GTY Channel 通常组成一个 Quad,并可以共享 QPLL 和参考时钟资源。
48. 推荐学习顺序
学习 GTY / SerDes 建议按以下顺序:
1. Parallel / Serial 基础 ↓ 2. Serializer / Deserializer ↓ 3. Line Rate / Data Width / User Clock ↓ 4. PLL / Reference Clock ↓ 5. CDR ↓ 6. PCS / PMA ↓ 7. CTLE / DFE / TX Equalization ↓ 8. Jitter / UI / BER / Eye Diagram ↓ 9. PRBS / Loopback ↓ 10. GT Wizard / IBERT ↓ 11. PCIe / Ethernet / JESD 实际协议掌握这套基础以后,再看 PCIe PHY、Ethernet PHY、GT Wizard 和 IBERT 时会容易很多。