从本篇开始进入"高速接口进阶"专题。前文的 RGMII 是普通 IO 的并行接口;10G Ethernet、Aurora、PCIe 则把数据送入专用 GT 收发器。本篇先搞清物理资源和器件边界,再谈协议 IP。
1. 先纠正一个常见误区
GT Bank 不等于普通 HP/HD IO Bank。GT 使用专用模拟收发器、差分参考时钟和独立供电,不能用一般 IO 原语替代。XCKU5P 的高速收发器类型、各封装引出的通道及最高线速必须按所选器件、速度等级、封装与板卡布线共同确定;本文以 GTH 路线为主。若项目记录写的是 XCKU5P-FFVB676-2-I,先对照芯片丝印、Vivado Part 选择列表和原理图核实封装后缀,切勿照抄示例 LOC。
AMD DS922 给出的 GTH 最高线速因速度等级而异;不能以"KU5P"三个字承诺固定上限,更不能把 GTY 的 25.78125 Gb/s 能力直接套到 GTH 上。
#mermaid-svg-VyyYz276W02g3lXK{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-VyyYz276W02g3lXK .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-VyyYz276W02g3lXK .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-VyyYz276W02g3lXK .error-icon{fill:#552222;}#mermaid-svg-VyyYz276W02g3lXK .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-VyyYz276W02g3lXK .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-VyyYz276W02g3lXK .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-VyyYz276W02g3lXK .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-VyyYz276W02g3lXK .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-VyyYz276W02g3lXK .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-VyyYz276W02g3lXK .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-VyyYz276W02g3lXK .marker{fill:#333333;stroke:#333333;}#mermaid-svg-VyyYz276W02g3lXK .marker.cross{stroke:#333333;}#mermaid-svg-VyyYz276W02g3lXK svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-VyyYz276W02g3lXK p{margin:0;}#mermaid-svg-VyyYz276W02g3lXK .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-VyyYz276W02g3lXK .cluster-label text{fill:#333;}#mermaid-svg-VyyYz276W02g3lXK .cluster-label span{color:#333;}#mermaid-svg-VyyYz276W02g3lXK .cluster-label span p{background-color:transparent;}#mermaid-svg-VyyYz276W02g3lXK .label text,#mermaid-svg-VyyYz276W02g3lXK span{fill:#333;color:#333;}#mermaid-svg-VyyYz276W02g3lXK .node rect,#mermaid-svg-VyyYz276W02g3lXK .node circle,#mermaid-svg-VyyYz276W02g3lXK .node ellipse,#mermaid-svg-VyyYz276W02g3lXK .node polygon,#mermaid-svg-VyyYz276W02g3lXK .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-VyyYz276W02g3lXK .rough-node .label text,#mermaid-svg-VyyYz276W02g3lXK .node .label text,#mermaid-svg-VyyYz276W02g3lXK .image-shape .label,#mermaid-svg-VyyYz276W02g3lXK .icon-shape .label{text-anchor:middle;}#mermaid-svg-VyyYz276W02g3lXK .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-VyyYz276W02g3lXK .rough-node .label,#mermaid-svg-VyyYz276W02g3lXK .node .label,#mermaid-svg-VyyYz276W02g3lXK .image-shape .label,#mermaid-svg-VyyYz276W02g3lXK .icon-shape .label{text-align:center;}#mermaid-svg-VyyYz276W02g3lXK .node.clickable{cursor:pointer;}#mermaid-svg-VyyYz276W02g3lXK .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-VyyYz276W02g3lXK .arrowheadPath{fill:#333333;}#mermaid-svg-VyyYz276W02g3lXK .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-VyyYz276W02g3lXK .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-VyyYz276W02g3lXK .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-VyyYz276W02g3lXK .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-VyyYz276W02g3lXK .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-VyyYz276W02g3lXK .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-VyyYz276W02g3lXK .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-VyyYz276W02g3lXK .cluster text{fill:#333;}#mermaid-svg-VyyYz276W02g3lXK .cluster span{color:#333;}#mermaid-svg-VyyYz276W02g3lXK div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-VyyYz276W02g3lXK .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-VyyYz276W02g3lXK rect.text{fill:none;stroke-width:0;}#mermaid-svg-VyyYz276W02g3lXK .icon-shape,#mermaid-svg-VyyYz276W02g3lXK .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-VyyYz276W02g3lXK .icon-shape p,#mermaid-svg-VyyYz276W02g3lXK .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-VyyYz276W02g3lXK .icon-shape .label rect,#mermaid-svg-VyyYz276W02g3lXK .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-VyyYz276W02g3lXK .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-VyyYz276W02g3lXK .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-VyyYz276W02g3lXK :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 协议逻辑/AXIS
PCS: 编码与对齐
PMA: 串并转换与CDR
GT差分TX/RX引脚
MGTREFCLK差分参考时钟
CPLL/QPLL
2. GT Channel 与 Quad
一个 GT Channel 有独立 TX/RX 数据通路及与时钟有关的资源;多个 Channel 按器件架构组成 Quad,公共资源包括 QPLL 与参考时钟路由。CPLL 在通道侧,QPLL 在公共侧。选 CPLL/QPLL 并非性能偏好题:给定线速、参考频率、编码、器件速度等级和实际可用通道后,由向导检查可行组合。
| 资源 | 作用 | 工程问题 |
|---|---|---|
| TX/RX differential pair | 外部串行物理接口 | 是否连到正确 SFP+/连接器 |
| MGTREFCLK | 低抖动参考 | 频率、输入 Quad 和共享范围 |
| CPLL/QPLL | 提供 GT 内部时钟 | 目标线速能否合法实现 |
| CDR | 接收时钟恢复 | 远端有没有有效数据、锁定是否稳定 |
| TX/RX USERCLK | 并行侧工作时钟 | AXIS 时钟域如何连接 |
| DRP | 动态配置 | 调参前需管理状态与复位 |
3. 用一张表做资源预审
建立板卡清单,不凭 IP 页面"可选项"推测实际 PCB 可用性:
| 检查项 | 必须记录 |
|---|---|
| 器件 | 精确 Part、速度等级和封装 |
| Quad/Channel | site、TX/RX 引脚、是否已经被 PCIe 占用 |
| 时钟 | REFCLK 引脚、板载晶振频率/ppm、连接方式 |
| 通道外设 | SFP+ cage、连接器、交流耦合位置、模块管理 I²C |
| 电源 | GT 模拟电源、纹波、上电顺序 |
| 对端 | 同协议、线速、编码、极性和时钟假设 |
例如板上只有一个 GTH Channel 走到 SFP+,那么 x4 Aurora 即使 IP 能生成,实板也无法接通。用于 PCIe 的 GT Channel 不应再分配给 Ethernet。
4. 线速不等于有效数据率
基本换算:
text
有效编码速率 ≈ 单通道线速 × 编码效率 × 通道数
实际有效载荷 = 有效编码速率 - 帧/控制/FEC/空闲开销
例:10GBASE-R 的物理串行速率为 10.3125 Gb/s,64B/66B 的编码效率为 64/66,因此编码层对应 10 Gb/s,之后还需减 MAC 帧、IFG 等开销。Aurora 也不能直接用 通道数×线速/8 作为应用吞吐。
5. Vivado 第一轮实验
- 选定准确 Part,核对封装中的 GT site。
- 用 GT Wizard 选择一条真实连出的通道和实际 REFCLK。
- 设置保守、受支持的线速,生成 Example Design。
- 先跑向导自带仿真与片内环回。
- 再做外部回环或接对端;最后才加入 Aurora/10G 协议。
不要删掉向导生成的复位、时钟缓冲及示例约束后自行"简化"。示例 XDC 需要逐项核对,并不能原样复制到不同板卡。
6. 调试信号和故障树
#mermaid-svg-Xc7Ms019VOvmkpXj{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-Xc7Ms019VOvmkpXj .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-Xc7Ms019VOvmkpXj .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-Xc7Ms019VOvmkpXj .error-icon{fill:#552222;}#mermaid-svg-Xc7Ms019VOvmkpXj .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-Xc7Ms019VOvmkpXj .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-Xc7Ms019VOvmkpXj .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-Xc7Ms019VOvmkpXj .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-Xc7Ms019VOvmkpXj .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-Xc7Ms019VOvmkpXj .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-Xc7Ms019VOvmkpXj .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-Xc7Ms019VOvmkpXj .marker{fill:#333333;stroke:#333333;}#mermaid-svg-Xc7Ms019VOvmkpXj .marker.cross{stroke:#333333;}#mermaid-svg-Xc7Ms019VOvmkpXj svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-Xc7Ms019VOvmkpXj p{margin:0;}#mermaid-svg-Xc7Ms019VOvmkpXj .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-Xc7Ms019VOvmkpXj .cluster-label text{fill:#333;}#mermaid-svg-Xc7Ms019VOvmkpXj .cluster-label span{color:#333;}#mermaid-svg-Xc7Ms019VOvmkpXj .cluster-label span p{background-color:transparent;}#mermaid-svg-Xc7Ms019VOvmkpXj .label text,#mermaid-svg-Xc7Ms019VOvmkpXj span{fill:#333;color:#333;}#mermaid-svg-Xc7Ms019VOvmkpXj .node rect,#mermaid-svg-Xc7Ms019VOvmkpXj .node circle,#mermaid-svg-Xc7Ms019VOvmkpXj .node ellipse,#mermaid-svg-Xc7Ms019VOvmkpXj .node polygon,#mermaid-svg-Xc7Ms019VOvmkpXj .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-Xc7Ms019VOvmkpXj .rough-node .label text,#mermaid-svg-Xc7Ms019VOvmkpXj .node .label text,#mermaid-svg-Xc7Ms019VOvmkpXj .image-shape .label,#mermaid-svg-Xc7Ms019VOvmkpXj .icon-shape .label{text-anchor:middle;}#mermaid-svg-Xc7Ms019VOvmkpXj .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-Xc7Ms019VOvmkpXj .rough-node .label,#mermaid-svg-Xc7Ms019VOvmkpXj .node .label,#mermaid-svg-Xc7Ms019VOvmkpXj .image-shape .label,#mermaid-svg-Xc7Ms019VOvmkpXj .icon-shape .label{text-align:center;}#mermaid-svg-Xc7Ms019VOvmkpXj .node.clickable{cursor:pointer;}#mermaid-svg-Xc7Ms019VOvmkpXj .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-Xc7Ms019VOvmkpXj .arrowheadPath{fill:#333333;}#mermaid-svg-Xc7Ms019VOvmkpXj .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-Xc7Ms019VOvmkpXj .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-Xc7Ms019VOvmkpXj .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-Xc7Ms019VOvmkpXj .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-Xc7Ms019VOvmkpXj .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-Xc7Ms019VOvmkpXj .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-Xc7Ms019VOvmkpXj .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-Xc7Ms019VOvmkpXj .cluster text{fill:#333;}#mermaid-svg-Xc7Ms019VOvmkpXj .cluster span{color:#333;}#mermaid-svg-Xc7Ms019VOvmkpXj div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-Xc7Ms019VOvmkpXj .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-Xc7Ms019VOvmkpXj rect.text{fill:none;stroke-width:0;}#mermaid-svg-Xc7Ms019VOvmkpXj .icon-shape,#mermaid-svg-Xc7Ms019VOvmkpXj .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-Xc7Ms019VOvmkpXj .icon-shape p,#mermaid-svg-Xc7Ms019VOvmkpXj .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-Xc7Ms019VOvmkpXj .icon-shape .label rect,#mermaid-svg-Xc7Ms019VOvmkpXj .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-Xc7Ms019VOvmkpXj .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-Xc7Ms019VOvmkpXj .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-Xc7Ms019VOvmkpXj :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 否
是
否
是
否
是
链路未建立
参考时钟存在?
晶振/LOC/IBUFDS_GTE检查
PLL lock?
线速与REFCLK组合/复位
RX CDR与reset done?
对端、极性、信号完整性
协议对齐/帧校验
ILA 应抓 pll_lock、tx_reset_done、rx_reset_done、rx_data_valid、解码错误计数和链路状态;高速差分眼图不能由 ILA 代替。
7. 容易犯的错误
- 把普通 GC 时钟引脚当 GT 参考时钟。
- 假设任意 REFCLK 都可以送到任意 Channel。
- 把 GTH 与 GTY 的最高线速混用。
- 只看 IP 生成成功,不核对 SFP+/PCIe 的板级连接。
- 将 RESETDONE 当作链路已建立;它只说明该复位序列完成。
- 将 25G 单通道 IP 直接部署到只具 GTH、达不到对应线速的配置。
7.1 资源检查的 Vivado 操作顺序
在 Project Settings 中确认完整 Part;打开 I/O Planning/Package 视图核对 MGT 通道与参考时钟 site;生成目标 GT IP 时观察 IP Validation 报错;最后检查综合后的 report_utilization、实现后的 report_clock_utilization 和 DRC。不要凭名字相近的 Bank 号推断 Quad 邻接关系。PCB 原理图中的 SFP+ TXP/TXN/RXP/RXN 要逐一映射到器件封装管脚,并明确 TX 是 FPGA 发向模块的方向。
给每个接口建立一张可追溯表:接口名称 → 连接器编号 → 原理图网络名 → FPGA 封装脚 → GT site → REFCLK site → IP instance。以后出现串线、Lane 反接和引脚占用冲突,可以沿这张表追根。
8. 小结与检查清单
GT 工程的起点是资源与物理路径,不是协议参数。开展下一篇前确保:准确 Part、真实连出 GT、可用 REFCLK、线速组合、板级信号链、向导示例仿真及环回全部确认。
下一篇专门讲 GT 参考时钟、CPLL/QPLL、USERCLK 和复位顺序。
9. 工程加餐:把板级资源调查做成可执行表
| 链路 | 连接器/原理图网络 | GT Channel/Quad | REFCLK 来源 | 验证证据 |
|---|---|---|---|---|
| 业务口 A | 按真实板图填写 | Vivado Package Pins 核对 | 专用时钟路径核对 | IP 参数+DRC |
| 回环口 B | 按真实板图填写 | 是否与 A 共享 Quad | 是否共享 PLL | 板上回环报告 |
#mermaid-svg-GvqneKhWYzaoTPn6{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-GvqneKhWYzaoTPn6 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-GvqneKhWYzaoTPn6 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-GvqneKhWYzaoTPn6 .error-icon{fill:#552222;}#mermaid-svg-GvqneKhWYzaoTPn6 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-GvqneKhWYzaoTPn6 .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-GvqneKhWYzaoTPn6 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-GvqneKhWYzaoTPn6 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-GvqneKhWYzaoTPn6 .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-GvqneKhWYzaoTPn6 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-GvqneKhWYzaoTPn6 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-GvqneKhWYzaoTPn6 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-GvqneKhWYzaoTPn6 .marker.cross{stroke:#333333;}#mermaid-svg-GvqneKhWYzaoTPn6 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-GvqneKhWYzaoTPn6 p{margin:0;}#mermaid-svg-GvqneKhWYzaoTPn6 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-GvqneKhWYzaoTPn6 .cluster-label text{fill:#333;}#mermaid-svg-GvqneKhWYzaoTPn6 .cluster-label span{color:#333;}#mermaid-svg-GvqneKhWYzaoTPn6 .cluster-label span p{background-color:transparent;}#mermaid-svg-GvqneKhWYzaoTPn6 .label text,#mermaid-svg-GvqneKhWYzaoTPn6 span{fill:#333;color:#333;}#mermaid-svg-GvqneKhWYzaoTPn6 .node rect,#mermaid-svg-GvqneKhWYzaoTPn6 .node circle,#mermaid-svg-GvqneKhWYzaoTPn6 .node ellipse,#mermaid-svg-GvqneKhWYzaoTPn6 .node polygon,#mermaid-svg-GvqneKhWYzaoTPn6 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-GvqneKhWYzaoTPn6 .rough-node .label text,#mermaid-svg-GvqneKhWYzaoTPn6 .node .label text,#mermaid-svg-GvqneKhWYzaoTPn6 .image-shape .label,#mermaid-svg-GvqneKhWYzaoTPn6 .icon-shape .label{text-anchor:middle;}#mermaid-svg-GvqneKhWYzaoTPn6 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-GvqneKhWYzaoTPn6 .rough-node .label,#mermaid-svg-GvqneKhWYzaoTPn6 .node .label,#mermaid-svg-GvqneKhWYzaoTPn6 .image-shape .label,#mermaid-svg-GvqneKhWYzaoTPn6 .icon-shape .label{text-align:center;}#mermaid-svg-GvqneKhWYzaoTPn6 .node.clickable{cursor:pointer;}#mermaid-svg-GvqneKhWYzaoTPn6 .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-GvqneKhWYzaoTPn6 .arrowheadPath{fill:#333333;}#mermaid-svg-GvqneKhWYzaoTPn6 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-GvqneKhWYzaoTPn6 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-GvqneKhWYzaoTPn6 .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-GvqneKhWYzaoTPn6 .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-GvqneKhWYzaoTPn6 .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-GvqneKhWYzaoTPn6 .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-GvqneKhWYzaoTPn6 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-GvqneKhWYzaoTPn6 .cluster text{fill:#333;}#mermaid-svg-GvqneKhWYzaoTPn6 .cluster span{color:#333;}#mermaid-svg-GvqneKhWYzaoTPn6 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-GvqneKhWYzaoTPn6 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-GvqneKhWYzaoTPn6 rect.text{fill:none;stroke-width:0;}#mermaid-svg-GvqneKhWYzaoTPn6 .icon-shape,#mermaid-svg-GvqneKhWYzaoTPn6 .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-GvqneKhWYzaoTPn6 .icon-shape p,#mermaid-svg-GvqneKhWYzaoTPn6 .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-GvqneKhWYzaoTPn6 .icon-shape .label rect,#mermaid-svg-GvqneKhWYzaoTPn6 .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-GvqneKhWYzaoTPn6 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-GvqneKhWYzaoTPn6 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-GvqneKhWYzaoTPn6 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 业务速率与Lane数
具体器件/封装
GT site与参考时钟可达性
PCB走线与连接器
IP生成与实现DRC
切勿由 Bank 编号推断 MGT Quad 邻接;对 KU5P 也必须以实际封装和原理图逐脚核实。留存"接口→连接器→封装脚→GT site→IP instance"映射,后续才能追踪 Lane 反接与资源冲突。
9.1 一次可复现的资源预审练习
选择一条 真实板载高速接口,填写板卡丝印、连接器编号、TX/RX 网络名、封装管脚、Wizard 选定的 GT Channel、REFCLK 输入 site 和频率。只生成该接口的官方 Example Design,先不接业务 AXIS。把综合 DRC、实现 DRC 与 ILA 的 PLL_LOCK/TX_DONE/RX_DONE 三组结果分别存档;未定位具体器件及实际管脚时,不在公开文章中声称"KU5P 任意某 Bank 可跑某种 25G 配置"。