SCANChain测试的基础入门

SCANChain测试的基础⼊门
rockeric
集成电路的⽣产异常复杂,是⼈类制造业向微观世界发展的巅峰前沿。任何⽣产偏差,设计漏洞甚⾄⼀粒PM2.5都会导致芯⽚出现各种缺陷,事实上⽣产过程中的造成defect的颗粒⼤⼩远远⼩于PM2.5 。Scan Chain(扫描链测试)作为数字集成电路测试的重要⽅法之⼀,可以有效的筛选出坏⽚,提⾼产品质量。不同意常规性的从测试,scan test测试触⾓伸⼊到芯⽚的任何⾓落,测试⽬标为电路中的标准单元,包括组合及时序逻辑。
扫描链测试可以很简单。
作为结构性测试的主要⼿段(structural test),DFT⼯程师需要注意的是电路的可测性(⾜够的控制点和观测点)甚⾄不需要了解芯⽚的功能。在运⽤scan 测试⽅法的时候,整个芯⽚被看做是⼤量的寄存器和寄存器直接的组合逻辑。这也符合scan test理论开发的初衷,为了侦测出⽣产过程中的defects。芯⽚的功能不被检验,相反,从元器件最基本的电路反应⼊⼿,测试其中的异常,从⽽侦测到⽣产defect。
扫描链测试也可以很复杂。
因为其横跨了在芯⽚设计的整个周期,各个⾓落。在设计scan test的时候需要综合考虑到芯⽚设计的⽅
⽅⾯⾯,包括时钟设计,电源设计,芯⽚结构,PAD资源,逻辑综合规划等⽅⽅⾯⾯。
DFT的scan ⼯作流程之复杂,从以下流程图可见⼀斑。
scan⼯作流程⼤概分为5步。
1.scan insertion
5.silicon bringup and diagnosis
test pattern release 及silicon bringup and diagnosis不在scan 基础的scope之内,将会在后续session中继续深⼊讨论scan insertion
扫描链插⼊
在芯⽚功能设计完成后,整个⽹表是由⼀堆普通的寄存器和组合逻辑构成的。扫描链的插⼊就是指将普通寄存器替换成为扫描寄存器(scan flip-flop)的过程。
SE scan enable为其切换信号。
正常⼯作模式时,SE为0,这时scan FF的功能与原有的D-FF完全⼀致,data path 为D到Q。芯⽚的功能得以保持不变。当SE被切换为1时,这时候scan FF执⾏其scan属性,data path为SI到Q。SI即为测试时的数据流向⼊⼝。
Function
Scan
SE=0
SE=1
SE=1
swot分析矩阵datapath:D->Q
scan FF act as DFF
咸阳偏转集团datapath: SI->Q
Scan FF act as Scan
将⽚上的扫描寄存器Q-SI连接起来,就成为了扫描链。通过shift的⽅式可以由scan chain将数据串⾏输⼊的每个寄存器的SI端,达到控制每个寄存器的⽬的。在capture模式下,将芯⽚组合逻辑的反馈传回寄存器,达到对芯⽚内部观测的作⽤。
Test Pattern Gen
测试向量的产⽣是基于故障模型[1]⽣成的。不同的故障模型所对应的测试向量由于其激活[2]和敏化[3]⽅式不同⽽不同。故障模型是对芯⽚上物理缺陷的抽象建模。
如图所⽰,或⾮门的输⼊于VDD短接,导致其不能为‘0’。将其建模为stuck-at-1故障。
如图所⽰,激活需要在故障点产⽣相反的值‘0’。A需要加载‘1’
为了使该故障能在primary output O被观测到,B,C,D需要选定特殊的值使得该故障能在PO端被观测到。
国家保密局测评中心
测试向量由此产⽣。
A
B
C
碰撞打靶实验D
1
1
1
TIPS
[1]这⾥以常⽤的stuck at fault model举例说明
[2]激活故障,在故障点产⽣于故障状态相反的值.
[3]敏化路径,将故障点的值传递⾄输出并观察.
将此故障电路放⼊下图中的时序电路中,如果没有扫描链,激活故障和敏化路径的计算量天⽂级的.
扫描链测试可以极⼤的简化测试难度。通过SCAN SHIFT[1]模式,直接将1011向量通过pad串⾏加载到寄存器上。再通过SCAN CAPTURE[2]模式,让故障电路的输出被OB寄存器捕捉。再下⼀次load时,将故障点的值将通过scan chain 串⾏输出到pad,由ATE[3]捕捉进⾏⽐较。
TIPS
泥浆固液分离[1]shift 模式是指将SE设置为1,scan FF通过si到q的通路⾸尾相接。数据传输为串⾏。
[2]capture模式是指将SE设置为0,此时scan FF⼯作为正常function 寄存器。将function时候数据由D到q的通路capture 到寄存器中。
[3]ATE automated testing equipment
该时序图反应了测试如上电路的pattern的时序关系。整个pattern分为3个阶段。
loading:将测试向量串⾏打⼊到寄存器中
capture:通过打⼀个clock pulse,将故障点的值加载到寄存器中
迷幻海滩
unload:将capture回来的值串⾏输出到pad供ATE测量⽐较。
Test Pattern Gen
测试向量验证
当测试向量产⽣以后,我们需要对其进⾏门级仿真。与芯⽚功能验证类似,也有不同之处,DFT⼯程师需要时刻紧绷,测试向量最终在ATE(⾃动测试机台)上能调⽤的资源只有芯⽚的输⼊输出端⼝。对芯⽚内部信号的force都必须慎之⼜慎。测试向量仿真从⽅法上可以分为,串⾏仿真和并⾏仿真。串⾏向量仿真时,测试激励加载于芯⽚测试输⼊端⼝,并在输出端⼝进⾏采样⽐较。并⾏向量仿真是将测试激励直接加载于扫描寄存器的SI端,并在寄存器的O端进⾏数据⽐较。两种⽅法各有优缺点,需要配合使⽤。
scan test的理论就先简单介绍到这⾥。尽管听起来好像很简单,但在实际应⽤中,尤其是Billion门级的集成电路,扫描链的应⽤已经变得相当复杂。扫描链伸⼊到芯⽚的边边⾓⾓,是芯⽚在功能维度之外最庞⼤的系统。在这⼀领域⾥,我们要思考的包含并不限于:在制定扫描链测试时要考虑如何不影响芯⽚功能的主线,减少给芯⽚带来过多的⾯积,功耗开销。
请持续关注我们,更多专题,敬请期待

本文发布于:2024-09-22 15:23:21,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/190818.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:测试   寄存器   故障   扫描
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议