FPGA 专家 19:FPGA 量产与烧录——产线、启动、追溯、供应链
本文是
fpga/专家层第 22 篇。启动配置概念见入门层 比特流与下载,安全见下一篇 FPGA 安全,产线自检与自动化回归见 专家 39 自动化测试,JTAG 链高级用法见 专家 27,版本管理见 入门 49 Git 与可复现工程 与 进阶 45 工程版本管理。
一、配置方式对比
| 方式 | 用途 | 量产适用性 |
|---|---|---|
| JTAG | 开发调试 | 不用(慢/手工) |
| SPI/QSPI Flash 主模式 | 上电自动配置 | 主流:预烧 flash 贴片 / 贴片后烧写 |
| SelectMAP 并行 | 快速配置/处理器控制 | 特定平台 |
| Zynq boot(QSPI/SD/eMMC) | boot.bin(FSBL+bit+固件) | SoC 主流 |
| 板载 MCU/PS 烧写 | 产线/现场升级 | 带处理器的板 |
二、产线流程

三、现场升级与可靠性
- A/B 双槽:升级写非活动槽,验签/CRC 通过再切换,失败回退 golden;
- multiboot golden 兜底;写时断电不影响活动槽(原子标志切换);
- 升级包签名认证(见安全篇);
- 电子标签记录型号/序列号/比特流版本,支持召回追溯。
四、选型与供应链
- 温度档:商用/工业/车规按环境选,成本递增;速度档按签核实际需要;
- 长周期产品:选成熟家族、查生命周期承诺、pin 兼容升级路径、二供预案;
- 关注 PCN/PDN 停产预警、LTB 备货;FPGA 交期长(10~30 周),提前备货。
五、配置链路工程:Flash、时序与启动可靠性
量产板上 FPGA 能否每次都可靠启动,是设计阶段就要锁定的物理问题。主模式链路:FPGA 上电后从外部 SPI/QSPI Flash 按固定时钟序列读取比特流,设计要核对 flash 型号支持列表、电压(1.8/3.3V bank)、数据线模式(单线/双/四)和配置时钟频率范围;flash 速度等级不足而配置时钟设太高,会在温度边界出现偶发配置失败。上电时序:配置 bank 电源必须在 FPGA 采样初始化配置前稳定,PROGRAM/INIT/DONE 引脚的上拉、模式引脚(M[2:0])的确定性电平要按手册设计;模式引脚悬空是经典的“十台里一台从 JTAG 启动”事故源。配置失败检测:INIT_B/STATUS 寄存器可读回错误类型(CRC、ID 不匹配、超时),板载管理 MCU 或看门狗应监测 DONE,失败时重新拉低 PROGRAM 重试若干次再告警,而不是停在黑屏状态。Flash 可靠性:工业现场 flash 数据保持以十年计,选型看数据保持和擦写寿命,供电异常写入要有写保护;比特流分区(golden/活动/升级槽)物理上放在独立扇区。
启动时间预算:大器件比特流可达几十到上百 MB,QSPI 宽度和时钟决定配置时间(从数十毫秒到数秒),产品有冷启动指标时要在选型期算清;并行 SelectMAP/板载处理器直配是加速手段。多 FPGA 板卡还要规划配置拓扑(串行菊花链、并行从 SelectMAP、JTAG 仅工厂)和总上电峰值电流(多片同时配置的电流浪涌,见 专家 23)。Golden 与 multiboot:flash 起始地址放永不升级的 golden 镜像(经充分验证的出厂版本),应用镜像放后续扇区;FPGA 支持 fallback 时,应用镜像 CRC/认证失败自动跳回 golden。这些机制是 A/B 升级(第八节)的硬件前提,必须在原理图和首版 PCB 评审就确认,不能等固件团队提出。
六、产线烧录方案与工厂流程集成
烧录方案决定节拍(tact time)和可追溯性,量产几百台以上时必须当作一条小产线来设计。方案一,flash 预烧后贴片:由 flash 原厂或烧录服务商在卷带/托盘阶段写入,SMT 后上电即配置;优点是节拍快、一致性好,缺点是 flash 与板的对应关系要靠标签/MES 维持(烧录批次要和板序列号绑定),且返修换 flash 时需要现场补烧。方案二,板级治具烧录:ICT/功能治具通过板载烧录口(预留的 JTAG/SelectMAP/测试点)在 SMT 后并行烧多块板,烧录时间计入工位节拍;大比特流常需 1~3 分钟,因此治具多通道并行是标配。方案三,板载处理器烧录:Zynq/MCU 板由产线网络把镜像下发到处理器再写 flash,可同时完成软件/固件/比特流三件套,天然带版本和序列号管理;适合有处理器且产线有网络的工厂。实际项目常组合:工厂模式允许治具写任意槽位,正常模式只接受签名升级包。
烧录内容不止比特流:golden+应用镜像、设备树/固件(SoC)、电子标签(EEPROM:序列号、MAC 地址、校准数据、物料版本)、安全器件的密钥/证书可能都要在产线注入;密钥注入尤其需要安全工位(HSM、审计日志、人员权限)。MES 集成:治具扫描板序列号后从 MES 拉取应烧版本(防止把 A 型号固件烧到 B 板)、烧完回传结果和校验值,任何一步失败该板被物理标记/软件锁定不能出货。边界情况:烧录中断电后重入(板子必须能再次进入烧录模式,不能变砖)、返修板的重烧流程、工程样机与量产镜像的区分(工程模式永久关闭项)。节拍计算要把擦除、写入、回读校验、BIST 全算上,并在产线爬坡阶段实测 95 分位时间而不是平均值。把烧录当作带版本、日志和异常恢复的“生产事务”设计,是实验室与量产工程的分界。
七、BIST 与产线测试设计:让坏板自己说话
产线测试的目标是以几十秒成本筛出焊接、物料和装配缺陷,FPGA 的可重配置性在这里是独特优势:可以使用一个与量产固件不同的专用测试比特流(test bitstream),把引脚、存储器、收发器全部置于最利于暴露缺陷的模式。存储器测试:DDR 跑训练+walking/读写模式(复用控制器示例测试),BRAM 启动内建 march;DDR 训练失败本身就是焊接/电源问题的强信号。IO 与焊接:治具把输出引脚按分组环回到输入,测试流跑 0/1/边沿 pattern,检测短路虚焊;JTAG 边界扫描(见 专家 27)覆盖无环回条件的引脚;LED、按键、风扇等外设走引导式交互或传感器自动判断。高速口:收发器近端 PMA/PCS 回环 PRBS 测误码(无需对端设备),有治具对连时做远端;光口读模块 EEPROM、测 TX_FAULT/RX_LOS;以太网口经治具交换机打流。模拟/电源:板载监控 ADC 读各轨电压(在治具精密电源读数对比下校准监控误差)、温度、时钟频率。
测试架构:上电后 FPGA 自动进入 BIST(由治具拉测试模式引脚或烧录镜像的测试槽触发),结果经最简单可靠的通道输出(UART 文本 + LED 码 + 治具探针点),每项给 PASS/FAIL 和错误码,治具汇总进 MES;BIST 应分级(10 秒快速档全测、更长的压力档抽测)。覆盖率与逃逸率管理:按客户现场退货做 DPMO 分析,漏掉的缺陷类型补进 BIST;BIST 本身要版本化并随固件回归。校准:某些板需要把校准常数(时钟频偏、高速口延迟、模拟前端增益)写入电子标签,测试流要包含激励—测量—计算—写入—复验五步。安全边界:测试镜像和测试模式必须有硬件关闭手段(熔丝位/模式引脚在外壳内),出货镜像不含未鉴权测试入口,否则等于给攻击面留门。好的 BIST 让“坏板判定”不依赖产线工人的经验,也为售后返修提供标准化诊断入口(测试体系总览见 专家 39)。
八、现场升级工程:A/B 槽、原子切换与回滚
设备出货后的固件升级(含比特流)是高风险操作,成熟设计把它做成一个不可能变砖的状态机。存储布局:flash 至少分三区——golden(出厂镜像,只在工厂或特殊授权下更新)、A/B 两个应用槽(一个当前活动、一个升级目标),外加一小块持久化元数据(当前槽号、镜像版本、尝试计数、回滚原因)。升级流程:接收升级包→验签和版本检查→写入非活动槽(写过程中活动槽照常运行,断电不影响)→整槽回读校验→原子提交(只在最后写一个带 CRC 的提交标志)→重启引导新槽。试运行与回滚:新镜像启动后必须在限定时间/条件内完成“健康确认”(应用层成功启动、关键链路 up、向引导器确认提交),否则引导器自动回滚到旧槽;这能抓住“镜像完好但配置/逻辑有问题”的情形,CRC 无法替代。掉电在任何阶段发生都要可恢复:写一半断电→槽内容无效→继续旧槽;提交标志写入瞬间断电→标志 CRC 判定为无效→保持旧槽。
SoC 设备的复杂度:Zynq/MPSoC 的升级单元包括 FSBL/PMUFW/ATF、u-boot、比特流、内核/设备树/rootfs,通常以整体发布包(manifest 列出各组件版本和签名)管理,rootfs 可用 A/B 分区或可恢复文件系统;比特流与驱动的版本握手(专家 12)必须覆盖升级后首次启动。网络升级:断点续传、服务端版本灰度、设备侧双 bank 内存在 XOR 升级的场景才需要,简单设备整包即可。遥测:记录升级成功率、回滚率和回滚原因,是评估固件质量的一手数据。安全:升级包强制签名(公钥固化在 golden 中)、防版本回退攻击(最低版本号存安全存储,见 专家 24)、升级服务有鉴权。把这套机制做成所有产品共用的平台组件而不是每项目重写,是嵌入式团队最重要的基础设施投资之一。
九、器件选型、等级与供应链工程
FPGA 选型在量产期的约束和原型期完全不同:它同时是技术、商务和生命周期决策。温度与速度等级:商用档(约 0~70/85℃)、工业档(-40~85/100/105℃)、车规档(带认证和更长生命周期承诺)价格逐级上升,按设备真实最高结温(功耗签核输出,见 专家 23)和认证要求选;速度档按时序签核的最低需求买,全系列买最快档是常见 BOM 浪费,但要注意慢档器件供给紧张时的替代策略(设计最好能用相邻速度档 timing 签核)。生命周期与供货:查厂商产品 longevity 计划、避免首发小型号和单一小众封装;长寿命产品(工业 10~15 年)在设计阶段就规划 pin 兼容升级路径(同封装更大容量/新速度档)和 IP 兼容性(硬核、收发器代际差异)。二供与国产化:跨厂商二供的真实成本很高(工具链、原语、时序、硬核生态全不同),务实做法是架构抽象层隔离厂商相关 IP 并至少在一个项目上验证过移植,而不是纸面二供;同厂商 pin 兼容替代是成本低得多的保险。
库存与交期:FPGA 是长交期器件(10~30 周常见),关键产品要按滚动预测备安全库存,停产预警(PCN/PDN)出来后评估 LTB(last time buy)数量,覆盖剩余生命周期+返修预估;电子标签记录器件批次有助于质量追溯。物料风险评审:避免依赖单一许可证 IP 或将停产 IP、单一货源 flash/电源;高速接口对配套电源和时钟也有寿命要求。成本反推架构:容量余量按签核后真实利用率加 15%~25% 预留即可,过度选大器件让每台设备永久承担差价;反过来资源卡到 95% 的选型会让后续任何功能迭代被迫改板,总成本更高。把器件选型作为架构评审的固定输出(型号/档位/预计寿命/替代路径/LTB 触发条件),供应链风险就不会在产品上市后才成为项目关键路径。
十、量产交付清单与质量闭环
把从样机到稳定供货的全部要素收成清单。配置与启动:flash 型号/模式/时钟已验证;上下电时序与配置失败重试;golden+A/B 布局;启动时间在温压角实测;DONE/状态可读。烧录产线:烧录方案与节拍实测;MES 版本防错;烧录中断可重入;MAC/序列号/校准/密钥注入流程;治具校准计划。测试:测试比特流与 BIST 项(DDR/IO/SerDes/电源/温度);治具环回与边界扫描;判定码和 MES 回传;逃逸缺陷分析机制;抽测仪表计划(眼图、时钟、热成像)。可靠性:温循/老化(burn-in)策略;SEU 等级与配置(专家 21);现场错误计数回传;返修诊断流程。安全:比特流加密认证;调试口关闭策略;升级签名防回退;产线密钥管理。供应:温度/速度档依据;生命周期状态;pin 兼容路径;二供验证状态;安全库存与 LTB 规则。文档:每板可追溯(序列号↔物料批次↔镜像版本↔校准数据);现场升级 SOP;返修换件重烧流程。
质量闭环的核心是数据回流:MES 测试数据、现场升级成功率、BIST 告警、SEU/ECC 计数、返修故障分类按序列号汇聚,定期复盘 Top 缺陷并反哺 BIST 覆盖和设计选型。样机团队常以为“功能通过=可量产”,实际从 10 块到 10000 块,新增工作全在流程、测试和供应链;把这张清单当作和原理图同等重要的交付物,产品才能在客户现场保持实验室里的表现。
十一、生产安全:密钥注入、防克隆与产线权限
比特流和设备身份的生产安全是供应链不可分割的一环。比特流保护:启用厂商支持的比特流加密(密钥在片上密钥存储,flash 中只存密文)和认证(防篡改/防降级),能同时阻止克隆(读走 flash 也无法在别的板上使用)和现场刷入未授权镜像;启用后还要禁用未加密配置路径并规划密钥丢失后的更换策略。密钥从哪来:每台设备的唯一密钥不应写死在固件里,而是在产线由 HSM 生成/派发,经安全工位写入,任何日志不记录明文;工厂网络要隔离、操作员分级、烧录动作有审计。设备证书/私钥(用于联网认证)同理,产线注入到安全存储或 PS 安全区。产线模式与正常模式必须硬件可区分(模式引脚、产线后熔断的使能位):产线模式允许治具写 flash/读调试信息,出货状态关闭 JTAG 或加锁,防止任何一块流出的板子保留后门。
防错料与防错版本:MES 在烧录前核对 BOM 型号与镜像映射,治具读 FPGA DNA/电子标签做双重校验;加密比特流与器件绑定机制(如启用)还需注意返修换器件后的重新注入流程。克隆之外的威胁:通过现有接口读取电子标签、篡改校准数据、替换 flash 芯片,防护包括标签写保护、关键数据签名和启动时一致性校验。供应链上游:器件采购渠道、代理商追溯、来料抽检( remark 翻新料风险)对安全产品同样重要。把“谁能在什么工位对设备做什么”画成权限矩阵并在 MES 强制执行,安全设计才不会在工厂环节被旁路。安全机制与 专家 24 的整体威胁模型应合并评审。
十二、典型量产事故复盘与预防模式
事故一,冬季批次启动率下降:某产品 flash 配置时钟按上限设置,低温下 flash 访问时间变长,约千分之几冷启动 CRC 失败,看门狗重试可恢复但启动时间超标;根因是只在常温验证启动。预防:配置时钟按温度角留裕量,高低温抽测纳入试产。事故二,升级后整批变砖:升级只写单槽镜像且无提交保护,现场网络中断导致半截镜像;预防是 golden+A/B 与试运行回滚(第八节)。事故三,MAC/序列号重号:烧录工作站本地计数器在重装后归零;预防是 MES 统一发号、写后回读、唯一约束。事故四,返修板泄露客户配置:设备含加密比特流但维修流程直接退回整块 flash;预防是返修 SOP 中先执行安全擦除、密钥失效流程。事故五,FPGA 断供停线:仅按当期价格选了交期最长的封装;预防是长生命周期选型、安全库存和 pin 兼容替代路径(第九节)。事故六,高速口产线误码率偏高:治具环回用的线缆质量差,坏板误判与好板误杀并存;预防是治具 BOM 受控、每日金板校验。
把这些事故归纳为预防模式,其实就是量产工程三原则:变异可见(温度、批次、器件、镜像版本全部记录和测量)、操作可恢复(任何中断电的产线/升级步骤都能重做或回退)、默认安全(出货状态关闭一切未鉴权入口)。新产品在试产阶段做一次 FMEA(失败模式与影响分析),把本行业同类事故逐条过一遍,成本远低于现场召回。
十三、一页纸总结:从样机到规模交付
量产 FPGA 与做样机的区别可以压缩为四条主线。配置可靠:主模式 flash 启动、模式引脚确定、温度角内配置时钟留裕量、失败可重试、golden+multiboot 兜底。产线自动化:预烧或治具/处理器烧录三选一按节拍定,烧录—回读—BIST—标签—MES 串成一条带校验的事务流,测试比特流覆盖 DDR/IO/SerDes/电源,坏板不出厂。现场可演进:签名升级包、A/B 双槽、原子提交、健康确认回滚、掉电安全、版本遥测;组件级版本握手防止比特流与软件错配。供应可持续:温度/速度档按签核证据选择,生命周期承诺、pin 兼容路径、二供验证、长交期库存和 LTB 规则在架构评审即确定。配套的组织动作是建立 MES 数据回流:良率、逃逸、升级成功率、现场告警按序列号分析,持续改进 BIST 覆盖和设计裕量。把这四条主线在 NPI(新产品导入)计划里排进里程碑,FPGA 产品才能以可预测的成本和质量从十台走到一万台。
十四、NPI 流程与跨部门协作:量产不是硬件团队的事
FPGA 产品从样机到量产,最大的隐性风险是各部门按各自节奏工作而没有统一的新产品导入(NPI)闸门。设计发布闸门要冻结:原理图/BOM、flash 与启动模式、烧录接口、测试模式引脚、电子标签地址空间、镜像格式与签名方案;任何后期变更都可能让治具、MES、结构件同时返工。**工程样机(EVT)**重点验证功能和高速接口,同时就要做第一次烧录节拍实测和 BIST 原型——很多团队拖到 DVT 才发现治具接口没预留。**设计验证(DVT)**要覆盖温压角启动、长时老化、上下电循环(数千次)、配置失败恢复、升级掉电注入、ESD/EMC 预测试;这一阶段产出 SOP 和判定码。**生产验证(PVT)**用真实产线、真实操作员和目标节拍跑小批量,验证 MES 防错、良率爬坡、治具一致性和返修流程,之后才放大量产。每个闸门定义进入/退出条件和不合格品处理路径,靠会议纪要而不是测试报告推进,是延期和现场事故的共同前兆。
跨部门接口要显式化:硬件团队给制造工程师输出治具需求(哪些引脚环回、电源从哪供、测试点位置)和 BIST 规格;软件/固件团队给 MES 团队镜像包格式、版本查询命令和升级回滚接口;质量团队定义序列号规则、抽检比例和 DPMO 目标;采购提供交期预警和替代料路径;客服/售后要能凭序列号查到出厂镜像、校准数据和升级历史。文档最小集包括:产线烧录与测试 SOP、治具操作与每日校验(用金板验证治具本身没坏)、故障码对照表、返修重烧流程、现场升级指南。还要为“工程样机流入现场”建立制度:工程镜像必须在启动画面/电子标签明确标识且默认不能通过量产升级流程,避免测试设备被当成产品部署。NPI 的本质是把设计的可制造性、可测试性、可追溯性在图纸冻结前解决;这些能力无法在产线上临时补出来。再补充一个容易被忽视的细节:治具和测试软件本身也是产品,需要版本、校准、备件和验收。高速环回治具的损耗、继电器寿命、探针磨损都会改变判定边界,应有每日金板(已知良好板)校验和周期校准;烧录服务器/软件要有离线应急预案,否则产线会因为一台电脑故障停线。完整的 NPI 视角是:设计、工艺、测试、信息系统、供应链和售后在同一套版本与序列号体系内协同,任何一环只做到“实验室可行”,都会在千台量级变成真实成本,且这类成本通常不会出现在原理图上,却直接决定量产爬坡的良率和交付节奏,也是样机团队最容易低估的隐性工程投入,值得在项目计划里单独排期和配置责任人,确保从样机阶段就有制造与质量团队参与。
常见坑对照
| 坑 | 后果 | 正确做法 |
|---|---|---|
| 量产靠 JTAG 逐块烧 | 效率低易出错 | flash 主模式+治具并行 |
| 升级无回滚机制 | 掉电变砖 | A/B 槽+golden 兜底 |
| 升级包不验签 | 刷错/恶意固件 | 签名+CRC 校验 |
| 全用最快速度档 | BOM 成本高 | 按时序签核选档 |
| 无 BIST 设计 | 坏板流出 | 设计期规划产线自检 |
| 忽视器件停产 | 断供停线 | LTB+pin 兼容/二供预案 |
| 无序列号追溯 | 召回无法定位 | 电子标签+MES 记录 |
相关与延伸
安全:FPGA 安全(加密/认证);版本:工程版本管理、FPGA CI/CD(专家层后续)。 测试:专家层《FPGA 自动化测试》、bring-up 清单;可靠性:SEU 防护。
总结
量产核心是'配置自动化+坏板筛得出+升级不翻车+供货不断':FPGA 量产一律走 SPI/QSPI Flash 主模式(上电自配置),比特流由 flash 预烧贴片或治具/板载 MCU 产线烧写,JTAG 只用于开发;每块板烧录后自动跑 BIST(DDR 训练校验、收发器回环误码、接口环回、传感器),结果连同序列号/版本写电子标签上 MES,把坏板挡在产线。现场升级用 A/B 双槽+golden multiboot(升级写非活动槽、验签 CRC 通过再原子切换、失败回退旧版,断电不变砖)并做升级包签名认证。选型上温度档(商用/工业/车规)和速度等级按签核实际需要选,长周期产品查生命周期承诺、pin 兼容升级路径、二供预案,盯停产预警并 LTB 备货——FPGA 交期 10~30 周,供应链管理和成本控制与设计同等重要。