CN103675650A - 一种嵌入式边界扫描数据压缩、合成方法及装置 - Google Patents

一种嵌入式边界扫描数据压缩、合成方法及装置 Download PDF

Info

Publication number
CN103675650A
CN103675650A CN201310727223.3A CN201310727223A CN103675650A CN 103675650 A CN103675650 A CN 103675650A CN 201310727223 A CN201310727223 A CN 201310727223A CN 103675650 A CN103675650 A CN 103675650A
Authority
CN
China
Prior art keywords
test
data
scan chain
pin
matrix
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.)
Granted
Application number
CN201310727223.3A
Other languages
English (en)
Other versions
CN103675650B (zh
Inventor
杜影
李洋
徐鹏程
王石记
安佰岳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Aerospace Measurement and Control Technology Co Ltd
Original Assignee
Beijing Aerospace Measurement and Control Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Aerospace Measurement and Control Technology Co Ltd filed Critical Beijing Aerospace Measurement and Control Technology Co Ltd
Priority to CN201310727223.3A priority Critical patent/CN103675650B/zh
Publication of CN103675650A publication Critical patent/CN103675650A/zh
Application granted granted Critical
Publication of CN103675650B publication Critical patent/CN103675650B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)

Abstract

本发明公开了一种嵌入式边界扫描数据压缩、合成方法和装置。包括:得到标准扫描链数据;获取参与测试的管脚数据、测试矩阵和响应矩阵;将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵存储至嵌入式测试装置的芯片中。获取存储在该芯片中的标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵;计算每个参与测试的管脚的扫描单元在标准扫描链数据上的位置,以利用测试矩阵中的向量合成标准扫描链数据,利用响应矩阵中的向量合成标准扫描链数据。本发明有效地解决了测试装置存储空间小,无法进行大数据量的边界扫描测试的问题。有效的压缩了边界扫描数据的数据量,节省了存储空间,减少了测试时间和测试开销,提高了生产效率。

Description

一种嵌入式边界扫描数据压缩、合成方法及装置
技术领域
本发明涉及边界扫描测试技术领域,特别是涉及一种嵌入式边界扫描数据压缩、合成方法及装置。
背景技术
边界扫描技术是复杂电路板故障检测与诊断的主流测试性设计技术。在现有技术中,基于边界扫描技术的边界扫描测试系统能够完成测试生成、测试向量的加载、测试响应分析、故障显示和辅助功能等任务。
嵌入式边界扫描技术是边界扫描测试技术与嵌入式测试技术的结合,其目的是为了解决繁重的测试与诊断问题。在嵌入式边界扫描技术中,把外部边界扫描引擎的性能设计到测试装置中,以增强测试的自动化,提高测试覆盖率和测试效率,并降低产品整个寿命周期的测试维修成本。因此,嵌入式边界扫描需要JTAG引擎,以及JTAG测试图形(测试向量)、编程算法的存储空间。JTAG测试图形和编程算法由外部独立应用的边界扫描系统产生,并把它们转换为某种协议格式,在测试前存储到测试装置中。
对于板级系统,在进行嵌入式边界扫描时,一般不占用电路板功能电路的存储空间,而是使用板上的嵌入式边界扫描测试装置完成全部的边界扫描操作。由于嵌入式边界扫描测试装置体积小,存储容量有限,所以,无法进行大数据量的边界扫描测试。
发明内容
本发明要解决的技术问题是对嵌入式边界扫描数据进行压缩和合成,用以解决现有技术的嵌入式边界扫描测试装置存储空间小,无法进行大数据量的边界扫描测试的问题。
为解决上述技术问题,本发明提供一种嵌入式边界扫描数据压缩方法,包括:根据扫描链中包含的一个或多个扫描单元,设置各个扫描单元的初始值,得到标准扫描链数据;获取参与测试的管脚数据;获取用于测试的测试矩阵和响应矩阵;将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵作为嵌入式边界扫描数据存储至嵌入式测试装置的芯片中。
其中,根据扫描链中包含的一个或多个扫描单元,设置各个扫描单元的初始值,还包括:将扫描链中的不参与测试的扫描单元设置为固定状态;将扫描链中参与测试的扫描单元设置为可变状态。
其中,所述参与测试的管脚包括输出管脚和输入管脚;所述参与测试的管脚数据至少包括:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号。
其中,将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵作为嵌入式边界扫描数据存储至嵌入式测试装置的芯片中,包括:按照设定顺序,将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵转化为字节数据序列,将所述字节数据序列作为嵌入式边界扫描数据;其中,所述设定顺序是:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号、标准扫描链数据的字节数据、测试矩阵的字节数据、响应矩阵的字节数据。
本发明还提供了一种嵌入式边界扫描数据压缩装置,包括:根据扫描链中包含的一个或多个扫描单元设置各个扫描单元的初始值,得到标准扫描链数据的装置;获取参与测试的管脚数据的装置;获取用于测试的测试矩阵和响应矩阵装置;将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵作为嵌入式边界扫描数据存储至嵌入式测试装置的芯片中的装置。
本发明又提供了一种嵌入式边界扫描数据合成方法,包括:获取存储在嵌入式测试装置的芯片中的嵌入式边界扫描数据;在所述嵌入式边界扫描数据中,获取标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵;根据所述参与测试的管脚数据,计算每个参与测试的管脚对应的扫描单元在标准扫描链数据上的位置;根据每个参与测试的管脚的扫描单元在标准扫描链数据上的位置,将所述测试矩阵中的向量插入到标准扫描链数据,以合成测试扫描链数据,并且将响应矩阵中的向量插入到标准扫描链数据中,以合成期望扫描链数据。
其中,所述参与测试的管脚包括输出管脚和输入管脚;所述参与测试的管脚数据至少可以包括:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号。
其中,在所述嵌入式边界扫描数据中,获取标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵,包括:所述嵌入式边界扫描数据包含存储顺序:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号、标准扫描链数据的字节数据、测试矩阵的字节数据、响应矩阵的字节数据。
其中,根据所述参与测试的管脚数据,计算每个参与测试的管脚对应的扫描单元在标准扫描链数据上的位置,包括:将每个参与测试的管脚的位置序号对8取整,得到的值为所述管脚在标准扫描链数据中所处的字节;以及将每个参与测试的管脚的位置序号对8取余,得到的值为所述管脚在标准扫描链数据中所处的字节中所占的比特位。
本发明再提供了一种嵌入式边界扫描数据合成装置,包括:获取存储在嵌入式测试装置的芯片中的嵌入式边界扫描数据的装置;在所述嵌入式边界扫描数据中,获取标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵的装置;根据所述参与测试的管脚数据,计算每个参与测试的管脚对应的扫描单元在标准扫描链数据上的位置的装置;根据每个参与测试的管脚的扫描单元在标准扫描链数据上的位置,将所述测试矩阵中的向量插入到标准扫描链数据以合成测试扫描链数据,并且将响应矩阵中的向量插入到标准扫描链数据中以合成期望扫描链数据的装置。
本发明有益效果如下:
通过存储字节数据序列的方式,有效的压缩了边界扫描数据的数据量,节省了存储空间。减少了测试时间和测试开销,提高了生产效率。
附图说明
图1是根据本发明一实施例的嵌入式边界扫描测试芯片管脚互连示意图;
图2是根据本发明一实施例的嵌入式边界扫描数据压缩方法流程图;
图3是根据本发明一实施例的标准扫描链数据生成示意图;
图4是根据本发明一实施例的嵌入式边界扫描数据合成方法流程图。
具体实施方式
为了解决现有技术的嵌入式边界扫描测试装置存储空间小,无法进行大数据量的边界扫描测试的问题,本发明提供了一种嵌入式边界扫描数据压缩、合成方法及装置,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
本发明涉及专有名词:扫描单元、扫描链。
扫描单元:位于芯片的输入管脚和输出管脚,是输入管脚和输出管脚与内核电路之间的移位寄存器。
扫描链(Boundary-Scan Chain):顺次连接芯片的管脚上的扫描单元得到扫描链。扫描链的长度等于芯片包含的扫描单元的总数。在扫描链中,由各个扫描单元中的向量组成扫描链数据。
由于在嵌入式边界扫描测试中,芯片管脚互连测试会产生大量的边界扫描数据,所以基于芯片管脚互连测试对本发明的方法及装置进行说明。为了更清晰的描述本发明,忽略被测芯片输出管脚和出入管脚之外的具有其他功能的管脚。将参与测试的输入管脚称作输入管脚,将参与测试的输出管脚称作输出管脚,将不参与测试的输入管脚和输出管脚称作管脚。
如图1所示,图1是根据本发明一实施例的嵌入式边界扫描测试芯片管脚互连示意图。
嵌入式测试装置中的被测芯片包括芯片U1和芯片U2。芯片U1包括14个管脚(序号8至序号21),芯片U2包括8个管脚(序号0至序号7)。那么,连接位于各个管脚的扫描单元而得到的扫描链的长度为22(14+8=22)。
在进行芯片U1和芯片U2的管脚互连测试时,参与测试的管脚有8个,分布在不同的芯片上。在芯片U1中参与测试的管脚包括U1-1、U1-2、U1-3、U1-4四个管脚,序号分别为14、12、10、8,该四个管脚为输出管脚。在芯片U2中参与测试的管脚包括U2-1、U2-2、U2-3、U2-4四个管脚,序号分别为4、5、6、7,该四个管脚为输入管脚。
在芯片管脚互连测试中,可以利用测试矩阵和响应矩阵来测试芯片输出管脚和输入管脚的互连情况。将扫描链中的输出管脚和输入管脚的扫描单元设置为0,不参与测试的管脚的扫描单元设置为安全值。将测试矩阵中的向量串行输入到扫描链中的输出管脚的扫描单元中,在串行输出时,可以得到输入管脚的扫描单元中的向量。响应矩阵作为输入管脚所得的向量的期望值,将输入管脚的扫描单元的向量与响应矩阵中的向量进行比较,若扫描单元的向量与响应矩阵中的向量相同,则表示该芯片的输入管脚与输出管脚的互连无故障,互连测试通过。反之,则输入管脚与输出管脚的互连存在问题,互连测试不通过。
进一步地,在进行芯片管脚互连测试中,可以采用“移位1算法”来测试输出管脚和输入管脚的互连情况,在“移位1算法”中测试矩阵和响应矩阵的对角线为1。由于参与测试的管脚为4对,即4个输出管脚和4个输入管脚,所以,测试矩阵和响应矩阵的维度可以选择4维向量矩阵。
测试矩阵例如是: 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 ; 响应矩阵例如是: 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 ; 测试矩阵和响应矩阵的行和列均为4个向量。测试矩阵中的每列向量对应一个输出管脚。由于测试矩阵拥有4行向量,而且每行向量只能输入到一个扫描链中,这样,需要4组扫描链数据。例如:U1-1对应测试矩阵中的第一列向量,U1-2对应测试矩阵中的第二列向量,U1-3对应测试矩阵中的第三列向量,U1-4对应测试矩阵中的第四列向量。响应矩阵中的每列向量对应一个输入管脚,每行向量对应一组扫描链数据,以便将4个输入管脚的扫描单元的向量与响应矩阵中每列向量进行比较。例如:U2-1对应响应矩阵中的第四列向量,U2-2对应响应矩阵中的第三列向量,U2-3对应响应矩阵中的第二列向量,U2-4对应响应矩阵中的第一列向量。
采用测试矩阵和响应矩阵还可以起到压缩嵌入式边界扫描数据的作用。
本发明提供了一种嵌入式边界扫描数据压缩方法,如图2所示,图2是根据本发明一实施例的嵌入式边界扫描数据压缩的方法流程图。
步骤S210,根据扫描链中包含的一个或多个扫描单元,设置各个扫描单元的初始值,得到标准扫描链数据。
如图3所示,图3是根据本发明一实施例的标准扫描链数据生成示意图,该图3中的各个扫描单元对应图1中各个管脚的扫描单元。
具体而言,可以根据被测芯片(芯片U1、芯片U2)的边界扫描描述文件(BSDL(Boundary Scan Description Language,边界扫描描述语言)文件)中的扫描单元描述信息,来设置各个扫描单元的初始值。该扫描单元描述信息包括:扫描单元的安全值、扫描单元固定状态的设置方式、扫描单元可变状态的设置方式等信息。
在芯片的各个扫描单元中,既包括参与测试的管脚,也包括不参与测试的管脚。将参与测试的管脚的扫描单元设置为0,将不参与测试的管脚的扫描单元设置为安全值。例如将输出管脚U1-1、U1-2、U1-3、U1-4和输入管脚U2-1、U2-2、U2-3、U2-4各自对应的描述单元设置为0,将其他管脚设置为安全值。
将扫描链中的不参与测试的扫描单元设置为固定状态,即安全值固定,不可以改变。将扫描链中参与测试的扫描单元设置为可变状态。可以将序号为4、5、6、7、8、10、12、14的管脚对应的扫描单元设置为可变状态,将其他管脚对应的扫描单元设置为固定状态。通过这种方式,生成一组标准扫描链数据。该标准扫描链数据例如是:0000000010000000001010。进一步地,可以在该标准扫描链数据中,标识出对应输出管脚的扫描单元和对应输入管脚的扫描单元。
将测试矩阵中的每行向量分别放置到标准扫描链数据中相应的可变状态的扫描单元中,则可以将标准扫描链数据变化为一组或多组测试扫描链数据。例如:将测试矩阵中的第一行向量1000放置在标准扫描链数据中相应的扫描单元中,如序号为14、12、10、8的输出管脚对应的扫描单元,得到的测试扫描链数据0000000110000000001010;将测试矩阵中的第二行向量0100放置在标准扫描链数据中相应的扫描单元中,得到测试扫描链数据0000000011000000001010;将测试矩阵中的第三行向量0010放置在标准扫描链数据中相应的扫描单元中,得到测试扫描链数据0000000010010000001010;将测试矩阵中的第四行向量0001放置在标准扫描链数据中相应的扫描单元中,得到测试扫描链数据0000000010000100001010。同样的,将响应矩阵中的每行向量分别放置到标准扫描链数据中相应的可变状态的扫描单元中,则可以将标准扫描链数据变化为一组或多组期望扫描链数据。
由于测试矩阵和标准扫描链数据的数据量较小,避免了生成多个较大数据量的扫描链数据,有效的减少了存储空间。
步骤S220,获取参与测试的管脚数据。
参与测试的管脚数据至少可以包括:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号。
如图2所示,根据对被测芯片U1和芯片U2的各个扫描单元的设置,参与测试的输出管脚总数为4。参与测试的输入管脚总数为4。输出管脚对应的扫描单元在扫描链数据上的位置序号为8、10、12、14。输入管脚对应的扫描单元在扫描链数据上的位置序号为4、5、6、7。
步骤S230,设置用于测试的测试矩阵和响应矩阵。
测试矩阵中向量的列数等于参与测试的输出管脚的总数,例如参与测试的输出管脚总数为4,则该测试矩阵中包含4列向量。
响应矩阵中向量的列数等于参与测试的输入管脚的总数,例如参与测试的输入管脚总数为4,则该响应矩阵中包含4列向量。
测试矩阵和响应矩阵可以设置为对角线为1的4维向量矩阵。
步骤S240,将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵作为嵌入式边界扫描数据存储至嵌入式测试装置的芯片中,完成对嵌入式边界扫描数据的压缩。
按照设定顺序,将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵转化为字节数据序列,将该字节数据序列作为嵌入式边界扫描数据。
具体而言,参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号为十进制数,可以不作变化。
将标准扫描链数据、测试矩阵、响应矩阵由二进制转化为字节数据。一个字节等于8位二进制数。例如:标准扫描链数据为0000000010000000001010,该标准扫描链数据的十六进制(0x)为00200A,则按照低字节数据(LSB,Least Significant Bit)到高字节数据(MSB,Most Significant Bit)的顺序得到该标准扫描链数据的字节数据为10(0x0A)、32(0x20)、0(0x00),该字节数据为十进制。字节的序号是从0开始,那么10为第0个字节,32为第1个字节,0为第2个字节。
测试矩阵和响应矩阵中的二进制向量可以按照行来计算字节数据。将测试矩阵: 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 转换为字节数据为8(1000)、4(0100)、2(0010)、1(0001)。将响应矩阵: 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 转化为字节数据为1(0001)、2(0010)、4(0100)、8(1000)。
字节数据序列中各个数据的顺序可以是:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号、标准扫描链数据的字节数据、测试矩阵的字节数据、响应矩阵的字节数据。例如:字节数据序列为4、4、14、12、10、8、7、6、5、4、10、32、0、8、4、2、1、1、2、4、8。
将该字节数据序列作为边界扫描数据存储至嵌入式测试装置的芯片中,如存储至嵌入式测试装置的存储芯片中。
现有的存储芯片容量小,而边界扫描数据的数据量大,使测试装置无法进行大数据量的边界扫描测试,例如:输出管脚和输入管脚为4对,扫描链长度为1000个扫描单元,则需要生成4组测试扫描链数据,也即是生成4000bit(4*1000=4000)的测试扫描链数据,而且为了验证边界扫描测试的结果,还要生成4000bit的期望扫描链数据。若扫描链长度继续增加,且输出管脚和输入管脚的对数继续增加,那么需要生成的测试扫描链数据和期望扫描链数据的比特数也将增加。这对于测试装置的存储测试扫描链数据造成了负担。
然而,本发明通过存储字节数据序列的方式,有效的压缩了边界扫描数据的数据量,节省了存储空间。
基于本发明的嵌入式边界扫描数据压缩方法,本发明还提供了一种嵌入式边界扫描数据合成方法,图4是根据本发明一实施例的嵌入式边界扫描数据合成方法流程图。
步骤S410,获取存储在嵌入式测试装置的特定芯片中的嵌入式边界扫描数据。
步骤S420,在嵌入式边界扫描数据中,获取标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵。
该嵌入式边界扫描数据是字节数据序列,并且在该字节数据序列中包括标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵。参与测试的管脚数据至少可以包括:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号。进一步地,该字节数据序列(嵌入式边界扫描数据)包含的数据的存储顺序为:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号、标准扫描链数据的字节数据、测试矩阵的字节数据、响应矩阵的字节数据。即存储顺序为:参与测试的管脚数据、准扫描链数据、测试矩阵和响应矩阵。
例如:字节数据序列是4、4、14、12、10、8、7、6、5、4、10、32、0、8、4、2、1、1、2、4、8。可以在字节数据序列中取出参与测试的输出管脚数量4;参与测试的输入管脚数量4;输出管脚对应的扫描单元在扫描链上的位置序号14、12、10、8;输入管脚对应的扫描单元在扫描链上的位置序号7、6、5、4;标准扫描链数据的字节数据10(0x0A)、32(0x20)、0(0x00);测试矩阵的字节数据8、4、2、1;响应矩阵的字节数据1、2、4、8。
步骤S430,根据参与测试的管脚数据,计算每个参与测试的管脚对应的扫描单元在标准扫描链数据上的位置。
可以利用每个参与测试的管脚在扫描链中的位置序号,将每个参与测试的管脚的位置序号对8取整,得到的值为管脚在标准扫描链数据中所处的字节。再将每个参与测试的管脚的位置序号对8取余,得到的值为管脚在标准扫描链数据中所处的字节中所占的比特位。进而得到该参与测试的管脚的扫描单元在标准扫描链数据中的位置。该参与测试的管脚包括输出管脚和输入管脚。
例如:计算输出管脚10(序号)在标准扫描链数据中的位置。将序号10对8取整,值为1,即该序号为10的输出管脚的扫描单元处于标准扫描链数据的第1个字节。其中,标准扫描链数据的三个字节为10(0x0A)、32(0x20)、0(0x00),第0字节是10,第1字节是32,第2个字节是0。进一步地,将序号10对8取余,值为2,即该序号为10的输出管脚的扫描单元处于第1字节的第3个比特。其中,32对应的二进制数为00100000(0x20),从低位至高位(从右至左),比特的位置从0开始计算,该序号为10的输出管脚的扫描单元所对应的比特值为0。
以此类推,可以得到各个输出管脚和输入管脚在标准扫描链数据中的位置。
步骤440,根据每个参与测试的管脚的扫描单元在标准扫描链数据上的位置,将测试矩阵中的向量插入到标准扫描链数据,以合成测试扫描链数据,并且将响应矩阵中的向量插入到标准扫描链数据中,以合成期望扫描链数据。
顺次获取测试矩阵中的每行向量,根据每列向量与输出管脚的对应关系,将该行向量中的每个向量插入到对应的输出管脚的扫描单元中。
具体而言,将行向量中的每个向量与对应的输出管脚的扫描单元中的向量进行逻辑或计算,以将行向量中的每个向量插入到标准扫描链数据中。
例如:在测试矩阵 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 中,取测试矩阵的第一行向量1000,其中:1对应U1-1,后面的000依次对应U1-2、U1-3和U1-4。
在标准扫描链数据0000000010000000001010中,U1-1、U1-2、U1-3和U1-4各自对应的扫描单元被预先设置为0,1和0取或得1,0和0取或得0,则插入行向量1000后得到的测试扫描链数据为0000000110000000001010(0x00600A)。以此类推,可以顺次得到每行向量插入标准扫描数据后的测试扫描链数据为0000000011000000001010(0x00300A)、0000000010010000001010(0x00240A)、0000000010000100001010(0x00210A)。
顺次获取响应试矩阵中的每行向量,根据每列向量与输入管脚的对应关系,将该行向量中的每个向量插入到对应的输入管脚的扫描单元中。
响应矩阵的每行向量的插入方法与测试矩阵中的每行向量的插入方法相同,在此不做赘述。最终可以得到,响应矩阵中第一行向量0001插入标准扫描链数据后得到的期望扫描链数据为0000000010000000011010(0x00201A),第二行向量0010插入标准扫描链数据后得到的期望扫描链数据为0000000010000000101010(0x00202A),第三行向量0100插入标准扫描链数据后得到的期望扫描链数据为0000000010000001001010(0x00204A),第四行向量1000插入标准扫描链数据后得到期望扫描链数据为0000000010000010001010(0x00208A)。
进一步地,测试扫描链数据与期望扫描链数据存在对应关系。测试矩阵中的每行向量形成的测试扫描链数据对应响应矩阵中相同行向量形成的期望扫描链数据。例如:
测试扫描链数据0x00600A对应期望扫描链数据0x00201A;
测试扫描链数据0x00300A对应期望扫描链数据0x00202A;
测试扫描链数据0x00240A对应期望扫描链数据0x00204A;
测试扫描链数据0x00210A对应期望扫描链数据0x00208A。
至此,嵌入式边界扫描数据合成完成。该合成方式可以利用字节数据序列,便捷的合成测试所用的测试扫描链数据和期望扫描链数据。利用该合成的数据可以实现芯片管脚互连测试。
步骤S450,在被测芯片中串行输入测试扫描链数据,串行输出测试结果,并将测试结果与期望扫描链数据进行比较,以确定测试结果。
若测试结果与期望扫描链数据相同,则测试通过。
若测试结果与期望扫描链数据不同,则测试不通过。
对于不同的边界扫描测试类型,不需要更改编程算法程序,只需要外部独立的系统获得边界扫描数据,并将该数据下载(存储)至嵌入式边界扫描测试装置即可。
可见,本发明通过对边界扫描数据压缩、合成的方式,解决了嵌入式边界扫描技术中测试装置存储空间小,无法进行大数据量的边界扫描测试的问题。提高了电路的可控制性和可观性,使整个电路更加易于测试,提高了电路的可测试能力。减少了测试时间和测试开销,提高了生产效率;采用嵌入式测试方法,大大简化了测试工作量和复杂度,无需配备外部测试仪器,特别是针对现场级检测,其应用非常简便。
本发明还提供了一种嵌入式边界扫描数据压缩装置,该装置对应于本发明一种嵌入式边界扫描数据压缩方法。
该装置可以包括:根据扫描链中包含的一个或多个扫描单元设置各个扫描单元的初始值,得到标准扫描链数据的装置;获取参与测试的管脚数据的装置;获取用于测试的测试矩阵和响应矩阵装置;将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵作为嵌入式边界扫描数据存储至嵌入式测试装置的特定芯片中的装置。
本发明又提供了一种嵌入式边界扫描数据合成装置,该装置对应于本发明一种嵌入式边界扫描数据合成方法。
在该装置中可以包括:获取存储在嵌入式测试装置的特定芯片中的嵌入式边界扫描数据的装置;在所述嵌入式边界扫描数据中,获取标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵的装置;根据所述参与测试的管脚数据,计算每个参与测试的管脚的扫描单元在标准扫描链数据上的位置的装置;根据每个参与测试的管脚的扫描单元在标准扫描链数据上的位置,将所述测试矩阵中的向量插入到标准扫描链数据以得到测试扫描链数据,并且将响应矩阵中的向量插入到标准扫描链数据中以得到期望扫描链数据的装置。
尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。

Claims (10)

1.一种嵌入式边界扫描数据压缩方法,其特征在于,包括:
根据扫描链中包含的一个或多个扫描单元,设置各个扫描单元的初始值,得到标准扫描链数据;
获取参与测试的管脚数据;
设置用于测试的测试矩阵和响应矩阵;
将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵作为嵌入式边界扫描数据存储至嵌入式测试装置的芯片中。
2.如权利要求1所述的方法,其特征在于,根据扫描链中包含的一个或多个扫描单元,设置各个扫描单元的初始值,还包括:
将扫描链中的不参与测试的扫描单元设置为固定状态;
将扫描链中参与测试的扫描单元设置为可变状态。
3.如权利要求1所述的方法,其特征在于,
所述参与测试的管脚包括输出管脚和输入管脚;
所述参与测试的管脚数据至少包括:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号。
4.如权利要求3所述的方法,其特征在于,将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵作为嵌入式边界扫描数据存储至嵌入式测试装置的芯片中,包括:
按照设定顺序,将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵转化为字节数据序列,将所述字节数据序列作为嵌入式边界扫描数据;其中,
所述设定顺序是:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号、标准扫描链数据的字节数据、测试矩阵的字节数据、响应矩阵的字节数据。
5.一种嵌入式边界扫描数据压缩装置,其特征在于,包括:
根据扫描链中包含的一个或多个扫描单元设置各个扫描单元的初始值,得到标准扫描链数据的装置;
获取参与测试的管脚数据的装置;
获取用于测试的测试矩阵和响应矩阵装置;
将标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵作为嵌入式边界扫描数据存储至嵌入式测试装置的芯片中的装置。
6.一种嵌入式边界扫描数据合成方法,其特征在于,包括:
获取存储在嵌入式测试装置的芯片的嵌入式边界扫描数据;
在所述嵌入式边界扫描数据中,获取标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵;
根据所述参与测试的管脚数据,计算每个参与测试的管脚对应的扫描单元在标准扫描链数据上的位置;
根据每个参与测试的管脚的扫描单元在标准扫描链数据上的位置,将所述测试矩阵中的向量插入到标准扫描链数据,以合成测试扫描链数据,并且将响应矩阵中的向量插入到标准扫描链数据中,以合成期望扫描链数据。
7.如权利要求6所述的方法,其特征在于,
所述参与测试的管脚包括输出管脚和输入管脚;
所述参与测试的管脚数据至少可以包括:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号。
8.如权利要求7所述的方法,其特征在于,在所述嵌入式边界扫描数据中,获取标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵,包括:
所述嵌入式边界扫描数据包含存储顺序:参与测试的输出管脚数量、参与测试的输入管脚数量、每个输出管脚对应的扫描单元在扫描链上的位置序号、每个输入管脚对应的扫描单元在扫描链上的位置序号、标准扫描链数据的字节数据、测试矩阵的字节数据、响应矩阵的字节数据。
9.如权利要求8所述的方法,其特征在于,根据所述参与测试的管脚数据,计算每个参与测试的管脚对应的扫描单元在标准扫描链数据上的位置,包括:
将每个参与测试的管脚的位置序号对8取整,得到的值为所述管脚在标准扫描链数据中所处的字节;以及
将每个参与测试的管脚的位置序号对8取余,得到的值为所述管脚在标准扫描链数据中所处的字节中所占的比特位。
10.一种嵌入式边界扫描数据合成装置,其特征在于,包括:
获取存储在嵌入式测试装置的芯片中的嵌入式边界扫描数据的装置;
在所述嵌入式边界扫描数据中,获取标准扫描链数据、参与测试的管脚数据、测试矩阵和响应矩阵的装置;
根据所述参与测试的管脚数据,计算每个参与测试的管脚对应的扫描单元在标准扫描链数据上的位置的装置;
根据每个参与测试的管脚的扫描单元在标准扫描链数据上的位置,将所述测试矩阵中的向量插入到标准扫描链数据以合成测试扫描链数据,并且将响应矩阵中的向量插入到标准扫描链数据中以合成期望扫描链数据的装置。
CN201310727223.3A 2013-12-25 2013-12-25 一种嵌入式边界扫描数据压缩、合成方法及装置 Active CN103675650B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310727223.3A CN103675650B (zh) 2013-12-25 2013-12-25 一种嵌入式边界扫描数据压缩、合成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310727223.3A CN103675650B (zh) 2013-12-25 2013-12-25 一种嵌入式边界扫描数据压缩、合成方法及装置

Publications (2)

Publication Number Publication Date
CN103675650A true CN103675650A (zh) 2014-03-26
CN103675650B CN103675650B (zh) 2017-01-18

Family

ID=50313808

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310727223.3A Active CN103675650B (zh) 2013-12-25 2013-12-25 一种嵌入式边界扫描数据压缩、合成方法及装置

Country Status (1)

Country Link
CN (1) CN103675650B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104977523A (zh) * 2014-04-11 2015-10-14 瑞萨电子株式会社 半导体器件、诊断测试和诊断测试电路
CN109444716A (zh) * 2018-11-27 2019-03-08 中科曙光信息产业成都有限公司 一种具有定位功能的扫描测试结构及方法
CN111579974A (zh) * 2020-06-09 2020-08-25 中国电子科技集团公司第十四研究所 实现边界扫描测试的被测模块、嵌入式系统及测试方法
WO2024065693A1 (zh) * 2022-09-30 2024-04-04 华为技术有限公司 一种生成压缩测试向量的方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020059017A (ko) * 2000-12-30 2002-07-12 엘지전자 주식회사 클러스터 테스트와 에지 테스트를 동시에 수행하는 테스트패턴의 생성방법
CN1476174A (zh) * 2003-07-04 2004-02-18 清华大学 片上系统的测试数据压缩编码、解码方法及专用解码单元
CN1577284A (zh) * 2003-07-28 2005-02-09 华为技术有限公司 一种边界扫描测试的实现方法及装置
CN1862274A (zh) * 2006-05-27 2006-11-15 合肥工业大学 一种多扫描链的大规模集成电路测试数据压缩方法
KR20070098200A (ko) * 2006-03-31 2007-10-05 엘지전자 주식회사 반도체 칩 테스트 장치 및 그 방법
US20080250288A1 (en) * 2005-09-08 2008-10-09 Nxp B.V. Scan Testing Methods

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020059017A (ko) * 2000-12-30 2002-07-12 엘지전자 주식회사 클러스터 테스트와 에지 테스트를 동시에 수행하는 테스트패턴의 생성방법
CN1476174A (zh) * 2003-07-04 2004-02-18 清华大学 片上系统的测试数据压缩编码、解码方法及专用解码单元
CN1577284A (zh) * 2003-07-28 2005-02-09 华为技术有限公司 一种边界扫描测试的实现方法及装置
US20080250288A1 (en) * 2005-09-08 2008-10-09 Nxp B.V. Scan Testing Methods
KR20070098200A (ko) * 2006-03-31 2007-10-05 엘지전자 주식회사 반도체 칩 테스트 장치 및 그 방법
CN1862274A (zh) * 2006-05-27 2006-11-15 合肥工业大学 一种多扫描链的大规模集成电路测试数据压缩方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
胡政 等: "边界扫描测试信息压缩算法", 《国防科技大学学报》 *
郑先刚: "边界扫描测试技术的发展和影响", 《电子元器件应用》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104977523A (zh) * 2014-04-11 2015-10-14 瑞萨电子株式会社 半导体器件、诊断测试和诊断测试电路
CN104977523B (zh) * 2014-04-11 2019-09-10 瑞萨电子株式会社 半导体器件、诊断测试和诊断测试电路
CN109444716A (zh) * 2018-11-27 2019-03-08 中科曙光信息产业成都有限公司 一种具有定位功能的扫描测试结构及方法
CN111579974A (zh) * 2020-06-09 2020-08-25 中国电子科技集团公司第十四研究所 实现边界扫描测试的被测模块、嵌入式系统及测试方法
CN111579974B (zh) * 2020-06-09 2021-09-03 中国电子科技集团公司第十四研究所 实现边界扫描测试的嵌入式系统及测试方法
WO2024065693A1 (zh) * 2022-09-30 2024-04-04 华为技术有限公司 一种生成压缩测试向量的方法和装置

Also Published As

Publication number Publication date
CN103675650B (zh) 2017-01-18

Similar Documents

Publication Publication Date Title
CN100557454C (zh) 一种大规模集成电路测试数据与测试功耗协同优化的方法
US7370254B2 (en) Compressing test responses using a compactor
US7647540B2 (en) Decompressors for low power decompression of test patterns
US8650524B1 (en) Method and apparatus for low-pin count testing of integrated circuits
US6807646B1 (en) System and method for time slicing deterministic patterns for reseeding in logic built-in self-test
CN102169846B (zh) 一种在集成电路晶圆测试过程中实现多维变量密码并行写入的方法
WO2003104828B1 (en) VARIABLY PULSE SCAN TEST CIRCUITS AND ASSOCIATED METHOD
CN102403042B (zh) 基于锁存器的存储器设备
Wang et al. On compacting test response data containing unknown values
CN103675650A (zh) 一种嵌入式边界扫描数据压缩、合成方法及装置
KR20020046896A (ko) 반도체 집적 회로의 테스트 방법 및 테스트 패턴 발생 회로
WO2007109322A2 (en) Speeding up defect diagnosis techniques
Sharma et al. X-filter: Filtering unknowns from compacted test responses
Kapur et al. Historical perspective on scan compression
CN103499787A (zh) 一种测试数据压缩方法、数据解压缩装置及解压缩方法
US11555854B2 (en) Deterministic stellar built-in self test
US7225376B2 (en) Method and system for coding test pattern for scan design
US20070113135A1 (en) Modular compaction of test responses
US7313746B2 (en) Test output compaction for responses with unknown values
CN106546907A (zh) 一种低功耗扫描自测试电路以及自测试方法
CN116956801B (zh) 芯片验证方法、装置、计算机设备和存储介质
CN102183727B (zh) 一种具有检错功能的边界扫描测试方法
CN102353892A (zh) 一种基于sram的fpga的lut测试结构及方法
KR20110081035A (ko) 반도체 시험 장치
US7210083B2 (en) System and method for implementing postponed quasi-masking test output compression in integrated circuit

Legal Events

Date Code Title Description
PB01 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