DFT是什么?

DFT是design for test(可测性设计)的缩写,就是在芯片设计过程中,加入可测性逻辑。有的公司把该职位归到前端设计,有的归到中端实现。

DFT职位大多分布于规模较大的数字IC设计公司里,因为大公司对芯片品质要求高,而且规模越大,芯片越贵,DFT就越复杂越重要。DFT主要是通过在芯片中加入可测性逻辑,等芯片制造出来,在ATE(AutomaticTestEquipment,自动测试仪)设备上通过可测性逻辑对芯片进行测试,挑出有制造缺陷的芯片并淘汰掉,留下没有制造缺陷的好芯片。这里需要强调下,DFT只负责挑出制造缺陷,至于逻辑缺陷那是前端设计工程师和验证工程师的职责,DFT工程师也鞭长莫及。

为什么需要DFT对芯片设计如此重要?

大家知道,芯片制造工序非常复杂,有几十上百道工序,比如说掺杂,氧化,光刻,金属互联等等,有化学的,物理的,机械的各种加工过程,先进工艺已经进入7nm的量产阶段,一根头发丝直径约0.1毫米,1nm是十万分之一的头发丝直径,这么精细的尺寸上去制造芯片,制造过程中由于粉尘颗粒,工艺偏差等因素,难免会引入制造缺陷,导致晶体管短路或断路,然后不能正常工作。DFT技术其实就是把DFT逻辑加入到芯片设计中,然后等芯片制造回来,通过事先加入的DFT逻辑对芯片进行体检,挑出体格健壮的芯片,保证送到客户手上的芯片是没有故障的。大家知道,越知名的公司对产品品质的把控越严格。比如以品质著称的德国和日本公司,对产品品质有非常苛刻的要求。这里引入一个概念 --DPPM(DefectivePartsPerMillion),它代表每百万片里有缺陷芯片的数量,这些缺陷芯片指的是通过ATE测试但本身有缺陷的芯片,又称为“逃逸片”,“逃逸片”流到了客户手上,会造成很大损失。知名的芯片公司,有很低的DPPM要求,特别是医疗类或汽车类芯片,要求DPPM几乎为0。因为对于这类芯片,一旦“逃逸片”逃逸片到了客户手上,会严重威胁人身安全。

不同阶段挑出故障片的成本几乎是成倍增加的,比若说,在芯片制造好的wafer上用探针测试,这个阶段测试成本最低,有“逃逸片”,到了封装阶段,封装后会再次对芯片进行测试,想挑出这些缺陷芯片,考虑到封装成本和筛选难度,会造成成倍的损失,如果封装阶段还是没有挑出这些缺陷芯片,客户把芯片集成到了板级系统上,这个时候如果发现芯片缺陷,可能需要更换整块板级系统。如果板级测试阶段还是没有发现缺陷芯片,到了成品阶段,成品到了客户手上,发现芯片故障,再返厂更换,又会成倍增加损失。

所以DFT如此重要,越高的测试覆盖率,越能显著的降低DPPM,越节省后续各个环节的纠错成本。

DFT工程师主要做什么?

DFT设计周期很长,从RTL代码阶段介入,需要和前端工程师一起规划scan模式下的时钟和复位网络,接着插入DFT逻辑,比如Scan chain,Mbist,Boundary Scan等,然后用ATPG,Mbist,Boundary Scan工具产生测试向量,仿真验证测试向量。仿真又分不带时序信息的仿真和带时序的后仿。仿真过程中肯定会碰到问题,然后debug。仿真通过后,将测试向量交付给ATE测试工程师, 然后等芯片流片回来,会把这些测试向量送上ATE机台对芯片进行测试,然后debug 测试failure。等芯片测试通过,良率OK,才算设计周期结束。可以说DFT是芯片设计实现流程中持续时间最长的。

DFT职位的主要工作是:1.将DFT技术,常见的如Scan,Mbist,Boundary Scan技术,实现到设计中去。2.产生测试向量并验证测试向量。3.协助后端实现工程师完成test模式的时序收敛。4.协助测试工程师进行机台调试,debug 测试failure,提高芯片良率。

DFT的附带技能:1.需要对RTL设计熟悉,因为需要将产生的DFT模块集成到现有的RTL代码中,有的时候还需要自己设计一些DFT用的小模块。2.还要对整个设计的时钟复位网络熟悉,因为需要和前端设计工程师讨论如何改进时钟和复位网络,达到尽可能高的测试覆盖。3.还要熟悉DFT 模式下的时序约束,协助设计实现工程师产生时序约束的sdc并完成DFT模式下的时序收敛。4. 精通tcl,perl,makefile等脚本语言,因为Tcl是和工具直接交互的语言, 用makefile实现自动化的DFT 流程,让工作更有效率,perl用来处理报告结果,提取有效信息。

DFT技术水平主要体现在搭建更高效的DFT实现流程,实现很高的芯片测试覆盖率,减少测试向量的数量,很丰富的机台测试后结果debug经验,从而实现很高的芯片良率,降低PDDM。

DFT技术介绍和所用工具

DFT技术主要包括Scan,Mbist和Boundary Scan这三个方面。

1.Scan技术又包括扫描链插入和基于扫描链结构的ATPG(AutomaticTestPatternGeneration,自动测试向量生成)技术。

扫描链的构建,首先得基于扫描结构的触发器。下图中,左边是普通的D触发器,右边是扫描结构的触发器,通过在数据Dpin上加入一个二输入多路选择器(MUX),就引入了一条新的数据输入路径SI,MUX的选择端又SE控制,所有触发器的SE会接到一起,并连到芯片PAD上统一控制。


然后前一级触发器的Qpin接后面一级触发器的SIpin,中间直连或者经过简单的缓冲器或反相器,这样所有触发器首位相连,就构成了扫描链,扫描链的起点和终点最终都会接到PAD上,结构如下,绿色部分就是扫描链结构。


芯片的主要工作部分是组合逻辑,组合逻辑实现运算,而时序逻辑让这些组合逻辑运算出的数据踩上节拍,整齐的按计划传送。触发器和触发器之间的组合逻辑千变万化,相当于修了许多条分支小路,每条路上还有红绿灯,数据通行效率低下,而扫描链结构相当于给触发器之间建了另一条高速公路,在SE(shiftenable)为高的情况下,可以在时钟驱动下,很快速的通过PAD把数据加载到各个扫描触发器上。任何一个组合逻辑的输入要么接到前面的触发器上,要么接到输入PAD上,而组合逻辑的输入最终会接到后面的触发器的Dpin或者连到输出PAD上。所以,等扫描链加载上数据后,组合逻辑就有了激励,然后在SE为低时,时钟跳动一次,就可以将组合逻辑的最终响应捕获到后面的触发器里,然后再把SE切到高,把捕获的数据shift到输出PAD上观测,和无缺陷情况下的期望值比较,以此来判断触发器本身和触发中间的组合逻辑有没有制造缺陷。有缺陷的地方会出现短路和断路等故障。ATPG工具就是基于这样的扫描链结构,根据算法推算出应该加载到扫描链上的激励序列和期望序列,这样的序列称为测试向量(pattern)。

扫描链插入,业界常用的是synopsys的DFT Compiler,mentor的tessent shell也有串scan chain的引擎。测试向量生成常用Mentor的tessent工具或者synopsys的TetraMax,向量产生完,还要用仿真工具VCS,Questa sim去做测试向量的仿真验证,仿真分不带时序信息的门级仿真和带时序信息的后仿真。主要目的是用仿真器模拟机台测试,去验证测试向量是否正确。

  1. **Mbist(MemoryBuilt-inSelfTest)**是为了测试芯片中ram和rom IP的,测试原理是在设计中插入内建自测试逻辑,靠内建自测试逻辑产生激励,对ram 和rom进行读写,然后在内建自测试逻辑中去比较测试结果。所以不依赖测试机台也能完成自测试。Mbist结构如下,紫色的左右logic部分和RAM部分代表原有的功能逻辑。Mbist工具会加入选择器(mux)将输入控制截获,然后通过左上角绿色的Bistcontroller产生测试向量,对RAM进行读写,然后将读的结果送到右上角的红色comparator,比较测试结果和期望值,以此来判断Ram本身到底有没有制造缺陷。


Mbist逻辑插入和向量生成常用Tessent LV flow和近几年推出的的Tessent shell flow。Pattern验证还是用VCS,Questasim等仿真工具。

  1. Boundary scan主要是用来测芯片和芯片间互联的,因为芯片焊接到PCB上时容易发生虚焊,靠boundary scan电路可以测出这种故障。

BoundaryScan基于IEEE 1149.1协议,主要逻辑有TAPcontroller和boundaryScanchain构成,标准接口有TCK,TDI,TMS,TRSTn(可选)和

TDO这个五个。每一个芯片自己的TDI和TDO之间有一条boundaryScanchain,前一个芯片的TDO会接到下一个芯片的TDI上。所有芯片的TCK,TMS,TRSTn会接到一起,结构如下所示。


Boundary scan的原理是在pad输入和输出信号上插入boundary scan cell,相当于在pad信号进入core logic的地方或者core logic往pad走的地方安排了哨兵,然后把各个pad接口上的这些哨兵通过boudary scan chain(类似电话线)连起来,通过chain逻辑使得前一个芯片的输出pad产生激励,后一个芯片的输入pad去观测响应,然后把响应结果通过chain shift出来然后和预期值比较,来判断芯片互联有没有问题。如下图所示,BC代表boundaryscancell。

转自:https://www.pianshen.com/article/3494272268/

DFT技术介绍和所用工具相关推荐

  1. Frida-Dexdump 脱壳工具下载使用以及相关技术介绍

    Frida-Dexdump 脱壳工具下载使用以及相关技术介绍 文章目录 Frida-Dexdump 脱壳工具下载使用以及相关技术介绍 前言 一.查壳.反编译.APK工具推荐 二.查壳 1.方式1 2. ...

  2. 人脸检测与美颜技术介绍(OpenCV)

    人脸检测与美颜技术介绍 目录 人脸检测与美颜技术介绍 人工智能(AI) 人工智能.机器学习与深度学习的关系 机器学习与深度学习的区别 深度学习简介 深度学习模型 深度学习的历史 深度学习的工具 神经网 ...

  3. core java文献翻译_外文翻译--Java技术介绍(适用于毕业论文外文翻译+中英文对照).doc...

    毕业设计(论文)外文资料翻译 学 院: 信息工程学院 专 业: 计算机科学与技术 姓 名: XXXXXXXXX 学 号: XXXXXXXXX 外文出处: Cay s.Horstmann Core Ja ...

  4. RAGE来咯~ megatexture技术介绍

    07年写过一篇id software 的megatexture介绍.那时候是基于clipmap技术.制作了<Quake War>之后,id software升级了megatexture技术 ...

  5. 微软网络访问保护 (NAP) 技术介绍

    本专栏中有关 Windows Server"Longhorn"的预发布信息可能会有所变动. 目前,各种规模的组织都面临的最大安全威胁之一就是网络外围背后的恶意设备.任何组织,不论其 ...

  6. WMI技术介绍和应用——总结(完)

    断断续续的,历经三年将WMI这个主题给写完了.记得最开始时接触该技术,是因为传统获取CPU序列号的方法总是出错.于是接触了这种已经很老的技术.本着打破砂锅问到底的想法,我决定稍微研究一下,结果越来越深 ...

  7. WMI技术介绍和应用——Instance/Method Provider

    在<WMI技术介绍和应用--事件通知>一文中,我们提到了提供者(Provider)这个概念.我们还是要引入WMI的结构图(转载请指明出于breaksoftware的csdn博客) 我们在1 ...

  8. 推荐系统中所使用的混合技术介绍

    from:http://blog.csdn.net/u010140338/article/details/45014307 推荐系统中所使用的混合技术介绍 在推荐系统实际运用中,各种混合技术是其中一项 ...

  9. TIBCO Rendezvous — 技术介绍

      http://blog.csdn.net/tiercel2008/article/details/6799952 TIBCO Rendezvous - 技术介绍 1.1.1.      TIBCO ...

最新文章

  1. windows server backup
  2. 关闭窗体后,进程仍然在运行的问题重现与解决
  3. linux hibernate suspend 区别,实现Linux休眠(sleep/hibernate)和挂起(suspend)
  4. php中魔术方法的应用
  5. maven 按业务拆分模块_Maven模块拆分方法
  6. 如何将零填充到字符串?
  7. centos7默认字体_如何更换CentOS(Linux)系统默认字体?
  8. Linux IPC udp/ip socket 编程
  9. Linux nmon 命令
  10. linux网络配置putty,PuTTY配置详解
  11. 迪普Web应用防火墙产品线
  12. 求导计算机在线,求导计算器
  13. 有道手机词典(安卓版)离线和发音包…
  14. 安卓手机突然很卡_为什么你的安卓手机越用越卡,真是内存不够?终于找到原因了!...
  15. linux如何删除ntfs分区,Ubuntu中增添NTFS分区的方法
  16. Google用AI技术为Allo增加表情符号建议按钮
  17. MySQL数据库报错汇总(持续更新中)
  18. 怎么建一个新的微信群?微信小技巧
  19. 蒲丰投针计算机模拟ppt,蒲丰投针实验模课件.doc
  20. 内蒙古大学计算机学院周建涛,刘靖(内蒙古大学副教授)_百度百科

热门文章

  1. 8种锅炉结垢清洗除垢法比较
  2. 2020.10.17--PS--淌泪表情、翻白眼、摇晃脑袋
  3. 循环神经网络(三)(常用循环神经网络,LSTM、GRU,文本生成)
  4. 汽车HMI设计中不可或缺的灵魂——品牌文化
  5. 局部路径规划器teb_local_planner详解5:关于 robots models
  6. 教你如何锁定移动硬盘盘符
  7. STARTING POINT TIER 1 Responder
  8. 梦幻江湖java_梦幻江湖BT增值版
  9. 美食杰项目(轮播图)
  10. 在Univerisity of Houston访学一年,信用卡刷的biubiubiu,所以要找一个适合自己的记账软件