我觉得这个问题就是为我量身定制的!作为前Teradyne ATE工程师,现AMD DFT+数字IC设计工程师,以亲身项目经验,来谈谈这个问题。

先来说一下完整的测试流程,再针对题主的两个问题回答一下。

一、芯片测试概述

芯片测试分两个阶段,一个是CP(Chip Probing)测试,也就是晶圆(Wafer)测试。另外一个是FT(Final Test)测试,也就是把芯片封装好再进行的测试。

CP测试的目的就是在封装前就把坏的芯片筛选出来,以节省封装的成本。同时可以更直接的知道Wafer 的良率。CP测试可检查fab厂制造的工艺水平。现在对于一般的wafer成熟工艺,很多公司多把CP给省了,以减少CP测试成本。具体做不做CP测试,就是封装成本和CP测试成本综合考量的结果。

一片晶圆越靠近边缘,die(一个小方格,也就是一个未封装的芯片)出问题的概率越大。

随着芯片规模的越来越大,测试也更为复杂。ATE(Automatic Test Equipment)也就应运而生。  目前ATE公司最大的是Teradyne和爱德万,NI目前也在做这一块,并且很多小公司都在用NI的仪器。国内的公司知名的有长川科技。

ATE作为集成了众多高精密的Instruments的设备,价格自然不菲。一台泰瑞达的高端Ultra Flex可以买上海的几套房!

二、芯片测试流程

在测试之前,当然要有ATE设备,CP测试需要Probe Card, FT测试需要Load board, Socckt等。来一张全家福吧。最下边左一是Load Board(又叫DUT Board), 左二是Probe Card.

然后由芯片设计公司来提供Design Spec和Test Spec(datasheet)来制定Test Plan,开发测试程序,建立测试项。

Test Plan示意图:

一般测试通常包含以下测试项:

DC parameters Test

主要包含以下测试,Continuity测试(又称open/short test)主要是检查芯片的引脚以及和机台的连接是否完好。其余的测试都是检查DC电气参数是否在一定的范围内。

Continuity Test

Leakage Test (IIL/IIH)

Power Supply Current Test (IDDQ)

Other Current/Voltage Test (IOZL/IOZH, IOS, VOL/IOL, VOH/IOH)

LDO,DCDC 电源测试。

以下这张图就是open/short test原理示意图,DUT(Device Under Test)的引脚都挂有上下两个保护二极管,根据二极管单向导通以及截至电压的特性,对其拉/灌电流,然后测试电压,看起是否在设定的limit范围内。

整个过程是由ATE里的instruments PE(Pin Electronics)完成的。

  • Digital Functional Test

这部分的测试主要是跑测试向量(pattern),pattern则是设计公司的DFT工程师用ATPG(auto test pattern generation)工具生成的。

pattern测试基本就是加激励,然后捕捉输出,再和期望值进行比较。

与Functional Test相对应的的是Structure Test,包括Scan,Boundary Scan等,Pattern是根据芯片制造过程中产生的的defects和fault 模型来产生的,详细介绍参见下文。


应用Structure Test能更好的提高覆盖率。

当然还有Build-in-Self-Test (BIST)主要是针对memory进行的测试。

  • AC Parameters Test

主要是AC Timing Tests,包含Setup Time, Hold Time, Propagation Delay等时序的检查。

  • ADC and DAC Test

主要是数模/模数混合测试,检查信号经过ADC/DAC后的信号是否符合期望,这个地方涉及到的信号知识比较多。总体来说包含静态测试和动态测试。

Static Test – Histogram method (INL, DNL)

Dynamic Test – SNR, THD, SINAD

除了以上常规测试项,根据芯片的类型不同可能会进行不同的测试,比如RF测试,SerDes高速测试。Efuse测试等。

一个基本的测试流程图如下:


测试流程图

所有的测试项都是在ATE上执行的,一般会执行几秒到几十秒,因为ATE是根据机时来付费的(很少有海思,苹果这种土豪公司一次买数十台),所以缩短测试时间变得尤其重要!另外一般芯片在量产测试的时候,都是百万颗或者千万颗,每个芯片节省一秒,总体来说缩短的时间还是很可观的。

在测试执行完成后,ATE会输出一个Datalog,以显示测试结果。对于测试pass或fail测试项的不同,也会对其进行分类(Bin),最后由Handler分拣。

datalog 示意图:

以上就是芯片的测试完整流程。再放两张芯片测试的封测厂/实验室的环境图:

封测厂需要穿静电服
图为Advantest测试机台

至于题主的两个问题:

1、BGA 这样的封装,应该不能多次焊接吧,那又如何上电测试呢?

对于封装好的芯片,通常测试是不需要进行焊接的,它和ATE机台的连接方式是通过socckt和Load board。

socckt也就是放芯片的底座,长这样:

不同大小,不同封装类型的芯片,socckt也不同,有专门的做这个的厂商。

先把芯片放到socckt里,再把socckt放到load board上,load board再放在机台上。有的load board很重,对很多女同志来说搬起来是有些辛苦啊!

一个load board上面支持放多个socckt,我们称其为site。示意图如下,共6个site,可以对6个芯片同时进行测试:

2、那么多的功能,真的要写软件一样一样测吗?很费时间吧

在这里先说明一下,芯片的逻辑功能是有IC验证工程师来完成的,是在流片之前,并不依赖于测试。

而芯片测试里的function test/structure test是跑pattern, 测试的是在制造过程中芯片是否有缺陷,从而影响功能/性能。

所以测试工程师所需要的关心的就是把pattern都跑通,如果跑不通可能会和DFT工程师一起进行diagnosis。

测试工程在写测试项的时候,也不是要一行一行代码去写,通常ATE机台的嵌入式软件都有提供测试项的Template, 只需要填写参数就好。另外针对一些大客户的成熟测试项,也会开发一些测试模板,留好必要的参数接口,这样就很方便应用到其他的芯片测试上。

写在最后:

一个完备的的芯片测试不是靠芯片测试工程师一个人完成的,而是需要设计工程师,DFT工程师的支持,以及由可靠的EDA工具,优秀的硬件支撑等多方因素共同决定的。

芯片测试是极其重要的一环,有缺陷的芯片能发现的越早越好。在芯片领域有个十倍定律,从设计-->制造-->封装测试-->系统级应用,每晚发现一个环节,芯片公司付出的成本将增加十倍!!!

所以测试是设计公司尤其注重的,如果把有功能缺陷的芯片卖给客户,损失是极其惨重的,不仅是经济上的赔偿,还有损信誉。因此芯片测试的成本也越来越高!

在 IC 行业,每一个环节都要十分小心,一次流片的费用在数十万美金,一天的ATE机台使用几百美金。而一个芯片的利润可能只有几美分。这也是IC行业投资周期长,收益少的原因,基本前几年都在亏钱。幸运的是国家越来越重视芯片了,期待国内IC发展能越来越好。

以上,共勉!

作者:温戈
链接:https://www.zhihu.com/question/20584576/answer/1538640891
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

点赞(151) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部