KR20070018880A - 데이터 분석을 위한 방법 및 장치 - Google Patents

데이터 분석을 위한 방법 및 장치 Download PDF

Info

Publication number
KR20070018880A
KR20070018880A KR1020067018204A KR20067018204A KR20070018880A KR 20070018880 A KR20070018880 A KR 20070018880A KR 1020067018204 A KR1020067018204 A KR 1020067018204A KR 20067018204 A KR20067018204 A KR 20067018204A KR 20070018880 A KR20070018880 A KR 20070018880A
Authority
KR
South Korea
Prior art keywords
data
test
analysis
tester
smoothing
Prior art date
Application number
KR1020067018204A
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 KR1020067018204A priority Critical patent/KR20070018880A/ko
Publication of KR20070018880A publication Critical patent/KR20070018880A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)

Abstract

본 발명의 다양한 양태에 따른 데이터 분석 방법 및 장치는 컴포넌트들에 대한 테스트 데이터의 특성에 의해 안내되는 컴포넌트 제조 프로세스의 특성을 자동으로 식별하도록 구성되어 있다.
데이터 분석, 컴포넌트, 진화적 알고리즘

Description

데이터 분석을 위한 방법 및 장치{METHODS AND APPARATUS FOR DATA ANALYSIS}
관련 출원들에 대한 상호-참조
본 출원은:
"데이터 평활화를 위한 방법 및 장치 (METHODS AND APPARATUS FOR DATA SMOOTHING)" 라는 명칭으로 2001년 5월 24일 출원된 미국 가특허 출원 제 60/293,577 호; "데이터 제어 및 분석을 위한 방법 및 장치 (METHODS AND APPARATUS FOR TEST DATA CONTROL AND ANALYSIS)" 라는 명칭으로 2001년 5월 31일 출원된 미국 가특허 출원 제 60/295,188 호; 및 "테스트 프로그램 분석 및 향상을 위한 방법 및 장치 (METHODS AND APPARATUS FOR TEST PROGRAM ANALYSIS AND ENHANCEMENT)" 라는 명칭으로 2002년 4월 21일 출원된 미국 가특허 출원 제 60/374,328 호의 이점을 주장하는, "데이터 평활화를 위한 방법 및 장치 (METHODS AND APPARATUS FOR DATA SMOOTHING)" 라는 명칭으로 2001년 5월 31일 출원된 미국 특허출원 제 09/872,195 호의 일부계속출원인, "반도체 테스트를 위한 방법 및 장치 (METHODS AND APPARATUS FOR SEMICONDUCTOR TESTING)" 라는 명칭으로 2002년 5월 24일 출원된 미국 특허출원 제 10/154,627 호의 일부계속출원인, "데이터 분석을 위한 방법 및 장치 (METHODS AND APPARATUS FOR DATA ANALYSIS)" 라는 명칭으로 2003년 2월 14일 출원된 미국 특허출원 제 10/367,355 호의 일부계속출원인, "데이 터 분석을 위한 방법 및 장치 (METHODS AND APPARATUS FOR DATA ANALYSIS)" 라는 명칭으로 2003년 12월 7일 출원된 미국 특허출원 제 10/730,388 호의 일부계속출원인, "테스트 데이터를 분석하기 위한 방법 및 장치 (METHODS AND APPARATUS FOR ANALYZING TEST DATA)" 라는 명칭으로 2004년 4월 2일 출원된 미국 특허출원 제 10/817,750 호의 일부계속출원이고,
"빈맵 분류를 위해 군집 지능을 사용하는 신경망 진화 (EVOLVING NEURAL NETWORKS USING SWARM INTELLIGENCE FOR BINMAP CLASSIFICATION)" 라는 발명의 명칭으로 2004년 2월 6일 출원된 미국 가특허 출원 제 60/542,459 호의 이점을 주장하고, 또한
"품질 향상 및 테스트 프로그램 최적화를 위한 동적 아웃라이어 알고리즘 선택 (DYNAMIC OUTLIER ALGORITHM SELECTION FOR QUALITY IMPROVEMENT AND TEST PROGRAM OPTIMIZATION)" 이라는 발명의 명칭으로 2004년 2월 19일 출원된 미국 가특허 출원 제 60/546,088 호의 이점을 주장하고,
각 출원의 명세서를 참조로 포함한다. 그러나, 본 명세서가 참조 출원과 대립하는 범위에서는, 본 명세서에 우선권이 주어질 것이다.
발명의 분야
본 발명은 데이터 분석에 관한 것이다.
발명의 배경
반도체 회사들은 컴포넌트들이 적절하게 동작하는 것을 보장하기 위해 컴포넌트들을 테스트한다. 테스트 데이터는 컴포넌트들이 적절하게 기능하는지를 결정할 뿐만 아니라, 제조 프로세스에서의 결핍들을 가리킬 수도 있다. 따라서, 많은 반도체 회사는 여러 가지 상이한 컴포넌트로부터 수집된 데이터를 분석하여 문제점을 인식하고 정정한다. 예를 들어, 회사는 여러 가지 상이한 로트 (lot) 중에서 각 웨이퍼 상의 다수의 칩에 대한 테스트 데이터를 수집할 수 있다. 테스트 데이터는, 파라메트릭 전기 테스팅, 광학 검사, 주사 전자 현미경, 에너지 분산 x-선 분광기, 및 결함 분석과 결함 분리를 위한 초점맞춤 이온빔 프로세스와 같은 다양한 소스로부터 유래할 수 있다. 이러한 데이터는 공통적인 결핍 혹은 결함들의 패턴을 식별하거나 또는 품질과 성능 문제를 나타낼 수 있는 부품을 식별하고 사용자 정의된 "우수 부품" 을 식별 혹은 분류하기 위해 분석될 수 있다. 그 다음으로 문제점을 정정하는 단계들이 착수될 수 있다. 테스팅은 통상적으로 조립 완료 (최종 테스트) 시 뿐만 아니라 디바이스 패키징 (웨이퍼 레벨에서) 이전에 수행된다.
테스트 데이터를 수집하고 분석하는 것은 비용이 많이 들고 시간도 소비한다. 자동 테스터는 컴포넌트들에게 신호를 보내고 대응하는 출력 신호를 판독한다. 출력 신호를 분석하여 컴포넌트가 적절하게 동작하고 있는지를 결정할 수 있다. 각 테스터는 대량의 데이터를 발생시킨다. 예를 들어, 각 테스터는 단일 컴포넌트에 대해 200 회의 테스트를 수행할 수 있고, 이들 테스트 각각은 10 회 반복될 수 있다. 결과적으로, 단일 컴포넌트에 대한 테스트는 2000 개의 결과를 산출할 수 있다. 각 테스터가 100 개 이상의 컴포넌트를 한 시간에 테스트하고 여러 테스터가 동일한 서버에 접속되어 있기 때문에, 엄청난 데이터 량이 저장되어야 한다. 또한, 데이터를 처리하기 위해, 서버는 통상적으로 데이터 베이스에 테스트 데이터를 저장하여 데이터의 취급과 분석을 용이하게 한다. 그러나, 종래의 데이터 베이스에 저장하는 것은 데이터를 조직하여 저장하는 시간을 필요로 할 뿐만 아니라 추가적인 저장 능력을 요구한다.
또한, 테스트 데이터의 획득은 복잡하고 힘든 프로세스이다. 테스트 엔지니어는 테스트 프로그램을 준비하여 테스터에게 컴포넌트에 대한 입력 신호를 발생시키고 출력 신호를 수신하도록 지시한다. 상기 프로그램은 컴포넌트의 완전하고 적절한 동작을 보장하기 위해 매우 복잡하게 된다. 결과적으로, 적절하게 복잡한 집적 회로를 위한 테스트 프로그램은 다수의 테스트와 결과를 포함한다. 프로그램의 준비에는 많은 디자인을 필요로 하고 만족스런 해결책에 도달하기 위해 많은 변형을 필요로 하고, 중복 테스트를 제거하거나 또는 테스트 시간을 최소화하는 프로그램의 최적화는 부가적인 노력을 필요로 한다.
수집된 데이터의 분석도 또한 곤란하다. 데이터량은 상당한 처리 파워와 시간을 요구할 수 있다. 그 결과, 데이터는 제품 실행 시 (product run time) 에 보통 분석되지 않지만 그 대신 통상적으로 테스트 런 (test run) 사이에서 또는 다른 배치 (other batch) 에서 분석된다. 이러한 부담을 일부 경감하기 위해, 일부 회사는 테스터로부터의 데이터만을 샘플링하고 나머지 데이터는 버린다. 그러나, 모든 데이터를 분석하지 않으면 얻어지는 분석이 완전히 완벽하고 정확할 수 없다는 것을 보장할 수 없다. 그 결과, 샘플링이 테스트 결과에 대한 완벽한 이해를 저감시킨다.
또한, 테스터에 의해 발생되는 테스트 데이터 전체 세트를 보유하는 경우에도, 테스트 데이터의 엄청난 분량 때문에 데이터를 분석하고 의미있는 결과를 추출하는데 곤란함이 있다. 상기 데이터는 생산, 신뢰도 및 테스팅을 향상시키는데 사용될 수 있는 디바이스, 테스팅 프로세스, 및 제조 프로세스에 대한 상당한 정보를 포함할 수 있다. 데이터의 분량의 관점에서, 그러나, 사용자 또는 다른 시스템에 대해 정보를 격리하여 제공하는 것이 시도되고 있다.
또한, 제조 및 테스트 프로세스에 대한 그들의 경험과 숙련에 기초하여 데이터를 재검토하고 테스트 및 제조 프로세스에 대해 추론하는 엔지니어에 의해 데이터 해석의 많은 부분이 수동으로 수행되고 있다. 비록 수동 분석이 종종 효과적이지만, 엔지니어들은 제조 및 테스트 프로세스를 상이하게 이해하고 있고, 따라서 동일한 데이터에 기초하여 상이한 주관적인 결론에 도달하는 경향이 있다. 경험있는 사람이 회사를 떠나거나 또는 경험있는 사람을 활용할 수 없는 경우에 다른 문제점이 생기는데, 그 이유는 제조 및 테스트 시스템에 대한 그들의 지식과 이해 및 테스트 데이터에 대한 해석이 용이하게 다른 사람에게 전수될 수 없기 때문이다.
도면에 대한 간단한 설명
본 발명의 보다 완전한 이해는, 축척을 하지 않아도 좋은, 다음의 예시적인 도면과 관련하여 고려할 때 상세한 설명과 특허청구범위를 참조함으로써 도출될 수 있다. 도면 전체를 통하여 동일한 참조 번호는 동일한 엘리먼트를 참조한다.
도 1 은 본 발명의 다양한 양태에 따른 테스트 시스템 및 연관된 기능적인 컴포넌트들의 블럭 다이어그램이고;
도 2 는 테스트 시스템을 동작시키기 위한 엘리먼트들의 블럭 다이어그램이고;
도 3 은 구성 엘리먼트를 위한 흐름도를 나타내고;
도 4a 내지 도 4c 는 보충 데이터 분석 엘리먼트를 위한 흐름도를 나타내고;
도 5 는 웨이퍼의 다양한 절단면 및 절단 기술들의 다이어그램이고;
도 6a 내지 도 6b 는 보충 데이터 분석 엘리먼트를 위한 흐름도를 추가로 나타내고;
도 7 은 출력 엘리먼트를 위한 흐름도를 나타내고;
도 8 은 본 발명의 다양한 양태에 따른 예시적인 데이터 평활화 시스템의 동작을 위한 흐름도이고;
도 9 는 복수의 컴포넌트의 테스트를 위한 테스트 데이터의 플롯이고;
도 10 은 복수의 디바이스를 갖는 웨이퍼 및 상기 웨이퍼를 위한 저항성 프로파일의 표현이고;
도 11 은 도 10 의 웨이퍼의 다양한 디바이스에서의 저항기의 파퓰레이션에 대한 저항값의 그래프이고;
도 12a 내지 도 12b 는, 각각, 도 10 의 다양한 디바이스에 대한 원시 테스트 데이터 및 아웃라이어 검출 트리거들의 일반적인 플롯과 상세한 플롯이고;
도 13 은 본 발명의 다양한 양태에 따른 복합 분석 프로세스의 흐름도이고;
도 14 는 3개의 대표적인 웨이퍼 상의 대표적인 데이터 포인트 위치의 다이 어그램이고;
도 15a 내지 도 15c 는 누적 제곱 복합 데이터 분석 프로세스와 관련되는 흐름도 및 차트이고;
도 16 은 웨이퍼 상에 정의된 배제 구역의 다이어그램이고;
도 17a 내지 도 17b 는 근접 가중 프로세스의 흐름도이고;
도 18 은 근접 가중된 데이터 포인트들의 세트의 다이어그램이고;
도 19 는 클러스터 검출 및 여과 프로세스의 흐름도이고;
도 20 은 검출 및 여과된 웨이퍼 상의 클러스터들의 세트의 다이어그램이고;
도 21 은 절대 병합 프로세스를 사용하여 병합된 데이터 포인트들의 세트의 다이어그램이고;
도 22 는 중첩 병합 프로세스를 사용하여 병합된 데이터 포인트들의 세트의 다이어그램이고;
도 23 및 도 24 는 백분율 중첩 합병 프로세스를 사용하여 병합된 데이터 포인트들의 세트의 다이어그램들이고;
도 25 는 테스트 데이터를 사용하는 프로세스의 특성을 식별하기 위한 시스템의 블럭 다이어그램이고;
도 26 은 진단 시스템의 블럭 다이어그램이고;
도 27 은 분류 프로세스의 흐름도이고;
도 28 은 패턴 필터링 프로세스의 다이어그램이고;
도 29 는 신경망의 다이어그램이고;
도 30 은 하나 이상의 아웃라이어 식별 알고리즘을 자동으로 선택하기 위한 시스템의 다이어그램이고;
도 31a 내지 도 31b 는 상이한 종류의 입력 데이터의 특성과 상기 특성의 가능한 원인 사이의 관계를 도시하는 차트들이고;
도 32 는 분류 프로세스의 다이어그램이고; 또한
도 33 은 입자 군집 최적화 프로세스의 흐름도이다.
도면에서의 엘리먼트는 간단하고 명료하게 도시되어 있고 반드시 축척되어 그려지지 않았다. 예를 들어, 도면에서의 일부 엘리먼트에 의해 수행되는 접속들 및 단계들은 본 발명의 실시형태들의 이해를 향상시키는데 도움이 되도록 다른 엘리먼트에 대해 과장되거나 혹은 생략될 수 있다.
예시적인 실시형태들의 상세한 설명
본 발명은 기능적인 블럭 컴포넌트들과 다양한 프로세스 단계들에 의해 설명될 수 있다. 이와 같은 기능적인 블럭들과 단계들은 명시된 기능들을 수행하도록 구성된 임의의 개수의 하드웨어 또는 소프트웨어 컴포넌트에 의해 실현될 수 있다. 예를 들어, 본 발명은 하나 이상의 테스터, 마이크로프로세서, 또는 다른 제어 디바이스의 제어 하에서 다양한 기능들을 실행할 수 있는, 예를 들어, 통계적인 엔진, 메모리 엘리먼트, 신호 처리 엘리먼트, 신경망, 패턴 분석기, 논리 엘리먼트, 프로그램 등과 같은 다양한 테스터, 프로세서, 저장 시스템, 프로세스, 및 알고리즘을 채용할 수 있다. 또한, 본 발명은 임의의 개수의 테스트 환경과 관련하여 실행될 수 있고, 설명되는 각 시스템은 본 발명을 위한 단지 하나의 예시적 인 적용일 뿐이다. 또한, 본 발명은 데이터 분석, 컴포넌트 인터페이싱, 데이터 처리, 컴포넌트 취급 등을 위해 임의의 개수의 종래 기술을 채용할 수 있다.
도 1 을 참조하면, 본 발명의 다양한 양태에 따른 방법 및 장치가 반도체를 테스트하는 자동 테스트 장비 (ATE; Automatic test equipment) 와 같은, 테스터 (102) 를 갖는 테스트 시스템 (100) 과 관련하여 동작한다. 본 실시형태에서, 테스트 시스템 (100) 은 테스터 (102) 와 컴퓨터 시스템 (108) 을 구비한다. 테스트 시스템 (100) 은 웨이퍼 상의 반도체 디바이스, 회로 보드, 패키지된 디바이스, 또는 다른 전기적 혹은 광학적 시스템과 같은, 임의의 컴포넌트 (106) 를 테스트하도록 구성될 수 있다. 본 실시형태에서, 컴포넌트 (106) 는 웨이퍼 상에 형성된 복수의 집적 회로 다이, 또는 패키지된 집적 회로 혹은 디바이스를 구비한다. 컴포넌트 (106) 는 제조 프로세스를 사용하여 생성되고, 상기 제조 프로세스는 컴포넌트 (106) 를 생성하기 위한 임의의 적절한 제조 프로세스를 구비할 수 있고, 또한 테스트 프로세스를 포함할 수 있으며, 상기 테스트 프로세스는 컴포넌트 (106) 의 동작을 테스트하기 위한 임의의 적절한 프로세스를 구비할 수 있다.
테스터 (102) 는 컴포넌트 (106) 를 테스트하고 테스팅과 관련되는 출력 데이터를 발생시키는 임의의 테스트 장비를 적절하게 구비하고, 또한 복수의 머신 혹은 다른 데이터 소스를 구비할 수 있다. 테스터 (102) 는 테라다인 (Teradyne) 테스터와 같은 종래의 자동 테스터를 구비할 수 있고, 테스팅을 용이하게 하는 다른 장비와 관련하여 적절하게 동작한다. 테스터 (102) 는 테스트되어야 할 특정한 컴포넌트 (106) 및/또는 임의의 다른 적절한 판정기준에 따라 선택되고 구성 될 수 있다.
테스터 (102) 는 예를 들어, 테스터 (102) 를 프로그램하고, 테스트 프로그램을 로드 및/또는 실행하고, 데이터를 수집하고, 테스터 (102) 에게 명령을 제공하고, 테스트 데이터를 분석하고, 테스터 파라미터들을 제어하는 컴퓨터 시스템 (108) 과 관련하여 동작할 수 있다. 본 실시형태에서, 컴퓨터 시스템 (108) 은 테스터 (102) 로부터 테스터 데이터를 수신하고 테스터 (102) 와 독립적으로 다양한 데이터 분석 기능을 수행한다. 상기 컴퓨터 시스템 (108) 은 테스터 (102) 로부터의 데이터를 분석하는 통계적인 엔진 뿐만 아니라, 테스트 데이터에 기초하여 제조 및/또는 테스트 프로세스에서의 잠재적인 문제점을 식별하기 위한 진단 시스템 (216) 을 구현할 수 있다. 상기 컴퓨터 시스템 (108) 은 테스터 (102) 에 접속되거나 또는 테스터 (102) 와 네트워크된, 개인용 컴퓨터 혹은 워크스테이션과 같은 별개의 컴퓨터를 구비하여 테스터 (102) 와 신호들을 교환할 수 있다. 대안 실시형태에서, 상기 컴퓨터 시스템 (108) 은 테스트 시스템 (100) 으로부터 생략되거나 또는 테스트 시스템 (100) 내부에 집적될 수 있고, 테스터 (102) 또는 네트워크에 접속된 엘리먼트와 같은 다른 컴포넌트들에 의해 다양한 기능이 수행될 수 있다.
본 예시적인 시스템에서, 컴퓨터 시스템 (108) 은 프로세서 (110) 와 메모리 (112) 를 포함한다. 프로세서 (110) 는 윈도우 (Window) XP, 유닉스 (Unix), 또는 리눅스 (Linux) 와 같은 임의의 적절한 오퍼레이팅 시스템과 관련하여 동작하는, 종래의 인텔 (Intel), 모토롤라 (Motorola), 또는 AMD (Advanced Micro Devices) 프로세서와 같은 임의의 적절한 프로세서를 구비한다. 유사하게, 메모리 (112) 는 데이터를 저장하기 위한, RAM (random access memory) 또는 다른 적절한 저장 시스템과 같이, 프로세서 (110) 에 액세스할 수 있는 임의의 적절한 메모리를 구비할 수 있다. 특히, 본 시스템의 메모리 (112) 는 정보를 저장하고 수취하기 위한 고속 액세스 메모리를 포함하고 컴퓨터 (108) 의 동작을 용이하게 하도록 충분한 용량으로 적절하게 구성되어 있다.
본 실시형태에서, 메모리 (112) 는 테스터 (102) 로부터 수취되는 출력 결과들을 저장하고 출력 테스트 데이터의 분석을 용이하게 하기 위한 캐패시티를 포함한다. 상기 메모리 (112) 는 분석용 테스트 데이터를 고속으로 저장하고 검색하도록 구성되어 있다. 다양한 실시형태에서, 메모리 (112) 는, 테스트 결과에 기초하여 선택된 판정기준 및 분석들에 따라 테스트 시스템 (100) 및/또는 오퍼레이터에 의해 선택되는 정보 세트를 적절하게 구비하는, 동적 데이터로그의 엘리먼트들을 저장하도록 구성되어 있다.
예를 들어, 메모리 (102) 는, 각 컴포넌트 (106) 에 대해, 테스트된 웨이퍼를 위한 웨이퍼 맵 상의 컴포넌트 (106) 의 위치에 대응하는 x-y 좌표와 같은, 컴포넌트 식별자를 적절하게 저장한다. 메모리 (112) 에서의 각각의 x-y 좌표는 웨이퍼 맵 상의 대응하는 x-y 좌표에서 특정한 컴포넌트 (106) 와 연관될 수 있다. 각각의 컴포넌트 식별자는 하나 이상의 필드를 가지며, 각 필드는, 예를 들어, 웨이퍼 상의 대응하는 x-y 위치에서 컴포넌트 (106) 에 대해 수행된 특정한 테스트, 대응하는 컴포넌트 (106) 와 관련된 통계, 또는 다른 관련 데이터에 대응한다. 메모리 (102) 는 임의의 판정기준 또는 규칙에 따라 소망하는 대로 사용자에 의해 식별된 임의의 데이터를 포함하도록 구성될 수 있다.
본 실시형태의 컴퓨터 (108) 는 또한 다른 메모리 (또는 메모리 (112) 의 일부분), 하드 드라이브 어레이, 광학 저장 시스템, 또는 다른 적절한 저장 시스템과 같은, 저장 시스템에 대한 액세스를 적절하게 갖는다. 상기 저장 시스템은 컴퓨터 (108) 또는 테스터 (102) 전용의 하드 드라이브와 같이 로컬(local)일 수 있고, 또는 테스트 시스템 (100) 이 접속되어 있는 서버와 연관된 하드 드라이브 어레이와 같이 원격 (remote) 일 수 있다. 상기 저장 시스템은 컴퓨터 (108) 또는 테스트 시스템 (100) 의 다른 컴포넌트에 의해 사용된 프로그램 및/또는 데이터를 저장할 수 있다. 본 실시형태에서, 저장 시스템은, 예를 들어, 제조 설비를 위한 주생산 서버를 구비하는 원격 서버 (116) 를 통해 이용가능한 데이터베이스 (114) 를 구비한다. 데이터베이스 (114) 는 테스터 데이터 파일, 테스트 시스템 (100) 과 그의 컴포넌트를 동작시키기 위한 매스터 데이터 파일, 테스트 프로그램, 테스트 시스템 (100) 을 위한 다운로드가능한 명령, 등과 같은 테스터 정보를 저장한다. 또한, 저장 시스템은 분석을 위해 보유된 역사적인 테스터 데이터 파일과 같은 완전한 테스터 데이터 파일을 구비할 수 있다.
테스트 시스템 (100) 은 컴포넌트 (106) 의 테스팅을 용이하게 하는 부가적인 장비를 포함할 수 있다. 예를 들어, 본 테스트 시스템 (100) 은, 컴포넌트 (106) 를 취급하고 컴포넌트 (106) 와 테스터 (102) 사이의 인터페이스를 제공하기 위해, 종래의 디바이스 인터페이스 보드 및/또는 디바이스 핸들러 혹은 프로버 (prober) 와 같은, 디바이스 인터페이스 (104) 를 포함한다. 일 실시형태에서, 디바이스 인터페이스는 단일 웨이퍼 상의 복수의 장소를 동시에 테스트하도록 구성된 멀티사이트 (multisite) 디바이스 인터페이스를 구비한다. 테스트 시스템 (100) 은, 테스트 시스템 (100) 의 특정한 구성, 적용, 환경, 또는 다른 관련 요인에 따라 컴포넌트 (106) 의 테스팅을 용이하게 하기 위해 다른 컴포넌트, 장비, 소프트웨어, 등을 포함하거나 또는 이들에 접속될 수 있다. 예를 들어, 본 실시형태에서, 테스트 시스템 (100) 은 로컬 에어리어 네트워크, 인트라넷, 또는 인터넷 등의 글로벌 네트워크와 같은 적절한 통신 매체에 접속되어 원격 서버 (116) 와 같은 다른 시스템으로 정보를 전송한다.
테스트 시스템 (100) 은 하나 이상의 테스터 (102) 및 하나 이상의 컴퓨터 (108) 를 포함할 수 있다. 예를 들어, 하나의 컴퓨터 (108) 는, 시스템의 처리량과 컴퓨터 (108) 의 구성과 같은 다양한 요인에 따라 적절한 개수, 즉, 20 개 이상의 테스터 (102) 에 접속될 수 있다. 또한, 컴퓨터 (108) 는 테스터 (102) 로부터 분리될 수 있고, 또는 예를 들어, 테스터 (102) 자체의 하나 이상의 프로세서, 메모리, 클럭 회로, 등을 사용하여 테스터 (102) 내부에 통합될 수 있다. 또한, 다양한 기능이 상이한 컴퓨터에 의해 수행될 수 있다. 예를 들어, 첫번째 컴퓨터가 다양한 예비-분석 업무를 수행할 수 있고, 그 다음으로 여러 컴퓨터가 데이터를 수취하고 데이터 분석을 수행하고, 다른 세트의 컴퓨터가 동적 데이터로그 및/또는 다른 출력 분석과 리포트를 준비할 수 있다.
본 발명의 다양한 양태에 따른 테스트 시스템 (100) 은 컴포넌트 (106) 를 테스트하고 향상된 분석 및 테스트 결과를 제공한다. 예를 들어, 분석이 향상됨으로써 부정확하고, 의심스럽고, 또는 이상한 결과, 반복 테스트, 및/또는 비교적 높은 실패 가능성을 갖는 테스트를 식별할 수 있다. 테스트 시스템 (100) 은 또한 복수의 웨이퍼 및/또는 웨이퍼들의 로트로부터 취득된 데이터와 같은, 복수의 데이터 세트를 분석하여 복수의 데이터 세트에 기초한 복합 데이터를 생성할 수 있다. 다양한 데이터는 또한, 문제점, 비효율, 잠재적인 위험, 불안정성, 또는 테스트 데이터를 통해 식별될 수 있는 다른 양태들과 같은, 제조, 테스트, 및/또는 다른 프로세스에서의 특성을 진단하기 위해 테스트 시스템 (100) 에 의해 사용될 수 있다. 그 다음으로, 생산 엔지니어, 테스트 엔지니어, 제조 엔지니어, 디바이스 엔지니어, 또는 테스트 데이터와 분석을 사용하는 다른 사람과 같은 오퍼레이터가 그 결과를 사용하여 테스트 시스템 (100) 및/또는 제조 시스템을 검증 및/또는 개선하고 컴포넌트 (106) 를 분류할 수 있다.
본 발명의 다양한 양태에 따른 테스트 시스템 (100) 은 컴포넌트 (106) 를 테스트하고 테스트 데이터를 수집하고 분석하기 위한 향상된 테스트 프로세스를 실행한다. 테스트 시스템 (100) 은 컴퓨터 (108) 에 의해 실행되는 소프트웨어 애플리케이션과 관련하여 적절하게 동작한다. 도 2 를 참조하면, 본 실시형태의 소프트웨어 애플리케이션은, 구성 엘리먼트 (202), 보충 데이터 분석 엘리먼트 (206), 및 출력 엘리먼트 (208) 를 포함하는, 향상된 테스트 프로세스를 실행하기 위한 복수의 엘리먼트를 포함한다. 테스트 시스템 (100) 은 또한 하나 이상의 데이터 세트으로부터의 데이터를 분석하기 위한 복합 분석 엘리먼트 (214) 를 포함 할 수 있다. 또한, 테스트 시스템은 테스트 데이터를 사용하여 특성 및 잠재적인 문제점을 식별하기 위한 진단 시스템 (216) 을 포함할 수 있다.
각각의 엘리먼트 (202, 206, 208, 214, 216) 는 적절하게 다양한 태스크를 수행하기 위해 컴퓨터 (108) 상에서 동작하는 소프트웨어 모듈을 구비한다. 일반적으로, 구성 엘리먼트 (202) 는 테스팅과 분석을 위한 테스트 시스템 (100) 을 준비한다. 보충 데이터 분석 엘리먼트 (206) 에서는, 테스터 (102) 로부터의 출력 테스트 데이터가 분석되어 적절하게 실행시에 그리고 자동적으로 보충 테스트 데이터를 발생시킨다. 그 다음으로, 보충 테스트 데이터는 오퍼레이터, 또는 복합 분석 엘리먼트 (214), 진단 시스템 (216) 및/또는 출력 엘리먼트 (208) 와 같은 다른 시스템으로 전송된다.
구성 엘리먼트 (202) 는 컴포넌트 (106) 를 테스트하고 테스트 데이터를 분석하기 위한 테스트 시스템 (100) 을 구성한다. 테스트 시스템 (100) 은 소정의 초기 파라미터 세트 및, 소망되는 경우, 오퍼레이터로부터의 정보를 적절하게 사용하여 테스트 시스템 (100) 을 구성한다. 테스트 시스템 (100) 은 테스트 시스템 (100) 에 대한 오퍼레이터 시중 (attendance) 을 최소화하기 위해 소정의 파라미터 또는 디폴트 파라미터로 초기에 적절하게 구성되어 있다. 소망되는 경우, 예를 들어 컴퓨터 (108) 를 통해 오퍼레이터에 의해 구성에 대한 조정이 행해질 수 있다.
도 3 을 참조하면, 구성 엘리먼트 (202) 에 의해 수행되는 예시적인 구성 프로세스 (300) 가 초기화 절차 (단계 302) 와 함께 시작되어 컴퓨터 (108) 가 초기 상태로 설정된다. 그 다음으로 구성 엘리먼트 (202) 는, 예를 들어 데이터베이스 (114) 로부터, 컴퓨터 (108) 와 테스터 (102) 를 위한 애플리케이션 구성 정보 (단계 304) 를 얻는다. 예를 들어, 구성 엘리먼트 (202) 는 향상된 테스트 프로세스를 위한 매스터 구성 파일 및/또는 테스터 (102) 와 관련되는 도구 구성 파일에 액세스할 수 있다. 매스터 (master) 구성 파일은, 향상된 테스트 프로세스를 실행하기 위해, 테스트 시스템 (100) 의 컴퓨터 (108) 및 다른 컴포넌트들을 위한 적절한 구성과 관련되는 데이터를 포함할 수 있다. 유사하게, 도구 구성 파일은, 접속, 디렉토리, IP 어드레스, 테스터 노드 식별, 제조자, 플래그, 프로버 식별, 또는 테스터 (102) 를 위한 임의의 다른 관련 정보와 같은, 테스터 (102) 구성과 관련되는 데이터를 적절하게 포함한다.
그 다음으로 구성 엘리먼트 (202) 는 매스터 구성 파일 및/또는 도구 구성 파일에 포함되는 데이터에 따라 테스트 시스템 (100) 을 구성할 수 있다 (단계 306). 또한, 구성 엘리먼트 (202) 는, 테스터 데이터를 위한 로지스틱스 인스턴스 (logistics instance) 와 같은 데이터를 테스터 (102) 와 연관시키는 테스터 (102) 의 식별자와 같은, 추가적인 관련 정보를 데이터베이스 (114) 로부터 검색하기 위해 구성 데이터를 사용할 수 있다 (단계 308). 테스트 시스템 (100) 정보는 또한, 오퍼레이터에 의해 승인, 거절, 또는 조정될 수 있는 하나 이상의 디폴트 파라미터를 적절하게 포함한다. 예를 들어, 테스트 시스템 (100) 정보는 인스톨, 구성, 파워 업 시, 또는 인가 및/또는 수정을 위한 다른 적절한 시간에 오퍼레이터에게 제출되는 글로벌 통계 프로세스 제어 (global statistical process control; SPC) 규칙 및 목표를 포함할 수 있다. 테스트 시스템 (100) 정보는 또한 디폴트 웨이퍼 맵, 또는 각각의 제품, 웨이퍼, 컴포넌트 (106) 를 위해 적절하게 구성되어 있는 다른 파일들, 또는 테스트 시스템 (100) 에 영향을 줄 수 있고 혹은 테스트 시스템 (100) 에 의해 영향을 받을 수 있는 다른 아이템을 포함할 수 있다. 구성 알고리즘, 파라미터, 및 임의의 다른 판정기준은, 용이한 액세스, 특정한 제품 및/또는 테스트에 대한 상관, 및 추적가능성 (traceability) 을 위해 레시피 (recipe) 파일에 저장될 수 있다.
초기 구성 프로세스가 완료되면, 테스트 시스템 (100) 은 테스트 프로그램에 따라, 예를 들어 종래의 일련의 테스트와 관련하여, 테스트 동작을 시작한다. 테스터 (102) 는 테스트 프로그램을 적절하게 실행하여 신호들을 컴포넌트 (106) 상의 접속부에 인가하고 컴포넌트 (106) 로부터 출력 테스트 데이터를 판독한다. 테스터 (102) 는 웨이퍼 상의 각 컴포넌트 (106) 또는 웨이퍼 자체에 대해 복수의 테스트를 수행할 수 있고, 각 테스트는 동일한 컴포넌트 (106) 에 대해 여러 번 반복될 수 있다. 테스트들은 연속성, 공급 전류, 누설 전류, 파라메트릭 스태틱 (parametric static), 파라메트릭 다이내믹 (parametric dynamic), 및 기능과 스트레스 테스트와 같은 (그렇지만 이들로 제한되지 않음), 임의의 적절한 테스트를 포함할 수 있다. 테스터 (102) 로부터의 테스트 데이터는 테스트 데이터가 얻어지는 대로 신속한 액세스 및 보충 분석을 위해 저장된다. 데이터는 또한 후속 분석 및 사용을 위해 장기간 메모리에 저장될 수 있다.
각각의 테스트는 적어도 하나의 컴포넌트에 대한 적어도 하나의 결과를 생성 한다. 도 9 를 참조하면, 복수의 컴포넌트의 단일 테스트에 대한 예시적인 테스트 결과 세트는 통계적으로 유사한 값을 갖는 테스트 결과의 제 1 세트 및 상기 제 1 세트로부터 벗어나는 값들에 의해 특징 지워지는 테스트 결과의 제 2 세트를 포함한다. 각각의 테스트 결과는 테스트 상한 및 테스트 하한과 비교될 수 있다. 만일 컴포넌트에 대한 특정한 결과가 어느 하나의 한계를 초과하면, 상기 컴포넌트는 "불량 부품" 으로서 분류될 수 있고 그렇지 않으면 테스트 및/또는 테스트 결과에 따라 분류될 수 있다.
제 1 세트로부터 벗어나는 제 2 세트에서의 테스트 결과들 중 일부는 제어 한계를 초과할 수 있지만, 다른 것은 초과하지 않는다. 본 목적을 위해, 제 1 세트로부터 벗어나지만 제어 한계를 초과하지 않거나 혹은 그렇지 않으면 검출되지 않은 테스트 결과들은 "아웃라이어 (outliers)" 로서 지칭된다. 테스트 결과들에서의 아웃라이어는, 잠재적으로 신뢰할 수 없는 컴포넌트를 식별하는 것과 같은, 임의의 적절한 목적을 위해 식별되고 분석될 수 있다. 아웃라이어는 또한 테스트와 제조 프로세스에서의 다양한 잠재적인 문제점 및/또는 개선을 식별하는데 사용될 수도 있다.
테스터 (102) 가 테스트 결과를 생성할 때, 각 컴포넌트, 테스트, 및 반복에 대한 출력 테스트 데이터가 테스터 (102) 에 의해 테스터 데이터 파일에 저장된다. 각 컴포넌트로부터 수신되는 출력 테스트 데이터는 예를 들어, 테스트 상한 및 하한과의 비교에 의해 특정한 빈 (bin) 분류와 같이, 컴포넌트 (106) 의 성능을 분류하도록 테스터 (102) 에 의해 분석되고, 분류의 결과들은 또한 테스터 데이터 파일 에 저장된다. 테스트 데이터 파일은 로지스틱스 데이터와 테스트 프로그램 식별 데이터와 같은, 부가적인 정보를 또한 포함한다. 그 다음으로 테스터 데이터 파일은, 표준 테스터 데이터 포맷 (STDF) 파일과 같은, 출력 파일로 컴퓨터 (108) 에 제공되고, 메모리에 저장된다. 테스터 데이터 파일은 또한 복합 분석 엘리먼트 (214) 에 의해 나중의 분석을 위해 장기간 저장용 저장 시스템에 저장될 수 있다.
컴퓨터 (108) 가 테스터 데이터 파일을 수신하면, 보충 데이터 분석 엘리먼트 (206) 는 데이터를 분석하여 향상된 출력 결과를 제공한다. 보충 데이터 분석 엘리먼트 (206) 는 임의의 적절한 목적을 달성하기 위해 테스터 데이터에 대한 임의의 적절한 분석을 제공할 수 있다. 예를 들어, 보충 데이터 분석 엘리먼트 (206) 는 실행 시간에 출력 테스트 데이터를 분석하고 오퍼레이터에게 중대한 데이터 및 데이터의 특성을 식별하기 위한 통계적인 엔진을 구현할 수 있다. 식별된 데이터와 특성은 저장될 수 있지만, 식별되지 않은 데이터는 폐기되는 등과 같이 처리될 수 있다.
보충 데이터 분석 엘리먼트 (206) 는 예를 들어, 데이터 및 통계적인 구성 데이터의 세트에 따라 통계적인 숫자를 계산할 수 있다. 통계적인 구성 데이터는, 테스트 시스템 (100) 및/또는 오퍼레이터의 요구에 따라, 통계적인 프로세스 제어, 아웃라이어 식별 및 분류, 시그네이처 분석 (signature analysis), 및 데이터 상관과 같은, 임의의 적절한 종류의 분석을 요청할 수 있다. 또한, 보충 데이터 분석 엘리먼트 (206) 는 실행 시간에, 즉, 테스트 데이터의 발생에 이어지는 초 또는 분 이내에 상기 분석을 적절하게 수행한다. 보충 데이터 분석 엘리먼트 (206) 는 또한 오퍼레이터 및/또는 테스트 엔지니어로부터의 간섭을 최소화하면서 상기 분석을 자동적으로 수행할 수도 있다.
본 테스트 시스템 (100) 에서는, 컴퓨터 (108) 가 테스터 데이터 파일을 수신하여 저장한 후에, 보충 데이터 분석 엘리먼트 (206) 는, 컴퓨터 (108) 가 출력 테스트 데이터의 분석을 준비하고 보충 데이터의 생성 및 출력 리포트의 준비를 용이하게 하도록 다양한 예비 태스크를 수행한다. 이제 도 4a 내지 도 4c 를 참조하면, 본 실시형태에서, 보충 데이터 분석 엘리먼트 (206) 는 초기에 테스터 데이터 파일을 관련 테스터 (102) 에 대응하는 도구 입력 디렉토리로 복사한다 (단계 402). 보충 데이터 분석 엘리먼트 (206) 는 또한 컴퓨터 (108) 가 출력 테스트 데이터의 보충 분석을 준비하도록 구성 데이터를 검색한다.
구성 데이터는 테스터 데이터 파일로부터 검색될 수 있는 로지스틱스 데이터 세트를 적절하게 포함한다 (단계 404). 보충 데이터 분석 엘리먼트 (206) 는 또한 로지스틱스 기준을 생성한다 (단계 406). 로지스틱스 기준은 도구 구성 파일로부터 검색된 테스터 (102) 정보와 같은, 테스터 (102) 정보를 포함할 수 있다. 또한, 로지스틱스 기준은 식별로 할당된다.
구성 데이터는 또한 출력 테스트 데이터를 생성한 테스트 프로그램을 위한 식별자를 포함한다. 테스트 프로그램은, 데이터베이스 (114) 에서 그것을 찾거나 (단계 408), 테스터 (102) 식별과의 관련에 의해, 또는 매스터 구성 파일로부터 그것을 판독하는 것과 같은, 임의의 적절한 방법으로 식별될 수 있다. 어떠한 테스트 프로그램 식별도 확립될 수 없다면 (단계 410), 테스트 프로그램 식별이 생성될 수 있고 테스터 식별과 연관될 수 있다 (단계 412).
구성 데이터는, 웨이퍼의 전부 보다 적으면, 보충 데이터 분석 엘리먼트 (206) 에 의해 처리되어야 할 테스트 실행에서의 웨이퍼들을 추가로 식별한다. 본 실시형태에서, 보충 데이터 분석 엘리먼트 (206) 는 분석되어야 할 웨이퍼들을 표시하는 파일에 액세스한다 (단계 414). 만일 어떠한 표시도 제공되지 않으면, 컴퓨터 (108) 는 테스트 실행에서 웨이퍼들의 전부를 분석하는 것을 적절하게 이행하지 않는다.
현재의 테스트 데이터 파일에 대한 웨이퍼가 분석되는 경우 (단계 416), 보충 데이터 분석 엘리먼트 (206) 는 웨이퍼용 테스트 데이터 파일에 대한 보충 데이터 분석을 계속 수행한다. 그 외의 다른 경우, 보충 데이터 분석 엘리먼트 (206) 는 다음의 테스트 데이터 파일을 대기하거나 또는 액세스한다 (단계 418).
보충 데이터 분석 엘리먼트 (206) 는 테스트되어야 할 다양한 웨이퍼에 대해 분석되어야 할 하나 이상의 섹션 그룹을 확립할 수 있다 (단계 420). 출력 테스트 데이터에 적용할 적절한 섹션 그룹을 식별하기 위해, 보충 데이터 분석 엘리먼트 (206) 는 예를 들어, 테스트 프로그램 및/또는 테스터 식별에 따라 적절한 섹션 그룹 정의를 적절하게 식별한다. 각각의 섹션 그룹은 하나 이상의 섹션 어레이를 포함하고, 각각의 섹션 어레이는 동일한 섹션 타입의 하나 이상의 섹션을 포함한다.
섹션 타입들은 웨이퍼의 소정의 영역에 위치된 다양한 종류의 컴포넌트 (106) 를 포함한다. 예를 들어, 도 5 를 참조하면, 섹션 타입은 행 (502), 열 (504), 스테퍼 필드 (506), 원형 밴드 (508), 방사형 구역 (510), 사분원 (quadrant; 512), 또는 임의의 다른 소망하는 컴포넌트들의 그룹화 (grouping) 를 포함할 수 있다. 상이한 섹션 타입은, 처리되는 컴포넌트의 순서, 튜브의 섹션, 등과 같은 컴포넌트의 구성에 따라 사용될 수 있다. 이와 같은 컴포넌트 (106) 의 그룹은 예를 들어, 상기 그룹과 연관될 수 있는 공통적인 결함 또는 특성을 식별하기 위해 함께 분석된다. 예를 들어, 웨이퍼의 특정한 부분이 웨이퍼의 다른 부분과 같이 열을 전도하지 않는 경우, 컴포넌트 (106) 의 특정한 그룹에 대한 테스트 데이터는 웨이퍼의 불균일 가열과 연관된 공통적인 특성 또는 결함을 반영할 수 있다.
현재의 테스트 데이터 파일에 대한 섹션 그룹을 식별할 때, 보충 데이터 분석 엘리먼트 (206) 는 테스트 프로그램 및/또는 테스터 (102) 를 위한 제어 한계 및 인에이블 플래그와 같은, 임의의 추가적인 관련 구성 데이터를 검색한다 (단계 422). 특히, 보충 데이터 분석 엘리먼트 (206) 는 섹션 그룹에서 각각의 섹션 어레이와 연관된 소망하는 통계 또는 계산의 세트를 적절하게 검색한다 (단계 423). 소망하는 통계 및 계산은 오퍼레이터에 의해 또는 파일로부터 검색되는 것과 같은, 임의의 방법으로 지정될 수 있다. 또한, 보충 데이터 분석 엘리먼트 (206) 는 또한 각각의 관련 섹션 타입 또는 웨이퍼와 관련되는 다른 적절한 변동에 대한 하나 이상의 시그네이처 분석 알고리즘을 식별할 수 있고 (단계 424), 마찬가지로 데이터베이스 (114) 로부터 시그네이처 알고리즘을 검색한다.
모든 구성 데이터는 디폴트에 의해 제공되거나 또는 구성 엘리먼트 (202) 혹은 보충 데이터 분석 엘리먼트 (206) 에 의해 자동으로 액세스될 수 있다. 또한, 본 실시형태의 구성 엘리먼트 (202) 와 보충 데이터 분석 엘리먼트 (206) 는, 오퍼레이터가 오퍼레이터의 희망 또는 테스트 시스템 (100) 의 요건에 따라 구성 데이터를 변경하는 것을 가능하게 한다. 구성 데이터가 선택되었을 때, 구성 데이터는 관련되는 판정기준과 연관될 수 있고 미래의 사용을 위해 디폴트 구성 데이터로서 저장될 수 있다. 예를 들어, 오퍼레이터가 특정한 종류의 컴포넌트 (106) 에 대해 어떤 섹션 그룹을 선택하면, 컴퓨터 (108) 는 오퍼레이터에 의해 달리 명령되지 않으면 이러한 모든 컴포넌트 (106) 에 대해 동일한 섹션 그룹을 자동적으로 사용할 수 있다.
보충 데이터 분석 엘리먼트 (206) 는 또한 테스터 데이터 파일 및 부가적인 데이터의 구성 및 저장을 제공한다. 보충 데이터 분석 엘리먼트 (206) 는 저장되어야 할 데이터에 대해, 메모리 (112) 의 일부와 같이, 메모리를 적절하게 할당한다 (단계 426). 상기 할당은, 테스터 데이터 파일로부터의 출력 테스트 데이터, 보충 데이터 분석 엘리먼트 (206) 에 의해 생성된 통계적인 데이터, 제어 파라미터들, 등을 포함하는, 보충 데이터 분석 엘리먼트 (206) 에 의해 저장되어야 할 모든 데이터에 대해 메모리를 적절하게 제공한다. 할당되는 메모리량은 예를 들어, 컴포넌트 (106) 에 대해 수행된 테스트의 개수, 섹션 그룹 어레이의 개수, 제어 한계, 보충 데이터 분석 엘리먼트 (206) 에 의해 수행되어야 할 통계적인 계산, 등에 따라 계산될 수 있다.
보충 분석을 수행하기 위한 모든 구성 데이터가 준비되어 있고 또한 출력 테스트 데이터를 수신한 경우, 보충 데이터 분석 엘리먼트 (206) 는 관련 테스트 데이터를 메모리로 로드하여 (단계 428) 출력 테스트 데이터에 대한 보충 분석을 수행한다. 보충 데이터 분석 엘리먼트 (206) 는 컴포넌트 (106), 테스트 시스템 (100) 의 구성, 오퍼레이터의 소망, 또는 다른 관련 판정기준에 따라 임의의 개수 및 종류의 데이터 분석을 수행할 수 있다. 보충 데이터 분석 엘리먼트 (206) 는, 잠재적으로 결함있는 컴포넌트 (106) 및 패턴을 식별하는 선택된 특성, 트렌드, 또는 제조상의 관심 혹은 결함을 표시할 수 있는 출력 테스트 데이터에서의 다른 특성에 대해 섹션들을 분석하도록 구성될 수 있다.
본 발명의 보충 데이터 분석 엘리먼트 (206) 는, 예를 들어, 출력 테스트 데이터에 기초하여 다양한 통계를 계산 및 분석하고, 또한 다양한 판정기준에 대응하는 데이터 및/또는 컴포넌트 (106) 를 식별한다. 본 발명의 보충 데이터 분석 엘리먼트 (206) 는 또한 출력 테스트 데이터를 분류하고 상관시켜 컴포넌트 (106) 및 테스트 시스템 (100) 과 관련되는 오퍼레이터 및/또는 테스트 엔지니어에게 정보를 제공할 수 있다. 예를 들어, 본 발명의 보충 데이터 분석 엘리먼트 (206) 는, 예를 들어 잠재적으로 관련된 테스트 또는 중복 테스트를 식별하기 위해 출력 데이터 상관을 수행할 수 있고, 또한 빈번한 아웃라이어를 갖는 테스트들을 식별하기 위해 아웃라이어 발생율 분석을 수행할 수 있다.
보충 데이터 분석 엘리먼트 (206) 는 데이터를 매끄럽게 하고 또한 아웃라이어의 식별을 보조하기 위해 테스터 데이터를 최초로 처리하는 평활화 (smoothing) 시스템을 포함할 수 있다 (단계 429). 대안 실시형태들에서, 상기 평활화 시스템 및 상기 처리는 생략될 수 있고 데이터는 평활화없이 처리될 수 있다. 평활화 시스템은 또한 데이터, 트렌드, 등에서의 현저한 변화를 식별할 수 있고, 상기 현저한 변화는 출력 엘리먼트 (208) 에 의해 오퍼레이터에게 제공될 수 있다. 평활화 시스템은 예를 들어 컴퓨터 시스템 (108) 상에서 동작하는 프로그램으로서 적절하게 구현된다. 평활화 시스템은 다양한 판정기준에 따라 데이터를 평활화하기 위한 복수의 위상 (phase) 을 적절하게 포함한다. 제 1 위상은 기본적인 평활화 프로세스를 포함할 수 있다. 보충 위상들은 상황에 따라 테스트 데이터의 향상된 트랙킹 및/또는 부가적인 평활화를 제공한다.
평활화 시스템은 제 1 평활화 기술에 따라 선택 테스터 데이터의 초기값을 최초로 조정하고, 또한 상기 초기값 중 적어도 하나와 최초로 조정된 값이 문턱값에 정합하면 제 2 평활화 기술에 따라 상기 값을 보충적으로 조정함으로써 적절하게 동작한다. 제 1 평활화 기술은 데이터를 평활화하는 경향이 있다. 제 2 평활화 기술도 또한 데이터를 매끄럽게 하고 및/또는 데이터의 트랙킹을 향상시키는 경향이 있지만, 제 1 평활화 기술과는 상이한 방법이다. 또한, 문턱값은 보충적인 평활화의 적용 여부를 결정하기 위한 임의의 적절한 판정기준을 구비할 수 있다. 평활화 시스템은 적절하게, 복수의 선행하는 조정된 데이터와 복수의 선행하는 원시 데이터를 비교하여 비교결과를 생성하고, 상기 비교 결과가 제 1 문턱값에 정합하는지 여부에 따라 제 2 평활화 기술을 선택된 데이터에 적용하여 선택된 데이터의 값을 조정한다. 또한, 평활화 시스템은 적절하게, 선택된 데이터 의 예측된 값을 계산하고, 예측된 값이 제 2 문턱값에 정합하는지 여부에 따라 제 3 평활화 기술을 선택된 데이터에 적용하여 선택된 데이터의 값을 조정한다.
도 8 을 참조하면, 평활화된 제 1 테스트 데이터 포인트는 적절하게 제 1 원시 테스트 데이터 포인트와 일치하게 설정되고 (단계 802), 평활화 시스템은 다음의 원시 테스트 데이터 포인트로 진행한다 (단계 804). 평활화 동작을 수행하기 전에, 평활화 시스템은 데이터 포인트에 대해 평활화가 적절한지 여부를 최초로 결정하고, 만일 그렇다면, 데이터에 대해 기본적인 평활화 동작을 수행한다. 검색된 데이터 포인트의 개수에 따라, 선택된 값으로부터 데이터 포인트값들의 편차에 따라, 또는 각각의 데이터 포인트 값과 문턱값의 비교에 따라와 같이, 임의의 판정 기준이 평활화가 적절한지 여부를 결정하는데 적용될 수 있다. 본 실시형태에서, 평활화 시스템은 문턱값 비교를 수행한다. 문턱값 비교는 데이터 평활화가 적절한지 여부를 결정한다. 만일 그렇다면, 최초의 평활화 프로세스는 데이터의 최초의 평활화로 진행하도록 적절하게 구성된다.
보다 구체적으로, 본 실시형태에서, 상기 프로세스는 최초의 원시 데이터 포인트 R0 에서 시작하고, 상기 R0 는 또한 평활화된 제 1 데이터 포인트 S0 로서 지정되어 있다. 부가적인 데이터 포인트들이 수신되고 분석됨에 따라, 각각의 원시 데이터 포인트 (Rn) 와 선행하는 평활화된 데이터 포인트 (Sn-1) 사이의 차이가 계산되고 문턱값 (T1) 과 비교된다 (단계 806). 만일 원시 데이터 포인트 (Rn) 와 선행하는 평활화된 데이터 포인트 (Sn-1) 사이의 차이가 문턱값 (T1) 을 초과하 면, 초과된 문턱값이 평활화된 데이터로부터의 현저한 일탈에 대응하고 데이터에서의 시프트를 표시한다라고 가정된다. 따라서, 문턱값 크로싱 (crossing) 의 발생이 주목될 수 있고 또한 현재의 평활화된 데이터 포인트 Sn 은 원시 데이터 포인트 Rn 과 일치하도록 설정된다 (단계 808). 어떠한 평활화도 수행되지 않고, 프로세스는 다음의 원시 데이터 포인트로 진행한다.
만일 원시 데이터 포인트와 선행하는 평활화된 데이터 포인트 사이의 차이가 문턱값 T1 을 초과하지 않으면, 프로세스는 최초의 평활화 프로세스와 관련하여 현재의 평활화된 데이터 포인트 Sn 을 계산한다 (단계 810). 최초의 평활화 프로세스는 데이터에 대한 기본적인 평활화를 제공한다. 예를 들어, 본 실시형태에서, 기본적인 평활화 프로세스는 다음의 수식에 따르는 것과 같은, 종래의 지수함수 평활화 프로세스를 구비한다:
Sn = (Rn - Sn-1) * M1 + Sn -1
여기에서 M1 은 0.2 또는 0.3 와 같은 선택된 평활화 계수이다.
최초의 평활화 프로세스는 적절하게, 비교적 낮은 계수 M1 을 사용하여 데이터에 대해 상당한 분량의 평활화를 제공한다. 최초의 평활화 프로세스 및 계수들은 임의의 판정 기준에 따라 선택될 수 있고 또한 임의의 방식으로, 그러나 평활화 시스템의 적용, 처리된 데이터, 평활화 시스템의 요건 및 능력, 및/또는 임의의 다른 판정 기준에 따라 구성될 수 있다. 예를 들어, 최초의 평활화 프로세스는 데이터를 최초로 평활화하기 위해 랜덤 (random), 랜덤 워크 (random walk), 이동 평균 (moving average), 단순 지수함수 (simple exponential), 선형 지수함수 (linear exponential), 계절 지수함수 (seasonal exponential), 지수함수 가중 이동 평균 (exponential weighted moving average), 또는 임의의 다른 적절한 종류의 평활화를 채택할 수 있다.
상기 데이터는 평활화를 위해 추가로 분석되고 및/또는 평활화될 수 있다. 상기 데이터에 대해 보충 평활화를 수행하여 데이터의 평활화를 향상시키고 및/또는 평활화된 데이터의 원시 데이터로의 트랙킹을 개선할 수 있다. 보충 평활화의 복수의 위상도 또한 고려될 수 있고, 적절하다면, 적용될 수 있다. 다양한 위상은 독립적, 상호의존적, 또는 보완적일 수 있다. 또한, 상기 데이터는 보충 평활화가 적절한지 여부를 결정하기 위해 분석될 수 있다.
본 실시형태에서, 데이터는 평활화의 하나 이상의 부가적인 위상을 수행할지 여부를 결정하기 위해 분석된다. 상기 데이터는 보충 평활화가 적용될 수 있는지 여부를 결정하기 위해 임의의 적절한 판정기준에 따라 분석된다 (단계 812). 예를 들어, 평활화 시스템은, 복수의 조정된 데이터 포인트와 선행하는 데이터에 대한 원시 데이터 포인트를 비교하고, 또한 실질적으로 모든 선행하는 조정된 데이터가 실질적으로 모든 대응하는 원시 데이터와 통상적인 관련 (보다 작고, 보다 크고, 또는 일치하고 등) 을 공유하는지 여부에 따라 비교 결과를 생성하는 것 등에 의해, 데이터에서의 트렌드를 식별한다.
본 실시형태의 평활화 시스템은 선택된 P2 개의 원시 데이터 포인트와 동일 개수의 평활화된 데이터 포인트를 비교한다. P2 개의 원시 데이터 포인트 모두의 값이 대응하는 평활화된 데이터 포인트를 초과하면 (또는 일치하면), 또는 모든 원시 데이터 포인트가 대응하는 평활화된 데이터 포인트 보다 작으면 (또는 일치하면), 평활화 시스템은 데이터가 트렌드를 나타내고 있고, 보다 가깝게 트랙되어야 한다라고 결정할 수 있다. 따라서, 그 발생이 주목될 수 있고 데이터에 적용되는 평활화는 보충 평활화를 적용함으로써 변경될 수 있다. 다른 한편으로, 만일 이들 판정 기준 어느 것도 만족하지 않으면, 현재의 평활화된 데이터 포인트는 본래 계산된 대로이고 관련있는 보충 데이터 평활화는 적용되지 않는다.
본 실시형태에서, 평활화된 데이터와 원시 데이터를 비교하기 위한 판정기준은 데이터의 트렌드를 식별하기 위해 선택되고, 상기 데이터의 트렌드의 이면에서 평활화된 데이터가 지체 (lagging) 될 수 있다. 따라서, 포인트 P2 의 개수는 원시 데이터의 트렌드를 변경하기 위해 소망하는 시스템의 감도에 따라 선택될 수 있다.
보충 평활화는 데이터 분석에 따라 전체적인 평활화 효과를 변경시킨다. 임의의 적절한 보충 평활화가 데이터에 적용되어 데이터를 보다 효과적으로 평활화하거나 또는 데이터의 트렌드를 트랙할 수 있다. 예를 들어, 본 실시형태에서, 데이터 분석이 보다 가깝게 트랙되어야 하는 데이터의 트렌드를 나타내면, 최초로 적용된 평활화의 정도를 저감하기 위해 보충 평활화가 적용될 수 있고 따라서 평활 화된 데이터가 원시 데이터를 보다 가깝게 트랙한다 (단계 814).
본 실시형태에서는, 평활화의 저감된 정도를 사용하여 현재의 평활화된 데이터 포인트에 대한 값을 재계산함으로써 평활화의 정도가 저감된다. 데이터를 보다 효과적으로 트랙하거나 또는 데이터 분석의 결과에 반응하기 위해 임의의 적절한 평활화 시스템이 사용될 수 있다. 본 실시형태에서는, 다른 종래의 지수함수 평활화 프로세스가 보다 높은 계수 M2 를 사용하여 데이터에 적용된다:
Sn = (Rn - Sn -1) * M2 + Sn -1
계수 M1 과 M2 는, 원시 데이터의 트렌드의 부재 (M1) 와 존재 (M2) 양쪽에 있어서, 소망하는 시스템의 감도에 따라 선택될 수 있다. 다양한 적용에 있어서, 예를 들어, M1 의 값은 M2 의 값 보다 클 수 있다.
보충 데이터 평활화도 또한 부가적인 위상을 포함할 수 있다. 데이터 평활화의 부가적인 위상은 부가적인 데이터 평활화가 적용되어야 하는지 여부를 결정하기 위해 어떤 방식으로 데이터를 유사하게 분석할 수 있다. 데이터 평활화의 임의의 개수의 위상과 종류는 데이터 분석에 따라 적용되거나 또는 고려될 수 있다.
예를 들어, 본 실시형태에서, 데이터는, 평활화된 데이터의 기울기, 또는 트렌드에 기초하여 예측적 프로세스를 사용하는 등의 노이즈 제어를 위해 분석될 수 있고 또한 잠재적으로 평활화될 수 있다. 평활화 시스템은, 선형 회귀, 중심화된 N-포인트 (N-points centered) 등과 같은 임의의 적절한 프로세스에 따라 현재 의 데이터 포인트에 선행하는 선택된 개수 P3 개의 평활화된 데이터 포인트에 기초하여 기울기를 계산한다 (단계 816). 본 실시형태에서, 데이터 평활화 시스템은 선행하는 P3 개의 평활화된 데이터 포인트의 기울기를 확립하기 위해 "라인을 통한 최소자승법(least squares fit through line)" 프로세스를 사용한다.
평활화 시스템은 계산된 기울기에 따라 현재의 평활화된 데이터 포인트의 값을 예측한다. 그 다음으로 시스템은 현재의 평활화된 데이터 포인트 (Sn) 에 대해 이전에 계산된 값과 현재의 평활화된 데이터 포인트에 대해 예측된 값 사이의 차이를 범위 수 (range number) (R3) 와 비교한다 (단계 818). 차이가 범위 R3 보다 크면, 그 발생이 주목될 수 있고 현재의 평활화된 데이터 포인트가 조정되지 않는다. 차이가 범위 R3 이내이면, 현재의 평활화된 데이터 포인트는, 계산된 현재의 평활화된 데이터 포인트 (Sn) 와 현재의 평활화된 데이터 포인트 (Sn-pred) 에 대한 예측값 사이의 차이에 제 3 승수 (M3) 를 곱하고 현재의 평활화된 데이터 포인트의 본래 값을 더한 것과 일치하도록 설정된다 (단계 820). 식은,
Sn = (Sn - pred - Sn) * M3 + Sn
따라서, 현재의 평활화된 데이터 포인트는 본래 평활화된 데이터 포인트와 예측된 평활화된 데이터 포인트 사이의 변형된 차이에 따라 설정되지만, (M3 가 1 보다 작으면) 어떤 양 만큼 감소된다. 예측적 평활화를 적용하는 것은 신호의 비교적 평탄한 (또는 트렌드없는) 부분 사이에서 포인트-투-포인트 노이즈 감도를 저감하는 경향이 있다. 평활화된 데이터 포인트에 대한 예측적 평활화 프로세스의 제한된 적용은, 원시 데이터에 상당한 변경이 발생하고 있을 때, 즉, 원시 데이터 신호가 비교적 평탄하지 않을 때 기울기에 기초하여 계산된 평균이 평활화된 데이터에 영향을 주지 않는 것을 보장한다.
보충 데이터 분석 엘리먼트 (206) 는, 레이 테스터 데이터, 평활화된 테스터 데이터, 또는 그 외의 필터링된 혹은 처리된 데이터를 포함하는, 테스터 데이터에 대한 임의의 적절한 분석을 수행할 수 있다. 예를 들어, 보충 데이터 분석 엘리먼트 (206) 는, 불량, 경보, 및 테일 문턱값을 검출하는 올바른 기술을 선택하기 위해 테스터 데이터를 필터링하여 분포의 성질에 대한 정보를 추출할 수 있다. 보충 데이터 분석 엘리먼트 (206) 는 출력 테스트 데이터에 대해 통계적인 프로세스 제어 (SPC) 계산 및 분석을 수행할 수 있다. 보다 구체적으로, 도 4a 내지 도 4c 를 다시 참조하면, 보충 데이터 분석 엘리먼트 (206) 는 특정한 컴포넌트, 테스트, 및/또는 섹션에 대하여 소망하는 통계를 계산하고 저장할 수 있다 (단계 430). 상기 통계는, 평균, 표준편차, 최소, 최대, 합계, 카운트 (counts), Cp, Cpk, 또는 임의의 다른 적절한 통계를 포함할 수 있는 SPC 숫자와 같은, 오퍼레이터 또는 테스트 시스템 (100) 에게 유용한 임의의 통계를 포함할 수 있다.
보충 데이터 분석 엘리먼트 (206) 는 또한 예를 들어, 섹션에 따라, 그 섹션에 대한 테스트 결과들의 조합 및/또는 이력 데이터와 같은 다른 데이터에 기초하여, 데이터의 트렌드 및 아노말리를 동적으로 그리고 자동으로 식별하기 위해 시그 네이처 분석을 적절하게 수행한다 (단계 442). 시그네이처 분석은, 테스트 데이터와 같은 임의의 적절한 데이터 또는 결함의 식별에 기초하여, 시그네이처를 식별하고 오퍼레이터에 의해 적절하게 구성된 가중 시스템을 적용한다. 시그네이처 분석은, 문제 영역 또는 웨이퍼의 다른 특성 또는 제조 프로세스에 대응할 수 있는 트렌드 및 아노말리를 누적적으로 식별할 수 있다. 시그네이처 분석은, 노이즈 피크, 파형 변동, 모드 시프트, 및 노이즈와 같은 임의의 소망하는 시그네이처에 대해 수행될 수 있다. 본 실시형태에서, 컴퓨터 (108) 는 각각의 소망하는 섹션에서 각각의 소망하는 테스트를 위해 출력 테스트 데이터에 대한 시그네이처 분석을 적절하게 수행한다.
본 실시형태에서, 시그네이처 분석 프로세스는 평활화 프로세스와 관련하여 수행될 수 있다. 평활화 프로세스가 테스터 데이터를 분석함에 따라, 데이터의 트렌드 또는 아노말리를 나타내는 분석의 결과들이, 오퍼레이터 및/또는 테스트 엔지니어에게 중요할 수 있는 데이터의 변경 또는 아웃라이어의 변경을 나타내는 것으로서 저장된다. 예를 들어, 평활화 프로세스에서 데이터의 세트들의 비교에 의해 트렌드가 표시되면, 트렌드의 발생이 주목되고 저장될 수 있다. 유사하게, 데이터 포인트가 데이터 평활화 프로세스에서 문턱값 T1 을 초과하면, 그 발생이 주목되고 나중의 분석 및/또는 출력 리포트에의 포함을 위해 저장될 수 있다. 대안으로, 평활화 프로세스가 생략될 수 있다.
예를 들어, 도 6a 내지 도 6b 를 참조하면, 시그네이처 분석 프로세스 (600) 는, 특정한 테스트 데이터 세트 및 특정한 섹션과 테스트에 대응하는 제어 한계에 대해 카운트를 최초로 계산할 수 있다 (단계 602). 그 다음으로 시그네이처 분석 프로세스는 적절한 시그네이처 분석 알고리즘을 데이터 포인트들에 적용한다 (단계 604). 각각의 소망하는 시그네이처 알고리즘에 대해 시그네이처 분석이 수행되고, 그 다음으로 각각의 테스트 및 각각의 섹션이 분석된다. 시그네이처 분석, 트렌드 결과, 및 시그네이처 결과에 의해 식별된 에러도 또한 저장된다 (단계 606). 각각의 시그네이처 알고리즘 (단계 608), 테스트 (단계 610), 및 섹션 (단계 612) 에 대해 상기 프로세스가 반복된다. 종료시, 보충 데이터 분석 엘리먼트 (206) 가 에러 (단계 614), 트렌드 결과 (단계 616), 시그네이처 결과 (단계 618), 및 임의의 다른 소망하는 데이터를 저장 시스템에 기록한다.
보충 분석에 의해 식별된 아웃라이어 및 중요한 다른 데이터와 같은, 각각의 관련 데이터 포인트의 식별시, 각각의 관련 데이터 포인트는 관련 특성을 식별하는 값과 연관될 수 있다 (단계 444). 예를 들어, 각각의 관련 컴포넌트 또는 데이터 포인트는, 상기 데이터 포인트와 관련되는 보충 분석의 결과들에 대응하는, 16진법 숫자로 적절하게 표현되는 일련의 값들과 연관될 수 있다. 각각의 값은 특정한 특성의 플래그 또는 다른 지정자 (designator) 로서 동작할 수 있다. 예를 들어, 특정한 데이터 포인트가 특정한 테스트에 완전히 실패했다면, 대응하는 16진법 값에서의 제 1 플래그가 설정될 수 있다. 특정한 데이터 포인트가 데이터의 트렌드의 출발이면, 다른 플래그가 설정될 수 있다. 16 진법에서의 다른 값은, 데이터의 트렌드의 지속기간과 같은, 트렌드와 관련되는 정보를 포함할 수 있다.
보충 데이터 분석 엘리먼트 (206) 는 또한 데이터를 분류 및 상관하도록 구성될 수 있다 (단계 446). 예를 들어, 보충 데이터 분석 엘리먼트 (206) 는, 실패, 아웃라이어, 트렌드, 및 데이터의 다른 피쳐들 (features) 을 식별하기 위해 데이터 포인트와 관련된 16진법 숫자 내의 정보를 사용할 수 있다. 보충 데이터 분석 엘리먼트 (206) 는 또한 예를 들어, 용장 또는 관련된 테스트를 잠재적으로 식별하기 위해 종래의 상관 기술을 데이터에 적절하게 적용한다.
컴퓨터 (108) 는, 아웃라이어를 자동으로 식별하고 분류하는 것과 같은, 생성된 통계 및 출력 테스트 데이터에 대한 부가적인 분석 기능을 수행할 수 있다 (단계 432). 선택된 알고리즘에 따라 각각의 관련 데이터를 분석하여 아웃라이어를 적절하게 식별한다. 특정한 알고리즘이 데이터 세트에 대해 적절하지 않으면, 보충 데이터 분석 엘리먼트 (206) 는 분석을 자동적으로 중단하고 다른 알고리즘을 선택하도록 구성될 수 있다.
보충 데이터 분석 엘리먼트 (206) 는, 선택된 값에 대한 비교에 의해 및/또는 데이터 평활화 또는 필터링 프로세스에서의 데이터의 처리에 따라와 같이, 아웃라이어를 지정하기 위해 임의의 적절한 방식으로 동작할 수 있다. 예를 들어, 본 발명의 다양한 양태에 따른 아웃라이어 식별 엘리먼트는 각각의 관련 데이터에 대하여 선택된 통계적 관계에 기초하여 아웃라이어에 대한 감도를 최초로 자동적으로 교정한다 (단계 434). 그 다음으로 이들 통계적인 관계 중 일부는, 상대적인 아웃라이어 문턱값 한계를 정의하기 위해, 문턱값, 또는 데이터 모드, 평균, 또 는 중앙값과 같은 다른 기준 포인트, 또는 그의 조합과 비교된다. 본 실시형태에서, 통계적인 관계는, 상이한 아웃라이어 진폭을 정의하기 위해, 예를 들어, 데이터의 표준편차의 1, 2, 3, 및 6 배로 스케일링된다 (단계 436). 그 다음으로 출력 테스트 데이터가 아웃라이어 문턱값 한계와 비교되어 출력 테스트 데이터를 아웃라이어로서 식별하고 분류한다 (단계 438).
보충 데이터 분석 엘리먼트 (206) 는, 이와 같은 임의의 통계 및 아웃라이어와 연관된, x-y 웨이퍼 맵 좌표와 같은, 메모리내의 최종 통계와 아웃라이어 및 식별자를 저장한다 (단계 440). 선택된 통계, 아웃라이어, 및/또는 실패는 또한 전자 메시지를 오퍼레이터에게 보내는 것, 라이트 타워 (light tower) 를 트리거 하는 것, 테스터 (102) 를 정지시키는 것, 또는 서버에게 통지하는 것과 같은, 통지 이벤트를 트리거할 수 있다.
본 실시형태에서, 보충 데이터 분석 엘리먼트 (206) 는 스케일링 엘리먼트 (210) 및 아웃라이어 분류 엘리먼트 (212) 를 포함한다. 스케일링 엘리먼트 (210) 는 출력 테스트 데이터에 따라 선택된 계수 및 다른 값들을 동적으로 스케일링하도록 구성되어 있다. 아웃라이어 분류 엘리먼트 (212) 는 선택된 알고리즘에 따라 데이터 내의 다양한 아웃라이어를 식별 및/또는 분류하도록 구성되어 있다.
보다 구체적으로, 본 실시형태의 스케일링 엘리먼트는 아웃라이어 감도를 동적으로 스케일링하기 위해 또한 노이즈 필터링 감도에 대한 평활화 계수들을 동적으로 스케일링하기 위해 다양한 통계적 관계를 적절하게 사용한다. 스케일링 계수들은 스케일링 엘리먼트에 의해 적절하게 계산되고 선택된 아웃라이어 감도값 및 평활화 계수들을 변형하는데 사용된다. 적절한 통계적 관계와 같은, 임의의 적절한 판정기준이 스케일링을 위해 사용될 수 있다. 대안으로, 스케일링은 프로세스로부터 생략될 수 있다.
아웃라이어 분류 엘리먼트 (212) 는 임의의 적절한 알고리즘에 따라 컴포넌트 (106) 내의 아웃라이어, 출력 테스트 데이터, 및/또는 분석 결과들을 식별 및/또는 분류하도록 적절하게 구성되어 있다. 또한, 아웃라이어 분류 엘리먼트 (212) 는 복수의 후보 아웃라이어 식별 알고리즘을 사용하고 또한 출력 테스트 데이터에서의 아웃라이어를 식별하는데 적합한 하나 이상의 알고리즘을 식별하도록 구성될 수 있다. 상이한 테스트는, 일 테스트에 적절한 아웃라이어 식별 알고리즘이 다른 테스트에 부적절할 수 있도록, 상이한 파퓰레이션 분포를 생성한다. 아웃라이어 분류 엘리먼트 (212) 는 상이한 데이터 파퓰레이션 사이를 차별화하고 또한 현재 데이터의 데이터 파퓰레이션 종류에 기초하여 하나 이상의 아웃라이어 식별 알고리즘을 자동적으로 선택하도록 적절하게 구성되어 있다. 자동 선택은 임의의 적절한 후보 아웃라이어 식별 알고리즘들의 세트로부터 선택할 수 있고, 또한 임의의 적절한 판정기준 및 분석에 따라 상기 선택을 수행할 수 있다.
예를 들어, 도 30 을 참조하면, 아웃라이어 분류 엘리먼트 (212) 는 아웃라이어 식별 알고리즘 선택 프로세스를 자동으로 수행하도록 구성될 수 있다. 아웃라이어 분류 엘리먼트 (212) 는 예비-처리 엔진 (3010) 및 분류 엔진 (3012) 을 적절하게 구비한다. 예비-처리 엔진 (3010) 은 관련 아웃라이어 식별 알고리즘 의 선택을 용이하게 하는 데이터를 적절하게 생성한다. 분류 엔진 (3012) 은 적절하게 하나 이상의 관련 아웃라이어 식별 알고리즘을 선택하고 또한 이에 따라 아웃라이어들을 식별한다.
출력 테스트 데이터, 예를 들어 특정한 테스트로부터 취득된 데이터는 최초로 아웃라이어 분류 엘리먼트 (212) 에 제공되어 다양한 후보 아웃라이어 식별 알고리즘과의 호환성에 대해 상기 출력 테스트 데이터가 분석된다. 상기 데이터는 출력 테스트 데이터 내의 아웃라이어들을 식별하기 위한 적절한 알고리즘을 식별하기 위해 임의의 적절한 방법으로 분석될 수 있다. 예를 들어, 본 실시형태에서, 예비-처리 엔진 (3010) 은 출력 테스트 데이터를 수신하고, 메모리에 저장된 아웃라이어 식별 알고리즘 라이브러리로부터 그들을 검색하는 것 등에 의해, 사용가능한 아웃라이어 식별 알고리즘들을 준비한다. 예비-처리 엔진 (3010) 은 사용가능한 알고리즘들 중 여러 알고리즘을 사용하여 아웃라이어에 대해 출력 테스트 데이터를 분석한다. 본 실시형태에서, 예비-처리 엔진 (3010) 은 사용자에 의해 지정된 각각의 알고리즘을 사용하여, 또는 다른 적절한 알고리즘의 선택에 의해 출력 테스트 데이터를 분석하여 모든 알고리즘에 의해 식별된 아웃라이어와 같은 예비-처리 데이터 및 최소값, 최대값, 평균, 중앙값, 표준 편차, CPK, CPM, 등과 같은 다양한 서술적인 통계를 생성한다.
알고리즘은 산업 표준 (예를 들어, IQR, 중앙값 +/- N*시그마, 등) 및/또는 소유자, 고객, 또는 사용자-정의된 아웃라이어 식별 기술에 기초될 수 있다. 아웃라이어 식별 알고리즘 라이브러리는 사용자에 의해, 예를 들어 수행되어야 할 테스트 또는 테스트들의 특성 하에서 특정한 제품에 따라, 예를 들어 아웃라이어 식별 알고리즘을 부가, 제거, 또는 편집하도록 적절하게 구성할 수 있다. 상이한 알고리즘은, 정상 (normal), 대수적 정상 (logarithmic normal), 바이모달 (bimodal), 클램프 (clamped), 또는 낮은 CPK 데이터 파퓰레이션과 같은, 상이한 통계적 파퓰레이션 종류에 대해 적절할 수 있다. 후보 아웃라이어 식별 알고리즘들은, IQR (inter-quartile range) 정상 분포, 3 시그마; IQR 정상 분포, 6 시그마; IQR 로그 정상, 3 시그마; IQR 로그 정상, 6 시그마; 바이모달 알고리즘들; 클램프 알고리즘들; 낮은 능력 알고리즘; 3-, 6-, 또는 n-시그마에 기초한 고객 알고리즘들; 및 다양한 감도를 갖는 소유자 알고리즘들과 같은, 데이터의 다양한 종류 및 분포에 대한 임의의 적절한 알고리즘들을 구비할 수 있다. 예비-처리 엔진 (3010) 은 또한 테스트 데이터를 분석하여 출력 테스트 데이터와 관련되는 특성을 생성할 수 있다. 예를 들어, 예비-처리 엔진 (3010) 은 출력 테스트 데이터의 다양한 통계적 특성을 계산할 수 있다.
예비-처리 알고리즘 결과들은 아웃라이어 검출을 위해 동적으로 선택된다. 본 실시형태에서, 아웃라이어 분류 엘리먼트 (212) 는 매우 유용한 또는 적용가능한 아웃라이어 식별 알고리즘을 식별하기 위해 테스트 결과들을 분석한다. 선택된 아웃라이어 식별 알고리즘들로부터의 데이터는 보유될 수 있지만, 나머지 데이터는 폐기된다. 예를 들어, 본 실시형태에서, 분류 엔진 (3012) 은 각각의 사용가능한 아웃라이어 식별 알고리즘에 의해 생성되는 예비-처리 분석의 결과들을 수신한다. 분류 엔진 (3012) 은 소정의 및/또는 사용자-정의된 레시피-구동된 규칙과 같은, 임의의 적절한 판정기준에 따라 예비-처리 데이터를 분석하여 예비-처리 데이터가 다양한 판정기준을 만족하는지 여부를 결정한다.
상기 규칙은, 예를 들어 최소값, 최대값, 평균, 중앙값, 표준 편차, CPK 및 CPM 과 같은 통계값을 다양한 문턱값 혹은 다른 판정기준과 비교하는 것과 같은, 통계적인 비율 혹은 값들을 사용하는, 임의의 적절한 규칙일 수 있다. 예를 들어, 분류 엔진 (3012) 은, 너무 적은 테스트 결과를 갖는 것 또는 테스트 결과들 중에서 너무 협소한 분포 혹은 바이모달 (bimodal) 분포를 갖는 것과 같은, 어떤 환경하에서 아웃라이어 검출 프로세스를 생략할 수 있다. 상기 규칙은 제품의 특정한 조건 및 테스트 환경을 수용하기 위해 예비-선택될 수 있고 및/또는 사용자에 의해 조정되거나 혹은 부가될 수 있다. 또한, 분류 엔진 (3012) 은, 예를 들어 테스트의 결과들이 특정한 분포를 갖도록 주지되어 있을 때 특정한 알고리즘을 어떤 종류의 테스트에 적용하도록 구성될 수 있다. 다른 규칙들은 특정한 테스트가 적용가능한지 여부를 결정할 수 있다. 예를 들어, 분류 엔진 (3012) 은 CPK 를 문턱값과 비교할 수 있다. CPK 가 문턱값 아래이면, IQR 정상 아웃라이어 식별 알고리즘이 사용될 수 있다. 본 실시형태에서는, 어떤 규칙을 만족시키는 알고리즘으로부터의 결과들이 아웃라이어 식별을 위해 사용된다. 그 테스테에 대한 다른 알고리즘 결과들은 적절하게 무시된다.
아웃라이어 분류 엘리먼트 (212) 는 또한 테스트 출력 테스트 결과 및 보충 데이터 분석 엘리먼트 (206) 에 의해 생성된 정보에 따라 선택 아웃라이어 및 컴포 넌트 (106) 를 식별하고 분류한다. 예를 들어, 아웃라이어 분류 엘리먼트 (212) 는, 예를 들어 사용자-정의된 판정기준; 사용자-정의된 양호한/불량한 공간적 패턴 인식; 테스터 데이터 압축을 위한 관련 데이터의 분류; 감도 자격 및 분석 의 인-시츄 테스트 셋업; 분석을 레벨링하는 테스터 수율; 부품 배치와 동적 리테스트 (retest) 를 위한 동적 웨이퍼 맵 및/또는 테스트 스트립 매핑; 또는 테스트 프로그램 최적화 분석과 관련하여, 컴포넌트 (106) 들을 중요한/주변의/양호한 부품 카테고리로 분류하도록 적절하게 구성되어 있다. 아웃라이어 분류 엘리먼트 (212) 는, 웨스턴 일렉트릭 (Western Electric) 규칙 또는 넬슨 (Nelson) 규칙과 같은, 종래의 SPC 제어 규칙에 따라 데이터를 분류하여 데이터를 특징화할 수 있다.
아웃라이어 분류 엘리먼트 (212) 는 분류 한계 계산 방법들의 선택된 세트를 사용하여 데이터를 적절하게 분류한다. 임의의 적절한 분류 방법들이 오퍼레이터의 필요에 따라 데이터를 특징화하는데 사용될 수 있다. 본 발명의 아웃라이어 분류 엘리먼트 (212) 는, 예를 들어, 데이터 평균, 모드, 및/또는 중앙값과 같은 문턱값으로부터 통계적으로 1, 2, 3, 및 6 스케일링된 표준 편차에 대응하는 값들과 같은, 선택 문턱값과 출력 테스트 데이터를 비교함으로써 아웃라이어들을 분류한다. 이러한 방법에서의 아웃라이어의 식별은 데이터 진폭 및 상대적인 노이즈에 관계없이 임의의 테스트에 대해 임의의 식별된 아웃라이어를 정규화하는 경향이 있다.
아웃라이어 분류 엘리먼트 (212) 는 정규화된 아웃라이어 및/또는 원시 데이 터 포인트를 사용자-정의된 규칙들에 기초하여 분석하고 상관하며, 상기 사용자-정의된 규칙들은 부품 및/또는 패턴 분류에 대한 임의의 적절한 기술을 구비할 수 있다. 보충 데이터 분석 엘리먼트 (206) 는 보충 데이터 분석 엘리먼트 (206) 에 의해 생성된 출력 테스트 데이터 및 정보에 대한 부가적인 분석을 수행하도록 구성될 수 있다. 예를 들어, 보충 데이터 분석 엘리먼트 (206) 는, 실패, 아웃라이어, 또는 특정한 분류에서의 아웃라이어의 총 개수 또는 평균 개수를 하나 이상의 문턱값과 비교하는 것 등에 의해, 실패 또는 아웃라이어의 발생율이 높은 테스트들을 식별할 수 있다.
보충 데이터 분석 엘리먼트 (206) 는 또한 예를 들어, 누적 카운트, 아웃라이어들 비교하고 및/또는 웨이퍼들 또는 다른 데이터 세트들 사이에서 아웃라이어를 상관함으로써, 유사한 또는 유사하지 않은 트렌드를 식별하기 위해 상이한 테스트들로부터의 데이터를 상관하도록 구성될 수 있다. 보충 데이터 분석 엘리먼트 (206) 는 또한 웨이퍼 상의 잠재적인 중요한 및/또는 주변의 및/또는 양호한 부품을 식별하고 분류하기 위해 상이한 테스트들로부터의 데이터를 분석하고 상관할 수 있다. 보충 데이터 분석 엘리먼트 (206) 는 또한 동적 테스트 시간 저감을 목적으로 일련의 웨이퍼 상의 사용자-정의된 양호한 부품 패턴 및/또는 불량한 부품 패턴을 식별하기 위해 상이한 테스트들로부터의 데이터를 분석하고 상관할 수 있다.
보충 데이터 분석 엘리먼트 (206) 는 또한 테스트 데이터를 메모리 내부에 동적으로 압축할 목적으로 사용자-정의된 관련 원시 데이터를 식별하기 위해 상이 한 테스트들로부터의 데이터를 분석하고 상관하도록 적절하게 구성되어 있다. 보충 데이터 분석 엘리먼트 (206) 는 또한 테스트 노드 인-시츄 셋업 자격 및 감도 분석을 위해 통계적인 아노말리들 및 테스트 데이터 결과들을 분석하고 상관할 수 있다. 또한, 보충 데이터 분석 엘리먼트 (206) 는 예를 들어, 특정한 테스트 노드가 부적절하게 교정될 수 있는지 여부를 식별하거나 그렇지 않으면 부적절한 결과들을 생성함으로써 테스트 노드 수율 레벨링 분석에 기여할 수 있다. 보충 데이터 분석 엘리먼트 (206) 는 또한 상관된 결과들 및 아웃라이어 분석을 사용하여 용장 테스트들의 자동 식별을 포함하지만, 이것으로 제한되지 않고 또한 분석에서의 사용을 위한 부가적인 데이터를 제공하는 테스트 프로그램 최적화의 목적으로 데이터를 분석하고 상관할 수 있다. 보충 데이터 분석 엘리먼트 (206) 는 또한 예를 들어 규칙적으로 실패된 또는 거의 실패된 테스트들, 거의 결코-실패되지 않은 테스트들, 및/또는 매우 낮은 Cpk 를 나타내는 테스트들을 식별함으로써, 중요한 테스트들을 식별하도록 적절하게 구성되어 있다.
보충 데이터 분석은 또한 거의 혹은 결코 실패되지 않거나 또는 아웃라이어들이 결코 검출되지 않은 테스트들과 같은, 테스트 샘플링 후보들의 식별을 제공할 수 있다. 보충 데이터 분석 엘리먼트 (206) 는 또한 식별된 아웃라이어들의 분석과 상관 및/또는 다른 통계적 아노말리, 실패의 개수, 중요한 테스트들, 최장/최단 테스트들, 또는 테스트의 실패와 연관된 기본적인 기능성 이슈들과 결합된, 종래의 상관 기술과 같은, 상관 기술에 기초하여 최상의 순서 테스트 시퀀스의 식별을 제공할 수 있다.
보충 데이터 분석은 또한 레시피 구성 파일에서 감도 파라미터들에 의해 정의된 대로 중요한, 주변의, 그리고 양호한 부품의 식별을 제공할 수 있다. 부품 식별은 신뢰성 위험을 나타낼 수 있는 부품을 패키징 및/또는 선적하기 전에 배치/분류를 제공할 수 있고 및/또는 웨이퍼 탐지 동안 불량한 부품 및 양호한 부품의 동적 탐지 매핑을 통한 테스트 시간 저감을 제공할 수 있다. 이들 부품의 식별은, 예를 들어 동적으로 생성된 프로버 제어 맵 (동적 매핑을 위한), 오프라인 잉킹 (inking) 장비를 위해 사용되는 웨이퍼 맵, 최종 테스트에서 스트립 테스팅을 위한 테스트 스트립 맵, 결과 파일, 및/또는 데이터베이스 결과 테이블 상에 양호한 부품 및 불량한 부품으로서, 임의의 적절한 방법으로 표현되고 출력될 수 있다.
셀 컨트롤러 레벨에서의 보충 데이터 분석은 탐지에서의 품질 제어를 증가시키는 경향이 있고, 따라서 최종 테스트 수율을 증가시킨다. 또한, 품질 이슈들은 제품 실행 시에, 늦지 않게, 식별될 수 있다. 또한, 보충 데이터 분석 및 시그네이처 분석은 아웃라이어를 식별함으로써, 테스트 엔지니어 혹은 다른 사람 뿐만 아니라 다운스트림 및 오프라인 분석 도구에게 제공되는 데이터의 품질을 향상시키는 경향이 있다. 예를 들어, 컴퓨터 (108) 는 제조 프로세스에서의 결함을 나타내는 시그네이처 분석을 갖는 컴포넌트들의 그룹을 식별하는 웨이퍼 맵 상의 정보를 포함할 수 있다. 따라서, 시그네이처 분석 시스템은 종래의 테스트 분석을 사용하여 검출될 수 없는 잠재적으로 결함있는 제품을 식별할 수 있다.
이제 도 10 을 참조하면, 반도체 디바이스들의 어레이가 웨이퍼 상에 위치되어 있다. 이 웨이퍼에 있어서, 반도체 디바이스에서의 저항기 컴포넌트의 일반 적인 고유 저항은 예를 들어, 재료의 불균일 증착 또는 웨이퍼의 처리에 의해, 웨이퍼에 걸쳐 변한다. 그러나, 임의의 특정한 컴포넌트의 저항은 테스트의 제어 한계 내에 있을 수 있다. 예를 들어, 특정한 저항기 컴포넌트의 목표 저항은 1000Ω +/- 10 % 일 수 있다. 웨이퍼의 단부 근방에서, 대부분의 저항기의 저항은 900Ω 과 1100Ω 의 정상 분포 범위에 근접하고 이를 초과하지 않는다 (도 11 참조).
웨이퍼 상의 컴포넌트들은, 예를 들어 제조 프로세스에서의 오염 또는 불완전에 의한 결함을 포함할 수 있다. 결함은 웨이퍼의 낮은-고유 저항 에지 (edge) 근방에 위치된 저항기들의 저항을 1080Ω 까지 증가시킨다. 상기 저항은 웨이퍼의 중앙 근방의 디바이스에 대해 기대된 1000Ω 을 넘지만, 여전히 정상 분포 범위 내에 있다.
도 12a 내지 도 12b 를 참조하면, 각각의 컴포넌트에 대한 원시 테스트 데이터가 플롯될 수 있다. 테스트 데이터는, 디바이스들의 행 또는 열을 가로지르는 프로버 인덱스들로서 웨이퍼 상의 컴포넌트들 중에서 고유 저항을 변화시키는 것에 의한, 상당한 변동을 나타낸다. 결함에 의해 영향을 받은 디바이스들은 테스트 데이터의 가시적인 검사 또는 테스트 한계와의 비교에 기초하여 용이하게 식별될 수 없다.
테스트 데이터가 본 발명의 다양한 양태에 따라 처리되면, 결함에 의해 영향을 받은 디바이스들은 테스트 데이터에서의 아웃라이어와 연관될 수 있다. 테스트 데이터는 어떤 범위의 값에 주로 한정되어 있다. 그러나, 결함과 연관된 데이터는 주위 컴포넌트들에 대한 데이터와 같지 않다. 따라서, 데이터는 결함이 없는 주위 디바이스들과 연관된 값들로부터의 일탈을 보인다. 아웃라이어 분류 엘리먼트 (212) 는 주위 데이터로부터 아웃라이어 데이터의 일탈의 크기에 따라 아웃라이어들을 식별하고 분류할 수 있다.
출력 엘리먼트 (208) 는 테스트 시스템 (100) 으로부터, 적절하게 실행 시간에, 데이터를 수집하고 출력 리포트를 프린터, 데이터베이스, 오퍼레이터 인터페이스, 또는 다른 소망하는 목적지로 제공한다. 출력 리포트는 사용을 위해 또는 후속 분석을 위해 그래프, 수치, 텍스트, 프린트 또는 전자 형태와 같은 임의의 형태로 표현될 수 있다. 출력 엘리먼트 (208) 는 테스터 (102) 로부터의 선택 출력 테스트 데이터 및 보충 데이터 분석의 결과들을 포함하는 임의의 선택된 내용을 제공할 수 있다.
본 실시형태에서, 출력 엘리먼트 (208) 는 동적 데이터로그를 통한 제품 실행 시간에서의 보충 데이터 뿐만 아니라 오퍼레이터에 의해 명시된 출력 테스트 데이터로부터의 데이터의 선택을 적절하게 제공한다. 도 7 을 참조하면, 출력 엘리먼트 (208) 는 최초로 데이터베이스 (114) 로부터 샘플링 범위를 판독한다 (단계 702). 샘플링 범위는 출력 리포트에 포함되어야 할 소정의 정보를 식별한다. 본 실시형태에서, 샘플링 범위는 재검토를 위해 오퍼레이터에 의해 선택된 웨이퍼 상의 컴포넌트 (106) 들을 식별한다. 소정의 컴포넌트들이 다양한 환경적 구역, 방사방향 구역, 랜덤 컴포넌트, 또는 개별적인 스테퍼 필드에 대한 데이터와 같은, 임의의 판정기준에 따라 선택될 수 있다. 샘플링 범위는 웨이퍼 상의 소 정의 컴포넌트들의 위치 또는 배치로 (in a batch) 사용가능한 컴포넌트들의 식별된 부분에 대응하는 x-y 좌표들의 세트를 구비한다.
출력 엘리먼트 (208) 는 또한 동적 데이터로그에서, 아웃라이어와 관련되는 정보, 또는 보충 데이터 분석 엘리먼트에 의해 생성된 또는 식별된 다른 정보를 포함하도록 구성될 수 있다 (단계 704). 그렇게 구성되면, 각각의 아웃라이어에 대한, x-y 좌표와 같은, 식별자도 마찬가지로 조립된다. 오퍼레이터-선택된 컴포넌트들 및 아웃라이어들에 대한 좌표들이 동적 데이터로그 내부에 병합되고 (단계 706), 이것은 현재의 실시형태에서 네이티브 (native) 테스터 데이터 출력 포맷의 포맷이다. 얻어지는 데이터의 동적 데이터로그 내부에의 병합은, 본래 데이터의 요약 통계값으로의 압축 및 중요한 원시 데이터 값들의 보다 작은 네이티브 테스터 데이터 파일로의 압축을 용이하게 하고, 후속의 고객 분석을 위한 데이터 보전에 손상을 주지 않고 데이터 저장 요건을 감소시킨다. 출력 엘리먼트 (208) 는, 동적 데이터로그의 병합된 x-y 좌표 어레이로의 각각의 진입을 위해, 원시 테스트 데이터 및 보충 데이터 분석 엘리먼트 (206) 로부터의 하나 이상의 데이터와 같은, 선택 정보를 검색한다 (단계 708).
그 다음으로 검색된 정보는 적절한 출력 리포트에 적절하게 저장된다 (단계 710). 상기 리포트는 적절한 포맷 또는 방법으로 준비될 수 있다. 본 실시형태에서, 출력 리포트는 웨이퍼 상의 선택된 컴포넌트들 및 그들의 분류를 표시하는 웨이퍼 맵을 갖는 동적 데이터로그를 적절하게 포함한다. 또한, 출력 엘리먼트 (208) 는 아웃라이어들에 대응하는 웨이퍼 맵 데이터를 예비 선택된 컴포넌트 들의 웨이퍼 맵 상에 중첩할 수 있다. 부가적으로, 출력 엘리먼트는 샘플링된 출력으로서 웨이퍼 맵 또는 배치로부터의 아웃라이어들만을 포함할 수 있다. 출력 리포트는 또한 아웃라이어들의 발생 및 데이터의 상관을 하일라이트하기 위해 일련의 데이터 그래프 표현을 포함할 수 있다. 출력 리포트는 추가로 추천 및 추천을 위한 지지 데이터를 포함할 수 있다. 예를 들어, 2 개의 테스트가 동일한 실패들 및/또는 아웃라이어들의 세트를 생성하는 것 같으면, 출력 리포트는 상기 테스트들이 중복이다라는 제안을 포함할 수 있고 테스트들 중 하나가 테스트 프로그램으로부터 생략됨을 추천할 수 있다. 추천은 테스트들의 동일한 결과를 도시하는 데이터의 그래프 표현을 포함할 수 있다.
출력 리포트는 또한 예를 들어, 로컬 워크스테이션으로의 출력, 서버로의 전송, 알람의 활성과 같은, 임의의 적절한 방법 또는 임의의 다른 적절한 방법으로 제공될 수 있다 (단계 712). 일 실시형태에서, 출력 리포트는 출력이 시스템의 동작에 영향을 주지 않거나 또는 메인 서버로 전달되지 않도록 오프-라인으로 제공될 수 있다. 이러한 구성에 있어서, 컴퓨터 (108) 는 데이터 파일들을 복사하고, 분석을 수행하고, 또한 예를 들어 논증 또는 검증 목적으로 결과들을 생성한다.
각각의 웨이퍼에 대한 데이터의 보충 분석에 부가하여, 본 발명의 다양한 양태에 따른 테스팅 시스템 (100) 은 또한 데이터의 복합 분석을 수행하고 부가적인 데이터를 생성하여 복수의 웨이퍼 및/또는 로트를 사용하는 것 등에 의해, 복수의 데이터세트에 대한 패턴 및 트렌드를 식별할 수 있다. 복합 분석은 복수의 데 이터세트 중에서, 패턴 또는 불규칙성과 같은, 선택된 특성을 식별하기 위해 적절하게 수행된다. 예를 들어, 복수의 데이터세트는 2 이상의 데이터세트에 대해 패턴, 트렌드, 또는 불규칙성을 나타낼 수 있는 공통 특성에 대해 분석될 수 있다.
복합 분석은 데이터세트들 중에서 공통 특성에 대해 테스트 데이터를 분석하기 위한 임의의 적절한 분석을 구비할 수 있고, 또한 임의의 적절한 방법으로 실행될 수 있다. 예를 들어, 본 발명의 테스팅 시스템 (100) 에 있어서, 복합 분석 엘리먼트 (214) 는 복수의 웨이퍼 및/또는 로트로부터 도출되는 데이터의 복합 분석을 수행한다. 각각의 웨이퍼, 로트, 또는 다른 그룹핑 (grouping) 에 대한 테스트 데이터는 데이터세트를 형성한다. 복합 분석 엘리먼트 (214) 는 컴퓨터 (108) 상에서 동작하는 소프트웨어 모듈로서 적절하게 구현된다. 복합 분석 엘리먼트 (214) 는, 그러나, 하드웨어 솔루션 또는 조합된 하드웨어와 소프트웨어 솔루션과 같은, 임의의 적절한 구성으로 구현될 수 있다. 또한, 복합 분석 엘리먼트 (214) 는 테스트 시스템 컴퓨터 (108) 또는, 독립적인 워크스테이션 혹은 제 3 자의 별도의 컴퓨터 시스템과 같은, 원격 컴퓨터 상에서 실행될 수 있다. 복합 분석은 하나 이상의 완전한 데이터세트의 생성을 뒤이어 실행 시에 수행될 수 있고, 또는 복합 분석 이전에 발생된 이력 데이터를 포함하는 데이터의 수집 시에 수행될 수 있다.
복합 분석은 2 이상의 데이터세트로부터의 임의의 데이터를 사용할 수 있다. 복합 분석은, 분류 엔진을 통해 복수의 구성을 실행하는 것 등에 의해, 각각의 데이터세트에 대해, 원시 데이터, 필터링된 데이터, 및/또는 평활화된 데이터를 포함 하는 입력 데이터의 여러 세트를 수신할 수 있다. 일단 수신되면, 입력 데이터는 일련의 사용자-정의된 규칙을 사용하여 적절하게 필터링되며, 상기 사용자-정의된 규칙은 수학적 표현, 공식, 또는 임의의 다른 판정기준으로서 정의될 수 있다. 그 다음으로 데이터는 데이터의 패턴 또는 불규칙성을 식별하기 위해 분석된다. 복합 데이터는 또한 원시 데이터 혹은 분석된 데이터와 같은, 다른 데이터에 병합되어 향상된 전체 데이터세트가 생성될 수 있다. 그 다음으로 복합 분석 엘리먼트 (214) 는 테스트 프로세스를 향상시키는데 사용될 수 있는 적절한 출력 리포트를 제공할 수 있다. 예를 들어, 출력 리포트는 제조 프로세스 및/또는 테스팅 프로세스에서의 이슈들과 관련되는 정보를 제공할 수 있다.
본 발명의 시스템에 있어서, 복합 분석 엘리먼트 (214) 는 중요한 패턴 또는 트렌드를 도시하는 복합 맵을 만들고 확립하기 위해 사용자 표현 혹은 다른 적절한 프로세스 및 공간 분석과 관련하여 웨이퍼 데이터의 세트를 분석한다. 복합 분석은 웨이퍼들의 세트에 대해 복수의 사용자 구성을 실행함으로써 웨이퍼들의 임의의 일 세트에 대해 여러 상이한 데이터세트 및/또는 복합 맵을 수신할 수 있다.
도 13 을 참조하면, 반도체 테스팅 환경에서 동작하는 본 실시형태에 있어서, 복합 분석 엘리먼트 (214) 는 복수의 웨이퍼 또는 로트로부터의 데이터와 같은, 데이터를 복수의 데이터세트로부터 수신한다 (1310). 상기 데이터는 원시 데이터, 필터링된 데이터, 평활화된 데이터, 이전의 테스트 실행으로부터의 이력 데이터, 또는 실행 시에 테스터로부터 수신된 데이터와 같은, 분석을 위한 임의의 적절한 데이터를 구비할 수 있다. 본 실시형태에서, 복합 분석 엘리먼트 (214) 는 실행 시에 원시 데이터 및 필터링된 데이터를 수신한다. 필터링된 데이터는 평활화된 데이터 및/또는 시그네이처 분석 데이터와 같은, 분석을 위한 임의의 적절한 데이터를 구비할 수 있다. 본 실시형태에서, 복합 분석 엘리먼트 (214) 는 필터링된 데이터, 평활화된 데이터, 실패의 식별, 아웃라이어의 식별, 시그네이처 분석 데이터, 및/또는 다른 데이터와 같은, 원시 데이터세트 및 보충 데이터 분석 엘리먼트 (206) 에 의해 생성된 보충 데이터를 수신한다.
원시 데이터와 보충 데이터를 수신한 후, 복합 분석 엘리먼트 (214) 는 분석용 복합 데이터를 생성한다 (1312). 복합 데이터는 2 이상의 데이터세트로부터의 정보를 나타내는 데이터를 구비한다. 예를 들어, 복합 데이터는 상이한 웨이퍼들 상의 동일한 또는 유사한 위치에서 또는 상이한 로트에서 컴포넌트들에 대한 데이터와 같은, 상이한 데이터세트에서 대응하는 테스트 데이터를 위해 발생하는 특정한 테스트에 대한 실패의 개수 및/또는 아웃라이어의 개수와 관련되는 요약 정보를 구비할 수 있다. 복합 데이터는, 그러나, 아웃라이어 또는 실패가 집중되는 영역과 관련되는 데이터, 상당한 개수의 아웃라이어 또는 실패를 생성하는 웨이퍼 위치, 또는 2 이상의 데이터세트로부터 도출되는 다른 데이터와 같은, 임의의 적절한 데이터를 구비할 수 있다.
데이터세트들 중에서 패턴들 및 불규칙성을 식별하기 위해 복합 데이터가 다양한 데이터세트로부터의 데이터를 비교함으로써 적절하게 생성된다. 예를 들어, 복합 데이터는 임의의 적절한 알고리즘 또는 프로세스에 따라 복합 데이터를 제공하고 분석하도록 구성된 분석 엔진에 의해 생성될 수 있다. 본 실시형태에 서, 복합 분석 엘리먼트 (214) 는 데이터세트에 기초하여 하나 이상의 복합 마스크를 생성하도록 구성된 근접 (proximity) 엔진을 포함한다. 복합 분석 엘리먼트 (214) 는 또한 예를 들어, 복합 마스크 데이터에서의 정보를 정제하거나 또는 강조하기 위해, 복합 마스크 데이터를 처리할 수 있다.
본 실시형태에서, 근접 엔진은, 파일, 메모리 구조, 데이터, 또는 다른 데이터 저장을 통해, 복수의 데이터세트를 수신하고, 이들 데이터세트에 대한 공간적인 분석을 수행하고 (1320), 또한 복합 마스크의 형태로 그 결과를 출력한다. 근접 엔진은 임의의 적절한 방법을 사용하는 임의의 적절한 프로세스 또는 기술에 따라, 전체 데이터세트에 대한 복합 이미지와 같은, 복합 마스크 데이터를 생성할 수 있다. 특히, 근접 엔진은 복합 데이터와 본래 데이터를 적절하게 병합하고 (1322), 또한 사용자 또는 다른 시스템에 의한 사용을 위해 출력 리포트를 생성한다 (1324). 근접 엔진은 또한 데이터세트의 특성을 반복하는 데이터를 분석하거나 또는 선택된 판정기준과 정합하지 않는 데이터를 제거하는, 공간적인 분석 등에 의해, 분석용 복합 마스크 데이터를 정제 또는 향상시키도록 구성될 수 있다.
본 실시형태에서, 근접 엔진은 복합 마스트 생성을 수행하고 (1312), 또한 배제 영역을 결정하고 (1314) 근접 가중 (proximity weighting) 을 수행하고 (116), 또한 클러스터를 검출 및 필터링하도록 (1318) 구성될 수 있다. 근접 엔진은 또한 사용자-정의된 규칙들, 판정기준, 문턱값, 및 우선권을 사용하여 근접 조정 또는 다른 동작을 수행할 수 있다. 분석의 결과는 주어진 데이터세트의 도처에서 발견되는 공간적인 트렌드 및/또는 패턴을 도시하는 입력된 데이터세트들 의 복합 마스크이다. 근접 엔진은 메모리 구조, 데이터베이스, 다른 애플리케이션, 및 텍스트 파일 또는 XML 파일과 같은 파일-기반 데이터 저장을 포함하는, 임의의 적절한 출력 방법 또는 매체를 사용할 수 있으며, 상기 텍스트 파일 또는 XML 파일로 복합 마스크를 출력한다.
근접 엔진은 누적 제곱 방법, N-포인트 공식, 웨스턴 일렉트리컬 규칙, 또는 다른 사용자 정의된 판정기준 또는 규칙을 포함하는, 복합 마스크 데이터를 생성하기 위해 임의의 적절한 기술을 사용할 수 있다. 본 실시형태에서, 복합 마스크 데이터는 복수의 데이터세트의 전체 포위하는 또는 "스택된" 조망 (view) 으로서 고려될 수 있다. 본 발명의 근접 엔진은 복수의 데이터세트로부터 대응하는 데이터에 대한 데이터를 수집 및 분석하여 대응하는 데이터의 특정한 세트에 대한 데이터에서의 관계 또는 공통적인 특성을 식별할 수 있다. 분석된 데이터는 원시 데이터, 필터링된 데이터, 평활화된 데이터, 시그네이처 분석 데이터, 및/또는 임의의 다른 적절한 데이터를 포함하는, 임의의 적절한 데이터일 수 있다.
본 실시형태에서, 근접 엔진은 복수의 웨이퍼 상의 대응하는 위치들에 대한 데이터를 분석한다. 도 14 를 참조하면, 각각의 웨이퍼는 x, y 좌표 시스템과 같은, 적절한 식별 시스템을 사용하여 지정될 수 있는 대응하는 위치에서의 디바이스들을 갖는다. 따라서, 근접 엔진은 도 14 에 도시된 바와 같은 위치 (10, 12) 와 같은, 대응하는 위치 또는 데이터 포인트에서 디바이스들에 대한 데이터를 비교하여 데이터의 복합 세트에서의 패턴을 식별한다.
본 실시형태의 근접 엔진은 누적 제곱 방법 및 공식-기반 방법과 같은, 복합 마스크 데이터를 생성하기 위한 2 개의 상이한 기술 중 적어도 하나를 사용한다. 근접 엔진은 데이터와 선택된 또는 계산된 문턱값을 비교함으로써 관심있는 데이터를 적절하게 식별한다. 일 실시형태에서, 근접 엔진은 다양한 웨이퍼 및/또는 로트 상의 대응하는 위치들에서의 데이터 포인트들과 문턱값들을 비교하여 데이터가 데이터세트들을 가로질러 잠재적인 패턴을 표시하는지 여부를 결정한다. 근접 엔진은 각각의 데이터와 하나 이상의 문턱값을 비교하고, 상기 문턱값 각각은 소정값, 현재의 데이터에 기초하여 계산된 값, 또는 이력 데이터로부터 계산된 값과 같이, 임의의 적절한 방법으로 선택될 수 있다.
예를 들어, 본 발명의 근접 엔진의 제 1 실시형태는 데이터와 문턱값을 비교하기 위해 누적 제곱 방법을 실행한다. 특히, 도 15 를 참조하면, 근접 엔진은 특정한 로트에서 특정한 웨이퍼 상의 특정한 디바이스에 대한 특정한 테스트의 결과와 같은, 제 1 데이터 포인트 (1512) 를 제 1 데이터세트 (1510) 에서 적절하게 선택하고, 또한 상기 데이터 포인트 값을 카운트 문턱값 (1514) 과 비교한다. 상기 문턱값은 임의의 적절한 값, 및 범위, 하한, 상한, 등과 같은 임의의 종류의 문턱값을 포함할 수 있고, 또한 임의의 적절한 판정기준에 따라 선택될 수 있다. 데이터 포인트 값이 문턱값을 초과하면, 즉, 문턱값 보다 낮고, 문턱값 보다 높고, 문탁값 한계 이내이고, 또는 특정한 한정 관계가 무엇이든, 절대 카운터가 증가되어 (1516) 데이터 포인트에 대응하는 요약값이 생성된다.
데이터 포인트 값은 또한 누적 문턱값과 비교된다 (1518). 데이터 포인트값이 누적 문턱값을 초과하면, 데이터 포인트 값이 데이터 포인트에 대한 누적값 (1520) 에 부가되어 데이터 포이트에 대한 다른 요약값이 생성된다. 근접 엔진은 로트 내의 또는 다른 선택된 웨이퍼들의 그룹내의 모든 웨이퍼와 같이, 모든 관련 데이터세트 (1524) 에서의 모든 대응하는 데이터 포인트 (1522) 에 대한 프로세스를 반복한다. 임의의 다른 소망하는 테스트 또는 비교가 마찬가지로 데이터 포인트 및 데이터세트에 대해 수행될 수 있다.
파퓰레이션내의 모든 관련 데이터 포인트가 처리되었으면, 근접 엔진은 특정한 문턱값을 초과하는 데이터와 같은, 선택된 데이터에 기초하여 값들을 계산할 수 있다. 예를 들어, 근접 엔진은 관련 데이터 포인트 (1526) 에 대한 누적값에 기초하여 대응하는 데이터의 각각의 세트에 대한 전체 누적 문턱값을 계산할 수 있다. 전체 누적 문턱값은, 문턱값에 대한 관계를 포함하는 대응하는 데이터 포인트들의 세트를 식별하기 위해서와 같이, 소망하는 또는 관련된 특성을 식별하기 위해 임의의 적절한 방법으로 계산될 수 있다. 예를 들어, 전체 누적 문턱값 (한계값) 은 다음의 식에 따라 정의될 수 있다:
Figure 112006064521288-PCT00001
여기에서 평균값은 데이터의 복합 파퓰레이션에서의 데이터의 평균값이고, 스케일 인자는 누적 제곱 방법의 감도를 조정하기 위해 선택되는 값 또는 변수이고, 표준편차는 복합 파퓰레이션의 데이터에서의 데이터 포인트 값들의 표준편차이고, 또한 (최대값 - 최소값) 은 복합 파퓰레이션의 데이터에서의 최고의 데이터 포인트값과 최저의 데이터 포인트값의 차이이다. 일반적으로, 전체 누적 문턱값 은 특정한 데이터세트에서의 관심있는 데이터 포인트들을 식별하기 위한 비교값을 확립하기 위해 정의된다.
전체 누적 문턱값을 계산할 때, 근접 엔진은, 예를 들어 카운트와 누적값을 문턱값과 비교함으로써 복합 데이터로의 포함으로 각각의 데이터 포인트를 지정할지 여부를 결정한다. 본 실시형태의 근접 엔진은 제 1 데이터 포인트 (1528) 를 적절하게 선택하고, 데이터 포인트에 대한 총 누적값 (1530) 을 제곱하고, 또한 데이터 포인트에 대해 제곱된 누적값을 동적으로 생성된 전체 누적 문턱값 (1532) 과 비교한다. 제곱된 누적값이 전체 누적 문턱값을 초과하면, 데이터 포인트는 복합 데이터로의 포함으로 지정된다 (1534).
데이터 포인트에 대한 절대 카운트값은 또한 예를 들어, 파퓰레이션에서의 웨이퍼의 개수의 백분율 또는 다른 데이터세트에 기초하여 예비-선택된 문턱값 혹은 계산된 문턱값과 같은, 전체 카운트 문턱값 (1536) 과 비교될 수 있다. 절대 카운트 값이 전체 카운트 문턱값을 초과하면, 데이터 포인트는 다시 복합 데이터로의 포함으로 지정될 수 있다 (1538). 각각의 데이터 포인트에 대해 프로세스가 적절하게 수행된다 (1540).
근접 엔진은 또한 다른 부가적인 또는 대안 기술을 사용하여 복합 마스크 데이터를 생성할 수 있다. 본 발명의 근접 엔진은 또한 복합 마스크 데이터를 생성하기 위한 공식-기반 시스템을 사용할 수 있다. 본 발명의 다양한 양태에 따른 공식-기반 시스템은 복합 웨이퍼 마스크를 정의하기 위해 변수들 및 공식들, 또는 표현들을 사용한다.
예를 들어, 예시적인 공식-기반 시스템에 있어서, 하나 이상의 변수는 임의의 적절한 판정기준에 따라 사용자-정의될 수 있다. 변수들은 관련 그룹내의 각각의 데이터 포인트에 대해 적절하게 정의되어 있다. 예를 들어, 근접 엔진은, 예를 들어 데이터 포인트에 대한 값을 계산하거나 또는 특정한 결과를 제공하는 계산의 횟수를 카운트하기 위해, 특정한 데이터 포인트에 대해 데이터 파퓰레이션에서의 각각의 값을 분석할 수 있다. 변수들은 각각의 정의된 변수를 위한 데이터세트에서의 각각의 데이터 포인트에 대해 계산될 수 있다.
변수를 계산한 후, 데이터 포인트들은 데이터 포인트가 사용자-정의된 판정기준을 충족하는지 여부를 결정하기 위해 등과 같이, 분석될 수 있다. 예를 들어, 사용자-정의된 공식은 계산된 변수값을 사용하여 분해될 수 있고, 또한 공식이 특정한 값 또는 값들의 범위와 일치하면, 데이터 포인트는 복합 마스크 데이터의 포함으로 지정될 수 있다.
따라서, 근접 엔진은 임의의 저절한 프로세스 또는 기술에 따라 복합 마스크 데이터 세트를 생성할 수 있다. 얻어지는 복합 마스크 데이터는 각각의 데이터 포인트에 대해 데이터 파퓰레이션의 결과들에 대응하는 데이터 세트를 포함한다. 결과적으로, 데이터 포인트에 대한 특성이 복수의 데이터세트에 대해 식별될 수 있다. 예를 들어, 본 실시형태에서, 복합 마스크 데이터는 넓게 변화할 수 있는 테스트 결과들 또는 높은 실패율과 같은, 복수의 웨이퍼에 대해 특성을 공유하는 특정한 디바이스 위치들을 도시할 수 있다. 이와 같은 정보는 제조 프로세스 또는 설계 프로세스에서의 이슈 또는 특성을 나타낼 수 있고, 또한 제조 및 테스트 를 향상시키고 제어하는데 사용될 수 있다.
복합 마스크 데이터는 또한 부가적인 정보를 생성하기 위해 분석될 수 있다. 예를 들어, 복합 마스크 데이터는, 비교적 고립된 데이터 포인트들로부터 클루터 (clutter) 를 저감하기 위해 필터링하는 것, 특정한 특성을 갖는 영역들을 향상 또는 정제하는 것, 또는, 주지된 특성을 갖는 데이터를 필터링하는 것과 같이, 데이터세트의 공간적인 트렌드 및/또는 패턴을 도시하고 및/또는 중요한 패턴을 식별 혹은 필터링하기 위해 분석될 수 있다. 본 실시형태의 복합 마스크 데이터는, 예를 들어, 복합 마스크 데이터 및 상기 복합 마스크 데이터의 완전한 패턴을 평활화하기 위해 공간 분석될 수 있다. 선택된 배제 구역은, 복합 마스크 데이터가 제거되고, 무시되고, 향상되고, 보다 낮게 중요시되고, 또는 다른 복합 마스크 데이터와 구별될 수 있도록 특별한 취급을 받을 수 있다. 클러스터 검출 프로세스는 또한 비교적 중요하지 않거나 또는 신뢰할 수 없는 데이터 포인트 클러스터의 중요성을 제거하거나 또는 저평가할 수 있다.
본 실시형태에서, 근접 엔진은 복합 마스크 데이터에서의 특정하게 지정된 구역을 식별하여 상기 지정된 구역으로부터의 데이터 포인트들이 특정하게 지정된 처리를 받거나 또는 다양한 분석에서 무시되도록 구성될 수 있다. 예를 들어, 도 16 을 참조하면, 근접 엔진은 개별적인 디바이스들, 디바이스들의 그룹, 또는 웨이퍼의 주변 둘레의 디바이스들의 밴드와 같이, 웨이퍼 상의 선택된 위치에 배제 구역을 확립할 수 있다. 배제 구역은 근접 분석 및/또는 가중에 있어서 어떤 데이터 포인트가 다른 데이터 포인트에 영향을 미치는 것을 배제하는 메카니즘을 제공할 수 있다. 데이터 포인트들은 후속 프로세스들의 범위를 벗어나 있는 값들을 할당하는 것 등에 의한, 임의의 적절한 방법으로 배제된 것으로 지정된다.
관련 구역은 임의의 적절한 방법으로 식별될 수 있다. 예를 들어, 배제된 데이터 포인트들은 디바이스 식별의 파일 리스팅 또는 x, y 좌표와 같은 좌표를 사용하고, 주변 둘레의 특정한 밴드폭을 선택하거나, 또는 복합 데이터 내의 관련 구역을 정의하기 위한 다른 적절한 프로세스에 의해 지정될 수 있다. 본 실시형태에서, 근접 엔진이 데이터 세트의 에지의 사용자 정의된 범위 내의 데이터 포인트를 무시하거나 그렇지 않으면 특별히 취급하게 하는 단순한 계산을 사용하여 근접 엔진은 웨이퍼 상의 배제된 디바이스들의 밴드를 정의할 수 있다. 예를 들어, 그 다음으로 이러한 범위 내의 모든 디바이스 또는 파일에 리스트된 모든 디바이스는 선택된 배제를 판정 받는다. 배제 판정기준이 충족되면, 배제 구역내의 데이터 포인트들 또는 배제 판정기준을 충족하는 디바이스들은 하나 이상의 분석으로부터 배제된다.
본 실시형태의 근접 엔진은 복합 마스크 데이터에 대한 부가적인 분석을 수행하도록 적절하게 구성되어 있다. 부가적인 분석은 소망하는 데이터를 향상시키고, 필요없는 데이터를 제거하고, 또는 복합 마스크 데이터의 선택된 특성을 식별하기 위해 등과 같은, 임의의 적절한 목적으로 구성될 수 있다. 예를 들어, 근접 엔진은 복합 마스크 데이터 내의 완전한 패턴을 평활화하기 위해, 포인트 가중 시스템 등에 기초하여, 근접 가중 프로세스를 수행하도록 적절하게 구성되어 있다.
도 17a 내지 도 17b 를 참조하면, 본 발명의 근접 엔진은 데이터세트의 모든 데이터 포인트를 통해 검색한다. 근접 엔진은 제 1 포인트를 선택하고 (1710) 또한 문턱값 혹은 값들의 범위와 같은, 판정기준에 대하여 데이터 포인트의 값을 체크한다 (1712). 데이터 포인트가 선택된 문턱값을 초과하거나 또는 선택된 범위 내에 있으면, 근접 엔진은 값들에 대해 메인 데이터 포인트를 둘러싸는 데이터 포인트들을 검색한다 (1714). 메인 데이터 포인트 둘레의 데이터 포인트들의 개수는 임의의 선택된 개수일 수 있고, 또한 임의의 적절한 판정기준에 따라 선택될 수 있다.
근접 엔진은 작용 (influence) 값을 초과하거나 또는 데이터 포인트가 가중되어야 함을 나타내는 다른 적절한 판정기준을 만족하는 데이터 포인트들에 대해 둘러싸는 데이터 포인트들을 검색한다 (1716). 데이터 포인트가 작용 값을 초과하면, 근접 엔진은 둘러싸는 데이터 포인트들의 값에 따라 메인 데이터 포인트에 가중을 적절하게 할당한다. 또한, 근접 엔진은 둘러싸는 데이터 포인트의 상대적인 위치에 따라 가중을 조정할 수 있다. 예를 들어, 둘러싸는 데이터 포인트에 적응된 가중량은 둘러싸는 데이터 포인트가 메인 데이터 포인트에 인접한지 (1718) 또는 대각인지 (1720) 에 따라 결정될 수 있다. 총 가중은 또한 데이터 포인트가 웨이퍼의 에지 상에 있다면 조정될 수 있다 (1722). 메인 데이터 포인트 둘레의 모든 둘러싸는 데이터 포인트가 체크되었을 때 (1724), 메인 데이터 포인트는, 예를 들어 둘러싸는 데이터 포인트로부터 가중 인자를 부가함으로써, 전체적인 가중이 할당된다. 그 다음으로 메인 데이터 포인트에 대한 가중이 사용 자 정의된 문턱값과 같은 문턱값과 비교될 수 있다 (1726). 가중이 문턱값과 정합하거나 또는 문턱값을 초과하면, 데이터 포인트가 지정된다 (1728).
복합 마스크 데이터는 또한 데이터를 필터링하기 위해 추가로 분석될 수 있다. 예를 들어, 본 실시형태에서, 근접 엔진은 사용자-특정의 문턱값과 같은, 문턱값 보다 작은 데이터 포인트들의 그룹을 식별하고, 또한 적절하게 제거하도록 구성될 수 있다. 도 19 및 도 20 을 참조하면, 본 실시형태의 근접 엔진은 그룹을 정의하고, 그들의 크기를 재고, 또한 보다 작은 그룹을 제거하도록 구성될 수 있다. 그룹들을 정의하기 위해, 근접 엔진은 판정기준을 만족하는 데이터 포인트에 대해 복합 마스크 데이터 내의 모든 데이터 포인트를 통해 검색한다. 예를 들어, 복합 마스크 데이터 내의 데이터 포인트들은 값들 및 할당된 인덱스 번호들의 범위로 분리될 수 있다. 근접 엔진은 어떤 인덱스와 정합하는 데이터 포인트에 대해 복합 마스크 데이터를 검색함으로써 시작한다 (1910). 지정된 인덱스를 충족하는 데이터 포인트를 만날 때 (1912), 근접 엔진은 발견된 포인트를 메인 데이터 포인트로서 지정하고 또한 동일한 인덱스 상태에 있는, 또는 대안으로, 실질적으로 동일한 값을 갖지만, 문턱값을 초과하거나 또는 다른 소망하는 판정기준을 충족하는 다른 데이터 포인트들에 대해 메인 데이터 포인트로부터 모든 방향으로 검색하는 회귀 프로그램을 시작한다 (1914).
본 실시형태에서의 회귀 함수의 일례로서, 근접 엔진은 어떤 값, 예를 들어 5 를 갖는 데이터 포인트들에 대한 검색을 시작할 수 있다. 5 의 값을 갖는 데이터 포인트가 발견되면, 회귀 프로그램은 5 의 값을 갖는 다른 데이터 포인트를 발견할 때까지 메인 디바이스 둘레의 모든 데이터 포인트를 검색한다. 다른 한정하는 데이터 포인트가 발견되면, 회귀 프로그램은 마주친 데이터 포인트를 메인 데이터 포인트로서 선택하고 프로세스들을 반복한다. 이런 식으로, 회귀 프로세스는 각각의 다른 데이터 포인트에 인접하거나 또는 대각선인 정합값들을 갖는 모든 데이터 포인트를 분석하고 마크하며 그룹을 형성한다. 회귀 프로그램이 어떤 값을 갖는 그룹 내의 모든 디바이스를 발견했다면, 그룹에는 고유한 그룹 인덱스가 할당되고 근접 엔진은 다시 전체 복합 마스크 데이터를 통해 검색한다. 모든 데이터 값들이 검색되었으면, 복합 마스크 데이터는 동일한 그룹 인덱스를 갖는 인접하는 데이터 포인트들의 그룹으로 완전히 분리된다.
근접 엔진은 각 그룹의 사이즈를 결정할 수 있다. 예를 들어, 근접 엔진은 그룹 내의 데이터 포인트의 개수를 카운트할 수 있다 (1916). 그 다음으로 근접 엔진은 각 그룹내의 데이터 포인트들의 개수와 문턱값을 비교하고 문턱값을 충족하지 않는 그룹들을 제거한다 (1918). 상기 그룹들은 관련 그룹에 대한 인덱스 값을 디폴트 값으로 재설정하는 것 등에 의해, 임의의 적절한 방법으로 그룹핑 분석으로부터 제거될 수 있다 (1920). 예를 들어, 데이터 포인트들의 문턱값이 5 이면, 근접 엔진은 5 의 데이터 포인트 보다 적은 것을 갖는 모든 그룹에 대한 그룹 인덱스 번호를 디폴트 값으로 변경한다. 결과적으로, 상이한 그룹 인덱스들로 분류되어 남은 유일한 그룹들은 5 이상의 데이터 포인트를 갖는 것들이다.
근접 엔진은 복합 마스크 데이터를 생성하고 정제하기 위해 임의의 적절한 부가적인 동작을 수행할 수 있다. 예를 들어, 본래의 복합 마스크 데이터에 대한 부가적인 필터링, 처리, 및 분석의 결과들을 포함하는, 복합 마스크 데이터가 복수의 데이터세트 및 웨이퍼 상의 디바이스들 혹은 제조 프로세스와 같은, 데이터 본래의 소스 (source) 와 관련되는 정보를 제공하는데 사용될 수 있다. 상기 데이터는 사용자에게 제공될 수 있고 그렇지 않으면 임의의 적절한 방법으로 사용될 수 있다. 예를 들어, 원시 데이터의 트렌드와 패턴을 나타내는 데이터 세트를 생성하기 위해 복합 마스크 데이터, 원시 데이터, 및 임의의 적절한 데이터에 대한 병합 동작과 조합된 사용자-정의된 규칙들을 실행하는 것과 같이, 추가적인 분석 또는 다른 데이터와 조합을 위해 상기 데이터가 다른 시스템에 제공될 수 있다. 또한, 상기 데이터는 프린터 혹은 가시적인 인터페이스와 같은, 적절한 출력 시스템을 통해 사용자에게 제공될 수 있다.
본 실시형태에서, 예를 들어, 복합 마스크 데이터는 다른 데이터와 조합되어 재검토를 위해 사용자에게 제공된다. 복합 마스크 데이터는 임의의 적절한 방법으로 임의의 다른 적절한 데이터와 조합될 수 있다. 예를 들어, 복합 마스크 데이터는 시그네이처 데이터, 원시 데이터, 하드웨어 빈 (bin) 데이터, 소프트웨어 빈 데이터, 및/또는 다른 복합 데이터와 병합될 수 있다. 데이터세트의 병합은, 표현식, 문턱값, 및 우선권을 포함하는 다양한 사용자-정의된 규칙들을 사용하는 것과 같은, 임의의 적절한 방법으로 수행될 수 있다.
본 발명의 시스템에서, 복합 분석 엘리먼트 (214) 는 적절한 프로세스를 사용하여 병합 프로세스를 수행하여 복합 원시 데이터, 복합 시그네이처 데이터, 또 는 복합 빈 데이터의 맵과 같은, 복합 데이터의 본래의 맵과 복합 마스크 데이터를 병합한다. 예를 들어, 도 21 을 참조하면, 복합 분석 엘리먼트 (214) 는 절대 병합 시스템을 사용하여 복합 마스크 데이터와 본래의 개별 웨이퍼 데이터를 병합할 수 있고 상기 절대 병합 시스템에서 복합 마스크 데이터는 본래의 (original) 데이터 맵과 완전히 병합되어 있다. 결과적으로, 복합 마스크 데이터는 기존의 패턴들의 중첩 또는 포위와 관계없이 본래의 데이터 맵과 병합된다. 하나의 복합 마스크만이 복수의 복합 마스크 중에서 패턴을 도시하면, 상기 패턴은 전체 복합 마스크에 포함된다.
대안으로, 복합 분석 엘리먼트 (214) 는 부가적인 분석과 관련하여 상기 데이터를 병합할 수 있다. 복합 분석 엘리먼트 (214) 는 관련없을 수 있는 또는 중요하지 않은 데이터를 필터링할 수 있다. 예를 들어, 도 22 를 참조하면, 복합 분석 엘리먼트 (214) 는 본래의 데이터 맵 또는 다른 복합 마스크 내의 데이터를 중첩하는 복합 마스크 데이터 내의 데이터만을 병합할 수 있고, 이것은 잠재적으로 관련된 정보를 강조하는 경향이 있다.
복합 분석 엘리먼트 (214) 는 특정한 문턱값, 백분율, 또는 데이터 포인트들의 다른 값이 맵들 사이에서 중첩하는지 여부를 결정하기 위해 복합 마스크 데이터와 본래의 데이터를 대안으로 평가할 수 있다. 구성에 의존하여, 병합된 데이터는, 이 경우에 디바이스들에 대응하는 데이터 포인트들이 데이터 포인트들을 중첩시키기 위해 요구되는 문턱값을 충족시키기 위해 복합 마스크 데이터와 본래의 데이터 사이에서 충분히 중첩된 영역들만을 포함할 수 있다. 도 23 을 참조하 면, 복합 분석 엘리먼트 (214) 는, 테스터 빈 실패 데이터와 중첩하는 50 % 의 복합 데이터와 같은, 본래의 데이터에서의 테스터 빈 실패들, 즉, 실패된 디바이스들과 충분한 정도로 중첩하는 복합 데이터 패턴들만을 포함하도록 구성될 수 있다. 따라서, 복합 데이터의 최소량 보다 적게 본래의 데이터와 중첩하면, 복합 데이터 패턴은 무시될 수 있다. 유사하게, 도 24 를 참조하면, 복합 분석 엘리먼트 (214) 는 2 개의 상이한 레시피로부터의 데이터와 같은, 복합 데이터의 2 개의 상이한 세트를 비교할 수 있고, 또한 2 개의 레시피 사이의 중첩이 선택된 판정기준을 만족하는지 여부를 결정할 수 있다. 최소 판정기준과 중첩하고 및/또는 최소 판정기준을 만족시키는 데이터만이 병합된다.
병합된 데이터는 사용자 또는 다른 시스템에 대한 출력을 위해 출력 엘리먼트 (208) 에 제공될 수 있다. 병합된 데이터는 생산 에러 식별 프로세스 또는 커다란 트렌드 식별 프로세스와 같은, 다른 프로세스에 대한 입력으로서 전달될 수 있다. 병합된 데이터는 또한 메모리 구조, 데이터베이스 테이블, 평탄한 텍스트 파일, 또는 XML 파일과 같은, 임의의 구분 또는 포맷으로 출력될 수 있다.
본 실시형태에서, 병합된 데이터 및/또는 웨이퍼 맵은 인크 맵 생성 엔진으로 제공된다. 인크 맵 엔진은 오프라인 인킹 장비를 위한 맵을 생성한다. 오프라인 인크 맵에 부가하여, 병합된 데이터 결과들이 부품의 인크리스 (inkless) 조립을 위한 비닝 (binning) 결과들을 생성할 때 또는 이들 종류의 결과를 사용하는 임의의 다른 프로세스 혹은 애플리케이션에 사용될 수 있다.
테스트 시스템 (100) 은 또한 제조 프로세스 및/또는 테스팅 프로세스를 포 함하는, 제조 프로세스와 연관된 특성 및/또는 문제점을 식별하기 위해 테스트 데이터를 사용하도록 구성될 수 있다. 예를 들어, 테스트 시스템 (100) 은 하나 이상의 소스로부터의 테스트 데이터를 분석할 수 있고, 패드 상의 잔류, 프로빙 잘못, 도전체 브리징 (bridging), 오염, 스크래치, 파라미터 변동, 및/또는 스테퍼 혹은 레티클 문제점과 같은, 주지된 문제점, 이슈, 또는 제조 프로세스 및 테스트 프로세스에서의 특성과 테스트 데이터의 특성을 자동으로 연관시킬 수 있다. 테스트 데이터 특성이 주지된 이슈에 대응하지 않으면, 테스트 시스템 (100) 은 그것이 진단된 후 상기 이슈와 관련되는 정보를 수신하여 저장할 수 있고, 상기 테스트 시스템 (100) 은 그들이 마주칠 때 새로운 테스트 데이터 특성을 진단하도록 업데이트된다.
특히, 진단 시스템 (216) 은 그들의 있음직한 소스 또는 원인에 따라 자동적으로 테스트 데이터 특성을 식별하고 및/또는 이와 같은 특성을 분류하도록 적절하게 구성되어 있다. 테스트 시스템 (100) 은 또한, 실행 시간에서의 및/또는 나중 출력 리포트에서의 즉각적인 실패 분류 및 통지와 같이, 결함 검출이 발생하면 자동적으로 경고할 수 있다. 다양한 테스트 데이터 특성의 소스 또는 원인과 관련되는 정보가 저장되고 데이터와 비교될 수 있다. 상이한 테스트 데이터 특성이 상이한 문제점과 연관되어 있을 때 후속의 분석에서의 사용을 위해 정보가 적절하게 진단 시스템 (216) 에 제공되도록, 분류 판정기준 및 절차는 구성가능하다. 저장된 정보는 특정한 데이터 환경에 따라 변경되거나 또는 업데이트될 수 있는 구성가능한 지식 베이스를 촉진한다. 저장된 정보는 또한 테스트 프레임워크, 규 칙, 및 징후에 기초하여 있음직한 이슈들을 보고하도록 목표 분석 및 분류에 대한 주지된 시나리오 및 분류의 인식을 용이하게 한다. 진단 시스템 (216) 이 업데이트되고 새로운 패턴이 특정한 문제점과 연관되어 있을 때, 진단 시스템 (216) 은 생산 엔지니어링 전문 지식의 포획과 유지를 촉진하고, 이력 데이터 베이스를 생성하고, 또한 일관되고, 반복가능한 분석 방법론을 제공한다.
예를 들어, 테스트 데이터 진단 시스템 (216) 은 테스트 데이터에 의해 적어도 부분적으로 유도된 문제점들을 진단하도록 구성될 수 있다. 데이터는, 실행시에 수신되어 분석될 수 있고, 하나 이상의 테스트 실행의 종료 후에 저장 시스템으로부터 검색되고, 및/또는 이력 데이터를 포함한다. 진단 시스템 (216) 은 파라미터 테스트, 메트로로직 (metrologic), 프로세스 제어, 현미경, 분광기, 결함 분석, 및 결함 분리 데이터와 같은, 테스트 데이터를 임의의 적절한 소스로부터 수신할 수 있다. 진단 시스템 (216) 은 또한, 빈 결과, SPC 데이터, 공간 분석 데이터, 아웃라이어 데이터, 복합 데이터, 및 데이터 시그네이처와 같은, 테스트 데이터에 기초하여 생성되어 있는, 평활화된 데이터, 필터링된 복합 데이터, 및 부가적인 데이터와 같은, 처리된 데이터를 수신할 수 있다.
예를 들어, 도 25 를 참조하면, 본 실시형태의 진단 시스템 (216) 은 복수 종류의 데이터를 분석하도록 구성되어 있다. 진단 시스템 (216) 은 원시 전자 웨이퍼 소트 (electronic wafer sort; EWS) 데이터 (2520) 뿐만 아니라 EWS 빈 시그네이처 데이터 (2514) 를 분석하고, 맵을 빈에 넣고 및/또는 각각의 웨이퍼에 대한 패턴 데이터 (2518), 아웃라이어 시그네이처 데이터 (2520), 및 프로세스 제어 혹은 전기 테스트 (electrical test; ET) 데이터 (2516) 을 생성한다. EWS 빈 시그네이처 데이터 (2514) 는 예를 들어 보충 데이터 분석 엘리먼트 (206) 에 의해 생성될 수 있는 EWS 결과들에 기초한 임의의 적절한 분류 데이터를 포함할 수 있다. 본 실시형태에서, EWS 빈 시그네이처 데이터 (2514) 는 보충 데이터 분석 엘리먼트 (206) 에 의해 결정된 대로, 그로스의 분류, 중요한, 또는 주변의 등과 같은, 디바이스의 실패의 크기 (디바이스가 합격되지 않았다면) 를 나타내는 웨이퍼 상의 각각의 디바이스에 대응하는 데이터를 포함한다.
진단 시스템 (216) 은 또한 웨이퍼 상의 다양한 포인트에 대한 및/또는 컴포넌트 (106) 에 대한 전기적인 특성과 관련되는 데이터와 같은, 프로세스 제어 데이터 (2516) 를 수신한다. 또한, 진단 시스템 (216) 은 컴포넌트 (106) 에 대한 합격/실패 비닝 분류를 나타내는 웨이퍼에 대한 빈 맵 데이터 (2518) 를 수신할 수 있다. 또한, 진단 시스템 (216) 은 예를 들어 아웃라이어 분류 엘리먼트 (212) 에 의해 생성된 데이터인, 웨이퍼에 대한 아웃라이어 시그네이처 빈 맵 (2520) 을 수신할 수 있다. 예를 들어, 데이터 내의 각각의 아웃라이어는 선택된 판정기준에 따라 미소한, 작은, 중간의, 또는 중요한 으로 분류될 수 있다.
진단 시스템 (216) 은 제조 프로세스 또는 테스트 프로세스에서의 문제점 또는 이슈들과 같은, 프로세스 특성을 식별하기 위해 수신된 데이터를 분석하도록 임의의 적절한 방법으로 구성될 수 있다. 상기 프로세스 특성은 임의의 적절한 판정기준 또는 프로세스에 따라 식별될 수 있다. 예를 들어, 도 26 을 참조하면, 본 실시형태의 진단 시스템 (216) 은 소정의 판단기준에 따라 프로세스 특성을 식별하기 위한 규칙-기반 분석기 (2610) 을 구비한다. 부가적으로 또는 대안으로, 진단 시스템 (216) 은 테스트 데이터에서 인식된 패턴에 기초하여 프로세스 특성을 식별하기 위한 패턴 인식 시스템 (2612) 을 구비할 수 있다.
특히, 규칙-기반 분석기 (2610) 는 명확한 규칙들의 세트에 기초하여 특정한 문제점에 대응하는 특정한 특성에 대해 테스트 데이터를 분석할 수 있다. 상기 특정한 특성은 특정한 테스트 또는 제조 이슈에 대응하는 임의의 주지된 데이터 세트를 적절하게 포함한다. 규칙-기반 분석기 (2610) 는 선택된 종류의 데이터에 대한 데이터를 분석하고 대응하는 신호를 생성하도록 적절하게 구성되어 있다. 예를 들어, 복수의 컴포넌트 상의 특정한 출력 노드에 대응하는 테스트들이 어떠한 결과도 생성하지 않으면, 진단 시스템 (216) 은 (a) 출력 노드가 기능하지 않고 있음, 또는 (b) 테스트 프로브가 출력 노드와 적절하게 접촉하고 있지 않음이라는 통지를 생성할 수 있다.
패턴 인식 시스템 (2612) 은 다양한 소스로부터 데이터를 수신하여 데이터에서의 패턴을 식별하도록 적절하게 구성되어 있다. 패턴 인식 시스템 (2612) 은 또한, 예를 들어 식별된 패턴에 기초하여 특정한 원인의 가능성을 할당함으로써, 식별된 패턴과 이와 같은 패턴과 연관된 주지된 이슈를 정합하도록 적절하게 구성되어 있다. 예를 들어, 유사한 넌-패싱 (non-passing) 빈 결과를 갖는 디바이스들의 클러스터 또는 상이한 웨이퍼 상의 동일한 위치에 위치된 아웃라이어는 제조 프로세스에서의 특정한 문제점을 표시할 수 있다. 패턴 인식 시스템 (2612) 은 제조 프로세스 및/또는 테스트 프로세스에서의 이와 같은 이슈들을 표시할 수 있는 데이터에서의 패턴들을 식별하고 분석한다.
패턴 인식 시스템 (2612) 은 다양한 테스트 데이터에서의 패턴들을 식별하고 잠재적인 제조 이슈 또는 테스트 이슈에 대응하는 패턴들을 분석하도록 임의의 적절한 방법으로 구성될 수 있다. 본 실시형태에서, 패턴 인식 시스템 (2612) 은 클러스터된 결함 또는 아웃라이어의 공간적인 패턴과 같은, 테스트 데이터에서의 패턴을 인식하도록 구성된 지능 시스템을 구비한다. 특히, 본 실시형태의 패턴 인식 시스템 (2612) 은 예비 프로세서 (2614) 와 분류기 (2616) 를 포함한다. 예비 프로세서 (2614) 는 분류기 (2616) 에 의해 취급하는 데이터를 처리하고 및/또는 이슈들에 대응할 수 있는 수신된 데이터에서의 패턴들을 식별한다. 분류기 (2616) 는 식별된 패턴들 또는 다른 데이터를 상이한 주지된 카테고리 또는 미지의 카테고리로 분류한다.
예비 프로세서 (2614) 는 상이한 종류의 데이터에 대한 상이한 동작을 수행할 수 있다. 예를 들어, 예비 프로세서 (2614) 는 EWS 빈 시그네이처 데이터 또는 분류기 (2616) 에 의해 사용되도록 예비 처리할 필요가 없는 다른 데이터와 같은, 어떤 데이터를 결코 처리할 수 없다. 다른 테스트 결과들은 통계 분석될 수 있다. 예를 들어, 예비 프로세서 (2614) 는 EWS 테스트 결과에 대한 주요한 컴포넌트 분석을 수행할 수 있고, 상기 주요한 컴포넌트 분석은 하나 이상의 고유 벡터 및/또는 고유값을 생성한다. 상기 주요한 컴포넌트 분석은 웨이퍼 위치, 테스트 종류, 및 웨이퍼 시퀀스와 같은, 임의의 적절한 변수의 공분산 (covariance) 에 기초될 수 있다. 본 실시형태에서, 예비 프로세서 (2614) 는 보다 높은 고유값과 연관된 고유벡터, 또는 최고의 고유값과 연관된 고유벡터만을 선택할 수 있고, 또한 덜 중요한 컴포넌트들을 무시할 수 있다.
다른 데이터는 요약되거나 또는 감소될 수 있다. 예를 들어, 프로세스 제어 데이터는 웨이퍼에 대한 테스트 구조에 대응하는 일련의 테스트 값 합계로서 요약될 수 있다. 따라서, 예비 프로세서 (2614) 는 각각의 테스트 구조에 대한 각각의 테스트 값을 합산한다. 그러므로, 합산의 개수 (및 따라서 벡터의 사이즈) 는 테스트 구조의 개수와 일치한다.
다른 데이터도 또한 필터링되고 예비 프로세서 (2614) 에 의해 추가로 처리될 수 있다. 예를 들어, 예비 프로세서 (2614) 는 노이즈 또는 데이터 세트로부터의 다른 소망하지 않은 데이터를 필터링하고 및/또는 빈 맵 데이터와 아웃라이어 시그네이처 빈 맵과 같은, 테스트 데이터에서의 패턴을 식별하도록 임의의 적당한 방법으로 구성될 수 있다. 예를 들어, 예비 프로세서 (2614) 는 어떠한 패턴도 나타내지 않는 데이터 세트들을 필터링하고, 데이터에서의 패턴들과 관련되는 데이터를 생성하고, 또한 특정한 패턴 혹은 분류를 위한 다른 특성을 선택하도록 적절하게 구성되어 있다. 본 실시형태에서, 예비 프로세서 (2614) 는 패턴 필터 (2618), 피쳐 추출기 (2620), 및 피쳐 선택기 (2622) 를 구비한다. 패턴 필터 (2618) 는 특정한 웨이퍼에 대한 데이터와 같은, 데이터 세트가 패턴을 포함하는지 여부를 결정한다. 피쳐 추출기 (2620) 는 패턴 필터 (2618) 에 의해 지정된 데이터 세트들에 대한 정보를 나타내고 분류기 (2616) 에 의한 분석에 적절한 피쳐들을 생성한다. 피쳐 선택기 (2622) 는 선택된 판정기준에 따라 생성된 피 쳐들을 분석하여 분류를 위한 피쳐들을 선택한다.
패턴 필터 (2618) 는 임의의 적절한 방법으로 데이터에서의 패턴들을 식별하도록 구성될 수 있다. 예를 들어, 패턴 필터 (2618) 는 임의의 패턴들이 데이터에 있는지 여부를 검출하기 위해 수신된 데이터를 처리하도록 구성된 소프트웨어 모듈을 적절하게 구비한다. 테스트 데이터의 무결 (integrity) 을 보존하기 위해, 패턴 필터는 본래 데이터로부터의 정보 손실없이 데이터를 적절하게 처리한다. 패턴 필터 (2618) 는 패턴없는 데이터 세트들을 버리고, 검출된 패턴들을 갖는 데이터 세트들만을 남길 수 있다. 패턴 필터 (2618) 는 다양한 종류의 데이터를 개별적으로 또는 조합하여 분석하도록 구성될 수 있다. 패턴 필터 (2618) 는 불스-아이 (bulls-eye), 핫 스팟 (hot-spot), 링, 및 다른 패턴과 같은, 임의의 적절한 패턴들을 식별할 수 있다.
본 실시형태에서, 패턴 필터 (2618) 는 패턴 마이닝 (mining) 알고리즘에 따라 그리고 주지된 패턴들 혹은 이론적인 패턴들과 연관된 하나 이상의 마스크와 관련하여 데이터를 분석한다. 예를 들어, 도 28 을 참조하면, 패턴 필터는 패턴 마스크와 관련하여 2 차원 이-빈맵 (e-binmap) 을 사용하여 테스트 데이터의 중앙값 필터링을 수행하도록 구성될 수 있다. 패턴 마스크는 이-빈맵에서의 어느 디바이스들이 중앙값 필터링을 수행하도록 선택되어 있는지를 결정하는 임의의 적절한 마스크를 포함할 수 있다. 예를 들어, 패턴들은 이미-존재하는, 실-세계 시나리오로부터 정의될 수 있고, 또는 도메인 전문가로부터 생성된 시뮬레이션에 의해 정의될 수 있다. 패턴 마스크는 분류기 (2616) 에 의해 식별되어야 할 패 턴과 적절하게 유사하다. 예를 들어, 임의의 적절한 시뮬레이션된 이론적인 패턴이 사용될 수 있지만, 패턴 마스크는 다양한 데이터 세트로부터의 복합 마스크 데이터 혹은 병합된 복합 마스크 데이터와 같은, 복합 분석 엘리먼트 (214) 에 의해 생성되는 정보를 사용할 수 있다.
중앙값 필터링은 본래의 이-빈맵 데이터 내의 마스크에 의해 선택되었던 각각의 값에 대해 수행된다. 특히, 데이터 세트에서의 각각의 데이터 포인트 및 각각의 데이터 포인트를 둘러싸는 선택된 데이터 포인트들이 각각의 선택된 마스크와 비교된다. 예를 들어, 테스트 데이터 내의 마스크에 의해 선택되어 있는 각각의 값 둘레에서, 중앙값이 3 × 3 (three-by-three) 윈도우와 같은, n × n 사이즈의 근방을 고려하여 계산된다. 패턴을 나타내지 않는 이들 데이터 세트는 무시된다. 패턴을 포함하는 것들은 피쳐 추출기 (2620) 로 제공된다. 여기에 개시된 근접 분석 패턴 분리 기술과 같은, 대안적인 필터링 기술들도 또한 적용될 수 있다.
본 실시형태에서, 패턴 필터 (2618) 는 또한, 예를 들어 테스트 데이터로부터의 간헐적인 노이즈를 제거하기 위해, 데이터 세트에서의 노이즈를 감소시킨다. 패턴 필터 (2618) 는 테스트 데이터에 대한 공간 필터링, 중앙값 필터링, 또는 컨벌루션 프로세스와 같은, 노이즈를 필터링하기 위한 임의의 적절한 시스템을 채용할 수 있다. 예시적인 일 실시형태에서, 패턴 필터 (2618) 는 데이터내의 아웃라이어에 의한 "솔트-앤드-페퍼 (salt-and-pepper)" 노이즈와 같은 노이즈를 저감하기 위해, 크로스-형상 (cross-shape) 중앙값 필터링과 같은 공간 필터링을 사용 한다.
패턴들을 갖는 데이터 세트들은 식별된 패턴들을 특정한 이슈들에 정합시키기 위해 분석될 수 있다. 어떤 환경하에서, 그러나, 패턴 필터 (2618) 에 의해 사용되는 원시 데이터는 분류기 (2616) 에 의한 분석에 적합하지 않을 수 있다. 결과적으로, 피쳐 추출기 (2620) 는, 테스트 데이터에 기초하여, 분류기 (2616) 에 의해 사용될 수 있는 데이터를 생성할 수 있다.
본 실시형태에서, 피쳐 추출기 (2620) 는 패턴 필터 (2618) 에 의해 지정된 데이터 세트들로부터의 정보를 나타내는 피쳐들을 생성한다. 상기 피쳐들은 본래의 데이터의 사용이 곤란하거나 또는 불가능한 상황에서 특별히 유용할 수 있다. 그 다음으로 상기 피쳐들은 분류기 (2616) 에 의해 분석되어 패턴 필터 (2618) 에 의해 식별된 패턴의 종류가 식별될 수 있다. 예를 들어, 피쳐 추출기 (2620) 는 데이터 세트에 기초하여 변수들의 세트에 대한 값들을 계산하는 등에 의해, 본래 데이터에서의 관련 정보를 인코딩하도록 구성될 수 있다. 상기 피쳐들은 본래 데이터에 상주하는 관련 정보를 효율적으로 인코딩하도록 적절하게 구성되어 있고 또한 데이터 세트 내의 대응하는 패턴들을 결함 클래스로 분류하기 위해 분류기 (2616) 에 의해 사용될 수 있다. 상기 피쳐들은 또한 임의의 데이터 세트로부터 적절하게 계산되고, 따라서 테스트들 자체의 성질에 대한 테스트 하에서 특정한 컴포넌트과 독립적이다.
상기 피쳐들은 데이터로부터 추출된 임의의 적절한 정보를 포함할 수 있다. 본 실시형태에서, 피쳐 추출기 (2620) 는 테스트되는 중인 특정한 디바이스, 또는 질량, 센트로이드 (centroid), 기하적인 모멘트의 세트, 및 테스트 데이터로부터 휴(Hu) 의 7 개의 모멘트와 같은, 데이터 세트의 특성과 실질적으로 관계없이 정규화된 데이터 및/또는 집중된 데이터를 제공하는 여러 피쳐들을 계산한다. 상기 질량은 흥미로운 데이터 세트 내에서의 분포의 사이즈에 관한 정보를 제공한다. 상기 센터로이드는 다이 (die) 내의 분포의 질량 중심에 대응하는, x-y 좌표와 같은, 위치를 제공한다. 15 개의 모멘트의 완전한 세트와 같은, 기하적인 모멘트는 데이터 세트에 대한 동일한 표현을 생성한다. 휴 (Hue) 의 7 개의 모멘트는 병진, 스케일링, 및 회전의 작용 하에서 불변인 모멘트들을 구비한다.
다양한 피쳐가 임의의 데이터 세트에 대해 결정될 수 있다. 본 실시형태에서, 피쳐들은 웨이퍼에 대한 빈 데이터, 아웃라이어 시그네이처 데이터, 또는 다른 테스트 데이터에 기초하여 계산된다. 따라서, 질량은 일반적으로 관심있는 빈 내의 다이의 분포의 크기 또는 다른 값들에 대응할 수 있고, 분포의 위치에 대한 어떠한 정보도 주지 않는다. 좌표 x 와 y 에서의 테스트 값이 f(x,y) 일 때, 질량 M 은 다음 식에 따라 적절하게 계산된다:
Figure 112006064521288-PCT00002
여기에서 N 은 테스트 데이터 세트에서의 데이터 포인트의 총 개수이다. 질량은 정규화되고 따라서 웨이퍼 상의 다이의 개수와 같이, 상이한 개수의 데이터 포인트를 갖는 데이터 세트들 사이에 일관성이 존재한다.
센트로이드는 xc 와 yc 와 같은 공간 좌표들에 의해 정의될 수 있다. 센 트로이드는 다이의 분포의 질량 중심을 측정함으로써 위치 정보를 제공한다. 데이터의 센트로이드는 다음 식 등에 따라 임의의 적절한 방법으로 계산될 수 있다:
Figure 112006064521288-PCT00003
차수(order) (p = 0 … 3, q = 0 … 3) 의 기하적인 모멘트는 다음 식에 따라 계산될 수 있다:
Figure 112006064521288-PCT00004
이러한 모멘트의 세트에 의해 공급되는 정보는, 빔맵이 모든 차수의 그의 모멘트로부터 만들어질 수 있다는 의미에서, 데이터 세트에 대한 동일한 표현을 제공한다. 따라서, 각각의 모멘트 계수는 빈맵에 상주하는 소정량의 정보를 전달한다.
본 실시형태에서, 휴의 7 개의 모멘트도 또한 고려된다 (휴, 엠.케이., "모멘트 불변에 의한 가상 패턴 인식 (Visual Pattern recognition by moments invariants)", 정보 이론에 대한 IRE 회보 (IRE Transactions on Information Theory, 8(2) 권, 179-187 페이지, 1962 참조). 휴의 7 개의 모멘트는 병진, 스케일링, 및 회전의 작용 하에서 불변이다. 휴의 모멘트들은 다음 식에 따라 계산될 수 있다:
Figure 112006064521288-PCT00005
Figure 112006064521288-PCT00006
Figure 112006064521288-PCT00007
Figure 112006064521288-PCT00008
Figure 112006064521288-PCT00009
Figure 112006064521288-PCT00010
Figure 112006064521288-PCT00011
여기에서
Figure 112006064521288-PCT00012
은 아래와 같이 정의된 모든 p, q 에 대한 중심 모멘트이다:
Figure 112006064521288-PCT00013
이들 모멘트 중 첫번째 6 개는 또한 반전의 작용 하에서도 불변이지만, 마지막 모멘트는 부호가 바뀐다. 이들 양의 값은 매우 크고 또는 다를 수 있다. 정밀도 문제를 회피하기 위해, 절대값들의 로그 (logarithm) 가 취해질 수 있고 피쳐들로서 분류기 (2616) 에게 전달될 수 있다. 이들 피쳐의 불변성은, 빈맵들 또는 다른 데이터 세트들이 스케일, 위치, 또는 각 위치 (angular position) 에 의존하지 않는 시그네이처 클래스에 의해 분석될 때 이점이 된다.
25 개 피쳐의 대표적인 세트가 모든 빈맵으로부터 또는 패턴 필터 (2618) 에 의해 지정된 다른 데이터 세트로부터 적절하게 추출된다. 피쳐들 모두 또는 일부가 분류를 위한 분류기 (2616) 에 직접 제공될 수 있다. 본 실시형태에서는, 예를 들어 분석되어야 할 피쳐들의 개수를 감소시키고 따라서 분석 프로세스의 규모를 저감하기 위해, 피쳐들 모두 보다 적은 개수의 피쳐가 분류기 (2616) 에 제공될 수 있다. 피쳐들의 개수를 감소시키는 것은 계산의 복잡성 및 중복성을 저감하는 경향이 있다. 또한, 분류기 (2616) 에 요구되는 일반화 특성들에 의해 피쳐들의 개수는 제한될 필요가 있다. 예를 들어, 본 발명의 분류기 (2616) 에 대해, 분류기 (2616) 에 요구되는 일반화 특성들은 자유 분류기 파라미터들의 개수에 대한 트레이닝 (training) 파라미터들 N 의 개수의 비율에 대응할 수 있다. 많은 수의 피쳐들은 시냅스 가중 (synaptic weights) 과 같은 많은 수의 분류기 파라미터들에 대응한다. 유한하고 통상적으로 제한된 개수 N 의 트레이닝 파라미터에 대해, 보다 소수의 피쳐들이 분류기 (2616) 의 일반화를 향상시키는 경향이 있다.
본 시스템의 피쳐 선택기 (2622) 는 선택된 판정기준에 따라 생성된 피쳐들을 분석하여 분류를 위한 피쳐들을 선택한다. 특히, 피쳐 선택기 (2622) 는 분석되어야 할 특정한 피쳐들을 선택하고 피쳐들 모두 보다 적은 피쳐를 분류기 (2616) 에 제공함으로써 유도될 수 있는 에러를 최소화하도록 적절하게 구성되어 있다. 피쳐 선택기 (2622) 는 분류기 (2616) 로의 전달을 위한 피쳐들을 선택하도록 임의의 적절한 방법으로 구성될 수 있다.
본 실시형태에서, 피쳐 선택기 (2622) 는 피쳐들을 선택하기 위해 유전 알고 리즘을 실행한다. 상기 유전 알고리즘은, 복수의 솔루션을 유지하고, 의심스런 솔루션을 제거하고, 또한 우수한 솔루션을 향상시키는 경향이 있는 병렬 탐색 프로세스를 포함한다. 유전 알고리즘 분석은 반복 회수에 대해 다양한 피쳐들에 적절하게 적용되고, 또한 알고리즘의 출력은 진화의 프로세스에서 발견되는 최상의 솔루션이다.
도 27 을 참조하면, 본 실시형태에서 유전 알고리즘을 실행하기 위해, 피쳐 선택기 (2622) 는 GA 파라미터들에 대한 값들을 최초로 정의하고 (2710), 세대 카운터를 시작하고 (2712), 또한 초기 파퓰레이션을 무작위로 생성하는 것 (2714) 에 의해 시작한다. 상기 파퓰레이션은 코드화된 개체들 (individuals) 의 수집을 적절하게 포함하고, 또한 각각의 개체는 선택된 피쳐들의 세트를 나타낸다. 초기 파퓰레이션에서의 개체들의 시퀀스는, 예를 들어 자동 컴퓨터 프로그램에 의해 무작위로 생성된다. 에팍 (epoch) 의 개수, 파퓰레이션에서의 개체들의 개수, 염색체 (chromosome) 의 사이즈, 코스트 함수, 선택 레이트, 크로스오버/재생 레이트, 및 돌연변이 레이트에 대응하는 파라미터들과 같은, 임의의 적절한 파라미터들이 사용될 수 있다. 본 발명의 시스템에서, 모든 파퓰레이션은 10 개의 상이한 개체를 갖고, 상기 개체들은 최적의 솔루션에서 특정한 피쳐의 존재 또는 부재를 나타낸다. 달리 표현하면, 각각의 개체는 피쳐들의 세트를 나타내는 염색체, 즉, 25 비트 (특징들의 개수) 의 스트링 내부에 2 진법으로 인코딩되어 있고, 상기 염색체에서 "1" 은 특정한 피쳐가 분류를 위해 고려되고 있음을 나타내고, "0" 은 그 위치에서의 피쳐가 사용되지 않고 있음을 의미한다.
그 다음으로 피쳐 선택기 (2622) 는 초기의 파퓰레이션 (2716) 을 평가하고, 파퓰레이션에 대해 크로스오버 및 돌연변이를 적용하고 (2718, 2720), 또한 세대 카운터를 증가시킨다 (2722). 세대 카운터가 세대의 최대 개수와 같은 소정의 한계에 도달하면 (2724), 피쳐 선택기 (2622) 는 분석을 종료하고 선택된 피쳐들을 분류기 (2616) 에게 제공한다 (2726). 상기 한계에 아직 도달하지 않았으면, 피쳐 선택기 (2622) 는 오프스프링 (offspring) 파퓰레이션을 반복적으로 평가하고 (2728) 또한 한계에 도달할 때까지 파퓰레이션에 대한 크로스오버 및 돌연변이를 적용한다.
분류기 (2616) 는 식별된 패턴들을 상이한 주지된 카테고리 또는 미지의 카테고리로 분류한다. 분류기 (2616) 는 바예스 (Bayes) 혹은 최대 가능성 분류기, 감독된 넌-파라메트릭 분류기, 및/또는 감독된 혹은 비감독된 규칙-기반 분류기와 같은, 예비 프로세서 (2614) 에 의해 식별된 패턴들을 분류하기 위한 임의의 적절한 분류 시스템을 구비할 수 있다. 본 실시형태의 분류기 (2616) 는 피쳐 선택기 (2622) 에 의해 선택된 피쳐들의 분석에 기초하여 패턴들을 분류하도록 구성되어 있다.
분류기 (2616) 는, 피쳐 추출기 (2620) 에 의해 얻어지고 피쳐 선택기 (2622) 에 의해 선택된 피쳐들과 같은, 분석용 데이터를 수신한다. 상기 데이터는 처리되어 상기 데이터가 주지된 패턴들을 위한 데이터와 비교된다. 주지된 패턴이 상기 데이터와 정합하면, 대응하는 이슈 또는 주지된 패턴에 대한 특성이 주목된다. 예를 들어, 도 31a 내지 도 31b 를 참조하면, 분류기 (2616) 는, 룩업 테이블을 참조하는 등에 의해, 입력 데이터에서의 특정한 특성과 특정한 문제점 소스를 연관시킬 수 있다. 분류기 (2616) 는 또한 특정한 이슈 또는 패턴에 대응하는 특성의 가능성을 할당할 수 있다. 주지된 패턴이 데이터와 정합하지 않으면, 정합에 대한 실패가 마찬가지로 주목된다. 그 다음으로 얻어지는 정보가 출력 엘리먼트 (208) 에게 제공될 수 있다.
도 32 를 참조하면, 본 실시형태에서, 분류기 (2616) 는 2-단 (two-stage) 분류기 (3208) 를 구비한다. 제 1 단 (3210) 은 개별적인 데이터 소스들로부터 데이터를 수신하고 또한 예를 들어 규칙들의 세트 또는 데이터의 패턴들에 따라, 잠재적인 문제점에 대해 데이터를 분류한다. 제 2 단 (3212) 은 다양한 제 1 단 (3210) 분류기로부터 데이터를 수신하고 또한 상기 데이터에 의해 특징화된 문제점들 또는 이슈들의 가장 가능성있는 소스들을 식별하기 위해 전체 데이터를 분류하는 결과들을 조합한다.
2 개의 단에서의 분류기들 (3210, 3212) 은 지능 시스템, 예를 들어 신경망, 입자 군집 최적화 (PSO) 시스템, 유전 알고리즘 (GA) 시스템, 방사형 기본 함수 (RBF) 신경망, 다층 인식 (MLP) 신경망, RBF-PSO 시스템, MLP-PSO 시스템, MLP-PSO-GA 시스템, 또는 분류기들의 조합과 같은, 데이터를 분석하기 위한 임의의 적절한 시스템들을 구비할 수 있다. 특정한 시스템들이 특정한 데이터 세트에 대한 분류기의 성능에 따라 선택될 수 있다.
본 실시형태는 RBF 신경망과 같은 선형 신경망 및/또는 피쳐 선택기 (2622) 에 의해 선택된 피쳐들을 분석하도록 구성된 피드포워드 (feedforward) 네트워크를 포함한다. 도 29 를 참조하면, 본 실시형태의 다양한 양태에 따른 RBF 신경망 (2910) 은 분류기로서 기능하도록, PSO 와 같은, 진화 알고리즘 기술을 사용하여 구성되어 있다. RBF 네트워크는 상이한 역할을 갖는 3 개의 층을 적절하게 구비한다. 입력 층 (2912) 은 선택된 피쳐들을 수신하도록 RBF 네트워크를 피쳐 선택기 (2622) 에 접속하는 소스 노드들을 구비한다. 숨겨진 층을 적절하게 구비하는 제 2 층 (2914) 은 입력 공간으로부터 숨겨진 공간으로 비선형 변환을 적용하며, 상기 숨겨진 공간에서 뉴런들의 활성 함수들 (h i (x)) 은 방사형 기저 함수들 (RBF φ) 이다. 가우스 함수들이 통상적으로 사용되지만, 코시 함수, 다중 2차 (multiquadratic) 함수 및 역-다중 2차 함수도 또한 사용될 수 있다. 본 실시형태에서, 각각의 숨겨진 뉴런은 그것의 입력으로부터 뉴런의 중심 포인트, c, 까지의 거리를 계산하고, 또한 RBF 를 그 거리에 적용한다. 출력 층 (2916) 의 뉴런들 (O i (x)) 은, 예를 들어 다음 식에 따라 숨겨진 층의 출력들과 출력층과 숨겨진 층 양쪽을 접속하는 링크들의 가중들 사이의 가중 합계를 수행한다:
Figure 112006064521288-PCT00014
여기에서 x 는 입력이고, φ 는 RBF 이고, ci 는 i-번째 숨겨진 뉴런의 중심이고, ri 는 그것의 반경이고, wij 는 숨겨진 뉴런 번호 i 와 출력 뉴런 번호 j 를 접속하는 가중 링크이고, 또한 w0 는 출력 뉴런에 대한 바이어스이다.
달리 표현하면, 숨겨진 층 (2914) 내의 뉴런들은 입력 공간으로부터 고차원인 숨겨진 공간으로 비선형 변환을 적용하고, 출력 층 (2916) 은 숨겨진-단위 (hidden-unit) 공간으로부터 출력 공간으로 선형 변환을 수행한다. 이러한 배치에 대한 정당성은 고차원 공간으로 비선형적으로 던져진 패턴 분류 문제들이 저차원 공간에서 보다 선형적으로 분리가능하게 되기 쉽다는 것이다.
기저 함수들의 개수 및 RBF 네트워크에 대한 그들의 개별적인 중심들과 폭들과 같은, 2 개의 단 (3210, 3212) 에서의 분류기들의 파라미터들은 PSO 와 같은 진화 알고리즘에 따라 진화해야 한다. 본 실시형태에서, 알고리즘 내의 각각의 입자는 중심값 및 반경값을 나타낸다. 도 33 을 참조하면, 기저 함수의 폭들은 범위 [0,1] 에서 무작위로 초기화되고, 또한 중심들은 트레이닝 세트 (3310) 내의 입력들 사이에서 무작위로 선택된다.
숨겨진 층에서의 기저 함수들의 개수의 진화에 대하여, 이러한 접근법은 건설적인 방법으로서 특징화될 수 있고, 진화의 초기에, 파퓰레이션에서 각각의 네트워크의 사이즈는 예를 들어 숨겨진 층에 뉴런이 하나뿐인 최소값이다. 진화 프로세스가 진행함에 따라, 네트워크는 숨겨진 층에 뉴런을 보다 많이 부가함으로써 성장한다. 모든 네트워크는 숨겨진 층에서의 단일 기저 함수에 의해 초기화되고, 또한 상기 네트워크가 점진적으로 구축된다. 각각의 최적화 반복에 대해, 군집의 전체적인 성능, 즉, 그 반복에서의 최상의 입자의 평균 제곱 에러가 계산된다 (3312). 전체 에러가 이전의 반복에서의 군집의 성능에 대해 증가했으면 (3314), 하나의 기저 함수가 각각의 신경망의 숨겨진 층에 부가된다 (3316).
입자들은 써클(circle) 토폴로지를 갖는 lbest 근방 (로컬 모델) 으로 구성될 수 있고 여기에서 각각의 입자는 그것의 바로 인접한 이웃들에 의해서만 영향을 받는다. 이러한 종류의 토폴로지에서, 파퓰레이션의 일부는 서로 멀리 떨어질 수 있지만, 이웃들은 가깝게 접속되어 있다. 따라서, 파퓰레이션의 일 세그먼트가 국소적인 최적조건에 수렴할 수 있고, 반면에 다른 세그먼트는 상이한 최적조건에 수렴하거나 또는 계속 탐색한다. 이러한 토폴로지에서는 이웃으로부터 이웃으로 영향이 확산되고, 실제로 최적값이 파퓰레이션의 임의의 부분에 의해 발견된 최상이라면, 결국에는 모든 입자를 내부로 끌어당길 것이다.
PSO 알고리즘에서, 관성 가중은 입자들의 궤적에 영향을 준다. 넌제로 (nonzero) 관성 계수는 동일 방향으로 계속 움직이는 입자를 선호하게 한다. 상기 관성 계수는, 시간에 따라 관성 가중을 통상적으로 대략 0.9 로부터 0.4 로 감소시키는 등에 의해, 불완전성을 억제하도록 조정될 수 있다. 대안으로, 상기 계수는 그것이 선형으로 감소하는 대신 포물선으로 감소하도록 2차 표현식을 가질 수 있다. 시간-감소하는 계수의 효과는 탐색을 협소하게 하는 경향이 있고, 탐구 (exploratory) 모드로부터 착취 (exploitative) 모드로의 이동을 유도하는 경향이 있다.
다음의 테이블은 예시적인 계수값들의 세트를 요약한다:
Figure 112006064521288-PCT00015
분류기 (2616) 는 또한 대응하는 특성에 기초하여 제안된 정정 액션을 제공할 수 있다. 특히, 분류기 (2616) 는 데이터베이스 (114) 와 같은, 메모리에 액세스하여 다양한 제조 및/또는 테스트 프로세스 특성에 응답하여 정정 액션 후보들의 세트를 식별하도록 구성될 수 있다. 예를 들어, 식별된 패턴과 정합하는 특성이, 컴포넌트들이 제조 프로세스에서의 특정한 포인트에서 과도하게 열에 노출되었다라는 것을 나타내면, 분류기 (2616) 는 특정한 제조 포인트에서 웨이퍼의 온도 또는 노출 시간을 줄이는 것과 같이, 이슈를 치유하기 위해 상기 특성에 대응하는 잠재적인 정정 액션에 대해 데이터베이스 (114) 를 체크할 수 있다.
패턴 인식 시스템 (2612) 은 또한 식별된 패턴들 및 대응하는 이슈들에 대한 부가적인 정보를 배우도록 구성될 수 있다. 예를 들어, 패턴 인식 시스템 (2612) 은 패턴을 식별한 후에 진단 피드백 정보를 수신하도록 구성될 수 있다. 진단 피드백 정보는 식별된 패턴에 의해 초래되는 제조 프로세스 또는 테스트 프로세스에서 식별되는 실제의 이슈들에 적절하게 대응한다. 그 다음으로 패턴 인식 시스템은 데이터의 미래 분석을 위한 진단 피드백 정보를 사용하여 이슈들의 재현을 식별할 수 있다.
본 발명의 테스트 시스템 (100) 의 다양한 기능 및 엘리먼트는 종래의 단일-사이트 데이터 뿐만 아니라 멀티사이트 테스트 데이터를 처리하도록 구성될 수 있다. 종래의 단일-사이트 데이터와 달리, 멀티사이트 데이터는 웨이퍼의 상이한 부분으로부터 동시에 수신되고, 또한 상이한 하드웨어 및 소프트웨어 자원을 사용하여 수신될 수 있다. 결과적으로, 상이한 사이트로부터의 데이터는 프로브 하드웨어의 차이와 같은 디바이스들의 차이를 제외한 요인들에 의해 변할 수 있다. 따라서, 테스트 시스템 (100) 은 멀티사이트 테스팅과 연관된 잠재적인 문제점들을 최소화하고 및/또는 멀티사이트 테스팅과 연관될 수 있는 문제점들을 식별하기 위해 멀티사이트 테스팅을 위한 테스트 데이터를 분석하도록 구성될 수 있다.
예를 들어, 일 실시형태에서, 보충 데이터 분석 엘리먼트 (206), 복합 분석 엘리먼트 (214), 및/또는 진단 시스템 (216) 은, 각각의 개별 프로브로부터의 테스트 데이터가 별도의 테스터 (102) 에 의해 생성된 것 처럼 취급되도록, 각각의 개별 사이트를 위한 테스트 데이터에 대해 독립적인 분석을 수행할 수 있다. 결과적으로, 다양한 사이트 사이에서의 불일치는 데이터 분석 문제점을 초래하지 않 는다.
다른 실시형태에서, 보충 데이터 분석 엘리먼트 (206), 복합 분석 시스템 (214), 및/또는 진단 시스템 (216) 은 상이한 사이트로부터의 데이터를 일부 계산을 위해 독립적으로 분석하고, 2 이상의 사이트로부터의 데이터를 다른 계산을 위해 병합하고, 또한 독립적인 사이트 데이터와 병합된 데이터 양쪽을 사용하여 일부 계산들을 수행할 수 있다. 예를 들어, 중앙값 테스터 값과 관련되는 통계적인 계산들은 각각의 사이트에 대해 독립적으로 계산될 수 있다. 근접 분석을 수행하기 위해, 그러나, 테스트 시스템 (100) 은 모든 사이트로부터의 데이터를 사용하는 병합된 데이터 세트를 사용할 수 있다. 상기 데이터는 임의의 적절한 방법으로 취급될 수 있고 따라서 멀티사이트 테스팅에 의해 초래된 변동들이 인식되고 및/또는 처리된다.
동작에 있어서, 데이터는 다양한 소스로부터 수신된다. 문제점을 아는 것에 정확하게 대응하는 데이터와 같은, 상기 데이터는 규칙-기반 진단을 위해 최초로 분석된다. 진단 시스템 (216) 은 규칙-기반 분석을 사용하여 식별된 특정한 이슈들을 나타내는 출력을 생성한다. 그 다음으로 상기 데이터는 패턴 인식 시스템 (2612) 으로 제공되고, 상기 패턴 인식 시스템은 데이터를 분석하여 데이터 내의 패턴들을 식별한다. 그 다음으로 패턴 인식 시스템 (2612) 은 식별된 패턴들을 특정한 제조 이슈들 또는 테스팅 이슈들에 대응하여 분석한다. 패턴 인식 시스템 (2612) 은 패턴에 기초하여 특정한 이슈들과 연관된 가능성을 적절하게 할당한다. 진단 시스템 (216) 은 또한 데이터 내의 식별된 패턴들에 기초하여 정정 액션을 추천할 수 있다. 그 다음으로 진단 시스템 (216) 은 다양한 식별된 이슈들 및 제안된 정정 액션을 나타내는 출력 리포트를 생성할 수 있다. 리포트된 이슈들이 처리된 후, 패턴 인식 시스템 (2612) 은 진단 피드백 정보를 수신할 수 있다. 상기 진단 피드백 정보는 나중의 분석에서의 사용을 위해 패턴 인식 시스템 (2612) 에 저장된다.
도시되고 설명된 특정한 실행들은 본 발명 및 본 발명의 최상의 모드를 단지 예시할 뿐이고 본 발명의 범위를 어떤 식으로도 제한하도록 의도되어 있지 않다. 간략화를 위해, 종래의 신호 처리, 데이터 전송, 및 시스템들의 다른 기능적인 양태들 (및 시스템들의 개별적으로 동작하는 컴포넌트들의 컴포넌트들) 은 상세하게 설명될 수 없었다. 또한, 여러 도면에 도시된 접속 라인들은 다양한 엘리먼트 간의 기능적인 관계 및/또는 물리적인 결합을 예시하도록 의도되어 있다. 많은 대안적인 또는 부가적인 기능적 관계들 혹은 물리적 접속들이 실제의 시스템에서 존재할 수 있다. 본 발명은 바람직한 실시형태를 참조하여 위에서 설명되었다. 그렇지만, 본 발명의 범위를 일탈하지 않고 변경들 및 변형들이 만들어질 수 있다. 이들 및 다른 변경들 또는 변형들은 다음의 특허청구범위에 표현된 바와 같이, 본 발명의 범위 내에 포함되도록 의도되어 있다.

Claims (3)

  1. 컴포넌트들의 세트를 테스트하여 상기 컴포넌트들의 세트에 대한 테스트 데이터를 발생시키도록 구성된 테스터; 및
    상기 테스터로부터 상기 테스트 데이터를 수신하여 상기 컴포넌트들을 제조하는 프로세스에서의 문제점을 식별하기 위해 상기 테스트 데이터를 자동으로 분석하도록 구성된 진단 시스템으로서, 상기 테스트 데이터의 패턴을 인식하고 상기 인식된 패턴을 상기 문제점과 매칭하도록 구성되어 있는 상기 진단 시스템을 구비하는, 테스트 시스템.
  2. 제 1 항에 있어서,
    상기 진단 시스템은 진화적 알고리즘을 사용하여 상기 패턴을 분류하도록 구성된 분류기 (classifier) 를 포함하는, 테스트 시스템.
  3. 제 2 항에 있어서,
    상기 진화적 알고리듬은 입자 군집 최적화 알고리즘을 포함하는, 테스트 시스템.
KR1020067018204A 2004-02-06 2005-02-07 데이터 분석을 위한 방법 및 장치 KR20070018880A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020067018204A KR20070018880A (ko) 2004-02-06 2005-02-07 데이터 분석을 위한 방법 및 장치

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US60/542,459 2004-02-06
US60/546,088 2004-02-19
US10/817,750 2004-04-02
KR1020067018204A KR20070018880A (ko) 2004-02-06 2005-02-07 데이터 분석을 위한 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20070018880A true KR20070018880A (ko) 2007-02-14

Family

ID=43652126

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067018204A KR20070018880A (ko) 2004-02-06 2005-02-07 데이터 분석을 위한 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20070018880A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101531752B1 (ko) * 2013-03-14 2015-06-25 인텔 코포레이션 지역성 인식 작업 가로채기 런타임 스케줄러
CN114113858A (zh) * 2021-11-26 2022-03-01 广东电网有限责任公司 一种低压电容柜在线监测系统
KR20220153914A (ko) * 2021-05-12 2022-11-21 네이버클라우드 주식회사 시계열 기반 이상 탐지 방법 및 시스템
CN109390245B (zh) * 2017-08-11 2024-03-12 三星电子株式会社 晶片图分析器及分析晶片图的方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101531752B1 (ko) * 2013-03-14 2015-06-25 인텔 코포레이션 지역성 인식 작업 가로채기 런타임 스케줄러
CN109390245B (zh) * 2017-08-11 2024-03-12 三星电子株式会社 晶片图分析器及分析晶片图的方法
KR20220153914A (ko) * 2021-05-12 2022-11-21 네이버클라우드 주식회사 시계열 기반 이상 탐지 방법 및 시스템
US11973672B2 (en) 2021-05-12 2024-04-30 Naver Cloud Corporation Method and system for anomaly detection based on time series
CN114113858A (zh) * 2021-11-26 2022-03-01 广东电网有限责任公司 一种低压电容柜在线监测系统
CN114113858B (zh) * 2021-11-26 2023-11-07 广东电网有限责任公司 一种低压电容柜在线监测系统

Similar Documents

Publication Publication Date Title
US11853899B2 (en) Methods and apparatus for data analysis
US7356430B2 (en) Methods and apparatus for data analysis
US7395170B2 (en) Methods and apparatus for data analysis
US7225107B2 (en) Methods and apparatus for data analysis
US20080189575A1 (en) Methods and apparatus for data analysis
US8041541B2 (en) Methods and apparatus for data analysis
JP4728968B2 (ja) データ解析の方法および装置
US20110178967A1 (en) Methods and apparatus for data analysis
JP5030582B2 (ja) データ分析用の装置および方法
US20060085155A1 (en) Methods and apparatus for local outlier detection
US20080091977A1 (en) Methods and apparatus for data analysis
EP1989561A2 (en) Methods and apparatus for data analysis
KR20070018880A (ko) 데이터 분석을 위한 방법 및 장치
JP2009283947A (ja) データ分析用の方法および装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E601 Decision to refuse application