KR20010024113A - 마스크 묘사 시스템에서 데이터 계층 유지보수를 위한방법 및 장치 - Google Patents

마스크 묘사 시스템에서 데이터 계층 유지보수를 위한방법 및 장치 Download PDF

Info

Publication number
KR20010024113A
KR20010024113A KR1020007002869A KR20007002869A KR20010024113A KR 20010024113 A KR20010024113 A KR 20010024113A KR 1020007002869 A KR1020007002869 A KR 1020007002869A KR 20007002869 A KR20007002869 A KR 20007002869A KR 20010024113 A KR20010024113 A KR 20010024113A
Authority
KR
South Korea
Prior art keywords
layout
cell
data
cells
depicted
Prior art date
Application number
KR1020007002869A
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
Priority claimed from US08/931,921 external-priority patent/US5858580A/en
Priority claimed from US09/130,996 external-priority patent/US6757645B2/en
Priority claimed from US09/153,783 external-priority patent/US6470489B1/en
Priority claimed from US09/154,397 external-priority patent/US6453452B1/en
Application filed by 뉴메리컬 테크날러쥐스 인코포레이티드 filed Critical 뉴메리컬 테크날러쥐스 인코포레이티드
Priority claimed from PCT/US1998/019438 external-priority patent/WO1999014636A1/en
Publication of KR20010024113A publication Critical patent/KR20010024113A/ko

Links

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03FPHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
    • G03F1/00Originals for photomechanical production of textured or patterned surfaces, e.g., masks, photo-masks, reticles; Mask blanks or pellicles therefor; Containers specially adapted therefor; Preparation thereof
    • G03F1/36Masks having proximity correction features; Preparation thereof, e.g. optical proximity correction [OPC] design processes
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03FPHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
    • G03F1/00Originals for photomechanical production of textured or patterned surfaces, e.g., masks, photo-masks, reticles; Mask blanks or pellicles therefor; Containers specially adapted therefor; Preparation thereof
    • G03F1/68Preparation processes not covered by groups G03F1/20 - G03F1/50
    • G03F1/70Adapting basic layout or design of masks to lithographic process requirements, e.g., second iteration correction of mask patterns for imaging
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03FPHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
    • G03F7/00Photomechanical, e.g. photolithographic, production of textured or patterned surfaces, e.g. printing surfaces; Materials therefor, e.g. comprising photoresists; Apparatus specially adapted therefor
    • G03F7/70Microphotolithographic exposure; Apparatus therefor
    • G03F7/70058Mask illumination systems
    • G03F7/70091Illumination settings, i.e. intensity distribution in the pupil plane or angular distribution in the field plane; On-axis or off-axis settings, e.g. annular, dipole or quadrupole settings; Partial coherence control, i.e. sigma or numerical aperture [NA]
    • G03F7/70116Off-axis setting using a programmable means, e.g. liquid crystal display [LCD], digital micromirror device [DMD] or pupil facets
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03FPHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
    • G03F7/00Photomechanical, e.g. photolithographic, production of textured or patterned surfaces, e.g. printing surfaces; Materials therefor, e.g. comprising photoresists; Apparatus specially adapted therefor
    • G03F7/70Microphotolithographic exposure; Apparatus therefor
    • G03F7/70483Information management; Active and passive control; Testing; Wafer monitoring, e.g. pattern monitoring
    • G03F7/70605Workpiece metrology
    • G03F7/70681Metrology strategies
    • G03F7/70683Mark designs
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

레이아웃의 초기 계층이 유지되도록, 계층적으로 묘사된 집적회로 레이아웃 (800)에서 연산을 수행하는 방법 및 장치가 제공된다. 이 방법은 제 1 입력으로서 계층적으로 묘사된 집적회로 레이아웃(810)을 제공하고 그리고 제 2 입력으로서 수행될 연산에 대응하는 특정 세트의 연산 기준(840)을 제공한다. 이어서, OPC와 같은 연산 및 NOT 및 OR (240)와 같은 논리적 연산을 포함하는 마스크 연산이 특정 세트의 연산 기준에 따라 레이아웃에서 수행된다. 그후, 계층적으로 묘사된 레이아웃에 대응하는 계층적으로 구성된 교정 데이터를 구비하는 제 1 프로그램 데이터가 레이아웃 연산에 응답하여, 만일 제 1 프로그램 데이터(860)가 평탄화된 레이아웃(865)에 적용된 경우 상기 레이아웃에서 상기 연산을 수행한 결과를 표시하는 데이터를 구비하는 출력이 발생하게 된다. 제 1 프로그램 데이터가 진정한 계층 포맷으로 유지될때, 이 방법에 따라 연산되는 레이아웃은 통상적인 설계 룰 체커 (850)를 통해 처리될 수 있게 된다. 또한, 이 방법은 브라이트 및 다크 필드 설계 및 위상 시프팅 레이아웃을 비롯한 모든 타입의 레이아웃에도 적용될 수 있다.

Description

마스크 묘사 시스템에서 데이터 계층 유지보수를 위한 방법 및 장치{METHOD AND APPARATUS FOR DATA HIERARCHY MAINTENANCE IN A SYSTEM FOR MASK DESCRIPTION}
관련 출원
본 출원은 발명자가 장 팽-쳉(Fang-Cheng Chang), 왕 야오-팅(Yao-Ting Wang), 패티 야곈시 씨.(Yagyensh C. Pati)이며 발명의 명칭이 "데이터 계층이 진보된 마스크 교정 및 검증 방법 (Data Hierarchy Advanced Mask Correction and Verification Method)인 1997년 12월 12일자의 출원번호 제 60/069,549호의 미국 가 특허 출원 (provisional patent application)의 우선권을 주장하는 출원이다. 또한, 본 출원은 발명자가 장 팽-쳉(Fang-Cheng Chang), 왕 야오-팅(Yao-Ting Wang), 패티 야곈시 씨.(Yagyensh C. Pati)이며 발명의 명칭이 "마스크 검증, 교정 및 설계 룰 체킹 (Mask verificationm Correction, and Design Rule Checking)"인 1997년 9월 17일자의 출원번호 제 60/059,306 호의 미국 가 특허출원과 그리고 발명자가 장 팽-쳉(Fang-Cheng Chang), 왕 야오-팅(Yao-Ting Wang), 패티 야곈시 씨.(Yagyensh C. Pati)이며 발명의 명칭이 "마스크 검증, 교정 및 설계 룰 체킹 (Mask verificationm Correction, and Design Rule Checking)" 인 1997년 9월 16일자의 출원번호 제 60/059,306 호의 미국 가 특허출원과 관계한다. 본 출원은 또한 발명자가 장 팽-쳉(Fang-Cheng Chang), 왕 야오-팅(Yao-Ting Wang), 패티 야곈시 씨.(Yagyensh C. Pati), 리나드 카크린 (Linad Karklin)이며 발명의 명칭이 "시각 검사 및 검증 시스템 (Visual Inspection and Verification)" 인 1998년 8월 7일자출원된 미국 특허출원과 관계한다. 본 출원은 또한 발명자가 왕 야오-팅(Yao-Ting Wang) 및 패티 야곈시 씨.(Yagyensh C. Pati)이며 발명의 명칭이 "위상 시프팅 회로 제조 방법 및 장치(Phase Shifting Circuit Manufacure Method and Apparatus)"인 1997년 9월 17일자의 출원번호 제 08/931,921호의 미국 특허 출원과 관계한다. 상기 특허출원들은 모두 본원의 양수인에게 모두 양도되었다.
집적회로를 설계하는데 있어, 엔지니어들은 전형적으로 임의의 기능을 수행하도록 서로 결합되는 개별 디바이스들로 구성되는 회로의 개략적인 설계을 생성하는데 기여하는 컴퓨터 시뮬레이션 툴에 의존한다. 반도체 기판에서 이와같은 회로를 실제 시작하기 위해서는 그 회로는 물리적인 표시 즉 레이아웃으로 번역되어야 하며, 이들은 다시 실리콘 표면에 전사될 수 있다. 다시, 컴퓨터 지원 설계 (CAD) 툴은 이산된 회로 소자들을 상기 디바이스들을 자체적으로 완성된 IC로 구현할 형상들로 번역하는데 있어 레이아웃 다자이너들을 지원한다. 이들 형상들은 게이트 전극, 필드 산화 영역, 확산 영역, 금속 연결부등과 같은 회로의 개별 구성요소들을 구성한다.
이들 CAD 시스템에 의해서 활용되는 소프트 웨어 프로그램들은 일반적으로 기능적인 회로를 생성하도록 소정의 설계 룰에 따라 기능하도록 구성된다. 때때로, 이들 룰들은 임의의 처리 및 설계 한정에 의해 결정된다. 예컨대, 설계 룰 들은 디바이스들과 상호연결 라인들간의 공간 공차를 정의하여, 이 디바이스들 또는 라인들이 어떤 원치않는 방식으로 상호동작하지 않도록 해준다. 설계 룰 제한들은 흔히 임계 치수(critical dimensions)로 일컬어 진다.
회로의 임계 치수는 일반적으로 한 라인의 최소 폭 또는 두 라인들간의 최소 공간으로써 정의된다. 결과적으로, 임계 치수는 IC의 전체 싸이즈 및 밀도를 결정한다. 현재의 IC 기술에서, 최첨단 회로에 대한 최소 임계 치수는 라인 폭 및 공간에 있어서 대략 0.25 미크론 이다.
일단 회로의 레이아웃이 생성되면, 집적회로 (IC)를 제조하기위한 다음의 공정은 그 레이아웃을 반도체 기판에 전사하는 것이 된다. 광학 리소그래피는 기하구조적 형상을 실리콘 웨이퍼의 표면에 전사하는 공정으로써 잘 공지되어 있다. 이 광학 리소그래피 공정은 일반적으로 반도체 웨이퍼의 상부면에 포토레지스트 층을 형성하면서 시작된다. 이어서, 일반적으로 크롬으로 형성되는 완전 광 비투과 불투명 영역 및 일반적으로 석영으로 형성되는 완전 광 투과 투명 영역를 갖는 마스크가 포토레지스트를 코팅된 웨이퍼상에 위치시킨다. 그 후, 광을 가시 광원 또는 울트라 자외선 광원을 통해 마스크에 비춘다. 이 광은 하나 또는 여러개의 렌즈, 필터 및 미러를 포함하는 광학 렌즈 시스템을 전형적으로 이용하여, 웨이퍼상에 축소된 마스크 영상을 발생하도록 포커싱된다. 이 광은 마스크의 투명 영역을 통과하여 하부 포토레지스트 층을 노광시키며, 마스크의 불투명 영역에 의해 차단되어, 포토레지스트의 하부 부분이 노광되지 않게 된다. 이어서, 노광된 포토레지스트층은 전형적으로 포토 레지스트층의 노광/비노광 영역을 화학적으로 제거함으로써 현상된다. 최종적 결과로써, 반도체 기판에 포토레지스트 층이 코팅되는바, 이 포토레지스트 층은 자신의 기하구조, 특징, 라인, 형상들을 정의하는 원하는 패턴을 나타낸다. 이 패턴은 웨이퍼의 하부 영역들을 에칭하는데 이용될 수 있다.
상기 설계 룰 이외에, 광학 리소그래피에 사용되는 노광 툴의 해상도 값 또한 직접회로 레이아웃의 디자이너들에 제한 요인이 된다. 노광 툴에 대한 해상도는 노광 툴이 웨이퍼상에 반복적으로 노광을 행할 수 있는 최소의 특성으로서 정의된다. 현재, 가장 진보된 광학 노광툴의 해상도는 약 0.25미크론 이다. 레이아웃의 임계 치수들이 더욱 작아지고 리소그래피 장비의 해상도 값에 근접함에 따라, 마스크와 그리고 포토레지스트에서 현상되는 실질적인 레이아웃 패턴간의 일치성이 상당히 감소된다. 특히, 회로 생김새의 패턴 현상에 있어서의 차이는 서로간의 생김새의 유사성에 죄우된다.
IC 설계에 있어서의 제한요인들을 생각하면서, 본 발명자들은 IC 패턴을 묘사하는 데이터가 일반적으로 GDS-II 데이터 파일에서 처럼 간결한 계층 방식으로 표시되는 것을 주목한다. 패턴 표시 계층에서의 보다 높은 레벨에서, 특징들은 개념적인 방식으로 나타낸다. 예컨대, 메모리 어레이는 임의의 수의 열 및 행으로 반복되는 소정의 셀을 갖는 것으로 묘사된다. 계층에서의 다음의 낮은 레벨은 서브셀 A 및 B로 구성되는 기본 메모리 셀을 묘사한다. 마지막으로, 최저 레벨에서, 맨 처음의 서브셀들은 기하구조적으로 원시적인 사각형 및 다각형을 포함한다. 물리적인 마스크를 형성하기 위하여, 계층 데이터는 평탄화(flattened)되어, 계층에 묘사된 모든 기하구조적인 경우를 열거해야만 한다. 계층의 평탄화의 전형적인 결과로써 패턴을 나타내는데 요구되는 데이터 저장 크기가 어느정도 증가하게 된다.
계층의 평탄화의 결과로 소정 IC 설계을 표시하는 파일의 싸이즈가 크게 증대되기 때문에, 최상의 경우에 마스크 설계가 물리적 제조에 앞서 EB 머신내로 로딩되는 시간인 마스크의 제조에 있어서의 최종 포인트에서 계층을 평탄화하는 것이 바람직하다. 그러나 현재 이러한 평탄화 공정은 일부 복잡한 IC들의 마스크의 제도에 있어서 가장 초기의 단계에서 수행된다. 이 이유는 복잡한 IC들의 초기의 마스크 설계은 전형적으로 설계에 있어서 다수의 동작들중 하나를 수행하기 위해서 초기의 설계가 완료된 후에 처리되기 때문이다. 이들 동작들은 이들 IC의 임계 치수가 광학 리소그래피의 해상도 제한 요인과 근사할 때 복잡한 IC들의 마스크들에서 필요로 되는 정밀도 때문에 수행된다. 현재, 이들 동작들은 초기 설계 데이터들에 대한 어느 정도의 평탄화의 수행을 요하며, 결과적으로 설계 데이터에 대해 원하는 평탄화보다 더 초기에 이루어 지게 된다.
이들 연산들은 논리 연산 수행, 광학 근사 교정치 발생, 위상 시프팅 마스크 발생 및 이들 연산들을 착수한 마스크에 대한 설계 룰 체크를 포함한다. 예컨대, 공정을 행하는 물리적 마스크는 사용되는 특별한 EB 머신에 따라 마스크에서 공지된 왜곡을 초래하기 때문에, 마스크 제작자들은 이들 공지된 왜곡을 보상하는 새로운 마스크 층을 발생하기위해 AND 또는 OR 와 같은 논리 연산을 이용한다. 또한, 마스크 디자이너들은 매우 밀접하게 공간을 둔 패턴 특징들이 리소그래피에 의해 웨이퍼상의 레지스트 층에 전사될때 발생하는 근접 효과를 보상하도록 마스크의 서브 해상도 광학 근접 보상 특징을 발생시킨다. 마찬가지로, 마스크 디자이너들은 성취가능한 회로 임계 치수에서의 해상도의 제한 효과를 극복하기 위해 위상 시프팅 마스크를 발생시킨다. 또한 그리고 보다 특별하게, 이들은 마스크 설계의 초기의 진정한 계층 데이터를 유지하지 않기때문에, 초기 마스크와 동일한 계층 데이터 포맷을 요하는 통상적인 검증 툴을 이용하여 전술한 동작들중 하나를 수행하는 현재 공지된 마스크를 검증하는 것은 극히 어려우며 많은 시간을 요한다.
그러므로, 상기한 기존 시스템의 문제점들을 해결할 수 있는 집적 회로 마스크 설계에서의 동작을 수행하는 방법 및 장치가 요구된다.
본 발명은 집적회로 제조분야에 관한 것이다. 특히 본 발명은 집적회로의 제조분야에서 사용되는 마스크에 대한 신속하고도 효율적인 설계, 교정 및 검증을 위한 개념 및 실시 기법에 관한 것이다.
도면들은 본 발명을 한정하는 것이 아닌 예로서 설명한다. 동일한 참조번호는 유사한 구성요소들을 나타낸다.
도 1은 단순한 집적 회로 설계 레이아웃 및 레이아웃의 계층적인 트리 표현을 예시한다.
도 2는 본 발명의 일 실시예의 시스템 레벨 묘사를 예시한다.
도 3은 도 2의 시스템으로부터 출력될 전형적인 계층 데이터 파일의 단순한 표현을 예시한다.
도 4는 설계 레이아웃의 계층적인 구조가 본 발명의 일 실시예에 따라 유지되는 계층적인 집적 회로 설계에 대하여 논리 또는 대수 연산을 수행하는 방법을 플로우챠트 형태로 예시한다.
도 5는 도 4의 방법이 본 발명의 일 실시예에 따라 도 1의 부모셀들 중 하나에 대하여 논리 NOT 연산을 제공하는 방법을 예시한다.
도 6은 도 4의 방법이 본 발명의 일 실시예에 따라 논리 NOT 연산에 대하여 도 1의 부모셀들 중 하나의 델타 평면을 발생시키는 방법을 예시한다.
도 7은 설계 레이아웃들에 대해 이루어질 수 있는 광학 근접 교정들의 예들을 나타낸다.
도 8은 본 발명의 일 실시예에 따라 설계 레이아웃에 OPC 교정을 제공하는 시스템을 예시한다.
도 9는 도 8 시스템의 일 실시예가 도 1의 셀들 중 하나의 초기 기하구조의 OPC 교정을 제공하는 방법을 예시한다.
도 10a 내지 도 10b는 도 4의 방법이 본 발명의 일 실시예에 따라 OPC 동작을 위하여 도 1의 부모셀들 중 하나 내에 있는 오버랩 영역들에 대한 교정층을 발생시키는 방법을 예시한다.
도 11은 도 4의 방법이 본 발명이 일 실시예에 따라 OPC 동작을 위하여 도 1의 부모셀들 중 하나의 델타 평면을 발생시키는 방법을 예시한다.
도 12는 본 발명의 일 실시예를 이용하여 집적 회로 설계 레이아웃에 OPC 교정을 제공하는 다른 방법을 예시한다.
도 13은 입력 설계 레이아웃의 OPC 교정을 제공하기 위하여 본 발명의 일 실시예를 실행하는 컴퓨터 시스템으로부터의 입력 설계 레이아웃의 예시적인 화면 스냅샷을 나타낸 것이다.
도 14는 도 13의 입력 설계에 OPC 교정을 제공하기 위하여 본 발명의 일 실시예를 실행하는 컴퓨터 시스템으로부터의 최종 출력의 예시적인 화면 스냅샷을 나타낸 것이다.
도 15는 도 14의 최종 출력의 예시적인 화면 스냅샷을 확대하여 나타낸 것이다.
도 16은 OPC 교정을 제공하기 위하여 본 발명의 일 실시예를 실행하는 컴퓨터 시스템으로부터의 -1 OPC 교정층의 예시적인 화면 스냅샷을 나타낸 것이다.
도 17은 OPC 교정을 제공하기 위하여 본 발명의 일 실시예를 실행하는 컴퓨터 시스템으로부터의 +1 OPC 교정층의 예시적인 화면 스냅샷을 나타낸 것이다.
도 18은 OPC 교정을 제공하기 위하여 본 발명의 일 실시예를 실행하는 컴퓨터 시스템으로부터의 -2 OPC 교정층의 예시적인 화면 스냅샷을 나타낸 것이다.
도 19는 본 발명의 일 실시예를 실행하는 컴퓨터 시스템에 의해 OPC 교정된 개별적인 셀들의 예시적인 화면 스냅샷을 나타낸 것이다.
상세한 설명 및 도면에는 많은 세부사항들이 포함되어 있기는 하지만, 본 발명은 청구항의 범위에 의해서만 정의된다. 이들 청구항에서의 한정들만이 본 발명에 적용된다.
상기 설명한 바와 같이, 집적 회로 설계 레이아웃 상에서의 연산들을 수행하기위한 현재 공지된 시스템들은 설계의 초기 계층을 유지할 수 없다. 이는 데이터의 상당한 증가, 처리 속도의 감소, 및 종래의 검증 툴들을 이용하여 처리된 설계에 대한 정확성을 신속하게 체크할 수 있는 능력의 손실을 포함하는 몇 가지의 문제점을 야기하게 된다.
따라서, 본 발명은 레이아웃의 초기 계층이 유지되도록 계층적으로 묘사된 집적회로 레이아웃에 있어서의 특정 연산 기준에 따라 연산을 수행하는 방법 및 장치를 제공함으로써 상기 문제점들을 해결한다.
그러므로, 본 발명의 한 실시예에 있어서, 복수의 셀을 포함하는 계층적으로 묘사된 포토리소그래피 마스크에서 연산을 수행하는 시스템에서 제1 프로그램 데이터를 포함하는 컴퓨터 프로그램물이 제공된다. 제 1 프로그램 데이터는 계층적으로 묘사된 레이아웃에 대응하는 계층적으로 구성된 교정 데이터를 포함하게 되어, 만일 제1 프로그램 데이터가 평탄화된 레이아웃에 적용된 경우 그 레이아웃에 대한 연산을 수행한 결과를 표시하는 데이터로 구성된 출력이 발생될 수 있게 된다.
한 실시예에서, 제1 프로그램 데이터는 복수의 셀에 대응하는 복수의 델타 평면을 포함하는 것을 특징으로 한다. 이 예에서, 특정 셀의 델타 평면은 특정 셀의 교정 평면과 특정셀의 자손 셀들 (children cells)에 대응하는 델타 평면 간의 차이를 표시하는 데이터를 포함한다. 또한, 복수 셀의 각 셀에 대한 교정 평면은 만일 교정 평면이 평탄화된 셀 데이터에 적용된 경우 셀에 대한 연산을 수행한 결과를 표시하는 출력을 발생시킬 수 있는 데이터를 포함한다.
한 실시예에서, 계층적으로 묘사된 집적 회로 레이아웃에서의 각 셀에 대한 델타 평면은 셀의 자손 셀들 각각의 상호동작과 셀의 원시의 기하구조와 셀의 각각의 자손 셀들 사이의 상호동작을 설명한다.
상기 실시예에서의 추가적인 특징으로서, 제1 프로그램 데이터는 산수적 또는 논리적으로 묘사된 델타 평면들을 포함한다. 또한, 제1 프로그램 데이터는 GDS-II 데이터 파일로 묘사될 수 있다.
제1 프로그램 데이터와 관계하여 상기 요약한 바와같은 본 발명은 대안적으로 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법으로써 특징지어질 수 있다. 한 실시예에서, 이 방법은 제1 입력으로서 복수의 셀을 포함하는 계층적으로 묘사된 레이아웃을 제공하고, 제2 입력으로서 특정 세트의 연산 기준을 제공하는 것을 포함한다. 이 방법은 또한 레이아웃 에서 특정 세트의 연산 기준에 따라 레이아웃 연산을 수행하고 그리고 계층적으로 묘사된 레이아웃에 대응하는 계층적으로 구성된 교정 데이터를 포함하는 제1 프로그램 데이터를 발생하는 것을 포함한다. 제1 프로그램 데이터는 레이아웃 동작에 응답하여 발생되게 되어, 만일 제1 프로그램 데이터가 평탄화된 레이아웃에 인가된 경우 그 연산을 수행한 결과를 표시하는 데이터로 구성되는 출력이 발생될 수 있게 된다.
상기 방법의 다른 실시예에서, 제1 프로그램 데이터는 복수의 셀에 대응하는 복수의 델타 평면을 포함한다. 이 실시예에서, 특정셀의 델타 평면은 특정셀의 교정 평면과 상기 특정 셀의 자손 셀들에 대응하는 델타 평면들간의 차를 표시하는 데이터를 포함한다. 또한, 복수 셀의 각 셀에 대한 교정 평면은 만일 교정 평면이 평탄화된 셀 데이터에 적용된 경우 셀에 대한 연산을 수행한 결과를 표시하는 출력을 발생시킬 수 있는 데이터를 포함한다. 또한 한 실시예에서, 계층적으로 묘사된 집적 회로 레이아웃에서의 각 셀에 대한 델타 평면은 셀의 자손 셀들 각각의 상호동작과 셀의 원시의 기하구조와 셀의 각각의 자손 셀들 사이의 상호동작을 설명한다.
제1 프로그램 데이터가 복수의 셀에 대응하는 복수의 델타 평면을 포함하는 것으로 특징지어지는 다른 실시예에서, 제1 프로그램 데이터를 발생하는 단계는 또한 계층적으로 묘사된 레이아웃을 컴파일링 및 링크하는 단계를 포함한다. 이 경우에, 컴파일링은 특정 세트의 연산 기준에 응답하여 각 셀에대한 제1 교정 층을 발생하는 것을 포함한다. 링크는 각 셀에 대한 델타 평면을 발생하기위하여 특정 세트의 연산 기준에 응답하여 각 셀의 교정 층을 변경하는 것을 포함한다. 이 경우에, 각 셀의 델타 평면은 셀의 자손 셀들 각각의 상호동작과 셀의 원시 기하구조와 셀의 각각의 자손 셀들 사이의 상호동작을 설명한다.
이 실시예의 추가적인 특징으로써, 레이아웃의 각 셀에 대해 셀의 델타 평면과 셀의 자손 셀의 델타 평면들의 합이 만일 교정 평면이 평탄화된 셀 데이터에 적용된 경우 셀에 대해 연산을 수행한 결과를 표시하는 출력 데이터를 발생시킬수 있는 데이터를 포함한다. 상기 실시예의 또 다른 경우에서, 커파일링 및 링크 각각은 직접회로 레이아웃의 깊이 인식 트래버싱 (depth-wise traversing)을 포함한다.
상기 방법의 또다른 실시예에서, 링크 및 컴파일링은 또한 각셀이 사전에 정의 되었는지를 판단하는 것과 그리고 사전에 정의된 각 셀에 대한 셀 정의의 제1 의 경우의 위치를 표시하는 데이터를 포함하는 델타 평면과 제1 교정 층을 발생시키는 것을 포함 할 수 있다.
상기 방법의 또 다른 실시예는 제1의 교정된 레이아웃을 묘사하는 제2 프로그램 데이터를 생성하기 위하여, 제1 프로그램 데이터를 직접회로 레이아웃을 묘사하는 데이터와 결합하는 것을 포함한다. 이 제2 프로그램 데이터는 설계 룰 체크 장치에 제공되며, 설계 룰 체크 장치는 상기 제1의 교정된 레이아웃이 집적회로 설계 룰 세트내에 해당되는지를 판정하는 동작을 한다.
본 발명의 또 다른 실시예는 상기 요약된 방법의 단계에 따라 포토리소그래피 마스크가 생성되는 것을 특징으로 한다.
마지막으로, 상기 실시예들의 방법 단계들은 한 경우에 있어서 이들 단계들을 실시하는 명령 프로그램을 실행하는 컴퓨터에 의해 수행될 수 있는바, 상기 프로그램은 하드 디스크 또는 서버와 같은 어떤 적절한 컴퓨터 저장 매체에 저장된다.
제1 프로그램 데이터 및 방법과 관계하여 상기 요약된 본 발명은 또한 대안적으로 계층적으로 묘사된 집적 회로 레이아웃에서 연산을 수행하는 장치로서 특징지어진다. 이 장치는 한 실시예에서 제1 입력으로서 복수의 셀로 구성되는 계층적으로 묘사된 레이아웃울 수신하는 자원과 그리고 제2 입력으로서 특정 세트의 연산 기준을 수신하는 자원을 포함한다. 이 장치는 또한 계층적으로 묘사된 레이아웃에서 특정 세트의 연산기준에 따라 레이아웃 연산을 수행하는 연산 엔진과 그리고 계층적으로 묘사된 레이아웃에 대응하는 계층적으로 구성된 교정 데이터로 구성된 제1 프로그램 데이터를 발생하는 계층 유지기를 포함한다. 제 1 프로그램 데이터는 레이아웃 연산에 응답하여 발생되게 되어, 만일 제2 프로그램 데이터가 평탄화된 레이아웃에 적용된 경우 레이아웃에서 마스크 연산 수행 결과를 표시하는 데이터로 구성된 출력이 발생된다.
본 장치의 다른 실시예에서, 제1 프로그램 데이터는 복수의 셀에 대응하는 복수의 델타 평면을 포함한다. 이 실시예에서, 특정 셀의 델타 평면은 특정 셀의 교정 평면과 특정 셀의 자손셀들에 대응하는 델타 평면들간의 차이를 표시하는 데이터로 구성된다. 또한, 복수의 셀들의 각 셀에 대한 교정 평면은 만일 교정 평면이 평탄화된 셀 데이터에 적용된 경우 셀에서 연산을 수행한 결과를 표시하는 출력을 발생할 수 있는 데이터로 구성된다. 또한, 한 실시예에서, 계층적으로 묘사된 집적회로에서 각 셀에 대한 델타 평면은 셀의 각 자손 셀들 간의 상호동작과 셀의 원시 기하구조와 셀의 자손셀들 각각 간의 상호동작에 대해 설명한다.
다른 경우에서, 본 장치는 또한 컴파일러 및 링커를 포함한다. 이 경우에, 컴파일러는 특정 세트의 연산 기준에 응답하여 각 셀에대한 제1 교정 층을 발생시킨다. 링커는 각 셀에 대한 델타 평면을 발생하기위하여 특정 세트의 연산 기준에 응답하여 각 셀의 교정 층을 변경시킨다. 이 경우에, 각 셀의 델타 평면은 셀의 자손 셀들 각각의 상호동작과 셀의 원시 기하구조와 셀의 각각의 자손 셀들 사이의 상호동작을 설명한다.
이 실시예의 추가적인 특징으로써, 레이아웃의 각 셀에 대해 셀의 델타 평면과 셀의 자손 셀의 델타 평면들의 합이 만일 교정 평면이 평탄화된 셀 데이터에 적용된 경우 셀에 대해 연산을 수행한 결과를 표시하는 출력 데이터를 발생시킬수 있는 데이터를 포함한다. 복수의 셀에서의 각 셀에 대한 교정 평면은 만일 교정 평면이 평탄화된 셀 데이터에 적용된 경우 셀에서 연산을 수행한 결과를 표시하는 출력 데이터를 발생할 수 있는 데이터를 포함한다. 상기 실시예의 또다른 경우에서, 컴파일러 및 링커는 각각은 교정 평면과 델타 평면을 각각 발생하기 위하여 직접회로 레이아웃의 깊이 인식 트래버싱을 포함한다.
상기 장치의 또다른 실시예는 제1의 교정된 레이아웃을 묘사하는 제2 프로그램 데이터를 생성하기 위하여 상기 제1 프로그램 데이터를 직접회로 레이아웃을 묘사하는 데이터와 결합하는 자원을 포함한다.
상기 제1의 교정된 레이아웃이 집적회로 설계 룰 세트내에 해당되는지를 의 표시를 나타내기 위해 설계 룰 체커가 제공된다.
본 장치의 또 다른 실시예에서, 링커 및 컴파일러는 각 셀이 사전에 정의되었는지를 판단하고, 그리고 사전에 정의된 각 셀에 대한 셀 정의의 제1의 경우의 위치를 표시하는 데이터를 포함하는 델타 평면과 제1 교정 층을 발생시키는 동작을 할 수 있다.
마지막으로, 상기 실시예들의 장치는 한 경우에 있어서 레이아웃의 초기 계층이 유지되도록 하기위해, 컴퓨터로 하여금 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행할 수 있도록 자체에 수록된 컴퓨터 판독가능한 프로그램 코드를 갖는 컴퓨터 판독가능 매체를 구비하는 컴퓨터 프로그램물로서 특징지어 진다.
본 발명의 상기 실시예들 각각은 또한 다음의 추가적인 설명으로 특징지어질 수 있다. 예컨대, 제1 프로그램 데이터의 델타 평면들은 산수적으로 또는 논리적으로 묘사된 데이터를 포함할 수 있다. 또한, 레이아웃에서 수행되는 동작은 예컨대 OPC 교정 및 AND, NOT, OR, NOR 및 NAND와 같은 논리 연산을 포함하는 어떤 논리적 또는 산수적 연산을 포함할 수 있다.
마찬가지로, 제1 프로그램 데이터는 GDS-II와 같은 그러한 어떤 계층적 데이터 포맷으로 될 수 있으며, 컴퓨터 판독가능 매체는 데이터 파일 또는 프로그램 파일을 저장하기 위한 하드 디스크 드라이브 또는 서버와 같은 어떤 적절한 매체를 포함할 수 있다. 마지막으로, 본 발명의 상기 실시예 각각은 브라이트 필드 (bright-field), 다크-필드 (dark-field) 및 위상 시프팅 레이아웃에 적용될 수 있다.
본 발명의 다른 양상 및 장점들이 도면, 상세한 설명 및 특허청구범위를 통해 명확해 질 것이다.
상기 설명한 바와 같이, 포토리소그래피 마스크 제조시에는, 마스크의 실제 제조시의 최후 포인트에서 IC 설계를 나타내는 데이터를 평탄화하는 것이 유익하다. 그러나, 어떠한 경우 이러한 평탄화는 바람직한 때보다 더 일찍 일어난다. 이는 복잡한 IC의 초기 레이아웃이 전형적으로, 설계 상에서의 다수의 동작들 중 하나를 수행할 수 있도록 초기 설계가 완료된 후에 처리되기 때문이다. 이러한 동작들은 논리 연산의 수행, 광학 근접 교정의 발생, 위상 천이 마스크의 발생, 및 이러한 동작들을 행해지는 마스크들의 설계 룰 체킹의 수행을 포함한다. 일반적으로, 이러한 동작들은 설계 데이터의 바람직한 평탄화보다 먼저 수행될 수 있도록 초기 설계 데이터 평탄화의 어떠한 소트를 필요로 한다. 이러한 데이터의 초기의 평탄화는 필요한 데이터 기억장치의 크기를 증가시키며 이에 대응하여 이들 동작들을 수행 속도를 떨어뜨린다. 또한, 종래의 검증 시스템들은 전형적으로 동일한 입력 데이터 계층들을 필요로하기 때문에, 비-계층적인 방식으로 설계를 변경하는 동작들은, 가능하다면, 이들 변경된 설계들을 검증하는 중요한 단계의 수행을 어렵게 한다.
본 발명은, 설계 초기의 정확한 계층이 유지되도록 입력 계층 IC 상에, 가령 OPC 교정과 같은 동작 성능을 제공함으로써 상기의 문제들을 해결한다. 본 발명의 다양한 실시예들은 집적 회로 제조에 이용되며 설계 레이아웃 상에서의 논리 연산의 수행을 위한 마스크들을 검증 및 교정하기 위한 컴퓨터 시스템을 포함한다. 이들 실시예들은 특정한 마스크의 형태를 정의하는 계층 마스크 정의 데이터를 받아들인다. 이후, 이들 실시예들은 데이터의 출력 세트를 발생시킨다. 일 실시예에서, 이러한 출력 데이터는 OPC 교정된 마스크 정의를 포함한다. 본 발명의 다른 실시예들은 OPC 교정 또는 마스크 검증 기술들을 수행하는 시스템들을 이용하여 발생된 실체 마스크들을 포함한다. 본 발명의 또 다른 실시예들은 OPC 교정 또는 마스크 검증 기술들을 실행하는 컴퓨터 프로그램들을 구비하는 컴퓨터 판독가능 매체들(예를 들어, 하드 디스크들, CD들, 및 다른 컴퓨터 프로그램 저장 툴들)을 포함한다.
도면을 참조하여 본 발명을 설명하기 전에, 본 발명 개념의 일 실시예의 개관이 제공된다. 따라서, 본 발명의 일 실시예는 레이아웃의 계층 정의를 수신하기 위하여, 그리고 설계 레이아웃 상에서 동작들을 수행하는 엔진에 의해 제공되는 교정 정보를 계층적으로 포함하는 하나 또는 그 이상의 부가 데이터 층들을 발생시키기 위하여 계층 유지기(hierarchy preserver)를 이용한다. 이후, 이러한 부가적인 층들은 이들이 그 층의 계층 정의내 각 코드와 결합될 수 있도록 저장된다.
본 원에서는 다음과 같은 정의들이 이용된다. 즉, 교정 평면은, 평탄화된 노드에 교정 평면을 적용함으로써 출력이 그 노드에 대하여 교정된 설계가 되도록 계층내의 어떠한 노드 (셀)과 결합된다. 델타 평면은 본질적으로 노드의 교정 평면과 그에 인접한 모든 자손 델타 평면들의 합 간의 차이이다. 따라서, 셀의교정 평면은 그 셀에 대한 델타 평면과 그 셀의 인접한 자손셀들의 델타 평면들을 더한 것과 같다. 계층의 리프셀들은 어떠한 자손셀들도 갖지 않기 때문에, 모든 리프셀에 대한 교정 평면은 그 리프셀의 델타 평면과 같다. 이러한 방식으로, 본 발명의 일 예에서, 레이아웃에 대한 전체적인 교정은 계층 내 각 셀에 대한 델타 평면만을 단지 저장함으로써 제공될 수 있기 때문에 각 셀에 대한 교정 평면은 저장될 필요가 없다.
본 발명의 일 실시예의 기본적인 개념은 컴파일 및 링킹을 포함하는 두 단계들로 설명된다. 컴파일 단계에서의 교정은 설계 레이아웃 상에서 수행되는 동작에 따라서 계층 내의 모든 초기 기하구조에 대해 발생된다. 링킹 단계에서는, 부모셀들의 자손셀들과 부모셀들의 초기 기하구조와의 광학적인 오버랩으로 인한 여분의 교정이 이루어질 것이다. 따라서, 단지 부가적인 교정만이 저장된다.
델타 알고리즘은 단지 자손셀의 오버랩들 및 부모의 기하구조와 자손셀들간의 오버랩만을 고려하여 델타/부가 정보를 계산한다. 단지 이들 영역들만이 고려되는데, 이는 단지 오버랩들만이 부모셀에 필요한 부가적인 교정 변경에 영향을 주기 때문이다. 오버랩 영역은 기하구조의 오버랩에 전적으로 한정되지 않고, 근접 오버랩까지도 포함한다. 더 일반적인 정의를 이용함으로써, 모든 근접 효과들/교정들이 고려될 수 있게 된다. 셀에 대한 델타 알고리즘은 이제 델타 평면으로 일컬어질 것이다. 계층 트리의 리프들은 이에 따라 그들의 교정 평면들과 같은 델타 평면들을 갖게 된다.
컴파일 시, 제공된 평탄화된 데이터에 대한 바람직한 동작을 수행하는 작동 엔진에 각 리프에 대한 원시 기하구조들을 설명하는 평탄화된 데이터를 제공함으로써 모든 리프들에 대한 교정 평면들이 발생될 수 있다. 링크 시, 만일 어떠한 서브셀 오버랩도 없다면, 그 부모셀에 대한 교정 평면은 그의 자손의 델타 평면들의 합과 같게 되며 (그리고 상기 설명한 바와 같이, 그 부모셀에 대하여 저장될 어떠한 부가적인 델타 평면 정보도 없을 것이다.) 만일 오버랩이 있다면, 그 오버랩 영역은 평탄화되고, 그 평탄화된 오버랩 영역에 대한 중간 교정 평면이 발생된다. 결과적으로, 상기 중간 교정 영역은 그의 자손의 모든 교정 평면들의 합을 빼는 데에 이용되며, 그 차이는 링크되는 셀에 대응하여 계층적으로 저장되는 델타 평면이 된다.
현재의 GDS-Ⅱ, 및 완전한 레이아웃을 설명하는 다른 대부분의 설계 데이터베이스 포맷들은 개별적인 층들 상에 다른 마스크와 칩 레벨들을 놓는 것을 포함한다. 본 발명의 다양한 실시예들에 도입되는 것은, 논리(예를 들어, XOR, AND) 및 산수 연산이 가능한 산수층을 기반으로 할 수 있는 층 개념에 입각한 트위스트이다. 예를 들어, OPC 연산에 있어서, 특정한 OPC 영역을 나타내는 교정층은 산수층을 기반으로 할 수 있다. 예를 들어, “-1”은 음의 쉐리프를 의미하고, “+1”은 양의 쉐리프를 의미하며, 그리고 “-2”는 한 방향에서의 오버랩이 극미한 종단 버팅(end-butting)을 의미한다. 링킹하는 동안, 구조 전체에 걸쳐 증가 또는 미분 교정들을 계산하는 알고리즘을 이용하여 모든 교정층들이 산수적으로 발생된다. 이들 델타 평면들, 또는 산수층들은 데이터베이스 포맷 내에 별개의 층들(예를 들어, 층들 1, 2, 및 3을 맵핑하는 +1, -1, -2 등)로서 제시된다. 이는 부모셀에 대한 최종적인 교정층이 부모셀의 델타 평면과 리프들의 컴파일-타임 교정층으로부터의 부모셀의 자손 및 손자 및 증손자 등의 증가 합과 같아질 수 있게 한다.
계층적인 데이터 관리는 상기 설명된 델타 알고리즘 또는 산수층들이 이용되지 않는 본 발명의 변형 실시예에서 교정의 발생시에도 또한 가능하다. 이러한 변형 실시예에서는, 부모셀과 그의 자손셀들의 교정층들 간의 차이를 취하여 저장하는 대신에, 논리 연산이 부모와 그 자손 사이의 교정을 비교하는 데에 이용될 수 있으며, 이렇게 되면 “산수” 차이 대신 “논리” 차이가 부모셀에 저장된다.
따라서, 상기에서 요약한 바와 같이, 본 발명은 마스크 설명을 위한 시스템 내에서의 데이터 계층 유지 방법 및 장치를 제공한다. 이제 도면들을 참조하여 본 발명의 바람직한 실시예를 상세하게 설명한다. 도 1은 단순한 집적 회로 설계 레이아웃(100) 및 레이아웃(110)의 계층적인 트리 표현을 예시한다. 회로 레이아웃(100)은 부모셀들(B, C 및 D)을 포함하는 목적 셀(A)을 구비한다. 부모셀(C)은 동일한 셀들(G1, G2, G3, G4, G5 및 G6)을 포함한다. 부모셀(D)는 셀(H)과 동일한 셀들(I1 및 I2)을 포함한다. 부모셀(B)은 동일한 부모셀들(E1 및 E2) 및 동일한 부모셀들(F1 및 F2)을 포함한다. 부모셀(E1)은 도 1에 예시된 원시 기하 구조들을 포함하는 리프셀들(J1 및 K1)을 포함한다. 부모셀(E2)은 셀들(J1 및 K1)과 동일한 원시 기하 구조를 포함하는 리프셀들(J2 및 K2)을 포함한다. 부모셀(F1)은 도 1에 예시된 원시 기하 구조를 포함하는 리프셀들(L1 및 M1)을 포함한다. 부모셀(F2)은 셀들(J1 및 K1)과 동일한 원시 기하 구조를 포함하는 리프셀들(L2 및 M2)을 포함한다. 계층적인 트리 레이아웃(110)은 트리의 바닥에는 리프셀들을, 그리고 트리의 꼭대기에는 목표 셀(A)을 갖는 트리 포맷으로 상기언급한 셀들을 설명한다. 또한, 본 원에서 각각의 리프셀들은 종종 리프 노드 또는 자손셀로 언급되며, 본 원에서 상기 리프 노드들 위의 각 셀들은 부모셀 또는 단순히 노드로서 언급된다. 도 1의 집적 회로 설계 레이아웃(100)은 하기에 설명되는 본 발명의 바람직한 실시예에서는 기준 IC 설계으로서 제공된다. 도 1에 예시된 단순한 IC는, 예들 들어 하기에 설명되는 본 발명의 실시예와 같이 계층 포맷으로 설명되는 모든 IC에 적용될 수 있다.
도 2는 본 발명의 일 실시예를 통합하는 시스템을 블록도 형태로 예시한다. 설명되는 시스템은, 논리 또는 산수 연산이 계층적으로 설명되는 입력 IC 설계에 대하여 수행될 수 있어, 결과적으로 변형된 IC 설계가 입력 설계의 초기의 정확한 계층을 유지하게 되는 시스템이다. 시스템의 일 실시예의 기본 요소들은 계층 유지기(210)와 작동 엔진(240)을 구비한다. 계층 유지기(210)는 컴파일러(220)와 링커(230)를 구비한다.
시스템의 계층 유지기(210)는 집적 회로 설계(200)을 설명하는 계층적인 설계 데이터(205)를 입력으로써 받아들인다. 일 실시예에서, 계층 유지기(210)는 GDS-Ⅱ 포맷으로 계층적인 설계 데이터(205)를 받아들인다. 다른 실시예들에서, 계층 유지기(210)는 모든 계층 파일 포맷으로 설명되는 계층적인 설계 데이터(205)를 받아들인다. 계층 유지기(210)의 컴파일러(220)는 작동 엔진(240)과 함께 작동하여 설계 데이터(205)의 각 노드에 원시 기하구조에 대한 교정 데이터층을 제공한다. 발생된 교정 데이터층들은 하기에서 좀 더 완전하게 설명될 작동 엔진(240)에 의해 수행되는 동작에 따라서 각 노드에서의 원시 기하구조에 대해 행해지는 변경들을 나타낸다. 본 발명의 일 실시예에서, 작동 엔진(240)은 가령 입력 설계 데이터(205)에 대한 AND 또는 NOT과 같은 논리 연산을 수행한다. 본 발명의 다른 실시예에서, 작동 엔진(240)은 입력 설계 데이터(205)에 대하여 광학 근접 교정을 수행한다. 본 발명의 또 다른 실시에에서, 작동 엔진(240)은 입력 설계 데이터(205)의 설계 룰 체킹을 수행한다.
컴파일러(220)가 입력 설계 데이터(205)의 각 노드에 대하여 교정 데이터층을 발생시킨 후, 링커(230)는 작동 엔진(240)과 함께 작동하여 설계의 각 노드에 대한 델타 평면을 발생시킨다. 각 셀에 대한 델타 평면은 특정한 셀에 대한 교정 데이터층 정보와 그 특정 셀의 자손셀들의 모든 교정 데이터층들의 합 간의 차이와 같이 되도록 발생된다. 일 실시예에서, 각 셀에 대한 델타 평면은 각 셀 내의 오버랩 만을 고려함으로써 델타/부가 정보를 계산하는 링커(230)에 의해 처리되는 델타 알고리즘에 의해 발생된다. 일 실시예에서, 이들 오버랩들은 셀의 자손셀들 간의 오버랩과, 그리고 부모셀 자신의 원시 기하구조와 그의 자손셀들의 기하구조 간의 오버랩들로 구성된다. 일 실시예에서, 이들 오버랩 영역들은 기하구조 오버랩에 전적으로 한정되지 않고, 근접 오버랩까지도 포함한다. 링커(230)가 입력 설계(205)의 각 노드에 대한 델타 평면을 발생시키는 과정에 대해 하기에 좀 더 충분하게 설명한다.
링커(230)가 델타 평면들을 발생시킨 후, 계층 유지기(210)는 작동 엔진(240)에 의해 수행되는 작동에 따라 변경된 입력 설계(205)을 나타내는 출력 데이터(250)를 발생시키며, 출력 데이터(250)는 입력 설계 데이터(205)의 초기의 확실한 계층을 유지한다. 이 출력 데이터(250)는 초기의 변경되지 않은 계층적인 설계 데이터(205) 및 계층적인 교정 데이터 파일(260)을 포함한다. 계층적인 교정 데이터 파일(260)은 설계 데이터(205)의 각 노드에 대한 델타 평면 데이터를 포함하여, 설계 데이터(205)와 교정 데이터(260)가 결합될 때, 작동 엔진(240)에 의해 초기의 설계 데이터(205)에 대하여 수행되는 동작을 나타내는 변경된 설계가 생성된다.
이렇게 되면 계층 출력 데이터(250)는 다수의 목적들을 위해 이용될 수 있다. 먼저, 상기 계층 출력 데이터(250)는 출력 데이터(250)에 대하여 수행되는 새로운 논리 또는 산수 동작을 위해 온라인(262)을 통하여 계층 유지기(210)에 제공될 수 있다. 또한, 이는 계층 형태이기 때문에, 계층 데이터를 받아들이는 종래의 설계 룰 체커(270)에 제공될 수 있으며, 이에 따라 새로운 변경 출력 설계가 체크되어 설계되는 특정한 집적 회로에 대한 설계 룰을 만족시키는 지를 검증할 수 있게 된다. 또한, 출력 데이터(250)는 설계 데이터(205)와 교정 데이터(260)를 결합시켜 최종 데이터 레이아웃(275)를 구성하고, 상기 결합된 데이터 레이아웃(280)을 평탄화한 다음, 상기 평탄화된 데이터를 전자빔 장치에 제공하여 변경된 설계 데이터(285)를 구현하는 실질적인 물리적인 마스크를 제조함으로써 마스크 제조(265)에 이용될 수 있다.
이제, 설계 데이터(205)의 각 노드들에 대한 교정 데이터층들 및 델타 평면들의 발생에 대해 좀 더 상세히 설명한다. 도 1을 참조하면, 컴파일러(220)의 일 실시예는 최종 부모셀의 각 분기(branch)가 순서대로 액세스되며 각 분기가 그의 리프 노드들로부터 윗쪽으로 액세스되는 깊이 인식 트래버싱을 이용하여 액세스된다. 따라서, 도 1을 참조하면, 컴파일러(220)의 본 실시예는 다음과 같은 순서, 즉 J1, K1, E1, L1, M1, F1, L2, M2, F2, J2, K2, E2, B, G1, G2, G3, G4, G5, G6, C, H, I1, I2, D 및 A의 순서로 집적 회로(100)의 노드들을 액세스한다. 컴파일러(220)가 트리를 트래버스할 때, 컴파일러는 작동 엔진(240)에 각 셀의 원시 기하구조에 해당하는 평탄화된 데이터를 제공한다. 작동 엔진(240)은 평탄화된 데이터에 대한 동작을 수행한 다음, 그 동작에 대한 결과를 계층 유지기(210)에 돌려준다. 예를 들어, 도 1을 참조하여, 만일 리프셀 J1이 컴파일된다면, 작동 엔진(240)은 평탄화된 데이터 J'=J+ΔJ를 돌려줄 것이다. 일 실시예에서, 데이터 저장량은, 상기언급한 방정식을 ΔJ에 대하여 풀고 ΔJ의 값을 셀 J에 대한 교정층으로서 저장하는 계층 유지기(210)에 의해 감소된다. 이러한 과정은 전체 트리가 트래버스될 때 까지 설계 내의 모든 셀에 대해 반복된다. 이후, 설계 데이터(205)는 다음과 같은 방법으로 링커(230)에 의해 링크된다. 트리는 상기 설명된 방법으로 다시 트래버스되며, 각 셀에 대한 오버랩 영역이 발견되어 평탄화된다. 그런 다음, 평탄화된 오버랩 영역은 데이터에 대한 동작을 차례로 수행하여 그 결과를 계층 유지기(210)에 돌려주는 작동 엔진(240)에 입력된다. 링커(230)는 작동 엔진(240)으로부터 반화된 데이터를 이용하여 중간 교정층을 생성하며, 이 중각 교정층은 각 셀에 대한 델타 평면을 발생시키기 위해 링커(230)에 의해 이용된다. 델타 평면의 발생은 도 6 및 도 10을 참조하여 하기에서 좀 더 충분하게 설명할 것이다. 그런 다음, 설계의 각 셀에 대한 델타 평면은 계층적인 교정 데이터 파일(260) 내의 입력 설계 데이터(205)의 것에 해당하는 계층 포맷 내에 저장된다.
도 2에 도시된 본 발명의 일 실시예에서, 계층 유지기(210)는 컴파일러(220) 및 링커(230)의 기능을 수행하는 컴퓨터 판독가능 매체들 상에 저장된 프로그램 코드를 실행시키는 컴퓨터 시스템을 구비할 수도 있다. 본 발명의 일 실시예에서, 작동 엔진(240)은 또한 컴퓨터 판독가능 매체들 상에 저장된 프로그램 코드를 실행시키는 컴퓨터 시스템을 구비할 수도 있다. 본 발명의 일 실시예에서, 계층 유지기(210) 및 작동 엔진(240)은 컴파일러(220), 링커(230), 및 작동 엔진(230)의 기능을 함께 수행하는 컴퓨터 판독가능 매체들 상에 저장된 프로그램 코드를 실행시키는 단일 컴퓨터 시스템을 구비한다. 다른 실시예에서, 계층 유지기(210) 및 작동 엔진(240)은 두 개 또는 그 이상의 다른 프로그램 코드들을 실행하는 단일 컴퓨터 시스템, 또는 두 개 또는 그 이상의 다른 프로그램 코드들, 계층 유지기(210)의 기능들을 위한 코드, 및 작동 엔진(240)의 가능들을 위한 개별적인 코드를 실행하는 다수의 개별적인 컴퓨터 시스템을 구비한다. 본 실시예에서, 계층 유지기(210)는 API를 통해 작동 엔진(240)에 데이터를 선택적으로 제공할 수도 있다. 본 실시예에 의해, 본 발명의 계층 유지기(210)는 계층 데이터 출력의 장점을 제공하기 위하여 현재 존재하는 작동 엔진(240)과 통신하여 작동하도록 변경될 수 있다.
상기 언급된 컴퓨터 판독가능 매체들은, 하드 디스크들, CD들, 플로피 디스크들, 및 서버 메모리를 포함하지만 이에 한정되지 않는 모든 컴퓨터 기억장치 툴을 구비할 수도 있다. 프로그램 코드를 실행하는 컴퓨터 시스템들은, 작동 엔진(240) 및 계층 유지기(210)의 경우, 예를 들어 윈도우즈 NT 작동 시스템 또는 선 소울러리스(solaris) 워크스테이션을 작동하는 탁상용 컴퓨터를 포함하는 모든 적절한 컴퓨터 시스템을 구비한다.
도 3은 도 2 시스템의 일 실시예로부터 출력된 전형적인 계층 데이터의 단순화된 표현이 예시된다. 교정 데이터(320)의 계층 데이터 파일은, 도 2의 시스템이 도 1의 단순화된 집적 회로 레이아웃(100)에 대하여 작동하도록 적용되는 경우 발생되는 교정 데이터의 단순화된 변형을 나타낸다. 상기 설명된 바와 같이, 계층적인 교정 데이터(260)를 제공하기 위해 작동 엔진(240)과 함께 작동하는 계층 유지기(210)에 계층적인 설계 데이터(205)가 제공된다. 본 발명이 동작 수행시 데이터의 증가에 있어서 최소 효과를 가짐을 설명하기 위하여 설계 레이아웃(310)의 단순화된 계층 데이터 파일이 도시된다. 도시된 바와 같이, 교정 데이터(320)의 계층 데이터 파일은 입력 데이터 파일(310)과 일대일로 대응하는 구조 내에 저장될 수 있다. 이는 전체적으로 변경된 설계 상에서, 가령 마스크 제조 및 설계 룰 체킹과 같은 다른 기능들을 수행하기 위하여 두 개의 데이터 파일(310 및 320)을 빠르게 결합할 수 있다.
또한, 셀이 계층 유지기(210)에 의해 트래버스될 때, 계층 유지기(210)는 그 셀이 이미 트래버스된 셀과 일치하는 지를 결정한다는 것을 주목하자. 만일 그렇다면, 계층 유지기(210)는 그 셀에 대한 델타 평면을 바로 결정하는 처리 시간을 갖지 않는다. 대신에, 계층 유지기는 정의된 셀의 첫 번째 경우에 대한 포인터를 제공함으로써 확실한 계층을 유지한다. 예를 들어, 이는 도 1에 도시된 바와 같이, 서로 동일한 셀들(F1 및 F2)에 의해 교정 데이터(320)의 계층 데이터 파일로 예시된다. 이전에 설명한 바와 같이, 본 발명의 일 실시예에서, 계층 유지기(210)는 리프 노드들로부터 최종 부모셀까지 깊이 인식 방법으로 설계 데이터(205)를 트래버스한다. 이러한 방법에 있어서, F1은 F2 이전에 트래버스될 것이며, 이에 따라 교정 데이터 ΔF1은 발생되어 그 셀에 대하여 저장된다. 이는 파일(320) 내에 라벨(325)로 나타내었다. 그러나, 셀 F2가 트래버스될 때, F1에 대한 교정 데이터로의 포인터만이 저장되며 어떠한 교정 데이터도 F2에 대해 처리되지 않는다. 이는 라벨(330)로 나타내었다. 이러한 방식에 있어서, 처리 시간 및 데이터량은 감소된다.
도 4는 설계 레이아웃의 계층적인 구조가 본 발명의 일 실시예에 따라 유지되는 계층적인 집적 회로 설계에 대하여 논리 또는 대수 연산을 수행하는 방법을 플로우챠트 형태로 예시한다. 간단히 설명해, 상기 방법은 컴파일 과정, 및 링킹 과정을 포함한다. 블록(400)에서 계층적인 설계 데이터 레이아웃이 제공되며, 블록(410)에서는 상기 도 2 및 도 3에서 설명된 방법으로 설계 트리가 액세스된다. 블록(415)에서는 컴파일 과정이 시작되며, 트리 내의 첫 번째 셀에 대한 계층 데이터가 얻어진다. 그런 다음, 블록(425)에서는 그 셀이 이전에 정의되었는 지를 결정한다. 만일 이전에 정의된 것이라면, 얻어진 셀은 블록(427)에서 이전에 정의된 교정 데이터와 결합되며, 블록(415)에서 트리 내의 다음 셀이 얻어진다. 만일 다음 셀은 이전에 정의된 것이 아니라면, 블록(430)에서 그 셀의 평탄화된 원시 구조 데이터가 얻어져, 블록(435)에 제공되어 평탄화된 원시 데이터에 대하여 수학 또는 논리 연산이 수행된다. 그런 다음, 변경되고 평탄화된 원시 데이터는 블록(440)에 제공되며, 이 데이터는 블록(445)에서 처리되어 도 2의 ΔJ에 대해 이전에 설명한 바와 같이 바람직한 교정 데이터를 분리해낸다. 그런 다음, 분리된 교정 데이터는 블록(450)에서 초기 설계 데이터에 해당하는 계층 포맷으로 저장된다. 블록(455)에서는, 모든 셀들이 트래버스되었는 지를 결정한다. 모든 셀들이 트래버스되었다면, 블록(460)에서 링킹 과정이 시작되고, 모든 셀들이 다 트래버스되지 않았다면, 모든 셀들이 다 트래버스되어 컴파일될 때 까지 블록(415)에서 컴파일 과정을 계속할 것이다.
블록(460)에서는 설계 트리를 액세스하는 컴파일 과정과 동일한 방법으로 링킹 과정이 시작된다. 그 과정은 블록(465)에서 계속되며, 트리내 첫 번째 셀에 대한 계층 데이터가 얻어진다. 그런 다음, 블록(470)에서는 그 셀이 이미 정의되었는 지를 결정한다. 만일 이전에 정의된 것이라면, 얻어진 셀은 블록(427)에서 이전에 정의된 교정 데이터와 결합하고, 블록(465)에서 트리내 다음 셀이 얻어진다. 만일 그 셀이 이전에 정의된 것이 아니라면, 도 2에 대해 상기 설명한 바와 같이 블록(475)에서 그 셀의 오버랩을 결정한다. 그런 다음, 이러한 오버랩 영역들은 블록(480)에서 평탄화되며, 이 평탄화된 데이터는 블록(435)에 제공되어 이전에 설명된 바와 같이 평탄화된 데이터에 대한 산수 또는 논리 연산이 수행된다. 이후, 평탄화된 데이터에 대해 수행된 이러한 연산은 블록(483)에서 중간 교정층을 발생시키는 데에 이용되고, 블록(485)에서는 그 셀에 대한 델타 평면이 발생되며, 이는 블록(490)에서 계층적인 데이터 포맷으로 저장된다. 델타 평면은 트리 내에 각 셀을 유지하는 데에 필요한 유일한 데이터이다. 상기 설명한 바와 같이, 부모셀 및 그의 자손셀들이 있다면, 부모셀에 대한 교정 정보와 그의 모든 자손의 교정 데이터의 합 간의 차이는 델타 평면과 같다. 따라서, 이렇게 되면 계층 트리의 리프들은 컴파일시 결정된 그들의 교정 평면들과 같은 델타 평면들을 갖게 된다. 블록(495)에서는, 트리내 모든 셀들이 트래버스되었는 지를 결정한다. 모든 셀들이 트래버스되었다면, 과정은 정지되고 그 출력 데이터는 이전에 설명한 다양한 기능을 위해 이용될 수도 있으며, 모든 셀들이 트래버스되지 않았다면, 단계(465)에서 트리의 모든 셀들이 트래버스될 때 까지 링킹 과정이 계속된다.
도 5는 본 발명의 특정한 실시예가 도 1의 부로 셀 F1에 대하여 논리 연산을 어떻게 수행하는 지를 보여준다. 이 경우, 부모셀(F1)에 대하여 논리 NOT 연산을 수행하는 것이 바람직하다고 가정하자. 바람직한 출력은 도 5에서 F1(NOT)으로 나타내었다. 이를 수행하기 위하여, 연산은 도 4의 블록(435)에 대해 상기 설명한 방식으로 도 2의 작동 엔진(240)을 이용하여 리프 L1을 나타내는 평탄화된 데이터에 대한 NOT 연산 및 M1을 나타내는 평탄화된 데이터에 대한 NOT 연산을 바로 수행할 것이다. 이후, 이들 연산의 결과는 계층 형태로 저장되어 교정 데이터가 적절한 노드들에 결합되게 된다. 이러한 결과들은 도 5에 L1(NOT) 및 M1(NOT)으로 도시된다. 그러나, 본 발명의 이론이 없다면, L1(NOT)과 M1(NOT)을 간단히 더해서 얻어지는 바람직한 F1(NOT)을 얻지 못한다. 이는 L1(NOT)과 M1(NOT)을 더해서 얻어지는 부정확한 결과(510)으로 나타내었다.
본 발명의 일 실시예는 다음과 같이 F1(NOT)의 정확한 결과를 얻도록 작용할 것이다. 도 2를 참조하여, 간단한 예에서는 부모셀(F1)을 나타내는 데이터로 구성된 계층적인 설계 데이터(205)가 계층 유지기(210)의 컴파일러(220)에 제공된다. 컴파일러(220)는 작동 엔진(240)에 리프(L1)를 나타내는 평탄화된 데이터를 제공하며, 상기 작동 엔진(240)은 이 경우 공급된 데이터에 대해 논리 NOT 연산을 수행한 다음 리프(L1)의 NOT을 나타내는 평탄화된 데이터를 돌려준다. 상기 설명한 바와 같이, 컴파일러(220)는 L1에 대한 교정 데이터를 발생시킨 다음 이 데이터를 계층적인 교정 데이터 파일(260)에 저장한다. 동일한 과정이 리프(M1)에 대해 반복된다. 부모셀(F1)에 관련된 어떠한 원시 기하구조도 없을 때, 부모(F1)의 컴파일링은 결과적으로 F1에 대한 어떠한 교정 데이터로 발생시키지 않는다. F1의 컴파일링 후, 링커(230)는 링킹 단계 동안 부모셀(F1)에 대한 델타 평면(520)을 발생시키도록 동작하며, 이에 대해서는 도 6을 참조하여 하기에 좀 더 상세하게 설명한다. 델타 평면(520)이 발생되어, L1(NOT)과 M1(NOT)이 더해질 때, 도 5에 나타낸 바와 같이 바람직하고 정확한 결과인 F1(NOT)이 얻어지게 된다. 그런 다음, 상기 델타 평면 데이터는 계층적인 교정 데이터 파일(260) 내에 계층적으로 저장되어, 부모셀(F1)과 결합된다. 본 예시는 샘플 IC 레이아웃에 대한 특정한 논리 연산의 수행에 있어서의 본 발명의 실시예의 이용을 단지 예시한 것이다. 이와 같이, 본 발명의 실시예가 계층적인 방식으로 설명되는 모든 IC 레이아웃에 대한 모든 논리 연산을 수행하는 데에 이용될 수 있음이 명백해진다.
도 6은 도 5의 본 발명의 일 실시예에 따라 델타 평면(520)이 어떻게 발생되는 지를 발견적으로 예시한다. 도 2를 다시 참조하면, 작동 엔진(240)이 컴파일 단계 동안 각각의 리프셀들(L1 및 M1)의 평탄화된 원시 데이터에 대하여 논리 NOT 연산을 수행한 후, 계층 유지기(210)는 부모(F1)이 링키되는 동안 부모셀 내의 오버랩 영역들을 찾아 내고 이들 영역들을 평탄화하도록 작동하며(600), 이는 오버랩 영역(640)을 발생시킨다. 이후, 오버랩 영역(640)에 대한 평탄화된 데이터는 블록(610)에서 작동 엔진(240)에 제공되어, 작동 엔진(240)에 의해 오버랩의 NOT(650)이 발생된다. 이후, 블록(620)에서 논리 NOT 연산이 부모(F1)에 대해 수행되어 평탄화된 형태로 F1(NOT)을 발생시킨다. 마지막으로, 오버랩 영역의 NOT(650)과 평탄화된 F1(NOT) 사이의 차이를 취하고, 이 델타 데이터를 계층적인 교정 데이터 파일(260)에 저장함으로써 델타 평면(520)이 발생된다.
이제, OPC 교정된 레이아웃들을 발생시키는 시스템에서의 본 발명의 이용에 대해 설명한다. 이전에 설명한 바와 같이, 집적 회로 설계의 특성이 점점 작아짐에 따라서, 광학 리소그래피의 해상도 한계는 노광 과정에서 증가 효과를 갖게 되었다. 예를 들어, 회로 영역들의 패턴 현상시의 차이는 서로에 대한 영역의 근접에 달려있음을 알게되었다. 근접 효과들은 매우 밀접하게 위치하는 패턴 영역들이 웨이퍼 상의 저항층에 리소그래피되어 전사될 때에 발생한다. 밀접하게 위치하는 영역들의 광 파장들은 서로 상호작용을 하여, 최종적으로 전사되는 패턴 영역들을 왜곡시킨다. 영역의 크기 및 간격이 리소그래피 툴의 해상도 한계에 가까워지 때에 발생하는 다른 문제점은, 코너들(오목부 및 볼록부)이 각 코너들에서의 에너지의 집중 또는 부족으로 인하여 지나치게 노광되거나 불충분하게 노광되는 경향이 있다는 것이다. 또한, 가령 크고 작은 영역들이 동일한 마스크 패턴으로부터 전사될 때에 작은 영역들의 지나친 노광 또는 불충분한 노광과 같은 다른 형태의 문제점들이 발생한다.
근접 효과의 문제를 극복하기 위한 많은 방법들이 개발되었다. 이러한 방법들은: 마스크 라인 선폭들의 선교정, 포토레지스트층 두께의 변화, 다중층의 포토레지스트 공정들의 이용, 광학적인 이미징과 함께 전자 빔 이미징의 이용, 그리고 마지막으로 근접 효과를 보상하기 위하여 초기의 마스크 패턴에 부가적인 영역들을 추가를 포함한다. 이 마지막 방법은 “광학 근접 교정(OPC)”으로 공지되어 있다.
도 7은 설계 레이아웃들에 대해 이루어질 수 있는 광학 근접 교정의 실예를 나타낸 것이다. OPC가 이용될 때 초기 마스크에 추가되는 부가적인 영역들은 전형적으로 서브-리소그래피(즉, 노광 툴의 해상도 이하의 치수를 가지며)이며, 이에 따라 저항층에 전사되지 않는다. 대신에, 이들은 최종적으로 전사되는 패턴을 개선하고 근접 효과를 보상하기 위하여 초기 패턴과 상호작용을 한다. 예를 들어, 도 7에 나타낸 바와 같이, 바람직한 패턴(710)은 근접 효과에 대한 보상없이 리소그래피되어 전사될 때에는 실제 패턴(720)처럼 보이게 된다. OPC 기술들을 이용하여, 양의 쉐리프들(732) 및 음의 쉐리프들(734) 바람직한 패턴(710)에 부가되어 근접 효과를 보상하는 데에 필요한 마스크(730)를 형성할 수도 있다. 유사하게, 도 7에서는, 실질적으로 전사된 패턴들(750 및 752)에 의해 전형적인 바람직한 트랜지스터 게이트 패턴(740)에 대한 근접 왜곡 효과를 나타내었다. 해머헤드(762), 어시스트 바들(764) 및 바이어스 바들(766)로 나타낸 OPC 교정이 초기의 바람직한 마스크 패턴에 부가될 때, 초기의 바람직한 형상이 더 정확하게 전사될 것이다. 트랜지스터 게이트들의 경우, 해머헤드 형상들(762)은 게이트의 폴리실리콘 부분이 액티브 영역(742)을 넘어 연장되도록 보장하기 위하여 라인 단부 쇼트닝 효과를 없애도록 설계된다. 어시스트 바들(764)은 전사된 게이트 패턴의 폭을 감소시키는 경향이 있는 절연 게이트 효과를 보상하도록 설계 된다. 마지막으로, 바이어스 바들(766)은 부가적인 전사 패턴(752)으로 나타낸 빽빽하게 채워진 게이트들의 효과를 없애도록 설계된다. 어떠한 경우, 현재 존재하는 OPC는 주어진 기하구조에 대하여 근접 교정을 발생시키기 위하여 룰-기반 알고리즘을 이용한다. 이러한 타입의 시스템의 경우, 설계 레이아웃은 소정의 레이아웃 패턴들로 분해되며 상기 언급한 타입의 OPC 영역들 중 하나가 설계 레이아웃의 영역에 대해 발생된다. 그러나, 본 발명의 일 실시예와는 달리, 이전의 OPC는 초기 설계 레이아웃의 확실한 계층 데이터 구조를 유지하지 못한다.
초기 설계 레이아웃의 확실한 계층 데이터 구조를 유지하면서 IC 다자인 레이아웃에 대한 OPC 교정을 발생시킬 수 있는 본 발명의 실시예가 하기에 도 8을 참조하여 설명된다. 이러한 설명은 상기 도 2 및 도 4의 설명을 참조로 포함하는데, 이는 도 8의 시스템이 이들 도면에서 각각 설명된 시스템 및 방법의 특정한 실시예이기 때문이다.
도 8을 참조하면, 집적 회로 칩 설계(800)은 계층적인 설계 데이터(810)으로 표현되며, 이는 일 실시예에서는 GDS-Ⅱ 데이터 포맷이다. 본 발명의 일 실시예를 통합하는 OPOC 알고리즘(840)을 작동시키는 컴퓨터 시스템의 입력으로서 설계 데이터(810)가 제공된다. 컴퓨터 시스템(840)은 상기 도 2 및 도 4을 참조하여 이전에 설명된 방식으로 계층적인 교정 데이터(845)를 생성하도록 작동한다. 이러한 관점에서, 컴퓨터 시스템(840)은 도 2의 계층 유지기(210) 및 작동 엔진(240)을 구비함을알 수 있으며, 여기서 컴퓨터 시스템(840)의 작동 엔진(240)은 광학 근접 교정을 제공하기 위하여 이력 설계 데이터(810)에 대해 작동하는 특별하게 정의된 OPC 작동 엔진(240)이다.
도 8에 도시된 바와 같이, OPC 교정된 설계의 설계 룰을 체크하기 위하여 출력 계층적인 교정 데이터(845)가 초기 설계 데이터(810)와 함께 종래의 설계 룰 체커(850)에 제공될 수 있다. 유사하게, 블록(860)에서 나타낸 바와 같이 상기 출력은 설계 데이터(810)과 교정 데이터(845)를 결합함으로써 리소그래피 마스크의 제조에 이용될 수 있다. 이후, 이렇게 결합된 데이터는 블록(865)에서와 같이 평탄화된 다음, EB 장치에 제공되며, 블록(870)에서는 EB 장치가 작동하여 마스크를 제조하게 된다.
도 8의 일 실시예에서, 컴퓨터 시스템(840)은 컴파일러(220), 링커(230), 및 OPC 작동 엔진(240)의 기능들을 수행하는 컴퓨터 판독가능 매체들 상에 저장된 컴퓨터 프로그램 코드를 실행한다. 다른 실시예에서, 컴퓨터 시스템(840)은 두 개 또는 그 이상의 다른 프로그램 코드들을 실행하는 단일 컴퓨터 시스템, 또는 두개 또는 그 이상의 다른 프로그램 코드들, 계층 유지기(210)의 기능들을 위한 프로그램 코드, 및 작동 엔진(240)의 기능들을 개별적인 프로그램 코드를 실행하는 다수의 개별적인 컴퓨터 시스템들을 구비한다.본 실시예에서, 계층 유지기(210)는 API를 통해 작동 엔진(240)에 데이터를 선택적으로 제공할 수도 있다. 본 실시예에 의해, 본 발명의 계층 유지기(210)는 계층 데이터 출력의 장점을 제공하기 위하여 현재 존재하는 작동 엔진(240)과 통신하여 작동하도록 변경될 수 있다.
상기 언급된 컴퓨터 판독가능 매체들은, 하드 디스크들, CD들, 플로피 디스크들, 및 서버 메모리를 포함하지만 이에 한정되지 않는 모든 컴퓨터 기억장치 툴을 구비할 수도 있다. 프로그램 코드를 실행하는 컴퓨터 시스템들은, 작동 엔진(240) 및 계층 유지기(210)의 경우, 예를 들어 윈도우즈 NT 작동 시스템 또는 선 소울러리스 워크스테이션을 작동하는 탁상용 컴퓨터를 포함하는 모든 적절한 컴퓨터 시스템을 구비한다.
OPC 교정에 대하여 주어진 계층 입력을 단순히 제공하는 작동 엔진은 이 분야에 널리 공지되어 있다. 도 8 시스템의 일 실시예에서, OPC 엔진(240)은 시스템의 사용자에 의해 제어될 수 있는 방식으로 OPC 영역들을 발생시킬 수 있는 룰-기반 OPC 엔진이다. 예를 들어, 사용자는 적용되는 교정 룰들 및 설계 레이아웃에 적용되는 영역들의 크기를 정의할 수 있다. 또한, 시스템의 일 실시예에서, 바이어스 라인들(766)의 위치 및 크기는 교정되며, 그리고/또는, 가령 트랜지스터 게이트 영역들과 같은 설계의 중요한 영역들에만 이용되는 것으로 제한되는 IC 패턴 영역들의 크기 및 피치에 달려있다. 또한, 상기 시스템의 다른 실시예에서, OPC 엔진(240)은 어시스트 영역들을(764) 국부화된 방법으로 가령 트랜지스터 게이트들과 같은 중요한 영역들에 적용하거나, 또는 전체 IC 설계에 전체적으로 적용할 수 있다. 또한, 다른 실시예에서, OPC 엔진은 중요한 영역들에만 선택적으로 교정 영역들을 위치시키고, 정확한 회로 수행을 요구하지 않는 영역들에는 이들 교정 영역들을 위치시키지 않을 수 있다. 이러한 실시예의 한 예에서, OPC 엔진은 폴리실리콘 게이트층의 중요하지 않은 상호연결 영역은 교정되지 않은 채로 두면서, 트랜지스터 게이트들에 바이어싱 및 어시스트 영역을 위치시키는 것을 한정할 수 있다. 다른 예에서, OPC 엔진은 중요한 트랜지스터 게이트 라인-단부들을 구별하고, 라인-단부 쇼트닝을 줄이기 위하여 이들 영역들에 해머헤드 교정을 적용한다. 마지막으로, 본 발명의 다른 실시예에서, OPC 작동 엔진은, 가령 본 원의 인용으로서 이전에 참조된 바 있는 팡-쳉 창, 야요-팅 왕과 야그잰쉬 씨 패티에 의해 창안되어 1997년 9월 17일 출원된 “위상 변위 회로 제조 방법 및 장치들”이란 명치의 미국 특허 출원 제08/931,921호에 개시된 위상 천이 마스크들의 OPC 교정을 제공할 수 있다
도 9는 도 8 시스템의 일 실시예가 도 1의 리프셀들(J1 및 K1)의 원시 기하구조들의 OPC 교정을 어떻게 제공하는 지를 보여준다. 도시된 것은 부모셀(E1)의 교정되지 않은 리프셀들(J1 및 K1)이다. J의 평탄화된 원시 기하구조 데이터가 계층 유지기(210)에 제공되며, 컴파일러(220)는 OPC 엔진(240)과 함께 작동하여 도 2에 대해 이전에 설명된 방식으로 교정 평면 ΔJ1을 제공한다. 이 경우, OPC 엔진은 그의 룰 정의들을 기반으로 하여, J1의 원시 기하구조가 마스크가 제조되고 웨이퍼를 노광하는 데에 이용될 때 적절한 결과를 제공하기 위해 양의 쉐리프들(905)를 필요로 하는 지를 결정해왔다. 동일한 과정이 K1의 평탄화된 원시 기하구조에 대해 수행되어, 양의 쉐리프들(905)을 또한 포함하면서 교정 평면 ΔK1을 발생시킨다. 이후, 이들 각각의 셀들은 이전에 설명된 링커(230)에 의해 링크되어 각 셀에 대한 델타 평면을 발생시킨다. 이들 셀들은 리프 노드들이며 어떠한 오버랩 영역도 갖지 않기 때문에, 그들이 개별적인 델타 평면들은 그들의 컴파일된 교정 평면들과 같다. 또한, 교정된 리프셀들(910 및 920)이 도시되는데, 이들은 각각 J1+ΔJ1 및 K1+ΔK1을 나타낸다.
도 10a 및 도 10b는 도 4의 방법이 본 발명의 일 실시예에 따른 OPC 동작을 위하여 도 1의 부모셀(E1) 내의 오버랩 영역들에 대해 중간 교정층을 어떻게 발생시키는 지를 예시한다. 도 10b는 교정된 리프셀(J1)(910)과 교정된 리프셀(K1)(920) 간의 오버랩 영역(100)을 예시한다. 상기 도 2 및 도 4를 참조하여 상기 설명한 바와 같이, 셀(E1)에 대한 링킹 과정 동안, 이러한 오버랩 영역이 결정되며 이 영역에 해당하는 데이터가 평탄화된다. 그런 다음, 평탄화된 오버랩 영역은, 중간 교정 평면(1020)을 제공하기 위하여 데이터 상에서 작동하는 OPC 작동 엔진(240)에 제공된다. 원시 구조들이 불연속적인 양으로 오버랩되는 본 원에서 설명된 경우에, 음의 쉐리프들(1010)이 중간 교정 평면에 대해 제공됨을 주목하자. 하기에 도 10b를 참조하여 설명되는 경우에서는, 교정된 리프셀들(K1 및 K2)을 각각 910b 및 920b로 나타낸 변형 부모(E1)가 예시된다. 이러한 경우는 두 개의 교정된 원시 기하구조들 간의 극미한 오버랩을 예시한다. 본 발명의 일 실시예에서는, 이들 극미한 오버랩의 경우, 종단 버팅 효과의 보상을 위해 -2층을 제공할 수 있도록 중간 교정 평면(1020b)이 제공된다.
도 11은 도 4의 방법이 본 발명의 일 실시예에 따라 OPC 동작을 위해 도 1의 부모셀(E1)의 델타 평면을 어떻게 발생시키는 지를 예시한다. 블록(1100)에 의해 설명되는 바와 같이, 셀(E1)에 대한 링크 단계에서, E1 내의 오버랩 영역들이 결정되며 영역 데이터는 평탄화된다. 이는 오버랩 영역(1000)으로 예시된다. 이어서, 블록(1110)에 의해 설명되는 바와 같이, 상기 오버랩 영역(1000)에 대한 중간 교정 평면(1020)이 도 10a에 대해 상기 설명한 대로 발생된다. 블록(1120)에서, E1의 모든 자손셀들의 교정 평면들(910 및 920)을 총합하여 총합된 자손 교정 데이터(1140)를 발생시킨다. 블록(1130)으로 설명되는 마지막 단계에서는 셀(E1)에 대한 델타 평면(1150)을 발생시키고 이 데이터를 계층적으로 저장한다. 이는 중간 교정 평면(1020)에서 총합된 자손 교정 데이터(1140)를 빼서 델타 평면(1150)을 얻음으로써 달성된다. 또한, 도 11에는 셀(E1)에 대한 최종 교정 평면(1160)이 도시되는데, 상기 최종 교정 평면(1160)은 상기 설명한 바와 같이 특정한 동작, 여기에서는 셀에 대하여 OPC를 적절하게 적용하기 위하여 셀의 설계 데이터에 적용하는 데에 필요한 총 교정을 나타낸다. 교정 평면(1160)은 자손(J1 및 K1)의 교정 평면들(910 및 920)에 각각과 총합되는 E1의 델타 평면을 구비한다.
도 12는 본 발명의 일 실시예를 이용하여 설계 레이아웃에 OPC 교정을 제공하는 다른 방법을 예시한다. 블록(1200)에서는 먼저 집적 회로 레이아웃이 제공된다. 이후, 블록(1205)에서는, 도 8의 시스템에 따라 설계 데이터에 대해 룰 기반 OPC 교정을 수행하는 시스템에 상기 설계층에 해당하는 계층적으로 포맷된 설계 데이터가 제공된다. 도 8의 시스템은 상기 설명한 바와 같이 계층적인 교정 데이터 출력을 발생시키며, 블럭(1210)에 나타낸 바와 같이 상기 교정 데이터는 초기의 설계 데이터와 결합되어 계층적으로 설명되는 룰-기반 OPC 교정된 설계 데이터를 발생시킨다. 이 교정된 설계 데이터를 이용하여, 이 교정된 데이터가 생성하게 될 마스크의 시뮬레이트된 이미지가 블럭(1215)에서 발생된다. 이 시뮬레이션은, 가령 장 팽-쳉, 왕 야오-팅, 그리고 패티 야곈시 씨.에 의해 창안되어 1997년 9월 17일 출원된 “마스크 검증, 교정 및 설계 룰 체킹”이란 명칭의 미국 가 특허 출원 제60/059,306호와, 장 팽-쳉, 왕 야오-팅, 그리고 패티, 야곈시 씨.에 의해 창안되어 1998년 9월 16일 출원된 “마스크 검증, 교정 및 설계 룰 체킹”이란 명칭의 미국 특허 출원과, 그리고 좀 더 상세하게는 장 팽-쳉, 왕 야오-팅, 패티 야곈시 씨. 그리고 리나드 카크린에 의해 창안되어 1998년 8월 7일 출원된 “시각 검사 및 검증 시스템”이란 명칭의 미국 특허 출원에서 설명된 홉킨스 방정식 기반 시뮬레이션 장치를 이용하여 발생될 수 있으며, 상기 언급된 각각의 특허 출원들은 본 원의 참조로서 이전에 포함되었다.
이후, 블록(1220)에서, 교정된 마스크의 시뮬레이트된 이미지는 바람직한 설계 이미지와 비교된 다음, 블록(1225)에서 초기의 룰 기반 OPC 교정이 그 설계을 사용자 정의된 한 세트의 파라미터들 내에 있게 하기에 충분한지를 결정한다. 이러한 비교 수행 방법은 상기 언급된 미국 가 특허 출원 “마스크 검증, 교정 및 설계 룰 체킹”,및 동일 출원인의 미국 특허 출원에 개시된다. 비교의 결과로 만일에 설계 파라미터들이 얻어진다면, 교정된 설계 데이터는 설계 룰 체커에 입력되며, 이 설계 룰 체커는 블록(1235)에서 특정한 집적 회로 설계을 위해 정해진 설계 룰들의 어떠한 위반에 대해 교정된 설계을 분석한다. 만일 교정된 설계가 설계 룰들 내에 포함된다면, 블록(1245)으로 나타낸 바와 같이 상기 교정된 설계 데이터는 평탄화되며 EB 장치를 이용하여 마스크가 제조된다. 만일 설계 룰들에 부합되지 못한다면, 블록(1250)에서 마스크의 재설계의 여부가 결정되어야 한다.
만일 상기 마스크를 재설계하라는 결정이 아니라 반복적인 교정 과정들을 계속함으로써 상기 문제에 접근하여 해결하라는 결정이 내려진다면, 모델 기반 OPC 알고리즘이 교정된 설계에 대해 작동된다. 유사하게, 만일 초기의 교정 설계 데이터가 블록(1225)의 설계 파라미터들 내에 포함되지 않는 다면, 초기의 교정 설계 데이터는 모델 기반 OPC 알고리즘에 입력된다. 모델 기반 OPC 알고리즘은 블록(1230)으로 나타낸 바와 같이 초기의 교정 설계에 대해 좀 더 명확한 교정을 수행하는 데에 이용된다. 그런 다음, 상기 모델 기반 OPC 교정 설계는 블록(1215)에 제공되며, 블록(1215)에서는 모델 기반 OPC 교정 설계의 시뮬레이트된 이미지가 생성되며 바람직한 이미지와 다시 한번 비교된다. OPC 교정 설계을 설계 분석을 위해 종래의 설계 룰 체커 제조품에 입력하기 전에, 모델 기반 OPC 교정 설계의 시뮬레이트된 이미지는 종래의 설계 룰 체커에 의해 수용가능한 포맷으로 처리되어야 한다. 이를 수행하는 한 방법은, 상기언급되었으며 본 원의 인용으로서 이전에 참조된 미국 가 특허 출원 “마스크 검증, 교정 및 설계 룰 체킹”, 및 동일 출원인의 미국 특허 출원에 좀 더 상세하게 설명되는 에지 체킹 기술을 기반으로 하는 시뮬레이트된 이미지의 맨하탄 기하구조 표현(Manhattan geometry representation)을 발생시키는 것이다. 이러한 모든 과정들은, 사용자 정의 설계 파라미터들 및 회로 지정 설계 룰들을 만족시키는 교정 설계가 제조될 때 까지 계속될 수 있다.
이러한 과정의 일 실시예에서, 모델 기반 OPC 알고리즘은 사용자 지정 입력에 응답할 수 있다. 예를 들어, 일 실시예에서, 사용자는 데이터량 및 전체 과정 속도의 제어에 적용하기를 원하는 교정 레벨의 복잡성을 제어할 수 있다. 유사하게, 다른 실시예에서, 사용자는 모델 기반 알고리즘에 의해 적용되는 교정 영역들의 크기를 제어할 수 있다. 또한, 다른 실시예에서, 사용자는 알고리즘에 의해 적용될 교정 기준을 정할 수 있다.
나머지 도면들 도 13 내지 도 19는 계층적인 입력 IC 설계 레이아웃에 대해 OPC 교정을 제공하는 본 발명의 일 실시예를 실행하는 컴퓨터 시스템으로부터의 화면 스냅샷을 예시한 것이다. 예를 들어, 도 13은 OPC 교정된 입력 설계 레이아웃의 예시적인 화면 스냅샷을 나타낸다. 설계 프로그램의 사용자 인터페이스(1300)은 교정된 IC 설계 레이아웃이 도시되는 설계 창(1330)을 구비한다. 설계 레이아웃은 확산층(1390), 및 가령 원시 구조(1320)와 같은 폴리실리콘 구조층을 포함한다. 도 1의 샘플 부모셀들(E1 및 F1)과 유사하게, 셀(1310)이 또한 설계 창(1330) 내에 도시된다.
도 14는 도 13의 입력 설계에 OPC 교정을 제공하는 본 발명의 일 실시예를 실행하는 컴퓨터 시스템으로부터의 마지막 출력의 예시적인 화면 스냅샷을 나타낸다. 사용자 인터페이스(1300)의 설계 창(330)은 OPC 교정된 원시 구조들(1320)을 포함하는 셀(1310)을 보여준다. 셀(1310)은, 가령 해머헤드들(1410), 어시스트 라인들(1420), 바이어스 라인들(1430), 양의 쉐리프들(1440) 및 음의 쉐리프들(1450)과 같은 OPC 영역들을 포함한다. 도 14에 도시된 출력은 전체 설계에 대하여 모든 OPC 효과들에 대해 보상되어야 하는 모든 교정들을 나타낸다. 따라서, 이들 교정들은 계층 내 셀들간의 모든 오버랩들이 해결되고 보상되는 본 발명의 실시예의 최종적으로 링크된 출력을 나타낸다. 도 14에 도시된 OPC 영역들은 도 14의 예시적인 화면 스냅샷을 확대한 도 15에서 좀 더 상세하게 볼 수 있다. 이 층은 어시스트 라인들(1420), 바이어스 라인들(1430) 및 음의 쉐리프들(1450)을 포함하는 셀(1310)에 대한 교정을 포함한다.
도 17은 OPC 교정을 수행하는 본 발명의 일 실시예를 실행하는 컴퓨터 시스템으로부터의 +1 OPC 교정층의 예시적인 화면 스냅샷을 도시한다. 이 층은 해머헤드들(1410), 어시스트 라인들(1420) 및 양의 쉐리프들(1440)을 포함하는 셀(1310)에 대한 교정을 포함한다.
도 18은 OPC 교정을 수행하는 본 발명의 일 실시예를 실행하는 컴퓨터 시스템으로부터의 -2 OPC 교정층의 예시적인 화면 스냅샷을 도시한다. 이 층은 종단 버팅 교정 영역(1810)을 포함하는 셀(1310)에 대한 교정을 포함한다.
도 19는 본 발명의 일 실시예를 실행하는 컴퓨터 시스템에 의해 OPC 교정된 개별적인 셀(1310)의 예시적인 화면 스냅샷을 도시한다. 설계 창(1330)은 셀(1310)을 포함하며, 셀(1310)의 링크된 교정층이 적용된다. 셀(1310)에 적용된 교정은 해머헤드들(1410), 어시스트 라인들(1420), 양의 쉐리프들(1440), 및 음의 쉐리프들(1450)을 포함한다. 셀(1310)에 대한 교정은 도 14에 도시된 것들과는 다르다는 것을 주목해야하는데, 이는 도 14는 전체 설계에 대한 모든 교정에 대한 표현이며, 도 19는 단지 교정 셀(1310)에 개별적으로 필요한 교정에 대한 표현만을 나타내기 때문이다. 즉, 도 19에 나타낸 교정들은 셀(1310)과 이에 인접하는 다른 셀들간의 상호작용을 고려하지 않는다. 예를 들어, 도 14의 바이어스 라인들은 도 19에는 없다.
본 원에서는 첨부 도면을 참조하여 본 발명의 예시적인 실시예들이 상세하게 설명되기는 하였지만, 본 발명은 이러한 실시예들에 한정되지 않는다. 본 발명을 본 원에서 상기 개시된 형태들로 한정하지 않을 것이다. 당업자들에게 있어 본 발명의 범위 및 원리를 벗어나지 않으면서 본 발명에 대한 다양한 변경들 및 변형들이 이루어질 수 있음은 자명하다. 따라서, 본 발명의 범위는 하기의 청구항들에 의해서만 한정된다.

Claims (92)

  1. 복수의 셀들을 포함하는 계층적으로 묘사된 집적 회로에서 특정 세트의 연산 기준에 따라 연산을 수행하는 시스템에서, 컴퓨터 판독 가능 매체를 구비하고, 상기 계층적으로 묘사된 레이아웃에 대응하는 계층적으로 구성된 교정 데이터를 구비하는 제1 프로그램 데이터를 포함하며, 여기서 만일 상기 제1 프로그램이 평탄화된 레이아웃에 적용된 경우 상기 레이아웃에서 상기 연산을 수행한 결과를 표시하는 데이터를 구비하는 출력이 발생되게 되는 컴퓨터 프로그램물.
  2. 제 1 항에 있어서,
    상기 제 상기 제1 프로그램 데이터는 상기 복수의 셀에 대응하는 복수의 델타 평면을 포함하며, 특정 셀의 데이터 평면은 상기 특정셀의 교정 평면과 상기 특정셀의 자손셀들에 대응하는 델타 평면들 간의 차이를 표시하는 데이터를 구비하는 것을 특징으로 하는 컴퓨터 프로그램물
  3. 제 2 항에 있어서,
    상기 복수의 셀의 각 셀에 대한 상기 교정 평면은 만일 상기 교정 평면이 상기 평탄화된 셀 데이터에 적용된 경우 셀에서 연산을 수행한 결과를 표시하는 출력 데이터를 발생하는 것을 특징으로 하는 컴퓨터 프로그램물
  4. 제 3 항에 있어서,
    상기 계층적으로 묘사된 집적회로 레이아웃에 있는 각 셀에 대한 데이터 평면이 상기 셀의 자손 셀들 각각 간의 상호 동작과 상기 셀의 원시 기하구조와 상기 셀의 자손 셀들 각각 간의 상호동작을 설명하는 것을 특징으로 하는 컴퓨터 프로그램물.
  5. 제 2 항에 있어서,
    상기 제 1 프로그램 데이터는 산수적으로 묘사된 한 세트의 델타 평면을 포함하는 것을 특징으로 하는 컴퓨터 프로그램물
  6. 제 2 항에 있어서,
    상기 제 1 프로그램 데이터는 논리적으로 묘사된 한 세트의 델타 평면을 포함하는 것을 특징으로 하는 컴퓨터 프로그램물
  7. 제 1 항에 있어서,
    상기 연산은 논리적 및 산수적 연산을 포함하는 한 그룹의 연산들중 하나를 구비하는 것을 특징으로 하는 컴퓨터 프로그램물.
  8. 제 1 항에 있어서,
    상기 제 1 프로그램 데이터는 GDS-Ⅱ 데이터 파일로 묘사되는 데이터를 구비하는 것을 특징으로 하는 컴퓨터 프로그램물.
  9. 제 1 항에 있어서,
    상기 제 1 프로그램 데이터는 광학 근접 효과에 대해 상기 레이아웃을 교정하는 데이터를 구비하는 것을 특징으로 하는 컴퓨터 프로그램물.
  10. 제 1 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 레이아웃에서 수행된 논리적 연산에 대해 상기 레이아웃을 교정하는 데이터를 구비하는 것을 특징으로 하는 컴퓨터 프로그램물.
  11. 제 10 항에 있어서,
    상기 논리적 연산은 AND, NOT, OR, NOR 및 NAND를 포함하는 한 그룹의 논리 연산들중 하나를 구비하는 것을 특징으로 하는 컴퓨터 프로그램물.
  12. 제 1 항에 있어서,
    상기 레이아웃은 브라이트 필드와 다크 필드 레이아웃중 하나를 구비하는 것을 특징으로 하는 컴퓨터 프로그램물.
  13. 제 1 항에 있어서,
    상기 레이아웃은 위상 시프트 레이아웃을 구비하는 것을 특징으로 하는 컴퓨터 프로그램물.
  14. 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법으로서,
    제 1 입력으로서 복수의 셀을 구비하는 계층적으로 묘사된 집적회로 레이아웃을 제공하고;
    제 2 입력으로서 특정 세트의 연산 기준을 제공하고;
    상기 레이아웃에서 상기 특정세트의 연산 기준에 따라 레이아웃 연산을 수행하고; 그리고
    만일 제 1 프로그램 데이터가 평탄화된 레이아웃에 적용된 경우 상기 레이아웃에서 상기 연산을 수행한 결과를 표시하는 데이터를 구비하는 출력이 발생되도록 상기레이아웃 연산에 응답하여 상기 계층적으로 묘사된 레이아웃에 대응하는 계층적으로 구성된 교정 데이터를 구비하는 데이터를 발생하는 단계를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  15. 제 14 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 복수의 셀에 대응하는 복수의 델타 평면을 구비하며, 특정 셀의 상기 델타 평면은 상기 특정 셀의 교정 평면과 상기 특정셀의 자손 셀들에 대응하는 델타 평면들 간의 차이를 표시하는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  16. 제 15 항에 있어서,
    상기 복수의 셀들의 각 셀에 대한 교정 평면이 만일 상기 교정 평면이 평탄화된 셀 데이터에 적용된 경우 상기 셀에서 연산을 수행한 결과를 표시하는 데이터를 발생할 수 있는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  17. 제 16 항에 있어서,
    상기 계층적으로 묘사된 집적회로 레이아웃에서 각 셀에 대한 상기 델타 평면은 상기 셀의 자손 셀들 각각들간의 상호 동작과 상기 셀의 원시 기하구조와 상기 셀의 자손셀들 각각과의 사이의 상호동작을 설명하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  18. 제 15 항에 있어서,
    상기 제 1 프로그램 데이터는 한 세트의 산수적으로 묘사된 델타 평면을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  19. 제 15 항에 있어서,
    상기 제 1 프로그램 데이터는 한 세트의 논리적으로 묘사된 델타 평면을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  20. 제 14 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 복수의 셀에 대응하는 복수의 델타 평면을 구비하며,
    상기 제 1 프로그램 데이터를 발생하는 단계가
    상기 계층적으로 묘사된 레이아웃을 컴파일링 하는 단계를 구비하고, 여기서 상기 컴파일링 단계는 상기 특정 세트의 연산 기준에 응답하여 상기 복수의 셀의 각 셀에 대한 제 1 교정 층을 발생하는 단계를 포함하며;
    상기 계층적으로 묘사되는 레이아웃을 링크하는 단계를 구비하고, 여기서 상기 링크 단계는 각 셀의 상기 델타 평면이 상기 셀의 자손셀들 각각 사이의 상호 동작과 상기 셀의 원시 기하구조와 상기 셀의 자손 셀들 각각과의 사이의 상호동작을 설명하도록, 각 셀에 대한 상기 델타 평면을 발생하기 위하여 상기 특정 세트의 연산 기준에 응답하여 각 셀의 상기 교정 층을 변경하는 단계를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  21. 제 20 항에 있어서,
    레이아웃의 각 셀에 대해, 셀의 델타 평면과 셀의 자손 셀의 델타 평면들의 합은 상기 셀의 교정 평면을 구비하며, 만일 교정 평면이 평탄화된 셀 데이터에 적용된 경우 상기 복수의 셀에 있는 각 셀에 대한 상기 교정 평면은 셀에서 연산을 수행한 결과를 표시하는 출력 데이터를 발생시킬수 있는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  22. 제 20 항에 있어서,
    상기 컴파일링 단계는 상기 레이아웃의 깊이 인식 트래버싱을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  23. 제 20 항에 있어서,
    상기 링크단계는 상기 레이아웃의 깊이 인식 트래버싱을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  24. 제 14 항에 있어서,
    제 1 의 교정된 레이아웃을 묘사하는 제2 프로그램 데이터를 생성하기 위하여, 제 1 프로그램 데이터를 직접회로 레이아웃을 묘사하는 데이터와 결합하는 단계와;
    상기 제 2 프로그램 데이터를 설계 룰 체커 장치에 제공하는 단계와;
    상기 제1의 교정된 레이아웃이 집적회로 설계 룰 세트내에 해당되는지를 판정하도록 상기 설계 룰 체커 장치를 동작시키는 단계를 더 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  25. 제 14 항에 있어서,
    상기 제 1 프로그램 데이터는 컴퓨터 판독가능 매체에 제공되는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  26. 제 14 항에 있어서,
    상기 연산은 논리적 및 산수적 연산을 포함하는 한 그룹의 연산들중 하나를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  27. 제 14 항에 있어서,
    상기 제 1 프로그램 데이터는 GDS-Ⅱ 데이터 파일로 묘사되는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  28. 제 14 항에 있어서,
    상기 제 1 프로그램 데이터는 광학 근접 효과에 대해 상기 레이아웃을 교정하는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  29. 제 14 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 레이아웃에서 수행된 논리적 연산에 대해 상기 레이아웃을 교정하는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  30. 제 29 항에 있어서,
    상기 논리적 연산은 AND, NOT, OR, NOR 및 NAND를 포함하는 한 그룹의 논리 연산들중 하나를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  31. 제 14 항에 있어서,
    상기 레이아웃은 브라이트 필드와 다크 필드 레이아웃중 하나를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  32. 제 14 항에 있어서,
    상기 레이아웃은 위상 시프트 레이아웃을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법.
  33. 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하기위해
    제 1 입력으로서 복수의 셀을 구비하는 계층적으로 묘사된 집적회로 레이아웃을 제공하고;
    제 2 입력으로서 특정 세트의 연산 기준을 제공하고;
    상기 레이아웃에서 상기 특정세트의 연산 기준에 따라 레이아웃 연산을 수행하고; 그리고
    만일 제 1 프로그램 데이터가 평탄화된 레이아웃에 적용된 경우 상기 레이아웃에서 상기 연산을 수행한 결과를 표시하는 데이터를 구비하는 출력이 발생되도록 상기레이아웃 연산에 응답하여 상기 계층적으로 묘사된 레이아웃에 대응하는 계층적으로 구성된 교정 데이터를 구비하는 데이터를 발생시키는 방법 단계들을 수행하기 위해 머신에 의해 실행가능한 명령들의 프로그램을 유형적으로 구현하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  34. 제 33 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 복수의 셀에 대응하는 복수의 델타 평면을 구비하며, 특정 셀의 상기 델타 평면은 상기 특정 셀의 교정 평면과 상기 특정셀의 자손 셀들에 대응하는 델타 평면들 간의 차이를 표시하는 데이터를 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  35. 제 34 항에 있어서,
    상기 복수의 셀들의 각 셀에 대한 교정 평면이 만일 상기 교정 평면이 평탄화된 셀 데이터에 적용된 경우 상기 셀에서 연산을 수행한 결과를 표시하는 데이터를 발생할 수 있는 데이터를 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  36. 제 35 항에 있어서,
    상기 계층적으로 묘사된 집적회로 레이아웃에서 각 셀에 대한 상기 델타 평면은 상기 셀의 자손 셀들 각각들간의 상호 동작과 상기 셀의 원시 기하구조와 상기 셀의 자손셀들 각각과의 사이의 상호동작을 설명하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  37. 제 34 항에 있어서,
    상기 제 1 프로그램 데이터는 한 세트의 산수적으로 묘사된 델타 평면을 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  38. 제 34 항에 있어서,
    상기 제 1 프로그램 데이터는 한 세트의 논리적으로 묘사된 델타 평면을 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  39. 제 33 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 복수의 셀에 대응하는 복수의 델타 평면을 구비하며,
    상기 제 1 프로그램 데이터를 발생하는 단계가
    상기 계층적으로 묘사된 레이아웃을 컴파일링 하는 단계를 구비하고, 여기서 상기 컴파일링 단계는 상기 특정 세트의 연산 기준에 응답하여 상기 복수의 셀의 각 셀에 대한 제 1 교정 층을 발생하는 단계를 포함하며;
    상기 계층적으로 묘사되는 레이아웃을 링크하는 단계를 구비하고, 여기서 상기 링크 단계는 각 셀의 상기 델타 평면이 상기 셀의 자손셀들 각각 사이의 상호 동작과 상기 셀의 원시 기하구조와 상기 셀의 자손 셀들 각각과의 사이의 상호동작을 설명하도록, 각 셀에 대한 상기 델타 평면을 발생하기 위하여 상기 특정 세트의 연산 기준에 응답하여 각 셀의 상기 교정 층을 변경하는 단계를 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  40. 제 39 항에 있어서,
    상기 레이아웃의 각 셀에 대해, 셀의 델타 평면과 셀의 자손 셀의 델타 평면들의 합은 상기 셀의 교정 평면을 구비하며, 만일 교정 평면이 평탄화된 셀 데이터에 적용된 경우 상기 복수의 셀에 있는 각 셀에 대한 상기 교정 평면은 셀에서 연산을 수행한 결과를 표시하는 출력 데이터를 발생시킬수 있는 데이터를 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  41. 제 39 항에 있어서,
    상기 컴파일링 단계는 상기 레이아웃의 깊이 인식 트래버싱을 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  42. 제 39 항에 있어서,
    상기 링크 단계는 상기 레이아웃의 깊이 인식 트래버싱을 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  43. 제 33 항에 있어서,
    상기 제 1 프로그램 데이터가 컴퓨터 판독 가능한 매체에 제공되는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  44. 제 33 항에 있어서,
    상기 연산은 논리적 및 산수적 연산을 포함하는 한 그룹의 연산들중 하나를 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  45. 제 33 항에 있어서,
    상기 제 1 프로그램 데이터는 GDS-Ⅱ 데이터 파일로 묘사되는 데이터를 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  46. 제 33 항에 있어서,
    상기 제 1 프로그램 데이터는 광학 근접 효과에 대해 상기 레이아웃을 교정하는 데이터를 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  47. 제 33 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 레이아웃에서 수행된 논리적 연산에 대해 상기 레이아웃을 교정하는 데이터를 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  48. 제 47 항에 있어서,
    상기 논리적 연산은 AND, NOT, OR, NOR 및 NAND를 포함하는 한 그룹의 논리 연산들중 하나를 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  49. 제 33 항에 있어서,
    상기 레이아웃은 브라이트 필드와 다크 필드 레이아웃중 하나를 구비하는 것을 특징으로 하는 컴퓨터 프로그램물.
  50. 제 33 항에 있어서,
    상기 레이아웃은 위상 시프트 레이아웃을 구비하는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  51. 제 33 항에 있어서,
    상기 프로그램 저장 디바이스는 하드 디스크 드라이브로 구성되는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  52. 제 33 항에 있어서,
    상기 프로그램 저장 디바이스는 서버로 구성되는 것을 특징으로 하는 머신에 의해 판독가능한 프로그램 저장 디바이스.
  53. 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치로서,
    제 1 입력으로서 복수의 셀을 구비하는 계층적으로 묘사된 집적 회로 레이아웃을 수신하는 자원과;
    제 2 입력으로서 특정 세트의 연산 기준을 수신하는 자원과;
    상기 레이아웃에서 상기 특정세트의 연산 기준에 따라 레이아웃 연산을 수행하는 연산엔진과; 그리고
    만일 제 1 프로그램 데이터가 평탄화된 레이아웃에 적용된 경우 상기 레이아웃에서 상기 연산을 수행한 결과를 표시하는 데이터를 구비하는 출력이 발생되도록 상기 레이아웃 연산에 응답하여 상기 계층적으로 묘사된 레이아웃에 대응하는 계층적으로 구성된 교정 데이터를 구비하는 제 1 프로그램 데이터를 발생하는 계층 유지기를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  54. 제 53 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 복수의 셀에 대응하는 복수의 델타 평면을 구비하며, 특정 셀의 상기 델타 평면은 상기 특정 셀의 교정 평면과 상기 특정셀의 자손 셀들에 대응하는 델타 평면들 간의 차이를 표시하는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  55. 제 54 항에 있어서,
    상기 복수의 셀들의 각 셀에 대한 교정 평면이 만일 상기 교정 평면이 평탄화된 셀 데이터에 적용된 경우 상기 셀에서 연산을 수행한 결과를 표시하는 데이터를 발생할 수 있는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  56. 제 55 항에 있어서,
    상기 계층적으로 묘사된 집적회로 레이아웃에서 각 셀에 대한 상기 델타 평면은 상기 셀의 자손 셀들 각각들간의 상호 동작과 상기 셀의 원시 기하구조와 상기 셀의 자손셀들 각각과의 사이의 상호동작을 설명하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  57. 제 54 항에 있어서,
    상기 제 1 프로그램 데이터는 한 세트의 산수적으로 묘사된 델타 평면을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  58. 제 54 항에 있어서,
    상기 제 1 프로그램 데이터는 한 세트의 논리적으로 묘사된 델타 평면을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  59. 제 53 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 복수의 셀에 대응하는 복수의 델타 평면을 구비하며,
    상기 계층 유지기가
    상기 특정 세트의 연산 기준에 응답하여 상기 복수의 셀의 각 셀에 대한 제 1 교정 층을 발생하는 컴파일러와; 그리고
    각 셀의 상기 델타 평면이 상기 셀의 자손셀들 각각 사이의 상호 동작과 상기 셀의 원시 기하구조와 상기 셀의 자손 셀들 각각과의 사이의 상호동작을 설명하도록, 각 셀에 대한 상기 델타 평면을 발생하기 위하여 상기 특정 세트의 연산 기준에 응답하여 각 셀의 상기 교정 층을 변경하는 링커를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  60. 제 59 항에 있어서,
    상기 레이아웃의 각 셀에 대해, 셀의 델타 평면과 셀의 자손 셀의 델타 평면들의 합은 상기 셀의 교정 평면을 구비하며, 만일 교정 평면이 평탄화된 셀 데이터에 적용된 경우 상기 복수의 셀에 있는 각 셀에 대한 상기 교정 평면은 셀에서 연산을 수행한 결과를 표시하는 출력 데이터를 발생시킬수 있는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  61. 제 59 항에 있어서,
    상기 교정 층의 발생은 상기 레이아웃의 깊이 인식 트래버싱을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  62. 제 59 항에 있어서,
    상기 델타 평면의 발생은 상기 레이아웃의 깊이 인식 트래버싱을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  63. 제 53 항에 있어서,
    제 1 의 교정된 레이아웃을 묘사하는 제 2 프로그램 데이터를 생성하기 위하여, 제 1 프로그램 데이터를 직접회로 레이아웃을 묘사하는 데이터와 결합하는 자원과; 그리고
    상기 제 2 프로그램 데이터를 수신하며 상기 제 1 의 교정된 레이아웃이 한 세트의 집적회로 설계 툴내에 해당되는지 여부를 표시하는 출력을 제공하는 설계 룰 체커 장치를 더 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  64. 제 53 항에 있어서,
    상기 제 1 프로그램 데이터는 컴퓨터 판독가능 매체에 제공되는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  65. 제 53 항에 있어서,
    상기 연산은 논리적 및 산수적 연산을 포함하는 한 그룹의 연산들중 하나를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  66. 제 53 항에 있어서,
    상기 제 1 프로그램 데이터는 GDS-Ⅱ 데이터 파일로 묘사되는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  67. 제 53 항에 있어서,
    상기 제 1 프로그램 데이터는 광학 근접 효과에 대해 상기 레이아웃을 교정하는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  68. 제 53 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 레이아웃에서 수행된 논리적 연산에 대해 상기 레이아웃을 교정하는 데이터를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  69. 제 68 항에 있어서,
    상기 논리적 연산은 AND, NOT, OR, NOR 및 NAND를 포함하는 한 그룹의 논리 연산들중 하나를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  70. 제 53 항에 있어서,
    상기 레이아웃은 브라이트 필드와 다크 필드 레이아웃중 하나를 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  71. 제 53 항에 있어서,
    상기 레이아웃은 위상 시프트 레이아웃을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  72. 제 53 항에 있어서,
    컴퓨터로 하여금 상기 계층적으로 묘사된 집적 레이아웃 애서 상기 연산을 수행하도록 자체에 수록된 컴퓨터 판독가능 프로그램을 갖는 컴퓨터로 사용가능한 컴퓨터 프로그램물을 구비하는 것을 특징으로 하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 장치.
  73. 제 1 입력으로서 복수의 셀을 구비하는 계층적으로 묘사된 집적회로 레이아웃을 제공하고;
    제 2 입력으로서 특정 세트의 연산 기준을 제공하고;
    상기 레이아웃에서 상기 특정세트의 연산 기준에 따라 레이아웃 연산을 수행하고; 그리고
    만일 제 1 프로그램 데이터가 평탄화된 레이아웃에 적용된 경우 상기 레이아웃에서 상기 연산을 수행한 결과를 표시하는 데이터를 구비하는 출력이 발생되도록 상기 레이아웃 연산에 응답하여 상기 계층적으로 묘사된 레이아웃에 대응하는 계층적으로 구성된 교정 데이터를 구비하는 상기 제 1 프로그램 데이터를 발생시키는 방법을 구비하며,
    상기 제 1 프로그램 데이터 및 상기 레이아웃을 묘사하는 데이터를 마스크 형성 장치에 제공하고; 그리고
    상기 레이아웃을 묘사하는 데이터 및 상기 제 1 프로그램 데이터에 응답하여 상기 마스크 형성 장치로 포토 리소그래피 마스크를 발생하는 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 방법에 따라 생성되는 포토리소그래피 마스크.
  74. 제 73 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 복수의 셀에 대응하는 복수의 델타 평면을 구비하며, 특정 셀의 상기 델타 평면은 상기 특정 셀의 교정 평면과 상기 특정셀의 자손 셀들에 대응하는 델타 평면들 간의 차이를 표시하는 데이터를 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  75. 제 74 항에 있어서,
    상기 복수의 셀들의 각 셀에 대한 교정 평면이 만일 상기 교정 평면이 평탄화된 셀 데이터에 적용된 경우 상기 셀에서 연산을 수행한 결과를 표시하는 데이터를 발생할 수 있는 데이터를 구비하는 것을 특징으로 포토리소그래피 마스크.
  76. 제 75 항에 있어서,
    상기 계층적으로 묘사된 집적회로 레이아웃에서 각 셀에 대한 상기 델타 평면은 상기 셀의 자손 셀들 각각들간의 상호 동작과 상기 셀의 원시 기하구조와 상기 셀의 자손셀들 각각과의 사이의 상호동작을 설명하는 것을 특징으로 하는 포토리소그래피 마스크.
  77. 제 74 항에 있어서,
    상기 제 1 프로그램 데이터는 한 세트의 산수적으로 묘사된 델타 평면을 구비하는 것을 특징으로 포토리소그래피 마스크.
  78. 제 74 항에 있어서,
    상기 제 1 프로그램 데이터는 한 세트의 논리적으로 묘사된 델타 평면을 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  79. 제 73 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 복수의 셀에 대응하는 복수의 델타 평면을 구비하며,
    상기 제 1 프로그램 데이터를 발생하는 단계가
    상기 계층적으로 묘사된 레이아웃을 컴파일링 하는 단계를 구비하고, 여기서 상기 컴파일링 단계는 상기 특정 세트의 연산 기준에 응답하여 상기 복수의 셀의 각 셀에 대한 제 1 교정 층을 발생하는 단계를 포함하며;
    상기 계층적으로 묘사되는 레이아웃을 링크하는 단계를 구비하고, 여기서 상기 링크 단계는 각 셀의 상기 델타 평면이 상기 셀의 자손셀들 각각 사이의 상호 동작과 상기 셀의 원시 기하구조와 상기 셀의 자손 셀들 각각과의 사이의 상호동작을 설명하도록, 각 셀에 대한 상기 델타 평면을 발생하기 위하여 상기 특정 세트의 연산 기준에 응답하여 각 셀의 상기 교정 층을 변경하는 단계를 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  80. 제 79 항에 있어서,
    상기 레이아웃의 각 셀에 대해, 셀의 델타 평면과 셀의 자손 셀의 델타 평면들의 합은 상기 셀의 교정 평면을 구비하며, 만일 교정 평면이 평탄화된 셀 데이터에 적용된 경우 상기 복수의 셀에 있는 각 셀에 대한 상기 교정 평면은 셀에서 연산을 수행한 결과를 표시하는 출력 데이터를 발생시킬수 있는 데이터를 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  81. 제 79 항에 있어서,
    상기 컴파일링 단계는 상기 레이아웃의 깊이 인식 트래버싱을 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  82. 제 79 항에 있어서,
    상기 링크 단계는 상기 레이아웃의 깊이 인식 트래버싱을 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  83. 제 73 항에 있어서,
    상기 방법이
    제 1 의 교정된 레이아웃을 묘사하는 제2 프로그램 데이터를 생성하기 위하여, 제 1 프로그램 데이터를 직접회로 레이아웃을 묘사하는 데이터와 결합하는 단계와;
    상기 제 2 프로그램 데이터를 설계 룰 체커 장치에 제공하는 단계와;
    상기 제1의 교정된 레이아웃이 집적회로 설계 룰 세트내에 해당되는지를 판정하도록 상기 설계 룰 체커 장치를 동작시키는 단계를 더 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  84. 제 73 항에 있어서,
    상기 제 1 프로그램 데이터는 컴퓨터 판독가능 매체에 제공되는 것을 특징으로 하는 포토리소그래피 마스크.
  85. 제 73 항에 있어서,
    상기 연산은 논리적 및 산수적 연산을 포함하는 한 그룹의 연산들중 하나를 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  86. 제 73 항에 있어서,
    상기 제 1 프로그램 데이터는 GDS-Ⅱ 데이터 파일로 묘사되는 데이터를 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  87. 제 73 항에 있어서,
    상기 제 1 프로그램 데이터는 광학 근접 효과에 대해 상기 레이아웃을 교정하는 데이터를 구비하는 것을 특징으로 포토리소그래피 마스크.
  88. 제 73 항에 있어서,
    상기 제 1 프로그램 데이터는 상기 레이아웃에서 수행된 논리적 연산에 대해 상기 레이아웃을 교정하는 데이터를 구비하는 것을 특징으로 포토리소그래피 마스크.
  89. 제 88 항에 있어서,
    상기 논리적 연산은 AND, NOT, OR, NOR 및 NAND를 포함하는 한 그룹의 논리 연산들중 하나를 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  90. 제 73 항에 있어서,
    상기 레이아웃은 브라이트 필드와 다크 필드 레이아웃중 하나를 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  91. 제 73 항에 있어서,
    상기 레이아웃은 위상 시프트 레이아웃을 구비하는 것을 특징으로 하는 포토리소그래피 마스크.
  92. 제 73 항에 있어서,
    상기 계층적으로 묘사된 집적회로 레이아웃에서 연산을 수행하는 상기 방법 단계들이 머신에 의해 판독가능한 프로그램 저장 디바이스에 수록된 명령 프로그램에 응답하여 상기 머신에 의해 실행되는 것을 특징으로 하는 포토리소그래피 마스크.
KR1020007002869A 1997-09-17 1998-09-17 마스크 묘사 시스템에서 데이터 계층 유지보수를 위한방법 및 장치 KR20010024113A (ko)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
US5930697P 1997-09-17 1997-09-17
US60/059,306 1997-09-17
US08/931,921 US5858580A (en) 1997-09-17 1997-09-17 Phase shifting circuit manufacture method and apparatus
US08/931,921 1997-09-17
US6954997P 1997-12-12 1997-12-12
US60/069,549 1997-12-12
US09/130,996 1998-08-07
US09/130,996 US6757645B2 (en) 1997-09-17 1998-08-07 Visual inspection and verification system
US09/153,783 US6470489B1 (en) 1997-09-17 1998-09-16 Design rule checking system and method
US09/153,783 1998-09-16
US09/154,397 1998-09-16
US09/154,397 US6453452B1 (en) 1997-12-12 1998-09-16 Method and apparatus for data hierarchy maintenance in a system for mask description
PCT/US1998/019438 WO1999014636A1 (en) 1997-09-17 1998-09-17 Method and apparatus for data hierarchy maintenance in a system for mask description

Publications (1)

Publication Number Publication Date
KR20010024113A true KR20010024113A (ko) 2001-03-26

Family

ID=27556793

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020007002869A KR20010024113A (ko) 1997-09-17 1998-09-17 마스크 묘사 시스템에서 데이터 계층 유지보수를 위한방법 및 장치
KR1020007002873A KR20010024117A (ko) 1997-09-17 1998-09-17 디자인 룰 체킹 시스템 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020007002873A KR20010024117A (ko) 1997-09-17 1998-09-17 디자인 룰 체킹 시스템 및 방법

Country Status (5)

Country Link
EP (2) EP1023639A4 (ko)
JP (2) JP4624550B2 (ko)
KR (2) KR20010024113A (ko)
AU (3) AU9396098A (ko)
WO (1) WO1999014638A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100508360B1 (ko) * 2001-05-31 2005-08-17 가부시끼가이샤 도시바 노광 마스크의 제조 방법, 마스크 기판 정보 생성 방법,반도체 장치의 제조 방법, 마스크 기판, 노광 마스크 및서버

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453452B1 (en) 1997-12-12 2002-09-17 Numerical Technologies, Inc. Method and apparatus for data hierarchy maintenance in a system for mask description
US7412676B2 (en) 2000-06-13 2008-08-12 Nicolas B Cobb Integrated OPC verification tool
JP2004503879A (ja) * 2000-06-13 2004-02-05 メンター グラフィックス コーポレイション 集積化検証および製造適応ツール
US6425113B1 (en) 2000-06-13 2002-07-23 Leigh C. Anderson Integrated verification and manufacturability tool
US6978436B2 (en) 2000-07-05 2005-12-20 Synopsys, Inc. Design data format and hierarchy management for phase processing
US6430737B1 (en) 2000-07-10 2002-08-06 Mentor Graphics Corp. Convergence technique for model-based optical and process correction
JP2002122977A (ja) * 2000-10-17 2002-04-26 Sony Corp フォトマスクの作成法、フォトマスク、並びに露光方法
KR100649969B1 (ko) * 2000-12-26 2006-11-27 주식회사 하이닉스반도체 마스크 제작방법
US6395438B1 (en) 2001-01-08 2002-05-28 International Business Machines Corporation Method of etch bias proximity correction
US6505327B2 (en) 2001-04-13 2003-01-07 Numerical Technologies, Inc. Generating an instance-based representation of a design hierarchy
US6560766B2 (en) 2001-07-26 2003-05-06 Numerical Technologies, Inc. Method and apparatus for analyzing a layout using an instance-based representation
US6721928B2 (en) 2001-07-26 2004-04-13 Numerical Technologies, Inc. Verification utilizing instance-based hierarchy management
US6738958B2 (en) 2001-09-10 2004-05-18 Numerical Technologies, Inc. Modifying a hierarchical representation of a circuit to process composite gates
US6735752B2 (en) 2001-09-10 2004-05-11 Numerical Technologies, Inc. Modifying a hierarchical representation of a circuit to process features created by interactions between cells
US6880135B2 (en) 2001-11-07 2005-04-12 Synopsys, Inc. Method of incorporating lens aberration information into various process flows
US7085698B2 (en) 2001-12-18 2006-08-01 Synopsys, Inc. Method for providing flexible and dynamic reporting capability using simulation tools
US7159197B2 (en) 2001-12-31 2007-01-02 Synopsys, Inc. Shape-based geometry engine to perform smoothing and other layout beautification operations
JP4138318B2 (ja) * 2002-01-08 2008-08-27 株式会社ルネサステクノロジ リソグラフィプロセスマージン評価装置、リソグラフィプロセスマージン評価方法およびリソグラフィプロセスマージン評価プログラム
US7293249B2 (en) 2002-01-31 2007-11-06 Juan Andres Torres Robles Contrast based resolution enhancement for photolithographic processing
US7386433B2 (en) 2002-03-15 2008-06-10 Synopsys, Inc. Using a suggested solution to speed up a process for simulating and correcting an integrated circuit layout
US6944844B2 (en) 2002-04-03 2005-09-13 Synopsys, Inc. System and method to determine impact of line end shortening
US6931613B2 (en) 2002-06-24 2005-08-16 Thomas H. Kauth Hierarchical feature extraction for electrical interaction calculations
US6687895B2 (en) 2002-07-03 2004-02-03 Numerical Technologies Inc. Method and apparatus for reducing optical proximity correction output file size
US7069534B2 (en) 2003-12-17 2006-06-27 Sahouria Emile Y Mask creation with hierarchy management using cover cells
US7861207B2 (en) 2004-02-25 2010-12-28 Mentor Graphics Corporation Fragmentation point and simulation site adjustment for resolution enhancement techniques
US7448012B1 (en) 2004-04-21 2008-11-04 Qi-De Qian Methods and system for improving integrated circuit layout
EP1747520B1 (en) 2004-05-07 2018-10-24 Mentor Graphics Corporation Integrated circuit layout design methodology with process variation bands
US7240305B2 (en) 2004-06-02 2007-07-03 Lippincott George P OPC conflict identification and edge priority system
JP4266189B2 (ja) 2004-07-09 2009-05-20 株式会社東芝 半導体集積回路パターンの検証方法、フォトマスクの作成方法、半導体集積回路装置の製造方法、及び半導体集積回路パターンの検証方法を実現するためのプログラム
JP4904034B2 (ja) * 2004-09-14 2012-03-28 ケーエルエー−テンカー コーポレイション レチクル・レイアウト・データを評価するための方法、システム及び搬送媒体
US7617473B2 (en) * 2005-01-21 2009-11-10 International Business Machines Corporation Differential alternating phase shift mask optimization
US7506285B2 (en) 2006-02-17 2009-03-17 Mohamed Al-Imam Multi-dimensional analysis for predicting RET model accuracy
US7739650B2 (en) 2007-02-09 2010-06-15 Juan Andres Torres Robles Pre-bias optical proximity correction
US8230371B2 (en) 2007-05-23 2012-07-24 Nxp B.V. Process-window aware detection and correction of lithographic printing issues at mask level
US7805699B2 (en) 2007-10-11 2010-09-28 Mentor Graphics Corporation Shape-based photolithographic model calibration
JP5100405B2 (ja) 2008-01-16 2012-12-19 株式会社東芝 データベースの作成方法およびデータベース装置
US7975244B2 (en) 2008-01-24 2011-07-05 International Business Machines Corporation Methodology and system for determining numerical errors in pixel-based imaging simulation in designing lithographic masks
US10008422B2 (en) * 2015-08-17 2018-06-26 Qoniac Gmbh Method for assessing the usability of an exposed and developed semiconductor wafer

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0608657A1 (en) * 1993-01-29 1994-08-03 International Business Machines Corporation Apparatus and method for preparing shape data for proximity correction
GB2291219B (en) * 1994-07-05 1998-07-01 Nec Corp Photo-mask fabrication and use
JPH08297692A (ja) * 1994-09-16 1996-11-12 Mitsubishi Electric Corp 光近接補正装置及び方法並びにパタン形成方法
US5682323A (en) * 1995-03-06 1997-10-28 Lsi Logic Corporation System and method for performing optical proximity correction on macrocell libraries
JP3409493B2 (ja) * 1995-03-13 2003-05-26 ソニー株式会社 マスクパターンの補正方法および補正装置
US5553273A (en) * 1995-04-17 1996-09-03 International Business Machines Corporation Vertex minimization in a smart optical proximity correction system
JP2917879B2 (ja) * 1995-10-31 1999-07-12 日本電気株式会社 フォトマスク及びその製造方法
US5705301A (en) * 1996-02-27 1998-01-06 Lsi Logic Corporation Performing optical proximity correction with the aid of design rule checkers
US5801954A (en) * 1996-04-24 1998-09-01 Micron Technology, Inc. Process for designing and checking a mask layout
US5707765A (en) * 1996-05-28 1998-01-13 Microunity Systems Engineering, Inc. Photolithography mask using serifs and method thereof
DE19818440C2 (de) * 1998-04-24 2002-10-24 Pdf Solutions Gmbh Verfahren zur Erzeugung von Daten für die Herstellung einer durch Entwurfsdaten definierten Struktur

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100508360B1 (ko) * 2001-05-31 2005-08-17 가부시끼가이샤 도시바 노광 마스크의 제조 방법, 마스크 기판 정보 생성 방법,반도체 장치의 제조 방법, 마스크 기판, 노광 마스크 및서버

Also Published As

Publication number Publication date
JP4624550B2 (ja) 2011-02-02
EP1023641A1 (en) 2000-08-02
AU9775198A (en) 1999-04-05
EP1023641A4 (en) 2009-04-22
KR20010024117A (ko) 2001-03-26
JP2003526110A (ja) 2003-09-02
WO1999014638A1 (en) 1999-03-25
JP2003523545A (ja) 2003-08-05
AU9396098A (en) 1999-04-05
EP1023639A4 (en) 2009-04-29
AU9396198A (en) 1999-04-05
EP1023639A1 (en) 2000-08-02

Similar Documents

Publication Publication Date Title
US6453452B1 (en) Method and apparatus for data hierarchy maintenance in a system for mask description
US6370679B1 (en) Data hierarchy layout correction and verification method and apparatus
KR20010024113A (ko) 마스크 묘사 시스템에서 데이터 계층 유지보수를 위한방법 및 장치
EP1023640B1 (en) Data hierarchy layout correction and verification method and apparatus
US6470489B1 (en) Design rule checking system and method
WO1999014636A1 (en) Method and apparatus for data hierarchy maintenance in a system for mask description
JP3934719B2 (ja) 光近接効果補正方法
US6416907B1 (en) Method for designing photolithographic reticle layout, reticle, and photolithographic process
US5682323A (en) System and method for performing optical proximity correction on macrocell libraries
EP1431820B1 (en) Method and system for classifying an integrated circuit for optical proximity correction
US7401319B2 (en) Method and system for reticle-wide hierarchy management for representational and computational reuse in integrated circuit layout design
US7650587B2 (en) Local coloring for hierarchical OPC
US20020144230A1 (en) System and method for correcting design rule violations in a mask layout file
US6782524B2 (en) Photomask and integrated circuit manufactured by automatically correcting design rule violations in a mask layout file
US20050022151A1 (en) Photomask and integrated circuit manufactured by automatically eliminating design rule violations during construction of a mask layout block
JP4510118B2 (ja) 光近接効果補正方法と装置、光近接効果検証方法と装置、露光用マスクの製造方法、更に光近接効果補正プログラムと光近接効果検証プログラム
US20050005256A1 (en) Photomask and integrated circuit manufactured by automatically correcting design rule violations in a mask layout file
US6898780B2 (en) Method and system for constructing a hierarchy-driven chip covering for optical proximity correction
KR102379425B1 (ko) 스태거드 게이트-스터브-사이즈 프로파일을 갖는 반도체 디바이스 및 그 제조 방법
JP3592098B2 (ja) マスクパターン作成方法および装置
JP4074329B2 (ja) 光近接効果補正方法
JP3592105B2 (ja) マスクパターン作成方法および装置
JP2007279758A (ja) 光近接効果補正方法
JP2006039594A (ja) 光近接効果補正方法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid