KR102279047B1 - 필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치 - Google Patents

필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치 Download PDF

Info

Publication number
KR102279047B1
KR102279047B1 KR1020200038781A KR20200038781A KR102279047B1 KR 102279047 B1 KR102279047 B1 KR 102279047B1 KR 1020200038781 A KR1020200038781 A KR 1020200038781A KR 20200038781 A KR20200038781 A KR 20200038781A KR 102279047 B1 KR102279047 B1 KR 102279047B1
Authority
KR
South Korea
Prior art keywords
failure
scan
scan chain
cell
log information
Prior art date
Application number
KR1020200038781A
Other languages
English (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 연세대학교 산학협력단
Priority to KR1020200038781A priority Critical patent/KR102279047B1/ko
Application granted granted Critical
Publication of KR102279047B1 publication Critical patent/KR102279047B1/ko

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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318544Scanning methods, algorithms and patterns
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318536Scan chain arrangements, e.g. connections, test bus, analog signals
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318541Scan latches or cell details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치를 개시한다.
본 발명의 실시예에 따른 스캔 체인 고장 진단 방법은, 칩과 연결된 스캔 체인으로부터 고장 스캔 셀에 대한 실패 로그정보를 획득하는 정보 획득단계; 적어도 하나의 필터를 이용하여 상기 실패 로그정보를 적어도 하나의 고장 특징벡터로 변환하는 벡터 처리단계; 및 상기 적어도 하나의 고장 특징벡터를 기반으로 상기 스캔 체인에서 고장 스캔 셀의 위치를 추정하는 진단 단계를 포함할 수 있다.

Description

필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치{Method and Apparatus for Scan Chain Diagnosis Using Filter}
본 발명은 적어도 하나의 필터를 이용하여 스캔 체인의 고장을 진단하는 방법 및 그를 위한 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 발명의 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
칩의 집적도 및 복잡도의 증가에 따라 지속적으로 테스트의 복잡도가 비례하여 증가하고 있다. 이에 대한 대안으로 스캔 테스트 기법이 널리 사용되는데, 스캔 체인에서 고장이 발생하게 되는 경우 플러시 테스트(flush test)만으로는 고장이 발생한 체인의 위치는 알아낼 수 있으나 고장이 발생한 스캔 셀의 위치를 확인할 방법이 없다. 따라서, 다양한 스캔 체인 진단 방법이 제시되고 있다.
스캔 체인 진단 방법은 크게 세 가지 방향으로 나뉜다. 첫 번째로는 ATE(Automatic Test Equipment)와 직접 진단 장치를 이용하여 고장이 발생한 위치를 PFA(Physical Failure Analysis)를 이용하여 진단하는 방법이다. 이는 특별한 테스터(tester)를 사용하는 방식으로 테스트 비용이 매우 비싸고, 시간이 많이 소비되거나 샘플에 손상이 발생할 수 있는 방식이다. 두 번째 방식은 하드웨어를 변경하여 스캔 체인 진단을 하는 방식이다. 스캔 셀의 구조를 좀 더 진단에 편하게 변경하거나 스캔 체인의 중간 부분에 추가적인 하드웨어 구조를 입력하여 스캔 체인 진단을 효율적으로 할 수 있게 한다. 하지만 이 방법은 하드웨어 오버헤드가 크게 발생하여 칩의 사이즈를 키우거나 혹은 루트(route)에 지연(delay)을 발생시켜 칩의 성능을 낮출 수 있다는 문제점이 있다. 마지막으로 소프트웨어를 이용하는 방식이 있다. 이 방식은 스캔 체인 진단을 위한 추가적인 패턴을 생성하거나 로직을 테스트하기 위한 패턴을 회로에 입력한 이후 실패 로그(fail log)를 확인하여 고장 패턴과 동일한 패턴을 출력할 수 있는 입력 패턴을 고장 시뮬레이션을 통하여 유추하거나 실패 로그(fail log)를 이용하여 고장이 발생한 범위를 한정 짓는 방식으로 진행된다. 하지만 이 방식은 하드웨어 오버헤드가 없고, 진단에 시뮬레이션만 필요하다는 장점이 있지만, 고장 시뮬레이션에 시간이 많이 소모된다는 점과 해상도와 정확도가 낮다는 단점이 있다.
따라서 공정에서의 수율을 높이기 위하여 스캔 체인 고장에서의 진단의 정확도와 해상도를 높이기 위한 방법이 필요하다.
본 발명은 스캔 체인에 고장이 발생한 경우, 테스트 패턴의 입력을 통해 생성된 실패 로그정보를 적어도 하나의 필터에 적용하여 벡터화하고, 벡터화된 고장 특징벡터를 기 학습된 신경망 모델에 적용하여 스캔 체인에서 고장 스캔 셀의 위치를 추정하는 필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치를 제공하는 데 주된 목적이 있다.
본 발명의 일 측면에 의하면, 상기 목적을 달성하기 위한 스캔 체인 고장 진단 방법은, 칩과 연결된 스캔 체인으로부터 고장 스캔 셀에 대한 실패 로그정보를 획득하는 정보 획득단계; 적어도 하나의 필터를 이용하여 상기 실패 로그정보를 적어도 하나의 고장 특징벡터로 변환하는 벡터 처리단계; 및 상기 적어도 하나의 고장 특징벡터를 기반으로 상기 스캔 체인에서 고장 스캔 셀의 위치를 추정하는 진단 단계를 포함할 수 있다.
또한, 본 발명의 다른 측면에 의하면, 상기 목적을 달성하기 위한 스캔 체인 고장 진단 장치는, 적어도 하나 이상의 프로세서; 및 상기 프로세서에 의해 실행되는 하나 이상의 프로그램을 저장하는 메모리를 포함하며, 상기 프로그램들은 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서들에서, 칩과 연결된 스캔 체인으로부터 고장 스캔 셀에 대한 실패 로그정보를 획득하는 정보 획득단계; 적어도 하나의 필터를 이용하여 상기 실패 로그정보를 적어도 하나의 고장 특징벡터로 변환하는 벡터 처리단계; 및 상기 적어도 하나의 고장 특징벡터를 기반으로 상기 스캔 체인에서 고장 스캔 셀의 위치를 추정하는 진단 단계를 포함하는 동작들을 수행할 수 있다.
이상에서 설명한 바와 같이, 본 발명은 스캔 체인의 고장 발생 시 고장이 발생한 스캔 셀의 위치를 추정할 수 있는 효과가 있다.
또한, 본 발명은 기존의 진단 방식에 ANN을 추가하여 좀 더 높은 정확도와 해상도를 얻을 수 있는 효과가 있다.
또한, 본 발명은 ANN의 학습을 진행할 때 실패 로그정보(fail log) 대신에 고장의 특징을 부각하기 위한 필터를 사용하여 벡터화를 수행하여 학습 및 진단을 수행함으로써, 기존 방식 대비하여 학습의 시간을 줄일 뿐만 아니라 고장 진단의 정확도를 향상시킬 수 있는 효과가 있다.
도 1은 본 발명의 실시예에 따른 스캔 체인의 고장을 진단하는 동작을 설명하기 위한 예시도이다.
도 2는 본 발명의 실시예에 따른 스캔 체인 고장 진단장치를 개략적으로 나타낸 블록 구성도이다.
도 3은 본 발명의 실시예에 따른 학습 처리를 수행하는 스캔 체인 고장 진단장치를 개략적으로 나타낸 블록 구성도이다.
도 4는 본 발명의 실시예에 따른 학습 처리를 수행하는 스캔 체인 고장 진단방법을 설명하기 위한 순서도이다.
도 5는 본 발명의 실시예에 따른 진단 처리를 수행하는 스캔 체인 고장 진단장치를 개략적으로 나타낸 블록 구성도이다.
도 6은 본 발명의 실시예에 따른 진단 처리를 수행하는 스캔 체인 고장 진단방법을 설명하기 위한 순서도이다.
도 7은 본 발명의 실시예에 따른 학습 또는 테스트를 위한 실패 로그정보를 생성하는 동작을 설명하기 위한 예시도이다.
도 8a 및 도 8b는 본 발명의 실시예에 따른 제1 필터 및 제2 필터의 동작을 설명하기 위한 예시도이다.
도 9는 본 발명의 실시예에 따른 스캔 체인 고장 진단 동작을 설명하기 위한 예시도이다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다. 이하에서는 도면들을 참조하여 본 발명에서 제안하는 필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치에 대해 자세하게 설명하기로 한다.
도 1은 본 발명의 실시예에 따른 스캔 체인의 고장을 진단하는 동작을 설명하기 위한 예시도이다.
본 실시예에 따른 스캔 체인 고장 진단장치(100)는 스캔 체인의 고장을 진단하는 장치로서, 스캔 체인의 고장이 발생한 경우, 스캔 체인에 테스트 패턴을 입력하여 출력된 실패 로그정보(fail log)를 다양한 필터에 입력하여 벡터화하고, 벡터화된 고장 특징벡터를 신경망 모델에 적용하여 스캔 체인에서 고장 스캔 셀의 위치를 추정한다.
스캔 체인 고장 진단장치(100)는 학습용 또는 소정의 방식으로 예측된 실패 로그정보(fail log)를 다양한 필터에 입력하여 벡터화하고, 벡터화된 고장 특징벡터로 신경망 모델을 학습시킨다. 여기서, 벡터화는 팬-아웃(Fan-out) 필터, 팬-인(Fan-in) 필터 등에 의해 처리될 수 있으며, 신경망 모델은 입력층(Input Layer), 은닉층(Hidden Layer), 출력층(Output Layer) 등으로 구성된 인공 신경망(ANN: Artificial Neural Network)일 수 있으나 반드시 이에 한정되는 것은 아니며, 고장 특징벡터를 입력으로 고장 스캔 셀의 위치를 추정할 수 있다면 다양한 형태의 신경망으로 구현될 수 있다.
본 실시예에 따른 스캔 체인 고장 진단장치(100)는 실패 로그정보를 벡터화하는 적어도 하나의 필터와 인공 신경망 모델을 적용하여 스캔 체인의 고장 위치를 추정함에 따라 스캔 체인 고장을 정확하게 진단할 수 있고, 진단 해상도를 향상시킬 수 있다.
도 2는 본 발명의 실시예에 따른 스캔 체인 고장 진단장치를 개략적으로 나타낸 블록 구성도이다.
본 실시예에 따른 스캔 체인 고장을 진단하기 위한 스캔 체인 고장 진단장치(100)는 입력부(110), 출력부(120), 프로세서(130), 메모리(140) 및 데이터베이스(150)를 포함한다. 도 2의 스캔 체인 고장 진단장치(100)는 일 실시예에 따른 것으로서, 도 2에 도시된 모든 블록이 필수 구성요소는 아니며, 다른 실시예에서 스캔 체인 고장 진단장치(100)에 포함된 일부 블록이 추가, 변경 또는 삭제될 수 있다. 한편, 스캔 체인 고장 진단장치(100)는 스캔 체인의 고장을 진단하는 컴퓨팅 장치로 구현될 수 있으며, 스캔 체인 고장 진단장치(100)에 포함된 각 구성요소들은 각각 별도의 소프트웨어 장치로 구현되거나, 소프트웨어가 결합된 별도의 하드웨어 장치로 구현될 수 있다.
스캔 체인 고장 진단장치(100)는 스캔 체인에 고장이 발생한 경우, 테스트 패턴의 입력을 통해 생성된 실패 로그정보를 적어도 하나의 필터에 적용하여 벡터화하고, 벡터화된 고장 특징벡터를 기 학습된 신경망 모델에 적용하여 스캔 체인에서 고장 스캔 셀의 위치를 추정하는 동작을 수행한다.
입력부(110)는 스캔 체인의 고장 진단 동작을 수행하기 위한 신호 또는 데이터를 입력하거나 획득하는 수단을 의미한다. 입력부(110)는 프로세서(130)와 연동하여 다양한 형태의 신호 또는 데이터를 입력하거나, 외부 장치와 연동하여 직접 데이터를 획득하여 프로세서(130)로 전달할 수도 있다. 여기서, 입력부(110)는 실패 로그정보(fail log), 신경망 모델정보, 다양한 조건정보 또는 제어신호 등을 입력하거나 입력 받기 위한 장치 또는 서버 일수 있으나 반드시 이에 한정되는 것은 아니다.
출력부(120)는 프로세서(130)와 연동하여 실패 로그정보, 스캔 체인의 고장 위치, 고장 스캔 셀 위치, 고장 진단 결과정보 등을 표시할 수 있다. 출력부(120)는 소정의 정보를 출력하기 위하여 스캔 체인 고장 진단장치(100)에 구비된 디스플레이(미도시), 스피커 등을 통해 다양한 정보를 표시하는 것이 바람직하나 반드시 이에 한정되는 것은 아니다.
프로세서(130)는 메모리(140)에 포함된 적어도 하나의 명령어 또는 프로그램을 실행시키는 기능을 수행한다.
본 실시예에 따른 프로세서(130)는 입력부(110) 또는 데이터베이스(150)로부터 획득한 데이터를 기반으로 학습용 실패 로그정보를 생성하고, 생성된 학습용 실패 로그정보를 적어도 하나의 필터에 적용하여 벡터화하고, 벡터화된 학습용 고장 특징 벡터를 이용하여 신경망 모델을 학습시키는 동작을 수행한다. 여기서, 프로세서(130)는 스캔 체인에서 고장이 발생한 스캔 셀의 위치를 추정하기 위한 신경망 모델을 구성할 수 있다.
또한, 프로세서(130)는 입력부(110) 또는 데이터베이스(150)로부터 획득한 실패 로그정보를 적어도 하나의 필터에 적용하여 벡터화하고, 벡터화된 고장 특징 벡터를 기 학습된 신경망 모델에 적용하여 스캔 체인에서 고장 스캔 셀의 위치를 추정하는 동작을 수행한다.
메모리(140)는 프로세서(130)에 의해 실행 가능한 적어도 하나의 명령어 또는 프로그램을 포함한다. 메모리(140)는 관심 영역을 추출, 클래스 결정, 질병 판단 등의 처리를 수행하기 위한 명령어 또는 프로그램을 포함할 수 있다.
데이터베이스(150)는 데이터베이스 관리 프로그램(DBMS)을 이용하여 컴퓨터 시스템의 저장공간(하드디스크 또는 메모리)에 구현된 일반적인 데이터구조를 의미하는 것으로, 데이터의 검색(추출), 삭제, 편집, 추가 등을 자유롭게 행할 수 있는 데이터 저장형태를 뜻하는 것으로, 오라클(Oracle), 인포믹스(Infomix), 사이베이스(Sybase), DB2와 같은 관계형 데이타베이스 관리 시스템(RDBMS)이나, 겜스톤(Gemston), 오리온(Orion), O2 등과 같은 객체 지향 데이타베이스 관리 시스템(OODBMS) 및 엑셀론(Excelon), 타미노(Tamino), 세카이주(Sekaiju) 등의 XML 전용 데이터베이스(XML Native Database)를 이용하여 본 발명의 일 실시예의 목적에 맞게 구현될 수 있고, 자신의 기능을 달성하기 위하여 적당한 필드(Field) 또는 엘리먼트들을 가지고 있다.
본 실시예에 따른 데이터베이스(150)는 학습용 실패 로그정보, 실패 로그정보, 조건 정보, 신경망 모델정보, 필터정보, 고장 진단 결과정보 등을 저장하고, 저장된 데이터를 제공할 수 있다. 한편, 데이터베이스(140)는 스캔 체인 고장 진단장치(100) 내에 구현되는 것으로 기재하고 있으나 반드시 이에 한정되는 것은 아니며, 별도의 데이터 저장장치로 구현될 수도 있다.
도 3은 본 발명의 실시예에 따른 학습 처리를 수행하는 스캔 체인 고장 진단장치를 개략적으로 나타낸 블록 구성도이다.
본 실시예에 따른 스캔 체인 고장 진단장치(100)의 프로세서(130)는 스캔 체인의 고장을 진단하기 위한 학습 처리 동작을 수행한다. 본 실시예에 따른 프로세서(130)는 실패 로그정보 생성부(210), 벡터화 처리부(220) 및 학습 처리부(230)를 포함할 수 있다. 도 3의 프로세서(130)는 일 실시예에 따른 것으로서, 도 3에 도시된 모든 블록이 필수 구성요소는 아니며, 다른 실시예에서 프로세서(130)에 포함된 일부 블록이 추가, 변경 또는 삭제될 수 있다. 한편, 프로세서(130)에 포함된 각 구성요소들은 각각 별도의 소프트웨어 장치로 구현되거나, 소프트웨어가 결합된 별도의 하드웨어 장치로 구현될 수 있다.
실패 로그정보 생성부(210)는 스캔 체인의 고장을 진단 및 예측하기 위한 신경망 모델의 학습을 위하여 학습용 실패 로그정보를 생성한다.
본 실시예에 따른 실패 로그정보 생성부(210)는 자체적으로 학습용 실패 로그정보를 생성하는 것으로 기재하고 있으나 반드시 이에 한정되는 것은 아니며, 별도의 시뮬레이션을 이용하여 생성된 학습용 실패 로그정보를 획득할 수도 있다.
실패 로그정보 생성부(210)는 스캔 셀에 대한 고장위치, 고장 확률 및 고장 타입 등에 대한 조건 정보를 기반으로 테스트 데이터를 생성하고, 테스트 데이터를 조건 정보에 따라 조정하여 발생하는 오류를 확인하여 학습용 실패 로그정보를 생성할 수 있다. 실패 로그정보 생성부(210)에 대한 구체적인 동작은 도 7에 기재된 내용과 대응될 수 있다.
실패 로그정보를 그대로 벡터화한다면 <스캔 셀의 개수 * 패턴의 개수>에 의해 산출된 벡터의 크기가 됨에 따라 시스템의 크기가 커지게 되고, 학습 또는 진단 처리에 시간이 많이 소모되게 된다. 이에, 벡터화 처리부(220)는 최대한 고장에 따른 특징은 기록하면서 벡터의 크기는 줄일 수 있도록 실패 로그정보를 적어도 하나의 고장 특징벡터로 변환한다. 본 실시예에 따른 벡터화 처리부(220)는 각 고장별 실패 로그정보를 고장의 특징이 잘 기록되도록 압축하고 불필요한 데이터를 조정하기 위하여 복수의 필터(팬-아웃 필터, 팬-인 필터)를 이용하여 실패 로그정보를 기반으로 고장 특징벡터를 생성하기 위한 벡터화를 수행한다.
벡터화 처리부(220)는 복수의 스캔 체인 각각에 대해 별도의 고장 특징벡터를 생성하는 것이 바람직하나 반드시 이에 한정되는 것은 아니다.
본 실시예에 따른 벡터화 처리부(220)는 적어도 하나의 필터를 이용하여 실패 로그정보를 적어도 하나의 학습용 고장 특징벡터로 변환하는 동작을 수행한다. 구체적으로, 벡터화 처리부(220)는 적어도 하나의 필터를 기반으로 고장 스캔 셀과 연결된 스캔 셀을 확인하고, 스캔 셀의 오류 발생 여부에 따라 실패 로그정보를 압축하여 학습용 고장 특징벡터로 변환한다.
벡터화 처리부(220)는 제1 필터를 이용하여 벡터화를 처리하는 제1 필터부(222) 및 제2 필터를 이용하여 벡터화를 처리하는 제2 필터부(224)를 포함할 수 있다. 여기서, 제1 필터는 팬-아웃(Fan-out) 필터를 의미하고, 제2 필터는 팬-인(Fan-in) 필터를 의미한다.
제1 필터부(222)는 팬-아웃(Fan-out) 필터를 기반으로 고장 스캔 셀과 연결되어 오류가 발생된 스캔 셀을 확인하여 실패 로그정보를 제1 학습용 고장 특징벡터로 변환할 수 있다. 제1 필터부(222)는 실패 로그정보에서 고장 스캔 셀과 연결되어 오류가 발생된 스캔 셀의 개수를 카운팅하여 고장 스캔 셀이 포함된 스캔 체인에 대한 제1 학습용 고장 특징벡터를 생성한다.
제2 필터부(224)는 팬-인(Fan-in) 필터를 기반으로 고장 스캔 셀의 주변 스캔 체인 라인에서 오류가 발생된 스캔 셀을 확인하여 실패 로그정보를 제2 학습용 고장 특징벡터로 변환할 수 있다. 제2 필터부(224)는 실패 로그정보에서 주변 스캔 체인 라인에서 오류가 발생된 스캔 셀과 연결된 스캔 셀의 초기 벡터에 가중치를 부여하여 고장 스캔 셀이 포함된 스캔 체인 라인에 대한 제2 학습용 고장 특징벡터를 생성한다.
학습 처리부(230)는 벡터화 처리부(220)에서 생성된 고장 특징벡터를 신경망 모델에 적용하여 학습을 수행한다. 여기서, 신경망 모델의 학습을 위한 인풋은 복수의 필터(팬-아웃 필터, 팬-인 필터)를 통과한 적어도 하나의 고장 특징벡터이며, 출력 결과는 고장이 발생한 스캔 체인에서의 고장 스캔 셀의 위치를 추정하는 것을 의미한다. 여기서, 신경망 모델은 입력층(Input Layer), 은닉층(Hidden Layer), 출력층(Output Layer) 등으로 구성된 지도 학습(Supervised Learning) 기반의 인공 신경망(ANN: Artificial Neural Network)일 수 있으나 반드시 이에 한정되는 것은 아니며, 고장 특징벡터를 입력으로 고장 스캔 셀의 위치를 추정할 수 있다면 다양한 형태의 신경망으로 구현될 수 있다.
한편, 학습 처리부(230)는 스캔 체인 별로 생성된 고장 특징벡터를 이용하며, 스캔 체인마다 별도로 신경망 모델을 학습시킬 수 있다. 이러한, 스캔 체인별 신경망 모델은 스캔 체인 고장 진단시 스캔 체인 고장 진단부(330)에 적용될 수 있다.
도 4는 본 발명의 실시예에 따른 학습 처리를 수행하는 스캔 체인 고장 진단방법을 설명하기 위한 순서도이다.
스캔 체인 고장 진단장치(100)는 스캔 체인의 고장을 진단 및 예측하기 위한 신경망 모델의 학습을 위하여 실패 로그정보를 생성한다(S410). 여기서, 실패 로그정보는 학습용 실패 로그정보를 의미한다.
스캔 체인 고장 진단장치(100)는 스캔 셀에 대한 고장위치, 고장 확률 및 고장 타입 등에 대한 조건 정보를 기반으로 테스트 데이터를 생성하고, 테스트 데이터를 조건 정보에 따라 조정하여 발생하는 오류를 확인하여 학습용 실패 로그정보를 생성할 수 있다.
스캔 체인 고장 진단장치(100)는 적어도 하나의 필터를 이용하여 실패 로그정보를 적어도 하나의 학습용 고장 특징벡터로 변환한다.
스캔 체인 고장 진단장치(100)는 제1 필터 기반으로 실패 로그정보를 제1 학습용 고장 특징벡터(제1 학습 벡터)로 변환한다(S420). 여기서, 제1 필터는 팬-아웃(Fan-out) 필터를 의미한다. 스캔 체인 고장 진단장치(100)는 팬-아웃(Fan-out) 필터를 기반으로 고장 스캔 셀과 연결되어 오류가 발생된 스캔 셀을 확인하여 실패 로그정보를 제1 학습용 고장 특징벡터로 변환할 수 있다.
스캔 체인 고장 진단장치(100)는 제2 필터 기반으로 실패 로그정보를 제2 학습용 고장 특징벡터(제2 학습 벡터)로 변환한다(S430). 여기서, 제2 필터는 팬-인(Fan-in) 필터를 의미한다. 스캔 체인 고장 진단장치(100)는 팬-인(Fan-in) 필터를 기반으로 고장 스캔 셀의 주변 스캔 체인 라인에서 오류가 발생된 스캔 셀을 확인하여 실패 로그정보를 제2 학습용 고장 특징벡터로 변환할 수 있다.
스캔 체인 고장 진단장치(100)는 제1 학습용 고장 특징벡터 및 제2 학습용 고장 특징벡터를 신경망 모델에 입력하여 고장 스캔 셀의 위치에 대한 학습을 수행한다(S440). 여기서, 신경망 모델은 입력층(Input Layer), 은닉층(Hidden Layer), 출력층(Output Layer) 등으로 구성된 지도 학습(Supervised Learning) 기반의 인공 신경망(ANN: Artificial Neural Network)일 수 있으나 반드시 이에 한정되는 것은 아니며, 고장 특징벡터를 입력으로 고장 스캔 셀의 위치를 추정할 수 있다면 다양한 형태의 신경망으로 구현될 수 있다.
도 4에서는 각 단계를 순차적으로 실행하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니다. 다시 말해, 도 4에 기재된 단계를 변경하여 실행하거나 하나 이상의 단계를 병렬적으로 실행하는 것으로 적용 가능할 것이므로, 도 4는 시계열적인 순서로 한정되는 것은 아니다.
도 4에 기재된 본 실시예에 따른 스캔 체인 고장 진단방법은 애플리케이션(또는 프로그램)으로 구현되고 단말장치(또는 컴퓨터)로 읽을 수 있는 기록매체에 기록될 수 있다. 본 실시예에 따른 스캔 체인 고장 진단방법을 구현하기 위한 애플리케이션(또는 프로그램)이 기록되고 단말장치(또는 컴퓨터)가 읽을 수 있는 기록매체는 컴퓨팅 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치 또는 매체를 포함한다.
도 5는 본 발명의 실시예에 따른 진단 처리를 수행하는 스캔 체인 고장 진단장치를 개략적으로 나타낸 블록 구성도이다.
본 실시예에 따른 스캔 체인 고장 진단장치(100)의 프로세서(130)는 스캔 체인의 고장을 진단하기 위한 진단 처리 동작을 수행한다. 본 실시예에 따른 프로세서(130)는 실패 로그정보 획득부(310), 벡터화 처리부(320), 스캔 체인 고장 진단부(330) 및 고장진단 결과 출력부(340)를 포함할 수 있다. 도 5의 프로세서(130)는 일 실시예에 따른 것으로서, 도 5에 도시된 모든 블록이 필수 구성요소는 아니며, 다른 실시예에서 프로세서(130)에 포함된 일부 블록이 추가, 변경 또는 삭제될 수 있다. 한편, 프로세서(130)에 포함된 각 구성요소들은 각각 별도의 소프트웨어 장치로 구현되거나, 소프트웨어가 결합된 별도의 하드웨어 장치로 구현될 수 있다.
실패 로그정보 획득부(310)는 칩(예: SoC(System on chip))과 연결된 스캔 체인으로부터 고장 스캔 셀에 대한 실패 로그정보(Fail Log)를 획득한다. 스캔 체인에 테스트 패턴 또는 테스트 벡터를 입력하여 생성된 실패 로그정보(Fail Log)를 획득한다. 스캔 체인에서 실패 로그정보를 생성하는 동작을 스캔 체인에 대한 일반적인 기술임으로 이에 대한 자세한 설명은 생략하도록 한다.
벡터화 처리부(320)는 적어도 하나의 필터를 이용하여 실패 로그정보를 적어도 하나의 고장 특징벡터로 변환하는 동작을 수행한다. 구체적으로, 벡터화 처리부(320)는 적어도 하나의 필터를 기반으로 고장 스캔 셀과 연결된 스캔 셀을 확인하고, 스캔 셀의 오류 발생 여부에 따라 실패 로그정보를 압축하여 고장 특징벡터로 변환한다.
벡터화 처리부(320)는 제1 필터를 이용하여 벡터화를 처리하는 제1 필터부(322) 및 제2 필터를 이용하여 벡터화를 처리하는 제2 필터부(324)를 포함할 수 있다. 여기서, 제1 필터는 팬-아웃(Fan-out) 필터를 의미하고, 제2 필터는 팬-인(Fan-in) 필터를 의미한다.
제1 필터부(322)는 팬-아웃(Fan-out) 필터를 기반으로 고장 스캔 셀과 연결되어 오류가 발생된 스캔 셀을 확인하여 실패 로그정보를 제1 고장 특징벡터로 변환할 수 있다. 제1 필터부(322)는 실패 로그정보에서 고장 스캔 셀과 연결되어 오류가 발생된 스캔 셀의 개수를 카운팅하여 고장 스캔 셀이 포함된 스캔 체인에 대한 제1 고장 특징벡터를 생성한다. 제1 필터부(322)는 생성된 제1 고장 특징벡터를 스캔 체인 고장 진단부(330)로 전달한다. 제1 필터부(322)에 대한 구체적인 동작은 도 8a에 기재된 내용과 대응될 수 있다.
제2 필터부(324)는 팬-인(Fan-in) 필터를 기반으로 고장 스캔 셀의 주변 스캔 체인 라인에서 오류가 발생된 스캔 셀을 확인하여 실패 로그정보를 제2 고장 특징벡터로 변환할 수 있다. 제2 필터부(324)는 실패 로그정보에서 주변 스캔 체인 라인에서 오류가 발생된 스캔 셀과 연결된 스캔 셀의 초기 벡터에 가중치를 부여하여 고장 스캔 셀이 포함된 스캔 체인 라인에 대한 제2 고장 특징벡터를 생성한다. 제2 필터부(324)는 생성된 제2고장 특징벡터를 스캔 체인 고장 진단부(330)로 전달한다. 제2 필터부(324)에 대한 구체적인 동작은 도 8b에 기재된 내용과 대응될 수 있다.
한편, 벡터화 처리부(320)는 제1 고장 특징벡터 및 제2 고장 특징벡터를 결합한 결합 특징벡터를 추가로 산출하고, 산출된 결합 특징벡터를 스캔 체인 고장 진단부(330)로 전달한다.
스캔 체인 고장 진단부(330)는 적어도 하나의 고장 특징벡터를 기반으로 스캔 체인에서 고장 스캔 셀의 위치를 추정하여 스캔 체인의 고장을 진단하는 동작을 수행한다.
스캔 체인 고장 진단부(330)는 적어도 하나의 고장 특징벡터를 입력으로 하는 기 학습된 인공 신경망(ANN: Artificial Neural Network) 모델을 이용하여 상기 스캔 체인에서 고장 스캔 셀의 위치를 추정한다.
스캔 체인 고장 진단부(330)는 학습 처리부(230)에 의해 학습된 신경망 모델을 통해 고장 스캔 셀의 위치를 추정할 수 있다. 여기서, 신경망 모델은 입력층(Input Layer), 은닉층(Hidden Layer), 출력층(Output Layer) 등으로 구성된 지도 학습(Supervised Learning) 기반의 인공 신경망(ANN: Artificial Neural Network)일 수 있으나 반드시 이에 한정되는 것은 아니며, 고장 특징벡터를 입력으로 고장 스캔 셀의 위치를 추정할 수 있다면 다양한 형태의 신경망으로 구현될 수 있다.
스캔 체인 고장 진단부(330)는 팬-아웃 필터에 의해 생성된 제1 고장 특징벡터 및 팬-인 필터에 의해 생성된 제2 고장 특징벡터를 입력으로 복수의 스캔 체인에 포함된 고장 스캔 셀의 위치를 추정할 수 있다.
한편, 스캔 체인 고장 진단부(330)는 제1 고장 특징벡터 및 제2 고장 특징벡터만을 이용하여 고장 스캔 셀의 위치를 추정할 수 있으나 반드시 이에 한정되는 것은 아니며, 결합 특징벡터는 추가로 이용하여 고장 스캔 셀의 위치를 추정할 수도 있다.
체인 고장 진단부(330)는 복수의 고장 스캔 셀이 존재하는 경우, 해당 고장 스캔 셀 각각의 상태를 판단하고 판단 결과에 따라 고장 스캔 셀마다 고장 상태에 대한 고장 레벨을 부여할 수 있다.
고장진단 결과 출력부(340)는 스캔 체인 고장 진단부(330)에서 추정된 고장 스캔 셀의 위치를 포함하는 고장진단 결과를 출력하는 동작을 수행한다. 고장진단 결과 출력부(340)는 다양한 방식(음성, 텍스트, 이미지 등)을 통해 고장진단 결과를 출력할 수 있다.
고장진단 결과 출력부(340)는 고장 스캔 셀 각각에 대한 고장 레벨을 추가로 포함하는 고장진단 결과를 출력할 수 있다. 고장진단 결과 출력부(340)는 고장 레벨이 높은 고장 스캔 셀에 대해 우선적으로 수리(교체)가 이루어질 수 있도록 알림 정보를 추가하여 고장진단 결과를 출력할 수 있다.
도 6은 본 발명의 실시예에 따른 진단 처리를 수행하는 스캔 체인 고장 진단방법을 설명하기 위한 순서도이다.
스캔 체인 고장 진단장치(100)는 칩(예: SoC(System on chip))과 연결된 스캔 체인으로부터 고장 스캔 셀에 대한 실패 로그정보(Fail Log)를 획득한다(S610).
스캔 체인 고장 진단장치(100)는 적어도 하나의 필터를 이용하여 실패 로그정보를 적어도 하나의 고장 특징벡터로 변환한다.
스캔 체인 고장 진단장치(100)는 제1 필터 기반으로 실패 로그정보를 제1 고장 특징벡터(제1 학습 벡터)로 변환한다(S620). 여기서, 제1 필터는 팬-아웃(Fan-out) 필터를 의미한다. 스캔 체인 고장 진단장치(100)는 팬-아웃(Fan-out) 필터를 기반으로 고장 스캔 셀과 연결되어 오류가 발생된 스캔 셀을 확인하여 실패 로그정보를 제1 고장 특징벡터로 변환할 수 있다.
스캔 체인 고장 진단장치(100)는 제2 필터 기반으로 실패 로그정보를 제2 고장 특징벡터(제2 학습 벡터)로 변환한다(S630). 여기서, 제2 필터는 팬-인(Fan-in) 필터를 의미한다. 스캔 체인 고장 진단장치(100)는 팬-인(Fan-in) 필터를 기반으로 고장 스캔 셀의 주변 스캔 체인 라인에서 오류가 발생된 스캔 셀을 확인하여 실패 로그정보를 제2 고장 특징벡터로 변환할 수 있다.
스캔 체인 고장 진단장치(100)는 제1 고장 특징벡터 및 제2 고장 특징벡터를 입력으로 고장 스캔 셀의 위치를 탐색하는 동작을 수행한다(S640). 구체적으로, 스캔 체인 고장 진단장치(100)는 제1 고장 특징벡터 및 제2 고장 특징벡터를 입력으로 하는 기 학습된 인공 신경망(ANN: Artificial Neural Network) 모델을 이용하여 스캔 체인에서 고장 스캔 셀의 위치를 추정한다.
스캔 체인 고장 진단장치(100)는 추정된 고장 스캔 셀의 위치를 포함하는 고장진단 결과를 출력한다(S650). 스캔 체인 고장 진단장치(100)는 다양한 방식(음성, 텍스트, 이미지 등)을 통해 고장진단 결과를 출력할 수 있다.
도 6에서는 각 단계를 순차적으로 실행하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니다. 다시 말해, 도 6에 기재된 단계를 변경하여 실행하거나 하나 이상의 단계를 병렬적으로 실행하는 것으로 적용 가능할 것이므로, 도 6은 시계열적인 순서로 한정되는 것은 아니다.
도 6에 기재된 본 실시예에 따른 스캔 체인 고장 진단방법은 애플리케이션(또는 프로그램)으로 구현되고 단말장치(또는 컴퓨터)로 읽을 수 있는 기록매체에 기록될 수 있다. 본 실시예에 따른 스캔 체인 고장 진단방법을 구현하기 위한 애플리케이션(또는 프로그램)이 기록되고 단말장치(또는 컴퓨터)가 읽을 수 있는 기록매체는 컴퓨팅 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치 또는 매체를 포함한다.
도 7은 본 발명의 실시예에 따른 학습 또는 테스트를 위한 실패 로그정보를 생성하는 동작을 설명하기 위한 예시도이다.
본 실시예에 따른 스캔 체인 고장 진단장치(100)는 스캔 체인의 고장을 진단 및 예측하기 위한 신경망 모델의 학습을 위하여 학습용 실패 로그정보를 생성한다.
본 실시예에 따른 스캔 체인 고장 진단장치(100)는 자체적으로 학습용 실패 로그정보를 생성하는 것으로 기재하고 있으나 반드시 이에 한정되는 것은 아니며, 별도의 시뮬레이션을 이용하여 생성된 학습용 실패 로그정보를 획득할 수도 있다.
학습용 실패 로그정보는 스캔 체인 고장에 의해 발생된 두 가지 종류의 오류를 고려하여 생성된다. 제1 오류는 Scan In 데이터들(SI)이 shift-in하면서 고장에 의하여 값이 변경되어 그 변경된 값에 의하여 캡쳐 이후에 Scan Out 데이터들(SO)에서 오류가 발생하는 shift-in 오류를 의미하고, 제2 오류는 캡쳐된 SO들이 shift-out하여 나오면서 고장에 의하여 값이 변경되어 발생하는 shift-out 오류를 의미한다.
도 7와 같이, 스캔 체인 고장 진단장치(100)는 스캔 셀의 고장위치, 고장 확률, 고장 타입 등에 대한 조건정보를 입력 받고(S710), 이를 기반으로 테스트 파일을 생성한다(S720, S730). 여기서, 테스트 파일은 테스트 기술언어(STIL: Standard Test Interface Language) 기반의 파일일 수 있으며, ATPG(Automatic Test Pattern Generation) 알고리즘에 의해 생성될 수 있다.
스캔 체인 고장 진단장치(100)는 조건 정보에 따라 테스트 파일을 조정하여 발생하는 오류를 확인한다(S740).
구체적으로, 스캔 체인 고장 진단장치(100)는 테스트 파일에 대해 조건 정보에 맞추어 Scan In 데이터(SI)들을 변경한 이후, ATPG(Automatic Test Pattern Generation) 알고리즘을 이용하여 위치, 확률, 타입이 정해진 고장이 발생했을 시 발생하는 제1 오류(shift-in 오류)를 확인한다. 또한, 스캔 체인 고장 진단장치(100)는 테스트 파일의 Scan Out 데이터(SO)들을 하나씩 검색하면서 확률과 고장 위치, 고장 타입에 맞추어 발생하는 제2 오류(shift-out 오류)를 확인한다.
스캔 체인 고장 진단장치(100)는 제1 오류 및 제2 오류의 확인 결과를 기반으로 각 스캔 셀의 고장에 대한 학습용 실패 로그정보를 생성한다(S750). 여기서, 학습용 실패 로그정보를 신경망 모델을 학습하기 위한 트레이닝용(training), 학습된 신경망 모델을 테스트하기 위한 테스트용(test) 등으로 분류될 수 있다.
도 8a 및 도 8b는 본 발명의 실시예에 따른 제1 필터 및 제2 필터의 동작을 설명하기 위한 예시도이다.
도 8a는 스캔 체인 고장 진단장치(100)의 제1 필터에 대한 동작을 설명하기 위한 도면으로서, 제1 필터는 팬-아웃(Fan-out) 필터일 수 있다.
팬-아웃 필터는 스캔 체인에 있는 각 스캔 셀에 고장이 발생했을 때 그 영향이 얼마나 퍼졌는지에 대한 특징으로 벡터를 압축한다. 먼저 고장이 발생한 스캔 체인의 셀들의 각 벡터를 나타내는 벡터를 생성한다. 예를 들어, 스캔 체인 내의 스캔 셀이 8 개라면 0000_0000, 12 개라면 0000_0000_0000과 같이 벡터를 생성한다. 여기서, 각 0은 각 스캔 셀에 배정된 값을 의미한다.
이후, 고장이 발생한 스캔 체인의 각 스캔 셀들이 고장 영향을 얼마나 퍼뜨리는지 확인하기 위하여 각 셀들의 팬-아웃 즉 논리 회로를 통하여 연결된 스캔 셀들을 확인하여 그 셀들에 얼마나 오류가 발생했는지 확인한다.
예를 들어, 도 8a를 참고하면, 스캔 체인1(SC1)의 11 번 스캔 셀의 팬-아웃 필터는 스캔 체인2(SC2)의 7, 8 번 셀로서 이는 스캔 체인1(SC1)의 11 번 셀과 스캔 체인2(SC2)의 7, 8 번 셀이 논리회로를 통하여 연결되어 있다는 것을 의미한다. 따라서, 스캔 체인1(SC1)의 11 번 셀의 오류가 확인된다면, 스캔 체인2(SC2)의 7, 8 번 셀에도 오류가 발생될 확률이 높게 된다. 이에, 스캔 체인2(SC2)의 7, 8 번 셀을 확인하여, 7 번 및 8 번 중 하나의 셀에만 오류가 발생했다면 1을 카운트하고, 7 번 및 8 번 모두에 오류가 발생했다면 2를 카운트하여 벡터를 생성한다. 즉, 팬-아웃 필터에 포함된 셀들에서 발생한 오류의 개수를 전부 카운트하여 그 값을 해당 셀의 고장 특징벡터를 생성한다.
도 8b는 스캔 체인 고장 진단장치(100)의 제2 필터에 대한 동작을 설명하기 위한 도면으로서, 제2 필터는 팬-인(Fan-in) 필터일 수 있다.
팬-인 벡터는 팬-아웃과는 반대로 동작한다. 팬-인 벡터는 고장이 발생한 스캔 체인이 아닌 주변의 다른 스캔 체인들에서 오류가 발생한 경우를 확인하고, 오류가 발생한 스캔 셀의 팬-인, 즉 input이 어디로부터 왔는지 확인하는 동작을 수행한다. 여기서, 팬-인 벡터는 오류가 발생한 스캔 셀의 팬-인에 해당하는 스캔 셀이 고장이 발생한 체인안에 있는 셀이라면 1을 카운트하는 방식으로 고장 특징벡터를 생성한다.
예를 들어, 도 8b를 참고하면, 스캔 체인2(SC2)의 12 번 셀에서 오류가 발생했다면, 팬-인에 해당하는 스캔 셀들을 찾고 그에 해당하는 스캔 체인1(SC1)의 9, 10, 11 번 셀 각각에 1을 카운트하여 해당 셀의 고장 특징벡터를 생성한다.
도 9는 본 발명의 실시예에 따른 스캔 체인 고장 진단 동작을 설명하기 위한 예시도이다.
스캔 체인 고장 진단장치(100)는 실패 로그정보를 제1 필터 및 제2 필터 각각을 통해 제1 고장 특징벡터 및 제2 고장 특징벡터로 변환한다. 스캔 체인 고장 진단장치(100)는 제1 고장 특징벡터 및 제2 고장 특징벡터를 입력으로 하는 신경망 모델을 통해 고장이 발생한 스캔 셀의 위치를 추정한다.
도 9에서는 스캔 체인이 3 개이고, 각 스캔 체인에 4 개의 스캔 셀들이 존재하는 회로로 가정하여 스캔 체인 고장 진단장치(100)에서 제1 고장 특징벡터 및 제2 고장 특징벡터를 생성하는 동작을 설명한다. 도 9의 (a)는 3 개의 스캔 체인(SC1, SC2, SC3) 및 각 스캔 체인 내에 포함된 4 개의 스캔 셀(c1, c2, c3, c4)을 나타내고, 도 9의 (b)는 특정 스캔 셀(스캔 체인2의 c2)에서 고장이 발생한 경우의 실패 로그정보를 나타낸다. 또한, 도 9의 (c)는 특정 스캔 체인(스캔 체인2)과 연결된 스캔 셀들 및 총 실패 횟수에 대한 정보를 나타낸다.
예를 들어, 스캔 체인 고장 진단장치(100)는 스캔 체인2 2 번 셀에 고장이 발생한 경우, 실패 로그정보는
“0001_1100_0101_0110_1110_0000_1001_1111_0110_1100_1110_0111”
로 생성될 수 있다.
스캔 체인 고장 진단장치(100)는 제1 필터인 팬-아웃 필터를 통해 스캔 체인2에 대한 제1 고장 특징벡터를 생성하는 경우, 스캔 체인2에 포함된 각 스캔 셀에 대한 팬-아웃에 해당하는 스캔 셀을 확인하고, 이에 대한 고장 개수를 카운팅하여 스캔 체인2에 대한 제1 고장 특징벡터를 생성할 수 있다.
도 9의 (c)를 참고하면, 스캔 체인 고장 진단장치(100)는 스캔 체인2의 1 번 스캔 셀(SC2C1)의 팬-아웃 스캔 셀들이 스캔 체인1의 2 번 스캔 셀(SC1C2), 스캔 체인1의 3 번 스캔 셀(SC1C3) 및 스캔 체인3의 2 번 스캔 셀(SC3C2)인 것으로 확인하고, 확인된 3 개의 셀에서 발생된 고장의 개수를 카운팅하여 총 실패 횟수 6을 산출한다.
스캔 체인2의 1 번 스캔 셀(SC2C1)과 동일한 방식으로, 스캔 체인 고장 진단장치(100)는 스캔 체인2의 2 번 스캔 셀(SC2C2)의 팬-아웃 스캔 셀들이 스캔 체인3의 1 번 스캔 셀(SC3C1) 및 스캔 체인3의 4 번 스캔 셀(SC3C4)인 것으로 확인하고, 확인된 셀의 고장 개수를 카운팅하여 총 실패 횟수 2를 산출한다. 이와 같이, 스캔 체인 고장 진단장치(100)는 스캔 체인2의 3 번 스캔 셀(SC2C3)의 총 실패 횟수 13을 산출하고, 스캔 체인2의 4 번 스캔 셀(SC2C4)의 총 실패 횟수 3을 산출할 수 있다.
이에, 스캔 체인 고장 진단장치(100)는 스캔 체인2에 대한 고장 특징벡터는 [6, 2, 13, 3]으로 생성할 수 있다.
한편, 스캔 체인 고장 진단장치(100)는 제2 필터인 팬-인 필터를 통해 스캔 체인2에 대한 제2 고장 특징벡터를 생성하는 경우, 스캔 체인2의 주변 스캔 체인인 스캔 체인1 및 스캔 체인3에 대한 오류 발생 여부를 테스트 벡터별로 확인하여 제2 고장 특징벡터를 생성할 수 있다.
예를 들어, 스캔 체인 고장 진단장치(100)는 팬-인 필터를 통해 스캔 체인2에 대한 제2 고장 특징벡터를 생성하는 경우, 고장이 발생하지 않은 주변 스캔 체인인 스캔 체인1 및 스캔 체인3에서 도 9의 (b)를 기반으로 테스트벡터 1에서 오류가 나온 경우인 스캔 체인1의 4 번 스캔 셀(SC1C4), 스캔 체인3의 2 번 스캔 셀(SC3C2) 및 스캔 체인3의 4 번 스캔 셀(SC3C4)을 확인한다.
도 9의 (c)를 참고하면, 스캔 체인1의 4 번 스캔 셀(SC1C4)은 스캔 체인2의 3 번 스캔 셀(SC2C3)의 영향을 받으므로, 스캔 체인 고장 진단장치(100)는 초기 팬-인 벡터 [0 0 0 0]에서 3번째 벡터에 1을 카운팅하여 [0 0 1 0]인 벡터를 생성한다. 이후, 스캔 체인3의 2 번 스캔 셀(SC3C2)은 스캔 체인2의 1 번 스캔 셀(SC2C1) 및 스캔 체인2의 3 번 스캔 셀(SC2C3)의 영향을 받으므로, 스캔 체인 고장 진단장치(100)는 [1 0 2 0 ]으로 벡터를 변화시킨다. 또한, 스캔 체인3의 4 번 스캔 셀(SC3C4)은 스캔 체인2의 2 번 스캔 셀(SC2C2)의 영향을 받으므로, 스캔 체인 고장 진단장치(100)는 [1 1 2 0]으로 벡터를 변화시킨다.
전술한 방식으로, 스캔 체인 고장 진단장치(100)는 모든 테스트 벡터(예: 테스트벡터 1-4)에 대하여 팬-인 벡터를 조정하여 최종적인 제2 고장 특징벡터를 생성할 수 있다.
이상의 설명은 본 발명의 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명의 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명의 실시예들은 본 발명의 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 스캔 체인 고장 진단장치
110: 입력부 120: 출력부
130: 프로세서 140: 메모리
150: 데이터 베이스
210: 실패 로그정보 생성부 220, 320: 벡터화 처리부
230: 학습 처리부
310: 실패 로그정보 획득부 330: 스캔 체인 고장 진단부
340: 고장진단 결과 출력부

Claims (14)

  1. 칩과 연결된 스캔 체인의 고장을 진단하는 방법에 있어서,
    상기 스캔 체인으로부터 고장 스캔 셀에 대한 실패 로그정보를 획득하는 정보 획득단계;
    적어도 하나의 필터를 이용하여 상기 실패 로그정보를 적어도 하나의 고장 특징벡터로 변환하는 벡터 처리단계; 및
    상기 적어도 하나의 고장 특징벡터를 기반으로 상기 스캔 체인에서 고장 스캔 셀의 위치를 추정하는 진단 단계를 포함하되,
    상기 벡터 처리단계는, 상기 적어도 하나의 필터를 기반으로 상기 고장 스캔 셀과 연결된 스캔 셀을 확인하고, 상기 스캔 셀의 오류 발생 여부에 따라 상기 실패 로그정보를 압축하여 상기 고장 특징벡터로 변환하되,
    상기 벡터 처리단계는, 팬-아웃(Fan-out) 필터를 기반으로 상기 고장 스캔 셀과 연결되어 오류가 발생된 스캔 셀을 확인하거나, 상기 고장 스캔 셀의 주변 스캔 체인 라인에서 오류가 발생된 스캔 셀을 확인하는 것을 특징으로 하는 스캔 체인 고장 진단 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 벡터 처리단계는,
    상기 실패 로그정보에서 상기 고장 스캔 셀과 연결되어 오류가 발생된 스캔 셀의 개수를 카운팅하여 상기 고장 스캔 셀이 포함된 스캔 체인 라인에 대한 상기 고장 특징벡터를 생성하는 것을 특징으로 하는 스캔 체인 고장 진단 방법.
  5. 삭제
  6. 제1항에 있어서,
    상기 벡터 처리단계는,
    상기 실패 로그정보에서 상기 주변 스캔 체인 라인에서 오류가 발생된 스캔 셀과 연결된 스캔 셀의 초기 벡터에 가중치를 부여하여 상기 고장 스캔 셀이 포함된 스캔 체인 라인에 대한 상기 고장 특징벡터를 생성하는 것을 특징으로 하는 스캔 체인 고장 진단 방법.
  7. 제1항에 있어서,
    상기 진단 단계는,
    상기 적어도 하나의 고장 특징벡터를 입력으로 하는 기 학습된 인공 신경망(ANN: Artificial Neural Network) 모델을 이용하여 상기 스캔 체인에서 고장 스캔 셀의 위치를 추정하는 것을 특징으로 하는 스캔 체인 고장 진단 방법.
  8. 제7항에 있어서,
    복수의 학습용 실패 로그정보를 생성하고, 상기 학습용 실패 로그정보를 기반으로 학습된 인공지능 신경망 모델을 생성하는 학습 처리단계를 추가로 포함하는 것을 특징으로 하는 스캔 체인 고장 진단 방법.
  9. 제8항에 있어서,
    상기 학습 처리단계는,
    스캔 셀에 대한 고장위치, 고장 확률 및 고장 타입 중 적어도 하나에 대한 조건 정보를 기반으로 테스트 데이터를 생성하고, 상기 테스트 데이터를 상기 조건 정보에 따라 조정하여 발생하는 오류를 확인하여 상기 학습용 실패 로그정보를 생성하고, 상기 학습용 실패 로그정보를 고장 특징벡터로 변환하여 고장 스캔 셀의 위치를 출력하기 위한 상기 인공지능 신경망 모델을 학습하는 것을 특징으로 하는 스캔 체인 고장 진단 방법.
  10. 칩과 연결된 스캔 체인의 고장을 진단하는 장치로서,
    적어도 하나 이상의 프로세서; 및
    상기 프로세서에 의해 실행되는 하나 이상의 프로그램을 저장하는 메모리를 포함하며, 상기 프로그램들은 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서들에서,
    상기 스캔 체인으로부터 고장 스캔 셀에 대한 실패 로그정보를 획득하는 정보 획득단계;
    적어도 하나의 필터를 이용하여 상기 실패 로그정보를 적어도 하나의 고장 특징벡터로 변환하는 벡터 처리단계; 및
    상기 적어도 하나의 고장 특징벡터를 기반으로 상기 스캔 체인에서 고장 스캔 셀의 위치를 추정하는 진단 단계를 포함하는 동작들을 수행하게 하되,
    상기 벡터 처리단계는, 상기 적어도 하나의 필터를 기반으로 상기 고장 스캔 셀과 연결된 스캔 셀을 확인하고, 상기 스캔 셀의 오류 발생 여부에 따라 상기 실패 로그정보를 압축하여 상기 고장 특징벡터로 변환하되,
    상기 벡터 처리단계는, 팬-아웃(Fan-out) 필터를 기반으로 상기 고장 스캔 셀과 연결되어 오류가 발생된 스캔 셀을 확인하거나, 상기 고장 스캔 셀의 주변 스캔 체인 라인에서 오류가 발생된 스캔 셀을 확인하는 것을 특징으로 하는 스캔 체인 고장 진단장치.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 제10항에 있어서,
    복수의 학습용 실패 로그정보를 생성하고, 상기 학습용 실패 로그정보를 기반으로 학습된 인공 신경망(ANN: Artificial Neural Network) 모델을 생성하는 학습 처리단계를 추가로 포함하되,
    상기 진단 단계는, 상기 적어도 하나의 고장 특징벡터를 입력으로 하는 상기 인공 신경망 모델을 이용하여 상기 스캔 체인에서 고장 스캔 셀의 위치를 추정하는 것을 특징으로 하는 스캔 체인 고장 진단 장치.
KR1020200038781A 2020-03-31 2020-03-31 필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치 KR102279047B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200038781A KR102279047B1 (ko) 2020-03-31 2020-03-31 필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200038781A KR102279047B1 (ko) 2020-03-31 2020-03-31 필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치

Publications (1)

Publication Number Publication Date
KR102279047B1 true KR102279047B1 (ko) 2021-07-16

Family

ID=77150688

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200038781A KR102279047B1 (ko) 2020-03-31 2020-03-31 필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치

Country Status (1)

Country Link
KR (1) KR102279047B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220053870A (ko) * 2020-10-23 2022-05-02 연세대학교 산학협력단 스캔 셀 재배치 방법 및 스캔 셀 재배치 장치
KR102670130B1 (ko) 2021-12-29 2024-05-27 연세대학교 산학협력단 스캔 체인의 다중 고장 진단장치 및 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012154947A (ja) * 2006-02-17 2012-08-16 Mentor Graphics Corp マルチステージ・テスト応答コンパクタ
JP2013036903A (ja) * 2011-08-09 2013-02-21 Renesas Electronics Corp 故障箇所推定システム、故障箇所推定方法及び故障箇所推定用プログラム
KR20160080586A (ko) * 2014-12-30 2016-07-08 삼성전자주식회사 집적 회로의 설계 방법 및 집적 회로의 설계를 위한 컴퓨팅 시스템
US20190220776A1 (en) * 2018-01-17 2019-07-18 Mentor Graphics Corporation Multi-Stage Machine Learning-Based Chain Diagnosis
KR102035421B1 (ko) * 2018-05-08 2019-10-22 한양대학교 에리카산학협력단 Ic chip의 저전력 테스트 방법 및 장치
KR20200001517A (ko) * 2018-06-27 2020-01-06 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 머신 러닝 기반 스캔 설계 구현 플랫폼

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012154947A (ja) * 2006-02-17 2012-08-16 Mentor Graphics Corp マルチステージ・テスト応答コンパクタ
JP2013036903A (ja) * 2011-08-09 2013-02-21 Renesas Electronics Corp 故障箇所推定システム、故障箇所推定方法及び故障箇所推定用プログラム
KR20160080586A (ko) * 2014-12-30 2016-07-08 삼성전자주식회사 집적 회로의 설계 방법 및 집적 회로의 설계를 위한 컴퓨팅 시스템
US20190220776A1 (en) * 2018-01-17 2019-07-18 Mentor Graphics Corporation Multi-Stage Machine Learning-Based Chain Diagnosis
KR102035421B1 (ko) * 2018-05-08 2019-10-22 한양대학교 에리카산학협력단 Ic chip의 저전력 테스트 방법 및 장치
KR20200001517A (ko) * 2018-06-27 2020-01-06 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 머신 러닝 기반 스캔 설계 구현 플랫폼

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220053870A (ko) * 2020-10-23 2022-05-02 연세대학교 산학협력단 스캔 셀 재배치 방법 및 스캔 셀 재배치 장치
KR102412816B1 (ko) 2020-10-23 2022-06-23 연세대학교 산학협력단 스캔 셀 재배치 방법 및 스캔 셀 재배치 장치
KR102670130B1 (ko) 2021-12-29 2024-05-27 연세대학교 산학협력단 스캔 체인의 다중 고장 진단장치 및 방법

Similar Documents

Publication Publication Date Title
US7844873B2 (en) Fault location estimation system, fault location estimation method, and fault location estimation program for multiple faults in logic circuit
CN110703057B (zh) 基于数据增强和神经网络的电力设备局部放电诊断方法
US11361248B2 (en) Multi-stage machine learning-based chain diagnosis
US20210064978A1 (en) Information processing device, information processing method, and storage medium
CN108874665A (zh) 一种测试结果校验方法、装置、设备和介质
KR102279047B1 (ko) 필터를 이용한 스캔 체인 고장 진단 방법 및 그를 위한 장치
CN107966648B (zh) 一种基于相关性矩阵的嵌入式故障诊断方法
KR102469871B1 (ko) 반복 사이클을 보유한 기계장비에 대한 이상 탐지 장치
Zhang et al. An automatic fault detection method of freight train images based on BD-YOLO
KR102412816B1 (ko) 스캔 셀 재배치 방법 및 스캔 셀 재배치 장치
US20120066657A1 (en) Method of designing an integrated circuit based on a combination of manufacturability, test coverage and, optionally, diagnostic coverage
CN117076935B (zh) 数字孪生辅助的机械故障数据轻量级生成方法及系统
CN114492518A (zh) 基于多尺度2d膨胀卷积网络的设备故障诊断方法及装置
CN117033981B (zh) 一种海缆故障检测方法、装置、设备和介质
US7404109B2 (en) Systems and methods for adaptively compressing test data
Bernardi et al. An effective technique for minimizing the cost of processor software-based diagnosis in SoCs
CN114897858A (zh) 一种基于深度学习的快速绝缘子缺陷检测方法及其系统
US10234502B1 (en) Circuit defect diagnosis based on sink cell fault models
US8713503B2 (en) Assisting apparatus, method, and program for checking crosstalk noise between hierarchized modules in a semiconductor circuit
CN115272229A (zh) 一种类别不平衡条件下的异常视觉图像检测方法及装置
Yin et al. Stacked sparse autoencoder based fault detection and location method for modular five-level converters
KR101419646B1 (ko) 복합 컴포넌트 테스트를 위한 예상 결과 값 자동 생성 방법 및 장치
CN110879785B (zh) 接口测试场景集的生成方法
CN112766459B (zh) 一种基于生成器的异常检测方法
Zhang et al. Fault diagnosis of on-board equipment in ctcs-3 based on cnn-lstm model

Legal Events

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