3、测试流程介绍:CP测试、FT测试、测试程序加载、测试项分类归纳总结

做HS400量产测试这些年,我最大的感受是:流程就像流水线,每一站都有它非做不可的理由。CP、FT、程序加载、测试项分类,这四个词几乎天天挂在嘴边。但说实话,真正能把它们串起来讲清楚的人,不多。今天我就按自己实际产线上的经验,把这一套掰开揉碎了说说。

HS400 量产测试流程框架 来料检验 测试程序加载 CP 测试 FT 测试 测试项分类 良率统计 核心要点 CP测试筛选晶圆级坏die,FT测试验证封装后性能,程序加载是测试的“大脑” 测试项分类直接影响测试时间与良率分析效率

3.1 CP测试与FT测试:一对“孪生兄弟”,使命不同

很多刚入行的工程师容易把CP和FT混为一谈,觉得都是上电跑向量嘛。其实差远了。

CP(Chip Probing,晶圆测试)是在晶圆还没切割的时候进行的。探针卡直接扎到pad上,测的是裸die的电性能。为什么要在这一步测?说白了,就是早点把坏die揪出来。封装和测试都是成本,一个坏die送去封装,等于白花钱。我见过最夸张的案例——某批次晶圆边缘有划伤,CP阶段良率掉到60%,如果没有CP,后道FT根本承受不住那个浪费。

FT(Final Test,最终测试)是封装完成之后做的。这时候芯片有外壳、有引脚,测试条件更接近真实应用。FT会覆盖所有datasheet上的参数,包括极限电压、温度、频率等。CP只测功能基本项和部分DC参数,FT则要“全检”。

我个人的经验是:CP 像入学考试,FT 像毕业答辩。入学考试只筛掉完全不合格的,毕业答辩才决定你能不能拿到学位。

下表把两者的关键区别列出来,你直接参考:

对比项 CP 测试 FT 测试
测试阶段 晶圆级(未切割) 封装后
接触方式 探针与pad接触 Socket与引脚接触
测试项数量 较少(功能+部分DC) 完整参数(功能+AC/DC+极限)
测试速度 快(平行测试多) 相对慢(串行IO)
主要目的 早期筛选坏die 确保成品符合规格
良率影响 影响封装成本 直接决定出货良率

避坑提示: 我曾经碰到过一个批次,CP良率很高(95%+),但FT良率只有70%。查了几天发现,CP测试时探针压力不够,导致接触电阻过大,测出来的数据偏“好”。后来我强制要求每5000次扎针校准一次接触电阻,再没出过这种事。

3.2 测试程序加载:测试的“大脑”不能搭错线

测试程序就是告诉测试机“怎么测、测什么、标准是多少”的指令集。一个HS400芯片的测试程序可能包含几十个pattern文件、上百个test class、一堆datalog设置。程序加载这一步看似简单,实际坑很多。

程序加载流程大致分三步:

  1. 编译与校验:把C/C++/Python写的测试代码编译成机器码,并校验格式。我用的是Advantest T2000平台,每次改程序后必须跑“dry run”(空跑),否则真上片子时可能直接烧坏探针。
  2. 装载到测试机:通过以太网或GPIB把程序下载到测试机本地硬盘。注意网络延迟!我曾经遇到过网线接触不良,下载到一半中断,导致程序不全——测试结果全是FAIL。
  3. 资源分配:分配DIB板、socket、site数量、pattern内存等。这一步最容易忽略的是pattern内存上限。HS400的pattern很大,如果不预先算好,跑着跑着就报“pattern memory full”,整批次报废。

嗯,这里要注意:每个测试机的程序存储路径、命名规则、版本号管理一定要严格。我习惯用YYYYMMDD_vX.XX格式,并且在程序头加入CRC校验,防止传输过程出错。

警告: 切勿在生产环境中直接修改正在运行的测试程序!你可能只是想改一个limit值,但保存时可能影响到其他站点。正确的做法是:停掉该lot,修改,重新校验,然后重新加载。

3.3 测试项分类归纳:从“测什么”到“为什么测”

HS400的测试项少说也有两百多项。如果全部平均用力,测试时间根本承受不住。你必须学会分类归纳,把资源用在刀刃上。

我一般把测试项分成四大类:

  • 功能测试(Functional Test):验证芯片能不能按照设计正常工作。比如写一个寄存器、读回来对不对。这类测试跑得快,但覆盖率高。
  • DC参数测试(DC Parametric):测电压、电流、电阻等。比如VDD漏电流、IO高低电平阈值。这类测试最耗时,但良率敏感度最高——我90%的失效都是DC参数先暴露的。
  • AC参数测试(AC Parametric):测时序、频率、建立保持时间等。HS400的DDR接口部分就是典型例子,时序稍微偏一点就挂。
  • Iddq测试(静态功耗电流):专门测芯片休眠时的电流。很多人觉得Iddq不重要,其实它对工艺缺陷非常敏感。我曾经靠Iddq抓出一批氧化层漏电的wafer,避免了后续FT的灾难。

分类之后,你还得排序。我的策略是:先跑最有可能暴露问题的项,再跑费时的项。举个例子,先跑VDD短路测试(最快),如果直接短路,后面的测试全停,省时间。这叫“stop on first fail”。

经验之谈: 我曾经接手一个项目,测试时间长达12秒/颗。通过改变测试项顺序和合并同类项,硬是压到了6.8秒。方法很简单:把多个需要相同电源电压的测试项合并成一个“测试块”,减少电压切换时间。这一招你试试看,往往有奇效。

3.4 避坑指南:那些年我踩过的雷

讲几个真实案例,每一条都是用工时和晶圆换来的教训。

  • CP测试中探针清洁频率问题:我刚开始做量产时,以为探针扎几千次再清洁没事。结果某次测到一半,接触电阻突然飙升,导致整批die被判FAIL。后来我规定每2000次清洁一次,并自动记录探针接触电阻的变化趋势。
  • FT测试中socket磨损:HS400封装脚数多,socket很容易弹力下降。我曾在量产中发现某个site一直报开短路,换了新socket就好了。从此我在程序里加了socket接触次数计数器,超过10万次自动报警。
  • 测试程序版本打架:有一次新来的工程师误把开发版程序当成量产版上传,结果测试标准改了,整批良率从92%掉到15%。幸好及时发现,回滚版本,重新测试。这之后我强制要求程序版本必须经过双重签名——测试工程经理和NPI工程师各签一次。

流程清楚了,后面的事就好办。下一节我们会深入讲测试硬件——loadboard和socket的设计要点,那才是真正决定测试稳定性的根基。

本章小结: CP测试保底,FT测试保质量,程序加载保安全,测试项分类保效率。四个环节环环相扣,任何一个出问题都会直接冲击良率。