KR20220143536A - Method and apparatus for determining a self-test inserting node for a scan chain - Google Patents

Method and apparatus for determining a self-test inserting node for a scan chain Download PDF

Info

Publication number
KR20220143536A
KR20220143536A KR1020210067002A KR20210067002A KR20220143536A KR 20220143536 A KR20220143536 A KR 20220143536A KR 1020210067002 A KR1020210067002 A KR 1020210067002A KR 20210067002 A KR20210067002 A KR 20210067002A KR 20220143536 A KR20220143536 A KR 20220143536A
Authority
KR
South Korea
Prior art keywords
node
control point
candidate
observation
control
Prior art date
Application number
KR1020210067002A
Other languages
Korean (ko)
Other versions
KR102513278B1 (en
Inventor
강성호
김경빈
Original Assignee
연세대학교 산학협력단
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 연세대학교 산학협력단 filed Critical 연세대학교 산학협력단
Publication of KR20220143536A publication Critical patent/KR20220143536A/en
Application granted granted Critical
Publication of KR102513278B1 publication Critical patent/KR102513278B1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31905Interface with the device under test [DUT], e.g. arrangements between the test head and the DUT, mechanical aspects, fixture
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2851Testing of integrated circuits [IC]
    • G01R31/2855Environmental, reliability or burn-in testing
    • G01R31/286External aspects, e.g. related to chambers, contacting devices or handlers
    • G01R31/2863Contacting devices, e.g. sockets, burn-in boards or mounting fixtures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2851Testing of integrated circuits [IC]
    • G01R31/2886Features relating to contacting the IC under test, e.g. probe heads; chucks
    • G01R31/2889Interfaces, e.g. between probe and tester

Abstract

Disclosed are a method for determining an insertion node for a self-test of a scan chain and an apparatus therefor. According to an embodiment of the present invention, the method for determining an insertion node for a self-test of a scan chain may comprise: a step of determining one or more control point candidates by considering a control burden index for each of a plurality of nodes included in a scan chain; a step of determining one or more observation point candidates different from the control point candidates by considering an observation burden index on each of the plurality of nodes included in the scan chain; a step of generating control point-observation point pair candidates by using the control point candidates and the observation point candidates; and a step of determining an insertion node for a self-test of the scan chain for the control point-observation point pair candidates to be inserted. The present invention is able to greatly reduce test cost.

Description

스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법 및 장치{METHOD AND APPARATUS FOR DETERMINING A SELF-TEST INSERTING NODE FOR A SCAN CHAIN}METHOD AND APPARATUS FOR DETERMINING A SELF-TEST INSERTING NODE FOR A SCAN CHAIN

본 발명은 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법에 관한 것이다. 보다 상세하게는, 본 발명은 스캔 체인의 자가 테스트를 위한 제어 포인트와 관측 포인트 삽입 노드 결정 방법에 관한 것이다.The present invention relates to a method for determining an insertion node for self-testing of a scan chain. More particularly, the present invention relates to a method for determining a control point and an observation point insertion node for self-testing of a scan chain.

이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.The content described in this section merely provides background information for the present embodiment and does not constitute the prior art.

자동차, 의료 및 항공 우주와 같은 필수 안전(Safety-Critical) 및 과제 수행에 필수적인(Mission-Critical) 분야가 성장함에 따라 해당 분야에 사용되는 반도체의 안전성과 신뢰성도 중요해지고 있다.As safety-critical and mission-critical fields such as automotive, medical, and aerospace grow, the safety and reliability of semiconductors used in these fields are also becoming more important.

현장에 투입되는 반도체는 생산 단계뿐만 아니라 사용 중일 때에도 그 자체에 결함이 없음을 보장하여야 한다. 이를 위해 대부분 반도체 스스로 테스트할 수 있도록 로직 내장 자가 테스트를 채택하고 있고, 그 비용을 줄이기 위한 연구가 활발히 진행 중이다.Semiconductors put into the field must be guaranteed to be free from defects, not only during production, but also during use. To this end, most semiconductors employ self-test with built-in logic so that they can test themselves, and research to reduce the cost is being actively conducted.

로직 내장 자가 테스트에 삽입되는 PRPG를 외부 테스트 인가시 사용되는 디컴프레서(Decompressor)와 공유하여 사용하는 연구, 테스트 포인트의 면적 오버헤드를 줄이기 위해 회로 내에 존재하는 스캔 셀을 재사용하거나 여러 테스트 포인트의 값을 압축하여 하나의 스캔 셀로 관측하는 연구 등이 진행되어 오고있다.Research using the PRPG inserted in the logic built-in self-test by sharing it with a decompressor used when applying an external test. Researches have been conducted to compress and observe with one scan cell.

테스트 포인트 면적 관련 연구는 주로 제어 포인트(CP)를 대상으로 진행되어 왔고, 관측 포인트(OP)에 대해서는 XOR 게이트를 이용해 데이터를 압축하는 정도만 연구되는 정도에 그쳐 OP 최적화 관련 연구는 미흡했다.Studies related to the test point area have been mainly conducted on the control point (CP), and for the observation point (OP), only the degree of data compression using the XOR gate has been studied, so research related to OP optimization was insufficient.

본 발명의 실시예들은 새로운 구조의 테스트 포인트를 도입하여 테스트를 위한 로직의 면적 오버헤드를 줄이고, 결과적으로 확보된 면적 여유분을 통해 더 높은 품질의 자가 테스트를 가능하게 한다. Embodiments of the present invention reduce the area overhead of logic for testing by introducing a test point of a new structure, and as a result, enable higher quality self-test through the secured area margin.

본 발명은 각 쌍의 테스트 포인트를 결합 테스트 포인트로 삽입하여 면적 오버헤드를 줄일 수 있으며, 해당 테스트 포인트 쌍은 로직 콘을 분석함으로써 찾을 수 있다. 결합 테스트 포인트의 수가 증가할수록 면적 오버헤드는 매우 작아지며, 더 많은 테스트 포인트 또는 X-마스킹과 같은 다른 이슈를 타겟하는 테스트 로직이 삽입될 여유분이 생긴다. 기존보다 면적 오버헤드는 적고 기능은 동일하므로, 테스트 로직의 밀집성이 높아진다.In the present invention, the area overhead can be reduced by inserting each pair of test points as a combined test point, and the corresponding test point pair can be found by analyzing the logic cone. As the number of combined test points increases, the area overhead becomes very small, leaving room for more test points or test logic targeting other issues such as X-masking. Since the area overhead is less and the functions are the same, the density of test logic is increased.

본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.Other objects not specified in the present invention may be additionally considered within the scope that can be easily inferred from the following detailed description and effects thereof.

상기 과제를 해결하기 위해, 본 발명의 일 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법은, 프로세서에 의해 수행되는 내장 자가 테스트 회로에서 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법에 있어서, 상기 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 제어부담지수를 산출하고, 상기 산출된 제어부담지수에 따라 적어도 하나의 제어 포인트 후보를 결정하는 단계; 상기 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 관측부담지수를 산출하고, 상기 산출된 관측부담지수에 따라 제어 포인트 후보와 다른 적어도 하나의 관측 포인트 후보를 결정하는 단계; 상기 제어 포인트 후보와 상기 관측 포인트 후보를 이용하여 제어 포인트-관측 포인트 쌍 후보들을 생성하는 단계; 및 상기 제어 포인트-관측 포인트 쌍 후보가 삽입될 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하는 단계;를 포함하는 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법을 제안한다.In order to solve the above problems, a method for determining an insertion node for self-test of a scan chain according to an embodiment of the present invention includes a method for determining an insertion node for self-test of a scan chain in a built-in self-test circuit performed by a processor calculating a control burden index for each node for a plurality of nodes included in the scan chain, and determining at least one control point candidate according to the calculated control burden index; calculating an observation burden index for each node for a plurality of nodes included in the scan chain, and determining at least one observation point candidate different from a control point candidate according to the calculated observation burden index; generating control point-observation point pair candidates using the control point candidate and the observation point candidate; and determining an insertion node for self-test of a scan chain into which the control point-observation point pair candidate is to be inserted.

여기서, 상기 제어 포인트-관측 포인트 쌍 후보는 상호보완성이 있는 제어 포인트 후보와 관측 포인트 후보로 이루어지는 것을 특징으로 한다.Here, the control point-observation point pair candidate is characterized in that it consists of a control point candidate and an observation point candidate having complementarity.

여기서, 상기 관측 포인트 후보를 결정하는 단계는, 상기 제어 포인트 후보와 상기 제어 포인트 후보와 다른 노드로부터 연결된 팬-아웃 프리(Fan-out Free) 게이트 입력단에 위치하며, 동시에 상기 제어 포인트 후보와 다른 노드가 고장이 전파되는 경로를 차단하는 경우, 상기 제어 포인트 후보와 다른 노드를 관측 포인트 후보에서 제외하는 것을 특징으로 한다.Here, the determining of the observation point candidate includes the control point candidate and the control point candidate located at the input terminal of a fan-out free gate connected from a node different from the control point candidate, and at the same time a node different from the control point candidate In the case in which a fault propagates is blocked, a node different from the control point candidate is excluded from the observation point candidate.

여기서, 상기 제어부담지수는, 아래의 <수학식>에 기반하여 산출하며,Here, the control burden index is calculated based on the following <Equation>,

<수학식><Equation>

Figure pat00001
(for CP-1)
Figure pat00001
(for CP-1)

Figure pat00002
(for CP-0)
Figure pat00002
(for CP-0)

CPBurden은 제어부담지수를 나타내며, |BlockedFaults|는 해당 제어 포인트(CP)가 삽입되는 노드의 값이 '0' 또는 '1'일 때, 전파(propagation)가 차단되는 고장의 개수를 나타내며, 상기 Ctrl은 해당 노드에 '1'이 나올 확률을 나타내고,CP Burden represents the control burden index, and |BlockedFaults| represents the number of failures in which propagation is blocked when the value of the node into which the corresponding control point (CP) is inserted is '0' or '1'. Ctrl indicates the probability of '1' appearing at the node,

상기 관측부담지수는,The observation burden index is,

아래의 <수학식>에 따라 산출되고,It is calculated according to the <Equation> below,

<수학식><Equation>

Figure pat00003
Figure pat00003

OPBurden은 관측부담지수를 나타내며, |FaninCone|은 해당 관측 포인트(OP)가 삽입되는 게이트의 입력단에 연결되는 로직 콘(Cone) 내부에 존재하는 고장의 개수를 나타내며,Obs는 해당 노드의 고장이 회로의 출력까지 전파되어 사용자가 관측할 수 있는 확률을 의미하는 것을 특징으로 한다.OP Burden represents the observation burden index, |FaninCone| represents the number of failures that exist inside the logic cone connected to the input terminal of the gate into which the corresponding observation point (OP) is inserted, and Obs is the number of failures of the corresponding node. It is characterized in that it is propagated to the output of the circuit and means the probability that the user can observe it.

여기서, 상기 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하는 단계는, 상기 상호보완성이 있는 제어 포인트-관측 포인트 쌍을 결정된 삽입 노드에 삽입하는 것을 특징으로 한다. Here, the step of determining the insertion node for the self-test of the scan chain is characterized in that the complementary control point-observation point pair is inserted into the determined insertion node.

여기서, 제어 포인트 후보를 결정하는 단계는, 제어부담지수가 미리 결정된 제1 임계 범위에 속하는 적어도 하나의 노드를 제어 포인트 후보로 결정하고, 관측 포인트 후보를 결정하는 단계는, 관측부담지수가 미리 결정된 제2 임계 범위에 속하는 적어도 하나의 노드를 관측 포인트 후보로 결정하는 것을 특징으로 한다.Here, the step of determining the control point candidate includes determining at least one node belonging to the first threshold range having a predetermined control burden index as a control point candidate, and the determining of the observation point candidate includes: It is characterized in that at least one node belonging to the second threshold range is determined as an observation point candidate.

여기서, 상기 제어 포인트-관측 포인트 쌍 후보는, 상기 제어 포인트 후보와 상기 관측 포인트 후보를 포함하며, 상기 제어 포인트 후보와 상기 관측 포인트 후보 사이에는 2개의 게이트가 연결되는 것을 특징으로 한다.Here, the control point-observation point pair candidate includes the control point candidate and the observation point candidate, and two gates are connected between the control point candidate and the observation point candidate.

여기서, 상기 2개의 게이트는, 상기 제어 포인트 후보로 결정된 노드를 입력단에 연결하는 AND게이트인 제1 게이트와, 상기 제1 게이트의 출력을 입력단에 연결하는 OR게이트인 제2 게이트로 이루어지는 것을 특징으로 한다.Here, the two gates include a first gate that is an AND gate that connects the node determined as the control point candidate to an input terminal, and a second gate that is an OR gate that connects the output of the first gate to an input terminal. do.

여기서, 상기 관측 포인트 후보를 결정하는 단계는,Here, the step of determining the observation point candidate comprises:

아래의 <수학식>에 따라 산출되는 제어능력과 가장 근사한 값을 제공하는 노드를 상기 관측 포인트 후보로 결정하고,Determining the node providing the closest value to the control capability calculated according to the following <Equation> as the observation point candidate,

<수학식><Equation>

Figure pat00004
(for CP-1)
Figure pat00004
(for CP-1)

Figure pat00005
(for CP-0)
Figure pat00005
(for CP-0)

Ctrlreq는 해당 제어 포인트(CP)의 노드와 관련된 고장들을 전파시키기 위해 요구되는 제어능력 값을 나타내며, B는 상기 제어 포인트 후보 노드와 관련된 고장을 전파시키기 위해 필요한 '1'의 개수를 나타내며, b는 상기 제어 포인트 후보 노드와 관련된 고장을 전파시키기 위해 필요한 '0'의 개수를 나타내며, |FaninCone|은 해당 제어 포인트(CP)의 입력단에 연결되는 로직 콘(Cone) 내부에 존재하는 고장의 개수를 나타내며, CP-1은 1로 제어하기 위한 제어 포인트의 종류를 나타내며, CP-0는 0으로 제어하기 위한 제어 포인트의 종류를 나타내는 것을 특징으로 한다.Ctrlreq represents a control capability value required to propagate failures related to the node of the corresponding control point (CP), B represents the number of '1's required to propagate failures related to the control point candidate node, and b is Indicates the number of '0's required to propagate a failure related to the control point candidate node, and |FaninCone| indicates the number of failures existing inside a logic cone connected to the input terminal of the corresponding control point (CP). , CP-1 indicates the type of control point for controlling as 1, and CP-0 indicates the type of control point for controlling as 0.

상기의 기술적 과제를 달성하기 위한 본 발명의 바람직한 실시예에 따른 컴퓨터 프로그램은 컴퓨터 판독이 가능한 저장 매체에 저장되어 상기한 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법 중 어느 하나를 컴퓨터에서 실행시킨다.A computer program according to a preferred embodiment of the present invention for achieving the above technical problem is stored in a computer-readable storage medium, and any one of the insertion node determination methods for self-test of the scan chain is executed in the computer.

상기의 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치는, 스캔 체인의 자가 테스트를 위한 삽입 노드 결정장치로서, 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하기 위한 하나 이상의 프로그램을 저장하는 메모리; 및 상기 메모리에 저장된 상기 하나 이상의 프로그램에 따라 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하기 위한 동작을 수행하는 하나 이상의 프로세서;를 포함하고, 상기 프로세서는, 상기 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 제어부담지수를 고려하여, 적어도 하나의 제어 포인트 후보를 결정하는 단계; 상기 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 관측부담지수를 고려하여, 상기 제어 포인트 후보와 다른 적어도 하나의 관측 포인트 후보를 결정하는 단계; 상기 제어 포인트 후보와 상기 관측 포인트 후보를 이용하여 제어 포인트-관측 포인트 쌍 후보들을 생성하는 단계; 및 상기 제어 포인트-관측 포인트 쌍 후보들의 제어부담지수와 관측부담지수를 고려하여, 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하는 단계;를 포함하는 동작들을 수행하게 하는 것을 특징으로 한다.In order to achieve the above object, an insertion node determination device for self-test of a scan chain according to a preferred embodiment of the present invention is an insertion node determination device for self-test of a scan chain, and an insertion node for self-test of the scan chain a memory storing one or more programs for determining and one or more processors that perform an operation for determining an insertion node for self-test of a scan chain according to the one or more programs stored in the memory, wherein the processor includes a plurality of nodes included in the scan chain. determining at least one control point candidate in consideration of the control burden index for each node; determining at least one observation point candidate different from the control point candidate in consideration of the observation burden index for each node with respect to a plurality of nodes included in the scan chain; generating control point-observation point pair candidates using the control point candidate and the observation point candidate; and determining an insertion node for self-test of the scan chain in consideration of the control burden index and the observation burden index of the control point-observation point pair candidates.

여기서, 상기 관측 포인트 후보를 결정하는 단계는, 상기 제어 포인트 후보와 상기 제어 포인트 후보와 다른 노드로부터 연결된 팬-아웃 프리(Fan-out Free) 게이트 입력단에 위치하며, 동시에 상기 제어 포인트 후보와 다른 노드가 고장이 전파되는 경로를 차단하는 경우, 상기 제어 포인트 후보와 다른 노드를 관측 포인트 후보에서 제외하는 것을 특징으로 한다. Here, the determining of the observation point candidate includes the control point candidate and the control point candidate located at the input terminal of a fan-out free gate connected from a node different from the control point candidate, and at the same time a node different from the control point candidate In the case in which a fault propagates is blocked, a node different from the control point candidate is excluded from the observation point candidate.

여기서, 상기 제어 포인트-관측 포인트 쌍 후보는, 상기 제어 포인트 후보와 상기 관측 포인트 후보를 포함하며, 상기 제어 포인트 후보와 상기 관측 포인트 후보 사이에는 2개의 게이트가 연결되는 것을 특징으로 한다.Here, the control point-observation point pair candidate includes the control point candidate and the observation point candidate, and two gates are connected between the control point candidate and the observation point candidate.

여기서, 상기 제어부담지수는, 아래의 <수학식>에 기반하여 산출하며,Here, the control burden index is calculated based on the following <Equation>,

<수학식><Equation>

Figure pat00006
(for CP-1)
Figure pat00006
(for CP-1)

Figure pat00007
(for CP-0)
Figure pat00007
(for CP-0)

CPBurden은 제어부담지수를 나타내며, |BlockedFaults|는 해당 제어 포인트(CP)가 삽입되는 노드의 값이 '0' 또는 '1'일 때, 전파(propagation)가 차단되는 고장의 개수를 나타내며, 상기 Ctrl은 해당 노드에 '1'이 나올 확률을 나타내고,CP Burden represents the control burden index, and |BlockedFaults| represents the number of failures in which propagation is blocked when the value of the node into which the corresponding control point (CP) is inserted is '0' or '1'. Ctrl indicates the probability of '1' appearing at the node,

상기 관측부담지수는,The observation burden index is,

아래의 <수학식>에 따라 산출되고,It is calculated according to the <Equation> below,

<수학식><Equation>

Figure pat00008
Figure pat00008

OPBurden은 관측부담지수를 나타내며, |FaninCone|은 해당 관측 포인트(OP)가 삽입되는 게이트의 입력단에 연결되는 로직 콘(Cone) 내부에 존재하는 고장의 개수를 나타내며, Obs는 해당 노드의 고장이 회로의 출력까지 전파되어 사용자가 관측할 수 있는 확률을 의미하는 것을 특징으로 한다.OP Burden represents the observation burden index, |FaninCone| represents the number of failures that exist inside the logic cone connected to the input terminal of the gate into which the corresponding observation point (OP) is inserted, and Obs represents the number of failures in the corresponding node. It is characterized in that it is propagated to the output of the circuit and means the probability that the user can observe it.

본 발명의 일 실시 예에 따르면 새로운 구조의 테스트 포인트를 통해 로직 내 자가테스트 환경에서 기존 개별 테스트 포인트 삽입의 기능은 그대로 유지하되, 면적 오버헤드를 크게 줄임으로써 테스트 비용을 크게 줄일 수 있다. According to an embodiment of the present invention, the function of inserting the existing individual test points in the self-test environment within the logic is maintained through the test points of the new structure, but the test cost can be greatly reduced by greatly reducing the area overhead.

또한, 본 발명의 일 실시 예에 따라 또한 줄어든 면적 비용을 다른 테스트 비용에 사용한다면 자가 테스트의 품질을 높일 수 있다.In addition, according to an embodiment of the present invention, if the reduced area cost is used for other test costs, the quality of the self-test can be improved.

여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급된다.Even if effects not explicitly mentioned herein, the effects described in the following specification expected by the technical features of the present invention and their potential effects are treated as described in the specification of the present invention.

도 1은 종래기술로서 기본적인 로직 내장 자가 테스트 시스템의 구조를 개략적으로 도시한 블록도이다.
도 2는 본 발명의 바람직한 실시 예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치가 로직 내장 자가 테스트 시스템과 연결된 구조를 개략적으로 나타낸 볼록 구성도이다.
도 3는 본 발명의 바람직한 실시 예에 따른 로직 자가 테스트 내장회로의 프로세서의 구조를 개략적으로 도시한 블록도이다.
도 4는 본 발명의 바람직한 실시 예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법을 설명하기 위한 흐름도이다.
도 5는 본 발명의 바람직한 실시 예에 따른 상호보완성을 갖춘 제어 포인트의 예시를 설명하기 위한 도면이다.
도 6은 본 발명의 바람직한 실시 예에 따른 상호보완성을 갖춘 관측 포인트의 예시를 설명하기 위한 도면이다.
도 7은 본 발명의 바람직한 실시 예에 따른 상호보완성을 갖춘 제어 포인트-관측 포인트 쌍에 대한 결합 포인트 삽입의 예시를 설명하기 위한 도면이다.
도 8은 본 발명의 바람직한 실시 예에 따른 제어 포인트-관측 포인트 쌍으로 사용될 수 있는 노드를 찾기 위한 알고리즘1을 설명하기 위한 도면이다.
도 9는 본 발명의 바람직한 실시 예에 따른 제어 포인트-관측 포인트 쌍을 구성할 수 없는 관측 포인트를 제외하기 위한 알고리즘2을 설명하기 위한 도면이다.
도 10은 본 발명의 바람직한 실시 예에 따른 제어 포인트-관측 포인트 쌍을 구성할 수 없는 관측 포인트의 예시를 설명하기 위한 도면이다.
도 11은 본 발명의 바람직한 실시 예에 따른 제어 포인트-관측 포인트 쌍을 구성할 수 없는 관측 포인트의 예시를 설명하기 위한 도면이다.
1 is a block diagram schematically showing the structure of a basic logic built-in self-test system as a prior art.
2 is a convex configuration diagram schematically illustrating a structure in which an insertion node determining device for self-test of a scan chain is connected to a logic-embedded self-test system according to a preferred embodiment of the present invention.
3 is a block diagram schematically showing the structure of a processor of a logic self-test built-in circuit according to a preferred embodiment of the present invention.
4 is a flowchart illustrating a method of determining an insertion node for self-test of a scan chain according to a preferred embodiment of the present invention.
5 is a diagram for explaining an example of a control point with complementarity according to a preferred embodiment of the present invention.
6 is a view for explaining an example of an observation point with complementarity according to a preferred embodiment of the present invention.
7 is a diagram for explaining an example of inserting a coupling point for a control point-observation point pair with complementarity according to a preferred embodiment of the present invention.
8 is a diagram for explaining Algorithm 1 for finding a node that can be used as a control point-observation point pair according to a preferred embodiment of the present invention.
9 is a diagram for explaining Algorithm 2 for excluding observation points that cannot constitute a control point-observation point pair according to a preferred embodiment of the present invention.
10 is a diagram for explaining an example of an observation point that cannot constitute a control point-observation point pair according to a preferred embodiment of the present invention.
11 is a diagram for explaining an example of an observation point that cannot constitute a control point-observation point pair according to a preferred embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 게시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Advantages and features of the present invention and methods of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments published below, but may be implemented in various different forms, and only the present embodiments allow the publication of the present invention to be complete, and are common in the technical field to which the present invention pertains. It is provided to fully inform those with knowledge of the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used herein may be used with the meaning commonly understood by those of ordinary skill in the art to which the present invention belongs. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless clearly specifically defined.

본 명세서에서 "제1", "제2" 등의 용어는 하나의 구성 요소를 다른 구성 요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예컨대, 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.In the present specification, terms such as “first” and “second” are for distinguishing one component from other components, and the scope of rights should not be limited by these terms. For example, a first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

본 명세서에서 각 단계들에 있어 식별부호(예컨대, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In the present specification, identification symbols (eg, a, b, c, etc.) in each step are used for convenience of description, and identification numbers do not describe the order of each step, and each step is clearly specified in a specific order in context. Unless stated otherwise, it may occur differently from the specified order. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.

본 명세서에서, "가진다", "가질 수 있다", "포함한다" 또는 "포함할 수 있다" 등의 표현은 해당 특징(예컨대, 수치, 기능, 동작, 또는 부품 등의 구성 요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.In this specification, expressions such as “have”, “may have”, “include” or “may include” indicate the presence of a corresponding feature (eg, a numerical value, function, operation, or component such as a part). and does not exclude the presence of additional features.

이하에서 첨부한 도면을 참조하여 본 발명에 따른 프로세서에 의해 수행되는 로직 자가 테스트 내장회로의 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법 및 장치의 바람직한 실시예에 대해 상세하게 설명한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, a preferred embodiment of a method and apparatus for determining an insertion node for self-testing of a scan chain of a logic self-test embedded circuit performed by a processor according to the present invention will be described in detail with reference to the accompanying drawings.

먼저, 도 1을 참조하여 종래기술의 문제점에 대하여 먼저 설명한다. First, the problems of the prior art will be described first with reference to FIG. 1 .

도 1은 종래기술로서 기본적인 로직 내장 자가 테스트 시스템의 구조를 개략적으로 도시한 블록도이다. 1 is a block diagram schematically showing the structure of a basic logic built-in self-test system as a prior art.

도 1을 참고하면, 로직 내장 자가테스트 시스템은 PRPG(Pseudo Random Pattern Generator)(100)에서 생성된 의사 랜덤 패턴을 스캔 체인(110)에 인가하여 MISR(120)의 시그니처를 미리 저장된 시그니처와 비교하여 회로의 고장 유무를 판별한다. 회로 내부에 랜덤 패턴 내성 고장(Random Pattern Resistant Fault)이 존재한다면, 해당 고장들은 랜덤 패턴에 의해 감지되기 어렵고, 결국 테스트 커버리지의 저하를 야기한다.1, the logic built-in self-test system applies the pseudo-random pattern generated by the PRPG (Pseudo Random Pattern Generator) 100 to the scan chain 110 and compares the signature of the MISR 120 with the previously stored signature. Determine whether there is a fault in the circuit. If Random Pattern Resistant Faults exist in the circuit, the faults are difficult to detect by the random pattern, and eventually lead to deterioration of test coverage.

여기에서 스캔 체인(110)은 회로 내의 논리 게이트에 테스트 패턴인가를 도와주는 하드웨어를 의미하나 반드시 이에 한정되는 것은 아니다.Here, the scan chain 110 refers to hardware that helps apply a test pattern to a logic gate in a circuit, but is not limited thereto.

테스트 포인트는 랜덤 패턴 내성 고장이 감지될 가능성을 높여준다. 제어 포인트(CP) 삽입을 통해 랜덤 패턴 내성 고장의 전파를 쉽게 할 수 있으며, 관측 포인트(OP)를 삽입하여 관측되지 않는 고장들을 직접적으로 관측할 수 있게 한다. 제어 포인트(CP) 당 필요한 추가 로직은 2개의 게이트와 1개의 플립플롭이며, 관측 포인트(OP)는 1개의 플립플롭 삽입을 요구한다. 테스트 포인트가 차지하는 면적은 로직 내장 자가테스트의 30~50%정도의 높은 비중을 차지한다.The test point increases the likelihood that a random pattern immunity fault will be detected. The propagation of random pattern-tolerant faults can be facilitated by inserting a control point (CP), and by inserting an observation point (OP), unobserved faults can be directly observed. The additional logic required per control point (CP) is two gates and one flip-flop, and observation point (OP) requires one flip-flop insertion. The area occupied by the test point occupies a high proportion of 30-50% of the logic embedded self-test.

테스트 포인트는 회로의 상태를 모니터링하거나 테스트 신호를 주입하는 데 사용되는 전자 회로 내의 위치를 의미하는 것이 바람직하나 반드시 이에 한정되는 것은 아니다.The test point preferably refers to, but is not limited to, a location in an electronic circuit used to monitor the state of the circuit or inject a test signal.

도 2는 본 발명의 바람직한 실시 예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치가 로직 내장 자가 테스트 시스템과 연결된 구조를 개략적으로 나타낸 볼록 구성도이다.2 is a convex configuration diagram schematically illustrating a structure in which an insertion node determining device for self-test of a scan chain is connected to a logic-embedded self-test system according to a preferred embodiment of the present invention.

본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치(300)는 프로세서(310)에 의해 수행되며 PRPG(Pseudo Random Pattern Generator)(220), 이상기(Phase Shifter)(230), MISR(240), 비스트(Built-in Self-test)(250), 스캔 체인(260)으로 구성된 로직 내장 자가 테스트 시스템과 연결될 수 있다. 도 2에 도시된 모든 블록이 필수 구성요소는 아니며, 다른 실시예에서 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치(300)에 포함된 일부 블록이 추가, 변경 또는 삭제될 수 있다. 한편, 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치(300)는 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치하는 컴퓨팅 장치로 구현될 수 있으며, 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치(300)에 포함된 각 구성요소들은 각각 별도의 소프트웨어 장치로 구현되거나, 소프트웨어가 결합된 별도의 하드웨어 장치로 구현될 수 있다. The insertion node determining device 300 for self-test of the scan chain according to the present embodiment is performed by the processor 310 and includes a Pseudo Random Pattern Generator (PRPG) 220, a Phase Shifter 230, and a MISR ( 240 ), a built-in self-test 250 , and a scan chain 260 may be connected to a built-in logic self-test system. Not all blocks shown in FIG. 2 are essential components, and in another embodiment, some blocks included in the insertion node determining device 300 for self-test of the scan chain may be added, changed, or deleted. On the other hand, the insertion node determination device 300 for self-test of the scan chain may be implemented as a computing device that determines the insertion node for self-test of the scan chain, and the insertion node determination device 300 for self-test of the scan chain ) may be implemented as separate software devices, or as separate hardware devices combined with software.

스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치(300)는 PRPG(Pseudo Random Pattern Generator)(220)에서 생성된 의사 랜덤 패턴을 이상기(Phase Shifter)(230)를 통하여 스캔 체인(110)에 인가하여 MISR(240)의 시그니처를 미리 저장된 시그니처와 비교하여 회로의 고장 유무를 판별하나 반드시 이에 한정되는 것은 아니다.The insertion node determining device 300 for self-test of the scan chain applies the pseudo random pattern generated by the PRPG (Pseudo Random Pattern Generator) 220 to the scan chain 110 through the Phase Shifter 230 . The signature of the MISR 240 is compared with a previously stored signature to determine whether a circuit has failed, but the present invention is not limited thereto.

스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치(300)는 로직 내장 자가 테스트 시스템과 별도의 장치인 것으로 기재하고 있으나 반드시 이에 한정되는 것은 아니며, 도 2에 도시된 시스템에 포함된 모듈로 구현될 수 있다. 예를 들어, 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치(300)는 삽입 노드를 결정하기 위한 노드 결정 모듈(미도시)로 구현될 수 있다. The insertion node determining device 300 for self-test of the scan chain is described as being a separate device from the logic-embedded self-test system, but is not necessarily limited thereto, and may be implemented as a module included in the system shown in FIG. 2 . have. For example, the insertion node determining apparatus 300 for self-test of the scan chain may be implemented as a node determining module (not shown) for determining the insertion node.

전체 알고리즘을 수행하는 프로세서(310)는 테스트 포인트를 삽입하기 전, 모든 테스트 포인트를 검사하여 서로 쌍을 이룰 수 있는 포인트와 개별 삽입되어야 할 포인트를 결정하는 단계를 수행하고 회로 내부에 삽입되는 것이 아니라 외부에 존재하는 것이나 반드시 이에 한정되는 것은 아니다.The processor 310, which performs the entire algorithm, checks all the test points before inserting the test points to determine the points that can be paired with each other and the points to be individually inserted, and is not inserted into the circuit. It exists outside, but is not necessarily limited thereto.

도 3는 본 발명의 바람직한 실시 예에 따른 내장 자가 테스트 회로의 프로세서의 구조를 개략적으로 도시한 블록도이다.3 is a block diagram schematically showing the structure of a processor of a built-in self-test circuit according to a preferred embodiment of the present invention.

본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치(300)의 프로세서(310)는 삽입 노드를 결정하기 위한 동작을 수행한다. 본 실시예에 따른 프로세서(310)는 제1 결정부(311), 제2 결정부(312), 쌍후보 생성부(233) 및 제3 결정부(314)를 포함할 수 있다. 도 3의 프로세서(310)는 일 실시예에 따른 것으로서, 도 3에 도시된 모든 블록이 필수 구성요소는 아니며, 다른 실시예에서 프로세서(310)에 포함된 일부 블록이 추가, 변경 또는 삭제될 수 있다. 한편, 프로세서(310)에 포함된 각 구성요소들은 각각 별도의 소프트웨어 장치로 구현되거나, 소프트웨어가 결합된 별도의 하드웨어 장치로 구현될 수 있다.The processor 310 of the apparatus 300 for determining an insertion node for self-test of a scan chain according to the present embodiment performs an operation for determining an insertion node. The processor 310 according to the present embodiment may include a first determiner 311 , a second determiner 312 , a pair candidate generator 233 , and a third determiner 314 . The processor 310 of FIG. 3 is according to an embodiment, and not all blocks shown in FIG. 3 are essential components, and in other embodiments, some blocks included in the processor 310 may be added, changed, or deleted. have. Meanwhile, each component included in the processor 310 may be implemented as a separate software device or as a separate hardware device combined with software.

제1 결정부(311)는 스캔 체인(260)에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 제어부담지수를 산출하고, 산출된 제어부담지수에 따라 적어도 하나의 제어 포인트 후보를 결정하는 것이 바람직하나 반드시 이에 한정되는 것은 아니다. The first determiner 311 calculates a control burden index for each node for a plurality of nodes included in the scan chain 260, and determines at least one control point candidate according to the calculated control burden index. It is preferred, but not necessarily limited thereto.

제어능력(Controllability)란 해당 노드가 로직 '1' 값을 가질 수 있는 확률을 의미한다. 제어능력 값이 낮다면 '1'이, 높다면 '0'이 나올 확률이 낮다는 것을 의미한다. '1'이 나올 확률과 '0'이 나올 확률의 합은 항상 1 이다. 따라서 해당 노드에 '0'이 나올 확률은 1-Ctrl로 표현할 수 있다. 제어부담지수는 제어 포인트(CP)를 삽입할 노드를 찾기 위하여 확률값인 제어능력을 통하여 산출되는 지수를 의미한다. Controllability refers to the probability that a corresponding node can have a logic '1' value. If the control ability value is low, it means that the probability of '1' is low, and if it is high, the probability of '0' is low. The sum of the probability of a '1' and the probability of a '0' is always 1. Therefore, the probability that '0' appears in the corresponding node can be expressed as 1-Ctrl. The control burden index refers to an index calculated through control capability, which is a probability value, in order to find a node to insert a control point (CP).

제어 포인트(CP)는 값이 '1' 또는 '0'으로 거의 고정되는 노드에 삽입되며, 해당 노드가 '1'과 '0' 두 개의 값을 모두 가질 수 있도록 도와주는 하드웨어이고, 종류로는 CP-0, CP-1 2가지 type이 있다. 예를 들어, 노드 A의 값이 '0'만 나온다면, '1'을 만들어 주기 위해 CP-1이 삽입된다. 이 때, 기존 노드 A의 값이 0으로 고정되어 있을 때, 전파가 차단되는 고장의 개수가 많을수록 해당 제어 포인트(CP)의 중요성이 커진다.A control point (CP) is inserted into a node whose value is almost fixed as '1' or '0', and is hardware that helps the node to have both '1' and '0' values. There are two types, CP-0 and CP-1. For example, if the value of node A is only '0', CP-1 is inserted to make '1'. At this time, when the value of the existing node A is fixed to 0, the greater the number of failures in which radio waves are blocked, the greater the importance of the corresponding control point CP.

테스트 포인트 삽입은 스캔 체인을 제외한 모든 논리 게이트를 대상으로 하며, 스캔 체인은 회로 내의 논리 게이트에 테스트 패턴인가를 도와주는 하드웨어이므로, 상기 스캔 체인에 포함된 복수개의 노드들의 의미는 스캔 체인의 관할에 있는 복수개의 논리 게이트 노드들을 의미하나 반드시 이에 한정되는 것은 아니다.The test point insertion targets all logic gates except the scan chain, and the scan chain is hardware that helps apply the test pattern to the logic gates in the circuit, so the meaning of a plurality of nodes included in the scan chain is under the jurisdiction of the scan chain. It means a plurality of logic gate nodes, but is not necessarily limited thereto.

제2 결정부(312) 스캔 체인(260)에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 관측부담지수를 산출하고, 산출된 관측부담지수에 따라 제어 포인트 후보와 다른 적어도 하나의 관측 포인트 후보를 결정하는 것이 바람직하나 반드시 이에 한정되는 것은 아니다.The second determination unit 312 calculates an observation burden index for each node for a plurality of nodes included in the scan chain 260, and according to the calculated observation burden index, at least one observation different from the control point candidate It is preferable to determine a point candidate, but the present invention is not limited thereto.

쌍후보 생성부(313)는 제어 포인트 후보와 관측 포인트 후보를 이용하여 제어 포인트-관측 포인트 쌍 후보들을 생성하는 것이 바람직하나 반드시 이에 한정되는 것은 아니다.Preferably, the pair candidate generator 313 generates control point-observation point pair candidates by using the control point candidate and the observation point candidate, but is not limited thereto.

제3 결정부(314)는 제어 포인트-관측 포인트 쌍 후보들의 제어부담지수와 관측부담지수를 고려하여, 제어 포인트-관측 포인트 쌍 후보들이 삽입될 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하는 것이 바람직하나 반드시 이에 한정되는 것은 아니다.The third determining unit 314 determines an insertion node for self-testing of the scan chain into which the control point-observation point pair candidates are to be inserted, in consideration of the control burden index and the observation burden index of the control point-observation point pair candidates. Preferably, but not necessarily limited thereto.

메모리부(320)는 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하기 위한 동작을 수행하는 하나 이상의 프로세서를 저장하는 기능을 수행한다. The memory unit 320 performs a function of storing one or more processors that perform an operation for determining an insertion node for self-test of the scan chain.

본 발명의 일실시예로서 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하기 위한 하나 이상의 프로그램을 저장하는 메모리 및 상기 메모리에 저장된 상기 하나 이상의 프로그램에 따라 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하기 위한 동작을 수행하는 하나 이상의 프로세서를 포함하고, 상기 프로세서는, 상기 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 제어부담지수를 고려하여, 적어도 하나의 제어 포인트 후보를 결정하는 단계를 수행하는 제1 결정부(311), 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 관측부담지수를 고려하여, 상기 제어 포인트 후보와 다른 적어도 하나의 관측 포인트 후보를 결정하는 단계를 수행하는 제2 결정부(312), 제어 포인트 후보와 상기 관측 포인트 후보를 이용하여 제어 포인트-관측 포인트 쌍 후보들을 생성하는 단계를 수행하는 쌍후보 생성부(313), 및 제어 포인트-관측 포인트 쌍 후보들의 제어부담지수와 관측부담지수를 고려하여, 제어 포인트-관측 포인트 쌍 후보들이 삽입될 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하는 단계를 수행하는 제3 결정부(314)가 각각의 동작들을 수행하게 하는 것을 특징으로 하는 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치를 제안한다.As an embodiment of the present invention, a memory storing one or more programs for determining an insertion node for self-test of a scan chain and determining an insertion node for self-test of a scan chain according to the one or more programs stored in the memory for determining at least one control point candidate in consideration of the control burden index for each node with respect to a plurality of nodes included in the scan chain, wherein the processor determines at least one control point candidate The first determining unit 311 performing the step determines at least one observation point candidate different from the control point candidate by considering the observation burden index for each node with respect to a plurality of nodes included in the scan chain. a second determiner 312 performing the step of performing the step of generating a control point-observation point pair candidate using the control point candidate and the observation point candidate, and a pair candidate generator 313 performing the step of generating the control point- In consideration of the control burden index and the observation burden index of the observation point pair candidates, the third determination unit 314 performs the step of determining the insertion node for the self-test of the scan chain into which the control point-observation point pair candidates are to be inserted. We propose a device for determining an insertion node for self-test of a scan chain, characterized in that each operation is performed.

도 4는 본 발명의 바람직한 실시 예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법을 설명하기 위한 흐름도이다.4 is a flowchart illustrating a method of determining an insertion node for self-test of a scan chain according to a preferred embodiment of the present invention.

S110 단계에서 프로세서(310)는 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 제어부담지수를 산출하고, 상기 산출된 제어부담지수에 따라 적어도 하나의 제어 포인트 후보를 결정하는 단계를 수행한다.In step S110, the processor 310 calculates a control burden index for each node for a plurality of nodes included in the scan chain, and determines at least one control point candidate according to the calculated control burden index. carry out

S120 단계에서 프로세서(310)는 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 관측부담지수를 산출하고, 상기 산출된 관측부담지수에 따라 제어 포인트 후보와 다른 적어도 하나의 관측 포인트 후보를 결정하는 단계를 수행한다.In step S120, the processor 310 calculates an observation burden index for each node for a plurality of nodes included in the scan chain, and at least one observation point different from the control point candidate according to the calculated observation burden index Steps to determine a candidate are performed.

S130 단계에서 프로세서(310)는 제어 포인트 후보와 관측 포인트 후보를 이용하여 제어 포인트-관측 포인트 쌍 후보들을 생성하는 단계를 수행한다.In step S130 , the processor 310 generates control point-observation point pair candidates by using the control point candidate and the observation point candidate.

S140 단계에서 프로세서(310)는 제어 포인트-관측 포인트 쌍 후보들의 제어부담지수와 관측부담지수를 고려하여, 제어 포인트-관측 포인트 쌍 후보들이 삽입될 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하는 단계를 수행한다.In step S140, the processor 310 considers the control burden index and the observation burden index of the control point-observation point pair candidates, and determines the insertion node for the self-test of the scan chain into which the control point-observation point pair candidates are inserted. carry out

도 4에서는 각 단계를 순차적으로 실행하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니다. 다시 말해, 도 4에 기재된 단계를 변경하여 실행하거나 하나 이상의 단계를 병렬적으로 실행하는 것으로 적용 가능할 것이므로, 도 4는 시계열적인 순서로 한정되는 것은 아니다.Although it is described that each step is sequentially executed in FIG. 4 , the present invention is not limited thereto. In other words, since it may be applicable by changing and executing the steps described in FIG. 4 or executing one or more steps in parallel, FIG. 4 is not limited to a time-series order.

도 4에 기재된 본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정 방법은 애플리케이션(또는 프로그램)으로 구현되고 단말장치(또는 컴퓨터)로 읽을 수 있는 기록매체에 기록될 수 있다. 본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정 방법을 구현하기 위한 애플리케이션(또는 프로그램)이 기록되고 단말장치(또는 컴퓨터)가 읽을 수 있는 기록매체는 컴퓨팅 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치 또는 매체를 포함한다.The method for determining the insertion node for self-test of the scan chain according to the present embodiment described in FIG. 4 may be implemented as an application (or program) and recorded in a terminal device (or computer) readable recording medium. An application (or program) for implementing a method for determining an insertion node for self-test of a scan chain according to the present embodiment is recorded, and a terminal device (or computer) readable recording medium is data readable by a computing system It includes any kind of recording device or medium on which it is stored.

본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정 장치(300)의 프로세서(310)의 쌍 후보 생성부(313)는 제어 포인트-관측 포인트 쌍 후보들의 제어부담지수와 관측부담지수를 고려하여, 제어 포인트-관측 포인트 쌍 후보들이 삽입될 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하는 단계에서, 제어 포인트와 관측 포인트가 상호보완성이 있는 경우를 삽입 노드로 결정하는 과정을 수행할 수 있다. The pair candidate generation unit 313 of the processor 310 of the apparatus 300 for determining an insertion node for self-testing of the scan chain according to the present embodiment calculates the control point-observation point pair candidate's control burden index and observation burden index. In consideration of this, in the step of determining the insertion node for self-test of the scan chain into which the control point-observation point pair candidates are to be inserted, the case where the control point and the observation point have complementarity is determined as the insertion node. can

본 발명의 실시예는 상호보완성이 있는(Complementary Related)의 제어 포인트(CP)와 관측 포인트(OP를) 결합하여 하나의 테스트 포인트로 삽입함으로써, 최소의 추가 로직을 사용하여 기존의 테스트 품질을 개선할 수 있는 방법을 제안한다.An embodiment of the present invention combines a complementary related control point (CP) and an observation point (OP) and inserts them into one test point, thereby improving the existing test quality using minimal additional logic. Suggest ways to improve.

먼저 게이트-레벨(Gate-level)로 합성된 회로의 각 게이트 입력과 출력의 제어능력(Controllability)과 관측능력(Observability) 및 단일 고착 고장이 감지될 수 있는 확률(고장 감지율)을 계산하여 회로의 예상 테스트 커버리지를 추정한다. 또한 제어능력(Controllability)과 관측능력(Observability)을 합쳐서 테스터빌리티(Testability)라고 한다. First, the controllability and observability of each gate input and output of the gate-level synthesized circuit and the probability that a single fixed failure can be detected (failure detection rate) are calculated. Estimate the expected test coverage of In addition, controllability and observability are collectively referred to as testability.

또한 각 Type 별 부담지수(Burden)을 계산하여 제어부담지수(CP Burden)가 큰 노드에 제어 포인트(CP)를, 관측 부담지수(OP Burden)가 큰 노드에 관측 포인트(OP)를 삽입하여 전체 테스터빌리티(Testability)를 개선한다.In addition, by calculating the burden index (Burden) for each type, a control point (CP) is inserted into a node with a large control burden index (CP Burden) and an observation point (OP) is inserted into a node with a large observation burden index (OP Burden). Improve testability.

본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정 장치(300)의 프로세서(310)의 제1 결정부(311)는 제어부담지수를 아래의 <수학식 1>에 따라 산출하며,The first determining unit 311 of the processor 310 of the apparatus 300 for determining the insertion node for self-test of the scan chain according to the present embodiment calculates the control burden index according to the following <Equation 1>,

Figure pat00009
Figure pat00009

Figure pat00010
(for CP-0)
Figure pat00010
(for CP-0)

수학식 1에서, 상기 CPBurden은 제어부담지수를 나타내고, 상기 |BlockedFaults|는 해당 제어 포인트(CP)가 삽입되는 노드의 값이 '0' 또는 '1'일 때, 전파(propagation)가 차단되는 고장의 개수를 나타내고, 상기 Ctrl은 해당 노드에 '1'이 나올 확률로서 제어능력(Controllability)을 나타낸다.In Equation 1, the CP Burden represents the control burden index, and the |BlockedFaults| is when the value of the node into which the corresponding control point (CP) is inserted is '0' or '1', propagation is blocked. The number of failures is indicated, and the Ctrl indicates controllability as the probability that '1' appears in the corresponding node.

제2 결정부(312)는 제어부담지수를 아래의 <수학식 2>에 따라 산출할 수 있다.The second determination unit 312 may calculate the control burden index according to the following <Equation 2>.

Figure pat00011
Figure pat00011

수학식 2에서, 상기 OPBurden은 관측부담지수를 나타내고, 상기 |FaninCone|은 해당 관측 포인트(OP)가 삽입되는 게이트의 입력단에 연결되는 로직 콘(Cone) 내부에 존재하는 고장의 개수를 나타내고, 상기 Obs는 해당 노드의 관측능력(Observability)을 나타낸다.In Equation 2, the OP Burden represents the observation burden index, and the |FaninCone| represents the number of failures existing inside the logic cone connected to the input terminal of the gate into which the corresponding observation point OP is inserted, The Obs represents the observability of the corresponding node.

관측능력(Observability)은 해당 노드의 고장이 회로의 출력까지 전파되어 사용자가 관측할 수 있는 확률을 의미하며, 관측능력(Observability)이 낮다면 해당 위치의 고장이 관측되기 어려운 것을 뜻한다. 관측부담지수는 관측 포인트(OP)를 삽입할 노드를 찾기 위하여 확률값인 관측능력을 통하여 산출되는 지수를 의미한다.Observability refers to the probability that the failure of the node is propagated to the output of the circuit and can be observed by the user. The observation burden index refers to an index calculated through the observation ability, which is a probability value, in order to find a node to insert an observation point (OP).

수학식 1의 경우, 제어 포인트가 삽입되는 노드의 값이 '0'인 경우, '1'로 제어하기 위해

Figure pat00012
(for CP-1) 수학식을 통하여 제어부담지수가 산출되고, 제어 포인트가 삽입되는 노드의 값이 '1'인 경우, '0'으로 제어하기 위해
Figure pat00013
(for CP-0) 수학식을 통하여 제어부담지수가 산출된다.In the case of Equation 1, when the value of the node into which the control point is inserted is '0', in order to control it as '1'
Figure pat00012
(for CP-1) When the control burden index is calculated through the equation and the value of the node into which the control point is inserted is '1', in order to control it to '0'
Figure pat00013
(for CP-0) The control burden index is calculated through the equation.

제어 포인트(CP)의 경우 해당 노드의 값이 한 값으로 치중되어 있을 때 전파가 차단되는 고장의 개수가 많고, 해당 제어능력(Controllability)이 낮을 때 제어부담지수(CP Burden)값이 커지게 되어 제어 포인트(CP) 삽입 유력 후보가 된다. In the case of a control point (CP), when the value of the node is concentrated at one value, the number of failures that block radio waves is large, and when the control ability is low, the value of the control burden index (CP Burden) increases. It becomes a strong candidate for inserting a control point (CP).

어떤 노드를 통해 전파되는 고장의 개수가 많고, 관측능력(Observability)이 낮을 때는 관측 부담지수(OP Burden)이 증가하여 관측 포인트(OP) 삽입유력 후보가 된다. When the number of failures propagated through a node is large and the observability is low, the observation burden index (OP Burden) increases, making it a strong candidate for insertion of an observation point (OP).

도 5는 본 발명의 바람직한 실시 예에 따른 상호보완성을 갖춘 제어 포인트의 예시를 설명하기 위한 도면이다. 도 6은 본 발명의 바람직한 실시 예에 따른 상호보완성을 갖춘 관측 포인트의 예시를 설명하기 위한 도면이다.5 is a diagram for explaining an example of a control point with complementarity according to a preferred embodiment of the present invention. 6 is a view for explaining an example of an observation point with complementarity according to a preferred embodiment of the present invention.

한편, 제어 포인트(CP) 삽입이 필요한 노드 중 관측능력(Observability)이 설계자에 의해 설정된 임계값보다 높은 제어 포인트 삽입 후보 노드와, 관측 포인트(OP) 삽입이 필요한 노드 중 제어성이 뛰어난 관측 포인트 삽입 후보 노드, 즉, 제어능력(Controllability)이 설계자에 의해 설정된 임계범위내에 있는 노드가 있다면 이 둘은 상호보완성이 있다고 표현할 수 있다.On the other hand, among the nodes requiring the insertion of the control point (CP), the control point insertion candidate node whose observability is higher than the threshold set by the designer and the observation point insertion with excellent controllability among the nodes requiring the insertion of the observation point (OP) If there is a candidate node, that is, a node whose controllability is within the critical range set by the designer, it can be expressed that the two are complementary.

즉, 관측능력이 설계자에 의해 설정된 임계값보다 높고 제어능력이 부족한 제어 포인트 삽입 후보 노드는 관측능력이 부족한 관측 포인트 삽입 후보 노드의 관측능력을 보완해줄 수 있다. 이 경우 관측능력이 부족한 관측 포인트 삽입 후보 노드의 제어능력이 설계자에 의해 설정된 임계범위내에 해당한다면 제어 능력이 부족한 제어 포인트 삽입 후보 노드의 제어능력을 보완해줄 수 있으므로, 이 두 노드는 상호보완성이 있다고 표현할 수 있다.That is, a control point insertion candidate node having an observation capability higher than a threshold set by a designer and lacking in control capability may supplement the observation capability of an observation point insertion candidate node lacking in observation capability. In this case, if the control capability of the observation point insertion candidate node lacking the observation capability falls within the critical range set by the designer, the control capability of the control point insertion candidate node lacking the control capability can be supplemented. It can be expressed that there is

예를 들어, 설계자가 미리 설정한 관측 능력의 임계값이 0.8인 경우 0.8보다 높은 관측 능력을 가지지만 제어능력이 부족한 제어 포인트 삽입 후보 노드는 관측 포인트 삽입 후보 노드의 부족한 관측능력을 보완해줄 수 있다. 한편, 이 경우 부족한 관측 능력을 가진 관측 포인트 삽입 후보 노드의 제어 능력이 설계자에 의해 미리 설정된 제어능력의 임계범위인 0.3과 0.7사이에 값을 가지는 0.5에 해당한다면 이는 제어성이 뛰어난 것으로, 제어능력이 부족한 제어포인트 삽입 후보 노드의 제어능력을 보완해줄 수 있으므로 이 둘은 상호보완성이 있다고 표현할 수 있다.For example, if the threshold value of the observation capability set by the designer is 0.8, a control point insertion candidate node that has an observation capability higher than 0.8 but lacks control capability can compensate for the insufficient observation capability of the observation point insertion candidate node. . On the other hand, in this case, if the control capability of the observation point insertion candidate node with insufficient observation capability corresponds to 0.5 with a value between 0.3 and 0.7, which is the critical range of the control capability preset by the designer, it has excellent controllability. It can be said that these two are complementary because they can supplement the control ability of this insufficient control point insertion candidate node.

상기 제어 포인트 삽입 후보 노드와 상기 관측 포인트 삽입 후보 노드에 각각 테스트 포인트를 삽입하지 않고, 서로의 상호보완적 능력을 공유하도록 결합 테스트 포인트를 삽입하면, 하나의 테스트 포인트로 두 개의 테스트 포인트 삽입의 효과를 낼 수 있다. Effect of inserting two test points into one test point if joint test points are inserted to share mutual complementary capabilities without inserting test points into the control point insertion candidate node and the observation point insertion candidate node respectively can pay

상호보완성을 검사하기 위해, 제어 포인트(CP)후보에 대해 관측능력(Observability)을, 관측 포인트(OP) 후보에 대해 제어능력(Controllability)을 검사한다. 제어 포인트(CP)후보의 관측능력(Observability)이 임계값보다 크기만 하면, 제어 포인트(CP)-관측 포인트(OP)쌍 후보로 생성되기 위한 제어 포인트(CP) 후보로서의 상호보완성이 있다고 판단하며, 관측 포인트(OP) 후보의 경우 제어능력(Controllability)이 해당 두 임계 값 사이에 해당하는 값이어야 제어 포인트(CP)-관측 포인트(OP)쌍 후보로 생성되기 위한 관측 포인트(OP) 후보로서의 상호보완성이 있다고 판단한다.In order to check the complementarity, the control point (CP) candidates are tested for observability and the observation point (OP) candidates are tested for controllability. If the observability of the control point (CP) candidate is greater than the threshold value, it is determined that there is complementarity as a control point (CP) candidate to be generated as a control point (CP)-observation point (OP) pair candidate. In the case of an observation point (OP) candidate, the control point (OP) candidate must be a value that corresponds to a value between the two critical values to be generated as a control point (CP)-observation point (OP) pair candidate. judged to be complementary.

예를 들어, 도 5를 참고하면, 도 5의 x노드(510)는 어떠한 로직에 의해 고장 전파가 차단(Blocked)(520)되어 관측능력(Observability)이 낮은 반면, 스캔 셀(500)의 출력을 전달하기 때문에 제어성이 뛰어나다. 예를 들어, 도 6를 참고하면, 도 6의 y노드(640)는 32-입력 AND게이트(630)의 출력을 전달하기 때문에 로직 '1' 제어능력(Ctrl_1)이 낮은 반면, 스캔 셀(620)로 고장을 전파할 수 있기 때문에 관측능력(Observability)이 높다. 이러한 상호보완 관계의 테스트 포인트 쌍은 결합 포인트를 통해 서로의 능력을 공유할 수 있다. For example, referring to FIG. 5 , in the x node 510 of FIG. 5 , the failure propagation is blocked 520 by some logic, so that the observability is low, while the output of the scan cell 500 is low. It has excellent controllability because it transmits For example, referring to FIG. 6 , the y-node 640 of FIG. 6 transfers the output of the 32-input AND gate 630 , so the logic '1' control capability (Ctrl_1) is low, while the scan cell 620 ) can propagate the failure, so the observability is high. A pair of test points in such a complementary relationship can share each other's capabilities through a binding point.

도 7은 본 발명의 바람직한 실시 예에 따른 상호보완성을 갖춘 제어 포인트-관측 포인트 쌍에 대한 결합 포인트 삽입의 예시를 설명하기 위한 도면이다.7 is a diagram for explaining an example of inserting a coupling point for a control point-observation point pair with complementarity according to a preferred embodiment of the present invention.

본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정 장치(300)의 프로세서(310)의 쌍 후보 생성부(313)는, 제어 포인트-관측 포인트 쌍 후보에 제어 포인트 후보와 관측 포인트 후보를 포함하며, 제어 포인트 후보와 관측 포인트 후보 사이에는 2개의 게이트가 연결되는 것을 제어 포인트-관측 포인트 쌍 후보를 생성할 수 있다.The pair candidate generator 313 of the processor 310 of the apparatus 300 for determining an insertion node for self-test of the scan chain according to the present embodiment includes a control point candidate and an observation point candidate as a control point-observation point pair candidate. Including, two gates are connected between the control point candidate and the observation point candidate to generate a control point-observation point pair candidate.

본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정 장치(300)의 프로세서(310)의 쌍 후보 생성부(313)는, 제어 포인트 후보와 관측 포인트 후보 사이에 연결되는 2개의 게이트를 상기 제어 포인트 후보로 결정된 노드를 입력단에 연결하는 AND게이트인 제1 게이트와, 상기 제1 게이트의 출력을 입력단에 연결하는 OR게이트인 제2 게이트로 이루어지는 제어 포인트-관측 포인트 쌍 후보를 생성할 수 있다.The pair candidate generator 313 of the processor 310 of the apparatus 300 for determining an insertion node for self-test of the scan chain according to the present embodiment generates two gates connected between the control point candidate and the observation point candidate. A control point-observation point pair candidate comprising a first gate that is an AND gate that connects the node determined as the control point candidate to an input terminal and a second gate that is an OR gate that connects the output of the first gate to an input terminal can be generated have.

콘(Cone)이란 게이트의 배치 구조가 삼각형 형태를 이루는 것을 의미하는 것이 바람직하나 반드시 이에 한정되는 것은 아니다.Cone preferably means that the gate arrangement has a triangular shape, but is not limited thereto.

게이트의 배치 구조가 이루는 삼각형 형태의 방향에 따라서 팬-인 콘(Fan-in cone)과 팬-아웃 콘(Fan-out cone)으로 분류할 수 있으며, 팬-아웃 프리(Fan-out Free) 게이트는 팬-아웃 콘(Fan-out cone)구조에서 가장 마지막에 위치한 출력 게이트를 의미하는 것이 바람직하나 반드시 이에 한정되는 것은 아니다.According to the direction of the triangular shape of the gate arrangement structure, it can be classified into a fan-in cone and a fan-out cone, and a fan-out free gate It is preferable to mean an output gate positioned at the end of the fan-out cone structure, but is not limited thereto.

예를 들어, 도 7을 참고하면, 제어성이 뛰어난 x노드(730)를 CP Driver로서 사용하기 위해 TP_Gating(750) 입력에 연결하여 y노드(720)를 위한 컨트롤 로직을 구성한다. x노드(730)의 값은 TP(760)를 통해 경로1로 전파되어 G2(780)의 팬-인 콘(Fan-in cone)(770) 고장의 전파를 용이하게 한다. 동시에, 기존 x노드(730)를 통해 전파되지 못한 고장들이 새로운 경로인 path_2를 통해 스캔 셀(790)로 전파되어 관측이 용이해진다. 하나의 결합 테스트 포인트 삽입에 필요한 로직은 단 2개의 게이트이기 때문에 면적 오버헤드가 크게 줄어든다. TP_Enable 신호를 OFF 하면 테스트 모드가 아닌 일반 동작 모드(Functional Mode)로 전환되며 기존 회로와 동일하게 동작한다.For example, referring to FIG. 7 , the control logic for the y-node 720 is configured by connecting the x-node 730 with excellent controllability to the TP_Gating 750 input in order to use it as a CP driver. The value of xnode 730 propagates to path 1 through TP 760 to facilitate propagation of the Fan-in cone 770 failure of G 2 780 . At the same time, failures that have not been propagated through the existing x-node 730 are propagated to the scan cell 790 through the new path path_2, which facilitates observation. The area overhead is greatly reduced because the logic required to insert one coupled test point is only two gates. When the TP_Enable signal is turned OFF, it is converted to the normal operation mode (Functional Mode) rather than the test mode and operates the same as the existing circuit.

도 8은 본 발명의 바람직한 실시 예에 따른 제어 포인트-관측 포인트 쌍으로 사용될 수 있는 노드를 찾기 위한 알고리즘1을 설명하기 위한 도면이다. 도 9는 본 발명의 바람직한 실시 예에 따른 제어 포인트-관측 포인트 쌍을 구성할 수 없는 관측 포인트를 제외하기 위한 알고리즘2을 설명하기 위한 도면이다.8 is a diagram for explaining Algorithm 1 for finding a node that can be used as a control point-observation point pair according to a preferred embodiment of the present invention. 9 is a diagram for explaining Algorithm 2 for excluding observation points that cannot constitute a control point-observation point pair according to a preferred embodiment of the present invention.

본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정 장치(300)의 프로세서(310)의 제1 결정부(311)는 제어 포인트 후보를 결정하는 단계에서, 제어부담지수가 미리 결정된 제1 임계 범위에 속하는 적어도 하나의 노드를 제어 포인트 후보로 결정하는 단계를 수행하고, 프로세서(310)의 제2 결정부(312)는 관측 포인트 후보를 결정하는 단계는 관측부담지수가 미리 결정된 제2 임계 범위에 속하는 적어도 하나의 노드를 관측 포인트 후보로 결정하는 단계를 수행할 수 있다.In the step of determining the insertion node for self-test of the scan chain according to the present embodiment, the first determining unit 311 of the processor 310 of the apparatus 300 determines the control point candidate, the control burden index is determined in advance. The step of determining at least one node belonging to one critical range as a control point candidate is performed, and the second determining unit 312 of the processor 310 determines the observation point candidate in the second predetermined observation burden index. Determining at least one node belonging to the critical range as an observation point candidate may be performed.

미리 결정된 제1 임계 범위는 해당 노드의 제어능력이 제어 포인트(CP)-관측 포인트(OP)쌍 후보로 생성되기 위한 관측 포인트(OP) 후보의 제어능력에 해당하는지 결정하기 위해 설계자가 미리 설정한 임계범위(Ctrl_1 Threshold와 Ctrl_0 Threshold)를 말한다.The first predetermined threshold range is set in advance by the designer to determine whether the control capability of the corresponding node corresponds to the control capability of the observation point (OP) candidate to be generated as a control point (CP)-observation point (OP) pair candidate. It refers to the threshold range (Ctrl_1 Threshold and Ctrl_0 Threshold).

미리 결정된 제2 임계 범위는 해당 노드의 관측능력이 제어 포인트(CP)-관측 포인트(OP)쌍 후보로 생성되기 위한 제어 포인트(CP) 후보의 관측능력에 해당하는지 결정하기 위해 설계자가 미리 설정한 임계값(Obs Threshold)보다 낮은 것을 제외하는 것을 말한다.The second predetermined threshold range is set in advance by the designer to determine whether the observation capability of the corresponding node corresponds to the observation capability of the control point (CP) candidate to be generated as a control point (CP)-observation point (OP) pair candidate. It means to exclude anything lower than the Obs Threshold.

제어부담지수 및 관측부담지수는 기존의 테스트 포인트 삽입 방법을 설명하기 위한 편의상의 지수로 본 발명의 실시예가 제안하는 알고리즘에서는 사용하지 않고 제어능력 및 관측능력 임계 값을 사용하나 반드시 이에 한정되는 것은 아니다.The control burden index and the observation burden index are convenient indices for explaining the existing test point insertion method, and are not used in the algorithm proposed by the embodiment of the present invention, but control capability and observation capability threshold values are used, but are not necessarily limited thereto. .

바람직한 임계 값과 임계범위는 타겟 테스트 패턴의 개수, 회로의 설계방법 및 복잡도에 따라 달라진다. 예를 들어, 어떠한 임의의 회로의 관측 포인트 후보 노드의 제어능력은 0.001에서 0.999 사이일 수 있다. 바람직하게는, 어떠한 임의의 회로의 관측 포인트 후보 노드의 제어능력은 0.2에서 0.8 사이가 바람직하다. 어떠한 임의의 회로의 제어 포인트 후보 노드의 관측능력은 0.001에서 1 사이일 수 있다. 제어 포인트 후보 노드의 관측능력은 0.7에서 1사이가 바람직하다. 제어능력 값이 0.2 보다 작거나 0.8보다 큰 관측 포인트는 제어 포인트(CP)-관측 포인트(OP)쌍 후보로 생성되기 위한 관측 포인트(OP) 후보로서의 상호보완성이 떨어지는 문제가 있고, 관측능력이 0.7 미만인 경우, 제어 포인트(CP)-관측 포인트(OP)쌍 후보로 생성되기 위한 제어 포인트(CP) 후보로서의 상호보완성이 떨어지는 문제가 있다. 상기의 두 가지의 상호보완성이 없는 포인트는 개별 삽입되어야 한다.Preferred threshold values and threshold ranges depend on the number of target test patterns, circuit design methods, and complexity. For example, the control capability of the observation point candidate node of any arbitrary circuit may be between 0.001 and 0.999. Preferably, the control capability of the observation point candidate node of any arbitrary circuit is between 0.2 and 0.8. The observability of the control point candidate node of any arbitrary circuit may be between 0.001 and 1. The observability of the control point candidate node is preferably between 0.7 and 1. Observation points whose control capability value is less than 0.2 or greater than 0.8 have a problem of poor complementarity as an observation point (OP) candidate to be generated as a control point (CP)-observation point (OP) pair candidate. If it is less than 0.7, there is a problem of poor complementarity as a control point (CP) candidate for generating a control point (CP)-observation point (OP) pair candidate. Points that do not complement the above two points must be inserted separately.

결합 테스트 포인트로 삽입될 수 있는 쌍은 도 8과 도 9의 알고리즘을 통해 탐색된다. 우선 결합 쌍으로 사용될 수 있는 테스트 포인트를 찾기 위해 도 8의 알고리즘을 통해 테스트 포인트 분류를 수행한다. 결합 쌍을 위한 제어 포인트(CP) 의 경우, 관측능력(Observability)이 설계자가 설정한 임계값(Obs Threshold)보다 낮고 0보다 클 경우 제거하여, 해당 경로를 통해 고장 전파가 쉬운 제어 포인트(CP)만을 남긴다. 비슷하게, 결합 쌍을 위한 관측 포인트(OP) 노드는 로직 '0'과 '1' 의 제어가 쉬워야 하므로, 해당 제어능력이 설계자가 설정한 임계범위(Ctrl_1 Threshold와 Ctrl_0 Threshold)를 벗어나는 관측 포인트(OP)를 제거하여 제어가 쉬운 노드만 남긴다.Pairs that can be inserted as binding test points are searched through the algorithms of FIGS. 8 and 9 . First, test point classification is performed through the algorithm of FIG. 8 in order to find a test point that can be used as a binding pair. In the case of a control point (CP) for a coupled pair, if the observability is lower than the threshold set by the designer (Obs Threshold) and is greater than 0, it is removed and the control point (CP) is easy to propagate failure through the corresponding path. leave only Similarly, the observation point (OP) node for the coupled pair should be easy to control the logic '0' and '1', so the observation point (OP) whose control ability is outside the critical range (Ctrl_1 Threshold and Ctrl_0 Threshold) set by the designer ) to leave only the nodes that are easy to control.

테스트 포인트 분류가 끝나면, 남아있는 제어 포인트(CP)의 로직 콘 분석을 통해 각 제어 포인트(CP) 별 결합될 수 없는 관측 포인트(OP)를 삭제한다. 해당 알고리즘은 도 9에 나타나있다. 제어 포인트(CP)로부터 시작되는 팬-아웃 프리(Fan-out Free) 게이트와 수렴하는 관측 포인트(OP)가 있다면, 관측 포인트(OP)가 수렴하는 게이트와 제어 포인트(CP)를 동시에 제어하는지 추가 분석한다. 관측 포인트(OP)의 값이 제어 포인트(CP)를 제어하면 팬-아웃 프리(Fan-out Free) 게이트의 고장들이 전파되는데, 관측 포인트(OP)가 동시에 팬-아웃 프리(Fan-out Free) 게이트를 제어함으로써 콘(Cone)의 고장 전파가 차단되는 경우가 발생할 수 있기 때문이다.After the test point classification is finished, the observation point OP that cannot be combined for each control point CP is deleted through the logic cone analysis of the remaining control points CP. The corresponding algorithm is shown in FIG. 9 . If there is a fan-out free gate starting from the control point (CP) and a converging observation point (OP), add whether the observation point (OP) simultaneously controls the converging gate and control point (CP). Analyze. When the value of the observation point OP controls the control point CP, the failures of the Fan-out Free gate are propagated, and the observation point OP is simultaneously Fan-out Free. This is because, by controlling the gate, the failure propagation of the cone may be blocked.

도 10은 본 발명의 바람직한 실시 예에 따른 제어 포인트-관측 포인트 쌍을 구성할 수 없는 관측 포인트의 예시를 설명하기 위한 도면이다. 10 is a diagram for explaining an example of an observation point that cannot constitute a control point-observation point pair according to a preferred embodiment of the present invention.

본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정 장치(300)의 프로세서(310)의 제2 결정부(312)는 관측 포인트 후보를 결정하는 단계에서, 제어 포인트 후보와 제어 포인트 후보와 다른 노드로부터 연결된 팬-아웃 프리(Fan-out Free) 게이트 입력단에 위치하며, 동시에 제어 포인트 후보와 다른 노드가 고장이 전파되는 경로를 차단하는 경우, 제어 포인트 후보와 다른 노드를 관측 포인트 후보에서 제외하는 것을 수행할 수 있다.The second determining unit 312 of the processor 310 of the apparatus 300 for determining an insertion node for self-test of the scan chain according to the present embodiment determines the observation point candidate, the control point candidate and the control point candidate It is located at the input terminal of a fan-out free gate connected from a node other than the control point candidate and at the same time a control point candidate and another node block the path through which the failure propagates. exclusion can be done.

예를 들어, 도 10을 참고하면, 관측 포인트(OP) 위치인 x노드(1020) 값이 '1'일 때, 제어 포인트(CP) 위치인 y노드(1010)를 제어하여 콘(Cone)(1050)의 고장을 전파하는데, 이 때 팬-아웃 프리(Fan-out Free) 게이트(G3)(1060)를 관측 포인트(OP)가 동시에 제어함으로써 고장이 전파되는 유일한 경로를 차단하게 된다. 결과적으로 도 9의 알고리즘2를 수행하면 고장 전파를 차단하는 경우를 야기하는 관측 포인트(OP)후보가 제거되며 각 제어 포인트(CP)별 결합 가능한 관측 포인트(OP) 후보 리스트가 완성된다.For example, referring to FIG. 10 , when the value of the x node 1020, which is the position of the observation point (OP), is '1', the y node 1010, which is the position of the control point (CP), is controlled to control the cone (Cone) ( 1050), at which time the fan-out free gate (G 3 ) 1060 is simultaneously controlled by the observation point (OP) to block the only path through which the fault propagates. As a result, when Algorithm 2 of FIG. 9 is performed, an observation point (OP) candidate that causes failure to propagate is removed, and a combinable observation point (OP) candidate list for each control point (CP) is completed.

도 11은 본 발명의 바람직한 실시 예에 따른 제어 포인트-관측 포인트 쌍을 구성할 수 없는 관측 포인트의 예시를 설명하기 위한 도면이다.11 is a diagram for explaining an example of an observation point that cannot constitute a control point-observation point pair according to a preferred embodiment of the present invention.

도면 8의 알고리즘1, 도면9의 알고리즘2를 수행했을 때 남아있는 관측 포인트(OP) 후보들이 최종 후보가 되며, 최적의 후보를 찾기 위해 추가 과정이 필요하다. When Algorithm 1 of FIG. 8 and Algorithm 2 of FIG. 9 are performed, the remaining observation point (OP) candidates become final candidates, and an additional process is required to find an optimal candidate.

제어 포인트(CP) 노드에 요구되는 제어능력(Controllability)을 계산하여, 가장 근사한 값을 제공해 줄 수 있는 관측 포인트(OP)를 최종 쌍으로 결정한다. 관측 포인트(OP)로부터 공유받은 제어능력(Controllability)을 통해 팬-아웃(Fan-out) 단의 고장 전파를 유리하게 하지만, 동시에 다른 고장 전파를 차단하기도 한다. By calculating the controllability required for the control point (CP) node, the observation point (OP) that can provide the most approximate value is determined as the final pair. Through the controllability shared from the observation point (OP), the fault propagation of the fan-out stage is advantageous, but at the same time, it blocks the propagation of other faults.

본 실시예에 따른 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정 장치(300)의 프로세서(310)의 제2 결정부(312)는 관측 포인트 후보를 결정하는 단계에서 아래의 <수학식 3>에 따라 산출되는 제어능력(Controllability)과 가장 근사한 값을 제공하는 노드를 상기 관측 포인트 후보로 결정하는 것을 특징으로 하는 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법을 수행할 수 있다.The second determination unit 312 of the processor 310 of the apparatus 300 determines an insertion node for self-test of the scan chain according to the present embodiment, in the step of determining the observation point candidate, according to the following <Equation 3> An insertion node determination method for self-testing of a scan chain, characterized in that a node providing the closest value to the calculated controllability is determined as the observation point candidate.

Figure pat00014
Figure pat00014

Figure pat00015
(for CP-0)
Figure pat00015
(for CP-0)

수학식 3에서, 상기 Ctrlreq는 해당 제어 포인트(CP)의 노드와 관련된 고장들을 전파시키기 위해 요구되는 제어능력 값을 나타내고, B는 상기 제어 포인트 후보 노드와 관련된 고장을 전파시키기 위해 필요한 '1'의 개수를 나타내며, b는 상기 제어 포인트 후보 노드와 관련된 고장을 전파시키기 위해 필요한 '0'의 개수를 나타내며, 상기 |FaninCone|은 해당 제어 포인트(CP)의 입력단에 연결된 로직 콘 내부에 존재하는 고장의 개수를 나타내고, 상기 CP-1은 1로 제어하기 위한 제어 포인트의 종류를 나타내며, CP-0는 0으로 제어하기 위한 제어 포인트의 종류를 나타낸다.In Equation 3, the Ctrlreq represents a control capability value required to propagate failures related to the node of the corresponding control point (CP), and B represents a value of '1' required to propagate the failures related to the control point candidate node. represents the number, b represents the number of '0's required to propagate a failure related to the control point candidate node, and the |FaninCone| number, CP-1 indicates the type of control point for controlling as 1, and CP-0 indicates the type of control point for controlling as 0.

수학식 3의 경우, 제어 포인트가 삽입되는 노드의 값이 '0'인 경우, '1'로 제어하기 위해

Figure pat00016
(for CP-1) 수학식을 통하여 제어능력값이 산출되고, 제어 포인트가 삽입되는 노드의 값이 '1'인 경우, '0'으로 제어하기 위해
Figure pat00017
(for CP-0)수학식을 통하여 제어능력값이 산출된다.In the case of Equation 3, when the value of the node into which the control point is inserted is '0', in order to control it as '1'
Figure pat00016
(for CP-1) When the control capability value is calculated through the equation and the value of the node into which the control point is inserted is '1', in order to control it to '0'
Figure pat00017
The control capability value is calculated through the (for CP-0) equation.

예를 들어, 도 11를 참고하면, 관측 포인트(OP)는 x노드(1130)에 위치하며, TP(1120)를 통해 제어능력을 y노드(1160)에 제공한다. '1' 제어가 어려운 G1(1110)에 의해 고장전파가 차단되었던 콘3(Cone3)(1180)의 고장을 활성화시키기 위해서는 x노드(1130)에 '1'이 필요하다. 또한, 콘2(Cone2)(1140)의 고장과, 기존 제어 포인트(CP)를 통과하여 전파되던 콘1(Cone1)(100)의 고장을 전파시키기 위해서는 x노드(1130)에'0'이 필요하다. 여기서 얼마나 많은'1'또는'0이 필요한지 계산하여, 제어 포인트(CP) 노드에 요구되는 제어능력(Controllability)을 계산한다.For example, referring to FIG. 11 , the observation point OP is located at the x node 1130 , and provides control capability to the y node 1160 through the TP 1120 . '1' In order to activate the failure of the cone 3 (Cone 3 ) 1180, the failure propagation was blocked by the G 1 1110, which is difficult to control, '1' is required in the x node 1130. In addition, in order to propagate the failure of the cone 2 ( 1140 ) and the failure of the cone 1 ( Cone 1 ) 100 , which was propagated through the existing control point (CP), '0' to the x node 1130 I need this. Here, by calculating how many '1's or '0s are needed, controllability required for the control point (CP) node is calculated.

OP 후보 중, 요구되는 제어능력(Controllability)과 가장 근사한 값을 가지는 OP가 최종적으로 해당 제어 포인트(CP)와 결합된다.Among the OP candidates, the OP having the closest value to the required controllability is finally combined with the corresponding control point (CP).

도 8의 알고리즘1에서 제거된 테스트 포인트와 도 9의 알고리즘2에서 쌍을 이루지 못한 테스트 포인트는 개별로 삽입된다.The test point removed in Algorithm 1 of FIG. 8 and the test point not paired in Algorithm 2 of FIG. 9 are inserted separately.

본 실시예들에 따른 동작은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능한 저장 매체에 기록될 수 있다. 컴퓨터 판독 가능한 저장 매체는 실행을 위해 프로세서에 명령어를 제공하는데 참여한 임의의 매체를 나타낸다. 컴퓨터 판독 가능한 저장 매체는 프로그램 명령, 데이터 파일, 데이터 구조 또는 이들의 조합을 포함할 수 있다. 예컨대, 자기 매체, 광기록 매체, 메모리 등이 있을 수 있다. 컴퓨터 프로그램은 네트워크로 연결된 컴퓨터 시스템 상에 분산되어 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드, 및 코드 세그먼트들은 본 실시예가 속하는 기술 분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.The operations according to the present embodiments may be implemented in the form of program instructions that can be performed through various computer means and recorded in a computer-readable storage medium. Computer-readable storage medium represents any medium that participates in providing instructions to a processor for execution. A computer-readable storage medium may include program instructions, data files, data structures, or a combination thereof. For example, there may be a magnetic medium, an optical recording medium, a memory, and the like. A computer program may be distributed over a networked computer system so that computer readable code is stored and executed in a distributed manner. Functional programs, codes, and code segments for implementing the present embodiment may be easily inferred by programmers in the technical field to which the present embodiment belongs.

본 실시예들은 본 실시예의 기술 사상을 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The present embodiments are for explaining the technical idea of the present embodiment, and the scope of the technical idea of the present embodiment is not limited by these embodiments. The protection scope of this embodiment should be interpreted by the claims below, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present embodiment.

100: PRPG(Pseudo Random Pattern Generator)
110: 스캔 체인 120: MISR
300: 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치
310: 프로세서
311: 제1 결정부 312: 제2 결정부
313: 쌍후보 생성부 314: 제3 결정부
220: PRPG(Pseudo Random Pattern Generator)
230: 이상기(Phase shifter) 240: MISR
250: BIST(Built-In Self-Test)
100: PRPG (Pseudo Random Pattern Generator)
110: scan chain 120: MISR
300: Insertion node determining device for self-test of scan chain
310: processor
311: first determining unit 312: second determining unit
313: pair candidate generating unit 314: third determining unit
220: PRPG (Pseudo Random Pattern Generator)
230: phase shifter 240: MISR
250: BIST (Built-In Self-Test)

Claims (13)

프로세서에 의해 수행되는 내장 자가 테스트 회로에서 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법에 있어서,
상기 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 제어부담지수를 산출하고, 상기 산출된 제어부담지수에 따라 적어도 하나의 제어 포인트 후보를 결정하는 단계;
상기 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 관측부담지수를 산출하고, 상기 산출된 관측부담지수에 따라 제어 포인트 후보와 다른 적어도 하나의 관측 포인트 후보를 결정하는 단계;
상기 제어 포인트 후보와 상기 관측 포인트 후보를 이용하여 적어도 하나의 제어 포인트-관측 포인트 쌍 후보를 생성하는 단계; 및
상기 제어 포인트-관측 포인트 쌍 후보가 삽입될 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하는 단계;를 포함하는 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법.
A method of determining an insertion node for self-test of a scan chain in an embedded self-test circuit performed by a processor, the method comprising:
calculating a control burden index for each node for a plurality of nodes included in the scan chain, and determining at least one control point candidate according to the calculated control burden index;
calculating an observation burden index for each node for a plurality of nodes included in the scan chain, and determining at least one observation point candidate different from a control point candidate according to the calculated observation burden index;
generating at least one control point-observation point pair candidate using the control point candidate and the observation point candidate; and
and determining an insertion node for self-test of a scan chain into which the control point-observation point pair candidate is to be inserted.
제1항에 있어서,
상기 제어 포인트-관측 포인트 쌍 후보는,
상호보완성이 있는 제어 포인트 후보와 관측 포인트 후보로 이루어지는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법.
According to claim 1,
The control point-observation point pair candidate is,
Characterized in that it consists of a control point candidate and an observation point candidate with complementarity,
How to determine the insertion node for self-testing of the scan chain.
제1항에 있어서,
상기 관측 포인트 후보를 결정하는 단계는,
상기 제어 포인트 후보와 상기 제어 포인트 후보와 다른 노드로부터 연결된 팬-아웃 프리(Fan-out Free) 게이트 입력단에 위치하며, 동시에 상기 제어 포인트 후보와 다른 노드가 고장이 전파되는 경로를 차단하는 경우, 상기 제어 포인트 후보와 다른 노드를 관측 포인트 후보에서 제외하는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법.
According to claim 1,
The step of determining the observation point candidate comprises:
When the control point candidate and the control point candidate are located at the input terminal of a fan-out free gate connected from a node different from the control point candidate, and at the same time, a node other than the control point candidate blocks a path through which a failure is propagated. Characterized in excluding nodes other than control point candidates from observation point candidates,
How to determine the insertion node for self-testing of the scan chain.
제1항에 있어서,
상기 제어부담지수는,
아래의 <수학식>에 기반하여 산출하며,
<수학식>
Figure pat00018
(for CP-1)
Figure pat00019
(for CP-0)
CPBurden은 제어부담지수를 나타내며, |BlockedFaults|는 해당 제어 포인트(CP)가 삽입되는 노드의 값이 '0' 또는 '1'일 때, 전파(propagation)가 차단되는 고장의 개수를 나타내며, 상기 Ctrl은 해당 노드에 '1'이 나올 확률을 나타내고,
상기 관측부담지수는,
아래의 <수학식>에 따라 산출되고,
<수학식>
Figure pat00020

OPBurden은 관측부담지수를 나타내며, |FaninCone|은 해당 관측 포인트(OP)가 삽입되는 게이트의 입력단에 연결되는 로직 콘(Cone) 내부에 존재하는 고장의 개수를 나타내며, Obs는 해당 노드의 고장이 회로의 출력까지 전파되어 사용자가 관측할 수 있는 확률을 의미하는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법.
According to claim 1,
The control burden index is,
It is calculated based on the <Equation> below,
<Equation>
Figure pat00018
(for CP-1)
Figure pat00019
(for CP-0)
CP Burden represents the control burden index, and |BlockedFaults| represents the number of failures in which propagation is blocked when the value of the node into which the corresponding control point (CP) is inserted is '0' or '1'. Ctrl indicates the probability of '1' appearing at the node,
The observation burden index is,
It is calculated according to the <Equation> below,
<Equation>
Figure pat00020

OP Burden represents the observation burden index, |FaninCone| represents the number of failures that exist inside the logic cone connected to the input terminal of the gate into which the corresponding observation point (OP) is inserted, and Obs represents the number of failures of the corresponding node. Characterized in that it propagates to the output of the circuit and means the probability that the user can observe it,
How to determine the insertion node for self-testing of the scan chain.
제1항에 있어서,
상기 제어 포인트 후보를 결정하는 단계는,
상기 제어부담지수가 미리 결정된 제1 임계 범위에 속하는 적어도 하나의 노드를 제어 포인트 후보로 결정하고,
상기 관측 포인트 후보를 결정하는 단계는,
상기 관측부담지수가 미리 결정된 제2 임계 범위에 속하는 적어도 하나의 노드를 관측 포인트 후보로 결정하는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법.
According to claim 1,
The step of determining the control point candidate comprises:
Determining at least one node belonging to the first threshold range in which the control burden index is predetermined as a control point candidate,
The step of determining the observation point candidate comprises:
Characterized in that the observation burden index determines at least one node belonging to a predetermined second threshold range as an observation point candidate,
How to determine the insertion node for self-testing of the scan chain.
제1항에 있어서,
상기 제어 포인트-관측 포인트 쌍 후보는,
상기 제어 포인트 후보와 상기 관측 포인트 후보를 포함하며,
상기 제어 포인트 후보와 상기 관측 포인트 후보 사이에는 2개의 게이트가 연결되는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법.
According to claim 1,
The control point-observation point pair candidate is,
including the control point candidate and the observation point candidate,
Two gates are connected between the control point candidate and the observation point candidate,
How to determine the insertion node for self-testing of the scan chain.
제6항에 있어서,
상기 2개의 게이트는,
상기 제어 포인트 후보로 결정된 노드를 입력단에 연결하는 AND게이트인 제1 게이트와, 상기 제1 게이트의 출력을 입력단에 연결하는 OR게이트인 제2 게이트로 이루어지는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법.
7. The method of claim 6,
The two gates are
characterized in that it consists of a first gate that is an AND gate that connects the node determined as the control point candidate to an input terminal, and a second gate that is an OR gate that connects the output of the first gate to an input terminal,
How to determine the insertion node for self-testing of the scan chain.
제1항에 있어서,
상기 관측 포인트 후보를 결정하는 단계는,
아래의 <수학식>에 따라 산출되는 제어능력과 가장 근사한 값을 제공하는 노드를 상기 관측 포인트 후보로 결정하고,
<수학식>
Figure pat00021
(for CP-1)
Figure pat00022
(for CP-0)
Ctrlreq는 해당 제어 포인트(CP)의 노드와 관련된 고장들을 전파시키기 위해 요구되는 제어능력 값을 나타내며, B는 상기 제어 포인트 후보 노드와 관련된 고장을 전파시키기 위해 필요한 '1'의 개수를 나타내며, b는 상기 제어 포인트 후보 노드와 관련된 고장을 전파시키기 위해 필요한 '0'의 개수를 나타내며, |FaninCone|은 해당 제어 포인트(CP)의 입력단에 연결되는 로직 콘(Cone) 내부에 존재하는 고장의 개수를 나타내며, CP-1은 1로 제어하기 위한 제어 포인트의 종류를 나타내며, CP-0는 0으로 제어하기 위한 제어 포인트의 종류를 나타내는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법.
According to claim 1,
The step of determining the observation point candidate comprises:
Determining the node providing the closest value to the control capability calculated according to the following <Equation> as the observation point candidate,
<Equation>
Figure pat00021
(for CP-1)
Figure pat00022
(for CP-0)
Ctrlreq represents a control capability value required to propagate failures related to the node of the corresponding control point (CP), B represents the number of '1's required to propagate failures related to the control point candidate node, and b is Indicates the number of '0's required to propagate a failure related to the control point candidate node, and |FaninCone| indicates the number of failures existing inside a logic cone connected to the input terminal of the corresponding control point (CP). , CP-1 indicates the type of control point for controlling as 1, and CP-0 indicates the type of control point for controlling as 0,
How to determine the insertion node for self-testing of the scan chain.
제1항 내지 제8항 중 어느 한 항에 기재된 스캔 체인의 자가 테스트를 위한 삽입 노드 결정 방법을 컴퓨터에서 실행시키기 위하여 컴퓨터 판독 가능한 저장 매체에 저장된 컴퓨터 프로그램.A computer program stored in a computer-readable storage medium for executing the method of determining an insertion node for self-test of a scan chain according to any one of claims 1 to 8 in a computer. 스캔 체인의 자가 테스트를 위한 삽입 노드 결정장치로서,
스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하기 위한 하나 이상의 프로그램을 저장하는 메모리; 및
상기 메모리에 저장된 상기 하나 이상의 프로그램에 따라 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하기 위한 동작을 수행하는 하나 이상의 프로세서;
를 포함하고,
상기 프로세서는,
상기 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 제어부담지수를 고려하여, 적어도 하나의 제어 포인트 후보를 결정하는 단계;
상기 스캔 체인에 포함된, 복수개의 노드들에 대하여 각각의 노드에 대한 관측부담지수를 고려하여, 상기 제어 포인트 후보와 다른 적어도 하나의 관측 포인트 후보를 결정하는 단계;
상기 제어 포인트 후보와 상기 관측 포인트 후보를 이용하여 적어도 하나의 제어 포인트-관측 포인트 쌍 후보를 생성하는 단계; 및
상기 제어 포인트-관측 포인트 쌍 후보가 삽입될 스캔 체인의 자가 테스트를 위한 삽입 노드를 결정하는 단계;를 포함하는 동작들을 수행하게 하는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치.
An insertion node determining device for self-testing of a scan chain, comprising:
a memory storing one or more programs for determining an insertion node for self-testing of the scan chain; and
one or more processors that perform an operation for determining an insertion node for self-test of a scan chain according to the one or more programs stored in the memory;
including,
The processor is
determining at least one control point candidate in consideration of a control burden index for each node with respect to a plurality of nodes included in the scan chain;
determining at least one observation point candidate different from the control point candidate in consideration of the observation burden index for each node with respect to a plurality of nodes included in the scan chain;
generating at least one control point-observation point pair candidate using the control point candidate and the observation point candidate; and
determining an insertion node for self-test of a scan chain into which the control point-observation point pair candidate is to be inserted;
Insertion node determination device for self-testing of scan chains.
제10항에 있어서,
상기 관측 포인트 후보를 결정하는 단계는,
상기 제어 포인트 후보와 상기 제어 포인트 후보와 다른 노드로부터 연결된 팬-아웃 프리(Fan-out Free) 게이트 입력단에 위치하며, 동시에 상기 제어 포인트 후보와 다른 노드가 고장이 전파되는 경로를 차단하는 경우, 상기 제어 포인트 후보와 다른 노드를 관측 포인트 후보에서 제외하는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치.
11. The method of claim 10,
The step of determining the observation point candidate comprises:
When the control point candidate and the control point candidate are located at the input terminal of a fan-out free gate connected from a node different from the control point candidate, and at the same time, a node other than the control point candidate blocks a path through which a failure is propagated. Characterized in excluding nodes other than control point candidates from observation point candidates,
Insertion node determination device for self-testing of scan chains.
제10항에 있어서,
상기 제어 포인트-관측 포인트 쌍 후보는,
상기 제어 포인트 후보와 상기 관측 포인트 후보를 포함하며,
상기 제어 포인트 후보와 상기 관측 포인트 후보 사이에는 2개의 게이트가 연결되는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치.
11. The method of claim 10,
The control point-observation point pair candidate is,
including the control point candidate and the observation point candidate,
Two gates are connected between the control point candidate and the observation point candidate,
Insertion node determination device for self-testing of scan chains.
제10항에 있어서,
상기 제어부담지수는,
아래의 <수학식>을 기반으로 산출하며,
<수학식>
Figure pat00023
(for CP-1)
Figure pat00024
(for CP-0)
CPBurden은 제어부담지수를 나타내며, |BlockedFaults|는 해당 제어 포인트(CP)가 삽입되는 노드의 값이 '0' 또는 '1'일 때, 전파(propagation)가 차단되는 고장의 개수를 나타내며, 상기 Ctrl은 해당 노드에 '1'이 나올 확률을 나타내고,
상기 관측부담지수는,
아래의 <수학식>에 따라 산출되고,
<수학식>
Figure pat00025

OPBurden은 관측부담지수를 나타내며, |FaninCone|은 해당 관측 포인트(OP)가 삽입되는 게이트의 입력단에 연결되는 로직 콘(Cone) 내부에 존재하는 고장의 개수를 나타내며, Obs는 해당 노드의 고장이 회로의 출력까지 전파되어 사용자가 관측할 수 있는 확률을 의미하는 것을 특징으로 하는,
스캔 체인의 자가 테스트를 위한 삽입 노드 결정 장치.
11. The method of claim 10,
The control burden index is,
It is calculated based on the <Equation> below,
<Equation>
Figure pat00023
(for CP-1)
Figure pat00024
(for CP-0)
CP Burden represents the control burden index, and |BlockedFaults| represents the number of failures in which propagation is blocked when the value of the node into which the corresponding control point (CP) is inserted is '0' or '1'. Ctrl indicates the probability of '1' appearing at the node,
The observation burden index is,
It is calculated according to the <Equation> below,
<Equation>
Figure pat00025

OP Burden represents the observation burden index, |FaninCone| represents the number of failures that exist inside the logic cone connected to the input terminal of the gate into which the corresponding observation point (OP) is inserted, and Obs represents the number of failures in the corresponding node. Characterized in that it propagates to the output of the circuit and means the probability that the user can observe it,
Insertion node determination device for self-testing of scan chains.
KR1020210067002A 2021-04-16 2021-05-25 Method and apparatus for determining a self-test inserting node for a scan chain KR102513278B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20210049564 2021-04-16
KR1020210049564 2021-04-16

Publications (2)

Publication Number Publication Date
KR20220143536A true KR20220143536A (en) 2022-10-25
KR102513278B1 KR102513278B1 (en) 2023-03-23

Family

ID=83804094

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210067002A KR102513278B1 (en) 2021-04-16 2021-05-25 Method and apparatus for determining a self-test inserting node for a scan chain

Country Status (1)

Country Link
KR (1) KR102513278B1 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06331709A (en) * 1993-05-17 1994-12-02 American Teleph & Telegr Co <Att> Circuit wherein testability is improved and method for improving testability of circuit
JPH10197601A (en) * 1997-01-06 1998-07-31 Hitachi Ltd Method and system for analyzing inspection point of logical circuit and semiconductor integrated circuit with inspection point
JP2000098001A (en) * 1998-09-22 2000-04-07 Hitachi Ltd Test facilitating circuit
KR100381959B1 (en) * 2000-08-31 2003-05-01 삼성전자주식회사 Semiconductor integrated circuit being inserted test points
JP2007516423A (en) * 2003-02-14 2007-06-21 エヌイーシー ラボラトリーズ アメリカ インク Scalable scan path test point insertion technology
US7954090B1 (en) * 2004-12-21 2011-05-31 Zenprise, Inc. Systems and methods for detecting behavioral features of software application deployments for automated deployment management
JP2017198675A (en) * 2016-04-28 2017-11-02 イノチオ インクInnotio Inc. Ic chip testing device, ic chip testing method, and ic chip testing system
KR20220053870A (en) * 2020-10-23 2022-05-02 연세대학교 산학협력단 Scan cell reordering method and scan cell reordering apparatus

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06331709A (en) * 1993-05-17 1994-12-02 American Teleph & Telegr Co <Att> Circuit wherein testability is improved and method for improving testability of circuit
JPH10197601A (en) * 1997-01-06 1998-07-31 Hitachi Ltd Method and system for analyzing inspection point of logical circuit and semiconductor integrated circuit with inspection point
JP2000098001A (en) * 1998-09-22 2000-04-07 Hitachi Ltd Test facilitating circuit
KR100381959B1 (en) * 2000-08-31 2003-05-01 삼성전자주식회사 Semiconductor integrated circuit being inserted test points
JP2007516423A (en) * 2003-02-14 2007-06-21 エヌイーシー ラボラトリーズ アメリカ インク Scalable scan path test point insertion technology
US7954090B1 (en) * 2004-12-21 2011-05-31 Zenprise, Inc. Systems and methods for detecting behavioral features of software application deployments for automated deployment management
JP2017198675A (en) * 2016-04-28 2017-11-02 イノチオ インクInnotio Inc. Ic chip testing device, ic chip testing method, and ic chip testing system
KR20220053870A (en) * 2020-10-23 2022-05-02 연세대학교 산학협력단 Scan cell reordering method and scan cell reordering apparatus

Also Published As

Publication number Publication date
KR102513278B1 (en) 2023-03-23

Similar Documents

Publication Publication Date Title
Pomeranz et al. Classification of faults in synchronous sequential circuits
KR0163968B1 (en) Partial-scan built-in self testing circuit having improved testability
CN107544017B (en) Low-power-consumption weighted pseudo-random test method based on vector compression and related equipment
US11361248B2 (en) Multi-stage machine learning-based chain diagnosis
US11073556B2 (en) Low pin count reversible scan architecture
US11555854B2 (en) Deterministic stellar built-in self test
JP5066684B2 (en) Generating device, generating method, program capable of causing computer to execute generating method, and recording medium recording this program
US11293980B2 (en) Customer-transparent logic redundancy for improved yield
KR980010844A (en) Methods and systems for identifying failure points
Eggersglüb et al. Optimization-based multiple target test generation for highly compacted test sets
CN114398848A (en) Test vector generation method and device and storage medium
CN114667455A (en) Universal compressor architecture for test circuits
US9519026B2 (en) Compressed scan testing techniques
Becker et al. Recent advances in SAT-based ATPG: Non-standard fault models, multi constraints and optimization
US10963612B2 (en) Scan cell architecture for improving test coverage and reducing test application time
KR102513278B1 (en) Method and apparatus for determining a self-test inserting node for a scan chain
Konuk et al. Design for low test pattern counts
US10830815B2 (en) Signal probability-based test cube reordering and merging
US11681843B2 (en) Input data compression for machine learning-based chain diagnosis
US7546507B1 (en) Method and apparatus for debugging semiconductor devices
US10444282B2 (en) Test point insertion for low test pattern counts
Mohan et al. Compact test and diagnosis pattern generation for multiple fault pairs in single run
Agrawal et al. Redundancy identification using transitive closure
JP2013019744A (en) Fail point estimation device, method and program
Sunil et al. Aliasing-free compaction in testing cores-based system-on-chip (SOC) using compatibility of response data outputs

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant