简介本资源为 AMD/Xilinx 官方 UG1075 文档《Zynq UltraScale Device 封装和引脚排列》的中英文对照版采用左侧英文原文、右侧中文翻译的双栏排版便于中英文读者对照查阅。面向 FPGA 开发工程师、硬件设计人员及嵌入式系统学习者覆盖 Zynq UltraScale 各设备/封装组合、千兆级收发器通道数量、用户 I/O 引脚定义、封装间脚印兼容性以及 DDR3/DDR4/LPDDR4/LPDDR3 等 PS 存储器接口引脚设计指南可帮助读者在 PCB 布局、引脚分配和器件选型阶段减少设计错误。资源包含 1 个 PDF 文件包体约 38.87MB已有 168 人学习。除了封装规格表文档还整理了 Die 级 Bank 编号概览和不同封装之间的兼容性对比便于方案评估、升级迁移与替代封装选型同时收录 AMD 在去除非包容性语言方面的说明体现文档版本更新的背景与修订意识。对正在使用或计划选型 Zynq UltraScale 平台的软硬件开发者是一份值得保存的参考手册。1. Zynq UltraScale 引脚查起来有多累为什么中英对照版 UG1075 值得放桌面做过 Zynq UltraScale 板子的人都有这种体会逻辑代码写得再顺到了画原理图、建封装、写引脚约束那一步还是得回到引脚文档里一页一页翻。UG1075 就是这份文档全称很长实际内容就是封装图和引脚表。英文原版信息完整但术语多、表格密盯着看半小时眼睛就花中英对照版把信号名、引脚号、Bank 编号、电压域这些关键信息并列排好省掉来回切换理解的功夫。FPGA 工程里真正翻车的往往不是逻辑而是电源引脚接错、差分对方向弄反、Bank 电压没对上。这篇笔记就按我拆这份文档的路径把怎么查、怎么用、坑在哪讲清楚。2. 引脚体系先看三个维度封装、Bank 与信号属性决定的可用性2.1 文档的组织方式先看页码索引再谈具体信号UG1075 这类封装引脚文档第一眼看上去全是表格很容易让人直接翻到信号名列表开始搜索。我推荐先花十分钟把目录读懂因为它其实分了三层结构封装信息页、引脚编号图、按信号排列的引脚表。封装信息页告诉你的是球距、封装尺寸、焊球总数这部分对应你建封装库时的机械尺寸。引脚编号图则是 BGA 底视图或顶视图的坐标网格用来确认某个物理位置上是哪个信号。按信号排列的引脚表才是真正天天要用的部分每一行包含信号名、封装引脚号、所属 Bank、引脚类型、电压域等字段。中英对照版对这三层做了术语翻译比如把 Pin Type 译成引脚类型把 Bank 直接保留为 Bank把 Voltage Domain 译成电压域。习惯中文思考的人第一次看英文原版常在专用电源引脚、备用引脚、无连接引脚这些分类上犯迷糊中英对照版能直接消掉这一层理解成本。2.2 Bank 是引脚表的入口PS、PL、GT、配置、电源五类怎么分Zynq UltraScale 的引脚不是均匀分布的而是按 Bank 分区。Bank 可以理解为一组共享供电和 I/O 标准的引脚集合每个 Bank 有自己的 VCCO 引脚决定这一组引脚能跑什么电平标准。从器件角度看Bank 大致分成五类PS 侧 Bank、PL 侧高性能 Bank通常叫 HP Bank、PL 侧高密度 Bank通常叫 HD Bank、GT 高速收发器 Bank、以及配置和专用功能 Bank。PS 侧 Bank 主要服务处理器系统对应 MIO功能由 PS 内部外设决定不能随便当通用 GPIO 用。PL 侧 Bank 才有真正的通用可编程 I/O。HP Bank 支持高性能接口比如 DDR、LVDS、MIPI D-PHY 这类需要高速翻转的信号HD Bank 支持电压范围更宽但速度上限较低的应用适合做低速控制信号和电平转换。GT Bank 提供高速串行收发器引脚通常成对出现负责 PCIe、SATA、Ethernet 这类协议。配置 Bank 管启动模式、程序下载、状态指示这些专用功能。查表的时候如果先不看 Bank 类型很容易把高速信号分配到 HD Bank 上后面布线、时序全出问题。这个错误我在第四节会展开讲。2.3 同一信号在不同封装里的排布规律同一颗 Zynq UltraScale 芯片往往有多个封装选项区别在于焊球数量、封装尺寸、可用 I/O 数量。注意一个很实际的现象同一个信号名在 A 封装里可能出现在左侧在 B 封装里可能挪到下方甚至右侧。换封装时最忌讳拿着旧原理图直接改器件型号然后沿用旧的引脚网络表。因为封装变了引脚坐标、Bank 归属、电源引脚的数量和位置都会变。中英对照版的引脚索引表是按信号名排序的跨封装对比时要把相同信号名的行抽出来逐列核对 Bank 和引脚号。封装系列焊球总数可用 PL I/O 数量典型应用场景小尺寸系列较少较少控制面、接口桥接中尺寸系列中等中等通用逻辑、图像处理大尺寸系列较多较多多路高速接口、大规模逻辑上表只是一个粗略的对比思路具体数值一定要以文档里对应封装页为准。选封装时除了看 I/O 数量还要看 GT Bank 的数量和位置这决定了高速串行信号能不能布得开。3. 中英对照版的实际用法三步定位信号、按 Bank 规划 I/O 资源3.1 按信号名反查引脚查表三步走拿到一份新的原理图或者要核对某个网络时按信号名反查引脚是最常见的操作。我一般按三步走第一步确认封装代码。文档开头会有封装命名规则比如 FFVC 还是 FFVF 后缀这决定你去哪一页查引脚表。封装代码对不上后面所有结果都无效。第二步在信号索引里找目标信号名。中英对照版的索引页把信号名按字母排好找到后记录对应的封装引脚号、Bank 号和引脚类型。第三步回到封装顶视图或底视图确认这个引脚在物理位置上是否合理。比如 DDR 信号有没有遍布全芯片高速 GT 信号有没有集中在一侧电源引脚是不是和地引脚相邻分布。举一个实际例子要查一个叫PS_MIO0的信号在信号索引里直接找 PS_MIO 开头的行会看到它归属 PS Bank引脚类型标注为 MIO默认复用功能由 PS 端配置决定。如果你想知道它能不能接到某个 PL 引脚上答案在中英对照版里就很清楚MIO 固定属于 PS不走 PL 布线资源。3.2 按 Bank 号规划 I/O高速信号尽量留在 HP Bank画原理图的时候很多工程师只关心信号名对不对忽略了 Bank 资源规划。实际项目里DDR、LVDS、MIPI 这些高速接口对 Bank 类型有硬性要求分配错了后面综合工具会报错甚至板子回来信号质量一塌糊涂。最常见的规划方法就是先把工程里所有高速接口列出来看它们各自需要什么电平标准再分配合适的 Bank。例如 DDR4 接口一定要放在支持该电压标准的 HP Bank并且要保证整个 Bank 的 VCCO 电压一致LVDS 差分对要放在支持差分终端匹配的 BankMIPI D-PHY 则要特别注意信号摆幅和阻抗要求。我一般会先在纸上画一个 Bank 资源表把每个 Bank 的编号、类型、可用引脚数、电压域填好然后把所有接口信号往里放。这样一眼就能看出高速接口有没有压在某一个 Bank 上会不会出现引脚数量不够的情况。中英对照版在这里的用处是Bank 编号对应的电压域、引脚类型都有明确标注不用再翻好几份数据手册才能确认。3.3 中英对照版和原版的关系先读中文注释再核对英文勘误有人问中英对照版是不是就是中文翻译其实不完全是。翻译的意义在于把术语和表头讲清楚但引脚编号、信号名、Bank 归属这些硬信息必须和原版完全一致否则产品没法用。我的习惯是先读中文注释理解段落含义再用英文原版做最终核对。比如文档里对某个引脚的描述是“No Connect, should not be connected”中英对照版翻译成“无连接引脚不应连接任何网络”理解上完全没问题但真正布板时我会回英文原版确认它的引脚编号和位置避免因为翻译歧义造成连接错误。另外要注意文档版本。封装引脚信息会随器件版本更新比如某些引脚从保留状态变成正式功能或者某些封装新增了电源引脚。中英对照版如果是基于较新版本翻译的阅读时还要对照原厂的修订记录看当前芯片版本是否支持文档里的描述。4. 原理图阶段常踩的点UG1075 里关于电压、配置与 GT 的关键页4.1 电源和接地引脚的标注规则引脚文档里电源和接地引脚占了相当大的篇幅但很多人直接跳过结果画原理图时电源网络接得一塌糊涂。首先要注意区分专用电源引脚和 Bank 电源引脚。专用电源引脚比如核心电压、辅助电压、模拟电压它们给整个器件供电必须按要求接对应的电源网络不能随意合并。Bank 电源引脚也就是 VCCO决定对应 Bank 的电平标准不同 Bank 可以接不同电压。接地引脚也有讲究。芯片通常有数字地、模拟地、高速收发器地等不同类型的接地引脚。如果文档里标注了某种地引脚应与特定地平面连接就不要为了原理图好看把所有地引脚并成一个网络。我处理中英对照版电源引脚表的步骤是这样的先把所有电源引脚按网络名分类再核对每个 Bank 的 VCCO 电压最后检查专用电源引脚有没有遗漏。封装越大电源引脚越多漏接一两个核心电源引脚板子回来的表现就是供电异常、电流不稳这一类问题最难排查。下面是电源引脚规划时常用的核对字段引脚类型网络用途核对要点专用电源核心/辅助/模拟供电确认电压值确认去耦电容位置Bank 电源VCCO 电平设置确认对应 Bank 编号确认电压域一致接地数字地/模拟地/收发器地确认地平面划分确认连接方式无连接不应连接确认 NC 标识避免误接保留等待定义确认是否悬空或按默认值处理4.2 配置 Bank 与专用引脚配置 Bank 是许多工程师看引脚表时的盲区因为正常工作时这些引脚似乎用不到。但恰恰是这些引脚决定芯片能不能启动、能不能下载程序、能不能正确读取启动模式。配置引脚包括模式选择引脚、程序下载引脚、状态指示引脚、以及时钟相关引脚。模式选择引脚通常接上拉或下拉电阻用来设定启动模式程序下载引脚负责下载 bitstream状态指示引脚反映配置完成、错误状态等信息。中英对照版对这些引脚一般都有专门段落并在表头标注清楚是属于配置功能还是普通功能。一个常见误区是把配置引脚当普通 I/O 用。有些配置引脚在配置完成后可以复用为普通 I/O但需要满足特定条件。如果项目里没有仔细看复用规则很容易在配置阶段被这些引脚干扰。另外配置 Bank 的 VCCO 电压必须和下载器、配置芯片的电平匹配否则下载不稳。4.3 GT 收发器引脚与参考时钟Zynq UltraScale 的 GT Bank 是高速串行收发器的核心涉及 PCIe、SATA、Ethernet 这类协议时必然要用到。GT Bank 的引脚不是简单的数字 I/O它有专用电源引脚、专用地引脚、参考时钟输入引脚、以及成对的收发差分引脚。规划 GT 引脚时要特别注意参考时钟。每个 GT Bank 有自己的一组参考时钟输入不同 Bank 之间的参考时钟不一定可以随便互换。而且 GT 参考时钟对噪声极其敏感布局布线时要远离数字开关信号。有些设计想在两个 Bank 共用一个参考时钟这要看芯片内部时钟路由资源是否支持不支持的话必须每个 Bank 配独立参考时钟。差分收发引脚也需要注意方向。引脚表里通常会标明哪些是发送对、哪些是接收对连接器侧同样有方向接反了就是信号不通或者链路不稳。中英对照版在 GT 引脚部分会保留英文缩写比如 RX 和 TX同时给出中文注释新手不会一头雾水。5. 避坑与排查Zynq UltraScale 封装引脚设计五个常见坑5.1 坑一换封装时凭经验找信号位置错乱现象把原来小封装项目的原理图直接改成大封装只改了器件型号引脚网络用旧的板子回来后好多信号对不上飞线飞得乱七八糟。原因不同封装的信号分布差异很大同一个功能引脚在新封装里可能换了 Bank、换了位置甚至个别信号改成了专用电源引脚。经验在这里帮不上忙必须以目标封装的引脚索引为准。解决换封装之后把整个 netlist 重新按新封装的索引表核对一遍信号名、引脚号、Bank 号三项都要一致再进入布局布线。5.2 坑二HD Bank 当 HP Bank 用高速信号翻车现象把 LVDS 时钟和 MIPI 数据放在某个 Bank综合工具没报错但板子调起来信号质量差眼图根本睁不开。原因HD Bank 是高密度 Bank支持较宽电压范围但速度上限低不适合 LVDS、MIPI 这类高速差分标准。HP Bank 才有对应的驱动能力和终端匹配支持。解决查文档中 Bank 类型列把所有高速接口全部安排在 HP Bank并把 VCCO 配到符合接口标准的电压。HD Bank 只放低速控制信号。5.3 坑三MIO 当通用 I/O忽略了 PS 侧功能绑定现象想把某个 PS 外设信号直接接到 FPGA 逻辑引脚上结果发现又叫 MIO 又叫 EMIO绕了一圈还是不通。原因MIO 是 PS 侧专用引脚功能由 PS 控制器决定不会出现在 PL 的可编程逻辑里。想要访问这些外设逻辑必须通过 EMIO 映射到 PL Bank 的 I/O 上。解决在引脚表里先确认信号名属于 MIO 还是 EMIO 类别MIO 不能当普通 I/O 规划EMIO 需要额外配置。5.4 坑四BGA 扇出时忽略电源引脚分布过孔打不下现象大封装芯片中心区域全是电源和地引脚走线时发现信号过孔插不进去只能层层绕板子面积浪费一大片。原因没有提前看封装视图里电源引脚的分布规律。中心区域往往是大面积电源阵列留给信号的空间本来就不多。解决画封装库之前先把电源引脚和地引脚的分布标记出来电源过孔区单独规划信号走线避开中心重灾区或者选择更大间距的封装。5.5 坑五NC 引脚被判错干扰整个网络现象某个引脚标着 NC原理图里没接但板子调试时发现它和旁边的电源引脚有微弱连通导致系统电流异常。原因NC 引脚的内部结构可能与某些内部电路相连只是文档要求不连接而不是真的可以随便接。把它接到地或电源相当于改变了内部状态。解决严格按文档中的 NC 清单处理不连接的引脚就悬空不额外接地、不额外接电源也不在布局时把它们当走线通道。6. 从 UG1075 到引脚约束一个把 PDF 引脚表转成 XDC 的落地技巧6.1 先把 PDF 转成文本再按信号名建映射引脚文档最理想的使用方式不是每次翻页而是转成可检索的文本再生成约束文件。常见做法是用工具把 PDF 转成带布局格式的纯文本再用脚本把关键列拆出来。pdftotext -layout ug1075_pkg_pinout_cn.pdf ug1075_cn.txt awk -F| /PS_MIO|PL_|DDR|GTY/ {print $1, $2, $3, $4} ug1075_cn.txt这段命令先把 PDF 按原始布局转成文本再用 awk 过滤出信号名、引脚号、Bank 号和引脚类型这几列。-layout参数保证表格结构不被拆散关键字的过滤条件可以根据实际项目调整。注意生成结果后要人工核对几行数据是否错位因为 PDF 转文本偶尔会因为表格线断裂导致列错位。6.2 批量生成 XDC 的脚本骨架与参数说明把文本数据整理成 CSV 之后就可以写脚本批量生成引脚约束。下面是一个常见的 Tcl 脚本思路# 从 CSV 生成引脚约束的脚本骨架 set csv_file pin_map.csv set fp [open $csv_file r] while {[gets $fp line] 0} { set fields [split $line ,] set signal_name [string trim [lindex $fields 0]] set package_pin [string trim [lindex $fields 1]] set io_std [string trim [lindex $fields 2]] if {$signal_name eq } { continue } puts set_property -dict {PACKAGE_PIN $package_pin IOSTANDARD $io_std} [get_ports $signal_name] } close $fp脚本思路是逐行读取 CSV把第一列信号名、第二列封装引脚号、第三列 I/O 标准取出来拼成set_property命令。用string trim清除空格用空行判断跳过无效行。实际项目里还需要根据信号方向补set_property DIRECTION以及针对差分对增加DIFF_TERM和LOC处理。我有一个习惯手工生成引脚约束后一定回到中英对照版里随机抽三到五个信号逐个对比 CSV 里的引脚号和 Bank 号。这一步看似多余但能挡住很大一部分因文本转换错位导致的低级问题。从那以后我每做一个新板子的引脚规划都会强制走一遍从 PDF 到 CSV 再到 XDC 的流程而不是对着屏幕手工抄引脚号。这套方法看起来多花二十分钟实际上省掉的是打样回来之后的飞线排查时间。希望帮到你。本文还有配套的精品资源点击获取
阅读完成 · 觉得有帮助?