CN103383864B - 串行检测集成电路中ram生产缺陷的方法 - Google Patents
串行检测集成电路中ram生产缺陷的方法 Download PDFInfo
- Publication number
- CN103383864B CN103383864B CN201210581966.XA CN201210581966A CN103383864B CN 103383864 B CN103383864 B CN 103383864B CN 201210581966 A CN201210581966 A CN 201210581966A CN 103383864 B CN103383864 B CN 103383864B
- Authority
- CN
- China
- Prior art keywords
- address
- ram
- test
- current
- error
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明公开了一种串行检测集成电路中RAM生产缺陷的方法,依据本发明,实现基于前一测试步骤RAM当前地址状态的用于后一步骤的测试,不必每次测试仅测试一个测试点,从而不必针对每个RAM重新设定而重复使用测试方法,效率大大提高。
Description
技术领域
本发明涉及一种集成电路中RAM生产缺陷的测试方法。
背景技术
宏观的RAM(RandomAccessMemory,随机存储器)测试包括存储单元的测试、数据线测试和地址线测试。对于控制线,由于对前两者的测试中已经附带完成,因此不做专门测试。而地址线的测试总是在假设数据线正常的情况下进行的,显然需要先进行数据线的测试,然后才能进行地址线的测试。
随着集成电路规模的增大和集成度的提高,系统中RAM的数量越来越多,宽度和深度也各不相同,对其测试也需要进行细化。以往要完成对系统中RAM的测试,通常采用的方法是每一个RAM对应一个测试模块,必然增加整个芯片的面积,成本偏高,而且所采用的测试方法均不能一次测全所有的缺陷,因此不仅增加了芯片面积,而且增加了测试的时间、测试复杂度和测试成本。
在集成电路的生产过程中,由于工艺技术或者其他原因,容易造成电路中RAM的缺陷。
目前RAM的基本生成缺陷如下:
◆Stuck-AtFault(SAF,固定型故障):RAM中的某一位固定为1或者0,无法写入相反的值;或者说RAM电路中的某条连线本来应该根据其源节点的取值而取值,但由于存在某种故障,其逻辑值固定为0或1;如果线wr上有固定为0的故障,则记为wr(s-a-0),如果有固定为1的故障,则记为wr(s-a-1)。
◆Stuck-OpenFault(SOpF,固定开路故障):RAM中某一单元,由于线的断裂,无法对其进行操作
◆TransitionFault(TF,传输错误):即对RAM中的某一位写入0时,其实际写入的是1,或者写入1时,其实际写入的是0。
◆IdempotentCouplingFault(CFid,幂等耦合故障):对待测RAM中某一位进行操作时,如果该位写入的数值与原来该位的数值不同,就会发生跳变,而这个跳变过程可能对其相邻的位产生影响,可能导致相邻位变为1或者0状态。因此,CFid共分为四种类型:<↑|0>,<↑|1>,<↓|0>,<↓|1>。
向上箭头代表由0跳变为1,向下箭头代表由1跳变为0。
◆StateCouplingFault(CFst,状态耦合故障):对待测RAM中某一位进行操作时,该位处于某种状态,例如处于1或者0状态时,可能导致相邻位发生相应的变化,即可能变为1或者0状态。因此,CFst也分为四种类型:<1;1>,<1;0>,<0;1>,<0;0>。
◆InversionCouplingFault(CFin,逆耦合故障):对待测RAM中的某一位进行操作时,其无论如何跳变,即由1跳变为0或者有0跳变为1,都会引起相邻某位的值的改变。例如待测RAM中的某一位原值为0,然后对其写入1,这个时候其相邻的某位可能就由0变为1,当对该位再写入0时,相邻的某位就又由1变回了0。因此,CFin分为两种类型:<↑|x>,<↓|x>。向上箭头代表由0变为1,向下箭头代表由1变为0。
◆AddressFault(AF,地址故障):对待测RAM中的某一地址进行操作时,可能操作的不是希望的地址,而变成了别的地址。
◆Byte_EnableFault(BEF,字节使能错误):RAM中的byte_enable控制位可能相连,或者固定为某一个数值1或0。
发明内容
有鉴于此,本发明的目的在于提供一种能够提高测试效率的串行检测集成电路中同类型RAM生产缺陷的方法。
本发明采用以下技术方案:
一种串行检测集成电路中RAM生产缺陷的方法,串行测试一个芯片上选定的多个同类型RAM,该方法包括以下步骤:
1)对当前RAM所有地址各位写入0;
在以下的步骤中以地址为操作对象,且此后各步骤在当前地址完成当前步骤的测试后进入下一地址的测试,直到遍历整个RAM后进入下一个步骤的测试,当前RAM完成预定的所有测试步骤后进入下一RAM的测试,直至完成当前芯片上选定的所有RAM的测试:
2)读取当前RAM当前地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1,然后读取该地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0,然后读取该地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1;
3)读取当前RAM当前地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0,读取该地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1。
从以上技术方案可以看出,依据本发明,实现基于前一测试步骤RAM当前地址状态的用于后一步骤的测试,不必每次测试仅测试一个测试点,从而不必针对每个RAM重新设定而重复使用测试方法,效率大大提高。
上述串行检测集成电路中RAM生产缺陷的方法,步骤1)到步骤3)对RAM的操作顺序均是从低地址到高地址。
上述串行检测集成电路中RAM生产缺陷的方法,在步骤3)后还包括从RAM高地址到低地址操作的如下步骤:
4)读RAM当前地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0;
5)读RAM当前地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1;然后读该地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0,再将按照1、0的序列组成的数据写入该地址,读该地址,判断CFst的<1|1>缺陷,若存在该缺陷,报错,否则,将按照0、1的序列组成的数据写入该地址,然后顺序读该地址,判断CFst的<0|0>缺陷,若存在该缺陷,报错,否则,完成该地址测试。
上述串行检测集成电路中RAM生产缺陷的方法,匹配当前待测试的RAM调整测试的宽度和深度。
上述串行检测集成电路中RAM生产缺陷的方法,被选定的所述RAM为同一芯片上的同类型的所有RAM。
附图说明
图1为九宫格测试示意图。
图2为RAM测试装置的结构原理图。
具体实施方式
基于背景技术中对各种缺陷的分析,通过如图2所示的测试向量的生成,其中测试向量向RAM当前地址写入的原数作为比较器的一个输入,用于比较读取数与原数,对相应的RAM进行测试。
依据本发明,一个完整的测试方法可以简单的使用语句表示如下:
↑write0
↑read0,write1,read1,write0,read0,write1
↑read1,write0,read0,write1
↓read1,write0
↓read0,write1,read1,write0,writedata1,readdata1,writedata2,readdata2
向上箭头为从低地址到高地址的操作,向下箭头为从高地址到低地址的操作,0代表全0,1代表全1,data1为101010…,data2为010101…。测试方法共分为五部分,每一部分代表将整个RAM地址操作一遍,因此对整个RAM地址共操作五遍,即完成本文所说的测试含有五个步骤。自然,可以选择部分缺陷进行测试。
因此,进一步地,一种串行检测集成电路中RAM生产缺陷的方法,串行测试一个芯片上选定的同类型的RAM,如背景技术部分所述,当前芯片的集成度越来越高,芯片上集成的RAM越来越多,且类型也比较多,如大的分类SRAM、DRAM,不同类型的RAM存在一定的差别,本文侧重于串行测试时是对同种类RAM的测试。
该方法包括以下步骤:
1)对当前RAM所有地址各位写入0,如若是16位地址,则是16个0,如深度,也就是如总共有65535个地址,则就是16×65535个0;
在以下的步骤中以地址为操作对象,且此后各步骤在当前地址完成当前步骤的测试后进入下一地址的测试,直到遍历整个RAM后进入下一个步骤的测试,当前RAM完成预定的所有测试步骤后进入下一RAM的测试,直至完成当前芯片上选定的所有RAM的测试:
2)读取当前RAM当前地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1,然后读取该地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0,然后读取该地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1;
这里的读取应是对相应地址一次性读出,不是按位读取,然后与测试向量中对应存放如该地址中的数进行比较,判断是否正确。这里也可以理解为判断两个数是否一致的问题,相比于按位读取效率要高得多。
从而上述步骤也可以这样来理解,测试向量匹配有由0和/或1组成的序列,把当前步骤对应的序列向当前地址写入如全0,读取该地址存放的数值或者说序列,与预定的测试向量中对应写入的数值或者序列相比较,若不相同则表明存在缺陷,报错,若一致,则进行下一地址的同类测试。
3)读取当前RAM当前地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0,读取该地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1。
基于以上描述,并结合背景技术部分有关缺陷的分析,对前几个步骤分析如下:
◆对整个RAM写入全0。
◆第二部分或者说第2步首先是读,读的顺序可以匹配写的顺序,保持一致,如由低地址开始,首先读出第一步写入的0,如果读出的数据中有为1的位,就说明该位可能固定为1,即存在SAF缺陷,或者由于线断开了无法对其写入,即存在SOpF缺陷,或者传输错误,即写入0时,实际写入的是1,即存在TF缺陷,或者由于左右、上面、上面斜对角某一影响点处于0状态,使待测点发生变化,即存在CFst缺陷中的<0;1>。
承接上段,如果读出的全是0,再对当前地址写入1然后读出1,如果读出数据中有0的位,根据上面的分析,可能存在SAF中的固定为0的缺陷,或者SOpF缺陷,或者TF缺陷,或者CFst中的<0;0>,或者由于横向影响点发生由0到1的跳变,引起待测点数值的变化,即存在CFid缺陷中的<↑|0>,同样或者由于横向影响点存在CFin缺陷中的<↑|x>。
承接上段,如果读出的全是1,然后再对当前地址写入0然后读出0,这个时候如果读出的数据中存在1的位,可能测到新的缺陷CFid缺陷中的<↓|1>,当然这个是由横向影响点引起的,或者存在CFin缺陷中的<↓|x>。最后再对该地址全写入1。然后对下一个地址重复第二部分的操作,挨个分析影响点对待测点的影响。
如图1所示的九宫格,原本是我国书法史上临帖写仿的一种界格,又叫“九方格”;对于存储单元矩阵也存在类似的结构,并且相邻存储单元的逻辑电路可能存在某种影响,就会产生如图1所示的结构。
以此类推,后面的操作部分和前面是一样的,按照上面简单介绍的分析方法可以分析出提供的测试方法是如何实现对RAM基本测试点的覆盖的。
使用语句表现的是一个完整的覆盖所有测试点的测试方法,但一个测试方法可以对部分缺陷进行测试,而非对全部。
如图2所示,为整个RAM测试的整体结构框图,整个结构框图共分为三个部分:控制器,测试向量生成器和比较器。控制器的作用是控制RAM的读写操作,在RAM读写过程中,控制地址的变化,实现对整个RAM的测试覆盖。写操作是将测试向量生成器生成的测试向量写入待测的RAM中,保证数据写入的正确性和准确性。读操作是将写入待测RAM中的数据读出来,送给比较器模块进行数据的比较验证,整个读过程要保证地址的正确性和读取数据的准确性,从而实现对待测RAM的测试工作。
测试向量生成器模块功能是产生用于测试RAM的测试向量,其功能是产生的测试向量要保证测试方法的需求,并保证能够测试到所要求的缺陷点。
比较器是将待测RAM中读取出的数据与原来写入的数据进行比较,以确定待测中的RAM是否存在瑕疵,因为是串行对RAM进行测试的,而RAM的深度,即地址个数不可能完全相同,因此写入和读出的数据进行比较时,要能够根据待测RAM的宽度(位宽)与深度(地址个数)的不同而做出相应的调整。当待测RAM中的某一个存在瑕疵时,立即停止对RAM的测试工作,并拉高bist_fail信号报告错误,如果读出的当前数据与写入的数据一致时,继续执行后面的测试工作,直到完成对所有RAM的测试,拉高bist_done信号报告整个测试工作完成。
本文侧重于对全部缺陷全覆盖的方式进行测试,承接当前步骤之前步骤中RAM写入的数据,提高测试的效率。
在上述的方法中,采用步骤1)到步骤3)对RAM的写操作和读操作的顺序均是从低地址到高地址的操作方法,遍历RAM的所有地址,操作相对比较简单,也方便串行测试的展开。另一方面,如图1所示,从低地址到高地址,这样高地址当前是不变的,低地址率先变化,这样能测出较当前地址的地址变化对高地址的影响,在以下的内容中涉及从高往低,是看高地址的变化对低地址变化的影响。
因此,在步骤3)后还包括从RAM高地址到低地址操作的如下步骤:
在步骤3)后还包括从RAM高地址到低地址操作的如下步骤:
4)顺序读RAM当前地址的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0;
这里的顺序指的就是前文约束的从RAM高地址到低地址。
5)顺序读RAM当前地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1;然后读该地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0,再将按照1、0的序列组成的数据写入该地址,读该地址,判断CFst的<1|1>缺陷,若存在该缺陷,报错,否则,将按照0、1的序列组成的数据写入该地址,然后顺序读该地址,判断CFst的<0|0>缺陷,若存在该缺陷,报错,否则,完成该地址测试。
因为为串行测试,所有再写入和读取数据时,根据同一芯片上同类RAM不同的,设定所有待测RAM的宽度和深度,这里的宽度指位宽,如16位、32位或者64位。
显然,测试前,RAM的深度和宽度是已知的。
进一步地,在测试过程中,匹配当前待测试的RAM调整测试的宽度和深度。我们了解,在一个芯片中的所有RAM只要有一个有产品缺陷,就应该报废该芯片,从测试角度讲,若一个RAM在一些测试中存在缺陷,理应就报废整个芯片。使用上述方法可以有效地提高测试效率,基于上述方法的串行测试便于测试向量的生成。
传统方法:采用的测试方法不能一次测全RAM的全部测试点,往往需要改变测试向量,并重复测试方法,这样要测全基本的测试点,需要的总周期就会相对较长,测试的时间也相对延长,不仅如此,传统采用的测试方法是针对每一个RAM有一个单独的测试模块,这样就增加了整个芯片的面积,成本也就相对较高。
依据上述方法可以看出:采用的测试方法能够一次测全RAM的全部测试点,不需要重复使用测试方法,相对传统方法,要完成整个RAM全部测试点的测试,缩短了整个测试周期和测试时间,不仅如此,本方法还增加了Byte_EnableFault(BEF)的测试,这样相对传统方法,增加了测试点,使测试更加全面,而且本方法采用的是串行测试系统中同类RAM的测试方法,这样能够减少整个芯片的面积,降低生产成本,而且降低测试的复杂度和测试的时间,从而也降低测试的成本。通过使用Synopsys的DC综合工具对用于串行测试4个宽度为32位,byte_enable宽度为8位,深度为32768的单口RAM模块进行综合,通过对综合后的结果进行计算,得到每个RAM所需要的NADN2GATE(与非门)数为426.4个,远低于500个的标准。
应知,随着封装工艺的发展,当前RAM的生产缺陷相对比较少,绝大多数的测试都能够顺利的完成。显然,一次测完所有生产缺陷的方式能够更有效地提高测试效率。
Claims (3)
1.一种串行检测集成电路中RAM生产缺陷的方法,其特征在于,串行测试一个芯片上选定的同类型的多个RAM,该方法包括以下步骤:
1)对当前RAM所有地址各位写入0;
在以下的步骤中以地址为操作对象,且此后各步骤在当前地址完成当前步骤的测试后进入下一地址的测试,直到遍历整个RAM后进入下一个步骤的测试,当前RAM完成预定的所有测试步骤后进入下一RAM的测试,直至完成当前芯片上选定的所有RAM的测试:
2)读取当前RAM当前地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1,然后读取该地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0,然后读取该地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1;
3)读取当前RAM当前地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0,读取该地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1;
步骤1)到步骤3)对RAM的操作顺序均是从低地址到高地址;
在步骤3)后还包括从RAM高地址到低地址操作的如下步骤:
4)读RAM当前地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0;
5)读RAM当前地址存放的值,若含有1的位,则终止检测,报错;若全是0位,则对该地址各位写入1;然后读该地址存放的值,若含有0的位,则终止检测,报错;若全是1位,则对该地址各位写入0,再将按照1、0的序列组成的数据写入该地址,读该地址,判断CFst的<1|1>缺陷,若存在该缺陷,报错,否则,将按照0、1的序列组成的数据写入该地址,然后顺序读该地址,判断CFst的<0|0>缺陷,若存在该缺陷,报错,否则,完成该地址测试。
2.根据权利要求1所述的串行检测集成电路中RAM生产缺陷的方法,其特征在于,匹配当前待测试的RAM调整测试的宽度和深度。
3.根据权利要求1所述的串行检测集成电路中RAM生产缺陷的方法,其特征在于,被选定的所述RAM为同一芯片上同类型的所有RAM。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210581966.XA CN103383864B (zh) | 2012-12-28 | 2012-12-28 | 串行检测集成电路中ram生产缺陷的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210581966.XA CN103383864B (zh) | 2012-12-28 | 2012-12-28 | 串行检测集成电路中ram生产缺陷的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103383864A CN103383864A (zh) | 2013-11-06 |
CN103383864B true CN103383864B (zh) | 2016-01-20 |
Family
ID=49491633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210581966.XA Active CN103383864B (zh) | 2012-12-28 | 2012-12-28 | 串行检测集成电路中ram生产缺陷的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103383864B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105573676B (zh) * | 2015-12-16 | 2019-02-15 | 浪潮(北京)电子信息产业有限公司 | 一种存储系统中验证数据一致性的方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5568437A (en) * | 1995-06-20 | 1996-10-22 | Vlsi Technology, Inc. | Built-in self test for integrated circuits having read/write memory |
-
2012
- 2012-12-28 CN CN201210581966.XA patent/CN103383864B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5568437A (en) * | 1995-06-20 | 1996-10-22 | Vlsi Technology, Inc. | Built-in self test for integrated circuits having read/write memory |
Non-Patent Citations (2)
Title |
---|
数字电路BIST设计中的优化技术;谈恩民;《中国博士学位论文全文数据库 信息科技辑》;20110415;第3.1.2节第1-10,20-23行,第3.2.1节第10-13行 * |
面向存储器核的内建自测试;檀彦卓;《计算机工程与科学》;20050430;第27卷(第4期);第5.1节第1-9行,第5.2节第1-18行,图1 * |
Also Published As
Publication number | Publication date |
---|---|
CN103383864A (zh) | 2013-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111554344B (zh) | 存储单元测试方法、装置、存储介质及电子设备 | |
Khan et al. | PARBOR: An efficient system-level technique to detect data-dependent failures in DRAM | |
CN104361909B (zh) | 一种片上ram内建自测试方法及电路 | |
JP2001183430A (ja) | 半導体装置のテスト方法及びシステム並びに記録媒体 | |
CN109801665B (zh) | Sram自测试系统、架构及方法、存储介质 | |
CN103021469A (zh) | 一种存储器电路的通用单粒子效应检测方法 | |
CN103065687B (zh) | 并行检测集成电路中ram生产缺陷的方法 | |
US6453437B1 (en) | Method and system for performing transition fault simulation along long circuit paths for high-quality automatic test pattern generation | |
CN110570896A (zh) | 一种面向弱故障的低电压sram测试方法 | |
CN104425040A (zh) | 用于测试存储器的方法和系统 | |
CN102013274B (zh) | 一种存储器的自检测电路和方法 | |
CN110347595B (zh) | 一种fpga内部资源甄别与定位方法及系统 | |
CN118091369A (zh) | 一种芯片测试方法、系统、设备及计算机可读存储介质 | |
Medeiros et al. | Hard-to-detect fault analysis in finfet srams | |
US7495979B2 (en) | Method and system for in-situ parametric SRAM diagnosis | |
CN112349341B (zh) | Lpddr测试方法、装置、可读存储介质及电子设备 | |
CN103383864B (zh) | 串行检测集成电路中ram生产缺陷的方法 | |
CN117290165A (zh) | 一种芯片测试的方法、系统、装置及存储介质 | |
EP1327249B1 (en) | Method to descramble the data mapping in memory circuits | |
CN103151079B (zh) | 检测ram生产缺陷的方法 | |
JPH11213695A (ja) | 半導体メモリ試験装置 | |
CN114944185A (zh) | 校验方法、测试机台及存储介质 | |
CN111739574B (zh) | 一种基于随机二进制序列的静态随机存取存储器验证方法 | |
TW200426574A (en) | Fault pattern oriented defect diagnosis for memories | |
Kumari et al. | FPGA implementation of memory design and testing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |