一种幂次数切分的lfsr重播种vlsi测试数据压缩方法

文档序号:6153386阅读:180来源:国知局
专利名称:一种幂次数切分的lfsr重播种vlsi测试数据压缩方法
技术领域
本发明涉及集成电路测试技术,特别是对超大规模集成电路的内建自测试(Built-in Self-Test)方法中测试数据压縮方法。
背景技术
集成电路技术的发展使得可在一个芯片中集成数以亿计的器件,并且可以集成预先设计 和经过验证的IP芯核,如存储器核,微处理器核,DSP核等。这种多元化的集成芯片已经 成为能处理各种信息的集成系统,被称为片上系统或系统芯片SOC。 SOC大大降低了系统 成本,縮短了设计周期,加快了产品上市时间,但是SOC产品的测试面临越来越多的挑战, 如
1、 芯片测试点少,可直接控制或观测的测试点有限,通常只能通过芯片有限的输入/输 出引脚进行测试,而芯片内部节点很难通过宏观机械装置直接控制或观测。
2、 自动测试设备ATE价格昂贵,芯片的设计和制造技术发展速度比ATE的设计和制造 技术发展快,芯片的时钟频率已超过了目前最先进的ATE的频率,无法进行全速测试。
3、 测试数据量大,SOC中集成的芯核越多,所需测试数据量就越大。预计到2014年 存储测试向量所需存储器的容量是1999年的150倍,将会超过ATE的存储深度。
芯片的测试已成为制约集成电路发展的一个"瓶颈"。已有大量的文献对集成电路的测 试方法展开研究,主要有外建自测试和内建自测试(BIST)两种方法。
外建自测试方法又称为测试源划分技术,此方法将所需的测试向量经过压縮存储在ATE 中,测试期间,通过的解压电路将其还原施加到被测电路上。
内建自测试方法,依靠芯片自身的资源完成对芯片的测试。此方法将测试模式生成器 TPG、观IJ试过程控制和测试响应评价功能模块嵌入在被测电路CUT上,摆脱了对ATE的依 赖,减少了测试费用。
测试控制单元与测试响应评价一般具有成熟的方案解决,相对测试模式生成较为简单, 因此,国内外对BIST的研究主要聚焦在测试模式生成方面的居多。针对BIST中数据量激 增的问题,测试时, 一般将经过压縮的测试数据存储在芯片ROM中,测试期间通过片上解 压电路将其还原再施加到被测电路上,称为"存储与生成"。针对这种技术已有很多方法, 如输入精简的方法,扭环计数器方案等。但这些方案与标准的扫描设计流不相容,需重构扫 描链的结构,代价很大
发明内容
3本发明是为避免上述现有技术所存在的不足之处,提供一种幂次数切分的LFSR重播种 VLSI测试数据压縮方法,采用非侵入式的测试数据压縮方法,不改变被测试的电路结构, 尤其是不改变电路中扫描链的结构,通过将测试数据级联分段后,使每段的确定位的个数都 等于或者小于且最接近于一个确定的常数k,以期提高LFSR的编码效率,降低所需测试数 据的存储容量,縮短测试应用时间。
本发明解决技术问题所采用的技术方案是
本发明幂次数切分的LFSR重播种VLSI测试数据压縮方法的特点是将测试向量级联后, 根据确定位的个数进行分段,使每段的长度正好是2的幂次数,而且每段所包含的确定位的 个数都等于或者小于且最接近于一个确定的常数k,再通过线性反馈移位寄存器LFSR进行 压縮。
本发明所述方法的特点是按如下步骤操作
a、 对被测电路进行伪随机测试,运用故障模拟工具确定未测试到的故障,再采用自动 测试模式生成工具(ATPG)对所述未测试到的故障生成确定的测试集T;
b、 将所述测试集T进行测试向量级联,所述的级联是,将前一个测试向量的尾部接到 后一个测试向量的首部,将所有测试向量级联后形成一个测试序列T2;
c、 将形成的测试序列T2根据常数k分段,分段的策略是使得分割后每段所包含的确定 位的个数都等于或者小于且最接近于一个确定的常数k,具体方法是,从测试序列丁2的开始
取一个长度为m的子序列(m= 2「'°^,),依次计算从T2头开始的长度为2「'^"、 2「'^^1 、 2「1()^>2、……2「1(>g2A>'、……的子序列中确定位的个数,直到找到子序列长度2「^^'中确
定位的个数等于或者小于且最接近于常数k,从T2头开始到长度为2「^^'的子序列分出为
一段,记剩下的序列为新的序列;
d、 过程C一直重复到测试序列T2被全部分段,即剩余的新的测试序列中确定位的个数 等于或者小于且最接近于一个确定的常数k,最后不足2的幂次数的段用无关位补充;
e、 重新统计每段的长度,记最小的段长为默认值,其它的段长的编码采用相对编码, 即仅编码该段与最小长度段的商的以2为底的对数,此过程一直重复到所有段长全部编码;
f、 对分段后的测试集按每段进行LFSR编码,生成LFSR的种子,所生成的单个种子与 对应的段长编码一起构成该段压縮后的数据,其中的段长编码采用与最小段长的商的以2为 底的对数来相对编码,每段压縮后的数据按顺序合并后即为最终的压縮数据。
本发明方法的特点也在于所述测试集T中所有的测试向量中包含有无关位"X",所述
4无关位"X"占测试集的35% 95%。
LFSR编码的方法是,对于分段后的测试序列中任一段,使LFSR能成功编码即可;所
述LFSR的度数的选择为Smax — 5到Smax+10,其中Smax为测试序列中具有最大确定位的段
的确定位的个数。
LFSR编码技术最早由B在文献ZFS -Q^^/ few pa他ms/w尸racee&"g o/£wrapea" TeW Co"/ew"ce,/ /7.2 7-2W中提出的。且从理论上证明了 ,当LFSR的度数为Sm狀+20时,编码成功的概率为1 —10、此方法将长的测试向量用短的LFSR种子所替代,从而达到了宽度压縮的目的。
与已有技术相比,本发明有益效果体现在
1、 本发明通过将级联后的测试向量按2的幂次数长度分段,使每段的确定位都接近于一个常数k,即每段的确定位个数都接近于Smax,这样提高了编码效率。
2、 本发明采用相对长度的编码方法,即采用与最小段长相比的对数表示本段的长度来编码,减少了编码的数据长度,进一步提高了编码效率。
3、 本发明中分段后每段的确定位都接近于k (重复),等效于使Smax都接近于每段的确
定位个数。


图1为本发明的编码流程图。
图2为本发明的编码实例图,其中,图2(a)为原始测试集和对应的种子,总长度为33;图2(b)、 2(c)对将原始测试集进行重新切分的示意图;图2(d)是切分后的测试集和对应的种子,总长度为15。
图3为本发明的最终解压结构图。
具体实施例方式
实施本发明按如下步骤进行
a、 对被测电路进行伪随机测试,并运用故障模拟工具确定未测试到的故障,再采用自动测试模式生成工具(ATPG)对所述未测试到的故障生成确定的测试集T;
b、 将所述测试集T进行测试向量级联,所述的级联是,将前一个测试向量的尾部接到后一个测试向量的首部,将所有测试向量级联后形成一个测试序列T2;
c、 将形成的测试序列T2根据常数k分段,分段的策略是使得分割后每段所包含的确定位的个数都等于或者小于且最接近于一个确定的常数k,具体方法是,从测试序列T2的开始
取一个长度为m的子序列(m= 2「、"),依次计算从T2头开始的长度为2「^"、 2「1(^"+'、20
2「1^42、……2「^4>'、……的子序列中确定位的个数,直到找到子序列长度2「^2"'中确
定位的个数等于或者小于且最接近于常数k,从T2头开始到长度为2「^^+'的子序列分出为
一段,记剩下的序列为新的序列;
d、 过程C一直重复到测试序列T2被全部分段,即剩余的新的测试序列中确定位的个数 等于或者小于且最接近于一个确定的常数k,最后不足2的幂次数的段用无关位补充;
e、 重新统计每段的长度,记最小的段长为默认值,其它的段长的编码采用相对编码, 即仅编码该段与最小长度段的商的以2为底的对数,此过程一直重复到所有段长全部编码
f、 对分段后的测试集按每段进行LFSR编码,生成LFSR的种子,所生成的单个种子与 对应的的段长编码一起构成该段压缩后的数据,其中的段长编码采用与最小段长的商的对数
(以2为底)来相对编码,每段压縮后的数据按顺序合并后即为最终的压縮数据。 确定测试集的生成
伪随机测试完成后,针对伪随机向量未测试到的故障,采用ATPG工具生成确定的测试 集T,测试集T中所含的测试向量能够测试到伪随机测试未测试到的故障。。对ATPG工具 的选择,要使其生成的测试向量含有无关位。接下来的步骤就是对生成的确定测试集T进行 压缩。
伪随机测试
采用伪随机发生器。通过给定伪随机发生器设定初始状态,让其连续运行一些时钟周期,
生成一定数量的测试向量。在内建自测试中最常用的是采用线性反馈移位寄存器LFSR和细 胞自动机cellular automata做为伪随机发生器。然后施加这些测试向量到被测电路上,通过 故障模拟软件得到这些测试模式测到哪些故障,哪些故障未检测到。在含有多扫描链的被测 电路中,伪随机测试向量的生成常采用LFSR。但为了打破LFSR生成序列之间的相关性, 需在LFSR和被测电路之间加入一些由异或门组成的异或网络,即相移器。 重新切分-
要对原始测试集进行切分,首先要将测试集Td合并成一个向量Tm(从圏2(a)到图2(b))。 图2(c)是将合并后的向量tm按照幂次数进行切分,此处假定& = 8 (即分割后的每段向 量,确定位的个数不大于8)。先取i:log2k-3,即当前段长是8,得到确定位的个数是3, 3<k,增加i,直到1 = 6,此时确定位的个数为20, 20>k,回溯一次,得到当1 = 5时,当前 段的确定位个数是6,将此段(0-31)设置为一个向量,并设置当前位置prelast二31和i-5 的最小值minl:5。此过程一直持续到将tm全部被切分,最后分为三个向量,确定位个数 分别为6、 8、 8,对应的i分别是5、 4、 6, minl=4。
6从图2(a)和图2(d)可以看出原先的种子总长度为33位,重新切分后的种子总长度为15 位,因此,测试数据可以得到压縮,縮短了测试应用时间。 解压过程
最终解压结构如图3所示。该结构由一个LFSR、 一个播种计数器、 一个位计数器、一 个模式计数器、 一个移位寄存器和相应的控电路组成。播种计数器用于控制何时播种,位计 数器和模式计数器分别与扫描链长度和测试向量个数对应。压縮数据压控制电路控制下分解 成两部分, 一部分是种子,进行LFSR进行播种,另一部分是控制位,用于控制对应的LFSR 播种的长度,即LFSR重播种的周期数。模式计数器由位计数器驱动,位计数器每计数一个 周期驱动模式计数器一次。播种时,播种计数器移入控制位所代表的数值,此时位计数器和 模式计数器均暂停工作,播种结束时,播种计数器、位计数器和模式计数均正常工作。
权利要求
1、一种幂次数切分的LFSR重播种VLSI测试数据压缩方法,其特征是将测试向量级联后,根据确定位的个数进行分段,使每段的长度正好是2的幂次数,而且每段所包含的确定位的个数都等于或者小于且最接近于一个确定的常数k,再通过线性反馈移位寄存器LFSR进行压缩。
2、 根据权利要求1所述的一种幂次数切分的LFSR重播种VLSI测试数据压縮方法,其 特征是按如下步骤操作a、 对被测电路进行伪随机测试,运用故障模拟工具确定未测试到的故障,再采用自动 测试模式生成工具(ATPG)对所述未测试到的故障生成确定的测试集T;b、 将所述测试集T进行测试向量级联,所述的级联是,将前一个测试向量的尾部接到 后一个测试向量的首部,将所有测试向量级联后形成一个测试序列T2;c、 将形成的测试序列T2根据常数k分段,分段的策略是使得分割后每段所包含的确定 位的个数都等于或者小于且最接近于一个确定的常数k,具体方法是,从测试序列T2的开始取一个长度为m的子序列(m= 2「^"),依次计算从T2头开始的长度为2「^"、 2「^41+1 、 2「1。^》、……2「'°&4>'、……的子序列中确定位的个数,直到找到子序列长度2「^^'中确定位的个数等于或者小于且最接近于常数k,从T2头开始到长度为2「'。g^+'的子序列分出为一段,记剩下的序列为新的序列;d、 过程C一直重复到测试序列T2被全部分段,即剩余的新的测试序列中确定位的个数 等于或者小于且最接近于一个确定的常数k,最后不足2的幂次数的段用无关位补充;e、 重新统计每段的长度,记最小的段长为默认值,其它的段长的编码采用相对编码, 即仅编码该段与最小长度段的商的以2为底的对数,此过程一直重复到所有段长全部编码;f、 对分段后的测试集按每段进行LFSR编码,生成LFSR的种子,所生成的单个种子与 对应的段长编码一起构成该段压縮后的数据,其中的段长编码采用与最小段长的商的以2为 底的对数来相对编码,每段压縮后的数据按顺序合并后即为最终的压縮数据。
3、 根据权利要求2所述的一种幂次数切分的LFSR重播种VLSI测试数据压縮方法,其 特征是所述测试集T中所有的测试向量中包含有无关位"X",所述无关位"X"占测试集的 35% 95%。
全文摘要
一种幂次数切分的LFSR重播种VLSI测试数据压缩方法,其特征是将测试向量级联后,根据确定位的个数进行分段,使每段的长度正好是2的幂次数,而且每段所包含的确定位的个数都等于或者小于且最接近于一个确定的常数k,再通过线性反馈移位寄存器LFSR进行压缩。本发明方法是一种非侵入式的测试数据压缩方法,无需改变被测试的电路结构,尤其是电路中扫描链的结构,降低所需测试数据的存储容量,缩短测试应用时间。
文档编号G01R31/28GK101493499SQ20091011631
公开日2009年7月29日 申请日期2009年3月9日 优先权日2009年3月9日
发明者军 刘, 科 孙, 易茂祥, 扬 李, 梁华国, 欧阳一鸣, 王保青, 蒋翠云, 詹文法, 田 陈, 黄正峰 申请人:合肥工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1