[go: up one dir, main page]

CN100417950C - Method for constructing two-stage scan test structure with low test power consumption - Google Patents

Method for constructing two-stage scan test structure with low test power consumption Download PDF

Info

Publication number
CN100417950C
CN100417950C CNB2004100888813A CN200410088881A CN100417950C CN 100417950 C CN100417950 C CN 100417950C CN B2004100888813 A CNB2004100888813 A CN B2004100888813A CN 200410088881 A CN200410088881 A CN 200410088881A CN 100417950 C CN100417950 C CN 100417950C
Authority
CN
China
Prior art keywords
unit
conv
timing unit
clk
successor
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
Application number
CNB2004100888813A
Other languages
Chinese (zh)
Other versions
CN1603853A (en
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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CNB2004100888813A priority Critical patent/CN100417950C/en
Publication of CN1603853A publication Critical patent/CN1603853A/en
Application granted granted Critical
Publication of CN100417950C publication Critical patent/CN100417950C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)

Abstract

The present invention relates to a method for constructing a two-stage scan test structure with low test power dissipation, which belongs to the technical field of integrated circuit test. The present invention is characterized in that firstly, a circuit network monofile is used for obtaining a table used for distinguishing the existence of common combination successors between every two time sequence units; the time sequence units are divided into groups according to the table, and the size of the group is regulated in order that the groups are uniform; all the time sequence units are reformed into scan time sequence units through a method of adding multiway selectors before the time sequence units; one scan time sequence unit is selected from each group to form a scan chain connected to a clock signal clk 1, the rest scan time sequence units are divided into sub groups, each sub group is respectively driven by one scan time sequence unit arranged in the scan chain, and the sub groups are connected to a clock signal clk 2. When the method is used, the test power dissipation can be reduced to a large degree under the conditions of basic constant fault coverage and test vector and no increase of difficult test fault numbers.

Description

构造具有低测试功耗的两级扫描测试结构的方法 Method for constructing two-stage scan test structure with low test power consumption

技术领域 technical field

本发明属于集成电路可测试性设计技术领域The invention belongs to the technical field of integrated circuit testability design

背景技术 Background technique

首先,介绍背景知识和相关定义:First, introduce background knowledge and related definitions:

组合门:门的输出信号线的值与时钟信号无关,这样的门称为组合门,组合门的类型包括非门、与门、或门、与非门、或非门、异或门、异或非门等。Combination gate: The value of the output signal line of the gate has nothing to do with the clock signal. Such a gate is called a combination gate. The types of combination gates include NOT gate, AND gate, OR gate, NAND gate, NOR gate, XOR gate, XOR gate NOR gates etc.

时序门:门的输出信号线的值与时钟信号有关,这样的门称为时序门,也称为时序单元。时序门的输入有逻辑输入和时钟输入,输出为逻辑输出。通常在时钟输入信号的上升沿或者下降沿到来时,读入逻辑输入信号的值,从而产生相应逻辑输出信号的值。Sequential gate: The value of the output signal line of the gate is related to the clock signal. Such a gate is called a sequential gate, also known as a sequential unit. The input of the timing gate has a logic input and a clock input, and the output is a logic output. Usually, when the rising edge or falling edge of the clock input signal arrives, the value of the logic input signal is read in, thereby generating the value of the corresponding logic output signal.

组合后继:在电路结构中,组合门的输出信号线是该组合门的输入信号线的组合后继。组合后继的关系可以迭代。例如图1中,d是a的组合后继,e是d的组合后继,而e也是a的组合后继。Combination successor: In the circuit structure, the output signal line of a combination gate is the combination successor of the input signal line of the combination gate. Composite successor relations can be iterated over. For example, in Figure 1, d is the combined successor of a, e is the combined successor of d, and e is also the combined successor of a.

直接组合后继:相邻的组合后继称为直接组合后继。例如图1中,d是a的直接组合后继,但e不是a的直接组合后继。Direct Combined Successor: Adjacent combined successors are called direct combined successors. For example, in Figure 1, d is the direct combined successor of a, but e is not the direct combined successor of a.

共同组合后继:例如图1中,e是a的组合后继,e也是c的组合后继,则a和c有共同组合后继e。Common combined successor: For example, in Figure 1, e is the combined successor of a, and e is also the combined successor of c, then a and c have a common combined successor e.

测试:在芯片封装以后对芯片质量进行检测的方法。由于芯片封装以后对芯片的内部电路无法直接访问,因此对芯片的测试采用的方法为在芯片的输入端置入测试向量,并在芯片输出端收集测试响应。将实际所得测试响应与无故障电路所应得测试响应进行比较,从而判断芯片电路有无故障。Testing: A method of testing chip quality after chip packaging. Since the internal circuit of the chip cannot be directly accessed after the chip is packaged, the method adopted for testing the chip is to insert test vectors at the input end of the chip and collect test responses at the output end of the chip. Compare the actual test response with the test response of the fault-free circuit to determine whether the chip circuit is faulty or not.

测试生成问题:对于电路中可能存在的故障,寻找可以检测到该故障的测试向量,这一问题称为测试生成问题。Test generation problem: For a possible fault in the circuit, find a test vector that can detect the fault, this problem is called the test generation problem.

扫描测试:扫描测试是为降低时序电路测试生成问题的复杂性,对电路进行可测试性设计的一种方法。该方法将时序电路划分为时序单元和组合逻辑两个部分,如图2所示,然后加入多路选择器将时序单元改造为扫描时序单元,多个扫描时序单元首尾连接成为扫描链,由一个扫描输入scan-in来驱动,最后连接到一个扫描输出scan-out,如图3所示。当信号test为0时,多路选择器选通组合逻辑,为正常工作状态;当信号test为1时,多路选择器选通扫描链,电路进入扫描测试状态。Scan test: Scan test is a method to design the circuit for testability in order to reduce the complexity of sequential circuit test generation problems. In this method, the sequential circuit is divided into two parts, the sequential unit and the combinatorial logic, as shown in Figure 2, and then a multiplexer is added to transform the sequential unit into a scanning sequential unit, and multiple scanning sequential units are connected end to end to form a scan chain, consisting of a The scan input scan-in is driven and finally connected to a scan output scan-out, as shown in Figure 3. When the signal test is 0, the multiplexer gates the combination logic, which is in the normal working state; when the signal test is 1, the multiplexer gates the scan chain, and the circuit enters the scan test state.

扫描时序单元:利用扫描测试的方法改造所得的时序单元,比如图3中的多路选择器与时序单元共同组成的结构。Scanning sequential unit: the sequential unit modified by scanning and testing, such as the structure composed of the multiplexer and the sequential unit in Figure 3 .

扫描链(scan chain):由多个扫描时序单元首尾连接而成的扫描测试结构(图4)。扫描链的长度为扫描链中所包含扫描时序单元的个数。Scan chain (scan chain): A scan test structure composed of multiple scan timing units connected end to end (Figure 4). The length of the scan chain is the number of scan sequential units included in the scan chain.

测试功耗:对电路进行测试时产生的测试功耗主要产生于电路内部信号线发生逻辑值的翻转(逻辑1->逻辑0,逻辑0->逻辑1)。在扫描测试结构中,测试功耗主要产生于测试向量的置入和测试响应的移出过程中,电路的时序单元以及其后继的组合单元发生逻辑值的翻转。Test power consumption: The test power consumption generated when testing the circuit is mainly caused by the inversion of the logic value of the signal line inside the circuit (logic 1->logic 0, logic 0->logic 1). In the scan test structure, the test power consumption is mainly generated during the insertion of the test vector and the removal of the test response, and the inversion of the logic value of the sequential unit of the circuit and its subsequent combination unit occurs.

以往降低扫描测试功耗的办法主要有:(1)对测试向量进行排序;(2)对时序单元进行排序;(3)在时序单元的后面加入控制逻辑,使得测试向量置入过程中,逻辑值的翻转只发生在时序单元,不会传播到后继的组合逻辑中;(4)对测试向量进行编解码;(5)引入附加逻辑结构,使得测试向量置入时逻辑翻转只发生在部分时序单元中。In the past, the methods to reduce the power consumption of scan test mainly include: (1) sorting the test vectors; (2) sorting the sequential units; (3) adding control logic behind the sequential units so that during the test vector insertion process, The inversion of the value only occurs in the sequential unit, and will not be propagated to the subsequent combinational logic; (4) encode and decode the test vector; (5) introduce an additional logic structure, so that the logic inversion only occurs in part of the timing when the test vector is placed in the unit.

方法(1)(2)(5)只是降低了测试功耗,测试时间没有降低,方法(3)(5)引入的附加逻辑带来一定面积开销,并且使电路性能有所下降,方法(4)则主要针对的是数据量的问题,在数据压缩的同时可以使得功耗有所降低。Method (1)(2)(5) only reduces the test power consumption, but does not reduce the test time. The additional logic introduced by method (3)(5) brings a certain area overhead and reduces the circuit performance. Method (4) ) is mainly aimed at the problem of data volume, which can reduce power consumption while data is compressed.

发明内容 Contents of the invention

本发明采用两级扫描测试结构,将扫描时序单元划分到不同的时钟域。第一级的扫描时序单元构成传统的扫描链结构,其时钟输入信号为clk1。第二级的扫描时序单元分为多个小组,其时钟输入信号为clk2,每个扫描时序单元小组的逻辑输入连接到第一级中的一个扫描时序单元的逻辑输出。The invention adopts a two-level scanning test structure, and divides the scanning sequence units into different clock domains. The scanning sequential unit of the first stage constitutes a traditional scan chain structure, and its clock input signal is clk 1 . The scanning sequential units of the second stage are divided into multiple groups, the clock input signal of which is clk 2 , and the logic input of each scanning sequential unit group is connected to the logic output of one scanning sequential unit in the first stage.

设第二级中的扫描时序单元小组Gi包含扫描时序单元g1’g2’...gn’,Gi中各扫描时序单元的逻辑输入连接到第一级中的扫描时序单元fi’的逻辑输出,则扫描时序单元g1’g2’...gn’fi’所对应的时序单元g1g2...gnfi应满足以下条件:其中任意两个时序单元在电路结构中均没有相同的组合后继。Let the scanning sequential unit group G i in the second stage include scanning sequential units g 1 'g 2 '...g n ', and the logic input of each scanning sequential unit in G i is connected to the scanning sequential unit f in the first level i ' logic output, then the sequential unit g 1 g 2 ...g n f i corresponding to the sequential unit g 1 'g 2 '...g n ' f i ' should meet the following conditions: any two Sequential cells do not have the same combined successor in the circuit structure.

在置入测试向量时,首先通过扫描输入端将相应的测试向量置入到扫描链中,设扫描链长度为l,则将一个测试向量置入到第一级的扫描链中需要l个clk1时钟周期,由于第一级与第二级的扫描时序单元由不同的时钟输入信号控制,此过程第二级的扫描时序单元不发生翻转。接下来,将第一级中各扫描时序单元的逻辑输出值置入到相应第二级的扫描时序单元小组中,需要一个clk2时钟周期,此过程中第一级的扫描时序单元不发生翻转。When placing a test vector, first place the corresponding test vector into the scan chain through the scan input terminal, and set the length of the scan chain as l, then it takes l clk to place a test vector into the first-level scan chain 1 clock cycle, since the scan timing units of the first level and the second level are controlled by different clock input signals, the scan timing units of the second level do not flip during this process. Next, put the logic output values of each scanning sequential unit in the first level into the corresponding scanning sequential unit group of the second level, which requires a clock cycle of clk 2 , and the scanning sequential units of the first level do not flip during this process .

根据电路结构的信息,对时序单元进行分组以后,可以将大部分时序单元划分到第二级。在测试向量置入扫描链的过程中,只有第一级扫描链中的扫描时序单元发生翻转,翻转次数得到很大程度减小;而测试向量置入第二级中的扫描时序单元只需要一个时钟周期,翻转次数也得到很大程度减小,从而减小了扫描测试功耗。According to the information of the circuit structure, after the sequential units are grouped, most of the sequential units can be divided into the second level. In the process of putting the test vector into the scan chain, only the scan sequential unit in the first-level scan chain is flipped, and the number of flips is greatly reduced; while the test vector is placed in the scan sequential unit of the second stage, only one The clock cycle and the number of flips are also greatly reduced, thereby reducing the power consumption of the scan test.

本发明的特征在于:它依次含有以下步骤:The present invention is characterized in that: it contains following steps successively:

第1步:conv[N][N]被定义为后继关系表,来记录时序单元两两之间在电路结构上是否有共同的组合后继。successor_of_iOut[]被定义为时序单元i的组合后继列表,来记录该时序单元在电路中的所有组合后继。successor_of_jOut[]被定义为时序单元j的组合后继列表,来记录该时序单元在电路中的所有组合后继。初始化,向计算机输入电路网单文件,采用N*N表格conv[N][N]来记录时序单元在电路结构上的相互关系,其中N为时序单元的总数;若对于i≠j,i∈[1,N],j∈[1,N]的时序单元i与时序单元j,时序单元i与时序单元j在电路结构上有共同组合后继,则conv[i][j]=conv[j][i]=1,否则conv[i][j]=conv[j][i]=0;Step 1: conv[N][N] is defined as a successor relationship table to record whether there is a common combined successor in the circuit structure between two sequential units. successor_of_iOut[] is defined as the combined successor list of sequential unit i to record all combined successors of the sequential unit in the circuit. successor_of_jOut[] is defined as the combined successor list of sequential unit j to record all combined successors of the sequential unit in the circuit. Initialize, input the circuit net list file to the computer, and use the N*N form conv[N][N] to record the relationship between sequential units in the circuit structure, where N is the total number of sequential units; if for i≠j, i∈ [1, N], sequential unit i and sequential unit j of j∈[1, N], sequential unit i and sequential unit j have a common combined successor in the circuit structure, then conv[i][j]=conv[j ][i]=1, otherwise conv[i][j]=conv[j][i]=0;

第1.1步:建立conv[N][N]表格;Step 1.1: Create conv[N][N] table;

第1.1.1步:对于电路中所有时序单元,设时序单元i的输出信号线在电路中对应的标识为iOut,将时序单元i的组合后继依次存入数组successor_of_iOut[]中,方法如下:首先将时序单元i的直接组合后继i1i2…in存入数组中,然后依次将i1i2…in的直接组合后继也存入数组中,直到存入数组的单元已经是一个时序单元或者是原始输出为止;Step 1.1.1: For all sequential units in the circuit, set the corresponding identification of the output signal line of sequential unit i in the circuit as iOut, and store the combination of sequential unit i into the array successor_of_iOut[] successively, the method is as follows: first Store the direct combination successor i 1 i 2 ...i n of sequential unit i into the array, and then store the direct combination successor of i 1 i 2 ...i n in the array in turn until the unit stored in the array is already a sequence unit or raw output;

第1.1.2步:对于任意两个时序单元i和j,若successor_of_iOut[]和successor_of_jOut[]中有相同单元,则conv[i][j]=conv[j][i]=1;否则conv[i][j]=conv[j][i]=0;Step 1.1.2: For any two sequential units i and j, if there are identical units in successor_of_iOut[] and successor_of_jOut[], then conv[i][j]=conv[j][i]=1; otherwise conv [i][j]=conv[j][i]=0;

第2步:根据N*N表格conv[N][N]对时序单元进行分组;Step 2: Group sequential units according to the N*N table conv[N][N];

第2.1步:设时序单元的集合为F,各组分别为G1G2…GnStep 2.1: Let the set of sequential units be F, and each group be G 1 G 2 ...G n ;

第2.2步:若F非空,则执行第2.3步,否则执行第2.4步;Step 2.2: If F is not empty, execute step 2.3, otherwise execute step 2.4;

第2.3步:建立新组Gm,m∈[1,n],任取F中的一个时序单元g放入Gm,遍历F中剩余的时序单元,若某时序单元f满足 ∀ g ∈ G m , conv[f][g]=0,则将f放入Gm,更新F和Gm,继续遍历F中剩余的时序单元;遍历结束后转第2.2步;Step 2.3: Establish a new group Gm, m ∈ [1, n], randomly take a sequential unit g in F and put it into G m , traverse the remaining sequential units in F, if a certain sequential unit f satisfies ∀ g ∈ G m , conv[f][g]=0, then put f into G m , update F and G m , and continue to traverse the remaining sequential units in F; after the traversal, go to step 2.2;

第2.4步:分组结束;Step 2.4: end of grouping;

第3步:为使分组均匀,对第2步所得分组结果进行调整;Step 3: In order to make the grouping uniform, adjust the grouping results obtained in step 2;

第3.1步:从G1G2…Gn中选出最大组Gmax和最小组Gmin,Gmax是所含时序单元数量最多的组,Gmin是所含时序单元数量最少的组;Step 3.1: Select the largest group G max and the smallest group G min from G 1 G 2 ...G n , G max is the group with the largest number of sequential units, and G min is the group with the smallest number of sequential units;

第3.2步:从Gmax中选出满足条件 ∀ g ∈ G min , conv[f][g]=0的时序单元f,将f放入Gmin,更新Gmax和GminStep 3.2: Select satisfying conditions from G max ∀ g ∈ G min , Conv[f][g]=0 sequential unit f, put f into G min , update G max and G min ;

第3.3步:反复执行第3.1步和第3.2步,直到Gmax与Gmin的大小相差为1或者Gmax中已经找不到满足条件 ∀ g ∈ G min , conv[f][g]=0的时序单元f为止;Step 3.3: Repeat step 3.1 and step 3.2 until the difference between G max and G min is 1 or the condition cannot be found in G max ∀ g ∈ G min , Conv[f][g]=0 sequential unit f;

第4步:根据调整以后的分组结果G1G2…Gn来构造低测试功耗的两级扫描测试结构;Step 4: Construct a two-stage scan test structure with low test power consumption according to the adjusted grouping results G 1 G 2 ...G n ;

第4.1步:在各时序单元之前分别加入多路选择器MUX,改造为扫描时序单元;Step 4.1: add a multiplexer MUX before each sequential unit, and transform it into a scanning sequential unit;

第4.2步:从G1G2…Gn中各选出一个扫描时序单元g1’g2’…gn’,构成一条扫描链,扫描时序单元g1’g2’…gn’的时钟输入连接到时钟信号clk1Step 4.2: Select a scanning sequential unit g 1 'g 2 '...g n ' from G 1 G 2 ...G n to form a scan chain, and scan sequential units g 1 'g 2 '...g n ' The clock input is connected to the clock signal clk1 ;

第4.3步:G1G2…Gn中剩余的扫描时序单元的时钟输入连接到时钟信号clk2Step 4.3: the clock inputs of the remaining scanning sequential units in G 1 G 2 ...G n are connected to the clock signal clk 2 ;

第4.4步:将G1中剩余的扫描时序单元的逻辑输入连接到扫描时序单元g1’的逻辑输出,将G2中剩余的扫描时序单元的逻辑输入连接到扫描时序单元g2’的逻辑输出,以此类推,将Gn中剩余的扫描时序单元的逻辑输入连接到扫描时序单元gn’的逻辑输出;Step 4.4: Connect the logic input of the remaining scan sequential cells in G1 to the logic output of scan sequential cell g1 ' and the logic input of the remaining scan sequential cells in G2 to the logic of scan sequential cell g2 ' output, and so on, connecting the logic inputs of the remaining scan sequential cells in G n to the logical outputs of the scan sequential cells g n ';

第4.5步:如图5所示,时钟信号clk1和clk2由一个时钟信号clk加上两个控制信号C1和C2通过两个与门来产生;将时钟信号clk分别连接到两输入与门AND1和AND2的输入端,控制信号C1和C2分别连接到AND1和AND2的另一个输入端,clk1和clk2分别为AND1和AND2的输出;当C1=1且C2=0时,clk1有效且clk2无效;当C1=0且C2=1时,clk1无效且clk2有效。(如图5)Step 4.5: As shown in Figure 5, the clock signals clk 1 and clk 2 are generated by one clock signal clk plus two control signals C 1 and C 2 through two AND gates; connect the clock signal clk to the two inputs respectively The input terminals of AND gates AND 1 and AND 2 , the control signals C 1 and C 2 are respectively connected to the other input terminals of AND 1 and AND 2 , clk 1 and clk 2 are the outputs of AND 1 and AND 2 respectively; when C 1 =1 and C 2 =0, clk 1 is valid and clk 2 is invalid; when C 1 =0 and C 2 =1, clk 1 is invalid and clk 2 is valid. (Figure 5)

使用证明:Proof of use:

实验平台为SUN BLADE2000工作站,实验中采用的测试码产生器为ATALANTA,故障模拟器为HOPE。表1中给出了将本发明应用到一部分ISCAS89以及ITC99电路的实验结果,表中Full Scan为单链完全扫描的实验结果,Two Stage Scan为本发明的实验结果,FC(Fault Coverage)表示故障覆盖率,#HF(Hard Fault)表示难测故障数,#VEC(Vector)表示测试向量数,TP(Test Power)和PTP(Peak Test Power)分别表示本发明的测试平均功耗和测试峰值功耗与单链完全扫描测试结构的测试平均功耗和测试峰值功耗相比所占的百分比。The experimental platform is SUN BLADE2000 workstation, the test code generator used in the experiment is ATALANTA, and the fault simulator is HOPE. Table 1 shows the experimental results of applying the present invention to a part of ISCAS89 and ITC99 circuits. In the table, Full Scan is the experimental result of single-chain complete scanning, Two Stage Scan is the experimental result of the present invention, and FC (Fault Coverage) indicates failure Coverage rate, #HF (Hard Fault) represents the number of difficult-to-measure faults, #VEC (Vector) represents the number of test vectors, TP (Test Power) and PTP (Peak Test Power) represent the test average power consumption and test peak power of the present invention respectively The power consumption is compared to the test average power consumption and the test peak power consumption of the single-chain full scan test structure.

由表1中可以看出,采用本发明的两级扫描测试结构,可以在保证原有故障覆盖率与测试向量数基本不变且难测故障数没有增长的同时,使得测试平均功耗和测试峰值功耗都得到很大程度的减小。As can be seen from Table 1, the two-stage scanning test structure of the present invention can ensure that the original fault coverage and the number of test vectors are basically unchanged and the number of difficult-to-test faults does not increase, so that the average power consumption of the test and the number of test vectors are not increased. Peak power consumption has been greatly reduced.

表1:将本发明应用到ISCAS89以及ITC99电路的实验结果Table 1: The present invention is applied to the experimental result of ISCAS89 and ITC99 circuit

Figure C20041008888100071
Figure C20041008888100071

Figure C20041008888100081
Figure C20041008888100081

附图说明 Description of drawings

图1:组合后继示意图。Figure 1: Schematic diagram of the combined successor.

图2:时序电路示意图。Figure 2: Schematic diagram of the timing circuit.

图3:对时序电路进行扫描测试示意图。Figure 3: Schematic diagram of scanning and testing sequential circuits.

图4:扫描链示意图。Figure 4: Schematic diagram of the scan chain.

图5:时钟信号clk1和clk2示意图。Figure 5: Schematic diagram of clock signals clk1 and clk2.

图6:电路示意图。Figure 6: Circuit schematic.

图7:表格conv[12][12]。Figure 7: Form conv[12][12].

图8:两级扫描测试结构示意图。Figure 8: Schematic diagram of the two-stage scanning test structure.

图9:构造具有低测试功耗的两级扫描测试结构的程序流程框图。Figure 9: Program flow diagram for constructing a two-stage scan test structure with low test power consumption.

具体实施方式 Detailed ways

下面分别通过具体例子来说明上述方法的具体实施方式。The specific implementation manners of the above methods will be described below through specific examples.

例1:如图6所示电路,其中的时序单元总数为3,时序单元1的输出信号线在电路中的标识为1Out=5,时序单元2的输出信号线在电路中的标识为2Out=6,时序单元3的输出信号线在电路中的标识为3Out=7,采用数组successor_of_5[]、successor_of_6[]和successor_of_7[]来分别存储时序单元1、2和3的组合后继。Example 1: the circuit shown in Figure 6, wherein the total number of sequential units is 3, the output signal line of sequential unit 1 is identified as 1Out=5 in the circuit, and the output signal line of sequential unit 2 is identified as 2Out= in the circuit 6. The output signal line of the sequential unit 3 is marked as 3Out=7 in the circuit, and the arrays successor_of_5[], successor_of_6[] and successor_of_7[] are used to store the combined successors of the sequential units 1, 2 and 3 respectively.

建立表格conv[3][3]的过程如下:The process of creating the form conv[3][3] is as follows:

1)对于电路中的时序单元1,1Out=5,5只有一个直接组合后继15,将15存入数组successor_of_5[]。1) For sequential unit 1 in the circuit, 1Out=5, 5 has only one direct combined successor 15, and 15 is stored in the array successor_of_5[].

信号线15有三个分支,第一条分支为时序单元2的输入,因此不必再往下搜索;第二条分支的直接组合后继为17,将17存入数组;第三条分支的直接组合后继为16,将16存入数组。The signal line 15 has three branches, the first branch is the input of the sequential unit 2, so there is no need to search further; the direct combination of the second branch is followed by 17, and 17 is stored in the array; the direct combination of the third branch is followed by is 16, store 16 in the array.

17为时序单元1的输入,因此不必再往下搜索;16已经到达原始输出,因此不必再往下搜索。结束。17 is the input of sequential unit 1, so there is no need to search further; 16 has already reached the original output, so there is no need to search further. Finish.

这样,数组successor_of_5[]中存储的内容为:15,17,16;同理,数组successor_of_6[]中存储的内容为:10,13,12,14,15,17,16;数组successor_of_7[]中存储的内容为:9,11,12,14,15,17,16。In this way, the contents stored in the array successor_of_5[] are: 15, 17, 16; similarly, the contents stored in the array successor_of_6[] are: 10, 13, 12, 14, 15, 17, 16; in the array successor_of_7[] The stored content is: 9, 11, 12, 14, 15, 17, 16.

2)时序单元1和2有共同组合后继15,因此conv[1][2]=conv[2][1]=1;2) Sequential units 1 and 2 have a common combined successor 15, so conv[1][2]=conv[2][1]=1;

时序单元1和3有共同组合后继15,因此conv[1][3]=conv[3][1]=1;Sequential units 1 and 3 have a common combined successor 15, so conv[1][3]=conv[3][1]=1;

时序单元2和3有共同组合后继12,因此conv[2][3]=conv[3][2]=1。Sequential cells 2 and 3 have a common combined successor 12, so conv[2][3]=conv[3][2]=1.

例2:某电路中时序单元的总数为12,集合为F,图7中给出了表示这些时序单元在电路结构上的相互关系的表格conv[12][12]。Example 2: The total number of sequential units in a circuit is 12, and the set is F. Figure 7 shows the table conv[12][12] representing the relationship between these sequential units in the circuit structure.

根据表格conv[12][12]对时序单元进行分组的情况如下:The grouping of sequential units according to the table conv[12][12] is as follows:

建立新组G1,将时序单元1放入G1,G1={1};遍历F中剩下的时序单元,发现时序单元2满足条件conv[2][1]=0,也即满足条件 ∀ g ∈ G 1 , conv[2][g]=0,因此将时序单元2放入G1,G1={1,2};遍历F中剩下的时序单元,发现时序单元4满足条件conv[4][1]=0且conv[4][2]=0,也即满足条件 ∀ g ∈ G 1 , conv[4][g]=0,因此将时序单元4放入G1,G1={1,2,4};遍历F中剩下的时序单元,发现时序单元7满足条件conv[7][1]=0且conv[7][2]=0且conv[7][4]=0,也即满足条件 ∀ g ∈ G 1 , conv[7][g]=0,因此将时序单元7放入G1,G1={1,2,4,7};遍历F中剩下的时序单元,发现时序单元10满足条件conv[10][1]=0且conv[10][2]=0且conv[10][4]=0且conv[10][7]=0,也即满足条件 ∀ g ∈ G 1 , conv[10][g]=0,因此将时序单元10放入G1,G1={1,2,4,7,10}。以此类推,得到G2={3,11,12},G3={5,6,8,9}。分组结束。Create a new group G 1 , put sequential unit 1 into G 1 , G 1 ={1}; traverse the remaining sequential units in F, and find that sequential unit 2 satisfies the condition conv[2][1]=0, that is, satisfies condition ∀ g ∈ G 1 , conv[2][g]=0, so put sequential unit 2 into G 1 , G 1 ={1, 2}; traverse the remaining sequential units in F, and find that sequential unit 4 satisfies the condition conv[4][1 ]=0 and conv[4][2]=0, which means the condition is satisfied ∀ g ∈ G 1 , conv[4][g]=0, so put sequential unit 4 into G 1 , G 1 ={1, 2, 4}; traverse the remaining sequential units in F, and find that sequential unit 7 satisfies the condition conv[7] [1]=0 and conv[7][2]=0 and conv[7][4]=0, which means the condition is satisfied ∀ g ∈ G 1 , conv[7][g]=0, so put sequential unit 7 into G 1 , G 1 ={1, 2, 4, 7}; traverse the remaining sequential units in F, and find that sequential unit 10 satisfies the condition conv[ 10][1]=0 and conv[10][2]=0 and conv[10][4]=0 and conv[10][7]=0, which means the condition is satisfied ∀ g ∈ G 1 , conv[10][g]=0, therefore put sequential unit 10 into G 1 , G 1 ={1, 2, 4, 7, 10}. By analogy, G 2 ={3, 11, 12}, G 3 ={5, 6, 8, 9} are obtained. The grouping is over.

根据表格conv[12][12]对以上分组结果进行调整的情况如下:The adjustment of the above grouping results according to the table conv[12][12] is as follows:

选出最大组Gmax=G1,最小组Gmin=G2,从Gmax中选出时序单元2满足条件conv[2][3]=0且conv[2][11]=0且conv[2][12]=0,也即满足条件 ∀ g ∈ G min , conv[2][g]=0,因此将时序单元2放入G2,于是G1={1,4,7,10},G2={2,3,11,12},G3={5,6,8,9}。此时已满足分组均匀的条件,调整结束。Select the largest group G max =G1, the smallest group G min =G2, select the sequential unit 2 from G max to satisfy the conditions conv[2][3]=0 and conv[2][11]=0 and conv[2 ][12]=0, which means the condition is satisfied ∀ g ∈ G min , conv[2][g]=0, so put sequential unit 2 into G 2 , then G 1 ={1, 4, 7, 10}, G 2 ={2, 3, 11, 12}, G 3 = {5, 6, 8, 9}. At this point, the condition for uniform grouping has been met, and the adjustment ends.

根据调整后的分组结果构造具有低测试功耗的两级扫描结构的情况如下:The case of constructing a two-level scan structure with low test power consumption according to the adjusted grouping results is as follows:

在各时序单元之前分别加入多路选择器MUX,改造为扫描时序单元;根据调整后的分组结果,从各组G1、G2、G3中分别选出一个扫描时序单元1’、2’、5’构成一条扫描链,扫描时序单元1’、2’、5’的时钟输入连接到时钟信号clk1;各组剩余时序单元的时钟输入连接到时钟信号clk2;G1中剩余时序单元的逻辑输入连接到扫描时序单元1’的逻辑输出,G2中剩余时序单元的逻辑输入连接到扫描时序单元2’的逻辑输出,G3中剩余时序单元的逻辑输入连接到扫描时序单元5’的逻辑输出;时钟信号clk1和clk2由同一个时钟信号clk加上两个控制信号通过两个与门来产生,如图5所示;结束。Add a multiplexer MUX before each sequential unit to transform it into a scanning sequential unit; select a scanning sequential unit 1', 2' from each group G 1 , G 2 , and G 3 according to the adjusted grouping results , 5' constitute a scanning chain, and the clock input of scanning sequential units 1', 2', 5' is connected to clock signal clk 1 ; the clock input of each group of remaining sequential units is connected to clock signal clk 2 ; the remaining sequential units in G 1 The logic input of G2 is connected to the logic output of scan sequential cell 1', the logic input of the remaining sequential cells in G2 is connected to the logic output of scan sequential cell 2', and the logic input of the remaining sequential cells in G3 is connected to the scan sequential cell 5' The logic output; clock signals clk 1 and clk 2 are generated by the same clock signal clk plus two control signals through two AND gates, as shown in Figure 5; end.

Claims (1)

1. structure has the method for the two-stage sweep test structure of low testing power consumption, and it is characterized in that: it contains following steps successively:
The 1st step: initialization, to computing machine input circuit netlist file, adopt N*N form conv[N] [N] write down the mutual relationship of timing unit on circuit structure, wherein N is the sum of timing unit, conv[N] [N] be defined as follow-up relation table, and whether write down timing unit has common combination follow-up between any two on circuit structure; If for i ≠ j, i ∈ [1, N], timing unit i and the timing unit j of j ∈ [1, N], timing unit i and timing unit j have common combination follow-up on circuit structure, then conv[i] [j]=conv[j] [i]=1, otherwise conv[i] [j]=conv[j] [i]=0;
The 1.1st step: set up conv[N] [N] form;
The 1.1.1 step: for all timing units in the circuit, if the output signal line of timing unit i corresponding identification in circuit is iOut, successor_of_iOut[then] be defined as the combination successor list of timing unit i, it is follow-up to write down all combinations in circuit of this timing unit; If the output signal line of timing unit j corresponding identification in circuit is jOut, then successor_of_jOut[] be defined as the combination successor list of timing unit j, it is follow-up to write down all combinations in circuit of this timing unit; With the follow-up array successor_of_iOut[that deposits in successively of the combination of timing unit i] in, method is as follows: at first with the follow-up i of direct combination of timing unit i 1i 2I nDeposit in the array, then successively with i 1i 2I nFollow-up also the depositing in the array of direct combination, till the unit that deposits array in has been a timing unit or original output;
1.1.2 step: for any two timing unit i and j, if successor_of_iOut[] and successor_of_jOut[] in same unit is arranged, conv[i then] [j]=conv[j] [i]=1; Otherwise conv[i] [j]=conv[j] [i]=0;
The 2nd step: according to N*N form conv[N] [N] divide into groups to timing unit;
The 2.1st step: the set of establishing timing unit is F, and each group is respectively G 1G 2G n
The 2.2nd step:, otherwise carried out for the 2.4th step if the F non-NULL then carried out for the 2.3rd step;
The 2.3rd step: set up new group G m, m ∈ [1, n] appoints a timing unit g who gets among the F to put into G m, remaining timing unit among the traversal F is if certain sequential unit f satisfies ∀ g ∈ G m , Conv[f] [g]=0, then f is put into G m, upgrade F and G m, continue remaining timing unit among the traversal F; Traversal finishes the back and changeed for the 2.2nd step;
The 2.4th step: grouping finishes;
The 3rd step:, the 2nd step gained group result is adjusted for making grouping evenly;
The 3.1st step: from G 1G 2G nIn select maximum group G MaxWith smallest group G Min, G MaxBe the maximum group of contained timing unit quantity, G MinIt is the group of contained timing unit minimum number;
The 3.2nd step: from G MaxIn select and satisfy condition ∀ g ∈ G min , Conv[f] the timing unit f of [g]=0, put into G with f Min, upgrade G MaxAnd G Min
The 3.3rd step: carry out the 3.1st step and the 3.2nd step repeatedly, up to G MaxWith G MinSize to differ be 1 or G MaxIn can not find and satisfied condition ∀ g ∈ G min , Conv[f] till the timing unit f of [g]=0;
The 4th step: according to adjusting later group result G 1G 2G nConstruct the two-stage sweep test structure of low testing power consumption;
The 4.1st step: before each timing unit, add MUX MUX respectively, transform the scanning sequence unit as;
The 4.2nd step: from G 1G 2G nIn respectively select a scanning sequence unit g 1' g 2' ... g n', constitute a scan chain, scanning sequence unit g 1' g 2' ... g n' clock input be connected to clock signal clk 1
The 4.3rd step: G 1G 2G nIn the clock input of remaining scanning sequence unit be connected to clock signal clk 2
The 4.4th step: with G 1In the logic input of remaining scanning sequence unit be connected to scanning sequence unit g 1' logic output, with G 2In the logic input of remaining scanning sequence unit be connected to scanning sequence unit g 2' logic output, by that analogy, with G nIn the logic input of remaining scanning sequence unit be connected to scanning sequence unit g n' logic output;
The 4.5th step: add two control signal C by a clock signal clk 1And C 2By two and a door AND 1And AND 2Clocking clk 1And clk 2, wherein clock signal clk is connected respectively to two inputs and door AND 1And AND 2Input end, control signal C 1And C 2Be connected respectively to AND 1And AND 2Another input end, clock signal clk 1And clk 2Be respectively AND 1And AND 2Output; Work as C 1=1 and C 2=0 o'clock, clk 1Effectively and clk 2Invalid; Work as C 1=0 and C 2=1 o'clock, clk 1Invalid and clk 2Effectively.
CNB2004100888813A 2004-11-08 2004-11-08 Method for constructing two-stage scan test structure with low test power consumption Expired - Fee Related CN100417950C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100888813A CN100417950C (en) 2004-11-08 2004-11-08 Method for constructing two-stage scan test structure with low test power consumption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100888813A CN100417950C (en) 2004-11-08 2004-11-08 Method for constructing two-stage scan test structure with low test power consumption

Publications (2)

Publication Number Publication Date
CN1603853A CN1603853A (en) 2005-04-06
CN100417950C true CN100417950C (en) 2008-09-10

Family

ID=34667180

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100888813A Expired - Fee Related CN100417950C (en) 2004-11-08 2004-11-08 Method for constructing two-stage scan test structure with low test power consumption

Country Status (1)

Country Link
CN (1) CN100417950C (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102323539B (en) * 2011-07-29 2013-06-19 清华大学 Method for generating delay fault test vector set
CN104569790B (en) * 2015-01-28 2017-05-31 清华大学 Reduce thermal drivers Testability Design structure and method that small delay defects cross test
CN105807206B (en) * 2016-03-11 2018-08-07 福州瑞芯微电子股份有限公司 A kind of chip testing clock circuit and its test method
CN107966645B (en) * 2017-11-15 2019-11-22 北京物芯科技有限责任公司 A kind of temporal constraint method and device of the sweep test of integrated circuit

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003240822A (en) * 2002-02-14 2003-08-27 Matsushita Electric Ind Co Ltd Designing and testing method for semiconductor integrated circuit
CN1512560A (en) * 2002-12-30 2004-07-14 清华大学 Scan Design and Test Vector Insertion Method with Non-Scan Design Test Cost

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003240822A (en) * 2002-02-14 2003-08-27 Matsushita Electric Ind Co Ltd Designing and testing method for semiconductor integrated circuit
CN1512560A (en) * 2002-12-30 2004-07-14 清华大学 Scan Design and Test Vector Insertion Method with Non-Scan Design Test Cost

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于扫描的低测试功耗结构设计. 徐磊,孙义和,陈弘毅.JOURUAL OF COMPUTER RESEARCH AND DEVELOPMENT,Vol.38 No.12. 2001
基于扫描的低测试功耗结构设计. 徐磊,孙义和,陈弘毅.JOURUAL OF COMPUTER RESEARCH AND DEVELOPMENT,Vol.38 No.12. 2001 *

Also Published As

Publication number Publication date
CN1603853A (en) 2005-04-06

Similar Documents

Publication Publication Date Title
US7996741B2 (en) Method and apparatus for low-pin-count scan compression
US20140270050A1 (en) Design and deployment of custom shift array macro cells in automated application specific integrated circuit design flow
JPS61155878A (en) Integrated circuit or improvement regarding said circuit
JP2003515174A (en) Method for reducing linear dependence of phase shifter generating pseudo-random test pattern and phase shifter having reduced linear dependence
JP2010107516A (en) Method and device for broadcasting scan pattern by scan-based integrated circuit
JPH011042A (en) Hardware simulator and its simulation method
McCluskey et al. ELF-Murphy data on defects and tests sets
US11144696B1 (en) Low cost design for test architecture
US6615392B1 (en) Hierarchical design and test method and system, program product embodying the method and integrated circuit produced thereby
CN109426671B (en) A method and device for generating a boundary scan chain, and a computer-readable storage medium
CN100417950C (en) Method for constructing two-stage scan test structure with low test power consumption
US7032202B2 (en) System and method for implementing a flexible top level scan architecture using a partitioning algorithm to balance the scan chains
El-Maleh et al. Behavior and testability preservation under the retiming transformation
CN112684327B (en) Scan chain and its design method and serial scan reset method based on scan chain
US5790439A (en) Reduced test time finite impulse response digital filter
US8943457B2 (en) Simulating scan tests with reduced resources
US6075936A (en) Logic circuit simulation apparatus having cycle-based simulator for simulating circuits including multi-cycle paths
JP3803283B2 (en) Compression test plan generation, test sequence generation and testing for integrated circuit testing
Shaer et al. Partitioning algorithm to enhance pseudoexhaustive testing of digital VLSI circuits
Lakshmanan Test Pattern Broadcasting for Hardware Neural Network Accelerators
JP2004077356A (en) Scan chain circuit, method for constructing scan chain, and its program
CN100348993C (en) Method of scanning chain and scanning forest for construction of non-fault shielding odd-couple detection
Blanton et al. On the design of fast, easily testable ALU's
JPH06232735A (en) Designing method of synchronous digital electronic circuit
Rudnick et al. Sequential circuit testability enhancement using a nonscan approach

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: 20080910

Termination date: 20151108

EXPY Termination of patent right or utility model