4. 收发器PHY配置与重配置
在 Agilex 的收发器链路中,PHY 层是连接 FPGA 内部并行数据与外部高速串行信号的关键桥梁。链路能否稳定工作,往往不取决于逻辑设计有多复杂,而取决于 PHY 参数是否与通道特性、协议要求和 PCB 走线匹配。本节围绕 Transceiver PHY IP 的配置与重配置展开,重点讲清 Native PHY 的配置入口、数据速率与编码方式的确定方法、均衡器与驱动强度的调节逻辑,以及运行中重配置的触发与验证方式。
一、Native PHY IP 的配置入口与结构
Agilex 收发器通过 Quartus 中的 Transceiver PHY IP 进行配置,最常用的是 Native PHY IP。它不像协议专用 IP 那样把大量参数封装隐藏,而是把 PMA 与 PCS 的关键参数直接暴露给设计者,因此更适合调试阶段逐项定位问题。Native PHY 的配置界面大致分为三层:PMA 层负责串行侧的物理特性,包括数据速率、参考时钟、均衡器、驱动强度;PCS 层负责并行侧的编码、位宽、通道绑定;接口层则决定与 FPGA 逻辑之间的数据通路形式,例如是否使用 TX/RX FIFO、是否启用 Avalon 接口。
配置时首先要确定的是参考时钟与数据速率的关系。Agilex 收发器的 PMA 通常采用分数分频结构,数据速率由参考时钟频率、PLL 倍频比和串化因子共同决定。例如目标线速率 25.78125 Gbps、参考时钟 156.25 MHz 时,需要选择能整除出该速率的 PLL 配置;若参考时钟改为 161.1328125 MHz,则 PLL 参数必须同步调整,否则会出现速率偏差导致误码。配置界面中应优先锁定参考时钟频率,再让工具计算可用的数据速率组合,而不是先填速率再反推时钟。
二、数据速率、编码方式与位宽匹配
数据速率确定后,编码方式直接影响有效带宽和 PCS 结构。常见选择包括 64b/66b、64b/67b、8b/10b 以及无编码的原始模式。64b/66b 开销低,适合以太网、Interlaken 等高速协议;8b/10b 直流平衡好、控制字符丰富,适合 PCIe 早期版本、SATA 等;64b/67b 则在保持低开销的同时提供更强的控制能力。编码方式一旦选定,PCS 的并行位宽也随之确定:以 64b/66b 为例,若 PMA 串化因子为 64,则 PCS 侧通常呈现 64 位或 66 位数据通路,TX/RX FIFO 的位宽必须与之对齐,否则会出现位宽不匹配的编译错误或数据错位。
下面这张图展示了 Native PHY 从参考时钟到串行输出的关键配置链路,以及各参数之间的依赖关系,便于在配置时快速定位“改一个参数要连带改哪些项”。
三、均衡器与驱动强度的调节
当速率超过 10 Gbps 后,通道损耗成为主要限制因素。TX 侧通过驱动强度(VOD)和预加重/去加重补偿高频衰减,RX 侧则依靠 CTLE、VGA 和 DFE 逐级恢复信号。调节顺序建议从 TX 开始:先设置一个中等驱动强度,观察对端接收眼图;若眼高不足,逐步提高 VOD 或增加预加重;若眼宽不足、抖动偏大,则减少预加重,避免过补偿引入噪声。RX 侧先启用 CTLE 的自动适配模式,让工具根据通道损耗选择合适的高频增益档位,再视情况开启 DFE 处理残余码间干扰。
需要强调的是,均衡参数不是越大越好。过强的预加重会抬高信号边沿、增加 EMI 和功耗,也可能让对端接收器过载;DFE 抽头过多则会在低损耗通道上引入不必要的噪声放大。实际调试中应结合 Eye Monitor 或误码率测试,以“眼图张开度最大、误码率最低”为判据,而不是单纯追求参数数值。
四、重配置的触发与验证
Agilex 支持通过 Avalon-MM 或配置寄存器对收发器进行动态重配置,典型场景包括:链路训练阶段切换预加重档位、协议切换时改变数据速率、故障恢复时重新校准 CDR。重配置的基本流程是:先确认当前通道处于空闲或可控状态,再写入目标参数,然后触发内部校准,最后读取状态寄存器确认校准完成。若在数据流持续期间重配置,必须确保上层协议允许短暂中断,否则会出现不可恢复的误码。
验证重配置是否生效,不能只看寄存器写回值。推荐做法是:重配置前后分别采集一段 PRBS 误码统计,对比误码率是否改善;同时用 Eye Monitor 观察眼图是否按预期变化。若写入后误码率反而恶化,应检查是否遗漏了校准触发步骤,或参数超出了当前参考时钟允许的范围。下面给出一个重配置参数检查表的示例,便于在调试时逐项核对。
| 检查项 | 示例值 | 判断依据 |
|---|---|---|
| 参考时钟频率 | 156.25 MHz | 与板级晶振一致,误差在 ppm 级 |
| 目标数据速率 | 25.78125 Gbps | PLL 可整除,无速率偏差 |
| 编码方式 | 64b/66b | 与协议层一致,PCS 位宽匹配 |
| TX VOD | 中等档位起步 | 对端眼高足够且不过载 |
| RX CTLE | 自动适配 | 眼图张开度改善 |
| 重配置后校准 | 已触发并完成 | 状态寄存器返回校准完成 |
| 误码率对比 | 重配置后 ≤ 重配置前 | PRBS 统计无恶化 |
总体来看,Native PHY 的配置与重配置是一个“参数联动、观测驱动”的过程。数据速率、编码方式、位宽、均衡和驱动强度之间存在明确的依赖链,任何一项改动都可能影响其他项。调试时应先锁定时钟与速率,再确定编码与位宽,最后在模拟前端上做精细调节,并用误码率和眼图作为最终判据。只有把配置、观测和回退机制串成闭环,才能在 Agilex 高速链路上获得稳定可靠的收发性能。