背景技术
[0002] 集成电路产品需要进行测试以保证其产品的良率。近几十年来,随着超大规模集成(VLSI)技术的迅速发展,芯片中晶体管的密度成指数倍增加,IC测试成为半导体工业中最大的挑战之一。作为常见的可测试性设计(DFT)之一,全扫描设计广泛应用于IC测试中。基于全扫描的测试方案提高了电路的可控制性和可观察性,彻底地降低了测试生成的复杂性。然而,该类方案大大延长了测试应用时间,存在测试成本过高的问题。过高的测试费用已成为当今IC测试面临的主要问题。
[0003] 测试成本与许多因素有关,其中日益增加的庞大的测试数据量是与测试成本相关的重要因素之一。测试数据逐年呈指数规律增长,庞大的数据导致了以下问题:(1)硬盘和自动测试设备(Automatic Test Equipment,ATE)之间带宽有限,使得测试数据从硬盘传输到ATE的时间大于测试数据从ATE传输到被测电路(Circuit Under Test,CUT)的时间,会导致浪费在等待测试数据从硬盘到ATE之间的加载时间加长。(2)ATE的存储容量有限,使得必须裁剪或分批加载测试数据。如果裁剪测试数据就会导致测试质量降低;如果分次加载测试数据,就会增加测试时间。(3)ATE与CUT之间的带宽有限,使得不能降低测试数据从ATE的存储器到CUT的加载时间。虽然更换高档次的ATE可以在一定程度上缓解上述问题,但这势必会增加测试成本(ATE价格在50-120美元/台)。上述问题是由于测试数据量增加带来的,显然,如果在测试质量不变的情况下减少测试数据量,同样也能解决上述问题。因此迫切需要研究测试数据量减少技术。
[0004] 关于测试数据量减少技术的研究,主要集中在三个方面。
[0005] (1).基于非线性编码的压缩方案。非线性编码将原始测试数据分割成多个符号(字符串),每个字符串用一个码字替代从而构成了压缩的测试数据(TE)。TE存储在测试设备中,在测试时,首先通过预处理将压缩后的数据载入解码器,所有的码字经解码器解压成相应的字符串。然后将解压后的数据施加到CUT,捕获响应并进行响应分析。
[0006] (2).基于广播的压缩方案。这类方案将相同的值广播到多条扫描链中。由于它的简单性和高效性,这种方法成为许多测试压缩结构的基础。
[0007] (3).基于线性解压器的压缩方案。这类方案利用线性操作将存储在ATE中的数据扩展成CUT需要的测试向量。基于线性解压器的压缩是目前测试激励压缩技术的研究热点和重点。这类技术对于X比例很高的测试集能够获得更高的压缩率,压缩过程一般不依赖于被测电路和测试集,因而特别适合IP芯核的测试数据压縮,绝大多数的商业测试压缩工具都采用这类技术。
[0008] 由于在CUT与ATE之间数据传输存在着信号难以同步的缺点,不解决好同步问题,将会严重影响测试效率,改进通讯方式,又将会增加通讯协议的复杂性。另外,基于编码的测试数据压缩技术对多扫描链结构并不能很好的相容,需要对每一条扫描链都提供一个独立的解压电路才能使解压效率最高。
[0009] 正是由于这些原因,对基于编码的测试数据压缩技术的研究仅停留在学术界,到目前为止还没有实用的相关EDA工具出现。
[0010] 由于测试时通常存在着抗随机故障(Random Resistant Fault,RRF),故(2)和(3)两种方法存在故障覆盖率不高、测试序列较长的弊端。虽然可以通过加权或采用混合模式等方法来进一步提高测试效率,但随着电路规模的扩大,RRF的增多,所需要的硬件开销将显著增加。
[0011] 中国发明专利申请201210414485.X提出一种快速查找无理数的测试数据压缩方法,公开了一种动态编码压缩技术,并不直接用代码字来存储游程长度,而是将游程长度出现的规律表示成形如 (其中m,l,k全部是整数)无理数,存储时只用存储m,l,k和原始测试数据长度p等四个整数。将对整个测试集的存储转换成了单个或若干个无理数对应的整数存储。另外,提出了一种二分查找无理数的方法,将对无理数的计算转换成对无理数的查找,减少了算法的复杂度。
[0012] 这种将测试数据转换成无理数的方法来存储数据,从理论上可以无限压缩测试数据,可以从根本上解决测试数据的存储问题。然而该技术中存在如何将无理数还原成原始测试集的问题,难点是如何将无理数展开成小数。使用传统的方法,计算机无法完成大数据的开方运算,即使可以能够展开成小数,时间也非常长,需要ATE从无理数到小数转化的整个过程,这个过程本身也是测试成本的浪费。