CN102904579B - 基于逐次逼近法的编码压缩方法 - Google Patents
基于逐次逼近法的编码压缩方法 Download PDFInfo
- Publication number
- CN102904579B CN102904579B CN201210415113.9A CN201210415113A CN102904579B CN 102904579 B CN102904579 B CN 102904579B CN 201210415113 A CN201210415113 A CN 201210415113A CN 102904579 B CN102904579 B CN 102904579B
- Authority
- CN
- China
- Prior art keywords
- bot
- mid
- test
- successive approximation
- coding
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000007906 compression Methods 0.000 title claims abstract description 31
- 230000006835 compression Effects 0.000 title claims abstract description 31
- 238000012360 testing method Methods 0.000 claims abstract description 61
- 239000013598 vector Substances 0.000 claims abstract description 13
- 238000001514 detection method Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 abstract 1
- 230000006837 decompression Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000013144 data compression Methods 0.000 description 4
- 241001269238 Data Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000009182 swimming Effects 0.000 description 1
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明提供了一种基于逐次逼近法的编码压缩方法,包括下述步骤:采用自动测试模式生成工具,生成确定的完全测试集;将所有测试向量级联,即将一个向量的尾部接另一个向量的首部;取测试集的前n位,按照4位一组转换成16进制,在第1位数后添加小数点,形成一个16进制浮点数;用逐次逼近法将浮点数转换成(x、r为整数)的形式,存储被开方数x和开方次数r的编码即可,的值可以通过计算得出。本发明的优点在于 :开方次数从2开始计算,逐次递增,保证找到的被开方数和开方次数是最优解 ;定位被开方数区间的下界和上界较为准确,同时采取二分查找的方法,降低了时间复杂度。
Description
技术领域
本发明涉及一种集成电路测试技术,特别是对***芯片(System-on-a-Chip,SoC)的外建自测试(Built-Out Self-Test,BOST)方法中测试数据压缩方法。
背景技术
随着集成电路技术的发展,单个芯片上集成的IP核越来越多,而每个IP核厂商为了达到较高的故障覆盖率和测试硬故障而引入高质量的测试向量,从而给出的测试数据量会很大,因此SoC测试的测试数据量也越来越大。电路集成度的提高导致测试电路所需的测试数据量过大,这是导致测试成本增加的一个重要因素。而SoC的测试时间主要取决于其测试数据量、数据传输的速度和最大扫描链长度,所以当测试数据量过大时,芯片测试的时间会过长。
由于测试数据量的急剧增多,大量的测试数据需要存储在自动测试设备ATE中,并传送到被测电路,这导致传统ATE设备的存储容量不够用,故需要扩大存储器的容量。但是大容量的ATE设备更加昂贵,从而使得测试成本增大,而且即使将ATE的存储容量扩容至足够大,当测试模式数增加和扫描链长度增长时,测试时间也会延长。
扩容ATE设备非常昂贵,对测试数据量进行压缩是解决测试数据量过大问题的有效方法。测试压缩方法首先要有大幅降低测试数据容量的能力,具有高压缩率和很好的适用性;其次压缩后的数据要能够通过解压电路完整的还原,并且解压电路的开销要在可以接受的范围之内,避免以另一种方式增加测试成本。除此之外,压缩方法应该具有良好的扩展性,以满足不同的需求。
测试数据压缩的基本原理是,使用无损数据压缩的方法对测试数据进行压缩,将压缩后的测试数据存到离线的ATE上,这样降低了被测芯片的负担,再通过被测芯片上的解压器进行解压,得到被测试电路的原始测试数据,因而减少存储需求和测试时间。良好的压缩方法,能降低对ATE性能的要求。目前,测试数据压缩技术主要分为两大类:
一类是基于线性解压结构的方案,它是通过线性方程的扩展来实现解码过程。然而,无论是LFSR、XOR网络,还是Illinois扫描结构,都存在一定的线性相关性,可能造成向量的不编码性,虽然可以在ATPG中加入相应约束来保证向量的可编码性,但结果往往会增加测试向量的个数,不利于测试数据压缩和测试时间的减少,同时解压结构依赖确定测试集的特征,因此测试移植性不强。
另一类是采用编码的方案,它是把原始测试集进行不同的划分,用较短的码字表示这些划分。常见的编码方案有:FDR编码,EFDR编码,交替连续编码,9C编码,混合性编码。编码压缩技术的优点是在不降故障覆盖率的情况下,降低了对ATE性能的要求,能有效地保护知识产权,其被测芯片上的解压模块可以重用,因此,该种技术得到广泛应用。
在编码压缩技术中,根据对测试集划分策略的不同,测试集可以分为等长划分或以某一特点变长划分,划分对应的码字也可以是变长或者是定长。因此,可以将编码方法划分为四类:定长-定长的编码方法,如字典编码;定长-变长的编码方法,如Huffman编码;变长-定长的编码方法,如游程编码;变长-变长的编码方法,如FDR码、EFDR码等。
定长-定长的编码方法和压缩协议简单,但压缩效果不是很好;定长-变长编码方法的压缩效果较前者好些,但一般硬件开销比较大。Huffman编码随着Huffman树的增大,其解压结构也越来越复杂,硬件开销大;变长-变长的编码方法可以取得很好的压缩效果,但该类方法控制协议也比较复杂。定长-变长编码和变长-定长编码在压缩效果和硬件开销方面处于前定长-定长的编码方法和变长-变长的编码方法之间。
发明内容
本发明要解决的技术问题是提供一种新的基于逐次逼近法的编码压缩方法,是一种新颖的定长-变长编码压缩方法,编码方法和压缩协议简单,同时可以取得很好的压缩效果。
本发明采用以下技术方案解决上述技术问题的:基于逐次逼近法的编码压缩方法的具体步骤为:
a、采用自动测试模式生成工具ATPG,生成确定的完全测试集T。
b、将所有测试向量级联,即将一个向量的尾部接另一个向量的首部,记为S。
c、取测试集的前n位,按照4位一组转换成16进制,在第1位数后添加小数点,形成一个16进制浮点数f。
d、求对应的整数x、r。1)首先计算f2,取top=bot+1,r=2;2)计算若其值等于f,则记录x=top,r并转步骤e;3)r=r+1;4)取计算若其值等于f,则记录x=mid,r并转步骤e;若其值大于f,则top=mid-1;若其值小于f,则bot=mid+1。重复步骤4),直到bot>top,转步骤5);5)若top小于mid,则bot=top,top=mid,否则top=bot,bot=mid,重复步骤3),4),5),直到找到整数x、r,使转步骤e。
e、编码。将x、r进行编码,将S除去前n位,重复步骤c、d,此过程直到S为空。
更具体的,可以将x、r按现有广泛应用的偶数位标记编码(CEBM)。
本发明的优点在于:
本发明提供了一种将浮点数转换为形如(其中x,r为整数)的无理数的方法,能以较快的速度找到对应的被开方数和开方次数的最优解,从而保证使用该方法进行编码压缩时可以取得很好的压缩效果。
并且本发明具有如下三个特点:(1)开方次数从2开始计算,逐次递增,可以保证找到的被开方数和开方次数是最优解;(2)定位被开方数区间的下界和上界较为准确,同时采取二分查找的方法,降低了时间复杂度。(3)在二分查找中,对中间数的运算过程中,全部为整数,可以降低运算复杂度,减少运行时间,加快运算进程。
附图说明
图1是本发明基于逐次逼近法的编码压缩方法的流程图。
具体实施方式
本发明方法提出一种基于逐次逼近法的定长-变长编码压缩方法,将整个测试集的存储转换成对一组或若干组被开方数和开方次数的存储,请参阅图1所示,该基于逐次逼近法的编码压缩方法的的具体步骤为:
a、采用自动测试模式生成工具ATPG,生成确定的完全测试集T。
b、将所有测试向量级联,即将一个向量的尾部接另一个向量的首部,记为S。
c、取测试集的前n位,按照4位一组转换成16进制,在第1位数后添加小数点,形成一个16进制浮点数f。
d、二分无理数区间,逐次逼近f,求对应的整数x、r。1)首先计算f2,取top=bot+1,r=2;2)计算若其值等于f,则记录x=top,r并转步骤e;3) r=r+1;4)取计算若其值等于f,则记录x=mid,r并转步骤e;若其值大于f,则top=mid-1;若其值小于f,则bot=mid+1。重复步骤4),直到bot>top,转步骤5);5)若top小于mid,则bot=top,top=mid,否则top=bot,bot=mid,重复步骤步骤3),4),5),直到找到整数x、r,使转步骤e。该步骤中,对中间数mid的运算过程中,mid全部为整数,可以降低运算复杂度,减少运行时间,加快运算进程。
e、编码。将x、r按现有广泛应用的偶数位标记编码(CEBM),当然也可以按照其他的现有方式编码,即为对应编码;将S除去前n位,重复步骤c、d,此过程直到S为空。其中,偶数位标记编码方式如表1所示。
表1偶数位标记编码编码表
CEBM使用了变长到变长的编码方式,第一列是游程长度,第二列是组数,第三列和第四列是代码字的奇数位和偶数位,最后一列是对应代码字。偶数位标记编码的特点是偶数位表示代码字是否结束,奇数位表示游程的长度信息。代码字的偶数位如果为0,表示代码字继续;偶数位如果为1,则表示本代码字结束。而长度信息仅含在奇数位。这样解压可以根据偶数位判断代码字是否结束,根据奇数位判断代码字的长度。
如长度为7的编码为000011,其中偶数位为001,奇数位为001。解码时,只用监控偶数位的数据,如果为0,表示代码字继续;如果为1,则表示本代码字结束。在奇数位(001)前增加一位数据1,即得到1001,其对应的十进制值为9,比其代表的长度7多2,因此自减计数时,让计算器的结束值为2即可。偶数位标记编码因易于解码,硬件开销小,得到广泛应用。
为了方便描述,举一例进行说明。不失一般性,设原始测试集T={00011010,11101000,10011111,10011001,01011010,11010011,11101001,…},将其级联后划分成长度为48的等长序列,则数据流为:00011010111010001001111110011001010110101101001111101001…,其前48位可转换成16进制浮点数f=1.AE89F995AD3。1)首先计算f2=2.D413CCCFE7551FCA6F09E9,top=bot+1=3,r=2;2)计算其值不等于f,转步骤3);3) r=r+1=3;4)取计算若其值等于f,则记录x=mid,r并转步骤e;若其值大于f,则top=mid-1;若其值小于f,则bot=mid+1。重复步骤4),直到bot=5,top=4,bot>top,转步骤5);5)若top小于mid,则bot=top,top=mid,否则top=bot,bot=mid;则bot=4,top=5,重复步骤3)、4)、5),此时有r=4,x=8,使所以对数据流
00011010111010001001111110011001010110101101001111101001…前48位的存储就可以转化为对被开方数8和开方次数4的存储。
请参见下表2,为采用本发明压缩方法的实验结果。使用的是Mintest测试集中的6个时序电路,第一列为电路名称,第二列为原测试集数据位数,第三列为压缩后的数据位数,第四列为压缩效果。
表2实验数据
以上所述仅为本发明创造的较佳实施例而已,并不用以限制本发明创造,凡在本发明创造的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明创造的保护范围之内。
Claims (2)
1.一种基于逐次逼近法的编码压缩方法,其特征在于:包括下述步骤:
a、采用自动测试模式生成工具ATPG,生成确定的完全测试集;
b、将所有测试向量级联,即将一个向量的尾部接另一个向量的首部,记为S;
c、取测试集的前n位,按照4位一组转换成16进制,在第1位数后添加小数点,形成一个16进制浮点数f;
d、求对应的整数x、r,1)首先计算f2,取top=bot+1,r=2;2)计算若其值等于f,则记录x=top,r并转步骤e;3)r=r+1;4)取计算若其值等于f,则记录x=mid,r并转步骤e;若其值大于f,则top=mid-1;若其值小于f,则bot=mid+1,重复步骤4),直到bot>top,转步骤5);5)若top小于mid,则bot=top,top=mid,否则top=bot,bot=mid,重复步骤3),4),5),直到找到整数x、r,使转步骤e;
e、编码,将x、r进行编码,将S除去前n位,重复步骤c、d,此过程直到S为空。
2.如权利要求1所述的基于逐次逼近法的编码压缩方法,其特征在于:x、r按偶数位标记编码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210415113.9A CN102904579B (zh) | 2012-10-25 | 2012-10-25 | 基于逐次逼近法的编码压缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210415113.9A CN102904579B (zh) | 2012-10-25 | 2012-10-25 | 基于逐次逼近法的编码压缩方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102904579A CN102904579A (zh) | 2013-01-30 |
CN102904579B true CN102904579B (zh) | 2015-03-25 |
Family
ID=47576649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210415113.9A Expired - Fee Related CN102904579B (zh) | 2012-10-25 | 2012-10-25 | 基于逐次逼近法的编码压缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102904579B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104182407B (zh) * | 2013-05-23 | 2017-07-11 | 中国科学院软件研究所 | 一种缩小数据查找范围的数据处理*** |
CN104753541B (zh) * | 2015-04-27 | 2016-10-12 | 安庆师范学院 | 无理数存储测试向量的测试数据压缩方法 |
CN105577192A (zh) * | 2015-12-21 | 2016-05-11 | 安庆师范学院 | 数字集成电路中测试数据的编码压缩方法 |
CN109905125B (zh) * | 2017-12-07 | 2022-09-27 | 华大半导体有限公司 | 模数转换器以及模数转换方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080019140A (ko) * | 2006-08-25 | 2008-03-03 | 엘지전자 주식회사 | 테스트 벡터 압축 방법 및 압축된 테스트 벡터를 복원하는디코더 |
CN101968528A (zh) * | 2010-08-19 | 2011-02-09 | 詹文法 | 集成电路测试中的测试数据压缩方法 |
CN102522120A (zh) * | 2011-11-08 | 2012-06-27 | 詹文法 | 一种无需存储字典的字典编码压缩方法 |
-
2012
- 2012-10-25 CN CN201210415113.9A patent/CN102904579B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080019140A (ko) * | 2006-08-25 | 2008-03-03 | 엘지전자 주식회사 | 테스트 벡터 압축 방법 및 압축된 테스트 벡터를 복원하는디코더 |
CN101968528A (zh) * | 2010-08-19 | 2011-02-09 | 詹文法 | 集成电路测试中的测试数据压缩方法 |
CN102522120A (zh) * | 2011-11-08 | 2012-06-27 | 詹文法 | 一种无需存储字典的字典编码压缩方法 |
Non-Patent Citations (2)
Title |
---|
Wenfa zhan et al..《A new Collaborative Scheme of Test Vector Compression based on Equal-Run-Length Coding(ERLC)》.《Proceedings of the 2009 13th International Conference on Computer Supported Cooperative Work in Design》.ISBN:978-1-4244-3534-0,2009,第21-25页. * |
Wenfa Zhan et al..《A Novel Collaborative Scheme of Test Data Compression Based on Fixed-Plus-Variable-length Coding》.《Proceedings of the 2007 11th International Conference on Computer Supported Cooperative Work in Design》.ISBN:1-4244-0963-2,2007,第1044-1049页. * |
Also Published As
Publication number | Publication date |
---|---|
CN102904579A (zh) | 2013-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101807926B (zh) | 低功耗soc测试数据压缩编码方法 | |
El-Maleh | Test data compression for system-on-a-chip using extended frequency-directed run-length code | |
Balakrishnan et al. | Relationship between entropy and test data compression | |
Iyengar et al. | Built-in self testing of sequential circuits using precomputed test sets | |
CN102904579B (zh) | 基于逐次逼近法的编码压缩方法 | |
CN102353894A (zh) | 基于参考向量和位掩码的soc的测试方法 | |
CN104038232A (zh) | 基于二次异或运算的测试数据压缩与解压缩方法 | |
Kavousianos et al. | Multilevel Huffman coding: An efficient test-data compression method for IP cores | |
CN102522120B (zh) | 一种字典编码压缩方法 | |
Würtenberger et al. | A hybrid coding strategy for optimized test data compression | |
CN104753541A (zh) | 无理数存储测试向量的测试数据压缩方法 | |
CN104038233A (zh) | 基于相邻位异或运算的测试数据压缩与解压缩方法 | |
CN103746706A (zh) | 基于双游程交替编码的测试数据压缩与解压缩方法 | |
Balakrishnan et al. | Relating entropy theory to test data compression | |
Kavousianos et al. | Multilevel-Huffman test-data compression for IP cores with multiple scan chains | |
CN103746704A (zh) | 基于双游程交替编码的芯片测试数据传输方法 | |
CN102043126A (zh) | 一种基于测试向量相容的三游程编码压缩方法及其解压缩方法 | |
CN110798223B (zh) | 一种最小游程切换点标记编码压缩方法及装置 | |
Karimi et al. | Data compression for system-on-chip testing using ATE | |
Ren | A data compression technique based on reversed leading bits coding and Huffman coding | |
Sismanoglou et al. | Test data compression based on the reuse of parts of the dictionary entries | |
Karimi et al. | Using data compression in automatic test equipment for system-on-chip testing | |
CN110865299B (zh) | 一种基于前向相容的折叠集分层压缩方法及装置 | |
Lin et al. | On reducing test power and test volume by selective pattern compression schemes | |
Saravanan et al. | Run-length based compression for selective unspecified test pattern |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150325 Termination date: 20151025 |
|
EXPY | Termination of patent right or utility model |