KR20230090040A - 스캔 셀의 고장 검출 방법 및 스캔 셀의 고장 검출 장치 - Google Patents

스캔 셀의 고장 검출 방법 및 스캔 셀의 고장 검출 장치 Download PDF

Info

Publication number
KR20230090040A
KR20230090040A KR1020210178936A KR20210178936A KR20230090040A KR 20230090040 A KR20230090040 A KR 20230090040A KR 1020210178936 A KR1020210178936 A KR 1020210178936A KR 20210178936 A KR20210178936 A KR 20210178936A KR 20230090040 A KR20230090040 A KR 20230090040A
Authority
KR
South Korea
Prior art keywords
failure
scan cells
neural network
scan
log
Prior art date
Application number
KR1020210178936A
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 KR1020210178936A priority Critical patent/KR20230090040A/ko
Publication of KR20230090040A publication Critical patent/KR20230090040A/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/318583Design for test
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

본 실시예는 두 신경망을 이용하여 복수의 스캔 셀들의 고장을 검출하는 고장 검출 방법으로, 상기 고장 검출 방법은: (a1) 상기 복수의 스캔 셀들에 포함된 각 스캔 셀에 고장 발생시 캡쳐된 고장 로그(fail log)로 제1 신경망을 학습시키는 단계와, (a2) 상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들에서 고장 발생시 형성된 고장 로그로 제2 신경망을 학습시키는 단계 및 (b1) 학습된 상기 제1 신경망에 고장 로그(fail log)를 입력하여 상기 미리 정해진 개수의 스캔 셀들을 포함하는 고장 후보 그룹을 출력하는 단계와, (b2) 상기 제2 신경망이 상기 고장 후보 그룹을 입력받고, 고장을 검출하는 단계를 포함하며, 상기 (a1) 단계와 상기 (a2) 단계는 상기 (b1) 단계와 상기 (b2) 단계에 앞서 수행된다.

Description

스캔 셀의 고장 검출 방법 및 스캔 셀의 고장 검출 장치{FAULT DETECTION METHOD OF SCAN CELL AND FAULT DETECTION APPARATUS OF SCAN CELL}
본 기술은 스캔 셀의 고장 검출 방법 및 스캔 셀의 고장 검출 장치와 관련된다.
반도체 회로의 집적도가 증가함에 따라 반도체 회로에 발생한 고장을 검출하는 것이 필수적으로 요청된다. 반도체 회로의 고장을 진단 방법으로는 테스트 대상 회로에 대한 정보를 토대로 신호를 역추적(back tracing)하여 기대되는 출력을 미리 연산하고, 이와 다른 출력값을 얻으면 다른 출력이 나온 지점부터 역추적하여 어디에서 고장이 발생하였는지 파악한다.
또한, 반도체 회로 내에 로직이나 포트를 추가하여 진단을 용이하게 하는 하드웨어 기반의 방식이 있을 수 있다.
그러나, 칩의 집적도가 높아짐에 따라 테스트 데이터의 양이 지속적으로 증가하였고, 증가된 테스트 데이터와 높아진 칩의 집적도는 회로의 정보를 토대로 신호를 역추적하여 분석하는 소프트웨어 기반의 고장 진단의 시간을 증가시키고 진단의 정확도를 저하시킨다.
스캔 체인 혹은 회로 내부에 로직을 추가하거나 수정하는 하드웨어 기반의 고장 진단 기법은 추가된 하드웨어의 무결성을 보장할 수 없기 때문에 고장이 빈번하게 발생하는 공정 초기에 사용하기에는 부적합하다.
본 실시예로 해결하고자 하는 과제 중 하나는 상술한 종래 기술의 난점을 해소하기 위한 것이다.
본 실시예는 두 신경망을 이용하여 복수의 스캔 셀들의 고장을 검출하는 고장 검출 방법으로, 상기 고장 검출 방법은: (a1) 상기 복수의 스캔 셀들에 포함된 각 스캔 셀에 고장 발생시 캡쳐된 고장 로그(fail log)로 제1 신경망을 학습시키는 단계와, (a2) 상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들에서 고장 발생시 형성된 고장 로그로 제2 신경망을 학습시키는 단계 및 (b1) 학습된 상기 제1 신경망에 고장 로그(fail log)를 입력하여 상기 미리 정해진 개수의 스캔 셀들을 포함하는 고장 후보 그룹을 출력하는 단계와, (b2) 상기 제2 신경망이 상기 고장 후보 그룹을 입력받고, 고장을 검출하는 단계를 포함하며, 상기 (a1) 단계와 상기 (a2) 단계는 상기 (b1) 단계와 상기 (b2) 단계에 앞서 수행된다.
본 실시예는 반도체 칩의 고장을 검사하는 고장 검출 장치로, 상기 장치는: 적어도 하나 이상의 프로세서; 및 상기 프로세서에 의해 실행되는 하나 이상의 프로그램을 저장하는 메모리를 포함하며, 상기 프로그램들은 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서들에서, 고장 검출 방법이 수행되며, 상기 방법은: (a1) 상기 복수의 스캔 셀들에 포함된 각 스캔 셀에 고장 발생시 캡쳐된 고장 로그(fail log)로 제1 신경망을 학습시키는 단계와, (a2) 상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들에서 고장 발생시 형성된 고장 로그로 제2 신경망을 학습시키는 단계 및 (b1) 학습된 상기 제1 신경망에 고장 로그(fail log)를 입력하여 상기 미리 정해진 개수의 스캔 셀들을 포함하는 고장 후보 그룹을 출력하는 단계와, (b2) 상기 제2 신경망이 상기 고장 후보 그룹을 입력받고, 고장을 검출하는 단계를 포함하며, 상기 (a1) 단계와 상기 (a2) 단계는 상기 (b1) 단계와 상기 (b2) 단계에 앞서 수행된다.
본 실시예의 어느 한 측면에 의하면, 상기 (a1) 단계는, 상기 복수의 스캔 셀들에 포함된 스캔 셀 들 중 어느 하나의 스캔 셀에서 고장 발생시 형성된 고장 로그로 제1 신경망을 학습시켜 수행한다.
본 실시예의 어느 한 측면에 의하면, 상기 (a1) 단계는, 자동 테스트 패턴 제너레이터로 상기 복수의 스캔 셀들에 테스트 패턴을 입력하는 단계와, 상기 테스트 패턴이 입력된 테스트 대상 회로로부터 상기 복수의 스캔 셀들이 출력을 제공받는 캡쳐 단계를 포함하며, 상기 캡쳐 단계에서 획득한 데이터를 상기 고장 로그로 하여 상기 제1 신경망을 학습시켜 수행한다.
본 실시예의 어느 한 측면에 의하면, 상기 (b1) 단계는, 상기 고장 후보 그룹은, 상기 고장 확률이 가장 높은 스캔셀을 포함하며, 상기 미리 정해진 개수의 스캔 셀들은 상기 고장 후보 그룹에 포함된 스캔셀의 개수에 상응한다.
본 실시예의 어느 한 측면에 의하면, 상기 (a2) 단계는, 상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들에서 고장 발생시 형성된 고장 로그로 제2 신경망을 더 학습시켜 수행한다.
본 실시예의 어느 한 측면에 의하면, 상기 테스트 대상 회로는 조합 논리 회로(combinational logic circuit)이다.
본 실시예의 어느 한 측면에 의하면, 상기 (a2) 단계는, 상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들 및 상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들에서 발생한 고장에 의해 형성된 고장 로그로 상기 제2 신경망을 학습시켜 수행한다.
본 실시예의 어느 한 측면에 의하면, 상기 (b2) 단계는,상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들 및 상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들에서 발생한 고장에 의한 고장 로그로 학습된 상기 제2 신경망을 이용하여 수행한다.
본 실시예의 어느 한 측면에 의하면, 상기 제2 신경망을 학습시키는 단계는, 상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들 및 상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들 이외의 고장에 의한 고장 로그로는 상기 제2 신경망을 학습시키지 않는다.
본 실시예의 어느 한 측면에 의하면, 상기 (b2) 단계는, 고장 확률이 가장 높은 스캔 셀을 상기 고장으로 검출한다.
본 실시예에 의하면 시뮬레이션 단계에서 신경망의 학습이 가능하므로 실제 고장 진단 시에 소요되는 시간을 효과적으로 단축시킬 수 있다. 또한, 신경망은 실제 칩이 나온 이후에 시뮬레이션 데이터가 아닌 실제 데이터를 추가적으로 학습 가능하므로 시뮬레이션과 다른 고장 데이터가 나오거나 테스트 데이터가 수정되어도 높은 정확도의 고장 진단이 가능하므로 이를 기반으로 공정을 개선함으로써 수율을 향상시킬 수 있다.
도 1은 본 실시예에 의한 고장 검출 방법의 개요를 도시한 순서도이다.
도 2는 본 실시예에 의한 고장 검출 장치(1)의 개요를 나타낸 도면이다.
도 3은 복수의 스캔 셀들에 포함된 각 스캔 셀에서 고장 발생시 캡쳐되어 형성된 고장 로그(fail log)로 제1 신경망을 학습(S100)시키는 단계를 설명하기 위한 도면이다.
도 4는 복수의 스캔 셀들에 포함되고, 미리 정해진 개수의 스캔 셀들에서 고장 발생시 형성된 고장 로그(fail log)로 제2 신경망을 학습(S200)시키는 단계를 설명하기 위한 도면이다.
도 5는 학습된 상기 제1 신경망에 고장 로그(fail log)를 입력하여 미리 정해진 개수의 스캔 셀들을 포함하는 고장 후보 그룹을 출력하는 단계를 설명하는 도면이다.
도 6은 제1 신경망이 출력한 고장 후보 그룹으로부터 고장이 발생한 스캔 셀을 검출하는 과정을 설명하기 위한 도면이다.
이하에서는 첨부된 도면들을 참조하여 본 실시예를 설명한다. 도 1은 본 실시예에 의한 고장 검출 방법의 개요를 도시한 순서도이다. 도 1을 참조하면, 본 실시예에 의한 고장 검출 방법은: 두 신경망 회로를 이용하여 복수의 스캔 셀들의 고장을 검출하는 고장 검출 방법으로, 상기 고장 검출 방법은: (a1) 상기 복수의 스캔 셀들에 포함된 각 스캔 셀에 고장 발생시 캡쳐된 패턴으로 제1 신경망을 학습시키는 단계(S100)와, (b1) 학습된 상기 제1 신경망에 고장 로그(fail log)를 입력하여 미리 정해진 개수의 스캔 셀들을 포함하는 고장 후보 그룹을 출력하는 단계(S300)와, (a2) 상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들에서 고장 발생시 캡쳐된 패턴으로 제2 신경망을 학습시키는 단계(S200) 및 (b2) 상기 제2 신경망이 상기 고장 후보 그룹을 입력받고, 고장을 검출하는 단계(S400)를 포함하며, 상기 (a1) 단계(S100)와 상기 (a2) 단계(S300)는 상기 (b1) 단계(S300)와 상기 (b2) 단계(S400)에 앞서 수행된다.
도 2는 본 실시예에 의한 고장 검출 장치(1)의 개요를 나타낸 도면이다. 도 2를 참조하면, 도 2는 본 실시예에 의한 테스트 장치(1)의 개요를 나타낸 블록도이다. 도 2를 참조하면, 도 2는 본 실시예에 의한 테스트 장치(1)의 개요를 도시한 블록도이다. 도 2를 참조하면, 본 실시예에 따른 테스트 장치(1)는 입력부(21), 출력부(22), 프로세서(25), 메모리(24) 및 데이터베이스(23)를 포함할 수 있다. 도 2의 테스트 장치(1)는 일 실시예에 따른 것으로서, 도 2에 도시된 모든 블록이 필수 구성요소는 아니며, 다른 실시예에서 테스트 장치(1)에 포함된 일부 블록이 추가, 변경 또는 삭제될 수 있다. 한편, 테스트 장치(1)는 고장 검출 방법을 수행하는 컴퓨팅 장치로 구현될 수 있으며, 테스트 장치(1)에 포함된 각 구성 요소들은 각각 별도의 소프트웨어 장치로 구현되거나, 소프트웨어가 결합된 별도의 하드웨어 장치로 구현될 수 있다.
테스트 장치(1)는 복수의 스캔 셀들에 포함된 각 스캔 셀에 고장 발생시 캡쳐된 패턴으로 제1 신경망을 학습시키는 단계(S100)와, 학습된 제1 신경망에 고장 로그(fail log)를 입력하여 미리 정해진 개수의 스캔 셀들을 포함하는 고장 후보 그룹을 출력하는 단계(S300)와, 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들에서 고장 발생시 캡쳐된 패턴으로 제2 신경망을 학습시키는 단계(S200) 및 제2 신경망이 상기 고장 후보 그룹을 입력받고, 고장을 검출하는 단계(S400)를 수행한다.
입력부(21)는 제1 신경망 및 제2 신경망을 학습시키는 캡쳐 패턴을 입력받는 수단을 의미한다. 또한, 입력부(21)는 외부 장치로부터 테스트 대상 회로의 고장 로그를 제공받을 수 있다. 또한, 입력부(21)는 프로세서(25)과 연동하여 다양한 형태의 신호 또는 데이터를 입력하거나, 외부 장치와 연동하여 직접 데이터를 획득하여 프로세서(25)로 전달할 수도 있다. 입력부(21)는 로그 정보(log), 다양한 조건정보 또는 제어신호 등을 입력하거나 입력 받기 위한 장치 또는 서버일 수 있으나 반드시 이에 한정되는 것은 아니다.
출력부(22)는 프로세서(25)과 연동하여 제1 신경망 및 제2 신경망의 학습 결과, 로그 정보, 검출된 고장 정보 등을 표시할 수 있다. 출력부(22)는 소정의 정보를 출력하기 위하여 테스트 장치(1)에 구비된 디스플레이(미도시), 스피커 등을 통해 다양한 정보를 표시하는 것이 바람직하나 반드시 이에 한정되는 것은 아니다.
프로세서(25)은 메모리(24)에 포함된 적어도 하나의 명령어 또는 프로그램을 수행한다. 본 실시예에 따른 프로세서(25)는 입력부(21) 또는 데이터베이스(23)로부터 획득한 데이터를 기반으로 각 단계를 수행하기 위한 데이터를 연산하고, 고장을 검출한다.
메모리(24)는 프로세서(25)에 의해 실행 가능한 적어도 하나의 명령어 또는 프로그램을 포함한다. 메모리(24)는 처리를 수행하기 위한 명령어 또는 프로그램을 포함할 수 있다. 메모리(24)는 각 단계에서 수행된 결과, 중간값 등의 연관된 값들을 저장할 수 있다.
데이터베이스(23)은 데이터베이스 관리 프로그램(DBMS)을 이용하여 컴퓨터 시스템의 저장공간(하드디스크 또는 메모리)에 구현된 일반적인 데이터구조를 의미하는 것으로, 데이터의 검색(추출), 삭제, 편집, 추가 등을 자유롭게 행할 수 있는 데이터 저장형태를 뜻하는 것으로, 오라클(Oracle), 인포믹스(InfoLix), 사이베이스(Sybase), DB2와 같은 관계형 데이타베이스 관리 시스템(RDBMS)이나, 겜스톤(Gemston), 오리온(Orion), O2 등과 같은 객체 지향 데이타베이스 관리 시스템(OODBMS) 및 엑셀론(Excelon), 타미노(TaLino), 세카이주(Sekaiju) 등의 XML 전용 데이터베이스(XML Native Database)를 이용하여 본 발명의 일 실시예의 목적에 맞게 구현될 수 있고, 자신의 기능을 달성하기 위하여 적당한 필드(Field) 또는 엘리먼트들을 가지고 있다.
본 실시예에 따른 데이터베이스(23)은 캡쳐된 패턴, 여러 테스트 정보, 조건 정보, 고장 진단 결과정보 등을 저장하고, 저장된 데이터를 제공할 수 있다. 한편, 데이터베이스(24)는 테스트 장치(1) 내에 구현되는 것으로 기재하고 있으나 반드시 이에 한정되는 것은 아니며, 별도의 데이터 저장장치로 구현될 수도 있다.
본 실시예의 제1 신경망 및 제2 신경망은 별도의 하드웨어로 이루어진 신경망 회로일 수 있다. 다른 예로, 제1 신경망 및 제2 신경망은 하드웨오로 이루어진 신경망 회로와 동일한 기능을 수행하는 연산 모듈로, 데이터베이스(23) 및/또는 메모리(24)에 저장되고, 프로세서(25)에 의하여 학습, 연산이 수행될 수 있다.
도 3은 복수의 스캔 셀들에 포함된 각 스캔 셀에서 고장 발생시 캡쳐되어 형성된 고장 로그(fail log)로 제1 신경망을 학습(S100)시키는 단계를 설명하기 위한 도면이다. 도 1 내지 도 3을 참조하면, 반도체 회로를 테스트하는 자동 테스트 장치(ATE, automatic test equipment)에 포함된 테스트 패턴 형성기(미도시)는 테스트 패턴(test pattern)을 형성한다. 일 실시예로, 테스트 패턴(test pattern)은 테스트 대상 로직 회로(Logic DUT)의 고장을 검출할 수 있도록 형성된 데이터로, 스캔 체인을 이루는 복수의 스캔 셀(S)들에 순차적으로 입력(shift in)되고, 스캔 체인에 의하여 테스트 대상 회로(Logic DUT)에 입력된다.
테스트 대상 회로(Logic DUT)는 입력된 테스트 패턴에 상응하는 출력을 형성하고, 테스트 대상 회로(Logic DUT)에서 형성된 출력은 스캔 셀들로 다시 입력되고(capture), 스캔 셀(S)들은 캡쳐된 패턴(capture pattern)을 순차적으로 출력하여 고장 로그(fail log)를 형성한다.
그러나, 어느 하나의 스캔 셀(Se)의 출력이 논리 하이 상태로 고착되거나, 논리 로우 상태로 고착될 수 있다. 이러한 경우에는 고장이 발생한 스캔 셀(Se)이 출력하는 데이터 뿐만 아니라 그에 앞서 위치하는 스캔 셀들(S1, S2)이 출력한 데이터는 고장이 발생한 스캔 셀(Se)이 출력한 데이터에 의하여 오염되어 테스트 대상 회로(Logic DUT) 중 어디에서 고장이 발생하였는지 알 수 없다.
본 실시예에서, 복수의 스캔 셀들에 포함된 각 스캔 셀에서 고장 발생시 형성된 고장 로그(fail log)로 제1 신경망을 학습시킨다(S100). 일 실시예로, 제1 신경망을 학습 시키는 단계는 복수의 스캔 셀들을 이루는 어느 하나의 단위 스캔 셀에서 고장이 발생한 경우에 형성된 고장 로그로 수행한다.
일 예로, n 개의 스캔 셀들이 스캔 체인을 이루는 경우에, n 개의 스캔 셀마다 고장이 발생한 경우에 형성된 고장 로그로 학습을 수행한다. 스캔 체인을 이루는 스캔 셀(S)의 고장은 스캔 체인을 이루는 스캔 셀(S) 중 어느 하나에서만 발생하는 경우가 일반적이다.
다른 예로, n 개의 스캔 셀들이 복수의 스캔 체인을 이루는 경우에, 스캔 체인 마다 선택된 스캔 셀에 발생한 경우에 형성된 고장 로그(fail log)로 학습을 수행할 수 있다. 일 실시예로, 스캔 셀(S)에 발생하는 고장은 일 예로, 출력이 논리 하이 상태로 고착되거나, 출력이 논리 로우 상태로 고착되는 경우가 대표적이다.
일 실시예로, 형성된 테스트 패턴(test pattern)을 구현된 칩에 제공하고, 칩으로부터 캡쳐된 패턴을 이용하여 제1 신경망의 학습을 수행하는 것이 바람직하다. 그러나, 칩의 구현 과정에서 장시간이 소모되고, 즉시 개발의 필요성이 있으므로, 모의 실험(simulation)을 통하여 스캔 셀의 출력이 논리 하이 상태로 고착되거나, 출력이 논리 로우 상태로 고착되는 경우에 대한 고장 로그(fail log)들을 형성하고, 이를 이용하여 제1 신경망을 학습시킨다.
도 4는 복수의 스캔 셀들에 포함되고, 미리 정해진 개수의 스캔 셀들에서 고장 발생시 형성된 고장 로그(fail log)로 제2 신경망을 학습(S200)시키는 단계를 설명하기 위한 도면이다. 도 2를 참조하면, 전체 스캔 셀 중 미리 지정된 복수개의 스캔 셀을 하나의 그룹(G)으로 형성하고, 그룹(G)에 고장이 발생한 경우에 형성되는 고장 로그(fail log)로 제2 신경망을 학습시킨다. 일 실시예로, 그룹(G)에 포함되는 스캔 셀들의 개수는 후술하는 제1 신경망이 출력하는 고장 후보 그룹에 포함된 스캔 셀들의 개수와 상응할 수 있다.
도 4로 예시된 실시예에서, 그룹(G)지워진 스캔 셀들은 스캔 체인 내에서 서로 인접한 스캔 셀들일 수 있다. 일 예로, 어느 하나의 스캔 체인이 S1, S2, S3, S4, S5, ..., Sn의 스캔 셀들을 포함하고, 그룹지워지는 스캔 셀들의 개수가 3 개이면, 고장 로그를 형성하는 스캔 셀 그룹들은 [S2, S3, S4], [S3, S4, S5]와 같이 서로 인접한 세 개의 스캔 셀들일 수 있으며, 각 그룹에 속하는 복수의 스캔 셀들이 서로 중첩될 수 있다.
도 4로 예시된 것과 같이 스캔 셀 그룹(G)에는 서로 인접한 스캔 셀들(Sa, Sb, Sc) 뿐만 아니라, 스캔 셀들(Sa, Sb, Sc)과 테스트 대상 회로(Logic DUT)을 통하여 연결된 스캔 셀(Sd)이 포함될 수 있다. 스캔 셀 그룹(G)에 위치하는 고장은 해당 그룹 뿐만 아니라 테스트 대상 회로(Logic DUT) 내의 조합 논리 회로(combinational logic circuit)를 통해 다른 스캔 체인으로 고장의 영향을 전파한다. 따라서 제2 신경망을 학습시킬 때에는 스캔 셀 그룹(G) 안의 스캔 셀과 해당 스캔 셀 그룹(G)과 연결된 다른 스캔 셀의 데이터도 고려해야 한다.
또한, 복수의 스캔 셀을 포함하는 스캔 셀 그룹(G)에 고장이 발생할 때 형성된 고장 로그(fail log)로 제2 신경망을 학습시킬 때, 스캔 셀 그룹(G) 이외에서 발생하는 고장은 스캔 셀 그룹(G)에서 발생한 고장을 학습시키는데 있어서 노이즈(noise)로 기능한다. 따라서, 스캔 셀 그룹(G) 이외에서 발생하는 고장은 스캔 셀 그룹(G)에서 발생한 고장에 대하여는 고장 로그(fail log)를 형성하지 않고, 이를 이용하여 제2 신경망을 학습시키지 않는다.
나아가, 스캔 셀 그룹(G)에서 형성된 고장 로그(fail log)로 학습을 수행하는 제2 신경망의 개수는 스캔 셀 그룹(G)의 개수에 상응할 수 있다. 즉, k 개의 스캔 셀 그룹(G)에서 얻은 k 개의 고장 로그 세트들은 각각 k 개의 제2 신경망에 제공되어 학습될 수 있다.
도 5는 학습된 상기 제1 신경망에 고장 로그(fail log)를 입력하여 미리 정해진 개수의 스캔 셀들을 포함하는 고장 후보 그룹을 출력하는 단계를 설명하는 도면이다. 도 5를 참조하면, 테스트 대상 회로(Logic DUT)에 대하여 테스트를 수행하여 얻은 고장 로그(fail log)를 학습이 완료된 제1 신경망에 입력한다.
학습된 제1 신경망은 학습된 데이터에 기초하여 고장 후보 그룹(FC1, FC2, FC3, ..., FCm)과 고장 후보 그룹별 고장 확률을 출력한다. 상술한 바와 같이 고장 후보 그룹에 속하는 스캔 셀들의 개수는 제2 신경망을 학습(S200)시키는 단계에서, 제2 신경망을 학습시키는 그룹(G)에 포함된 스캔 셀의 개수와 상응할 수 있다.
스캔 셀의 고장은 스캔 체인 내의 어느 한 스캔 셀에서 발생하는 것이 일반적이며, 제1 신경망이 출력하는 고장 후보 그룹(FC1, FC2, FC3, ..., FCm)들은 각각 고장이 발생한 가능성이 높은 어느 한 스캔 셀을 포함할 수 있다.
도 6은 제1 신경망이 출력한 고장 후보 그룹으로부터 고장이 발생한 스캔 셀을 검출하는 과정을 설명하기 위한 도면이다. 도 6을 참조하면, 제1 신경망이 출력한 고장 후보 그룹들(FC1, FC2, ..., FCm)에서 형성된 고장 로그(fail log)을 학습된 제2 신경망에 제공한다. 제2 신경망은 학습된 데이터를 이용하여 제공된 고장 후보 그룹에 의한 고장 로그를 연산하여 가장 고장의 확률이 높은 스캔 셀을 검출하여 출력한다.
상술한 바와 같이 고장 후보 그룹(FC1, FC2, ..., FCm) 별로 제2 신경망을 마련하고, 고장 후보 그룹(FC1, FC2, ..., FCm) 별로 제2 신경망이 학습될 수 있다. 따라서, 고장이 발생한 스캔 셀을 검출하는 과정은 고장 후보 그룹(FC1, FC2, ..., FCm)에서 형성된 고장 로그(fail log) 별로 학습된 복수이 제2 신경망등을 이용하여 수행될 수 있다.
본 발명에 대한 이해를 돕기 위하여 도면에 도시된 실시 예를 참고로 설명되었으나, 이는 실시를 위한 실시예로, 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.
1:고장 검출 장치
21: 입력부 22: 출력부
23: 데이터 베이스 24: 메모리
25: 프로세서

Claims (20)

  1. 두 신경망을 이용하여 복수의 스캔 셀들의 고장을 검출하는 고장 검출 방법으로, 상기 고장 검출 방법은:
    (a1) 상기 복수의 스캔 셀들에 포함된 각 스캔 셀에 고장 발생시 캡쳐된 고장 로그(fail log)로 제1 신경망을 학습시키는 단계와,
    (a2) 상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들에서 고장 발생시 형성된 고장 로그로 제2 신경망을 학습시키는 단계 및
    (b1) 학습된 상기 제1 신경망에 고장 로그(fail log)를 입력하여 상기 미리 정해진 개수의 스캔 셀들을 포함하는 고장 후보 그룹을 출력하는 단계와,
    (b2) 상기 제2 신경망이 상기 고장 후보 그룹을 입력받고, 고장을 검출하는 단계를 포함하며,
    상기 (a1) 단계와 상기 (a2) 단계는 상기 (b1) 단계와 상기 (b2) 단계에 앞서 수행되는 고장 검출 방법.
  2. 제1항에 있어서,
    상기 (a1) 단계는,
    상기 복수의 스캔 셀들에 포함된 스캔 셀 들 중 어느 하나의 스캔 셀에서 고장 발생시 형성된 고장 로그로 제1 신경망을 학습시켜 수행하는 고장 검출 방법.
  3. 제1항에 있어서,
    상기 (a1) 단계는,
    자동 테스트 패턴 제너레이터로 상기 복수의 스캔 셀들에 테스트 패턴을 입력하는 단계와,
    상기 테스트 패턴이 입력된 테스트 대상 회로로부터 상기 복수의 스캔 셀들이 출력을 제공받는 캡쳐 단계를 포함하며,
    상기 캡쳐 단계에서 획득한 데이터를 상기 고장 로그로 하여 상기 제1 신경망을 학습시켜 수행하는 고장 검출 방법.
  4. 제1항에 있어서,
    상기 (b1) 단계는,
    상기 고장 후보 그룹은,
    상기 고장 확률이 가장 높은 스캔셀을 포함하며,
    상기 미리 정해진 개수의 스캔 셀들은 상기 고장 후보 그룹에 포함된 스캔셀의 개수에 상응하는 고장 검출 방법.
  5. 제1항에 있어서,
    상기 (a2) 단계는,
    상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들에서 고장 발생시 형성된 고장 로그로 제2 신경망을 더 학습시켜 수행하는 고장 검출 방법.
  6. 제5항에 있어서,
    상기 테스트 대상 회로는 조합 논리 회로(combinational logic circuit)인 고장 검출 방법.
  7. 제5항에 있어서,
    상기 (a2) 단계는,
    상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들 및 상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들에서 발생한 고장에 의해 형성된 고장 로그로 상기 제2 신경망을 학습시켜 수행하는 고장 검출 방법.
  8. 제7항에 있어서,
    상기 (b2) 단계는,
    상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들 및 상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들에서 발생한 고장에 의한 고장 로그로 학습된 상기 제2 신경망을 이용하여 수행하는 고장 검출 방법.
  9. 제7항에 있어서,
    상기 제2 신경망을 학습시키는 단계는,
    상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들 및 상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들 이외의 고장에 의한 고장 로그로는 상기 제2 신경망을 학습시키지 않는 고장 검출 방법.
  10. 제1항에 있어서,
    상기 (b2) 단계는,
    고장 확률이 가장 높은 스캔 셀을 상기 고장으로 검출하는 고장 검출 방법.
  11. 반도체 칩의 고장을 검사하는 고장 검출 장치로, 상기 장치는:
    적어도 하나 이상의 프로세서; 및
    상기 프로세서에 의해 실행되는 하나 이상의 프로그램을 저장하는 메모리를 포함하며, 상기 프로그램들은 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서들에서,
    고장 검출 방법이 수행되며, 상기 방법은:
    (a1) 상기 복수의 스캔 셀들에 포함된 각 스캔 셀에 고장 발생시 캡쳐된 고장 로그(fail log)로 제1 신경망을 학습시키는 단계와,
    (a2) 상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들에서 고장 발생시 형성된 고장 로그로 제2 신경망을 학습시키는 단계 및
    (b1) 학습된 상기 제1 신경망에 고장 로그(fail log)를 입력하여 상기 미리 정해진 개수의 스캔 셀들을 포함하는 고장 후보 그룹을 출력하는 단계와,
    (b2) 상기 제2 신경망이 상기 고장 후보 그룹을 입력받고, 고장을 검출하는 단계를 포함하며,
    상기 (a1) 단계와 상기 (a2) 단계는 상기 (b1) 단계와 상기 (b2) 단계에 앞서 수행되는 고장 검출 장치.
  12. 제11항에 있어서,
    상기 (a1) 단계는,
    상기 복수의 스캔 셀들에 포함된 스캔 셀 들 중 어느 하나의 스캔 셀에서 고장 발생시 형성된 고장 로그로 제1 신경망을 학습시켜 수행하는 고장 검출 장치.
  13. 제11항에 있어서,
    상기 (a1) 단계는,
    자동 테스트 패턴 제너레이터로 상기 복수의 스캔 셀들에 테스트 패턴을 입력하는 단계와,
    상기 테스트 패턴이 입력된 테스트 대상 회로로부터 상기 복수의 스캔 셀들이 출력을 제공받는 캡쳐 단계를 포함하며,
    상기 캡쳐 단계에서 획득한 데이터를 상기 고장 로그로 하여 상기 제1 신경망을 학습시켜 수행하는 고장 검출 장치.
  14. 제11항에 있어서,
    상기 (b1) 단계는,
    상기 고장 후보 그룹은,
    상기 고장 확률이 가장 높은 스캔셀을 포함하며,
    상기 미리 정해진 개수의 스캔 셀들은 상기 고장 후보 그룹에 포함된 스캔셀의 개수에 상응하는 고장 검출 장치.
  15. 제11항에 있어서,
    상기 (a2) 단계는,
    상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들에서 고장 발생시 형성된 고장 로그로 제2 신경망을 더 학습시켜 수행하는 고장 검출 장치.
  16. 제15항에 있어서,
    상기 테스트 대상 회로는 조합 논리 회로(combinational logic circuit)인 고장 검출 장치.
  17. 제15항에 있어서,
    상기 (a2) 단계는,
    상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들 및 상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들에서 발생한 고장에 의해 형성된 고장 로그로 상기 제2 신경망을 학습시켜 수행하는 고장 검출 장치.
  18. 제17항에 있어서,
    상기 (b2) 단계는,
    상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들 및 상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들에서 발생한 고장에 의한 고장 로그로 학습된 상기 제2 신경망을 이용하여 수행하는 고장 검출 장치.
  19. 제17항에 있어서,
    상기 제2 신경망을 학습시키는 단계는,
    상기 복수의 스캔 셀들에 포함되고, 상기 미리 정해진 개수의 스캔 셀들 및 상기 복수의 스캔 셀들과 테스트 대상 회로를 통하여 연결된 하나 이상의 스캔 셀들 이외의 고장에 의한 고장 로그로는 상기 제2 신경망을 학습시키지 않는 고장 검출 장치.
  20. 제11항에 있어서,
    상기 (b2) 단계는,
    고장 확률이 가장 높은 스캔 셀을 상기 고장으로 검출하는 고장 검출 장치.
KR1020210178936A 2021-12-14 2021-12-14 스캔 셀의 고장 검출 방법 및 스캔 셀의 고장 검출 장치 KR20230090040A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210178936A KR20230090040A (ko) 2021-12-14 2021-12-14 스캔 셀의 고장 검출 방법 및 스캔 셀의 고장 검출 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210178936A KR20230090040A (ko) 2021-12-14 2021-12-14 스캔 셀의 고장 검출 방법 및 스캔 셀의 고장 검출 장치

Publications (1)

Publication Number Publication Date
KR20230090040A true KR20230090040A (ko) 2023-06-21

Family

ID=86989618

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210178936A KR20230090040A (ko) 2021-12-14 2021-12-14 스캔 셀의 고장 검출 방법 및 스캔 셀의 고장 검출 장치

Country Status (1)

Country Link
KR (1) KR20230090040A (ko)

Similar Documents

Publication Publication Date Title
Friedman et al. System-level fault diagnosis
US4727545A (en) Method and apparatus for isolating faults in a digital logic circuit
US20100293422A1 (en) Method And System For Scan Chain Diagnosis
US9383409B2 (en) Method of diagnosable scan chain
Lyu et al. An empirical study on testing and fault tolerance for software reliability engineering
US20190220776A1 (en) Multi-Stage Machine Learning-Based Chain Diagnosis
US10605863B2 (en) Mapping physical shift failures to scan cells for detecting physical faults in integrated circuits
US8843796B2 (en) Profiling-based scan chain diagnosis
US9411007B2 (en) System and method for statistical post-silicon validation
KR102412816B1 (ko) 스캔 셀 재배치 방법 및 스캔 셀 재배치 장치
Fey et al. A basis for formal robustness checking
JP2003084036A (ja) 診断システム及び診断方法
Huang Dynamic learning based scan chain diagnosis
KR20230090040A (ko) 스캔 셀의 고장 검출 방법 및 스캔 셀의 고장 검출 장치
KR101837899B1 (ko) 스캔 체인의 고장을 진단하는 장치 및 방법
Pomeranz et al. Location of stuck-at faults and bridging faults based on circuit partitioning
KR20230101977A (ko) 회로의 고장 진단 방법 및 장치
KR102450484B1 (ko) 테스트 포인트 삽입을 통하여 향상된 검출율을 가지는 고장 검출 방법, 고장 검출 장치 및 가중치 인가 회로
CN116106729B (zh) 基于代价损失因子的扫描链及组合逻辑故障诊断方法
KR102412817B1 (ko) X 필링 방법 및 장치
Tang et al. Diagnosis of multiple faults based on fault-tuple equivalence tree
JPS63140969A (ja) 試験容易化方式
Kustarev et al. Functional monitoring of SoC with dynamic actualization of behavioral model
JP2005043274A (ja) 故障モード特定方法及び故障診断装置
CN117472629B (zh) 一种电子信息***多故障诊断方法及***

Legal Events

Date Code Title Description
E902 Notification of reason for refusal