如何验证3D NAND的多层存储单元?
解读
面试官抛出该问题,核心想考察三点:
- 是否理解3D NAND“多层”带来的独特失效机理(如层间耦合、WL-to-WL干扰、垂直孔工艺变异);
- 能否把传统平面NAND的验证方法体系化地扩展到Z轴维度,并给出量化闭环;
- 是否具备“协议-设计-工艺”三角协同思维,能在验证方案里兼顾JEDEC协议、RTL、版图、乃至测试机台的可测性。
回答时切忌只罗列UVM case,而要体现“从缺陷模型→激励策略→观测手段→sign-off标准”的完整链路,并给出国内主流流片厂(YMTC、CXMT、长存)实际在用的验收指标。
知识点
- 3D NAND物理结构:垂直通道(VC)、栅极层(Word-Line)、阶梯(Staircase)、Dummy WL、Backside Source Line。
- 多层特有缺陷:层间短路/开路、VT分布尾翼、层依赖的编程噪声(Layer-Dependent Program Noise)、上下邻层读干扰。
- 验证维度:功能(读写擦正确性)、可靠性(P/E Cycle、Retention、Read Disturb)、性能(tPROG、tR、tERS层间差异)、功耗(层依赖的峰值电流)。
- 关键算法:On-Die ECC(BCH/LDPC)、LSA(Layer-Specific Adaptive)编程脉冲、Dynamic SLC Cache、Page/Block Replacement。
- 验证手段:
- 软件层:UVM-SV/UVM-SystemC混合平台,配合JEDEC ONFI/ Toggle2.0 VIP;
- 硬件层:FPGA原型(Xilinx VU19P 3D堆叠板)+ 自研层间干扰注入板;
- 工艺层:与TD(Technology Development)共建“层映射”数据库,把TCAD缺陷概率反向标注到RTL;
- 形式验证:对“层地址-物理地址”重映射模块做SEC(Sequential Equivalence Check),防止阶梯布线带来的译码死角。
- Sign-off指标:
- 功能:100 % 层间地址遍历 + 10^12 次随机扰动无 mismatch;
- 可靠性:125 °C 24 h Bake后,每层BER < 1e-5,经LDPC纠正后残留误码 < 1e-15;
- 性能:最顶层与最底层tPROG差 < 8 %,tR差 < 3 %;
- 功耗:同并发下,层间峰值电流差 < 5 %,满足国内客户<300 mA系统级限值。
答案
验证3D NAND多层存储单元,我采用“缺陷驱动、分层闭环”的六步法:
- 缺陷建模:与工艺同事共建3D缺陷库,把TCAD仿真得到的“层间短路电阻分布”“垂直孔颈缩概率”抽象为RTL可识别的fault primitive,用SystemVerilog covergroup量化到±3σ。
- 测试平台分层:
- Layer-0:ONFI VIP发起标准命令;
- Layer-1:自研“Z-Axis Fault Injector”在PHY层动态插入层间耦合电容、电阻,精度0.1 pF/1 Ω;
- Layer-2:在闪存转换层(FTL)监控ECC解码迭代次数,实时标记异常层。
- 激励策略:
- 垂直方向:固定Page地址,循环扫描0~95层,每层执行“Program→Read→Erase→Retention→Read Disturb”五连击;
- 水平方向:在同一层内做Word-Line Walking 1/0,相邻层施加相反数据模板,最大化耦合;
- 随机约束:层地址、数据模板、温度、电压三维联合约束,确保corner空间覆盖率 > 99 %。
- 观测与比对:
- 功能:Golden Model使用C++行为模型,每层独立参数化VT分布,RTL输出与其按Page逐bit比对;
- 可靠性:后台脚本实时读取LDPC解码寄存器,统计每层BER,触发门限后自动加跑1K P/E Cycle;
- 性能:用FPGA原型抓取Ready/Busy信号,计算每层tPROG/tR,与Spec差值>5 %即报警。
- 回归与收敛:
- 每晚基于国产64核服务器并行跑2000条case,使用Jenkins + Prometheus回传覆盖率;
- 对“层地址译码”模块采用Formal SEC,24小时证明无反例;
- 连续三班回归无新缺陷即进入“Sign-off Review”,由设计、工艺、测试三方联合签字。
- 交付物:
- 《3D NAND多层验证报告》:含缺陷分布图、覆盖率矩阵、性能/功耗/可靠性三维散点;
- 《层间干扰测试模式》:固化成ATE向量,供无锡华岭、上海伟测等国内测试厂直接上机;
- 《Z-Axis Fault IP》:封装为VIP,后续项目复用,缩短验证周期30 %。
通过以上流程,我在上代128层1.2 Tb产品中,于MPW前发现两层间耦合导致的Read Retry率偏高问题,推动设计在阶梯区增加Dummy WL,最终使客户端Retry率从1.2 %降到0.05 %,保障一次流片成功。
拓展思考
- 当层数迈向200+,垂直深宽比>70,TCAD缺陷概率呈指数上升,如何在不牺牲仿真速度的前提下,把工艺缺陷实时反标到UVM?是否考虑用AI Emulator(如国产“墨芯”S4000)做在线回归?
- 国内QLC方案逐步量产,每层存储4 bit,VT分布达16阶,层间差异会放大噪声;验证平台是否需要引入“模拟前端+数字后端”协同采样,把Analog VT分布直接dump到UVM scoreboard?
- 若未来采用“混合键合”将CMOS外围电路与3D NAND阵列做Wafer-on-Wafer堆叠,接口变成Direct Cu-Cu。验证关注点将从传统ONFI转向微凸块开路、热膨胀失配,如何重构验证IP?