1、2020/4/6,南京航空航天大学,1,VLSI测试方法学 和可测性设计,教师:吴宁,南京航空航天大学 信息科学与技术学院 电子工程系,2020/4/6,南京航空航天大学,2,南京航空航天大学 信息科学与技术学院 电子工程系,第11章 存储器测试,11.1 简介 11.2 存储器电路模型 11.3 存储器的缺陷和故障模型 11.4 存储器测试类型 11.5 存储器测试算法 11.6 存储器测试方法 11.7 存储器的冗余和修复,2020/4/6,南京航空航天大学,3,南京航空航天大学 信息科学与技术学院 电子工程系,11.1 简介,图11.1 存储单元在芯片面积中所占的比例,存储器是电子产品的
2、关键部分; 存储器芯片的密度和复杂度日益提高; 存储器结构具有规律性; 存储单元类型多样化。,2020/4/6,南京航空航天大学,4,南京航空航天大学 信息科学与技术学院 电子工程系,本章研究RAM的测试结构和方法。首先研究RAM的缺陷和故障模型,包括类似于组合和时序电路所用的固定型和桥接型故障模型,另外还有描述RAM失效的更好模型,如耦合故障(CF)模型、图形敏感故障模型等。接着研究RAM测试方法,包括功能测试和内建自测试。再研究RAM的算法和规范性描述方法、图形化表达方法,最后对冗余和修复技术进行论述。,2020/4/6,南京航空航天大学,5,11.2 存储器电路模型,11.2.1 功能模
3、型,南京航空航天大学 信息科学与技术学院 电子工程系,图11.2 RAM功能模型,2020/4/6,南京航空航天大学,6,南京航空航天大学 信息科学与技术学院 电子工程系,11.2.2 存储单元,存储器在逻辑级可用一个D触发器描述,如右图11.3所示,对其操作是“写入”一位“0”或“1”,写入的信息在下一次覆盖操作到来前一直保留。,图10.3 存储器逻辑,2020/4/6,南京航空航天大学,7,南京航空航天大学 信息科学与技术学院 电子工程系,存储器保持信息的方式与存储单元类型有关,一般存储单元可以是静态的,也可以是动态的。其结构如图10.4所示。,(a) 静态MOS,(b) 动态MOS,图1
4、1.4 存储单元,2020/4/6,南京航空航天大学,8,南京航空航天大学 信息科学与技术学院 电子工程系,11.2.3 RAM的组成,影响存储器测试图形生成的重要因素有两个:一个是阵列结构;一个是存储器所处的环境,也就是存储器是以单个IC形式,还是作为宏模块插入在SoC中。 就阵列结构而言,N字节的RAM,可能是按N1阵列组成,也可能按rc(rcN)阵列组成。 随着技术的发展,几乎所有的SoC芯片都包含嵌入式RAM,测试比较困难,原因是不能够进行直接存取操作,可控性和可观性就无从谈起。BIST可能是解决嵌入式RAM测试的可行方法。,2020/4/6,南京航空航天大学,9,南京航空航天大学 信
5、息科学与技术学院 电子工程系,11.3 存储器的缺陷和故障类型,11.3.1 缺陷,缺陷产生的原因: 材料的丢失、杂质的出现等。容易造成RAM失效的缺陷有栅氧断裂等。 干扰和噪声容易引起DRAM失效。 由击穿电路导电颗粒造成单事件翻转。,2020/4/6,南京航空航天大学,10,南京航空航天大学 信息科学与技术学院 电子工程系,11.3.2 阵列故障模型,存储器的功能故障模型: 固定型故障和桥接故障; 保持故障; 变迁故障; 耦合故障; 图形敏感故障;,周边电路故障;,2020/4/6,南京航空航天大学,11,南京航空航天大学 信息科学与技术学院 电子工程系,1 固定型故障,存储器固定型故障定
6、义为:使得存储单元恒定的存储1或者0的功能性故障,简称SAF故障。,图11.5 SAF故障和变迁故障的描述,2020/4/6,南京航空航天大学,12,南京航空航天大学 信息科学与技术学院 电子工程系,2 变迁故障,当某一个存储单元不能从0状态变迁到1状态()或者不能从1状态变迁到0状态()就用变迁故障来描述,变迁故障是SAF故障的一种特殊形式。如图11.5所示。,2020/4/6,南京航空航天大学,13,南京航空航天大学 信息科学与技术学院 电子工程系,3 耦合故障,耦合故障有3种形式:反相(inversion)、同势(idempotent)桥接/状态(bridging and state)。
7、,图11.6 耦合故障(CF)描述,2020/4/6,南京航空航天大学,14,南京航空航天大学 信息科学与技术学院 电子工程系,检测同势故障和反相耦合故障的方法:,(1)对所有的单元写0; (2)对于任意单元 (ji) 改变单元 的值; 读单元 的值,检查其值是否变化; 单元 回复到原先的值。 重复上述过程,直到所有可能的两两组合都得以检验。 上述过程总操作次数为:,2020/4/6,南京航空航天大学,15,南京航空航天大学 信息科学与技术学院 电子工程系,桥接和状态耦合故障(SCF)是耦合故障的特殊形式,描述的是一个单元确定状态导致另一个单元处于特定状态的现象。这样的耦合是逻辑耦合,而不是变
8、迁耦合。桥接故障描述的是两条以上线短接在一起的现象、这种短接是设计中没有的,按照驱动器和负载晶体管的能力表现为线与,线或的特征。,2020/4/6,南京航空航天大学,16,南京航空航天大学 信息科学与技术学院 电子工程系,4 图形敏感故障,图形敏感故障(Pattern Sensitive Faults, PSF):描述单元因阵列中其他单元的不同操作导致的状态不确定的故障。造成PSF的主要原因是存储单元密度高,导致单元间相互干扰。,邻居图形敏感故障(Neighborhood Pattern Sensitive Faults NPSF):描述基单元,因邻居单元活动导致状态不确定的故障。NPSF可分
9、为3类:主动、被动和不动。,2020/4/6,南京航空航天大学,17,南京航空航天大学 信息科学与技术学院 电子工程系,(a) 五单元邻居,(b) 九单元邻居,图11.7 邻居图形敏感故障,2020/4/6,南京航空航天大学,18,南京航空航天大学 信息科学与技术学院 电子工程系,11.3.3 周边逻辑,地址译码器故障模型采用的是功能性故障,测试方法是穷举测试,然后确认相应输出上是否出现0或1。例如对于2-4译码器,对选通线施加穷举测试集,检查4个输出是否正确,如图11.8所示,图11.8 译码电路的测试,2020/4/6,南京航空航天大学,19,南京航空航天大学 信息科学与技术学院 电子工程
10、系,图11.9 存储器故障图解,2020/4/6,南京航空航天大学,20,南京航空航天大学 信息科学与技术学院 电子工程系,11.4 存储器测试的类型,存储器的测试方法: 参数测试(DC和AC) 功能测试 动态测试 IDDQ测试,11.4.1 性能测试,性能测试就是测试产品参数,检查这些参数是否达到设计要求。既有直流参数测试,又有交流参数测试。,2020/4/6,南京航空航天大学,21,南京航空航天大学 信息科学与技术学院 电子工程系,11.4.2 特征测试,特征测试就是采用重复的测量序列来确定电路工作范围。例如11.10的Shmoo图。如果电路的 曲线位于白色区域则电路可以正常工作,如果位于
11、黑色区域则电路不能正常工作。,图11.10 Shmoo图,2020/4/6,南京航空航天大学,22,南京航空航天大学 信息科学与技术学院 电子工程系,11.4.3 功能测试,存储器功能测试的主要目的:测试图形生成,测试图形施加。由于RAM容量大,因此要充分分析测试生成算法的复杂程度。,对于非存储单元的固定型故障,可以用组合逻辑的测试方法;对于存储单元的固定型故障,测试方法是对每一个单元都要写0(或1),然后读每一个单元,检查是否写入0(或1);检测变迁故障时,测试图形要把每一个单元从0(或1)变迁到1(或0),然后立即读单元内容;耦合故障的测试复杂些,需要对邻居单元按照按特定序列测试,检测时,
12、写的是一个单元而读的是另外的单元。,2020/4/6,南京航空航天大学,23,南京航空航天大学 信息科学与技术学院 电子工程系,11.4.4 电流测试,电流测试法可以发现RAM的缺陷,正常的RAM静态电流大约是十几个nA,而失效时可达到A级。,电流测试对于检测RAM故障比较理想,但对于检测DRAM故障并不适合。,2020/4/6,南京航空航天大学,24,南京航空航天大学 信息科学与技术学院 电子工程系,11.5 存储器测试算法,11.5.1 MSCAN算法,写全0(或写全1)。 读取所有单元的内容。,MSCAN算法测试次数是T4N,测试复杂度与存储单元的容量N成正比。可以用于检测SAF故障,最
13、坏情况下的功耗。,2020/4/6,南京航空航天大学,25,南京航空航天大学 信息科学与技术学院 电子工程系,11.5.2 GALPAT算法,1(0)漫游或乒乓测试: 对所有的存储单元写入0(1); (重复操作)对于每一个单元Cj:对单元Cj求补。 (重复操作)对于每一个单元Ck(k j)进行以下操作: 读单元Cj; 读单元Ck; 4. 恢复单元Cj的内容。,2020/4/6,南京航空航天大学,26,南京航空航天大学 信息科学与技术学院 电子工程系,图11.11 存储器功能测试算法,2020/4/6,南京航空航天大学,27,南京航空航天大学 信息科学与技术学院 电子工程系,11.5.3 算法型
14、测试序列,存储阵列按地址序号3的模分为三块,分别标记为 、 、 。每一个分块中就不存在地址相邻的单元 ATS的操作过程如下: 对分块 和 中的所有单元写0; 对分块 中的所有单元写1; 对分块 中读出0,如果结果全是0,则无故障,如果读出结果中有1,则有故障; 对分块 中的所有单元写1;,2020/4/6,南京航空航天大学,28,南京航空航天大学 信息科学与技术学院 电子工程系,5. 从分块 中的所有单元读出0,如果结果全是0,则无故障,如果读出结果中有1,则有故障; 6. 从分块 和 中的读出1,如果结果全是1,则无故障,如果读出结果中有0,则有故障; 7. 对分块 写0,然后从 中的所有单
15、元读出0,如果结果全是0,则无故障,如果结果中有1,则有故障; 8. 对分块 写1,然后从 中的所有单元中读出1,如果结果全是1,则无故障,如果读出结果中有0,则有故障。,这样的过程共需要4N次操作,可以检测存储单元,译码电路、MDR和MAR寄存器的SAF故障。,2020/4/6,南京航空航天大学,29,南京航空航天大学 信息科学与技术学院 电子工程系,11.5.4 Checkerborad测试,Checkerboard测试的算法:,对分块 ( ) 中的单元写0(1); 读所有单元; 对分块 ( ) 中的单元写1(0); 读所有单元。,检测和定位SAF故障、相邻单元之间的短接故障。,2020/
16、4/6,南京航空航天大学,30,南京航空航天大学 信息科学与技术学院 电子工程系,11.5.5 Marching图形序列,March 测试的第一个操作过程就是对存储序列初始化,接着读每一个单元,然后再对单元求补,最后一个单元处理完以后,RAM阵列全是1。,March 测试的第二个过程是重复第一个过程,但是处理单元的先后顺序与第一个过程相反,既第一个过程中第一个读和求补的单元,在第二个过程中是最后一个要处理的单元。,Marching图形序列又称March测试,是测试序列的一种,对每个存储单元需要10次读/写,其复杂程度与存储容量N成正比。,2020/4/6,南京航空航天大学,31,南京航空航天大
17、学 信息科学与技术学院 电子工程系,11.5.6 March测试的表达方法,March元素符号表达法,符号“”表示地址升序; 符号“”表示地址降序; 符号“”地址升序或降序均可。 “r0”读操作,期望结果是0; “r1”读操作,期望结果是1; “w0”写0操作; “w1”写1操作。,March 元素中的操作是在处理下一个元素前施加给每一个元素。,2020/4/6,南京航空航天大学,32,南京航空航天大学 信息科学与技术学院 电子工程系,2. 图形表达法,图11.12 March 算法详细表达,2020/4/6,南京航空航天大学,33,南京航空航天大学 信息科学与技术学院 电子工程系,11.5.
18、7 各种存储器测试算法的分析,表11.1 存储器测试算法及其复杂程度,2020/4/6,南京航空航天大学,34,南京航空航天大学 信息科学与技术学院 电子工程系,图11.13 各种存储器测试算法故障覆盖率比较,2020/4/6,南京航空航天大学,35,南京航空航天大学 信息科学与技术学院 电子工程系,11.6 存储器测试方法,11.6.1 存储器直接存取测试,直接存取测试的核心内容就是增加逻辑,提供测试设备对RAM的地址、数据输入、数据输出和测试控制的存取机构。,图11.14 存储器直接存取测试原理图,2020/4/6,南京航空航天大学,36,南京航空航天大学 信息科学与技术学院 电子工程系,
19、11.6.2 存储器内建自测试,图11.15 存储器内建自测试原理图,2020/4/6,南京航空航天大学,37,南京航空航天大学 信息科学与技术学院 电子工程系,11.6.3 宏测试,图11.16 宏测试原理图,宏测试适合对于性能要求比较高的存储阵列,当其他测试方式难以改善芯片的故障覆盖率时,可以选择宏测试。,2020/4/6,南京航空航天大学,38,南京航空航天大学 信息科学与技术学院 电子工程系,11.6.4 各种存储器测试方法比较,表11.2 各种存储器测试方法比较,2020/4/6,南京航空航天大学,39,南京航空航天大学 信息科学与技术学院 电子工程系,11.7 存储器的冗余和修复,
20、在单独一块存储器中,传统的方法总是制造出备用的行和列存储单元,这种方法就是存储器的冗余,当存储器的某一行或者某一列可能存在故障时,就用外部激光设备熔断相应的行或列,用备用的行或列代替,这样的方法就是存储器的修复。,冗余和修复是相互关联的。测试过程中一旦确定和定位了缺陷,就执行冗余分析程序,以确定用给的行和列可以修复哪些缺陷,修复程序根据冗余分析采用软修复或硬修复方法来修复存储器。,2020/4/6,南京航空航天大学,40,南京航空航天大学 信息科学与技术学院 电子工程系,2020/4/6,南京航空航天大学,41,南京航空航天大学 信息科学与技术学院 电子工程系,习题1.定义下列故障的故障模型,
21、A)状态耦合故障; B)动态耦合故障; C)转换耦合故障; D)倒置耦合故障; E)等幂耦合故障;,2020/4/6,南京航空航天大学,42,习题2.证明March C测试可俘获状态耦合故障。 请根据(存储器的位数) 指出March C的测试时间复杂性。,南京航空航天大学 信息科学与技术学院 电子工程系,习题2.证明March C测试可俘获等幂耦合故障。 请根据(存储器的位数) 指出March C的测试时间复杂性。,习题2.证明March C测试可俘获倒置耦合故障。 请根据(存储器的位数) 指出March C的测试时间复杂性。,2020/4/6,南京航空航天大学,43,南京航空航天大学 信息科学与技术学院 电子工程系,习题3.证明MATS+测试可俘获所有固定故障,(w0) ; (r0 , w1) ; (r1 , w0 , r0),2020/4/6,南京航空航天大学,44,南京航空航天大学 信息科学与技术学院 电子工程系,习题4. a是两个无故障单元的状态图,通过状态图b和c判断两个单元可能存在的故障 。,