前面的博客有简单介绍过DFT的知识,本文再啰嗦两句
什么是DFT?
提到DFT,大部分人想到的是离散傅里叶变换(discrete fourier transform。缩写为DFT),但是在IC界,DFT的全称是design for test
指的是在芯片设计阶段即插入各种用于提高芯片可测试性(包括可控制性和可观测性)的硬件逻辑,通过这部分逻辑,生成测试向量,达到测试大规模芯片的目的
design——实现特定的辅助性设计,但要增加一定的硬件开销
for test——利用实现的辅助性设计,产生搞笑经济的结构测试向量在ATE上进行芯片测试
为什么要做DFT?
从1958年Jack Kilby发明了第一只包含一个双极性晶体管开始,集成电路经过了半个多世纪的发展。
芯片的制程工艺越来越小,数字芯片的规模越来越大,测试成本进一步增加,甚至超过芯片功能部分本来的成本。如何在芯片设计的过程中考虑测试的问题,成为当前芯片设计很重要的一部分。
测试已经成为集成电路设计和制造过程中非常重要的因素,它已经不再单纯作为芯片产品的检验、验证手段,而是与集成电路设计有着密切联系的专门技术,与设计和制造成为了一个有机整体。可测性设计(DFT)给整个测试领域开拓了一条切实可行的途径,目前国际上大中型IC设计公司基本上都采用了可测性设计的设计流程,DFT已经成为芯片设计的关键环节。
测试和验证的区别:
验证(Verification)的目的是检查设计中的错误,确保设计符合其设计规范和所期望的功能;
测试(Testing)则是检查芯片的加工制造过程中所产生的缺陷和故障;
DFT的核心技术:
1:扫描路径设计(scan chain)
扫描路径法是一种针对时序电路芯片的DFT方案,其基本原理是时序电路可以模型化为一个组合电路网络和带触发器(Flip-Flop,简称FF)的时序电路网络的反馈。
scan包括两个步骤,scan replacement和scan stitching,目的是把一个不容易测试的时序电路编程用以测试的组合电路。
2:内奸自测试(Bist)
内奸自测试(BIST)设计通过在芯片的设计中加入一些额外的自测试电路,测试时只需要从外部世家必要的控制信号,通过运行内奸的自测试硬件和软件,检查呗测试电力的缺陷或者故障,和扫描设计不同的是,内建自测试向量一般是内部生成的,而不是外部输入的,内建自测试可以简化测试步骤,而且无需昂贵的测试仪器设备(如ate设备),但是它增加了芯片设计的复杂性。
3:JTAG
jtag(joint test action group,联合测试工作组)是一种轨迹标准测试协议,主要用于芯片内部测试。
JTAG的基本原理是在期间内部定义一个TAP(test access port,测试访问口)通过专用的jtag测试工具对内部节点进行测试。jtag测试允许多个期间通过JTAG接口串联在一起,形成一个JTAG链,能实现对各个期间分别测试。
4:ATPG
ATPG(Automatic Test Pattern Generation)自动测试向量生成是在半导体电器测试中使用的测试图形向量由程序自动生成的过程。测试向量按顺序地加载到器件的输入脚上,输出的信号被收集并与预算好的测试向量相比较从而判断测试的结果。
DFT工程师的岗位职责:
#:芯片级DFT设计与集成,包括SCAN,MBIST和JTAG
#:负责DFT测试向量的自动生成以及仿真
#:与逻辑设计公测后给你是紧密合作,提高DFT测试覆盖率
#:与产品工程师和测试工程师紧密合作,调试并解决在测试机上事变的DFT测试向量
#:芯片及综合
#:与后端工程师紧密合作,完成芯片级timing signoff
#:芯片级形式验证