KR20130139221A - 반도체 프로세스 레시피들의 자동화된 검증을 위한 방법 및 장치 - Google Patents

반도체 프로세스 레시피들의 자동화된 검증을 위한 방법 및 장치 Download PDF

Info

Publication number
KR20130139221A
KR20130139221A KR1020137002123A KR20137002123A KR20130139221A KR 20130139221 A KR20130139221 A KR 20130139221A KR 1020137002123 A KR1020137002123 A KR 1020137002123A KR 20137002123 A KR20137002123 A KR 20137002123A KR 20130139221 A KR20130139221 A KR 20130139221A
Authority
KR
South Korea
Prior art keywords
semiconductor process
recipe
rules
rule
results
Prior art date
Application number
KR1020137002123A
Other languages
English (en)
Other versions
KR101510752B1 (ko
Inventor
찰스 하디
로저 알란 린들리
Original Assignee
어플라이드 머티어리얼스, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 어플라이드 머티어리얼스, 인코포레이티드 filed Critical 어플라이드 머티어리얼스, 인코포레이티드
Publication of KR20130139221A publication Critical patent/KR20130139221A/ko
Application granted granted Critical
Publication of KR101510752B1 publication Critical patent/KR101510752B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16ZINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
    • G16Z99/00Subject matter not provided for in other main groups of this subclass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data

Abstract

반도체 프로세스 단계들의 자동화된 검증을 위한 방법들 및 장치가 본 명세서에서 제공된다. 일부 예들에서, 반도체 프로세스 레시피를 검증하기 위한 방법은, 반도체 프로세스 도구를 위한 동작 윈도우를 설명하는 규칙 세트를 선택하는 단계; 제 1 결과들을 생성하기 위하여, 상기 규칙 세트의 제한-검사 규칙(limit-checking rule)들에 대하여 상기 반도체 프로세스 레시피(recipe)에서의 단계들에 의해 정의되는 파라미터 값들을 검사하는 단계; 제 2 결과들을 생성하기 위하여, 상기 규칙 세트의 단계 정의 규칙(step definition rule)들을 이용하여 상기 반도체 프로세스 레시피에서의 단계들로부터 단계 유형들을 결정하는 단계; 제 3 결과들을 생성하기 위하여, 상기 규칙 세트의 단계 전이 규칙(step transition rule)들에 대하여 상기 단계 유형들 사이의 전이들을 검사하는 단계; 및 상기 제 1, 상기 제 2, 상기 제 3 결과들에 기초하여, 컴퓨터를 이용하여, 상기 반도체 프로세스 도구에 의한 상기 반도체 프로세스 레시피의 이용을 위한 검증 데이터를 생성하는 단계를 포함한다.

Description

반도체 프로세스 레시피들의 자동화된 검증을 위한 방법 및 장치{METHOD AND APPARATUS FOR AUTOMATED VALIDATION OF SEMICONDUCTOR PROCESS RECIPES}
본 발명의 실시예들은 일반적으로 반도체 프로세스 레시피(semiconductor process recipe)들의 자동화된 검증을 위한 방법 및 장치에 관한 것이다.
반도체 디바이스들을 제조하는 프로세스는 수백 또는 심지어 수천의 프로세스 변수들을 설명하는 다수의 순차적인 단계들을 요구할 수 있다. 또한, 프로세스 단계들을 수행하기 위해 이용되는 도구들은 더 이상의 변수들을 제조 프로세스에 추가하는 다양한 사양(specification)들, 제한들, 및 요건들을 가진다. 따라서, 프로세스 엔지니어들은 프로세스 단계들과, 이러한 단계들이 프로세스에서 이용되는 각각의 도구에 대해 어떻게 수행되어야 하는지를 기술하는 반도체 프로세스 레시피들("레시피들")을 만들어낸다.
부정확한 레시피는 열악한 결과들과, 아마 심지어 프로세싱되는 반도체 웨이퍼들에 대한 손상으로 귀착될 수 있다. 주어진 도구에 대한 허용가능한 동작 윈도우(operating window)는 양호하게 정의될 수 있지만, 상당히 복잡할 수도 있다. 이러한 복잡성으로 인해, 프로세스 엔지니어들은 어떤 점에서 부정확하거나, 그렇지 않을 경우에는 도구에 대해 정의된 동작 윈도우 외부에 속하는 레시피를 실수로 생성할 수 있다. 따라서, 레시피들이 제조하는 동안에 이용되기 전에 레시피들은 검증되어야 한다.
전형적으로, 레시피들은 수동으로 검증하고 있고, 이에 따라, 프로세스 엔지니어는 레시피를, 특정한 도구의 사양들 및 동작 윈도우를 상세히 설명하는 문서들과 교차 참조한다. 레시피를 수동으로 검증하는 것은 노동 집약적(labor-intensive)이고 오류가 발생하기 쉽다. 레시피 검증 프로세스를 자동화하기 위한 시도들은 레시피 파라미터들이 허용된 제한들 내에 속하는 것을 확인하기 위하여 스프레드시트(spreadsheet)를 이용하는 것에 전형적으로 집중하였다. 이것은 약간의 검증도(degree of validation)를 제공하지만, 몇몇 파라미터들의 조합들을 포함하는 복잡한 조건들이 있을 경우, 이러한 프로세스는 부적절할 수 있다. 훨씬 더 어려운 것은 레시피에서의 단계들의 순서 및 유형들이 주어진 도구의 동작 윈도우 요건들을 충족시키는지를 검증하는 것이다.
따라서, 발명자들은 반도체 프로세스 단계들의 자동화된 검증을 위한 개선된 방법 및 장치를 제공하였다.
반도체 프로세스 단계들의 자동화된 검증을 위한 방법들 및 장치가 본 명세서에서 제공된다. 일부 예들에서, 반도체 프로세스 레시피를 검증하기 위한 방법(그리고 상기 방법을 수행하기 위한 명령어들을 저장하는 컴퓨터 판독가능 매체)은, 반도체 프로세스 도구를 위한 동작 윈도우를 설명하는 규칙 세트를 선택하는 단계; 제 1 결과들을 생성하기 위하여, 상기 규칙 세트의 제한-검사 규칙(limit-checking rule)들에 대하여 상기 반도체 프로세스 레시피(recipe)에서의 단계들에 의해 정의되는 파라미터 값들을 검사하는 단계; 제 2 결과들을 생성하기 위하여, 상기 규칙 세트의 단계 정의 규칙(step definition rule)들을 이용하여 상기 반도체 프로세스 레시피에서의 단계들로부터 단계 유형들을 결정하는 단계; 제 3 결과들을 생성하기 위하여, 상기 규칙 세트의 단계 전이 규칙(step transition rule)들에 대하여 상기 단계 유형들 사이의 전이들을 검사하는 단계; 및 상기 제 1, 상기 제 2, 상기 제 3 결과들에 기초하여, 컴퓨터를 이용하여, 상기 반도체 프로세스 도구에 의한 상기 반도체 프로세스 레시피의 이용을 위한 검증 데이터를 생성하는 단계를 포함한다.
일부 실시예들에서, 반도체 프로세스 레시피를 검증하기 위한 장치는, 레시피 검사기(checker) 소프트웨어와, 반도체 프로세스 도구들을 위한 동작 윈도우들을 설명하는 복수의 규칙 세트들을 저장하도록 구성된 메모리; 및, 상기 메모리에 결합된 프로세서로서, 상기 레시피 검사기 소프트웨어가: 반도체 프로세스 도구를 위한 상기 복수의 규칙 세트들로부터 설명하는 규칙 세트를 선택하고; 제 1 결과들을 생성하기 위하여, 상기 규칙 세트의 제한-검사 규칙들에 대하여 상기 반도체 프로세스 레시피에서의 단계들에 의해 정의되는 파라미터 값들을 검사(check)하고; 제 2 결과들을 생성하기 위하여, 상기 규칙 세트의 단계 정의 규칙들을 이용하여 상기 반도체 프로세스 레시피에서의 단계들로부터 단계 유형들을 결정하고; 제 3 결과들을 생성하기 위하여, 상기 규칙 세트의 단계 전이 규칙들에 대하여 상기 단계 유형들 사이의 전이들을 검사하고; 상기 제 1, 상기 제 2, 및 상기 제 3 결과들에 기초하여, 상기 반도체 프로세스 도구에 의한 상기 반도체 프로세스 레시피의 이용을 위한 검증 데이터를 생성하게 실행하도록 구성된, 상기 프로세서를 포함한다.
본 발명의 다른 실시예 및 추가적인 실시예는 이하에서 설명된다.
위에서 간단하게 요약되고 이하에서 더욱 상세하게 논의된 본 발명의 실시예들은 첨부된 도면들에서 도시된 발명의 예시적인 실시예들을 참조하여 이해될 수 있다. 그러나, 첨부된 도면들은 이 발명의 전형적인 실시예들만을 예시하고 있고, 그러므로, 발명이 다른 동등하게 효과적인 실시예들을 인정할 수 있으므로, 그 범위를 제한하는 것으로 간주되지 않아야 하는 것에 주목해야 한다.
도 1은 컴퓨팅 시스템의 예시적인 실시예들을 도시하는 블록도이다.
도 2는 레시피 검사기(recipe checker)의 실시예를 도시하는 블록도이다.
도 3은 프로세스 레시피를 검증하기 위한 방법의 실시예를 도시하는 흐름도이다.
이해를 용이하게 하기 위하여, 동일한 참조 번호들은, 가능하다면, 도면들에 공통적인 동일한 구성요소들을 지정하도록 이용되었다. 도면들은 축척을 조정하도록 그려진 것이 아니고, 명료함을 위하여 단순화될 수 있다. 하나의 실시예의 구성요소들 및 특징들은 더 이상의 인용 없이 다른 실시예들 내에 유익하게 통합될 수 있다고 예상된다.
도 1은 컴퓨팅 시스템(100)의 예시적인 실시예들을 도시하는 블록도이다. 컴퓨팅 시스템(100)은 프로세서(102), 메모리(104), 다양한 지원 회로들(106), I/O 인터페이스(108), 및 디스플레이(display)(109)를 포함한다. 여기에서 지칭되는 바와 같은 "컴퓨터"는 적어도 프로세서 시스템(102) 및 메모리(104)를 포함할 수 있다. 일반적으로, 프로세서(102)는 하나 이상의 중앙 프로세싱 유닛(CPU : central processing unit)들을 포함할 수 있다. CPU는 프로그램 명령어들("소프트웨어")을 실행하도록 구성된 회로를 포함한다. 프로세서(102)를 위한 지원 회로들(106)은 기존의 캐시(cache), 전원 공급 장치(power supply)들, 클록 회로들, 데이터 레지스터(data register)들, I/O 인터페이스들 등을 포함한다. I/O 인터페이스(108)는 메모리(104)에 직접 결합될 수 있거나, 프로세서(102)를 통해 결합될 수 있다. I/O 인터페이스(108)는 디스플레이(109) 및 IO 디바이스들(111)에 결합될 수 있다. IO 디바이스들은 다양한 입력/출력 디바이스들(예를 들어, 키보드, 마우스, 등)을 포함할 수 있다. 메모리(104)는 다음의 랜덤 액세스 메모리(random access memory), 판독 전용 메모리(read only memory), 자기-저항 판독/기록 메모리(magneto-resistive read/write memory), 광학 판독/기록 메모리(optical read/write memory), 캐시 메모리, 자기적 판독/기록 메모리(magnetic read/write memory) 등 중의 하나 이상을 포함할 수 있다.
메모리(104)는 프로세서(102)에 의한 실행을 위해 구성된 프로그램 명령어들을 포함하는 소프트웨어(110)를 저장한다. 소프트웨어(110)는 오퍼레이팅 시스템(OS : operating system)(112) 및 반도체 프로세스 레시피 검사기 도구("레시피 검사기(recipe checker)(114)")를 포함할 수 있다. OS(112)는 레시피 검사기(114) 및 컴퓨팅 시스템(100) 사이의 인터페이스를 제공할 수 있다. OS(112)는 당 업계에서 알려진 다양한 오퍼레이팅 시스템들을 이용하여 구현될 수 있다. 레시피 검사기(114)는 이하에서 상세하게 설명되는 바와 같이, 반도체 프로세스 레시피들의 검증을 수행하기 위하여, OS(112)의 제어 하에서 프로세서(102)에 의해 실행될 수 있다.
일부 실시예들에서, 컴퓨팅 시스템(100)은 IO 인터페이스(108)를 통해 반도체 프로세스 도구(150)에 결합될 수 있다. 따라서, 컴퓨터 시스템(100)의 출력, 특히, 레시피 검사기(114)에 의해 생성된 출력은 반도체 프로세싱을 수행하기 위한 반도체 프로세스 도구(150)를 제어하기 위해 유익하게 이용될 수 있다. 반도체 프로세스 도구(150)는 반도체 디바이스들을 프로세싱하고 제조하기 위해 당 업계에서 알려진 임의의 유형의 도구일 수 있다.
도 2는 레시피 검사기(114)의 실시예를 도시하는 블록도이다. 레시피 검사기(114)는 규칙 엔진(202), 규칙 데이터베이스(204), 입력 인터페이스("입력 IF(206)"), 및 출력 인터페이스("출력 IF(208)")를 포함할 수 있다. 규칙 데이터베이스(204)는 복수의 규칙 세트(rule set)들(216)을 포함할 수 있다. 입력 IF(206)는 하나 이상의 레시피들(210) 및 도구 구성 데이터("도구 구성(214)")를 수신하도록 구성된다. 입력 IF(206)는 레시피(들)(210) 및 도구 구성(214)을 규칙 엔진(202)에 결합하였다. 규칙 엔진(202)은 규칙 세트들(216) 중의 하나 이상을 얻기 위하여 규칙 데이터베이스(204)를 액세스하도록 구성된다. 규칙 엔진(202)은 검증 데이터(212)를 발생하고, 이것은 출력 IF(208)를 통해 출력으로서 제공된다. 입력 IF(206) 및 출력 IF(208)는 컴퓨팅 시스템(100)의 디스플레이(109) 상에 도시될 수 있는 그래픽 사용자 인터페이스(GUI : graphic user interface)(116)와 같은 사용자 인터페이스의 일부일 수 있다.
동작 시에, 레시피(들)(210)는 하나 이상의 반도체 프로세스 레시피들을 설명한다. 레시피(들)(210)는 평범한 텍스트 파일(text file), 확장가능 마크업 언어(XML : extensible markup language) 파일, 등과 같은 임의의 전자 포맷(electronic format)일 수 있다. 각각의 레시피는 반도체 프로세스 도구("프로세스 도구")에 의해 반도체 웨이퍼 상에서 수행될 프로세싱 단계들("단계들")의 시퀀스(sequence)를 설명한다. 레시피에서의 단계는 하나 이상의 명령어들에 의해 정의될 수 있다. "명령어"는 도구에 의해 수행되어야 할 작업, 및/또는 프로세스 도구와 연관된 하나 이상의 파라미터들의 구성을 설명한다. 예를 들어, 명령어는 프로세스 도구의 특정한 파라미터로의 값의 배정(assignment)을 설명할 수 있다. 당 업계에서 잘 알려져 있는 바와 같이, 프로세스 도구는 식각(etching), 증착(deposition), 등과 같은 다양한 작업(action)들을 수행할 수 있고, 이들 각각은 소스 전력, 바이어스 전력, 프로세스 가스 흐름, 프로세스 가스 압력, 등과 같은 상이한 값들로 설정될 수 있는 다양한 파라미터들을 포함한다. 따라서, 레시피에서의 단계는 희망하는 반도체 프로세스를 달성하기 위하여 작업을 호출(invoke)할 수 있고, 및/또는 프로세스 도구의 다양한 파라미터들을 설정할 수 있다.
각각의 프로세스 도구는 다양한 작업들 및 파라미터들에 대한 제약(constraint)들(예를 들어, 파라미터들에 대한 최소/최대 값들, 요구되는 그리고 허용되는 작업들 및 작업들의 시퀀스들, 등)을 정의하는 "동작 윈도우(operating window)"를 포함한다. 규칙 데이터베이스(204)는 복수의 프로세스 도구들에 대한 규칙 세트들(216)을 포함한다. 각각의 규칙 세트(216)는 특정한 프로세스 도구에 대한 동작 윈도우(또는 프로세스 도구가 다수의 버전(version)들 또는 구성들을 가질 경우에 프로세스 도구의 버전)를 설명한다. 일반적으로, 규칙 엔진(202)은 레시피(들)(210)가 그 의도된 프로세스 도구들에 대해 유효한지를 결정하기 위하여, 규칙 세트들(216)에 대해 레시피(들)(210)를 검사한다. 도구 구성(214)은 특정한 프로세스 도구를 위한 구성 데이터를 제공한다. 규칙 엔진(202)은 구성된 바와 같은 그 특정한 프로세스 도구에 대응하는 규칙 세트들(216)로부터 특정한 규칙 세트를 선택하기 위하여 도구 구성(214)을 이용할 수 있다.
규칙 세트(216)는 구성된 바와 같은 프로세스 도구에 대한 동작 윈도우를 정의하는 다양한 규칙들을 포함한다. 규칙 세트(216)는 상이한 유형들의 규칙들을 포함할 수 있다. "규칙"은 프로세스 도구에 대한 파라미터들 및/또는 작업들과 연관된 제약을 정의한다. 규칙은 우선순위(priority)를 포함할 수 있다. 예를 들어, 이러한 규칙의 위반이 프로세스 도구 및/또는 반도체 웨이퍼에 대해 손상을 야기할 수 있다는 점에서, 규칙은 "심각(severe)"으로서 정의될 수 있다. 이러한 규칙의 위반이 추천되지 않지만, 그 외에는 가능하다는 점에서, 규칙은 "경고(warning)"로서 정의될 수 있다. 당업자들은 추가적인 및/또는 상이한 유형들의 우선순위가 규칙들에 배정될 수 있다는 것을 인식할 것이다.
일부 실시예들에서, 규칙 세트(216)는 제한-검사 규칙(limit-checking rule)들을 포함한다. "제한-검사 규칙"은 프로세스 도구의 특정한 변수 파라미터들에 대한 제약들을 정의할 수 있다. 예를 들어, 하나의 제한-검사 규칙은 프로세싱 동안에 프로세스 도구의 챔버에서 유지되어야 할 최소 압력을 정의할 수 있다. 또 다른 제한-검사 규칙은 이러한 압력의 최대값을 정의할 수 있다. 또 다른 제한-검사 규칙은 최소/최대 가스 흐름을 정의할 수 있다. 당업자들은 특정한 프로세스 도구의 다양한 파라미터들에 대해 다양한 제한-검사 규칙들이 형성될 수 있다는 것을 인식할 것이다.
일부 실시예들에서, 규칙 세트(216)는 단계 정의 규칙(step definition rule)들을 포함한다. "단계 정의 규칙"은 단계 유형에 대한 요건들의 세트(set of requirements)를 정의할 수 있다. "단계 유형(step type)"은 프로세스 도구에 의해 수행될 수 있는 작업이다. 예를 들어, 식각 챔버(etch chamber)는 소스 식각(source etch) 단계, 바이어스 식각(bias etch) 단계, 플러시(flush) 단계, 세정(clean) 단계, 등을 수행할 수 있다. 각각의 단계 유형은 도구의 특정한 파라미터들의 설정과, 이러한 파라미터들에 배정된 값들에 의해 정의된다. 단계 정의 규칙에 의해 정의된 요건들은 어느 파라미터들 및 그 값들이 특정한 단계 유형으로 귀착되는지를 기술한다. 예를 들어, "x" 와트(watt)의 소스 전력(source power), "y" 와트의 바이어스 전력(bias power), 및 "z" sccm의 가스 흐름은 소스 식각 단계 유형으로서 분류될 수 있고, 단계 정의 규칙에서의 요건들은 이에 따라 설정될 수 있다. "a" 와트의 소스 전력, "b" 와트의 바이어스 전력, 및 "c" sccm의 가스 흐름은 바이어스 식각 단계 유형으로서 분류될 수 있고, 단계 정의 규칙에서의 요건들은 이에 따라 설정될 수 있다. 당업자들은 주어진 프로세스 도구가 다양한 단계 유형들을 가질 수 있고, 단계 정의 규칙들이 이러한 단계 유형들을 분류하기 위해 정의될 수 있다는 것을 인식할 것이다.
일부 실시예들에서, 규칙 세트(216)는 단계 전이 규칙(step transition rule)들을 포함한다. "단계 전이 규칙"은 단계 유형들 사이에서 허용되고 요구되는 전이들을 정의할 수 있다. 프로세스 도구는 다양한 단계 유형들을 수행할 수 있지만, 반드시 임의의 시퀀스는 아니다. 프로세스 도구의 동작 윈도우는 단계 유형들 사이에서 허용되고 및/또는 요구되는 전이들을 정의할 수 있다. 예를 들어, 단계 전이 규칙은 단계 A와, 그 이후의 단계 B가 허용된다는 것을 정의할 수 있다. 또 다른 단계 전이 규칙은, 단계 C와, 그 이후의 단계 E가 허용되지 않지만, 오히려 단계 D가 단계들 C 및 E 사이에서 수행되어야 한다고 정의할 수 있다.
당업자들은 규칙 세트들(216)이 위에서 논의된 제한-검사, 단계 정의, 및 단계 전이 규칙들의 다양한 구현예들을 포함할 수 있다는 것을 인식할 것이다. 예를 들어, 규칙들 중의 임의의 것은 프로세스 도구의 상이한 변형들에 대한 상이한 규칙들로 구성될 수 있다. 규칙들 중의 임의의 것은 의존성 정보(dependency information)로 구성될 수 있고, 예를 들어, 프로세스 도구가 어떤 특징을 가지는 경우, 그 특징은 이에 대응하여 구성되어야 한다.
동작 시에, 규칙 엔진(202)은 레시피(210)가 유효한 것인지를 결정하기 위하여, 적절한 규칙 세트(216)에 대하여 각각의 레시피(210)를 적용한다. 일부 실시예들에서, 규칙 엔진(202)은 이러한 규칙들의 (만약 있다면) 위반들을 표시하는 제 1 결과들을 생성하기 위하여 제한-검사 규칙들에 대한 레시피에서의 단계들에 의해 정의되는 파라미터 값들을 검사한다. 다음으로, 규칙 엔진(202)은 레시피에서의 단계들을 특정한 단계 유형들로 분류하는 제 2 결과들을 생성하기 위하여, 단계 정의 규칙들을 이용하여 레시피에서의 단계 유형들을 결정할 수 있다. 다음으로, 규칙 엔진(202)은 이러한 규칙들의 (만약 있다면) 위반들을 표시하는 제 3 결과들을 생성하기 위하여 단계 전이 규칙들에 대해 단계 유형들 사이의 전이들을 검사할 수 있다. 다음으로, 규칙 엔진(202)은 제 1, 제 2, 및 제 3 결과들에 기초하여 구성된 바와 같은 특정한 프로세스 도구에 의한 레시피의 이용을 위한 검증 데이터(212)를 생성할 수 있다.
검증 데이터(212)는 적용된 규칙 세트에서의 적어도 하나의 규칙의 위반을 설명하는 (만약 있다면) 에러(들)를 표시할 수 있다. 일부 실시예들에서, 에러 표시(들)는 위반을 방지하기 위해 필요한 레시피의 수정(들)을 더욱 설명할 수 있다. 검증 데이터(212)는 출력 IF(208)를 통해 출력으로서 제공된다. 예를 들어, 검증 데이터(212)는 GUI를 통해 사용자에게 디스플레이될 수 있으므로, 사용자는 유효한 레시피를 생성하기 위하여 요구되는 잠재적인 수정들 및 위반들을 관찰할 수 있다.
일부 실시예들에서, 레시피 검사기(114)는 레시피 완화 모듈(recipe mitigation module)(218)을 포함한다. 레시피 완화 모듈(218)은 검증 데이터(212) 및 레시피(들)(210)를 수신하도록 구성된다. 레시피 완화 모듈(218)은 유효한 것으로 표시되었던 레시피(들)를 수정하도록 구성된다. 예를 들어, 레시피 완화 모듈(218)은 유익하게도, 검증 데이터(212)에서 위반 및 추천된 수정들을 식별할 수 있고, 위반을 방지하기 위하여 문제가 되는 레시피를 자동으로 수정할 수 있다. 레시피 완화 모듈(218)은 파라미터 값들의 변경, 단계들의 삽입, 단계들의 제거, 단계들의 재배치(re-arranging) 등에 의해 수정할 수 있으므로, 레시피는 특정한 적용된 규칙 세트를 만족시킬 것이다. 레시피 완화 모듈(218)은 수정된 레시피(들)(220)를 출력으로 생성한다.
도 3은 프로세스 레시피를 검증하기 위한 방법(300)의 실시예를 도시하는 흐름도이다. 방법(300)은 위에서 설명된 컴퓨팅 시스템(100)에 의해 수행될 수 있다. 방법(300)은 301에서 시작된다. 302에서, 반도체 프로세스 도구를 위한 동작 윈도우를 설명하는 규칙 세트가 선택된다. 일부 실시예들에서, 규칙 세트는 도구 구성 데이터에 기초하여 선택될 수 있다. 304에서는, 제 1 결과들을 생성하기 위하여, 반도체 프로세스 레시피에서의 단계들에 의해 정의된 파라미터 값들이 규칙 세트의 제한-검사 규칙들에 대해 검사된다. 306에서는, 제 2 결과들을 생성하기 위하여, 규칙 세트의 단계 정의 규칙들을 이용하여 반도체 프로세스 레시피에서의 단계들로부터 단계 유형들이 결정된다. 308에서는, 제 3 결과들을 생성하기 위하여, 규칙 세트의 단계 전이 규칙들에 대하여 단계 유형들 사이의 전이들이 검사된다. 310에서는, 제 1, 제 2, 및 제 3 결과들에 기초하여, 반도체 프로세스 도구에 의한 반도체 프로세스 레시피의 이용을 위한 검증 데이터가 유익하게 생성된다.
방법(300)은 312를 포함할 수 있고, 312에서는, GUI를 이용하여 컴퓨터에 결합된 디스플레이 상에 검증 데이터가 디스플레이된다. 방법(300)은 314-316을 포함할 수 있다. 314에서는, 레시피가 유효한 것으로 표시되었는지에 대한 결정이 행해진다. 만약 그렇다면, 방법(300)은 399에서 종료된다. 그렇지 않을 경우에는, 방법(300)은 316으로 진행한다. 316에서는, 검증 데이터에 의해 설명되는 에러(들)를 방지하기 위하여, 반도체 프로세스 레시피가 유익하게 수정된다. 그 다음으로, 방법(300)은 304로 복귀할 수 있고, 반복될 수 있다.
발명의 측면은 컴퓨터 시스템에 의한 이용을 위한 프로그램 제품으로서 구현된다. 프로그램 제품의 프로그램(들)은 실시예들의 기능들을 정의하고, 다양한 컴퓨터 판독가능 매체 상에 포함될 수 있고, (i) 기록 불가능한 저장 매체(non-writable storage medium)(예를 들어, CD-ROM 드라이브 또는 DVD 드라이브에 의해 판독가능한 CD-ROM 또는 DVD-ROM 디스크들과 같은 컴퓨터 내의 판독전용 메모리 디바이스들) 상에 영구적으로 저장된 정보; 및 (ii) 기록가능한 저장 매체(writable storage medium)(예를 들어, 디스켓 드라이브 또는 하드-디스크 드라이브 또는 판독/기록가능한 CD 또는 판독/기록가능한 DVD 내의 플로피 디스크들) 상에 저장된 변경가능한 정보를 포함하지만, 이것으로 제한되지 않는다. 이러한 컴퓨터 판독가능 매체가 발명의 기능들을 지시하는 컴퓨터-판독가능 명령어들을 전달할 때, 이러한 컴퓨터 판독가능 매체는 발명의 실시예들을 나타낸다.
상기한 것은 본 발명의 실시예들에 관한 것이지만, 발명의 기본적인 범위로부터 이탈하지 않으면서 발명의 다른 실시예 및 추가적인 실시예가 도출될 수 있다.

Claims (15)

  1. 반도체 프로세스 도구를 위한 동작 윈도우를 설명하는 규칙 세트를 선택하는 단계;
    제 1 결과들을 생성하기 위하여, 상기 규칙 세트의 제한-검사 규칙(limit-checking rule)들에 대하여 상기 반도체 프로세스 레시피(recipe)에서의 단계들에 의해 정의되는 파라미터 값들을 검사하는 단계;
    제 2 결과들을 생성하기 위하여, 상기 규칙 세트의 단계 정의 규칙(step definition rule)들을 이용하여 상기 반도체 프로세스 레시피에서의 단계들로부터 단계 유형들을 결정하는 단계;
    제 3 결과들을 생성하기 위하여, 상기 규칙 세트의 단계 전이 규칙(step transition rule)들에 대하여 상기 단계 유형들 사이의 전이들을 검사하는 단계; 및
    상기 제 1, 상기 제 2, 상기 제 3 결과들에 기초하여, 컴퓨터를 이용하여, 상기 반도체 프로세스 도구에 의한 상기 반도체 프로세스 레시피의 이용을 위한 검증 데이터를 생성하는 단계를 포함하는, 반도체 프로세스 레시피를 검증하는 컴퓨터 구현 방법.
  2. 청구항 1에 있어서,
    상기 선택하는 단계는,
    상기 반도체 프로세스 도구를 위한 구성 데이터를 얻는 단계; 및
    상기 구성 데이터에 기초하여 복수의 규칙 세트들로부터 상기 규칙 세트를 선택하는 단계를 포함하는, 반도체 프로세스 레시피를 검증하는 컴퓨터 구현 방법.
  3. 청구항 1에 있어서,
    상기 제한-검사 규칙들은 상기 반도체 프로세스 도구의 변수 파라미터들에 대한 제약들을 정의하는, 반도체 프로세스 레시피를 검증하는 컴퓨터 구현 방법.
  4. 청구항 1에 있어서,
    상기 단계 정의 규칙들은 상기 단계 유형들의 각각에 대한 요건들의 세트를 정의하는, 반도체 프로세스 레시피를 검증하는 컴퓨터 구현 방법.
  5. 청구항 1에 있어서,
    상기 단계 전이 규칙들은 단계 유형들 사이의 허용 및 요구된 전이들을 정의하는, 반도체 프로세스 레시피를 검증하는 컴퓨터 구현 방법.
  6. 청구항 1에 있어서,
    상기 검증 데이터는 상기 규칙 세트의 적어도 하나의 규칙의 위반을 설명하는 적어도 하나의 에러 표시자를 포함하는, 반도체 프로세스 레시피를 검증하는 컴퓨터 구현 방법.
  7. 청구항 6에 있어서,
    상기 적어도 하나의 에러 표시는 상기 위반을 방지하기 위하여 상기 반도체 프로세스 레시피의 적어도 하나의 수정을 더 설명하거나, 상기 방법은 상기 적어도 하나의 에러 표시자에 의해 설명되는 상기 위반을 방지하기 위하여 상기 컴퓨터를 이용하여 상기 반도체 프로세스 레시피를 수정하는 단계를 더 포함하는, 반도체 프로세스 레시피를 검증하는 컴퓨터 구현 방법.
  8. 청구항 6에 있어서,
    상기 적어도 하나의 에러 표시자에 의해 설명되는 상기 위반을 방지하기 위하여 상기 컴퓨터를 이용하여 상기 반도체 프로세스 레시피를 수정하는 단계를 더 포함하고, 상기 수정하는 단계는 상기 반도체 프로세스 레시피의 상기 단계들 사이에 새로운 단계들을 삽입하는 단계를 포함하는, 반도체 프로세스 레시피를 검증하는 컴퓨터 구현 방법.
  9. 청구항 1에 있어서,
    그래픽 사용자 인터페이스(GUI : graphical user interface)를 이용하여 상기 컴퓨터에 결합된 디스플레이 상에 상기 검증 데이터를 디스플레이하는 단계를 더 포함하는, 반도체 프로세스 레시피를 검증하는 컴퓨터 구현 방법.
  10. 레시피 검사기 소프트웨어와, 반도체 프로세스 도구들을 위한 동작 윈도우들을 설명하는 복수의 규칙 세트들을 저장하도록 구성된 메모리;
    상기 메모리에 결합된 프로세서로서, 상기 레시피 검사기 소프트웨어가:
    반도체 프로세스 도구를 위한 상기 복수의 규칙 세트들로부터 설명하는 규칙 세트를 선택하고;
    제 1 결과들을 생성하기 위하여, 상기 규칙 세트의 제한-검사 규칙들에 대하여 상기 반도체 프로세스 레시피에서의 단계들에 의해 정의되는 파라미터 값들을 검사하고;
    제 2 결과들을 생성하기 위하여, 상기 규칙 세트의 단계 정의 규칙들을 이용하여 상기 반도체 프로세스 레시피에서의 단계들로부터 단계 유형들을 결정하고;
    제 3 결과들을 생성하기 위하여, 상기 규칙 세트의 단계 전이 규칙들에 대하여 상기 단계 유형들 사이의 전이들을 검사하고;
    상기 제 1, 상기 제 2, 및 상기 제 3 결과들에 기초하여, 상기 반도체 프로세스 도구에 의한 상기 반도체 프로세스 레시피의 이용을 위한 검증 데이터를 생성하게 실행하도록 구성된, 상기 프로세서; 및, 선택적으로,
    상기 프로세서에 결합되고, 그래픽 사용자 인터페이스(GUI)를 이용하여 상기 검증 데이터를 디스플레이하도록 구성된 디스플레이를 포함하는, 반도체 프로세스 레시피를 검증하기 위한 장치.
  11. 청구항 10에 있어서,
    상기 메모리는 상기 반도체 프로세스 도구들의 각각에 대한 구성 데이터를 저장하도록 구성되고, 상기 프로세서는 상기 반도체 프로세스 도구를 위한 구성 데이터에 기초하여 상기 복수의 규칙 세트들로부터 상기 규칙 세트를 선택하도록 구성되는, 반도체 프로세스 레시피를 검증하기 위한 장치.
  12. 청구항 10에 있어서,
    상기 제한-검사 규칙들은 상기 반도체 프로세스 도구의 변수 파라미터들에 대한 제약들을 정의하고, 상기 단계 정의 규칙들은 상기 단계 유형들의 각각에 대한 요건들의 세트를 정의하고, 상기 단계 전이 규칙들은 단계 유형들 사이의 허용 및 요구된 전이들을 정의하는, 반도체 프로세스 레시피를 검증하기 위한 장치.
  13. 청구항 10에 있어서,
    상기 검증 데이터는 상기 규칙 세트의 적어도 하나의 규칙의 위반을 설명하는 적어도 하나의 에러 표시자를 포함하는, 반도체 프로세스 레시피를 검증하기 위한 장치.
  14. 청구항 13에 있어서,
    상기 프로세서는 상기 적어도 하나의 에러 표시자에 의해 설명된 위반을 방지하기 위하여 상기 컴퓨터를 이용하여 상기 반도체 프로세스 레시피를 수정하도록 더 구성되는, 반도체 프로세스 레시피를 검증하기 위한 장치.
  15. 프로세서에 의해 실행될 때, 청구항 1 내지 청구항 9 중의 어느 한 항에서 설명된 바와 같은 방법을 포함하는, 반도체 프로세스 레시피를 검증하는 방법을 상기 프로세서가 수행하도록 하는 명령어들을 저장한 컴퓨터 판독가능 매체.
KR1020137002123A 2010-08-31 2011-08-31 반도체 프로세스 레시피들의 자동화된 검증을 위한 방법 및 장치 KR101510752B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US37856110P 2010-08-31 2010-08-31
US61/378,561 2010-08-31
US13/044,747 2011-03-10
US13/044,747 US8527081B2 (en) 2010-08-31 2011-03-10 Method and apparatus for automated validation of semiconductor process recipes
PCT/US2011/049918 WO2012030930A2 (en) 2010-08-31 2011-08-31 Method and apparatus for automated validation of semiconductor process recipes

Publications (2)

Publication Number Publication Date
KR20130139221A true KR20130139221A (ko) 2013-12-20
KR101510752B1 KR101510752B1 (ko) 2015-04-10

Family

ID=45698239

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137002123A KR101510752B1 (ko) 2010-08-31 2011-08-31 반도체 프로세스 레시피들의 자동화된 검증을 위한 방법 및 장치

Country Status (6)

Country Link
US (1) US8527081B2 (ko)
JP (1) JP5762542B2 (ko)
KR (1) KR101510752B1 (ko)
CN (1) CN103080939B (ko)
TW (1) TWI479352B (ko)
WO (1) WO2012030930A2 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5969875B2 (ja) * 2012-09-28 2016-08-17 株式会社Screenホールディングス データ生成システムおよびデータ生成方法
CN104977857B (zh) * 2014-04-03 2018-01-09 北京北方华创微电子装备有限公司 工艺制程处理方法及系统
CN106158685A (zh) * 2015-04-22 2016-11-23 北大方正集团有限公司 一种半导体炉管工艺的检测装置及方法
WO2020013910A1 (en) * 2018-07-12 2020-01-16 Applied Materials, Inc Constraint programming using block-based workflows

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI227844B (en) * 2001-04-10 2005-02-11 Taiwan Semiconductor Mfg System for comparing process programs
US7698012B2 (en) 2001-06-19 2010-04-13 Applied Materials, Inc. Dynamic metrology schemes and sampling schemes for advanced process control in semiconductor processing
US7225047B2 (en) 2002-03-19 2007-05-29 Applied Materials, Inc. Method, system and medium for controlling semiconductor wafer processes using critical dimension measurements
US7333871B2 (en) 2003-01-21 2008-02-19 Applied Materials, Inc. Automated design and execution of experiments with integrated model creation for semiconductor manufacturing tools
US7877161B2 (en) * 2003-03-17 2011-01-25 Tokyo Electron Limited Method and system for performing a chemical oxide removal process
US7292906B2 (en) * 2004-07-14 2007-11-06 Tokyo Electron Limited Formula-based run-to-run control
US7477960B2 (en) * 2005-02-16 2009-01-13 Tokyo Electron Limited Fault detection and classification (FDC) using a run-to-run controller
US8041103B2 (en) * 2005-11-18 2011-10-18 Kla-Tencor Technologies Corp. Methods and systems for determining a position of inspection data in design data space
US7570796B2 (en) * 2005-11-18 2009-08-04 Kla-Tencor Technologies Corp. Methods and systems for utilizing design data in combination with inspection data
US7676077B2 (en) * 2005-11-18 2010-03-09 Kla-Tencor Technologies Corp. Methods and systems for utilizing design data in combination with inspection data
WO2007091555A1 (ja) * 2006-02-07 2007-08-16 Tokyo Electron Limited 基板処理装置の制御装置および基板処理装置の制御プログラム
US7542820B2 (en) * 2006-09-28 2009-06-02 Lam Research Corporation Methods and arrangement for creating recipes using best-known methods
JP5275641B2 (ja) * 2007-03-12 2013-08-28 株式会社日立国際電気 基板処理装置、基板処理装置の表示方法、基板処理装置の制御方法及び半導体装置の製造方法
US8510790B2 (en) * 2007-03-12 2013-08-13 Hitachi Kokusai Electric Inc. Substrate processing apparatus
US7856332B2 (en) 2007-12-04 2010-12-21 International Business Machines Corporation Real time system for monitoring the commonality, sensitivity, and repeatability of test probes
JP2010135480A (ja) 2008-12-03 2010-06-17 Canon Inc レシピ作成装置、及び半導体露光装置
JP5566032B2 (ja) * 2009-01-13 2014-08-06 株式会社日立国際電気 基板処理装置、半導体装置の製造方法および入力禁止プログラム
JP2010182861A (ja) * 2009-02-05 2010-08-19 Hitachi Kokusai Electric Inc 基板処理装置

Also Published As

Publication number Publication date
JP5762542B2 (ja) 2015-08-12
TW201214183A (en) 2012-04-01
US20120053719A1 (en) 2012-03-01
TWI479352B (zh) 2015-04-01
KR101510752B1 (ko) 2015-04-10
WO2012030930A3 (en) 2012-05-18
WO2012030930A2 (en) 2012-03-08
CN103080939A (zh) 2013-05-01
CN103080939B (zh) 2016-03-16
JP2013541189A (ja) 2013-11-07
US8527081B2 (en) 2013-09-03

Similar Documents

Publication Publication Date Title
US9092586B1 (en) Version management mechanism for fluid guard ring PCells
JP2017033562A (ja) 安全重視ソフトウェア開発のためのモデルベース技術および過程のためのシステムおよび方法
US8930857B2 (en) Mask data verification apparatus, design layout verification apparatus, method thereof, and computer program thereof
US8418093B2 (en) Method and system for design simplification through implication-based analysis
US20160246287A1 (en) Probabilistic evaluation of turbomachinery design to predict high cycle fatigue failure
KR101510752B1 (ko) 반도체 프로세스 레시피들의 자동화된 검증을 위한 방법 및 장치
US7844926B1 (en) Specification window violation identification with application in semiconductor device design
CN105718623B (zh) 产生半导体电路布局的方法和系统
US20120297352A1 (en) Method and apparatus for creating and managing waiver descriptions for design verification
JP2006350420A (ja) レイアウト検証用ルールファイルのテスト装置、テスト方法及びテストプログラム
JP5293521B2 (ja) デザインルールチェック検証装置およびデザインルールチェック検証方法
US10049178B2 (en) Methodology for pattern density optimization
JP2011253253A (ja) コンピュータ試験方法、コンピュータ試験装置およびコンピュータ試験プログラム
US8875087B1 (en) Method and system for automated script generation for EDA tools
US20080052587A1 (en) Unit Test Extender
US8352234B2 (en) Model generation based on a constraint and an initial model
US20170351799A1 (en) Semiconductor layout generation
US8751988B1 (en) Computer-implemented methods and systems for automatic generation of layout versus schematic (LVS) rule files and regression test data suites
US9754067B2 (en) Method of checking the layout integrity
JP5444939B2 (ja) ソフトウェアのテスト方法及びプログラム
WO2019142266A1 (ja) テストケース生成装置、テストケース生成方法およびテストケース生成プログラム
JP5093508B2 (ja) ループ最適化システム、ループ最適化方法、及びループ最適化用プログラム
KR101665962B1 (ko) 모델링 코드 검증 방법, 이를 수행하는 모델링 코드 검증 장치 및 이를 저장하는 기록매체
JP6199813B2 (ja) フォーマル検証装置およびプログラム
JP5452366B2 (ja) 試験仕様作成装置、試験仕様作成方法及び試験仕様作成プログラム

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190401

Year of fee payment: 5