可测性设计(DFT)介绍-入门篇

designfortest
写在前面
随着芯片的制程越来小(5nm),芯片的规模越来越大 , 对芯片的测试也就变得越来越困难 。
而测试作为芯片尤为重要的一个环节 , 是不能忽略的 。 DFT也是随着测试应运而生的一个概念 , 目前在芯片设计中都离不开DFT 。
本文先对DFT做一个全面的介绍 , 旨在让大家了解DFT的中的基本概念 , 后续文章会对每一个DFT相关的部分做深入的介绍 。
1.什么是DFT?
提到DFT , 大部分人想到的应该是离散傅里叶变换(DiscreteFourierTransform , 缩写为DFT) , 嗯…,笔者大学被信号与系统这门课虐的不轻 。 但是在IC界 , DFT的全称是DesignForTest 。
指的是在芯片原始设计中阶段即插入各种用于提高芯片可测试性(包括可控制性和可观测性)的硬件逻辑 , 通过这部分逻辑 , 生成测试向量 , 达到测试大规模芯片的目的 。
Design--实现特定的辅助性设计 , 但要增加一定的硬件开销
Fortest--利用实现的辅助性设计 , 产生高效经济的结构测试向量在ATE上进行芯片测试 。
可测性设计(DFT)介绍-入门篇
文章图片
2.为什么要做DFT?
从1958年JackKilby发明了第一只包含一个双极性晶体管开始 , 集成电路经过了半个多世纪的发展 ,
芯片的制程工艺越来越小 , 数字芯片的规模越来越大 , 测试成本进一步增加 , 甚至超过芯片功能部分本来的成本 。 如何在芯片设计的过程中考虑测试的问题 , 成为当前芯片设计很重要的一部分 。
测试已经成为集成电路设计和制造过程中非常重要的因素 , 它已经不再单纯作为芯片产品的检验、验证手段 , 而是与集成电路设计有着密切联系的专门技术 , 与设计和制造成为了一个有机整体 。 可测性设计(DFT)给整个测试领域开拓了一条切实可行的途径 , 目前国际上大中型IC设计公司基本上都采用了可测性设计的设计流程 , DFT已经成为芯片设计的关键环节 。
可测性设计(DFT)介绍-入门篇
文章图片
3.“测试”与“验证”的区别
验证(Verification)的目的是检查设计中的错误 , 确保设计符合其设计规范和所期望的功能;而测试(Testing)则是检查芯片的加工制造过程中所产生的缺陷和故障 。
4.DFT的核心技术
1)扫描路径设计(ScanDesign)
扫描路径法是一种针对时序电路芯片的DFT方案.其基本原理是时序电路可以模型化为一个组合电路网络和带触发器(Flip-Flop , 简称FF)的时序电路网络的反馈 。
Scan包括两个步骤 , scanreplacement和scanstitching , 目的是把一个不容易测试的时序电路变成容易测试的组合电路 。
可测性设计(DFT)介绍-入门篇
文章图片
2)内建自测试(Bist)
内建自测试(BIST)设计技术通过在芯片的设计中加入一些额外的自测试电路 , 测试时只需要从外部施加必要的控制信号 , 通过运行内建的自测试硬件和软件 , 检查被测电路的缺陷或故障 。 和扫描设计不同的是 , 内建自测试的测试向量一般是内部生成的 , 而不是外部输入的 。 内建自测试可以简化测试步骤 , 而且无需昂贵的测试仪器和设备(如ATE设备) , 但它增加了芯片设计的复杂性 。
可测性设计(DFT)介绍-入门篇
文章图片
3)JTAG
JTAG(JointTestActionGroup , 联合测试工作组)是一种国际标准测试协议(IEEE1149.1兼容) , 主要用于芯片内部测试.
JTAG的基本原理是在器件内部定义一个TAP(TestAccessPort , 测试访问口)通过专用的JTAG测试工具对内部节点进行测试 。 JTAG测试允许多个器件通过JTAG接口串联在一起 , 形成一个JTAG链 , 能实现对各个器件分别测试.