KR102401892B1 - 에지 공차 및 불완전한 사양을 고려한 drc-기반 핫스폿 검출 - Google Patents

에지 공차 및 불완전한 사양을 고려한 drc-기반 핫스폿 검출 Download PDF

Info

Publication number
KR102401892B1
KR102401892B1 KR1020177014641A KR20177014641A KR102401892B1 KR 102401892 B1 KR102401892 B1 KR 102401892B1 KR 1020177014641 A KR1020177014641 A KR 1020177014641A KR 20177014641 A KR20177014641 A KR 20177014641A KR 102401892 B1 KR102401892 B1 KR 102401892B1
Authority
KR
South Korea
Prior art keywords
pattern
critical design
rule
hotspot
topologies
Prior art date
Application number
KR1020177014641A
Other languages
English (en)
Other versions
KR20170078775A (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 KR20170078775A publication Critical patent/KR20170078775A/ko
Application granted granted Critical
Publication of KR102401892B1 publication Critical patent/KR102401892B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/02Manufacture or treatment of semiconductor devices or of parts thereof
    • H01L21/027Making masks on semiconductor bodies for further photolithographic processing not provided for in group H01L21/18 or H01L21/34
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/18Manufacturability analysis or optimisation for manufacturability

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Manufacturing & Machinery (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Preparing Plates And Mask In Photomechanical Process (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

파운드리-제공된 핫스폿 패턴들에서의 에지 공차들 및 불완전한 사양 ("돈 케어") 영역들을 고려하는 범위-패턴-정합-타입 DRC-기반 프로세스 핫스폿 검출이 제공된다. 첫째, 모든 가능한 위상기하학적 패턴들은 파운드리-제공된 핫스폿 패턴에 대하여 열거된다. 다음으로, 임계적 위상기하학적 특징부들이 각각의 패턴 위상기하구조로부터 추출되고, 수정된 전이 폐쇄 그래프 (MTCG) 들을 이용하여 임계적 설계 규칙들로 변환된다. 셋째, 추출된 임계적 설계 규칙들은 검색 공간 감소 기법들을 가능하게 하는 순서로 배열되고, 그 다음으로, DRC 프로세싱은 제 1 그룹에서의 각각의 임계적 설계 규칙에 대한 사용자의 전체 레이아웃 패턴에 대해 순차적으로 반복되고, 그 다음으로, 검색 공간 감소는 감소된 레이아웃 패턴을 생성하기 위하여 수행되고, 그 다음으로, DRC 프로세싱은 감소된 레이아웃 패턴을 이용하여 모든 나머지 임계적 설계 규칙들에 대하여 수행된다. 그 다음으로, 후보 로케이션들은 DRC 결과들을 이용하여 식별되고, 그 다음으로, 진정한 핫스폿 로케이션들은 가장 긴 공통 서브시퀀스 및 선형 스캔 기법들을 이용하여 확인된다.

Description

에지 공차 및 불완전한 사양을 고려한 DRC-기반 핫스폿 검출{DRC-BASED HOTSPOT DETECTION CONSIDERING EDGE TOLERANCE AND INCOMPLETE SPECIFICATION}
관련된 출원
이 출원은 2014 년 10 월 30 일자로 출원되었고 본원에 참조로 편입되는 미국 특허 출원 제 14/528,213 호에 대한 우선권을 주장한다.
개시물은 핫스폿 검출, 특히, 에지 공차 (edge tolerance) 들 및 불완전한 사양들 (즉, 돈 케어 (don't care) 영역들) 을 가지는 핫스폿 패턴들을 위한 정확한 프로세스 핫스폿 검출 방법에 관한 것이다.
집적 회로 (integrated circuit; IC) 를 설계할 시에, 엔지니어들은 어떤 기능을 수행하기 위하여 함께 결합된 개별적인 디바이스들로 구성되는 회로 개략도 설계를 생성하는 것을 돕기 위한 컴퓨터 시뮬레이션 툴들에 전형적으로 의존한다. 이 회로를 반도체 기판에서 실제적으로 제조하기 위하여, 회로는 일련의 레이아웃 패턴들 (즉, 물리적 회로를 형성하기 위하여 필요한 다양한 층들의 물리적 특징부 (physical feature) 들을 표현하는 2 차원 패턴들) 로 변환되고, 레이아웃 패턴들은 일련의 마스크들 (레티클 (reticle) 들; 레이아웃 패턴들이 광-차단 재료의 형태로 그 위에 복제되는 깨끗한 기판들로서 또한 알려짐) 을 형성하기 위하여 이용되고, 그 다음으로, 마스크들은 실리콘 표면에서, 그리고 실리콘 표면 상에서 대응하는 구조들을 형성하기 위하여 제조 프로세스 흐름에서 이용된다. 또한, 컴퓨터 보조 설계 (computer aided design; CAD) 툴들은 개별 회로 엘리먼트들을, 레이아웃 패턴을 집합적으로 형성하고, 게이트 전극들, 필드 산화 영역들, 확산 영역들, 금속 상호연결부들 등등과 같은 IC 의 개별적인 컴포넌트들을 구체화하는 다각형들로 변환하는 태스크에서 레이아웃 설계자들을 보조한다.
일단 회로의 레이아웃이 생성되었으면, IC 를 제조하기 위한 다음 단계는 레이아웃을 반도체 기판 상으로 전사 (transfer) 하는 것이다. 이것을 행하기 위한 하나의 방법은, 레이아웃이 실리콘 웨이퍼 상으로 레이아웃을 광학적으로 투영하기 위하여 궁극적으로 이용되는 물리적 템플릿 (physical template) 상으로 먼저 전사되는 광학적 리소그래피 (optical lithography) 의 프로세스를 이용하는 것이다.
레이아웃을 물리적 템플릿에 전사할 시에, 마스크 (예컨대, 크롬 (chrome) 으로 코팅된 석영 판 (quartz plate)) 는 집적 회로 설계의 각각의 층에 대하여 일반적으로 생성된다. 이것은 각각의 프로세스 층에 대한 레이아웃 패턴을 표현하는 데이터를, IC 레이아웃 패턴을 마스크 재료 내로 기입하는 전자 빔 머신과 같은 디바이스 내로 입력함으로써 행해진다. 덜 복잡하고 밀집된 집적 회로들에서, 각각의 마스크는 그 대응하는 층에 대한 희망하는 회로 패턴을 표현하는 기하학적 형상들 (다각형들) 을 포함한다. 회로 특징부들의 크기가 리소그래피 프로세스의 광학적 한계들에 접근하는 더욱 복잡하고 밀집된 회로들에서는, 마스크들이 근접성 효과들을 보상하도록 설계되는 세리프 (serif) 들, 해머헤드 (hammerhead) 들, 바이어스 및 보조 바 (bar) 들과 같은 광학적 근접성 정정 특징부들을 또한 포함할 수도 있다. 다른 진보된 회로 설계들에서, 위상 시프팅 마스크 (phase shifting mask) 들은 광학적 리소그래피 프로세스의 콘트라스트 (contrast) 를 증대시킴으로써 프로세스의 어떤 기본적인 광학적 제한들을 피하기 위하여 이용될 수도 있다.
그 다음으로, 이 마스크들은 레이아웃 패턴들을 포토레지스트 재료 (photoresist material) 로 코팅된 실리콘 상으로 광학적으로 투영하기 위하여 이용된다. 설계의 각각의 층에 대하여, 광은 가시 광원 또는 자외선 광원을 통해 층에 대응하는 마스크 상에서 비추어진다. 이 광은 그 이미지가 기저부 포토레지스트 층을 노출시키는 마스크의 깨끗한 영역들을 통과하고, 마스크의 불투명한 영역들에 의해 차단되어, 노출되지 않은 포토레지스트 층의 그 기저부 부분을 남긴다. 그 다음으로, 노출된 포토레지스트 층은 전형적으로, 포토레지스트 층의 노출된/비-노출된 영역들의 화학적 제거를 통해 현상된다. 최종 결과는 그 층의 기하구조 (geometry) 들, 특징부들, 라인들, 및 형상들을 정의하는 희망하는 패턴을 나타내는 포토레지스트 층으로 코팅된 반도체 웨이퍼이다. 그 다음으로, 이 프로세스는 설계의 각각의 층에 대하여 반복된다.
광학적 근접성 정정 (optical proximity correction; OPC) 은 웨이퍼 패턴의 인쇄가능성을 개선시키기 위하여 체계적인 변경들을 레이아웃의 기하구조들에 적용한다. 구체적으로, 집적 회로 특징부들의 크기가 0.18 μ 이하로 떨어질 때, 특징부들은 이러한 특징부들을 생성하기 위하여 이용된 광의 파장보다 더 작아질 수 있음으로써, 특징부들을 웨이퍼 상으로 인쇄할 때에 리소그래픽 왜곡 (lithographic distortion) 들을 생성할 수 있다. 이 리소그래픽 왜곡들은 디바이스 성능에 대한 중요한 영향들을 표현할 수 있다. 규칙-기반 OPC 는 레이아웃 패턴들에 대한 어떤 변경들을 구현하기 위한 규칙들을 포함할 수 있음으로써, 일부 리소그래픽 왜곡들을 보상할 수 있다. 예를 들어, 라인-단부 단축을 보상하기 위하여, 규칙-기반 OPC 는 해머헤드를 라인 단부에 추가할 수도 있다. 코너 라운딩 (corner rounding) 을 보상하기 위하여, 규칙-기반 OPC 는 외부 (또는 내부) 코너들로부터 세리프 형상들을 추가 (또는 공제 (subtract)) 할 수 있다. 이 변경들은 원래의 의도된 레이아웃에 더 근접한 웨이퍼 상의 특징부들을 형성할 수 있다. 불운하게도, 더욱 복잡한 리소그래피 효과들은 간단한 기하학적 규칙들에 의해 효율적으로 설명될 수 없다.
최신 제조 프로세스들에서, 어떤 레이아웃 구성들은 응력, 리소그래픽 프로세스 변동들 등에 민감하다. 총 수율들을 개선시키기 위하여 그것들을 제조-친화적 구성들로 대체하는 것이 필요하다. 이 문제 있는 레이아웃 구성들은 프로세스-핫스폿 (process-hotspot) 들로서 지칭된다. 유사한 레이아웃들을 갖는 패턴들은 상이한 해상도 증대 기술 (resolution enhancement technology; RET) 제약들로 인해 프로세스-핫스폿들로 될 수 있다. 이 패턴들은 어떤 대면하는 에지들의 간격들에 관하여 단지 상이할 수 있다. 여러 정확한 패턴들을 이용하여 가능한 변동들을 표현하는 대신에, 에지 공차 (edge tolerace) 들 및 불완전한 특정된 영역들을 갖는 대표적인 패턴에 의해 이 유사한 패턴들을 표현하는 것이 더욱 간결하다. 에지 공차는 다각형의 2 개의 대향하는 에지들 사이, 또는 2 개의 상이한 다각형들로부터의 허용가능한 거리 변동들을 설명하는 반면, 불완전하게 특정된 영역은 핫스폿 패턴에서의 돈 케어 영역 (don't care region) 을 의미한다. 에지 공차들 및 불완전한 특정된 영역들을 갖는 핫스폿 패턴은 진정한 프로세스-핫스폿을 정확하게 그리고 일반적으로 표현할 수 있다. 돈 케어 영역들을 이용하여 핫스폿 패턴들을 설명하는 것은 레이아웃에서 더 많은 핫스폿들을 포착 (capture) 하는 것을 가능하게 한다. 다각형들의 임의의 구성은 패턴이 프로세스-핫스폿인지 또는 그렇지 않은지에 대한 사실을 변경하지 않으면서, 돈 케어 영역에서 존재할 수 있다.
최근, 대규모 연구 노력들은 패턴 정합으로서 알려진 바와 같은, 프로세스-핫스폿 검출에 헌신되었다. 이 접근법들은 3 개의 카테고리들로 분류될 수 있다: 정확한 패턴 정합, 퍼지 패턴 정합 (fuzzy pattern matching), 및 범위 패턴 정합.
정확한 패턴 정합은 주어진 핫스폿 패턴과 정확하게 동일한 치수들을 갖는 레이아웃에서 오직 핫스폿들을 추출한다. "Accurate process-hotspot detection using critical design rule extraction (임계적 설계 규칙 추출을 이용한 정확한 프로세스-핫스폿 검출)", Y.-T. Yu 등, Proc. DAC, pp. 1167 - 1172, 2012 에서, Yu 등은 주어진 정확한 패턴을 표현하고 이 패턴으로부터의 오직 임계적 규칙들로 설계 규칙 검사 (design rule checking; DRC) 를 수행하기 위하여 수정된 전이 폐쇄 그래프 (modified transitive closure graph; MTCG) 들을 고안한다. 그러나, 그들은 주어진 핫스폿 패턴에서 에지 공차들 및 불완전하게 특정된 영역들을 처리할 수 없다.
퍼지 패턴 정합은 알려진 핫스폿들에 기초하여 보이지 않는 핫스폿 패턴들을 탐색한다. 검출된 핫스폿들과 주어진 핫스폿들 사이의 위상기하구조 (topology) 들은 거대한 차이들을 가질 수도 있다. Kahng 등은 A.B. Kahng 등에 의한 "Fast dual graph based hotspot detection (핫스폿 검출에 기초한 고속 이중 그래프)", Proc. SPIE, vol. 6349, pp. 628-635, 2006 에서 퍼지 패턴 정합에 관한 선구자적 작업을 제시한다. Kahng 등은 주어진 레이아웃을 표현하고 그 다음으로, 사용자-특정된 문턱 값 (threshold value) 에 따라 과다-가중화된 (over-weighted) 에지들 및 면들을 필터링하기 위하여 이중 그래프를 생성한다. 더 이후에, "Machine learning based lithographic hotspot detection with critical feature extraction and classification (임계적 특징부 추출 및 분류에 의한 머신 학습 기반 리소그래픽 핫스폿 검출)", Proc. ICICDT, pp. 219-222, 2009 에서의 Ding 등, "High performance lithographic hotspot detection using hierarchically refined machine learning (계층적으로 세분화된 머신 학습을 이용한 고성능 리소그래픽 핫스폿 검출)", Proc. ASP-DAC, pp. 775-780, 2011 에서의 Ding 등, "Rapid layout pattern classification (급속 레이아웃 패턴 분류)", Proc. ASP-DAC, pp. 781-786, 2011 에서의 Wuu 등, 및 "Machine-learning-based hotspot detection using topological classification and critical feature extraction (위상기하학적 분류 및 임계적 특징부 추출을 이용한 머신-학습-기반 핫스폿 검출)", Proc. DAC, 67, 2013 에서의 Yu 등은 인공적인 신경 네트워크들 또는 지원 벡터 머신들에 기초한 변종 머신 학습 프레임워크들을 제안한다. 그들은 그 학습 머신들을 훈련시키기 위하여 핫스폿 특징부들을 추출한다. 그러나, 이 접근법은 긴 훈련 시간 및/또는 오류 경보들을 겪을 수도 있다. 게다가, 식별된 핫스폿들의 일부는 과다-추정 (over-estimate) 된다.
범위 패턴 정합은 주어진 패턴과 동일하거나 유사한 위상기하구조들을 갖는 핫스폿들에 초점을 맞춘다. 미국 특허 출원 공개 제 2010/0185933 A1 호, 2010 년 7 월 13 일자에서는, Pikus 및 Collins 가 주어진 패턴 내부의 다각형 에지들 및 인접한 다각형들 사이의 거리들의 모든 관련성들을 위상기하학적 특징부들로서 추출한다. 그 다음으로, 그들은 DRC 결과들에 기초하여 핫스폿들을 식별하기 위하여 그래프 검색 메커니즘을 적용한다. 이 접근법은 너무 많은 중복적인 규칙들을 추출할 수도 있어서, 이에 따라, 그 정합 시간을 증가시킬 수도 있다. 미국 특허 제 7,818,707 호 (Gennari 등) 는 DRC-기반 핫스폿 검출을 개선시키기 위한 2 차원 이미지-기반 DRC 및 해싱 (hashing) 을 설명한다. 그들은 레이아웃에서의 각각의 에지 또는 코너 주위의 로케이션 및 레이아웃 구성을 저장하기 위하여 해시 테이블을 이용한다. 그들은 패턴과 레이아웃 사이의 정합 인자들을 컴퓨팅함으로써 핫스폿들을 결정한다. 세련되게 설계된 해시 함수는 해시 충돌을 방지하도록 요구된다.
그러나, 현존하는 범위 패턴 정합 방법들은 에지 공차들 및 불완전하게 특정된 (돈 케어) 영역들을 가지는 파운드리-제공된 (foundry-provided) 핫스폿 패턴들에 의해 유도된 변조 위상기하구조들을 처리하기 위하여 용이하게 확장될 수 없다. "Efficient process-hotspot detection using range pattern matching (범위 패턴 정합을 이용한 효율적인 프로세스-핫스폿 검출)", Proc. ICCAD, pp. 625-632, 2006 및 "Accurate detection for process-hotspots with vias and incomplete specification (비아들 및 불완전한 사양을 갖는 프로세스-핫스폿들을 위한 정밀한 검출)", Proc. ICCAD, pp. 839-846, 2007 에서는, Yao 등 및 Xu 등이 돈 케어 영역들로 범위 패턴 정합을 처리하기 위한 최신 작업을 각각 제안한다. 그들은 레이아웃 내의 모든 가능한 윈도우 (window) 들을 조사하기 위하여 윈도우-슬라이딩 (window-sliding) 을 이용한다. 각각의 패턴 및 레이아웃 윈도우는 스트링 (string) 들에 의해 인코딩된다. 그 다음으로, 스트링 정합은 핫스폿들을 식별하기 위하여 적용된다. 스트링-정합-기반 방법의 하나의 내재된 약점은 패턴의 인코딩된 스트링들이 핫스폿들의 모든 가능한 레이아웃 구성들을 커버할 수 없다는 것이다. 불완전한 사양에 대하여, "돈 케어" 영역 내의 모든 패턴 구성들을 열거하는 것은 어렵다. 이 때문에, 스트링-정합-기반 방법은 각각의 돈 케어 영역, 하나의 비어 있는 공간 또는 하나의 다각형 중의 어느 하나에 대하여 오직 2 개의 경우들을 고려한다.
그러므로, 기존의 접근법들의 결점들을 극복하는 상업적으로-실행가능한 프로세스 핫스폿 검출 기법에 대한 필요성이 발생한다. 더욱 구체적으로, 필요한 것은 하나 이상의 에지 공차들 및/또는 하나 이상의 불완전하게 특정된 영역들을 포함하는 파운드리-제공된 핫스폿 패턴을 위반하는 레이아웃 패턴에서의 실제적인 프로세스 핫스폿들을 효율적으로 그리고 정확하게 검출할 수 있는 핫스폿 검출 기법이다.
본 발명은 에지 공차들 및/또는 불완전하게 특정된 영역들을 포함하는 파운드리-제공된 핫스폿 패턴에 의해 정의된 대응하는 대안적인 블록 배열들을 가지는 모든 가능한 패턴 위상기하구조들을 열거 (식별/생성) 함으로써, 패턴 위상기하구조들의 각각으로부터 적어도 하나의 임계적 지형학적 특징부 (topographical feature) 들을 추출하고 추출된 특징부들을, 검색 공간 감소 기법들을 가능하게 하는 방식으로 임계적 설계 규칙들을 배열하는 (순서화하는) 임계적 설계 규칙들로 변환함으로써, 그리고 그 다음으로, 프로세싱 시간을 최소화하기 위한 검색 공간 감소 기법들을 이용하여 2 개 이상의 국면 (phase) 들에서 DRC 를 수행함으로써, 레이아웃 패턴에서 실제적인 프로세스 핫스폿들을 효율적으로 그리고 정확하게 검출하는 DRC-기반 프로세스-핫스폿 검출 방법론에 관한 것이다. 모든 가능한 패턴 위상기하구조들을 열거하는 것은 레이아웃 패턴에서의 모든 실제적인 핫스폿 영역들의 정확한 식별을 제공하지만, 요구된 DRC 반복들의 수를 증가시킨다. DRC 프로세스의 속력을 올리기 위하여, 모든 가능한 패턴 위상기하구조들을 집합적으로 표현하는 임계적 설계 규칙들의 제 1 그룹이 식별되고 (즉, 각각의 열거된 패턴 위상기하구조로부터의 적어도 하나의 추출된 규칙은 제 1 그룹 내에 포함됨), 제 1 국면 DRC 프로세싱은 제 1 그룹의 각각의 임계적 설계 규칙을 이용하여 전체 초기 레이아웃 패턴에 대해 수행된다. 추후에, 검색 공간 감소 기법들은 가능한 핫스폿 영역들을 포함하는 것으로서, 제 1 국면 DRC 프로세싱 동안에 식별되는 영역들을 오직 포함하는 감소된 레이아웃 패턴을 생성하기 위하여 사용된다. 그 다음으로, 제 2 국면 DRC 프로세싱은 모든 나머지 임계적 규칙들을 이용하여, 그러나, 오직 감소된 레이아웃 패턴에 대해 수행된다. (핫스폿 검출 정확도를 증가시키는) 패턴 열거를 규칙 순서화 및 (DRC 프로세싱 시간을 최소화하는) 2-국면 DRC 프로세싱과 조합함으로써, 본 발명은 레이아웃 패턴에서 실제적인 프로세스 핫스폿들을 효율적으로 그리고 정확하게 검출하는 DRC-기반 프로세스-핫스폿 검출 방법론을 제공한다. 일단 DRC 가 완료되면, 방법론은 DRC 결과들로부터 후보 핫스폿 영역들을 식별하는 것과, 그 다음으로, 하나의 실시형태에서, 효율 및 정확도를 증가시키기 위하여 가장 긴 공통 서브시퀀스 (subsequence) 및 선형 스캔 (linear scan) 을 이용하는 것을 수반하는, 실제적인 (진정한) 핫스폿 영역들의 식별을 완결하는 것을 더 포함한다. 실험 결과들에 기초하여, 상기 방법들은 기존의 접근법들에 비해 100 % 성공 레이트들 및 1.53x 속력 상승들을 달성하였다. 그 다음으로, 실제적인 핫스폿 영역들은 (예컨대, OPC 기법들을 이용하여) 초기 레이아웃 패턴을 수정하기 위하여 사용되고, 수정된 레이아웃 패턴들은 물리적 마스크들을 생성하기 위하여 사용되고, 그 다음으로, 마스크들은 수정된 레이아웃 패턴들에 의해 정의된 집적 회로를 제조하기 위하여 반도체 제조 프로세스에서 사용된다. 그러므로, 본 발명은 IC 회로 개략도를 제조된 IC 디바이스로 변환하기 위하여 필요한 시간의 양을 상당히 감소시킴으로써, 그리고 핫스폿 영역들을 효율적으로 그리고 정확하게 식별하는 것을 통해 더 높은 제조 수율들을 가능하게 함으로써, IC 제조 비용들을 감소시킨다.
실시형태에 따르면, 패턴 위상기하구조들을 열거하는 것은 다각형들 (즉, 블록 타일 (block tile) 들 및 공간 타일 (space tile) 들) 을 형성하기 위하여 핫스폿 패턴의 다양한 구조들을 슬라이싱하는 것, 에지 공차에 의해 정의된 각각의 에지 쌍에 대한 패턴 세트들을 생성하는 것, 각각의 패턴 세트를 패턴 서브세트들로 변환하는 것, 및 각각의 패턴 서브세트에 대한 대응하는 패턴 위상기하구조를 생성하는 것을 포함한다. 바람직한 실시형태에서, 에지 공차에 의해 영향받는 핫스폿 패턴 구조들을 슬라이싱하는 것은 올바르지 않은 위상기하구조들을 생성하는 것을 회피하기 위하여 영향받은 에지를 바인딩하는 것을 포함한다. 또 다른 실시형태에서, 하나 이상의 에지 제약들에 의해 생성된 모든 가능한 패턴 위상기하구조들은 모든-쌍 최소-범위 경로 (All-Pair Min-Range Path; APMRP) 알고리즘을 이용하여 식별된다. 또 다른 실시형태에서, 특수한 "경계 타일 (boundary tile)" 은 2 개의 대면하는 블록 에지들에 의해 경계가 형성된 돈 케어 영역들을 포함하는 파운드리-제공된 핫스폿 패턴들에 대한 각각의 열거된 패턴 위상기하구조 내에 포함된다.
본 발명의 실시형태에 따르면, 임계적 설계 규칙들은 각각의 열거된 패턴 위상기하구조에서 타일들의 위치 관계들을 결정함으로써, 임계적 특징부들을 식별하기 위하여 추출 규칙들을 적용함으로써, 그리고 그 다음으로, 각각의 식별된 임계적 특징부에 대한 임계적 설계 규칙들을 생성함으로써 추출된다. 이 접근법은 최소 수의 설계 규칙들을 이용하여 DRC 프로세스 동안에 열거된 위상기하구조를 충족시키는 모든 후보 레이아웃 영역들을 정확하게 식별하는 것을 가능하게 하여, DRC 프로세싱 시간을 감소시킨다. 하나의 실시형태에서, 타일들 사이의 위치 관계들을 결정하는 것은 지향된 에지들 및/또는 규칙 직사각형들을 사용하는 것을 포함한다. 현재의 바람직한 실시형태에서, 다양한 블록과 공간 타일들 사이의 위치 관계들을 결정하는 것은 각각의 열거된 패턴 위상기하구조에 대한 복수의 수정된 전이 폐쇄 그래프 (MTCG) 들을 생성하는 것을 수반한다. 실제적인 실시형태에서, 임계적 특징부들을 선택하는 것은 6 개의 상이한 추출 규칙들 중의 적어도 하나를 각각의 패턴 위상기하구조에 적용하는 것을 수반하고, 여기서, 6 개의 추출 규칙들은 내부 (제 1) 규칙, 외부 규칙 (제 2) 규칙, 대각선 (제 3) 규칙, 롱에지 (longedge) (제 4) 규칙, 세그먼트 (제 5) 규칙, 및 경계 타일 (제 6) 규칙을 포함한다. 그 다음으로, 각각의 추출된 특징부는 크기 (높이 및 폭) 값들 및 패턴 윈도우 내에서의 위치 값들을 포함하는 규칙 직사각형들을 이용하여 임계적 설계 규칙으로 변환된다.
본 발명의 예시적인 실시형태에 따르면, 그 다음으로, 추출된 임계적 설계 규칙들은 미리 결정된 우선순위에 기초한 순차적인 DRC 프로세싱을 위한 제출을 위하여 순서화 (재배열) 된다. 하나의 실시형태에서, DRC 의 속력을 올리기 위하여 (즉, DRC 프로세싱 시간을 감소시키기 위하여), 동일한 크기/타입/위치를 가지는 규칙 직사각형들이 하나를 초과하는 패턴 위상기하구조에서 나타날 때, 단일 임계적 설계 규칙이 다수의 규칙 직사각형들에 배정된다 (즉, 하나의 "공유된" 설계 규칙이 다수의 패턴 위상기하구조들을 커버함). 제 1 순서 우선순위 전략에 따르면, 각각의 임계적 설계 규칙의 우선순위는 그 임계적 설계 규칙에 의해 표현된 패턴 위상기하구조들의 수에 기초한다 (즉, 7 개의 패턴 위상기하구조들을 커버하는 임계적 설계 규칙은 6 개의 패턴 위상기하구조들을 커버하는 임계적 설계 규칙보다 더 높은 우선순위를 부여받고, 즉, 그보다 먼저 DRC 툴에 의해 프로세싱됨). 대안적인 순서 우선순위 전략에 따르면, 우선순위는 임계적 설계 규칙들의 각각을 식별하기 위하여 사용된 추출 규칙에 기초하여 배정된다 (예컨대, 제 1 내지 제 3 추출 규칙들에 의해 생성된 임계적 설계 규칙들은 제 4 내지 제 6 규칙들에 의해 추출된 것들보다 더 높은 우선순위를 부여받음).
또 다른 실시형태에 따르면, 그 다음으로, DRC 는 최고 순위 임계적 설계 규칙과 함께 시작하는 전체 레이아웃 패턴에 대해 수행되고, 각각의 위상기하구조 패턴으로부터의 적어도 하나의 임계적 설계 규칙이 프로세싱되었을 때까지 각각의 추후의 순위화된 임계적 설계 규칙에 대하여 반복된다. 각각의 위상기하구조 패턴의 모든 8 개의 가능한 배향들을 커버하기 위하여, 각각의 임계적 설계 규칙이 서로로부터 90° 회전되는 2 개의 대표적인 배향들을 이용하여 설명되는 2 개의 실행세트 (runset) 파일들이 생성된다. 임계적 설계 규칙들의 제 1 그룹을 프로세싱한 후에 효율적인 감소된 레이아웃 패턴을 생성하기 위하여, 그 패턴 위상기하구조 윈도우 내의 각각의 규칙 직사각형의 다양한 배향들을 참작하는 확대된 패턴 윈도우들이 각각의 임계적 설계 규칙에 대하여 생성되고, 그 다음으로, 제 1 DRC 프로세싱 국면 후의 적어도 하나의 확대된 패턴 윈도우 내부에 포함되지 않는 모든 레이아웃 구조들이 초기 레이아웃 패턴으로부터 제거된다.
또 다른 실시형태에 따르면, DRC 결과들은 후보 핫스폿 영역들을 식별하고, 그 다음으로, 후보 핫스폿 영역들이 실제적인 핫스폿 영역들인 것을 검증하기 위하여 분석된다. 패턴 위상기하구조가 포착될 수 있고, 돈 케어 영역들의 영향은 오직 패턴 위상기하구조의 규칙 직사각형들을 2 개의 스트링들, 수직 방향에서의 하나 및 수평 방향에서의 다른 하나로 인코딩함으로써 무시될 수 있다. 이 스트링들은 패턴 위상기하구조 스트링들 중의 임의의 것과 정합하는 가장 긴 공통 서브시퀀스들에 대한 DRC 결과들을 검색하는 것을 통해 후보 핫스폿 영역들을 효율적으로 식별하기 위하여 사용된다. 그 다음으로, 제약 그래프 (constraint graph) 들을 이용하여 후보 핫스폿 영역들을 분석하고 돈 케어 영역들에서 위치된 모든 레이아웃 구조들을 제거함으로써 완결이 수행된다.
핫스폿 검출을 제공하기 위한 컴퓨터-실행가능 명령들을 저장하는 비-일시적, 컴퓨터-판독가능 매체가 또한 설명된다. 이 명령들은, 프로세서에 의해 실행될 때, 프로세서로 하여금 상기 설명된 프로세스를 실행하게 한다. 이 프로세스를 실행하도록 구성된 프로세서를 포함하는 시스템이 또한 설명된다. 시스템은 레이아웃에서의 검증된 실제적인 핫스폿들을 표시하는 정합된 로케이션들을 생성하기 위한 출력 디바이스를 더 포함할 수 있다.
도 1 은 본 발명의 핫스폿 검출 방법론을 포함하는 집적 회로 제조 프로세스를 예시하는 흐름도이고;
도 2 는 도 1 의 핫스폿 검출 방법론의 부분들을 추가적으로 상세하게 예시하는 흐름도이고;
도 3 은 본 발명의 실시형태에 따라 도 1 의 핫스폿 검출 방법론의 패턴 열거 프로세스를 예시하는 흐름도이고;
도 4(a), 도 4(b), 도 4(c), 및 도 4(d) 는 에지 공차들에 의해 영향받는 에지들을 따라 연관된 다각형들을 바인딩하는 중요성을 예시하고;
도 5a 는 에지 공차들을 갖는 예시적인 핫스폿 패턴을 도시하고;
도 5b, 도 5c, 및 도 5d 는 본 발명의 실시형태에 따라 도 5a 의 핫스폿 패턴에 의해 생성된 다양한 패턴 위상기하구조들을 예시하고;
도 6a 및 도 6b 는 2 개의 타입들의 돈 케어 영역들을 갖는 예시적인 핫스폿 패턴들을 도시하고;
도 6c 및 도 6d 는 본 발명의 실시형태에 따라 도 6b 의 핫스폿 패턴에 의해 생성된 2 개의 패턴 위상기하구조들을 예시하고;
도 7a, 도 7b, 도 7c, 및 도 7d 는 조합하여 핫스폿 패턴의 전체 표현으로 귀착되는 수평 타일링된 MTCG 들 및 수직 타일링된 MTCG 들이 어떻게 상이한 정보를 제공하는지를 예시하고;
도 8a 및 도 8b 는 제 1 추출 규칙을 예시하고;
도 9a 및 도 9b 는 제 2 추출 규칙을 예시하고;
도 10a, 도 10b, 도 10c, 도 10d, 도 10e, 도 10f, 도 10g, 및 도 10h 는 제 3 "대각선" 추출 규칙을 예시하고;
도 10i 는 양쪽 지향된 에지들 및 전이 에지들을 갖는 수평 타일링된 제약 그래프 Ch 를 예시하고;
도 11a, 도 11b, 도 11c, 및 도 11d 는 전형적인 문제 패턴들을 예시하고;
도 12a 및 도 12b 는 제 4 "롱에지" 추출 규칙을 예시하고;
도 13a 및 도 13b 는 제 5 "세그먼트" 추출 규칙을 예시하고;
도 14a, 도 14b, 도 14c, 및 도 14d 는 돈 케어 영역들을 처리하는 제 6 추출 규칙을 예시하고;
도 15a, 도 15b, 도 15c 는 예시적인 패턴 위상기하구조에 대한 규칙 직사각형의 생성을 예시하고;
도 16 은 다수의 에지 공차들을 포함하는 핫스폿 패턴을 도시하고;
도 17 은 도 16 의 핫스폿 패턴으로부터 생성된 27 개의 상이한 열거된 패턴 위상기하구조들을 도시하고;
도 18a 및 도 18b 는 또 다른 예시적인 핫스폿 패턴에 대한 제약 그래프들을 도시하고;
도 19a 및 도 19b 는 도 18a 및 도 18b 의 제약 그래프들에서 생성된 임계적 규칙들을 충족시키는 실제적인 핫스폿 영역들의 8 개의 가능한 배향들을 집합적으로 도시하고;
도 20 은 검색 공간 감소에서 사용된 임계적 설계 규칙에 대한 확대된 패턴 윈도우의 계산을 예시하고;
도 21 은 도 20 의 임계적 설계 규칙과 정합하는 레이아웃 구조를 포함하는 레이아웃 패턴의 부분을 예시하고;
도 22 는 도 20 을 참조하여 위에서 설명된 확대된 패턴 윈도우의 외부에 위치된 레이아웃 영역들을 제거한 후에 생성된 간략화된 감소된 레이아웃 패턴을 예시하고;
도 23 은 패턴 위상기하구조에 대한 다수의 규칙 직사각형들을 포함하는 제약 그래프를 예시하고;
도 24 는 도 23 의 제약 그래프에 의해 모델링된 패턴 위상기하구조의 그것들과 유사한 레이아웃 구조들을 포함하는 레이아웃 패턴 영역을 예시하고;
도 25a 및 도 25b 는 예시적인 패턴 위상기하구조와, 유사한 구조들을 포함하는 관련된 레이아웃 영역을 예시하고;
도 26a 및 도 26b 는 잠재적인 핫스폿들이 실제적인 핫스폿들인 것을 검증하기 위한 완결 프로세스 동안에 사용된 예시적인 제약 그래프들을 예시하고; 그리고
도 27 은 위에서 설명된 정확한 프로세스 핫스폿 검출 기법을 포함하는 예시적인 디지털 ASIC 설계 흐름의 간략화된 표현을 도시한다.
도 1 은 본 발명의 실시형태에 따라 정확하고 효율적인 DRC-기반 프로세스-핫스폿 검출을 가능하게 하는 핫스폿 검출 프레임워크 (100) 를 포함하는 집적 회로 제조 프로세스를 표시하는 간략화된 흐름도이다. 도 1 의 좌측을 참조하면, 프레임워크 (100) 는 파운드리-제공된 기초적인 설계 규칙들 (70), 적어도 하나의 파운드리 제공된 핫스폿 패턴 (80), 및 사용자의 초기 레이아웃 패턴 (90-1) (즉, 분석되어야 할 레이아웃 패턴) 을 입력으로서 수신한다. 프레임워크 (100) 는 핫스폿 패턴 (80) 에 대응하는 임계적 설계 규칙들을 생성하기 위하여 이하에서 설명된 바와 같이 기능하는, 패턴 열거 프로세스 (110), 임계적 설계 규칙 검사 (design rule checking; DRC) 규칙 추출 프로세스 (120), 및 규칙 순서화 및 검색 공간 감소 프로세스 (130) 를 일반적으로 포함한다. 이 임계적 설계 규칙들은 이하에서 제공된 세부사항들에 따라 DRC 프로세스를 수행하는 DRC 툴 (140) 에 공급된다. 그 다음으로, DRC 결과들은 레이아웃 패턴 (90) 에서 후보 (즉, 가능한) 핫스폿 영역들을 식별하기 위하여 분석되고 (블록 (150)), 그 다음으로, 레이아웃 패턴 (90-1) 에서 검출된 실제적인 핫스폿 영역들은 완결 프로세스 (블록 (160)) 동안에 식별된다. 프레임워크 (100) 는 초기 레이아웃 패턴 (90-1) 을 수정하기 위하여 적당한 레이아웃 정정 프로그램 (예컨대, 광학적 근접성 정정 (OPC) 툴, 블록 (170)) 에 의해 사용될 수 있는 검출된 실제적인 핫스폿 데이터 (블록 (165)) 를 출력함으로써, 수정된 (정정된) 레이아웃 패턴 (90-2) 을 생성한다. 블록 (180) 에서 표시된 바와 같이, 그 다음으로, 수정된 레이아웃 패턴 (90-2) 은 물리적 마스크 (185) 를 생성하기 위하여 사용되고, 그 다음으로, 마스크 (185) 는 수정된 레이아웃 패턴 (90-2) 에 의해 정의된 구조들을 포함하는 집적 회로 (195) 를 제조하기 위하여 반도체 제조 프로세스 (블록 (190)) 에서 사용된다.
본 발명의 프레임워크 (100) 및 다른 신규한 양태들을 상세하게 설명하기 전에, 다양한 핵심 개념들이 이하에서 설명된다.
도 1 의 좌측을 참조하면, 블록 (70) 은 DRC 동안에 전형적으로 사용된 3 개의 기초적인 설계 규칙들을 그래픽 형태로 예시한다. 기본적 설계 규칙들은 레이아웃의 제조가능성을 보장하기 위하여 이용된 파라미터들의 세트들이다. 특정 제조 프로세스에 대하여, 파운드리들은 제조 동안의 가변성을 보상하기 위한 충분한 마진 (margin) 들을 보장하기 위하여 기초적인 설계 규칙들의 대응하는 세트를 제공한다. IC 가 이 규칙들을 위반하는 레이아웃 패턴을 이용하여 제조될 경우, 제조된 IC 는 올바르게 동작하지 않을 수도 있다. 블록 (70) 을 참조하면, 단일 층에 대하여, 폭 규칙은 레이아웃에서의 임의의 다각형의 최소 폭 (71) 을 특정하는 반면, 공간 규칙은 2 개의 이웃하는 다각형들 사이의 최소 거리 (72) 를 특정한다. 2 개의 층들에 대하여, 인클로저 규칙 (enclosure rule) 은 다각형이 다른 층 상의 일부 다각형에 의해 일부 추가적인 마진 (73) 으로 커버되어야 한다는 것을 특정한다. 이 설계 규칙들은 수학식들 및/또는 부등식들에 의해 표현될 수 있다. 예를 들어, 최소 간격 규칙은 임의의 2 개의 인접한 다각형 에지들 사이의 간격이 간격 (72) 보다 더 작다는 것으로서 설명될 수 있다. 이 규칙들은 예를 들어, 사용자의 레이아웃 패턴 (90-1) 의 각각의 블록 구조의 폭들 및 간격을 검사함으로써, 그리고 그 폭이 최소 폭 (71) 보다 더 작은 각각의 블록 구조의 로케이션과, 그 에지-대-에지 (edge-to-edge) 간격이 최소 거리 (72) 보다 더 작은 블록 구조들의 각각의 쌍을 보고함으로써, DRC 동안에 적용된다. 3 개의 기초적인 규칙들에 추가하여, 최신 DRC 툴들은 (길이, 폭, 면적, 중첩, 비율, 및 밀도 계산들을 포함하는) 단일 다각형 내의, 또는 (교차 다각형 간격들, 인클로저 간격들, 및 외부 다각형 간격들을 포함하는) 다각형 에지들 사이의 일반적인 치수 검사들을 수행할 수 있다. 실행세트 파일 (즉, DRC 세션 동안에 검사되도록 하기 위하여 DRC 툴에 제공된 설계 규칙들) 및 레이아웃이 주어지면, DRC 툴은 규칙이 위반되는 각각의 로케이션을 보고한다.
예시적인 핫스폿 패턴 (80) 은 도 1 의 상부 좌측 부분에서 그래픽으로 도시되어 있다. 어구 "핫스폿 패턴" 은 파운드리에 의해 제공된 패턴을 설명하기 위하여 DRC 산업에 의해 이용되고, 어구들 "핫스폿 로케이션" 및 "핫스폿 영역" 은 핫스폿 패턴과 정합하는 레이아웃 패턴에서 실제적인 레이아웃 구조들의 로케이션을 설명하기 위하여 이용된다. 대부분의 핫스폿 패턴 설명들과 부합하여, 핫스폿 패턴 (80) 은 윈도우 경계 (81) 내에 배치되는 불투명한 "블록" 부분들(83) 및 투명한 "공간" 부분들 (85) 을 포함한다. 발명의 양태에 따르면, 핫스폿 패턴 (80) 은 대안적인 핫스폿 패턴 배열들을 일반적으로 표현하기 위하여 사용되는, 2 개의 블록 부분 에지들 사이에 배치된 에지 공차 (87) 와, 불완전한 사양 (돈 케어) 영역 (89) 을 또한 포함한다. 본원에서 이용된 바와 같이, "에지 공차" 는 다각형 (블록 부분) 의 2 개의 대향하는 에지들 사이, 또는 2 개의 상이한 다각형들로부터의 사용자-정의된 거리 범위를 의미하고, "돈 케어 영역들" 은 미지의/임의적인 형상들을 갖는 임의의 패턴들이 존재할 수 있는 직사각형 영역들이다. 또한, 돈 케어 영역은 어떤 범위의 에지 공차를 또한 가진다. 이 정의들로, 핫스폿 로케이션은 윈도우 경계 (81) 내부의 파운드리-제공된 패턴과 정합하는 구성을 가지는 레이아웃 패턴 내의 실제적인 레이아웃 부분을 의미한다. 4 개의 회전들 및 2 개의 미러 (mirror) 들의 조합들을 포함하는, 검사되어야 하는 각각의 핫스폿 패턴의 8 개의 가능한 배향들이 있다는 것에 주목한다.
도 2 는 실제적인 실시형태에 따라 본 발명의 중요한 엘리먼트들을 포함하는 프레임워크 (100) 의 부분을 도시하는 수정된 도면이다. 구체적으로, 도 2 는 패턴 열거 (블록 (110A)), 임계적 규칙 추출 (블록 (120A)), 규칙 순서화 (블록 (130A)), 및 그 다음으로, 검색 공간 감소 전력을 사용한 DRC 수행 (블록 (140A)) 을 도시한다. 도 2 의 상부에서의 블록 (110A) 을 참조하면, 핫스폿 패턴 (80) 은 핫스폿 패턴 (80) 의 대응하는 대안적인 배열들에 기초하여 다수의 패턴 위상기하구조들 (112-11 내지 112-1n, 및 112-21 내지 112-2n) 을 생성하는 것을 통해 "열거" 되고, 여기서, 각각의 패턴 위상기하구조 (예컨대, 112-11) 는 고유한 패턴 배열로 배치된 다수의 다각형 "타일들" (즉, 다수의 블록 타일들 (113) 및 다수의 공간 타일들 (116)) 을 포함한다 (예컨대, 패턴 위상기하구조 (112-11) 는 모든 다른 패턴 위상기하구조들 (112-12 내지 112-1n, 및 112-21 내지 112-2n) 과는 상이함). 규칙 추출 (블록 (120A)) 은 열거된 패턴 위상기하구조들 (112-11 내지 112-1n, 및 112-21 내지 112-2n) 의 각각의 패턴 위상기하구조의 임계적 특징부들을 식별하는 것과, 각각의 패턴 위상기하구조가 적어도 하나의 상기 임계적 설계 규칙에 의해 표현되도록 (예컨대, 위상기하구조 (112-11) 는 임계적 설계 규칙들 R1 내지 R2 에 의해 표현되고, 패턴 위상기하구조 (112-12) 는 임계적 설계 규칙들 R2, R4, 및 R5 에 의해 표현되고, 패턴 위상기하구조 (112-2n) 는 임계적 설계 규칙들 R6 내지 R8 에 의해 표현됨), 임계적 설계 규칙들을 생성하는 것을 수반한다. 규칙 순서화 (블록 (130A)) 는 그 중에서도, 추출된 임계적 설계 규칙들 (예컨대, 규칙들 R1 내지 R8) 을 2 개 이상의 규칙 그룹들 (예컨대, 규칙 그룹들 G1 및 G2) 로 그룹화하는 것을 포함하고, 여기서, "주" (제 1) 규칙 그룹 G1 은 상기 복수의 패턴 위상기하구조들의 각각으로부터의 적어도 하나의 임계적 설계 규칙을 포함하고, 보조 규칙 그룹들 (예컨대, 그룹 G2) 은 모든 나머지 임계적 설계 규칙들을 포함한다. 예를 위하여, (블록 (120A) 에서 도시된) 패턴 위상기하구조들 (112-11, 112-12, 및 112-2n) 은 열거 동안에 생성된 패턴 위상기하구조들의 전체 세트를 구성하는 것으로 가정하면, 설계 규칙들 R2 및 R6 은 각각의 패턴 위상기하구조로부터의 적어도 하나의 임계적 설계 규칙이라는 조건을 충족시킨다. 이 예를 이용하면, 그룹 G2 는 패턴 위상기하구조들 (112-11, 112-12, 및 112-2n) 과 연관된 모든 나머지 규칙들을 구성하는 임계적 설계 규칙들 R1, R3, R4, R5, R7, 및 R8 을 포함할 것이다. 하나의 실시형태에서, 그 다음으로, 그룹 G1 의 임계적 설계 규칙들을 포함하는 제 1 DRC 실행세트 파일 RS1 이 생성되고, 그 다음으로, 그룹 G2 의 임계적 설계 규칙들을 포함하는 제 2 DRC 실행세트 파일 RS2 가 생성된다. 그 다음으로, DRC (블록 (140A)) 는 2 개의 국면들에서 수행되고: 제 1 국면 DRC 프로세싱은 그룹 G1 의 임계적 설계 규칙들을 이용하여 전체 초기 레이아웃 패턴 (90-1) 을 검색하기 위하여 수행되고 (블록 (140-1)), 그 다음으로, 검색 공간 감소는 제 1 DRC 프로세싱 국면 동안에 그룹 G1 의 적어도 하나의 제 1 임계적 설계 규칙을 충족시키는 것으로서 식별된 영역들 (92) 을 오직 포함하기 위하여 초기 레이아웃 패턴 (90-1) 을 수정함으로써 감소된 레이아웃 패턴 (90-1A) 이 생성되는 동안에 수행되고 (블록 (144)), 그 다음으로, 제 2 국면 DRC 프로세싱은 그룹 G2 의 임계적인 설계 규칙들의 각각에 대한 감소된 레이아웃 패턴 (90-1A) 을 검색하기 위하여 수행된다. 그 다음으로, 2-국면 DRC 프로세싱의 결과들은 (이하에서 논의된) 후보 핫스폿들을 식별하기 위하여 사용된다. 이 특징부들 (즉, 열거, 규칙 추출, 규칙 순서화, 및 DRC 프로세싱) 의 각각은 다음의 단락들에서 추가적으로 상세하게 설명된다.
도 3 은 본 발명의 실시형태에 따라 에지 공차를 포함하는 핫스폿 패턴들과의 이용을 위한 패턴 열거 방법론을 예시하는 흐름도이다. 당해 분야에서 이해된 바와 같이, 파운드리-제공된 핫스폿 패턴 내의 에지 공차들은 에지 공차들 내에서 맞는 구조들을 가지는 다양한 패턴 위상기하구조들이 실제적인 핫스폿 영역들을 자격부여할 것이라는 것 (즉, 파운드리-제공된 핫스폿 패턴을 "충족시킴") 을 의미한다. 하나 이상의 에지 공차들을 포함하는 핫스폿 패턴을 이용하여 레이아웃 패턴에서 모든 핫스폿 영역들을 성공적으로 검출하기 위하여, 에지 공차들 내에 맞는 모든 가능한 패턴 위상기하구조들을 포착 (즉, 식별) 하는 것이 먼저 필요하다. 이와 같이, 도 3 의 상부를 참조하면, 패턴 열거 방법론은 핫스폿 패턴의 다양한 구조들 (예컨대, 핫스폿 패턴 (80) 의 블록 영역들 (83) 및 공간 영역들 (85), 도 1) 을 슬라이싱 (분할) 하는 것 (블록 (111)), 에지 공차 (예컨대, 에지 공차 (87) 에 의해 정의된 에지들의 각각의 쌍에 대한 패턴 세트를 생성하는 것 (블록 (113), 각각의 패턴 세트를 패턴 서브세트들로 변환하는 것 (블록 (115)), 및 각각의 패턴 서브세트에 대한 대응하는 패턴 위상기하구조를 생성하는 것 (블록 (117)) 을 포함한다. 그 다음으로, 현존하는 패턴 위상기하구조들은 그것들이 추가적인 서브세트들로 추가로 분할될 수 있는지를 결정하기 위하여 분석되고 (블록 (119)), 그 다음으로, 프로세스는 더 많은 서브세트들이 생성될 수 없을 때까지 반복된다.
각각의 핫스폿 패턴을 슬라이싱하는 것 (블록 (111)) 은 다음의 예외를 갖는 알려진 기법들에 따라 수행된다. 발명의 실시형태에 따르면, 에지 공차 (87A) 에 의해 영향받은 패턴 구조 구조를 슬라이싱할 때, 슬라이싱 절단에 의해 생성된 2 개 이상의 결과적인 다각형들은 에지 공차에 의해 영향받은 에지를 따라 바인딩된다. 예를 들어, 도 4(a) 는 개재되는 에지 공차 (87A) 에 의해 제 2 패턴 구조 (83A-2) 로부터 분리되는 "L" 형상 패턴 구조 (83A-1) 를 포함하는 예시적인 핫스폿 패턴 (80A) 을 예시한다. 슬라이싱 동안, 수평 절단 라인 H 는 "L" 형상 패턴 구조 (83A-1) 를, 다각형들 (83A-11 및 83A-12) 로서 도 4(b) 에서 표시되는 2 개의 다각형들로 슬라이싱한다. "L" 형상 패턴 구조 (83A-1) 의 좌측 에지는 에지 공차 (87A) 에 의해 영향받으므로, "스포닝된 (spawned)" 다각형들 (83A-11 및 83A-12) 은 도 4(c) 및 도 4(d) 에서 도시된 것들과 같은 올바르지 않은 위상기하구조들의 생성을 회피하기 위하여 함께 바인딩되고 (즉, 추가의 열거 프로세싱에서 오정렬되는 것이 방지됨), 여기서, 블록들 A 및 B 의 좌측 에지들은 오정렬된다.
또 다른 실시형태에 따르면, "Efficient process-hotspot detection using range pattern matching (범위 패턴 정합을 이용한 효율적인 프로세스-핫스폿 검출)", Proc. ICCAD, pp. 625-632, 2006 (Yao 등) 에서 개시된 모든-쌍 최소-범위 경로 (APMRP) 알고리즘은 2 개의 차원들인 모든 가능한 패턴 위상기하구조들을 생성하는 것을 가능하게 하기 위하여, 각각의 패턴 세트에 대한 패턴 서브세트들을 생성하기 위하여 사용된다 (블록 (115)). 현재의 패턴 세트들은 이전의 패턴 세트의 APMRP 결과들이다. 용어들 패턴 "세트" 및 패턴 "서브세트" 는 동일한 반복에서 APMRP 알고리즘 이전 및 이후의 패턴을 구별하기 위하여 이용된다. m 및 n 은 주어진 패턴 내의 다각형들의 2 개의 수직 에지들 (또는 수평 에지들) 사이의 최소 및 최대 거리를 나타낸다고 한다. APMRP 알고리즘은 주어진 패턴에서 모든 에지 쌍들의 (n - m) 값을 최소화하기 위하여 사용된다. m < 0 이고 n > 0 경우, (m, n) 세트는 3 개의 서브세트들을 포함한다: {(m, -1), (0, 0), (1, n)}. m < 0 이고 n = 0 일 경우, 2 개의 서브세트들이 있다: {(m, -1), (0, 0)}. m = 0 이고 n > 0 일 경우, 2 개의 서브세트들이 있다: {(0, 0), (1, n)}. 그렇지 않을 경우, 오직 하나의 서브세트 {(m, n)} 가 있다. 각각의 서브세트는 지정된 패턴 위상기하구조를 암시한다. 이에 따라, 주어진 에지 공차에 대하여, 목표는 에지 쌍들로부터 가능한 서브세트들의 모든 조합들을 구하는 것이다.
(m, n) 세트를 서브세트들로 변환한 후, 대응하는 패턴 위상기하구조는 알려진 기법들을 이용하여 각각의 패턴 서브세트에 대하여 생성된다 (블록 (117)). 그 다음으로, 패턴 서브세트들은 패턴 서브세트들 중의 임의의 것이 서브세트들로 추가로 분할될 수 있는지를 결정하기 위하여 분석되고 (블록 (119)), 그리고 그러할 경우, APMRP 알고리즘은 이 식별된 서브세트들에 대하여 반복된다. 이 프로세스는 추가의 서브세트들이 구해질 수 없을 때까지 재귀적으로 수행되어, 이에 따라, 하나 이상의 에지 공차들을 포함하는 파운드리-제공된 핫스폿 패턴의 모든 가능한 배열들에 대한 패턴 위상기하구조들을 제공한다.
도 5a 는 블록 (83B-1) 의 에지 (83B-1R) 가 범위 "x" 내에서 변동하는 것과, 블록 (83B-2) 의 에지 (83B-2L) 가 범위 "y" 내에서 변동하는 것을 허용하는, 대응하는 에지 공차들 (87B-1 및 87B-2) 에 의해 각각이 영향받는 패턴 구조들 (83B-1 및 83B-2) 을 포함하는 예시적인 핫스폿 패턴 (80B) 을 도시한다. APMRP 후에, 에지들 (83B-1R 및 83B-2L) 사이의 (m, n) 은 m < 0 및 n > 0 인 조건을 맞춘다. 이에 따라, 도 5b, 도 5c, 및 도 5d 에서 각각 도시된 3 개의 위상기하구조들 (112B-1, 112B-2, 및 112B-3) 은 에지 에지들 (83B-1R 및 83B-2L) 사이의 거리 (m, -1), (0, 0), 및 (1, n) 로 생성된다. 새로운 서브세트들이 APMRP 후에 이 3 개의 위상기하구조들로부터 구해질 수 없고, 이에 따라, 위상기하구조들 (112B-1, 112B-2, 및 112B-3) 은 핫스폿 패턴 (80B) 에 대한 열거 결과들로서 반환된다. 임의의 패턴 위상기하구조를 파괴하지 않으면서, 에지 제약들 (m, n) 은 각각의 에지 쌍 사이의 최소 및 최대 거리를 정의한다. 도 5b, 도 5c, 및 도 5d 에서, 패턴 위상기하구조들 (112B-1, 112B-2, 및 112B-3) 에 대한 대응하는 제약 그래프들은 파선-도트 (dashed-dot) 및 파선-더블-도트 (dashed-double-dot) 라인들에 의해 표시된다. 파선-도트 라인들은 수평 에지 제약들의 전부를 표시하는 반면, 파선-더블-도트 라인들은 수직 에지 제약들의 전부를 표시한다.
또 다른 실시형태에 따르면, 파운드리-제공된 핫스폿 패턴이 하나 이상의 비특정된 "돈 케어" 영역들을 포함할 때, 열거는 각각의 "돈 케어" 영역이 2 개의 블록 구조 에지들 사이에 배치되는지 여부를 결정하는 것과, 각각의 이러한 "돈 케어" 영역에 대한 특수한 경계 타일을 배정하는 것을 포함한다. 목표는 DRC 동안에 돈 케어 영역들의 존재를 반영하는 패턴 위상기하구조들을 생성하는 것이다. 하나의 실시형태에서, 2 개의 타입들의 돈 케어 영역들이 고려되고: 제 1 타입은 윈도우 경계들을 완전히 대면하는 2 개 또는 3 개의 인접한 에지들을 갖는 돈 케어 영역들을 포함하고, 제 2 타입은 2 개의 대면하는 구조 에지들 사이의 돈 케어 영역을 포함한다. 도 6a 는 제 1 타입에 따라 핫스폿 패턴 (80C-1) 의 예를 예시하고, 여기서, 돈 케어 영역 (89C-1) 은 불투명한 구조 (83C-1) 의 에지 (83C-1R 및 83C-1U) 에 의해 하나의 측부 상에서 오직 경계가 형성된다. 도 6b 는 제 2 타입에 따라 핫스폿 패턴 (80C-2) 의 예를 예시하고, 여기서, 돈 케어 영역 (89C-2) 은 불투명한 구조 (83C-2) 의 에지들 (83C-2R 및 83C-2L) 에 의해 2 개의 측부들 상에서 경계가 형성된다. 하나의 실시형태에서, 제 1 타입의 돈 케어 영역들은 폐기되고 (즉, 돈 케어 영역에 대한 모든 참조는 열거된 패턴 위상기하구조들로부터 생략됨), 제 2 타입의 돈 케어 영역들은 '경계 타일' 로서 본원에서 지칭된 새로운 타일을 지정된 돈 케어 영역에 대응하는 각각의 패턴 위상기하구조의 영역으로 추가함으로써 커버된다. 도 6c 및 도 6d 는 대응하는 슬라이싱된 타일들 및 경계 타일들 (118C-1 및 118C-2) 을 포함하는 2 개의 이러한 패턴 위상기하구조들 (112-C1 및 112C-2) 을 도시한다. 이하에서 기재된 바와 같이, 각각의 경계 타일은 규칙 추출 동안에 특수한 윈도우 경계로서 해독되고, 규칙들은 경계 타일들에 대하여 추출되지 않는다.
도 2 를 다시 참조하면, 열거가 완료된 후, 프레임워크의 다음 국면은 임계적 설계 규칙 추출 (블록 (120A)) 을 수반한다. 핫스폿 검출을 실현하기 위한 DRC 의 보조를 이용하기 위하여, 열거된 패턴 위상기하구조들의 위상기하학적 특징부들 (예컨대, 각각의 블록 타일 및 공간 타일의 로케이션 및 크기) 을 식별하는 것과, 이 위상기하학적 특징부들을, 연관된 위상기하구조 특징부들을 식별하기 위하여 DRC 툴에 의해 그 이후에 사용되는 DRC 설계 규칙들로 변환하는 것이 필요하다. DRC 설계 규칙들로의 위상기하학적 특징부들의 변환은 "설계 규칙 추출" 로서 지칭된다. 설계 규칙들을 추출하기 위한 직관적인 방법은 각각의 열거된 패턴 위상기하구조의 매 타일 에지 제약을 DRC 설계 규칙들로 변환하는 것이다. 그러나, 이 접근법은 DRC 프로세싱 시간을 상당히 증가시킬 매우 큰 수의 일반화된 (간단한) DRC 설계 규칙들을 생성할 것이고, DRC 결과들에서 큰 수들의 오류 검출들을 생성할 것이다. 그러므로, 각각의 열거된 패턴 위상기하구조를 정확하게 식별하는 최소 수의 "임계적" DRC 설계 규칙들을 추출하는 것이 바람직하다.
본 발명의 실시형태에 따르면, 임계적 설계 규칙들 (예컨대, 설계 규칙들 R1, R2, 및 R3) 은 각각의 열거된 패턴 위상기하구조에서의 다양한 블록 타일들 및 공간 타일들 사이의 위치 관계들을 결정함으로써, 결정된 위치 관계들에 의해 정의된 임계적 특징부들을 식별하기 위하여 복수의 추출 규칙들을 적용함으로써, 그 다음으로, 식별된 임계적 특징부들의 각각에 대한 임계적 설계 규칙들을 생성함으로써 추출된다. 이 프로세스는 지향된 에지들 DE 및 임의적인 규칙 직사각형들 RR 을 이용하여 패턴 위상기하구조 (112-11) 의 다양한 블록 타일들 (114) 및 공간 타일들 (116) 사이의 위치 관계들을 결정하는 것을 도시하는 도 2 (블록 (120A)) 에서 예시적인 형태로 예시되어 있다. 다음으로, 추출 규칙들 ER1 내지 ER6 은 임계적 특징부들을 식별하기 위하여 이하에서 설명된 방식으로 적용되고, 그 다음으로, 식별된 임계적 특징부들은 임계적 설계 규칙들을 생성하기 위하여 이용된다 (예컨대, 위상기하구조 (112-11) 의 임계적 특징부들은 임계적 설계 규칙들 R1, R2, 및 R3 을 생성함). 상세하게 도시하지 않지만, 유사한 프로세스들이 각각의 열거된 패턴 위상기하구조 (예컨대, 위상기하구조들 (112-12 및 112-2n)) 에 적용됨으로써, 임계적 규칙들은 각각의 패턴 위상기하구조에 대하여 생성된다 (예컨대, 임계적 설계 규칙들 (R4, R2, 및 R5) 은 패턴 위상기하구조 (112-12) 의 결정된 임계적 특징부들로부터 생성되고, 임계적 설계 규칙들 (R6, R7, 및 R8) 은 패턴 위상기하구조 (112-2n) 의 결정된 임계적 특징부들로부터 생성됨). 임계적 설계 규칙 (R2) 은 양자의 패턴 위상기하구조들 (112-11 및 112-12) 에 대하여 생성되고, 이것은 이 위상기하구조들의 각각의 위상기하구조의 임계적 특징부 (예컨대, 내부 블록 또는 공간 타일의 크기 및 다른 특성들) 이 동일하다는 것을 의미한다는 것에 주목한다. 이하에서 기재된 바와 같이, 그 다음으로, 추출된 임계적 설계 규칙들은 후보 핫스폿 영역들을 식별하기 위하여 DRC 프로세싱 동안에, 그리고 DRC 프로세싱 후에 사용된다.
바람직한 실시형태에 따르면, 수정된 전이 폐쇄 그래프 (MTCG) 들은 에지 공차들 및 불완전한 사양들을 가지는 파운드리-제공된 핫스폿 패턴으로부터 열거된 패턴 위상기하구조들에 대한 임계적 설계 규칙들을 생성하기 위하여 신규한 추출 규칙들과 함께 사용된다. MTCG 들은 고유한 타일링된 패턴을 표현할 수 있는 패턴 위상기하구조들의 수치 표현들이고, "A transitive closure graph based representation for non-slicing floorplans (비-슬라이싱 평면계획들에 대한 전이 폐쇄 그래프 기반 표현), Proc. DAC, pp. 764-769, 2001 에서 Lin 및 Chang 에 의해 제안된 전이 폐쇄 그래프 (transitive closure graph; TCG) 들 표현의 확장으로서 특징화될 수 있다. 이하에서 참조된 도면들에서, 각각의 MTCG 정점 (vertex) 은 도트 또는 원에 의해 표시되고, 블록 타일 (도트) 또는 공간 타일 (원) 의 중심 로케이션을 표현하는 반면, 각각의 에지 (실선) 는 타일들 사이의 일부 위상기하학적 관련성을 표현한다. 인접한 타일들 사이의 위치 관련성들을 표현하는 지향된 에지들은 관련된 정점들 사이에서 연장되는 화살표들을 갖는 라인들에 의해 표시된다. MTCG 들의 2 개의 세트들은 그 위상기하구조를 완전히 포착하기 위하여 각각의 패턴 위상기하구조에 대하여 생성되고: 제 1 세트는 수평으로 타일링된 패턴으로부터 구성되고, 제 2 세트는 수직으로 타일링된 패턴으로부터 구성된다. 예를 들어, 도 7a 내지 도 7d 는 (도 5b 를 참조하여 위에서 설명된) 패턴 위상기하구조 (112B-1) 에 대하여 생성되는 MTCG 들을 도시한다. 도 7a 및 도 7b 는 패턴 위상기하구조 (112B-1) 에 대한 예시적인 "제 1" (수평) MTCG 세트를 도시하고, 여기서, 도 7a 는 수평으로 타일링된 수평 제약 그래프 (112B-1)(Ch,h) 를 도시하고, 도 7b 는 수평으로 타일링된 수직 제약 그래프 (112B-1)(Ch ,v) 를 도시한다. 도 7c 및 도 7d 는 패턴 위상기하구조 (112B-1) 에 대한 "제 2" (수직) MTCG 세트를 각각 도시하고, 여기서, 도 7c 는 수직으로 타일링된 수평 제약 그래프 (112B-1)(Cv ,h) 를 도시하고, 도 7d 는 수직으로 타일링된 수직 제약 그래프 (112B-1)(Cv ,v) 를 도시한다. (예컨대, 도 7b 및 도 7c 에서 각각 도시된) Cv,v 또는 Ch ,v 제약 그래프들에서는, 지향된 에지가 x-축 상에서의 그 투영들이 중첩할 경우에 임의의 2 개의 인접한 타일들 사이에 추가된다. 유사하게, (예컨대, 도 7a 및 도 7d 에서 각각 도시된) Cv ,h 또는 Ch ,h 제약 그래프들에서는, 지향된 에지가 y-축 상에서의 그 투영들이 중첩할 경우에 임의의 2 개의 인접한 타일들 사이에 추가된다. 또한, 블록 (공간) 타일들 사이의 대각선 관련성들은 2 개의 인접한 블록 (공간) 타일들이 Ch ,h 제약 그래프에서 x-축 및 y-축 상에서 중첩하지 않을 때에 추출될 수 있다 (예컨대, 도 7a 에서의 파선-라인 화살표들을 참조). 간격이 고려되고, 타일링된 패턴이 간결하므로, (중복적인) 전이 에지들은 MTCG 구성 동안에 제외될 수 있다.
패턴 열거에 의해 생성된 제약 그래프들, 도 5b 내지 도 5d 는 주어진 핫스폿 패턴을 설명하기 위하여 필요한 특징부 정보의 전부를 실제적으로 포함한다. 그러나, 에지 제약들의 전부 (파선-라인들 및 파선-더블-라인들) 가 DRC 규칙들로 직접적으로 변환될 경우, 큰 수의 중복적인 규칙들이 또한 적용될 것이다. 이에 따라, 다음 태스크는 생성된 MTCG 들로부터 임계적 특징부들을 선택하는 것과, 그 다음으로, 임계적 특징부들을 설계 규칙들로 변환하는 것이다 (모든 특징부들의 치수들은 패턴 열거 후에 제약 그래프들에서 저장되었음). MTCG 들이 양호한 표현들이므로, 그것들은 임계적 특징부 선택을 가능하게 한다. 임계적 특징부들은 격리된 다각형들일 수도 있거나 임의적-형상의 다각형들에 의해 둘러싸일 수도 있다는 것에 주목한다. 양자의 조건들은 이하에서 상세하게 설명된 바와 다루어질 수 있다. 이하에서 설명된 개시된 실시형태에서, 이하에서 상세하게 설명되는 내부 (제 1) 규칙, 외부 규칙 (제 2) 규칙, 대각선 (제 3) 규칙, 롱에지 (제 4) 규칙, 세그먼트 (제 5) 규칙, 및 경계 타일 (제 6) 규칙을 포함하는 6 개의 상이한 추출 규칙들은 임계적 특징부들을 식별하기 위하여 사용된다. 하나의 실시형태에서는, 시간을 절감하기 위하여, 제 1 내지 제 6 규칙들이 각각의 MTCG 의 Ch ,h 및 Cv,v 제약 그래프들에 오직 적용되고, 다른 2 개의 그래프들은 경계 검사를 위하여 작용한다. 그 다음으로, 각각의 추출된 특징부는 알려진 기법들을 이용하여 임계적 설계 규칙으로 변환된다.
제 1 (내부) 추출 규칙 (즉, 도 2 에서의 규칙 ER1, 블록 (120A)) 은 윈도우 경계를 터치하지 않는 블록 타일의 폭 및 높이를 결정하는 것을 수반한다. 도 8a 및 도 8b 에서 도시된 바와 같이, 윈도우 경계를 터치하지 않는 각각의 블록 타일의 치수는 수직 타일링된 MTCG 제약 그래프 (112D)(Cv ,v) (도 8a) 에서의 제약 그래프 Cv ,v 와, 수평 타일링된 MTCG 제약 그래프 (112D)(Ch ,h) (도 8b) 에서의 제약 그래프 Ch , h 를 이용하여 결정될 수 있다. 제 1 추출 규칙을 제약 그래프 (112D)(Cv,v) 에 적용하는 것은 높이들 h1, h2, h3, 및 h4 를 결정하는 것을 가능하게 하는 반면, 제 1 추출 규칙 (112D)(Ch ,h) 을 적용하는 것은 폭들 w1 및 w2 를 결정하는 것을 가능하게 한다. 윈도우 경계를 터치하는 블록 타일들을 제외하기 위하여, MTCG 가 주어지면, 그 진입 및 진출 에지들이 공간 정점들에 연결되는 오직 블록 정점들이 추출된다.
제 2 (외부) 추출 규칙 (즉, 도 2 에서의 규칙 ER2, 블록 (120A)) 은 2 개의 인접한 블록 타일들 사이의 거리들을 결정하는 것을 수반한다. 도 9a 및 도 9b 에서 도시된 바와 같이, 윈도우 경계를 터치하지 않고 블록 타일들 사이에 위치된 공간 타일들의 치수들은 수직 타일링된 MTCG 제약 그래프 (112D)(Cv ,v) (도 9a) 에서의 제약 그래프 Cv ,v 와, 수평 타일링된 제약 그래프 (112E)(Ch ,h) (도 9b) 에서의 제약 그래프 Ch , h 를 이용하여 결정될 수 있다. 제 2 추출 규칙을 제약 그래프 (112E)(Cv,v) 에 적용하는 것은 높이들 h1', h2', 및 h3' 을 결정하는 것을 가능하게 하는 반면, 제 1 추출 규칙 (112E)(Ch ,h) 을 적용하는 것은 폭 w1' 을 결정하는 것을 가능하게 한다. MTCG 가 주어지면, 정확하게 2 개의 블록 정점들 사이에 놓이는 임의의 공간 정점이 추출될 수 있다.
제 3 (대각선) 추출 규칙 (즉, 도 2 에서의 규칙 ER3, 블록 (120A)) 은 블록 (공간) 타일들의 2 개의 볼록한 코너들 사이의 대각선 관련성들을 결정하는 것을 수반한다. 타일들의 볼록한 코너들은 타일들의 코너들을 연결하기 위하여 4 개의 직사각형들을 이용함으로써 식별될 수 있고, 여기서, (동일한 타입의 타일의) 중첩하는 타일들은 4 개의 직사각형들 상에서 충돌하지 않는다. 예를 들어, 도 10a 에서 도시된 바와 같이, 4 개의 직사각형들은 블록 타일들 (710, 711, 712, 및 713) 의 코너들을 연결한다. 구체적으로, 파선 라인에 의해 도시된 제 1 직사각형은 블록 타일들 (710 및 712) 을 연결하고; 파선-도트 라인에 의해 도시된 제 2 직사각형은 블록 타일들 (710 및 713) 을 연결하고; 점선 라인에 의해 도시된 제 3 직사각형은 블록 타일들 (711 및 713) 을 연결하고; 파선-더블 도트에 의해 도시된 제 4 직사각형은 블록 타일들 (711 및 712) 을 연결한다. 블록 타일이 4 개의 직사각형들 상에서 충돌하지 않으므로, 블록 타일들 (710, 711, 712, 및 713) 은 볼록한 코너들로서 특징화될 수 있다. 대조적으로, 도 10b 는 블록 타일 (714) 의 추가를 갖는 실질적으로 동일한 다각형들을 예시한다. 블록 타일 (714) 은 4 개의 직사각형들 중의 적어도 하나와 충돌하므로, 블록 타일들 (710, 711, 712, 및 713) 은 볼록한 코너들로서 특징화되지 않는다. 이에 따라, 제 3 임계적 DRC 규칙은 도 10b 가 아니라, 도 10a 에 적용될 수 있다.
도 10c 및 도 10d 는 제약 그래프들 (112F)(Ch ,h) 및 제약 그래프 (112F)(Ch ,v) 를 각각 예시한다. 도 10e 및 도 10f 는 제약 그래프 (112F)(Cv ,h) 및 제약 그래프 (112F)(Cv,v) 를 각각 예시한다. 하나의 실시형태에서, 오직 수평 타일링된 수평 제약 그래프 (112F)(Ch ,h) 에서는, y-축 상에서의 그 투영들이 중첩하지 않을 경우에, 대각선 지향된 에지가 임의의 2 개의 인접한 블록 타일들 (공간 타일들) 사이에서 추가되고, 여기서, 인접성은 이 2 개의 블록 타일들 (공간 타일들) 에 의해 형성된 코너 영역 사이에서 다른 블록 타일들 (공간 타일들) 이 없다는 것을 의미한다.
하나의 실시형태에서는, 볼록한 코너들이 식별될 때, 4 개의 대각선 에지들이 추출될 수 있다. 예를 들어, 도 10g 를 참조하면, 4 개의 대각선 에지들은: 블록 타일들 (710 및 712) 사이의 제 1 대각선 에지, 블록 타일들 (710 및 713) 사이의 제 2 대각선 에지, 블록 타일들 (711 및 712) 사이의 제 3 대각선 에지, 및 블록 타일들 (711 및 713) 사이의 제 4 대각선 에지를 포함한다. 도 10e (수직 타일링된 제약 그래프) 는 블록 타일들 (710 및 713) 사이의 대각선 에지의 길이를 결정하는 것을 가능하게 하는 반면, 도 10d (수평 타일링된 제약 그래프) 는 블록 타일들 (711 및 712) 사이의 대각선 에지의 길이를 결정하는 것을 가능하게 한다는 것에 주목한다. 2 개의 볼록한 코너들 사이의 다른 2 개의 대각선 에지들은 이 길이들을 이용함으로써 전가 (impute) 될 수 있다.
또 다른 실시형태에서, 블록 타일들 (공간 타일들) 사이의 감소된 대각선 관련성은 하나의 진입 지향된 에지 및 하나의 진출 지향된 에지를 갖는 수직 또는 수평 제약 그래프들로부터의 공간 (블록) 정점이 주어진 MTCG 의 수평 타일링된 제약 그래프들에서의 대각선 에지와 동일한 쌍의 블록 (공간) 정점들에 연결될 때에 추출될 수 있다. 이에 따라, 예를 들어, 도 10h 에서 도시된 수평 타일링된 제약 그래프를 이용하는 것은 블록 타일들 (711 및 712) 사이의 공간 정점 (720) 에 대한 진입 및 진출 지향된 에지들을 포함한다. 그러므로, 이 경우, 오직 블록 타일들 (711 및 712) 사이의 대각선 에지가 추출된다.
주 규칙들, 즉, 제 1, 제 2, 및 제 3 임계적 DRC 규칙들은 가장 많은 기본적인 핫스폿 패턴들을 처리할 수 있다. 그러나, 주 규칙들은 일부 특수한 경우들에 대하여 불충분할 수도 있다. 예를 들어, 위에서 설명된 주 규칙들은 다음의 패턴들에 적용하지 않는다: "계단들" (도 11a), "L" (도 11b), 및 "T" (도 11c). 오직 하나의 규칙, 즉, 제 1 규칙은 패턴 "I" (도 11d) 에 적용될 수 있다. 너무 적은 규칙들은 너무 많은 중복적인 로케이션들이 보고될 수 있다는 것을 암시한다.
백색 공간들이 고려되므로, 이에 따라, 타일링된 패턴들을 간결하게 하고, 전이 에지들 (즉, 중복적인 에지들) 은 MTCG 구성 동안에 간략화될 수 있다. 도 10i 는 (화살표들을 갖는 실선들로서 도시된) 양쪽 지향된 에지들 및 (화살표들을 갖는 파선 라인들로서 도시된) 전이 에지들을 갖는 수평 타일링된 제약 그래프를 예시한다. 위에서 표시된 바와 같이, y-축에서의 인접한 타일과 중첩하는 임의의 타일 투영은 지향된 에지를 생성한다. 타일 b 를 예로서 택하면, 타일 b 와 타일 d 사이의 에지는 타일 b 로부터 타일 d 로의 또 다른 경로 (예컨대, 경로 b→B→d) 가 존재할 경우에 전이 에지라고 한다. 타일 b 내지 타일 C 사이의 에지는 타일 b 로부터 타일 C 로의 또 다른 경로 (예컨대, 경로 b→B→d→C) 가 존재할 경우에 전이 에지라고 한다. 타일 b 내지 타일 c 사이의 에지는 타일 b 로부터 타일 c 로의 또 다른 경로 (예컨대, 경로 b→B→d→C→c 또는 경로 b→A→c) 가 존재할 경우에 전이 에지라고 한다. 그러므로, 3 개의 전이 에지들은 블록 타일 b 로부터 시작한다: b→c, b→d, 및 b→C. 도 10i 에 대한 총 전이 에지 리스트는 이하를 포함한다: b→c, b→d, b→C, d→c, B→c, B→C, 및 D→E. 이 전이 에지들이 없다면, MTCG 들은 희박 표현들로서 특징화될 수 있다.
이 어려움을 극복하기 위하여, 제 4 및 제 5 임계적 DRC 규칙들 (즉, 도 2 에서의 규칙들 ER4 및 ER5, 블록 (120A)) 로서 이하에서 설명된 2 개의 보조 규칙들은 윈도우 경계를 터치하는 타일들에 대하여 추가될 수 있다.
제 4 (롱에지) 임계적 DRC 규칙에서는, 윈도우 경계를 터치하는 하나의 에지를 갖는 공간 또는 블록 타일이 식별될 수 있고, 그 치수들이 결정될 수 있다 (제 1 경계 타일로 칭해짐). 이 "터치하는" 은 다각형의 에지가 윈도우 경계에서 종료되거나 윈도우 경계와 교차하는 것을 포함한다는 것에 주목한다. 예를 들어, 도 12a 는, 공간 타일 (902) 을 식별하고, 그 다음으로, 그 높이 h1 및 폭 w1 을 결정하는 수평 타일링된 제약 그래프 (112G)(Ch ,h) (도시되지 않은 방향성 에지들) 를 도시한다. 도 12b 는, 블록 타일 (904) 을 식별하고, 그 다음으로, 그 높이 h2 및 폭 w2 을 결정하는 수직 타일링된 제약 그래프 (112G)(Cv ,v) (도시되지 않은 방향성 에지들) 를 도시한다. 이에 따라, MTCG 가 주어지면, 제약 그래프 Cv , v 에서 제로 인-디그리 (in-degree) 또는 아웃-디그리 (out-degree) 를 갖는 공간 정점과, 대응하는 제약 그래프 Ch , h 에서 블록 정점들에 연결된 비-제로 (non-zero) 진입 및 진출 에지들을 가지는 타일의 치수들이 추출될 수 있다. 유사하게, 제약 그래프 Ch , h 에서 제로 인-디그리 또는 아웃-디그리를 갖는 공간 정점과, 대응하는 제약 그래프 Cv , v 에서 블록 정점들에 연결된 비-제로 진입 및 진출 에지들을 가지는 타일의 치수들이 추출될 수 있다. 블록 정점을 가지는 타일의 치수들이 유사하게 결정될 수 있다.
제 5 (세그먼트) 임계적 DRC 규칙에서, 윈도우 경계를 터치하는 하나의 에지 및 또 다른 공간 타일 (보조 경계 타일들로 칭함) 을 터치하는 또 다른 에지를 갖는 공간 타일이 식별되고, 그 치수들이 결정된다. 예를 들어, 도 13a 는, 공간 블록 (1002) 을 식별하고, 그 다음으로, 그 높이 h3 및 폭 w3 을 결정하는 수평 타일링된 제약 그래프 (112H)(Ch ,h) (도시되지 않은 방향성 에지들) 를 도시한다. 도 13b 는, 공간 블록 (1004) 을 식별하고, 그 다음으로, 그 높이 h4 및 폭 w4 을 결정하는 수직 타일링된 제약 그래프 (112H)(Ch ,h) (도시되지 않은 방향성 에지들) 를 도시한다. 이러한 방식으로, 보조 경계 타일들의 치수들이 추출될 수 있다.
보조 규칙들 (즉, 제 4 및 제 5 임계적 DRC 규칙들) 은, 주 규칙들이 "T" 및 "I" 를 처리할 수 없고, 예컨대, 제 4 임계적 DRC 규칙이 "T" 및 "I" 를 처리할 수 있는 반면, 제 5 임계적 DRC 규칙이 "계단들" 및 "L" 을 처리할 수 있는 경우들을 처리할 수도 있다. 하나의 실시형태에서, 제 5 임계적 DRC 규칙은 매우 일반적이므로, 이에 따라, 다수의 설계 규칙들을 유도하고, 타일들의 치수들이 제 1 내지 제 4 임계적 DRC 규칙들을 이용하여 추출될 경우, 제 5 임계적 DRC 규칙은 고속 프로세싱을 보장하기 위하여 MTCG 들에 적용되지 않는다.
상기 5 개의 추출 규칙들에 추가하여, 제 6 (돈 케어 영역) 추출 규칙 (즉, 도 2 에서의 규칙 ER6, 블록 (120A)) 은 돈 케어 영역들 (예컨대, 도 1 에서 도시된, 파운드리-제공된 핫스폿 패턴 (80) 의 돈 케어 영역 (89)) 을 처리하기 위하여 제공된다. 도 6a 내지 도 6d 를 참조하여 위에서 논의된 바와 같이, 2 개의 타입들의 돈 케어 영역들이 정의되고: 제 1 타입 (예컨대, 도 6a 에서 도시된, "타입 1" 돈 케어 영역 (89C-1)) 은 윈도우 경계 에지들 (81C-R 및 81C-L) 을 완전히 대면하는 2 개 또는 3 개의 인접한 에지들 (즉, 89C-1R 및 89C-1L) 을 가지고, 제 2 타입 (예컨대, 도 6b 에서 도시된, "타입 2" 돈 케어 영역 (89C-2)) 은 블록 구조 (83C-2) 의 대면하는 에지들 (83C-2R 및 83C-2L) 사이에 배치된다. 위에서 언급된 바와 같이, "타입 1" 돈 케어 영역들은 폐기되고, 특수한 경계 타일들 (예컨대, 도 6c 및 도 6d 에서 도시된 경계 타일들 (118C-1 및 118C-2)) 은 열거 동안에 패턴 위상기하구조들에 추가된다. 경계 타일이 "특수한" 패턴 윈도우 경계 (즉, 블록 또는 공간 타일이 아님) 이므로, 임계적 설계 규칙들은 위에서 설명된 제 1 내지 제 5 추출 규칙들을 이용하여 추출되지 않는다. 일부 블록 또는 공간 타일들이 경계 타일들에 의해 영향을 받을 수도 있으므로 (인접한 블록/공간 타일 및 경계 타일은 지향된 에지들이 그들 사이에서 연결되게 함), 제 6 "돈 케어 영역" 규칙은 "타입 2" 돈 케어 영역들을 포함하는 핫스폿 패턴들을 처리하기 위하여 추가된다.
하나의 실시형태에서, 제 6 (돈 케어 영역) 추출 규칙은 "타입 2" 경계 타일을 터치하는 하나의 에지 (또는 2 개의 대향 에지들) 를 갖는 각각의 공간 타일을 식별하는 것을 수반한다. 도 14a 및 도 14b 는 수평으로 슬라이싱된 패턴 위상기하구조 (112C-1) 에 대한 MTCG 제약 그래프들 Ch ,h 및 Ch ,v 을 각각 도시하고, 도 14c 및 도 14d 는 수직으로 슬라이싱된 패턴 위상기하구조 (112C-2) 에 대한 MTCG 제약 그래프들 Cv ,h 및 Cv ,v 을 각각 도시한다. 제 6 추출 규칙을 적용하면, 공간 타일 (116C-1) 에 대한 공간 정점은, 그것이 블록 타일들 (114C-1 내지 114C-3) 에 연결된 제로 (없음) 인디그리 (indegree) 들을 가지고 제약 그래프 Ch ,v (도 14a) 에서의 경계 타일 (118C-1) 에 연결된 하나 이상의 인디그리들을 가지고, 제약 그래프 Ch,h (도 14b) 에서 블록 정점들 (114C-1 내지 114C-3) 에 연결된 비제로 진입 및 진출 에지들을 가지기 때문에, 추출된다 (그리고 임계적 설계 규칙이 형성됨). 공간 타일 (116C-2) (도 14c 및 도 14d) 에 대한 정점은, 그것이 제약 그래프 Cv ,h (도 14c) 에서 경계 타일 (118C-2) 에 연결된 제로 인디그리들을 가지기 때문에 추출 규칙 테스트에 실패한다는 것에 주목한다. 제약 그래프들을 이용한 제 6 추출 규칙의 대안적인 적용에서는, 제약 그래프 Ch ,v (Cv ,h) 에서 블록 타일들에 연결된 제로 아웃디그리 (outdegree) 들 및 경계 타일들에 연결된 하나 이상의 아웃디그리들을 가지고, 제약 그래프 Ch ,h (Cv ,v) 에서 블록 정점들에 연결된 비제로 진입 및 진출 에지들을 가지는 공간 정점이 추출된다.
본 발명의 실시형태에 따르면, 위에서 설명된 제 6 추출 규칙들을 이용하여 생성된 추출된 위상기하학적 특징부들은 임계적 설계 규칙들이 형성되는 "규칙 직사각형들" 을 이용하여 수량화 (quantify) 된다 (표현됨). 규칙 직사각형은 위상기하학적 특징부의 연관된 폭 및 높이이다. 규칙 직사각형의 높이 및 폭은 제약 그래프에서 그 대응하는 에지 제약들에 의해 정의된다.
도 15a 는 윈도우 경계 (111I) 에서 배치된 예시적인 패턴 위상기하구조 (112I) 를 도시한다. 패턴 위상기하구조 (112I) 는 블록 타일들 (114I-1 내지 114I-4) 및 공간 타일들 (116I-1 내지 116I-5) 을 포함한다. 공간 타일 (116I-1) 이 추출된 특징부 (즉, 제 2 추출 규칙에 기초하여 윈도우 경계를 터치하지 않는 블록 타일들 사이의 공간 타일) 인 것으로 가정하면, 공간 타일 (116I-1) 에 대한 규칙 직사각형 RR (112I) 은 그 폭 W 및 높이 H 에 의해 결정된다. 하나의 실시형태에서, 임계적 설계 규칙들 (예컨대, 블록 (120A) 에서의 규칙들 R1 내지 R8, 도 2) 은 규칙 직사각형들을 포함한다 (또는 그로부터 생성됨). 동일한 폭 및 높이를 가지는 2 개의 규칙 직사각형들은 상이한 패턴 위상기하구조들로부터 생성될 수도 있다는 것에 주목한다. 이것이 발생할 때, 단일 규칙은 DRC 프로세싱 시간을 감소시키는 목적들을 위하여 생성된다. 예를 들어, 규칙 R2 (도 2, 블록 (120A) 참조) 는 패턴 위상기하구조들 (112-11 및 112-12) 로부터 생성된 동일한 규칙 직사각형들을 표현하고, 이에 따라, 이 패턴 위상기하구조들의 양자는 규칙 R2 에 의해 표현된다. DRC 프로세싱 동안, 규칙 R2 는 양자의 패턴 위상기하구조들에 대하여 오직 한 번 프로세싱된다.
도 15b 및 도 15c 는 또 다른 실시형태에 따라, 또 다른 패턴 지형 (112J) 및 대응하는 간략화된 제약 그래프 (112J-C) 를 각각 도시한다. 도 15b 에서, 공간 타일 (116J) 은 제 3 (대각선) 추출 규칙을 통해 임계적 특징부로서 추출되고 (선택됨), 블록 타일 (114J) 은 제 4 (롱에지) 추출 규칙을 통해 추출된다. 규칙 직사각형들은 이 타일들의 각각에 대하여 생성되고, 공간 타일 (114J) 의 높이 (폭) 는 좌표 값들 (m1, n1) 및 (m2, n2) 에 의해 정의되고, 블록 타일 (116J) 의 높이는 값 (m1, n1) 에 의해 정의되고, 블록 타일 (114J) 의 폭은 (m1, ?) 에 의해 정의되고, 여기서, "?" 는 이 타일의 우측 에지가 윈도우 경계를 터치하므로 (그러므로, 그것을 초월하여 확장될 수도 있음) 이 폭의 상한이 알려지지 않는다는 것을 의미한다. 세그먼트 규칙들은 추출된 2 개를 초과하는 내부 위상기하학적 관련성들이 있을 경우에 추출되지 않을 것이라는 것에 주목한다.
도 2 에서의 블록 (130A) 을 참조하면, 규칙 순서화는 규칙 추출 (블록 (120A) 동안에 생성된 임계적 설계 규칙들을, DRC 프로세싱이 수행되는 순서로 배열하기 위하여 위에서 일반적으로 설명된 바와 같이 수행된다. 위에서 기재된 바와 같이, 규칙 순서화는 추출된 임계적 설계 규칙들을 적어도 2 개의 규칙 그룹들로 그룹화하는 것을 일반적으로 수반하고, 여기서, 임계적 설계 규칙들의 제 1 그룹은 제 1 국면 DRC 프로세싱 동안에 전체 레이아웃 패턴에 적용되고, 나머지 임계적 설계 규칙들은 검색 공간 감소가 수행된 후에 감소된 레이아웃 패턴에 적용된다. 하나의 실시형태에서, 그룹화하는 것에 추가하여, 임계적 설계 규칙들은 각각의 상기 임계적 설계 규칙에 의해 표현된 패턴 위상기하구조들의 수, 또는 각각의 임계적 설계 규칙들을 식별하기 위하여 사용된 추출 규칙들의 타입들에 기초하는 것과 같이, 미리 결정된 우선순위에 기초하여 또한 "순서화" 된다 (즉, 규칙들이 DRC 툴에 의해 프로세싱되는 순서로 재배열됨). 이 순서 우선순위 전략들의 각각은 다음의 단락들에서 추가적으로 상세하게 설명된다.
(즉, 각각의 상기 임계적 설계 규칙에 의해 표현된 패턴 위상기하구조들의 수에 관한 우선순위에 기초하는) 제 1 순서 우선순위 전략은 다수의 패턴 위상기하구조들에서 생성된 유사한 규칙 직사각형들을 단일 임계적 설계 규칙에 배정함으로써, 그리고 최고 우선순위를 패턴 위상기하구조들의 가장 큰 수를 커버하는 임계적 설계 규칙에 배정함으로써 달성된다. 심지어 작은 수의 에지 공차들을 포함하는 핫스폿 패턴들은 패턴 열거 후에 매우 큰 수의 상이한 패턴 위상기하구조들을 생성할 수도 있다. 예를 들어, 도 16 에서 도시된 핫스폿 패턴 (80K) 은 오직 3 개의 블록 다각형들 (83K-1 내지 83K-3) 을 포함하지만, 각각의 다각형은, 위에서 설명된 열거 방법들을 이용하여 도 17 에서 도시된 27 개의 상이한 패턴 위상기하구조들 (112K) 을 생성하고 상이한 위상기하구조들의 다수는 동일한 규칙 직사각형들을 생성하는 (영역들 (87K-1 내지 87K-3) 에 의해 표시된) 양방향 에지 공차를 가진다. 예를 들어, 규칙 직사각형 (RR-K1) 은 도 17 에서 도시된 27 개의 패턴 위상기하구조들 (112K) 중의 6 개에서 나타나지만, 다른 19 개의 패턴 위상기하구조들에서 나타나지 않고, 6 개의 패턴 위상기하구조들의 각각에서의 규칙 직사각형들 (RR-K1) 은 단일 "공유된" 임계적 설계 규칙 (R-K1) 을 프로세싱함으로써 DRC 동안에 "커버" 된다. 유사하게, 규칙 직사각형 (RR-K2) 은 도 17 에서 도시된 27 개의 패턴 위상기하구조들 중의 7 개에서 나타나고, 7 개의 패턴 위상기하구조들의 각각에서의 규칙 직사각형들 (RR-K2) 은 "공유된" 임계적 설계 규칙 (R-K2) 에 의해 DRC 동안에 "커버" 된다. 제 1 순서 우선순위 전략의 실시형태에 따르면, 영역 AND 기법은 다양한 패턴 위상기하구조들에서 나타나는 유사한 규칙 직사각형들을 식별하기 위하여 사용됨으로써, DRC 프로세싱 시간은 (즉, 각각의 규칙 직사각형이 하나의 임계적 설계 규칙에 배정될 경우에 발생할 다수회의 검색 대신에) "공유된" 임계적 설계 규칙을 한 번 검색함으로써 감소된다. 위상기하구조 커버 문제는 NP-곤란한 (NP-hard) 문제이다. NP-곤란은 임의의 NP 문제들만큼 적어도 곤란한 문제를 의미한다. NP 문제는 다항식 시간에서 검증가능하다. 우리가 여기에서 의도하는 것은, 우리가 솔루션의 증명서를 어떻게든 부여받을 경우, 우리는 증명서가 가장 적은 서브세트들을 갖는 전체 세트를 커버하도록 시도하는 세트 커버 문제와 동등한 문제에 대한 입력의 크기에 있어서의 시간 다항식에서 올바르다는 것을 검증할 수 있다는 것이다. 예를 들어, 세트 U = {1,2,3,4,5} 및 4 개의 서브세트들 S = {{1,2,3}, {2,4}, {3,4}, {4,5}} 이 주어진다. 가장 적은 서브세트들을 갖는 U 에서의 모든 엘리먼트들을 커버하기 위하여, 서브세트 {1,2,3} 및 서브세트 {2,4} 가 선택된다. 탐욕스러운 경험법칙이 이 문제에 적용될 수 있다. 각각의 세트 커버 프로세스 후에, U 에서의 가장 큰 수의 커버되지 않은 엘리먼트들을 포함하는 세트가 선택된다. 동일한 방식으로, 위상기하구조 커버 프로세스 동안에 가장 큰 수의 커버되지 않은 패턴 위상기하구조들을 포함하는 임계적 설계 규칙이 선택된다. 도 17 에서 도시된 예를 다시 참조하면, 규칙 직사각형 (RR-K2) 이 7 개의 패턴 위상기하구조들을 커버하고 규칙 직사각형 (RR-K1) 이 오직 6 개를 커버하므로, 규칙 직사각형 (RR-K2) 와 연관된 임계적 설계 규칙 (R-K2) 은, 그것이 가장 큰 수의 커버되지 않은 패턴 위상기하구조들을 커버하기 때문에 먼저 선택된다 (규칙 직사각형 (RR-K1) 과 연관된 규칙 (R-K1) 에 비해 더 높은 순서화 우선순위를 부여받음). 다음으로, 규칙 직사각형 (RR-K1) 과 연관된 임계적 설계 규칙은, 그것이 패턴 위상기하구조들의 다음으로 가장 큰 그룹을 커버하기 때문에 선택된다. 이 프로세스는 모든 27 개의 패턴 위상기하구조들이 커버될 때까지 반복된다 (즉, 27 개의 패턴 위상기하구조들의 각각으로부터의 적어도 하나의 임계적 설계 규칙이 제 1 그룹 내에 포함됨). 이하에서 설명된 바와 같이, 제 1 그룹의 각각의 선택된 규칙은 제 1 DRC 국면 동안에 전체 레이아웃 패턴 내에서 검색될 것이다. 하나의 실시형태에서, 영역 AND 기법은 제 1 DRC 실행 국면 후에 각각의 선택된 규칙에 대하여 수행된다. 다음으로, 새로운 DRC 검색 공간 (예컨대, 도 2 에서 도시된 감소된 레이아웃 패턴 (90-1A)) 을 형성하기 위하여, 합집합 (union) 이 이 AND 된 영역들에 대해 취해진다. 규칙들의 나머지는 새로운 검색 공간에 오직 적용될 것이고, 더 많은 영역 AND 기법들이 이용되지 않을 것이다.
제 2 순서 우선순위 전략에 따르면, 임계적 설계 규칙들은 임계적 설계 규칙을 생성하기 위하여 이용된 추출 규칙에 기초한 우선순위들에 배정된다. 위에서 설명된 바와 같이, 임계적 설계 규칙들은 6 개의 정의된 추출 규칙들을 이용하여 생성된다. 특정 실시형태에 따르면, 임계적 설계 규칙들은 적용의 다음의 순서에 기초한 우선순위들에 배정되고: 내부 (제 1), 외부 (제 2), 및 대각선 (제 3) 추출 규칙들에 의해 생성된 임계적 설계 규칙들은 가장 높은 우선순위를 부여받고, 롱에지 (제 4) 및 돈 케어 영역 (제 6) 추출 규칙들에 의해 생성된 임계적 설계 규칙들은 중간 우선순위를 부여받고, 세그먼트 (제 5) 추출 규칙 (규칙 "5") 에 의해 생성된 임계적 설계 규칙들은 가장 낮은 우선순위를 부여받는다. 더 높은 우선순위들을 갖는 규칙들은 그 커버된 위상기하구조들이 더 낮은 우선순위들보다 더 낮더라도 먼저 선택될 것이다.
도 2 의 하부 부분을 참조하면, DRC 프로세싱 (블록 (140A)) 은 위에서 설명된 순서화 전략들 중의 하나를 이용하여 추출된 규칙들의 각각에 대하여 수행된다. 설계 규칙들의 각각의 세트는 실행세트로서 지칭되고, 각각의 실행세트는 실행세트 파일에서 DRC 툴로 제출된다.
본 발명의 실시형태에 따르면, DRC 프로세싱을 수행하는 것은, 임계적 설계 규칙들이 파운드리-제공된 핫스폿 패턴과 정합하는 레이아웃 구조들의 8 개의 가능한 배향들을 커버하기 위하여 프로세싱되는 2 개의 실행세트 파일들을 생성하는 것을 포함한다. 예를 들어, 도 18a 및 도 18b 는 예시적인 기본적인 핫스폿 패턴에 대하여 생성된 2 개의 MTCG 제약 그래프들 ((112L)(Ch ,h) 및 112L(Cv ,v)) 을 각각 도시하고, 여기서, 2 개의 제약 그래프들은 수평 및 수직 절단 라인들을 이용하여 각각 슬라이싱되고, (화살표들 "A" 및 "B" 에 의해 간략화된 형태로 표시된) 2 개의 규칙 직사각형들은 수직 및 수평 기하학적 관계들을 표하기 위하여 위에서 설명된 방법들을 이용하여 추출된다. 도 19a 및 도 19b 는 규칙들 A 및 B 를 충족시키는 레이아웃 패턴 내에서 8 개의 가능한 배향들을 가지는 레이아웃 구조들을 도시한다. 규칙 A 는 도 19a 의 4 개의 배향들에서의 제 1 (즉, 수평) 배향을 가지고, 도 19b 의 4 개의 배향들에서의 제 2 (수직) 배향을 가지고, 여기서, 제 2 배향은 제 1 배향으로부터 90° 회전된다는 것에 주목한다. 즉, 도 19a 에 의해 표시된 바와 같이, Ch ,h 제약 그래프들로부터 추출된 규칙들 A 는 Cv , v 로부터 추출된 규칙들 B 에 항상 수직이다. 이에 따라, 우리는 검색 공간을 감소시키기 위하여 DRC 에서 규칙들 A 및 B 의 규칙 검색 방향 (수직에서의 하나 및 수평 방향에서의 하나) 을 한정할 수 있다. 결과적으로, 도 19a 및 도 19b 에서 도시된 8 개의 배향들은 이 2 개의 관계들 (대표적인 배향들) 을 지속시키기 위하여 2 개의 세트들로 분할되고, 그 다음으로, 실행세트 파일은 각각의 세트에 대하여 생성된다. 그 다음으로, DRC 는 임의의 생성된 규칙을 히트 (hit) 하는 로케이션들을 획득하기 위하여 두 번 수행된다.
도 2 를 다시 참조하면, 검색 공간 감소 (블록 (144)) 는 DRC 프로세싱 시간을 감소시키기 위하여 제 1 국면 DRC 프로세싱 후에 수행된다. 즉, 각각의 열거된 패턴 위상기하구조는 제 1 그룹에서의 적어도 하나의 임계적 설계 규칙에 의해 표현되므로, 적어도 하나의 임계적 설계 규칙과 정합하는 레이아웃 구조들을 포함하는 것으로서 식별되는 전체 레이아웃 패턴 (예컨대, 도 2 에서의 레이아웃 패턴 (90-1)) 의 오직 그 영역들은 파운드리-제공된 핫스폿 패턴 (예컨대, 도 2 에서의 패턴 (80)) 과 정합하는 레이아웃 구조들을 아마도 포함할 수 있다. 임의의 "정합된" 레이아웃 구조 (즉, 제 1 DRC 국면 동안에 프로세싱된 임계적 설계 규칙을 충족시키는 레이아웃 구조) 로부터 너무 멀리 위치된 레이아웃 영역들을 생략하는 감소된 레이아웃 패턴 (예컨대, 도 2 에서 도시된 감소된 레이아웃 패턴 (90-1A) 을 생성함으로써, 그 다음으로, 감소된 레이아웃 패턴을 이용하여 제 2 국면 DRC 프로세싱을 수행함으로써, 본 발명의 방법론은 핫스폿 검출 정확도를 희생시키지 않으면서, 전체적인 DRC 프로세싱 시간을 대폭 감소시킨다.
검색 공간 감소는 비-관련된 레이아웃 패턴 영역들 (즉, 제 1 국면 DRC 결과들에 기초하여, 핫스폿을 포함할 수 없는 영역들) 을 식별하는 다양한 방법들을 이용하여, 그 다음으로, 제 2 DRC 국면 동안에 비-관련된 영역들을 생략함으로써 (즉, 소거하거나, 또는 그렇지 않을 경우에 무시함) 감소된 레이아웃 패턴을 생성하여 달성될 수도 있다. 하나의 실시형태에서, 검색 공간 감소는 4 개의 가능한 회전 배향들 중의 임의의 것에서의 각각의 규칙 직사각형에 의해 점유된 공간을 참작하는 확대된 패턴 윈도우들을 이용하여 달성되고, 그 다음으로, 적어도 하나의 확대된 패턴 윈도우의 외부에 위치된 모든 레이아웃 영역들을 제거하기 위하여 제 1 DRC 국면 후에 확대된 패턴 윈도우들을 사용한다. 이 검색 공간 감소 기법의 간략화된 예는 도 20 내지 도 22 를 참조하여 이하에서 설명된다.
도 20 은 규칙 직사각형 "C" 에 관련된 임계적 설계 규칙에 대한 확대된 패턴 윈도우 (111M-E) 를 결정하는 것을 도시한다. 규칙 직사각형 "C" 를 포함하는 패턴 위상기하구조의 4 개의 배향들 중의 임의의 것이 레이아웃 패턴에서 식별된다는 것을 확인하기 위하여, 확대된 패턴 윈도우 (111M-E) 는 모든 4 개의 가능한 배향들에서의 규칙 직사각형 "C" 의 위치에 따라 생성된다. 구체적으로, 도 20 에서 도시된 4 개의 배향들의 각각에 대하여, 패턴 윈도우로부터의 가장 긴 수평 거리 및 가장 긴 수직 거리가 결정되고, 그 가장 긴 거리들은 규칙 직사각형 "C" 에 대한 확대된 패턴 윈도우를 생성하기 위하여 이용된다. 예를 들어, 도 2 의 상부 좌측을 참조하면, 가장 긴 수평 거리 D1 은 패턴 윈도우 (111M-1) 의 좌측 측부로부터 규칙 직사각형 "C" 를 분리시키고, 가장 긴 수직 거리 D2 는 패턴 윈도우 (111M-1) 의 상부 에지로부터 규칙 직사각형 "C" 를 분리시킨다. 도 20 의 상부 우측 박스는 수직 축 주위로 플립 (flip) 된 후의 규칙 직사각형 "C" 를 도시함으로써, 거리 D1 은 패턴 윈도우 (111M-2) 의 우측 측부로부터 규칙 직사각형 "C" 를 분리시키고, 규칙 직사각형 "C" 는 거리 D2 만큼 상부 에지로부터 분리된 상태로 남아 있다. 도 20 의 하부 부분은 수평 축 주위로 플립된 후의 규칙 직사각형 "C" 를 도시함으로써, 규칙 직사각형 "C" 는 패턴 윈도우 (111M-3) 의 좌측 측부로부터 그리고 패턴 윈도우 (111M-4) 의 우측 측부로부터 거리 D1 만큼, 그l고 이 패턴 윈도우들의 하부 에지들로부터 거리 D2 만큼 분리된다. 도 20 의 우측 부분에서 표시된 바와 같이, 이 측정들에 기초하여, 확대된 패턴 윈도우 (111M-E) 는 규칙 직사각형 "C" 의 측부 에지들로부터 거리 D1 에 배치된 윈도우 측부 에지들과, 규칙 직사각형 "C" 의 상부/하부 에지들로부터 거리 D2 에 배치된 상부/하부 윈도우 에지들을 가지는 임계적 설계 규칙 "C" 에 대하여 생성됨으로써, 임계적 설계 규칙 "C" 와 정합하고 4 개의 도시된 배향들 중의 임의의 것을 가지는 임의의 레이아웃 구조는 확대된 패턴 윈도우 (111M-E) 내부에 배치될 것이다.
도 21 및 도 22 는 확대된 패턴 윈도우 (111M-E) 를 이용하여 간략화된 감소된 레이아웃 패턴의 생성을 도시한다. 도 21 은 임계적 설계 규칙 "C" 와 정합하는 초기 레이아웃 패턴 (90M-1) 의 레이아웃 구조 (94M-1) 가 식별되는 부분적인 DRC 프로세싱 결과들을 도시한다. 2 개의 다른 레이아웃 구조들 (94M-2 및 94M-3) 까지의 레이아웃 구조 (94M-1) 의 근접성에 주목한다. 제 1 DRC 프로세싱 국면의 완료 시에, 감소된 레이아웃 패턴은 임계적 설계 규칙들과 정합하는 임의의 레이아웃 구조들과 연관된 확대된 패턴 윈도우들에 의해 묘사되는 검색 영역들의 외부에 위치된 모든 레이아웃 영역들을 제거 ("소거") 함으로써 제 2 DRC 국면에 대하여 생성된다. 예를 들어, 도 21 을 참조하면, 파선-라인 박스는 확대된 패턴 윈도우 (111M-E) 에 대응하는 식별된 레이아웃 구조 (94M-1) 주위의 묘사된 검색 영역 (92M) 을 표시한다. 레이아웃 구조 (94M-2) 는 묘사된 검색 영역 (92M) 의 하부 에지들에 의해 양분되고, 레이아웃 구조 (94M-3) 는 묘사된 검색 영역 (92M) 의 완전히 외부에 위치된다는 것에 주목한다. 도 22 는 검색 영역 (92M) 의 내부에 배치된 구조들을 오직 포함하는 간략화된 감소된 레이아웃 패턴 (90M-1A) 을 도시하고, 여기서, 검색 영역 (92M) 의 외부에 위치된 모든 레이아웃 구조들 (예컨대, 구조 (94M-3), 및 구조 (94M-2) 의 하부 부분) 은 제거된다. 추후의 규칙들은 새롭게 형성된 검색 공간 내에서 오직 적용될 것이다.
도 1 을 간략하게 참조하면, 일단 DRC 가 완료될 경우, 후보 핫스폿들이 DRC 결과들을 이용하여 식별된다 (블록 (150)).
후보 핫스폿 식별은 열거된 패턴 위상기하구조들 중의 임의의 것과 대응하는 정합된 임계적 설계 규칙들의 패턴들을 DRC 결과들에서 식별하는 것을 일반적으로 수반한다. 각각의 열거된 패턴 위상기하구조는 DRC 동안에 사용된 임계적 설계 규칙들의 세트에 의해 표현된다. 이에 따라, 패턴 위상기하구조가 포착될 수 있고, 돈 케어 영역들의 영향은 오직 패턴 위상기하구조의 규칙 직사각형들을 2 개의 스트링들, 수직 방향에서의 하나 및 수평 방향에서의 다른 하나로 인코딩함으로써 무시될 수 있다. 도 23 에서 도시된 바와 같이, 예시적인 마운티 (Mountain) 패턴 위상기하구조 (112N) 의 수평 규칙 위상기하구조를 포착하기 위하여, 먼저, 고유한 레이아웃 금속 층 수는 각각의 규칙 직사각형 1 내지 7 에 대하여 배정된다. 이 경우, 7 개의 상이한 규칙 직사각형들은 상이한 금속 층 수들로 배정될 것이다. 이 고유한 규칙 층들은 레이아웃에서 정합된 직사각형들을 표시하기 위하여 DRC 툴에 의해 또한 이용될 것이다. 예를 들어, 우리가 금속 층 1 을 규칙 직사각형 7 에 배정할 경우, 규칙 직사각형 7 의 모든 정합된 로케이션들이 금속 1 층에 의해 표기될 것이다. 다음으로, 직사각형 (수평 라인 세그먼트) 의 좌측 에지 및 우측 에지는 "#.l" 및 "#.r" 로서 명명되고 ("#" 은 층 번호임), "#.m" 은 수직 라인 세그먼트를 나타내기 위하여 이용된다.
예로서, 1D 스트링에서의 패턴 마운틴의 수평 인코딩은 {6.l, 1.l, 3.l, 6.r, 1.r, 4.l, 5.l, 2.l, 4.r, 5.r, 2.r, 3.r, 7.l, 7.r} 이다. 동일한 좌표들 상의 에지들은 층들에 의해 정렬될 것이고 함께 바인딩될 것이다. 수직 방향은 동일한 방식으로 인코딩된다. 레이아웃 패턴에서 후보 핫스폿들 (잠재적인 핫스폿 로케이션들) 을 식별하기 위하여, DRC 결과들 및 규칙 우선순위들에 기초하여, 더 높은 우선순위를 갖는 레이아웃 정합된 규칙들은 후보들로서 선택될 것이고, (DRC 실행세트에 따라) 모든 4 개의 가능한 배향들을 커버하도록 확대될 것이다. 그 다음으로, 에지들은 이 영역 내부의 층들에 의해 인코딩되고, 핫스폿 스트링들과 현재의 스트링들 사이의 가장 긴 공통 서브시퀀스가 결정된다. 도 24 에서 도시된 바와 같이, 레이아웃 패턴 (90N) 에서의 레이아웃 구조들의 수직 에지들은 후보 규칙 "4" 의 확대된 영역 내에서 수평 스트링을 형성하기 위하여 인코딩되고, 검색은 가장 긴 공통 서브시퀀스에 대하여 수행된다. 레이아웃 패턴 특징부는 가장 긴 공통 서브시퀀스가 핫스폿 스트링 자체 (예컨대, 이 예에서 {6.l, 1.l, 3.l, 6.r, 1.r, 4.l, 5.l, 2.l, 4.r, 5.r, 2.r, 3.r, 7.l, 7.r}) 일 경우에 식별된 후보 (정합) 로 고려된다.
도 1 을 다시 참조하면, 프레임워크 (100) 의 최후 프로세스는 완결 (블록 (160)) 이다. 모든 후보 핫스폿 로케이션들을 식별한 후, 실제적인 핫스폿이 그 로케이션에서 존재하는지를 결정하기 위하여 각각의 후보 로케이션을 분석하는 것이 여전히 필요하다. 즉, 일부 비-핫스폿 로케이션들은 후보 로케이션들로서 식별될 수도 있다. 이러한 비-핫스폿 후보 로케이션들은 예를 들어, 추출된 임계적 설계 규칙들 중의 임의의 것에 관련되지 않고 "돈 케어" 영역 내에서 위치되지 않은 여분의 레이아웃 구조들 (다각형들) 을 포함할 수도 있다. 예를 들어, 도 25a 에서 도시된 예시적인 패턴 위상기하구조 (112O) 는 도 25b 에서 도시된 후보 레이아웃 영역 (90O) 의 식별을 야기시키는 임계적 설계 규칙들을 생성할 수도 있다. 패턴 위상기하구조 (112O) 는 블록 타일들 (84O-1 내지 84O-3) 및 돈 케어 영역들 (89O-1 및 89O-2) 을 포함한다. 레이아웃 영역 (90O) 은 블록 타일들 (84O-1 내지 84O-3) 에 필적하는 레이아웃 구조들 (94O-1 내지 94O-3), 및 여분의 레이아웃 구조 (94O-4) 를 포함한다. 후보 레이아웃 영역 (90O) 이 패턴 위상기하구조 (112O) 의 일부가 아닌 여분의 다각형 (94O-4) 를 포함하더라도, 이 영역은 다른 구조들 사이의 유사성들로 인해 후보 핫스폿 패턴으로서 식별될 수도 있다 (예컨대, 블록 타일 (84O-1) 이 규칙 직사각형을 형성할 경우, 레이아웃 패턴 (90O) 은 그것이 레이아웃 구조 (94O-4) 를 포함하더라도 후보 핫스폿으로서 식별될 수도 있음). 본 발명의 실시형태에 따르면, 완결은 여분의 다각형들의 존재에 대하여 각각의 식별된 후보 로케이션을 검사하는 것과, 그 다음으로, 여분의 다각형들이 돈 케어 영역들에 의해 완전히 커버되는지, 또는 그렇지 않은지 여부 (예컨대, 임의의 여분의 다각형들이 원래의 파운드리-제공된 핫스폿 패턴 내에 포함된 돈 케어 영역들 내에 완전히 위치되는지 여부) 를 결정하는 것을 포함한다. 여분의 다각형들을 식별하기 위하여, 후부 레이아웃 영역은 돈 케어 영역들 내부에 위치된 임의의 구조들을 제거하기 위하여 프로세싱되고, 그 다음으로, 잔여 패턴은 대응하는 제약 그래프를 이용하여 분석된다. 예시적인 제약 그래프는 도 26a 에서 도시되어 있고, 여기서, 돈 케어 영역들은 레이아웃 구조 (94O-4) (도 25b 참조) 의 대부분의 제거를 야기시키지만, 돈 케어 영역들 사이에서 확장되는 다각형 "K" 섹션을 남긴다. 다음으로, 잔여 레이아웃 패턴은 (예컨대, 수직 슬라이스 라인들 (97) 을 이용하여) 슬라이싱되고, 원래의 패턴 위상기하구조로부터의 슬라이스 데이터와 비교된다. 각각의 슬라이스 내의 생성된 슬라이스들의 수가 패턴 위상기하구조와는 상이할 경우, 후보 레이아웃 영역은 핫스폿이 아니다. 즉, 도 26a 에서의 다각형 "K" 의 존재는 레이아웃 패턴 (90O) 으로 하여금, 도 25a 에서 도시된 제약 그래프에 대한 정합으로서 실패하게 한다. 대조적으로, 다각형 "K" 가 생략되었을 경우, 도 26b 에서 도시된 결과적인 제약 그래프는 올바른 수의 슬라이스 라인들 (97) 을 포함할 것이고, 연관된 레이아웃 영역은 실제적인 핫스폿으로서 보고될 것이다.
상기 설명된 프로세스 핫스폿 검출 기법은 데이터 저장 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령들을 수신하고 데이터 및 명령들을 데이터 저장 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스로 송신하기 위하여 결합된 적어도 하나의 프로그래밍가능한 프로세서를 포함하는 프로그래밍가능한 시스템 상에서 실행되는 하나 이상의 컴퓨터 프로그램들에서 구현될 수 있다. 각각의 컴퓨터 프로그램은 희망하는 경우에, 하이-레벨 절차 또는 객체-지향 프로그래밍 언어로, 또는 어셈블리 또는 머신 언어로 구현될 수 있고; 어떤 경우에도, 언어는 컴파일링되거나 해독된 언어일 수 있다. 적당한 프로세서들은 예로서, 양자의 범용 및 특수 목적 마이크로프로세서들뿐만 아니라, 다른 타입들의 마이크로-제어기들을 포함한다. 일반적으로, 프로세서는 판독-전용 메모리 및/또는 랜덤 액세스 메모리로부터 명령들 및 데이터를 수신할 것이다. 일반적으로, 컴퓨터는 데이터 파일들을 저장하기 위한 하나 이상의 대용량 저장 디바이스들을 포함할 것이고; 이러한 디바이스들은 내부 하드 디스크들 및 분리가능한 디스크들과 같은 자기 디스크들, 자기-광학 디스크들, 및 광학 디스크들을 포함한다. 컴퓨터 프로그램 명령들 및 데이터를 유형적으로 (tangibly) 구체화하기 위해 적당한 저장 디바이스들은, 예로서, EPROM, EEPROM, 및 플래시 메모리 디바이스들과 같은 반도체 메모리 디바이스들; 내부 하드 디스크들 및 분리가능한 디스크들과 같은 자기 디스크들; 자기-광 디스크들; 및 CD-ROM 디스크들 (1040) 을 포함하는 모든 형태들의 비-휘발성 메모리를 포함한다. 상기한 것 중의 임의의 것은 애플리케이션-특정 집적 회로 (application-specific integrated circuit; ASIC) 들에 의해 보충될 수 있거나, 애플리케이션-특정 집적 회로 (ASIC) 내에 포함될 수 있다.
도 27 은 위에서 설명된 정확한 프로세스 핫스폿 검출 기법을 포함하는 예시적인 디지털 ASIC 설계 흐름의 간략화된 표현을 도시한다. 하이 레벨에서, 프로세스는 제품 아이디어와 함께 시작하고 (단계 (1500)), EDA 소프트웨어 설계 프로세스에서 실현된다 (단계 (1510)). 설계가 완결될 때, 그것은 테이프-아웃 (tape-out) 된다 (이벤트 (1540)). 테이프 아웃 후에, 제조 프로세스 (단계 (1550)) 및 패키징 및 조립 프로세스들 (단계 (1560)) 이 발생하여, 궁극적으로, 완성된 칩들로 귀착된다 (결과 (1570)).
EDA 소프트웨어 설계 프로세스 (단계 (1510)) 는 간략함을 위하여 선형 방식으로 도시된 다수의 단계들 (1512 내지 1530) 로 실제적으로 이루어진다. 실제적인 ASIC 설계 프로세스에서, 특정한 설계는 어떤 테스트들이 통과될 때까지 단계들을 통해 되돌아가야 할 수도 있다. 유사하게, 실제적인 설계 프로세스에서, 이 단계들은 상이한 순서들 및 조합들로 발생할 수도 있다. 그러므로, 이 설명은 특정한 ASIC 에 대한 특정한, 또는 추천된 설계 흐름으로서가 아니라, 맥락 및 일반적인 설명을 통해 제공된다.
EDA 소프트웨어 설계 프로세스 (단계 (1510)) 의 컴포넌트들/단계들의 간단한 설명이 지금부터 제공될 것이다. 하나의 실시형태에서, EDA 소프트웨어 설계 프로세스의 하나 이상의 단계들은 컴퓨터 (1511B) 에 의해 판독되는 컴퓨터-판독가능 매체 (1511A) 를 이용하여 구현될 수 있다. Astro, AstroRail, CustomSim, ESP, Hercules, IC Compiler, Magellan, Model Architect, Power Compiler, PrimeRail, Proteus, ProteusAF, PSMGen, Saber, StarRC, 및 System Studio 는 Synopsys, Inc. 의 상표들이고, CATS, DesignWare, Design Compiler, Formality, HSIM, Leda, NanoSim, Primetime, Syndicated, TetraMAX, VCS, 및 Vera 는 Synopsys, Inc. 의 등록 상표들이라는 것에 주목한다. 시스템 설계 (단계 (1512)): 설계자들은 그들이 구현하기를 원하는 기능성을 설명하고, 그들이 기능성, 검사 비용들, 등을 세분화하기 위하여 조건적 계획을 수행할 수 있다. 하드웨어-소프트웨어 아키텍처 파티셔닝은 이 스테이지에서 발생할 수 있다. 이 단계에서 이용될 수 있는, Synopsys, Inc. 로부터의 예시적인 EDA 소프트웨어 제품들은 Model ArchitectTM, SaberTM, System StudioTM, 및 DesignWare® 제품들을 포함한다.
로직 설계 및 기능 검증 (단계 (1514)): 이 스테이지에서, 시스템에서의 모듈들을 위한 VHDL 또는 베릴로그 (Verilog) 코드가 기입되고, 설계는 기능적 정확도에 대하여 검사된다. 더욱 구체적으로, 설계는 올바른 출력들을 생성한다는 것을 보장하기 위하여 검사된다. 이 단계에서 이용될 수 있는, Synopsys, Inc. 로부터의 예시적인 EDA 소프트웨어 제품들은 HSIM®, NanoSim®, CustomSimTM, VCS®, VERA®, DesignWare®, MagellanTM, Formality®, ESPTM 및 LEDA® 제품들을 포함한다.
테스트를 위한 합성 및 설계 (단계 (1516)): 여기서, VHDL/Verilog 는 넷리스트 (netlist) 로 변환된다. 넷리스트는 타겟 기술에 대하여 최적화될 수 있다. 추가적으로, 완성된 칩의 검사를 허용하기 위한 테스트들의 설계 및 구현이 발생한다. 이 단계에서 이용될 수 있는 Synopsys, Inc. 로부터의 예시적인 EDA 소프트웨어 제품들은 Design Compiler®, Power CompilerTM, Tetramax®, 및 DesignWare® 제품들을 포함한다.
넷리스트 검증 (단계 (1518)): 이 단계에서, 넷리스트는 타이밍 제약들과의 호환성에 대하여, 그리고 VHDL/Verilog 소스 코드와의 대응관계에 대하여 검사된다. 이 단계에서 이용될 수 있는 Synopsys, Inc. 로부터의 예시적인 EDA 소프트웨어 제품들은 Formality®, PrimeTimeTM, 및 VCS® 제품들을 포함한다.
설계 계획 (단계 (1520)): 여기서, 칩에 대한 전체적인 평면계획은 타이밍 및 상부-레벨 라우팅을 위하여 구성되고 분석된다. 이 단계에서 이용될 수 있는 Synopsys, Inc. 로부터의 예시적인 EDA 소프트웨어 제품들은 AstroTM 및 IC CompilerTM 제품들을 포함한다.
물리적 구현 (단계 (1522)): 배치 (회로 엘리먼트들의 위치결정) 및 라우팅 (동일한 것의 연결) 이 이 단계에서 발생한다. 이 단계에서 이용될 수 있는 Synopsys, Inc. 로부터의 예시적인 EDA 소프트웨어 제품들은 AstroTM 및 IC CompilerTM 제품들을 포함한다.
분석 및 추출 (단계 (1524)): 이 단계에서, 회로 기능은 트랜지스터 레벨에서 검증되고, 이것은 궁극적으로 조건적 세분화를 허용한다. 이 단계에서 이용될 수 있는 Synopsys, Inc. 로부터의 예시적인 EDA 소프트웨어 제품들은 AstroRailTM, PrimeRailTM, Primetime®, 및 Star RC/XTTM 제품들을 포함한다.
물리적 검증 (단계 (1526)): 이 단계에서는, 다양한 검사 기능들이 제조, 전기적 쟁점들, 리소그래픽 쟁점들, 및 회로부에 대한 정확함을 보장하기 위하여 수행된다. 이 단계에서 이용될 수 있는 Synopsys, Inc. 로부터의 예시적인 EDA 소프트웨어 제품들은 HerculesTM 제품을 포함한다. 하나의 실시형태에서, 임계적 설계 규칙 추출을 이용한 프로세스 핫스폿 검출 기법은 단계 (1526) 에서 이용될 수 있다.
해상도 증대 (단계 (1528)): 이 단계는 설계의 제조가능성을 개선시키기 위하여 레이아웃의 기하학적 조작들을 수반한다. 이 단계에서 이용될 수 있는 Synopsys, Inc. 로부터의 예시적인 EDA 소프트웨어 제품들은 ProteusTM, ProteusAFTM, 및 PSMGenTM 제품들을 포함한다. 하나의 실시형태에서, 임계적 설계 규칙 추출을 이용한 프로세스 핫스폿 검출 기법은 단계 (1528) 에서 이용될 수 있다.
마스크 데이터 준비 (단계 (1530)): 이 단계는 완성된 칩들을 생성하기 위하여 리소그래픽 이용을 위한 마스크들의 생성을 위한 "테이프-아웃" 데이터를 제공한다. 이 단계에서 이용될 수 있는 Synopsys, Inc. 로부터의 예시적인 EDA 소프트웨어 제품들은 CATS® 패밀리의 제품들을 포함한다. 하나의 실시형태에서, 임계적 설계 규칙 추출을 이용한 프로세스 핫스폿 검출 기법은 단계 (1530) 에서 이용될 수 있다.
위에서 표시된 바와 같이, 물리적 검증 단계 (1526), 해상도 증대 단계 (1528), 및 마스크 데이터 준비 단계 (1530) 는 패턴 정합으로부터 이익을 얻을 수 있다. 현재, 대부분의 패턴 정합은 각각의 패턴에 대한 DRC 규칙들을 수동으로 기입함으로써, 그리고 그 다음으로, 발생들을 발견하기 위하여 전체 레이아웃을 검색함으로써 행해진다. 유리하게도, 임계적 설계 규칙 추출을 이용하는 상기 설명된 프로세스 핫스폿 검출 기법을 이용함으로써, 패턴 정합이 자동화될 수 있고, 이것에 의하여, 제품 아이디어 (1500) 로부터 테이프-아웃 (1540) 까지의 턴어라운드 시간을 상당히 개선시킬 수 있다.
발명의 예시적인 실시형태들은 동반된 도면들을 참조하여 본원에서 상세하게 설명되었지만, 발명은 그 정밀한 실시형태들로 제한되지는 않는다는 것이 이해되어야 한다. 이에 따라, 발명의 범위는 다음의 청구항들 및 그 등가물들에 의해 정의된다.

Claims (23)

  1. 윈도우 경계 내에 배치된 적어도 하나의 불투명한 부분 및 적어도 하나의 투명한 부분과, 에지 공차 범위 및 비특정된 영역 중의 적어도 하나를 포함하는 핫스폿 패턴을 이용하여 리소그래픽 마스크를 생성하기 이전에 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법으로서,
    상기 방법은 프로세서에 의해 수행되고,
    상기 방법은,
    상기 핫스폿 패턴에 의해 정의된 대응하는 대안적인 블록 배열들에 기초하여 복수의 패턴 위상기하구조 (topology) 들을 생성하는 단계로서, 각각의 상기 패턴 위상기하구조는 고유한 패턴 배열로 배치된 복수의 블록 타일들 및 복수의 공간 타일들을 포함하는, 상기 복수의 패턴 위상기하구조들을 생성하는 단계;
    상기 복수의 패턴 위상기하구조들의 각각이 적어도 하나의 임계적 설계 규칙에 의해 표현되도록, 상기 복수의 패턴 위상기하구조들로부터 복수의 임계적 설계 규칙들을 추출하는 단계;
    상기 임계적 설계 규칙들을 적어도 2 개의 규칙 그룹들로 그룹화하는 단계로서, 제 1 의 상기 규칙 그룹은 상기 복수의 패턴 위상기하구조들의 각각으로부터의 제 1 임계적 설계 규칙들을 포함하고, 제 2 의 그룹은 상기 복수의 패턴 위상기하구조들 중의 적어도 일부로부터의 제 2 임계적 설계 규칙들을 포함하는, 상기 임계적 설계 규칙들을 적어도 2 개의 규칙 그룹들로 그룹화하는 단계;
    상기 제 1 임계적 설계 규칙들을 이용하여 상기 초기 레이아웃 패턴에 대해 제 1 DRC 프로세싱을 수행하는 단계;
    상기 제 1 DRC 프로세싱 동안에 적어도 하나의 제 1 임계적 설계 규칙을 충족시키는 것으로서 식별된 영역들을 오직 포함하기 위하여 상기 초기 레이아웃 패턴을 수정함으로써 감소된 레이아웃 패턴을 생성하는 단계; 및
    상기 제 2 임계적 설계 규칙들을 이용하여 상기 감소된 레이아웃 패턴에 대해 제 2 DRC 프로세싱을 수행하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  2. 제 1 항에 있어서,
    상기 복수의 패턴 위상기하구조들을 생성하는 단계는,
    상기 복수의 블록 타일들 및 상기 복수의 공간 타일들을 형성하기 위하여 상기 핫스폿 패턴을 슬라이싱하는 단계;
    에지 공차에 의해 정의된 각각의 에지 쌍에 대한 패턴 세트들을 생성하는 단계;
    각각의 패턴 세트를 패턴 서브세트들로 변환하는 단계; 및
    각각의 패턴 서브세트에 대한 대응하는 패턴 위상기하구조를 생성하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  3. 제 2 항에 있어서,
    상기 핫스폿 패턴을 슬라이싱하는 단계는 에지 공차에 의해 영향받는 패턴 구조를 슬라이싱할 때, 상기 에지 공차에 의해 영향받은 에지를 따른 상기 슬라이싱에 의해 생성된 2 개 이상의 다각형들을 바인딩 (binding) 하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  4. 제 2 항에 있어서,
    상기 패턴 세트들을 생성하는 단계 및 상기 각각의 패턴 세트를 패턴 서브세트들로 변환하는 단계는 모든-쌍 최소-범위 경로 (All-Pair Min-Range Path; APMRP) 알고리즘을 사용하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  5. 제 1 항에 있어서,
    상기 핫스폿 패턴은 상기 비특정된 영역을 포함하고, 상기 복수의 패턴 위상기하구조들을 열거하는 것은, 상기 비특정된 영역이 대응하는 상기 불투명한 부분들의 2 개의 대면하는 에지들 사이에 배치될 때에만, 상기 비특정된 영역에 대응하는 각각의 상기 생성된 패턴 위상기하구조의 영역들에서 하나 이상의 경계 타일들을 배정하는 것을 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  6. 제 1 항에 있어서,
    상기 복수의 임계적 설계 규칙들을 추출하는 단계는 복수의 열거된 패턴 위상기하구조들의 각각에서 상기 복수의 블록 타일들 및 상기 복수의 공간 타일들의 위치 관계들을 결정하는 단계, 상기 결정된 위치 관계들에 의해 정의된 임계적 특징부들을 식별하기 위하여 상기 열거된 패턴 위상기하구조들의 각각에 복수의 추출 규칙들을 적용하는 단계, 및 그 다음으로, 상기 식별된 임계적 특징부들의 각각에 대한 임계적 설계 규칙을 생성하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  7. 제 6 항에 있어서,
    상기 복수의 열거된 패턴 위상기하구조들의 각각에서 상기 복수의 블록 타일들 및 상기 복수의 공간 타일들의 위치 관계들을 결정하는 단계는 상기 블록 타일들 및 공간 타일들의 인접한 쌍들 사이의 위치 관련성들을 수량화하는 지향된 에지들을 생성하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  8. 제 6 항에 있어서,
    상기 복수의 임계적 설계 규칙들을 추출하는 단계는 복수의 수정된 전이 폐쇄 그래프 (modified transitive closure graph; MTCG) 들을 생성하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  9. 제 6 항에 있어서,
    상기 복수의 추출 규칙들을 적용하는 단계는 상기 블록 타일이 상기 패턴의 윈도우 경계를 터치하지 않을 때에만, 볼록 타일의 폭 및 높이를 측정하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  10. 제 6 항에 있어서,
    상기 복수의 추출 규칙들을 적용하는 단계는 상기 패턴의 상기 윈도우 경계를 터치하지 않고 2 개의 블록 타일들 사이에 위치되는 공간 타일의 폭 및 높이를 측정함으로써, 2 개의 인접한 블록 타일들 사이의 거리를 결정하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  11. 제 10 항에 있어서,
    상기 복수의 추출 규칙들을 적용하는 단계는 블록 타일들에 의해 형성된 2 개의 볼록한 코너들 사이의 거리를 측정하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  12. 제 6 항에 있어서,
    상기 복수의 추출 규칙들을 적용하는 단계는 상기 윈도우 경계를 터치하는 단일 에지를 가지는 공간 타일 또는 블록 타일을 식별하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  13. 제 6 항에 있어서,
    상기 복수의 추출 규칙들을 적용하는 단계는 상기 윈도우 경계를 터치하는 정확하게 2 개의 에지들을 가지는 공간 타일을 식별하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  14. 제 6 항에 있어서,
    상기 복수의 추출 규칙들을 적용하는 단계는 경계 타일을 터치하는 적어도 하나의 에지를 가지는 각각의 공간 타일을 식별하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  15. 제 6 항에 있어서,
    각각의 상기 식별된 임계적 특징부에 대한 상기 임계적 설계 규칙을 생성하는 단계는 패턴 윈도우 내의 상기 각각의 식별된 임계적 특징부의 크기 값들을 포함하는 규칙 직사각형을 이용하여 상기 각각의 식별된 임계적 특징부를 수량화하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  16. 제 15 항에 있어서,
    상기 임계적 설계 규칙들을 순서화하는 것은 다수의 패턴 위상기하구조들로 생성된 유사한 규칙 직사각형들을 단일 임계적 설계 규칙에 배정하는 것과, 가장 높은 우선순위를, 가장 큰 수의 패턴 위상기하구조들을 커버하는 임계적 설계 규칙에 배정하는 것을 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  17. 제 1 항에 있어서,
    상기 복수의 임계적 설계 규칙들을 추출하는 단계는 각각의 임계적 설계 규칙이 연관된 추출 규칙에 따라 추출되도록, 복수의 추출 규칙들을 상기 패턴 위상기하구조들의 각각에 적용하는 단계를 포함하고, 그리고
    상기 임계적 설계 규칙들을 순서화하는 것은 그 연관된 상기 추출 규칙에 기초하여 우선순위를 각각의 임계적 설계 규칙에 배정하는 것을 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  18. 제 1 항에 있어서,
    상기 제 1 DRC 프로세싱을 수행하는 단계는 상기 핫스폿 패턴에 대한 8 개의 가능한 배향들을 커버하는 2 개의 실행세트 파일들을 생성하는 단계를 포함하고, 상기 제 1 실행세트 파일은 제 1 대표적인 배향들을 가지는 상기 임계적 설계 규칙들을 포함하고, 상기 제 2 실행세트 파일은 상기 제 1 대표적인 배향들에 90° 회전되는 제 2 대표적인 배향들을 가지는 상기 임계적 설계 규칙들을 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  19. 제 1 항에 있어서,
    상기 감소된 레이아웃 패턴을 생성하는 단계는,
    상기 임계적 설계 규칙이 임의의 배향으로 확대된 패턴 윈도우 내부에 배치되도록, 임계적 설계 규칙에 대한 확대된 패턴 윈도우를 결정하는 단계,
    제 1 DRC 프로세싱 동안, 상기 임계적 설계 규칙과 정합하는 상기 초기 레이아웃 패턴에서 레이아웃 구조를 식별하는 단계, 및
    상기 감소된 레이아웃 패턴을,
    상기 확대된 패턴 윈도우에 대응하는 상기 식별된 레이아웃 구조 주위의 검색 영역을 묘사함으로써, 그리고
    묘사된 상기 검색 영역의 외부에 위치된 레이아웃 구조들을 제거함으로써, 생성하는 단계를 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  20. 제 1 항에 있어서,
    각각의 상기 패턴 위상구조와 연관된 임계적 설계 규칙들 사이의 위치 관계들을 식별하는 적어도 하나의 데이터 스트링을 생성하는 단계; 및
    상기 제 1 및 제 2 DRC 프로세싱 동안에 식별된 정합된 임계적 설계 규칙들 사이의 위치 관계들을 분석함으로써, 그리고 상기 적어도 하나의 데이터 스트링의 가장 긴 공통 서브시퀀스를 식별함으로써, 상기 초기 레이아웃 패턴에서 후보 핫스폿 영역들을 식별하는 단계를 더 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  21. 제 20 항에 있어서,
    상기 식별된 후보 로케이션이 대응하는 열거된 패턴 위상기하구조 내에 포함되지 않는 여분의 레이아웃 구조를 포함하는지를 결정하는 단계, 및
    상기 여분의 레이아웃 구조가 상기 핫스폿 패턴의 상기 비특정된 영역 내부에 완전히 위치되는지를 결정하는 단계를 더 포함하는, 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법.
  22. 핫스폿 검출을 제공하기 위한 컴퓨터-실행가능한 명령들을 저장하는 비-일시적 컴퓨터-판독가능 매체로서,
    상기 명령들은, 프로세서에 의해 실행될 때, 상기 프로세서로 하여금, 윈도우 경계 내에 배치된 적어도 하나의 불투명한 부분 및 적어도 하나의 투명한 부분과, 에지 공차 범위 및 비특정된 영역 중의 적어도 하나를 포함하는 핫스폿 패턴을 이용하여 리소그래픽 마스크를 생성하기 이전에 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법을 포함하는 프로세스를 실행하게 하고,
    상기 방법은:
    상기 핫스폿 패턴에 의해 정의된 대응하는 대안적인 블록 배열들에 기초하여 복수의 패턴 위상기하구조들을 생성하는 단계로서, 각각의 상기 패턴 위상기하구조는 고유한 패턴 배열로 배치된 복수의 블록 타일들 및 복수의 공간 타일들을 포함하는, 상기 복수의 패턴 위상기하구조들을 생성하는 단계;
    상기 복수의 패턴 위상기하구조들의 각각이 적어도 하나의 임계적 설계 규칙에 의해 표현되도록, 상기 복수의 패턴 위상기하구조들로부터 복수의 임계적 설계 규칙들을 추출하는 단계;
    상기 임계적 설계 규칙들을 적어도 2 개의 규칙 그룹들로 그룹화하는 단계로서, 제 1 의 상기 규칙 그룹은 상기 복수의 패턴 위상기하구조들의 각각으로부터의 제 1 임계적 설계 규칙들을 포함하고, 제 2 의 그룹은 상기 복수의 패턴 위상기하구조들 중의 적어도 일부로부터의 제 2 임계적 설계 규칙들을 포함하는, 상기 임계적 설계 규칙들을 적어도 2 개의 규칙 그룹들로 그룹화하는 단계;
    상기 제 1 임계적 설계 규칙들을 이용하여 상기 초기 레이아웃 패턴에 대해 제 1 DRC 프로세싱을 수행하는 단계;
    상기 제 1 DRC 프로세싱 동안에 적어도 하나의 제 1 임계적 설계 규칙을 충족시키는 것으로서 식별된 영역들을 오직 포함하기 위하여 상기 초기 레이아웃 패턴을 수정함으로써 감소된 레이아웃 패턴을 생성하는 단계; 및
    상기 제 2 임계적 설계 규칙들을 이용하여 상기 감소된 레이아웃 패턴에 대해 제 2 DRC 프로세싱을 수행하는 단계를 포함하는, 비-일시적 컴퓨터-판독가능 매체.
  23. 시스템으로서,
    윈도우 경계 내에 배치된 적어도 하나의 불투명한 부분 및 적어도 하나의 투명한 부분과, 에지 공차 범위 및 비특정된 영역 중의 적어도 하나를 포함하는 핫스폿 패턴을 이용하여 리소그래픽 마스크를 생성하기 이전에 초기 레이아웃 패턴에서 실제적인 핫스폿 영역들을 검출하기 위한 방법을 포함하는 프로세스를 실행하도록 구성된 프로세서를 포함하고,
    상기 방법은:
    상기 핫스폿 패턴에 의해 정의된 대응하는 대안적인 블록 배열들에 기초하여 복수의 패턴 위상기하구조들을 생성하는 단계로서, 각각의 상기 패턴 위상기하구조는 고유한 패턴 배열로 배치된 복수의 블록 타일들 및 복수의 공간 타일들을 포함하는, 상기 복수의 패턴 위상기하구조들을 생성하는 단계;
    상기 복수의 패턴 위상기하구조들의 각각이 적어도 하나의 임계적 설계 규칙에 의해 표현되도록, 상기 복수의 패턴 위상기하구조들로부터 복수의 임계적 설계 규칙들을 추출하는 단계;
    상기 임계적 설계 규칙들을 적어도 2 개의 규칙 그룹들로 그룹화하는 단계로서, 제 1 의 상기 규칙 그룹은 상기 복수의 패턴 위상기하구조들의 각각으로부터의 제 1 임계적 설계 규칙들을 포함하고, 제 2 의 그룹은 상기 복수의 패턴 위상기하구조들 중의 적어도 일부로부터의 제 2 임계적 설계 규칙들을 포함하는, 상기 임계적 설계 규칙들을 적어도 2 개의 규칙 그룹들로 그룹화하는 단계;
    상기 제 1 임계적 설계 규칙들을 이용하여 상기 초기 레이아웃 패턴에 대해 제 1 DRC 프로세싱을 수행하는 단계;
    상기 제 1 DRC 프로세싱 동안에 적어도 하나의 제 1 임계적 설계 규칙을 충족시키는 것으로서 식별된 영역들을 오직 포함하기 위하여 상기 초기 레이아웃 패턴을 수정함으로써 감소된 레이아웃 패턴을 생성하는 단계; 및
    상기 제 2 임계적 설계 규칙들을 이용하여 상기 감소된 레이아웃 패턴에 대해 제 2 DRC 프로세싱을 수행하는 단계를 포함하는, 시스템.
KR1020177014641A 2014-10-30 2015-10-20 에지 공차 및 불완전한 사양을 고려한 drc-기반 핫스폿 검출 KR102401892B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/528,213 US9594867B2 (en) 2014-10-30 2014-10-30 DRC-based hotspot detection considering edge tolerance and incomplete specification
US14/528,213 2014-10-30
PCT/US2015/056319 WO2016069317A1 (en) 2014-10-30 2015-10-20 Drc-based hotspot detection considering edge tolerance and incomplete specification

Publications (2)

Publication Number Publication Date
KR20170078775A KR20170078775A (ko) 2017-07-07
KR102401892B1 true KR102401892B1 (ko) 2022-05-24

Family

ID=55852945

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177014641A KR102401892B1 (ko) 2014-10-30 2015-10-20 에지 공차 및 불완전한 사양을 고려한 drc-기반 핫스폿 검출

Country Status (3)

Country Link
US (1) US9594867B2 (ko)
KR (1) KR102401892B1 (ko)
WO (1) WO2016069317A1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160092045A1 (en) 2014-09-30 2016-03-31 Splunk, Inc. Event View Selector
US10483081B2 (en) * 2014-10-22 2019-11-19 Kla-Tencor Corp. Self directed metrology and pattern classification
US9977803B2 (en) 2015-01-30 2018-05-22 Splunk Inc. Column-based table manipulation of event data
US11615073B2 (en) 2015-01-30 2023-03-28 Splunk Inc. Supplementing events displayed in a table format
US11544248B2 (en) 2015-01-30 2023-01-03 Splunk Inc. Selective query loading across query interfaces
US10726037B2 (en) * 2015-01-30 2020-07-28 Splunk Inc. Automatic field extraction from filed values
US9922084B2 (en) 2015-01-30 2018-03-20 Splunk Inc. Events sets in a visually distinct display format
US9842160B2 (en) * 2015-01-30 2017-12-12 Splunk, Inc. Defining fields from particular occurences of field labels in events
US11442924B2 (en) 2015-01-30 2022-09-13 Splunk Inc. Selective filtered summary graph
US10915583B2 (en) 2015-01-30 2021-02-09 Splunk Inc. Suggested field extraction
US10013454B2 (en) 2015-01-30 2018-07-03 Splunk Inc. Text-based table manipulation of event data
US10061824B2 (en) 2015-01-30 2018-08-28 Splunk Inc. Cell-based table manipulation of event data
US9916346B2 (en) 2015-01-30 2018-03-13 Splunk Inc. Interactive command entry list
US9922082B2 (en) 2015-01-30 2018-03-20 Splunk Inc. Enforcing dependency between pipelines
US10783311B2 (en) 2016-10-31 2020-09-22 Synopsys, Inc. DRC processing tool for early stage IC layout designs
US11176307B2 (en) * 2016-12-01 2021-11-16 Asml Netherlands B.V. Method and system for pattern configuration
US11113445B2 (en) * 2017-09-20 2021-09-07 Siemens Industry Software Inc. Hotspot detection based on litho-aware machine learning
US10866508B2 (en) * 2018-05-18 2020-12-15 Taiwan Semiconductor Manufacturing Company Ltd. Method for manufacturing photomask and semiconductor manufacturing method thereof
US10539881B1 (en) * 2018-09-24 2020-01-21 International Business Machines Corporation Generation of hotspot-containing physical design layout patterns
TWI722562B (zh) 2018-09-24 2021-03-21 荷蘭商Asml荷蘭公司 自圖案化製程之圖案組判定候選圖案的方法
KR102596609B1 (ko) 2018-11-16 2023-10-31 삼성전자주식회사 반도체 장치의 제조 방법 및 레이아웃 디자인 시스템
US11321498B2 (en) * 2020-02-28 2022-05-03 X Development Llc Techniques for transforming arbitrary designs into manufacturable designs by removing forbidden patterns
CN113391516B (zh) * 2020-03-13 2022-03-04 长鑫存储技术有限公司 一种光学临近效应修正方法、装置、设备及介质
US11748533B2 (en) 2020-06-10 2023-09-05 Texas Instruments Incorporated Programmatic circuit partitioning and topology identification
US11003828B1 (en) * 2020-08-03 2021-05-11 Siemens Industry Software Inc. System and method for layout analysis using point of interest patterns and properties
US11934764B2 (en) * 2021-06-29 2024-03-19 Advanced Micro Devices, Inc. Routing and manufacturing with a minimum area metal structure
WO2023141080A1 (en) * 2022-01-19 2023-07-27 D2S, Inc. Using machine-trained network to perform drc check
CN118135261B (zh) * 2024-05-06 2024-08-06 浙江大学 一种超大规模版图的图形匹配方法及系统

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI252516B (en) 2002-03-12 2006-04-01 Toshiba Corp Determination method of process parameter and method for determining at least one of process parameter and design rule
US7065730B2 (en) * 2003-04-17 2006-06-20 International Business Machines Corporation Porosity aware buffered steiner tree construction
JP2007536581A (ja) 2004-05-07 2007-12-13 メンター・グラフィクス・コーポレーション プロセス変動バンドを用いた集積回路レイアウト設計法
US7536664B2 (en) 2004-08-12 2009-05-19 International Business Machines Corporation Physical design system and method
US7653892B1 (en) 2004-08-18 2010-01-26 Cadence Design Systems, Inc. System and method for implementing image-based design rules
US7284214B2 (en) 2004-10-22 2007-10-16 Mentor Graphics Corporation In-line XOR checking of master cells during integrated circuit design rule checking
US7703067B2 (en) 2006-03-31 2010-04-20 Synopsys, Inc. Range pattern definition of susceptibility of layout regions to fabrication issues
US7276435B1 (en) * 2006-06-02 2007-10-02 Freescale Semiconductor, Inc. Die level metal density gradient for improved flip chip package reliability
US7886262B2 (en) * 2006-08-15 2011-02-08 Chew Marko P System and method of maximizing integrated circuit manufacturing yield with fabrication process simulation driven layout optimization
US20080072182A1 (en) * 2006-09-19 2008-03-20 The Regents Of The University Of California Structured and parameterized model order reduction
US7571404B2 (en) * 2006-12-05 2009-08-04 Freescale Semiconductor, Inc. Fast on-chip decoupling capacitance budgeting method and device for reduced power supply noise
US7698677B2 (en) * 2007-03-31 2010-04-13 Freescale Semiconductor, Inc. On-chip decoupling capacitance and power/ground network wire co-optimization to reduce dynamic noise
US20100185994A1 (en) 2008-08-14 2010-07-22 Pikus Fedor G Topological Pattern Matching
US8276107B2 (en) * 2010-10-18 2012-09-25 Algotochip Corporation Integrated data model based framework for driving design convergence from architecture optimization to physical design closure
CN103688261A (zh) * 2011-05-19 2014-03-26 赛智设计自动化有限公司 检查集成电路布图中基准图案的实例的方法、系统和计算机程序产品
US8601419B1 (en) * 2012-11-05 2013-12-03 Synopsys, Inc. Accurate process hotspot detection using critical design rule extraction
US8839171B1 (en) * 2013-03-31 2014-09-16 Atrenta, Inc. Method of global design closure at top level and driving of downstream implementation flow

Also Published As

Publication number Publication date
US20160125120A1 (en) 2016-05-05
WO2016069317A1 (en) 2016-05-06
KR20170078775A (ko) 2017-07-07
US9594867B2 (en) 2017-03-14

Similar Documents

Publication Publication Date Title
KR102401892B1 (ko) 에지 공차 및 불완전한 사양을 고려한 drc-기반 핫스폿 검출
US8601419B1 (en) Accurate process hotspot detection using critical design rule extraction
US8037428B2 (en) Method and system for post-routing lithography-hotspot correction of a layout
US9613177B2 (en) Methods of generating circuit layouts that are to be manufactured using SADP routing techniques
US7503029B2 (en) Identifying layout regions susceptible to fabrication issues by using range patterns
US20180181698A1 (en) Integrated circuits having in-situ constraints
US7703067B2 (en) Range pattern definition of susceptibility of layout regions to fabrication issues
US9098649B2 (en) Distance metric for accurate lithographic hotspot classification using radial and angular functions
WO2018081667A1 (en) Drc processing tool for early stage ic layout designs
US20090271749A1 (en) Pattern-clip-based hotspot database system for layout verification
US11003828B1 (en) System and method for layout analysis using point of interest patterns and properties
CN114444434A (zh) 预测难以修复的设计规则检查违规的方法与系统
Gupta et al. Timing yield-aware color reassignment and detailed placement perturbation for bimodal CD distribution in double patterning lithography
US20240126973A1 (en) Post-Routing Congestion Optimization
US8452075B2 (en) Range pattern matching for hotspots containing vias and incompletely specified range patterns
US8910090B2 (en) Methods involving pattern matching to identify and resolve potential non-double-patterning-compliant patterns in double patterning applications
US20230376660A1 (en) Integrated circuit design method, system and computer program product
US7590955B1 (en) Method and system for implementing layout, placement, and routing with merged shapes
US8132141B2 (en) Method and apparatus for generating a centerline connectivity representation
US7721235B1 (en) Method and system for implementing edge optimization on an integrated circuit design
US20110041111A1 (en) Method and apparatus for generating a memory-efficient representation of routing data
Yuan et al. Technology migration technique for designs with strong RET-driven layout restrictions
Gao et al. Lithography hotspot detection and mitigation in nanometer VLSI
Mirsaeedi EDA Solutions for Double Patterning Lithography
Abou Ghaida Design Enablement and Design-Centric Assessment of Future Semiconductor Technologies

Legal Events

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