只读分享解决方案文档调试&解决方案📅 2026-09-21🔖 Rev 1.0⏳ 29天有效(至 2026-10-31)
🔧解决方案&应用市场分析 -> 调试&解决方案 -> 存储_量产问题排查 -> 高温老化后启动失败_数据保持_量产排查

高温老化后启动失败_数据保持_量产排查

生成时间 2026-09-28 13:34:56 有效期至 2026-10-31 23:59:59(29天有效(至 2026-10-31))

高温老化后启动失败 · 数据保持 量产排查

编制日期 2026-09-21 | 版本号 Rev 1.0

XTX 芯天下 · FAE 现场技术文档 | NAND / NOR Flash 高温老化(HTOL / HTSL / HTRB)后启动失败与保持力 | 2026-09 版

技术事实核查纪律(执行前必读)

测试标准编号(JESD22-A108 / A103 / A104 / A113、AEC-Q100)、Arrhenius 模型与加速因子公式以 JEDEC 公开文档与公开教材为准;具体 Ea、温度档、时长以器件 datasheet 与项目规格书为准。

  • 本文讨论的是高温老化 / 回流 / 长期存储后的数据保持力失效,与「烧录器找不到型号」「烧录成功但不开机(板级)」是两件事。判别要点:烧录器能烧、能校验通过,但老化 / 回流后板子起不来,才是本文范围。
  • 浴盆曲线、Arrhenius 加速因子、Bake 三档时长均为机制与工程估算方法,具体数值(Ea、加速倍数、等效年限)随工艺与器件高度相关,动手前逐条核对 datasheet / 可靠性报告。
  • 涉及解除读保护 / 量产保护的操作在多平台会触发全片擦除,属不可逆动作,见相关专篇的危险操作提示。
读回比对
唯一能定性保持力的动作
老化前后 dump 哈希一致 → 不是保持力问题
6 类
老化后失效模式归类
启动失败 / ECC 不可纠 / 坏块 / 读干扰 / retention / Vth 漂移
150°C
产线 Bake 拦截温度
168h / 500h / 1000h 三档保留筛选
Arrhenius
加速因子建模基础
AF = exp[(Ea/k)(1/Tuse − 1/Tstress)],Ea 以工艺为准
装板实启
唯一有效验收动作
烧录器校验通过 ≠ 老化后主控能读

一句话结论:高温老化(HTOL / HTSL)后启动失败,根因绝大多数是 数据保持力衰减——浮栅电荷随时间流失,使编程态电压落入读判决窗口之外, Boot 区或关键数据读不出 / ECC 纠不回。判定的第一动作永远是「老化前后读回比对」: dump 一致就转查板级(虚焊 / 电源 / 复位),dump 变了才按保持力方向定位与拦截。

这份文档解决什么

解决的是NAND / NOR Flash 经历高温老化、回流或长期存储后,上电启动失败、关键数据读错或 ECC 不可纠 这一类问题的定位与根治方法。覆盖 SPI NOR / SPI NAND / PPI NAND / SD NAND / eMMC 上电启动依赖的存储保持力场景。 全文按「机制 → 总流程 → 六类失效模式 → 速查 → 防复发 → 结案」组织,第 9 章可直接翻查,第 10 章是可直接落地的参数卡与抽检 SOP。

第 1 类 · 启动失败
Boot 区读不出(数据保持力不足)
HTOL/HTSL 后浮栅电荷流失,Boot 扇区关键 bit 翻转,主控读镜像校验失败或读不到有效镜像。判定关键:老化前后读回 dump 比对,差异落在 Boot 区且 ECC 已不可纠。
高发动作:关键分区无多副本 / 无强 ECC
第 2 类 · ECC 不可纠错
charge loss 超过 ECC 能力
单页 bit 错误数随老化上升,超出 BCH/LDPC 设计纠错上限 → 读返回 ECC_FAIL。多发生在长期高温存储或多次回流后的批次。
高发动作:ECC 强度按常温设计、未留老化余量
第 3 类 · 坏块扩散
初始坏块继续扩散
老化让边缘单元越过阈值,初始坏块标记之外的块陆续失效,可用块数下降、坏块表覆盖不全。
高发动作:坏块表未随老化刷新 / 未留 spare
第 4 类 · 读干扰累计
连续读放大错误
反复读同一页对邻页产生轻微电荷扰动,长期累计使邻页 Vth 漂移、误码率上升。在老化后 margin 收窄的器件上更易越过 ECC 边界。
高发动作:读密集场景未限流 / 未定期搬移
第 5 类 · ECC retention 失效
写入校验通过、老化后读失败
出厂写入 + 校验时 ECC 通过,但电荷在存储期流失,到上电读取时已无法纠回。典型「烧录器能过、装板后不启」。
高发动作:只做写入时校验、不做老化后回读
第 6 类 · Vth 漂移
read margin 减小
各类机制叠加使编程/擦除分布互相靠拢,read margin 普遍收窄;区分老化失败与工艺缺陷(早期失效 vs 随机失效)靠浴盆曲线与加速模型。
高发动作:把工艺缺陷误判为老化、或反之

怎么用这份文档

  1. 先定性:老化前后读回比对。保留老化前镜像 dump 与哈希,失效后重新读回,差异分布(bit / 页 / 区)决定方向。
  2. 用第 2 章总流程收敛:先区分「板级问题」还是「保持力问题」,再判是老化失败还是工艺缺陷(浴盆曲线 + 加速模型)。
  3. 按失效画像翻对应类目:启动失败看第 3 章、ECC 不可纠看第 4 章、坏块看第 5 章、读干扰看第 6 章、retention 失效看第 7 章、Vth 漂移看第 8 章。
  4. 一次只改一个变量:升温条件、保持时长、ECC 强度、关键区多副本、spare 预留,每次只动一处重新验证。
  5. 用装板实启闭环:任何对策的最终判定,以「老化后装板跑通完整启动 + 关键功能 + 一次断电重启」为准。

1. 问题本质:数据保持力的物理基础

「老化后不启」这句话在现场被用得太泛。它可能是板级虚焊、电源热漂、复位不稳, 也可能是 Flash 里存的数据真的变了。本章先把现象还原成物理机制:讲清 Flash 是怎么「记住」数据的、 为什么高温会让它「忘记」、以及数据保持力失效会以哪几种形式暴露出来。 把机制讲清楚,后面六章的排查动作才有锚点。

1.1 闪存是靠「浮栅里的电荷」记事

无论是 NOR 还是 NAND,基本存储单元的本质都是一颗浮栅晶体管:在控制栅与衬底之间夹了一层 被氧化层包围、与外界绝缘的浮栅(Floating Gate)。往浮栅里注入电子 = 编程态(高阈值电压 Vth), 把电子放掉 = 擦除态(低 Vth)。主控读一个 bit,实际是量这个点位的 Vth 落在判决窗口的哪一侧。 数据能不能长期保持,取决于浮栅里的电子能在氧化层包围下待多久。

① 浮栅电荷损失机理(charge loss)tunnel oxide 漏电控制栅 Control Gate浮栅 FG隧穿氧化层P 型衬底 Substrate电子泄漏电荷随时间流失电荷流失 → 浮栅电子数下降 → 编程态 Vth 降低;漏电速率由氧化层质量与温度决定,温度越高越快。② 编程态 Vth 分布漂移(charge loss)read margin 收窄Vth 电压 →擦除态(低 Vth)编程态 · 老化前编程态 · 老化后Vread判决线③ 高温老化后数据保持力失效的三类物理机制与 JESD22 / AEC-Q100 对应浮栅电荷损失Charge Losstunnel oxide 漏电电子自浮栅逸出编程态 Vth 降低热载流子退化HCIP/E 热载流子造缺陷加速后续漏电多次 P/E 后更明显介质击穿 / 陷阱TDDB · Trap氧化层经时击穿 TDDB陷阱填充致窗口不稳读干扰与 retention 恶化一句话机制:高温老化的本质是「让浮栅里存着的电荷加速流失」。流失到一定程度,编程态电压落入读判决窗口之外,Boot 区或关键数据就读不出来了。
图 1 · 数据保持力的物理基础:浮栅电荷损失与 Vth 漂移
判定保持力的唯一硬动作

浮栅里的电荷看不见摸不着,唯一能定性它是不是流失的办法,是把器件在某个时刻读出来的数据存一份(dump + 哈希), 隔一段时间或经过老化后再读一份比对。两者一致,说明保持力没问题,要转去查板级; 两者不一致且错误集中在编程态,说明电荷真的在流失——这才是本文的保持力方向。

1.2 三类电荷流失机制

图 1 右下面板把高温老化后保持力失效的物理机制拆成三类,它们常常叠加发生:

机制英文 / 缩写对保持力的影响典型表现对应章节
浮栅电荷损失Charge Losstunnel oxide 微弱漏电,电子从浮栅逸出,编程态 Vth 降低关键 bit 翻转、Boot 区读不出第 3、7 章
热载流子退化HCIP/E 时热载流子注入氧化层造缺陷,加速后续漏电多次 P/E 后 retention 加速恶化第 4、7 章
介质击穿 / 陷阱TDDB · Trap氧化层经时击穿、电荷陷阱填充/去陷阱使窗口不稳read margin 收窄、读干扰协同恶化第 6、8 章

1.3 老化测试标准家族(先对齐术语)

「高温老化」在产线上常被笼统叫成 bake / burn-in,但可靠性测试里它们是几份不同的 JEDEC 标准, 应力条件与要暴露的失效完全不同。先对齐术语,后面才不会把「没加偏压的存储老化」和「加偏压的寿命试验」混为一谈。

标准名称应力条件主要暴露的失效本文对应关系
JESD22-A108HTOL 高温工作寿命85°C / 125°C + 动态偏压(通常 1000h)偏压下的经时失效、HCI 退化第 4、6、8 章
JESD22-A103HTSL 高温存储无偏压、150°C(通常 1000h)纯热致电荷流失(保持力)第 3、7 章
JESD22-A104温度循环 TC−65 ~ +150°C 反复循环封装/互连疲劳、虚焊(板级)第 3 章板级鉴别
JESD22-A113预处理 PC吸湿 + 回流模拟回流对器件的损伤、分层第 3、7 章
AEC-Q100汽车级应力Grade 0~3 温度档 + HTOL/TC/PC 组合车规全温域可靠性全篇
汽车级温度档

AEC-Q100 把车规器件按工作环境温度分成 Grade 0 ~ 3(另有 Grade 4 商用): Grade 0:−40 ~ +150°C;Grade 1:−40 ~ +125°C;Grade 2:−40 ~ +105°C;Grade 3:−40 ~ +85°C。 高温老化后启动失败在汽车、工业场景最敏感,因为使用温度本就接近加速应力的低端,保留量本就最薄。

1.4 失效是怎么「长」出来的

电荷流失不是开关式的,而是一个随时间连续累积、随温度指数加速的过程:刚老化完可能还能读, 放几天后逐渐越过 ECC 边界,再后来越过读判决窗口。这也是为什么很多「老化后不启」在现场表现为 偶发、时好时坏、随放置时间恶化——它处在失效的边缘带。理解这一点,才不会把第一次上电「侥幸成功」 误判为已解决。

一句话机制

把「老化后不启」拆成三个可证伪的命题逐个排除: ① 数据有没有变(老化前后读回比对)、 ② 变化是不是电荷流失导致(错误集中在编程态、随温度/时长恶化)、 ③ 是老化失败还是工艺缺陷(浴盆曲线 + 加速模型,第 8 章)。 任何一例现场问题,都必须先回答这三问再动手。

2. 方案总览:故障定位总流程

前面把物理机制讲清了,这一章给一张可直接照做的总流程图和一张 「老化失败 vs 工艺缺陷」对比表。现场最贵的错误,是在没做读回比对的情况下就凭直觉换料号, 或反过来把真正的工艺缺陷当成老化放过。把总流程跑通,后面六章只是在某一分支里做细分。

2.1 故障定位总流程

整张图只有一条主干:先定性(读回比对)→ 再分叉(板级 / 保持力)→ 再细分(老化 / 工艺)→ 落到类目。 其中「读回比对」是承上启下的唯一硬动作,没有它后面全是在猜。

老化后上电启动失败老化前后读回 dump 并比对哈希保留老化前镜像,失效后重读同一物理地址dump 是否一致?判据:差异分布 + ECC 状态是一致转板级:虚焊 / 电源 / 复位 / 主控与温度循环 TC、回流相关,非保持力否 / 变确认保持力问题错误集中在编程态,随温度 / 时长恶化区分 老化失败 vs 工艺缺陷浴盆曲线(早期/随机/磨损)+ Arrhenius 加速模型按失效画像翻第 3 ~ 8 章启动失败 / ECC 不可纠 / 坏块 / 读干扰 / retention / Vth 漂移流程铁律:没有「老化前后读回比对」这一步,就不算完成定性——它直接决定你是在修板子还是在修料号。
图 2 · 高温老化后启动失败的故障定位总流程
最容易跳过的就是第一步

现场常因为「这颗料号一直好好的、肯定是板子问题」而直接去查虚焊,结果在板级兜一圈发现没问题, 回过头读 Flash 才发现 Boot 区早变了。请把老化前 dump 存档写进量产 SOP(第 10 章), 失效时第一步就是比对,不要等出问题才想起来没留基线。

2.2 老化失败 vs 工艺缺陷:怎么区分

这两类看上去都是「老化后坏了」,但根因、拦截手段、责任归属完全不同。 老化失败是器件在加速应力下走到了寿命边缘(wear-out 区),工艺缺陷是少数早期失效(infant mortality 区)。 区分靠失效率曲线、与应力的单调关系、以及失效分布的集中度。

维度老化失败(wear-out)工艺缺陷(早期失效)区分手段
失效率曲线落在浴盆曲线磨损区,递增落在早期失效区,递减图 3 浴盆曲线
与应力关系温度 / 偏压 / 时长越强,坏得越多与应力无单调关系,可能常温也坏Arrhenius 加速模型
失效分布集中在编程态、集中在少数区块零星、随机地址、跨区块老化前后读回比对
批次性整批按比例失效,可统计个别零散,难统计比例同批对照未老化样品
拦截手段产线 Bake 保留筛选 + ECC 余量来料筛选 + 批次隔离追溯第 10 章 SOP
责任归属设计余量不足 / 选型温度档偏低来料 / 晶圆 / 工艺异常FA + 原厂追溯
一张表记牢

老化失败 = 应力越强、越久、坏得越多越集中 → 靠 Bake 拦截 + 留 ECC / 多副本余量;
工艺缺陷 = 零星、与应力无单调关系、可能常温也偶发 → 靠来料筛选 + 批次隔离 + 追溯晶圆 / 工艺。

2.3 六类失效模式在流程里的落点

总流程走到「保持力问题」之后,按下面这张映射直接翻到对应章节。每一类都给了一个决定性判据, 用它快速证伪其余几类,比把六章全读一遍快得多。

失效模式决定性判据(成立即锁定)落点章节第一动作
启动失败Boot 区 dump 变化 + 主控读镜像校验失败 / 读不到第 3 章重读 + 多副本启动
ECC 不可纠错读返回 ECC_FAIL,单页 bit 错超设计上限第 4 章降 ECC 负载 / 升强度
坏块数增加坏块表之外的新坏块随老化出现第 5 章刷新坏块表 + 留 spare
读干扰累计反复读后邻页误码率上升第 6 章读限流 + 定期搬移
ECC retention 失效写入校验通过,老化后读取失败第 7 章老化后回读门禁
Vth 漂移编程/擦除分布靠拢,read margin 普遍收窄第 8 章提余量 / 换 Grade
总流程的一句话纪律

任何一例「老化后不启」,都必须先回答:dump 变没变?集中在编程态吗?随应力单调恶化吗? 三问全答完,方向自然就清楚了——不要一开始就动料号或动板子。

3. 第 1 类:启动失败(Boot 区读不出)

六类里最高发、也最容易被误判的一类。主控上电后第一件事就是从 Boot 介质读启动镜像, 这段数据一旦因电荷流失而翻转,主控要么校验失败放弃启动、要么跳到错误地址卡死。 它的表象和「板级虚焊 / 电源不稳」几乎一样,所以必须用读回比对把它和板级问题切开。

3.1 机制:Boot 区是保持力最敏感的地方

Boot 区通常写在固定的低地址扇区,且长期不被刷新——它从烧录完成到上电启动之间, 可能经历回流、高温老化、产线搁置数月。这段静止期正好是电荷流失的窗口。 更糟的是 Boot 区一旦出错,主控完全没有兜底(不像用户数据可以重传),所以「读不出」直接等于「起不来」。

失效率浴盆曲线(Failure Rate vs 使用时间)区分老化失败与工艺缺陷时间 / 使用时长 →失效率① 早期失效infant mortality,递减② 随机 / 偶发失效稳定使用期,恒定低位③ 磨损失效wear-out,递增工艺缺陷 → HTOL 早期已筛除老化失败 → 落在磨损区用法:同批老化后失效若集中、失效速率随应力单调上升 → 偏 wear-out(保持力);若零星、与应力无单调关系 → 偏早期失效(工艺 / 来料),两者拦截策略不同。曲线形状为原理示意,具体失效率与拐点随时间/工艺变化,以可靠性报告为准。
图 3 · 失效率浴盆曲线:早期 / 随机 / 磨损三区

3.2 怎么判定是这一类

用第 2 章总流程的「读回比对」落在这里的具体判据:

判据成立(是这一类)不成立(转查)说明
Boot 区 dump 变化差异集中在 Boot / 低地址扇区差异分散全片定位差异地址是关键
主控读镜像失败校验失败或读不到有效镜像镜像完整但起不来后者是板级 / 主控问题
错误在编程态翻转多为「1→0」(电荷流失)翻转随机、含擦除态随机翻转偏工艺缺陷
随温度恶化高温读失败率高于常温全温一致与应力无单调 → 工艺缺陷
高危误判

把「Boot 区读不出」当成「主控没起来」去查电源和复位,在板级兜一圈没结果,最后换主控平台—— 这是现场最典型的南辕北辙。只要没做老化前后读回比对,任何关于根因的结论都不可信。

3.3 立即动作(装板现场五分钟)

  1. 重读确认:同板多次上电,看是「每次都失败」还是「偶发」——偶发说明处在失效边缘带(margin 不足)。
  2. 读回 dump 比对:用烧录器 / 主控把整片读回,和老化前哈希比对,定位差异是否落在 Boot 区。
  3. 看 ECC / 校验状态:读返回的是 ECC_FAIL 还是「校验通过但内容错」——后者说明还不到 ECC 边界,是判决窗口问题。
  4. 同批对照:拿一片未老化的同批样品读回,确认未老化时一致,坐实是老化导致。
  5. 隔离批次:先隔离该批次,不要继续上线,等根因与余量评估完成。

3.4 根治动作

根治动作做什么为什么有效注意
Boot 区多副本同一镜像写 2~3 份,主控依次尝试一份坏还有备份,避免单点失效占空间,需主控支持
提高 ECC 强度关键区用更强 ECC / 缩短码长把边缘 bit 错在越过判决前纠回提速写 / 读开销
提高保留档选更高温度 Grade 或留更大余量从源头拉长电荷流失到失效的时间成本上升
回流次数管控限制烧录到贴片 / 老化的回流次数每次回流都是一次额外热应力见第 7、10 章
一句话根治

Boot 区是「只读一次、错一次就完」的敏感区,根治靠余量:多副本 / 强 ECC / 提高保留档, 而不是等它坏了再救。具体档位与副本策略以器件 datasheet 与项目可靠性目标为准。

4. 第 2 类:ECC 不可纠错(charge loss 超过 ECC 能力)

ECC 是闪存对抗位错的最后一道防线,但它有上限。常温下写入时校验通过的页, 随电荷流失,单页 bit 错误数缓慢上升;一旦超过 ECC 设计纠错能力,读操作就会返回 ECC_FAIL—— 数据「在但读不出」。这一类在多次回流、长期高温存储的批次上最典型。

4.1 机制:错误率随老化单调爬升,越过 ECC 边界即失败

可以把它想成一条随时间上升的曲线(ECC 关口): 单页 bit 错误数(t) ≈ 初始错误 + charge_loss_rate · t。 当这条曲线穿过 ECC 设计上限,页从「可纠」变「不可纠」。老化把这条曲线的斜率放大了数倍 (Arrhenius 加速),所以很多页在加速应力后集中越界。

Arrhenius 加速模型:AF = exp[(Ea/k)(1/Tuse − 1/Tstress)]Ea 以工艺为准加速因子 AFAF = exp[ (Ea/k) · ( 1/Tuse − 1/Tstress ) ]Ea = 激活能(eV,随工艺与机制)k = 玻尔兹曼常数 ≈ 8.617×10⁻⁵ eV/KTuse / Tstress = 使用 / 应力温度(K)示例(Tuse = 55°C = 328K)Ea=0.7eV:125°C → AF≈22Ea=0.7eV:150°C → AF≈168150°C/168h ≈ 数年至十年级保留量** 仅示意,实际以 Ea 与器件报告为准应力温度 Tstress(°C) →AF(对数)↑851051251501e11e21e3Ea=0.6Ea=0.8Ea=1.0用法:已知 Ea 与应力温度,把「加速小时数」换算成「等效使用年数」,反推 Bake 该烤多久、选型温度档留多少余量。Ea 是整套估算的命门,必须用器件可靠性报告里的实测值。
图 4 · Arrhenius 加速模型:应力温度 → 加速因子

4.2 BCH vs LDPC:老化后的纠错能力差异

这是选型与参数设计时要算清楚的一笔账。两类 ECC 的纠错哲学不同: BCH 是硬判决(只看 0/1),强度固定、开销小,适合 NOR 与中低密度 NAND; LDPC 是软判决(用置信度),纠错能力强很多,是当代 TLC/QLC NAND 的标配, 代价是解码复杂度与延时。

维度BCH(硬判决)LDPC(软判决)老化后含义
判决方式只看 0/1 硬比特用置信度软信息LDPC 能纠「将翻未翻」的软错
典型强度1/4/8 bit 每 512B~1KB数十 bit 每 1KB(多迭代)LDPC 上限高得多
开销小,spare 占用少大,需存额外校验位高密度 NAND 才划算
解码延时低较高实时启动需评估
适用介质NOR、中低密 NANDTLC/QLC 等现代 NAND越密越依赖 LDPC
老化余量靠强度档位硬留靠软信息多吃边缘错LDPC 边缘带更宽
老化后为什么 LDPC 更扛

charge loss 造成的错误往往是软错误——单元还没完全翻,只是 Vth 离判决边界近了。 LDPC 能用软信息(这个 bit 是「勉强 1」还是「确定 1」)多纠回一些;BCH 只看硬判决, 一旦软错误变成硬翻转就无能为力。所以同等设计下,LDPC 在老化边缘带的余量明显更大。

4.3 ECC 强度设计与保留余量

ECC 强度(每多少字节能纠多少 bit)不是越大越好——它吃掉 spare 区、拖慢读写。 正确做法是按老化后的预期错误率留余量,而不是按常温设计:

设计项常温设计(易踩坑)按老化留余量建议
ECC 强度刚好覆盖常温错误率覆盖老化后预期峰值 + 余量以老化后回读数据定档
码长长码长省 spare关键区用短码长提强度Boot/参数区优先
保留位spare 几乎用满留一定比例给坏块扩展见第 5 章
重写周期无(存多久算多久)定期刷新 / 搬移长存储场景必做

4.4 判定与动作

步骤动作判据 / 注意
判定读返回 ECC_FAIL 或 ECC 纠错位数逼近上限区分「可纠但位数高」与「不可纠」
定量统计单页错误位分布,看是否过设计上限用老化前后回读建立基线
立即降低单页负载 / 提高读取电压余量(若支持)临时提升读 margin
根治增强 ECC / 升保留档 / 定期刷新以可靠性报告与实测为准
一句话根治

「ECC 不可纠」不是 ECC 不够强,往往是按常温设计的余量被老化吃光了。 根治靠提高保留档 / 增强 ECC / 缩短重写周期,并用老化后回读门禁(第 7、10 章)把越界页提前揪出。