KR20160126664A - 레이아웃 분리 방법 및 레이아웃 분리 시스템 - Google Patents

레이아웃 분리 방법 및 레이아웃 분리 시스템 Download PDF

Info

Publication number
KR20160126664A
KR20160126664A KR1020150058010A KR20150058010A KR20160126664A KR 20160126664 A KR20160126664 A KR 20160126664A KR 1020150058010 A KR1020150058010 A KR 1020150058010A KR 20150058010 A KR20150058010 A KR 20150058010A KR 20160126664 A KR20160126664 A KR 20160126664A
Authority
KR
South Korea
Prior art keywords
subgraph
graph
nodes
separation
mpt
Prior art date
Application number
KR1020150058010A
Other languages
English (en)
Other versions
KR102338365B1 (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 삼성전자주식회사
Priority to KR1020150058010A priority Critical patent/KR102338365B1/ko
Priority to US15/135,041 priority patent/US9874810B2/en
Publication of KR20160126664A publication Critical patent/KR20160126664A/ko
Application granted granted Critical
Publication of KR102338365B1 publication Critical patent/KR102338365B1/ko

Links

Images

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/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
    • G06F17/5081
    • 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
    • G06F17/5068
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/30Polynomial surface description

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)

Abstract

레이아웃 분리 방법 및 레이아웃 분리 시스템이 제공된다. 레이아웃 분리 방법은, 복수의 폴리곤(polygon)을 포함하는 레이아웃 디자인(layout design)으로부터 복수의 노드(node) 및 에지(edge)를 포함하는 그래프(graph)를 생성하고, 노드는 레이아웃 디자인의 폴리곤에 대응되고, 에지는 복수의 노드 중 서로 미리 정해진 최소 거리보다 가깝게 배치된 2 개의 노드를 식별하고, 복수의 노드의 차수(degree)와 미리 정해진 기준 값을 비교하고, 복수의 노드 중 그 차수가 기준 값을 초과하는 타겟 노드를 선정하고, 그래프로부터, 타겟 노드를 기준으로 분할되는 제1 서브 그래프 및 제2 서브 그래프를 식별하고, 제1 서브 그래프 및 제2 서브 그래프에 대해 MPT 분리(Multi Patterning Technology decomposition)를 각각 수행하여 제1 결과 및 제2 결과를 획득하고, 제1 결과 및 제2 결과를 결합하여, 레이아웃 디자인의 일부에 대응하는 제1 마스크 레이아웃 데이터 및 레이아웃 디자인의 다른 일부에 대응하는 제2 마스크 레이아웃 데이터를 생성하는 것을 포함한다.

Description

레이아웃 분리 방법 및 레이아웃 분리 시스템{LAYOUT DECOMPOSITION METHOD AND LAYOUT DECOMPOSITION SYSTEM}
본 발명은 레이아웃 분리 방법 및 레이아웃 분리 시스템에 관한 것이다.
반도체 장치의 제조 공정은 점점 더 미세화되고, 집적화되고 있다. 이에 따라, 20nm 이하의 공정에서는 노광 공정의 한계에 따라 극자외선(Extreme Ultra Violet, EUV) 대체 기술로서 DPT(Double Patterning Technology) 혹은 TPT(Triple Patterning Technology)를 비롯한 MPT(Multi Patterning Technology)가 사용되고 있다. MPT를 수행하기 위한 리소그래피(lithography)용 마스크를 효율적으로 제조하는 것이 요구된다.
본 발명이 해결하려는 과제는 MPT 분리(Multi Patterning Technology decomposition)를 신속하고 효율적으로 처리할 수 있는 레이아웃 분리 방법을 제공하는 것이다.
본 발명이 해결하려는 다른 과제는 MPT 분리(Multi Patterning Technology decomposition)를 신속하고 효율적으로 처리할 수 있는 레이아웃 분리 시스템을 제공하는 것이다.
본 발명이 해결하려는 과제는 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제는 아래의 기재로부터 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 레이아웃 분리 방법은, 복수의 폴리곤(polygon)을 포함하는 레이아웃 디자인(layout design)으로부터 복수의 노드(node) 및 에지(edge)를 포함하는 그래프(graph)를 생성하고, 노드는 레이아웃 디자인의 폴리곤에 대응되고, 에지는 복수의 노드 중 서로 미리 정해진 최소 거리보다 가깝게 배치된 2 개의 노드를 식별하고, 복수의 노드의 차수(degree)와 미리 정해진 기준 값을 비교하고, 복수의 노드 중 그 차수가 기준 값을 초과하는 타겟 노드를 선정하고, 그래프로부터, 타겟 노드를 기준으로 분할되는 제1 서브 그래프 및 제2 서브 그래프를 식별하고, 제1 서브 그래프 및 제2 서브 그래프에 대해 MPT 분리(Multi Patterning Technology decomposition)를 각각 수행하여 제1 결과 및 제2 결과를 획득하고, 제1 결과 및 제2 결과를 결합하여, 레이아웃 디자인의 일부에 대응하는 제1 마스크 레이아웃 데이터 및 레이아웃 디자인의 다른 일부에 대응하는 제2 마스크 레이아웃 데이터를 생성하는 것을 포함한다.
본 발명의 몇몇의 실시예에서, 상기 제1 서브 그래프 및 상기 제2 서브 그래프에 대해 MPT 분리를 각각 수행하는 것은, 상기 제1 서브 그래프에서 동일한 에지를 공유하는 2 개의 노드에 대해 서로 다른 컬러를 부여하고, 상기 제2 서브 그래프에서 동일한 에지를 공유하는 2 개의 노드에 대해 서로 다른 컬러를 부여하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 제1 서브 그래프 및 상기 제2 서브 그래프에 대해 MPT 분리를 각각 수행하는 것은, 상기 제1 서브 그래프에 포함되는 타겟 노드에 제1 컬러를 부여하고, 상기 제2 서브 그래프에 포함되는 타겟 노드에 제2 컬러를 부여하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 제1 서브 그래프 및 상기 제2 서브 그래프에 대해 MPT 분리를 각각 수행하는 것은, 상기 제1 서브 그래프에 포함되는 타겟 노드와 상기 제2 서브 그래프에 포함되는 타겟 노드에 동일한 컬러를 부여하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 타겟 노드를 기준으로 분할되는 제1 서브 그래프 및 제2 서브 그래프를 식별하는 것은, 식별된 상기 제1 서브 그래프 및 상기 제2 서브 그래프를 메모리 또는 스토리지 장치에 저장하는 것을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 제1 결과 및 제2 결과를 결합하여, 상기 레이아웃 디자인의 일부에 대응하는 제1 마스크 레이아웃 데이터 및 상기 레이아웃 디자인의 다른 일부에 대응하는 제2 마스크 레이아웃 데이터를 생성하는 것은, 상기 제1 마스크 레이아웃 데이터 및 상기 제2 마스크 레이아웃 데이터를 일시적인(temporary) 컴퓨터로 판독 가능한 매체에 저장하는 것을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 제1 결과 및 제2 결과를 결합하여, 상기 레이아웃 디자인의 일부에 대응하는 제1 마스크 레이아웃 데이터 및 상기 레이아웃 디자인의 다른 일부에 대응하는 제2 마스크 레이아웃 데이터를 생성하는 것은, 상기 제1 마스크 레이아웃 데이터 및 상기 제2 마스크 레이아웃 데이터를 비일시적인(non-transitory) 컴퓨터로 판독 가능한 매체에 저장하는 것을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 레이아웃 분리 방법은, 상기 비일시적인 컴퓨터로 판독 가능한 매체에 저장된 상기 제1 마스크 레이아웃 데이터 및 상기 제2 마스크 레이아웃 데이터를 이용하여 제1 마스크 및 제2 마스크를 형성하고, 상기 제1 마스크 및 상기 제2 마스크를 이용하여 반도체 웨이퍼에 MPT 리소그래피(lithography) 공정을 수행하는 것을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 제1 서브 그래프 및 상기 제2 서브 그래프에 대해 MPT 분리를 각각 수행하는 것은, 상기 제1 서브 그래프에 대해 MPT 분리를 수행하는 것과 병렬적으로 상기 제2 서브 그래프에 대해 MPT 분리를 수행하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 제1 서브 그래프에 대한 MPT 분리는 제1 스레드에 의해 수행되고, 상기 제2 서브 그래프에 대한 MPT 분리는 제2 스레드에 의해 수행될 수 있다.
본 발명의 몇몇의 실시예에서, 상기 제1 스레드는 제1 프로세싱 유닛 상에서 실행되고, 상기 제2 스레드는 제2 프로세싱 유닛 상에서 실행될 수 있다.
본 발명의 몇몇의 실시예에서, 상기 타겟 노드는 상기 레이아웃 디자인의 파워 레일(power rail)에 대응하는 노드를 포함할 수 있다.
상기 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 레이아웃 분리 방법은, 복수의 폴리곤(polygon)을 포함하는 레이아웃 디자인(layout design)을 비일시적인(non-transitory) 컴퓨터로 판독 가능한 매체로부터 인출하고, 레이아웃 디자인으로부터 복수의 노드(node) 및 에지(edge)를 포함하는 그래프(graph)를 생성하여 메모리에 저장하고, 노드는 레이아웃 디자인의 폴리곤에 대응되고, 에지는 복수의 노드 중 서로 미리 정해진 최소 거리보다 가깝게 배치된 2 개의 노드를 식별하고, 그래프를 분석하여 차수(degree)가 미리 정해진 기준 값을 초과하는 노드의 리스트를 생성하고, 리스트에 포함되는 노드를 기준으로 그래프를 복수의 서브 그래프로 분할하고, 복수의 서브 그래프 각각에 대해 MPT 분리(Multi Patterning Technology decomposition)를 수행하여 복수의 컬러링(coloring) 결과를 획득하고, 복수의 컬러링 결과를 결합하여 그래프를 컬러링하고, 그래프의 노드에 부여된 컬러에 따라 복수의 폴리곤을 복수의 그룹으로 분류하는 것을 포함한다.
본 발명의 몇몇의 실시예에서, 상기 그래프를 분석하여 차수(degree)가 미리 정해진 기준 값을 초과하는 상기 노드의 리스트를 생성하는 것은, 상기 그래프를 제1 순회(traverse)하여 차수(degree)가 미리 정해진 기준 값을 초과하는 노드의 리스트를 생성하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 리스트에 포함되는 노드를 기준으로 상기 그래프를 복수의 서브 그래프로 분할하는 것은, 상기 그래프를 제2 순회하여 상기 그래프의 각각의 노드와 상기 리스트를 비교하는 것을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 복수의 서브 그래프 각각에 대해 MPT 분리(Multi Patterning Technology decomposition)를 수행하여 복수의 컬러링 결과를 획득하는 것은, 상기 복수의 서브 그래프 각각에 대해, 상기 서브 그래프에서 동일한 에지를 공유하는 2 개의 노드에 대해 서로 다른 컬러를 부여하고, 상기 서브 그래프의 노드와 상기 노드에 부여된 컬러의 대응 결과를 컬러링 결과로서 획득하는 것을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 복수의 서브 그래프 각각에 대해, 상기 서브 그래프에서 동일한 에지를 공유하는 2 개의 노드에 대해 서로 다른 컬러를 부여하는 것은, 상기 복수의 서브 그래프의 노드 중 상기 리스트에 포함되는 노드에 동일한 컬러를 부여하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 복수의 서브 그래프는 제1 서브 그래프 및 제2 서브 그래프를 포함하고, 상기 복수의 서브 그래프 각각에 대해 MPT 분리(Multi Patterning Technology decomposition)를 수행하여 복수의 컬러링 결과를 획득하는 것은, 제1 프로세싱 유닛을 이용하여 상기 제1 서브 그래프에 대해 MPT 분리를 수행하고, 획득한 제1 컬러링 결과를 제1 메모리 영역에 저장하고, 상기 제1 프로세싱 유닛과 병렬로 동작하는 제2 프로세싱 유닛을 이용하여 제2 서브 그래프에 대해 MPT 분리를 수행하고, 획득한 제2 컬러링 결과를 제2 메모리 영역에 저장하고, 상기 복수의 컬러링 결과를 결합하여 상기 그래프를 컬러링하는 것은, 상기 제1 메모리 영역에 저장된 상기 제1 컬러링 결과 및 상기 제2 메모리 영역에 저장된 상기 제2 컬러링 결과를 리드하고, 리드한 상기 제1 컬러링 결과 및 상기 제2 컬러링 결과를 결합하여 상기 그래프에 대한 컬러링 결과를 제3 메모리 영역에 저장하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 그래프의 노드에 부여된 컬러에 따라 상기 복수의 폴리곤을 복수의 그룹으로 분류한 후, 상기 레이아웃 디자인에 대해 추가적인 디자인 룰 체크(Design Rule Check)를 수행하고, 상기 디자인 룰 체크가 완료된 상기 레이아웃 디자인을 레이아웃 데이터 파일로서 비일시적인(non-transitory) 컴퓨터로 판독 가능한 매체에 저장하는 것을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 복수의 그룹은 복수의 MPT 리소그래피(lithography) 마스크에 대응되고, 각각의 상기 그룹에 포함되는 폴리곤은 각각의 상기 MPT 리소그래피 마스크의 패턴에 대응될 수 있다.
상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 레이아웃 분리 시스템은, 하나 이상의 프로세서; 복수의 폴리곤(polygon)을 포함하는 레이아웃 디자인(layout design)으로부터 복수의 노드(node) 및 에지(edge)를 포함하는 그래프(graph)를 생성하는 그래프 생성 모듈; 그래프를 분석하여 차수(degree)가 미리 정해진 기준 값을 초과하는 노드를 기준으로 그래프를 복수의 서브 그래프로 분할하는 그래프 분할 모듈; 복수의 서브 그래프 각각에 대해 MPT 분리(Multi Patterning Technology decomposition)를 수행하여 복수의 컬러링 결과를 획득하는 분리 모듈을 포함하고, 노드는 레이아웃 디자인의 폴리곤에 대응되고, 에지는 복수의 노드 중 서로 미리 정해진 최소 거리보다 가깝게 배치된 2 개의 노드를 식별하고, 분리 모듈은 복수의 컬러링 결과를 결합하여 그래프를 컬러링한 후, 그래프의 노드에 부여된 컬러에 따라 복수의 폴리곤을 복수의 그룹으로 분류한다.
본 발명의 몇몇의 실시예에서, 상기 레이아웃 분리 시스템은, 상기 레이아웃 디자인에 대해 추가적인 디자인 룰 체크(Design Rule Check)를 수행하는 디자인 룰 체크 모듈을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 레이아웃 분리 시스템은, 상기 복수의 그룹에 대응되는 복수의 MPT 리소그래피(lithography) 마스크를 생성하는 마스크 생성 모듈을 더 포함할 수 있다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
도 1은 본 발명의 일 실시예에 따른 레이아웃 분리 시스템을 설명하기 위한 도면이다.
도 2는 레이아웃 디자인에 포함되는 스탠다드 셀(standard cell)을 설명하기 위한 도면이다.
도 3은 복수의 폴리곤(polygon)을 포함하는 레이아웃 디자인(layout design)을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 레이아웃 분리 방법에 따라 그래프(graph)를 생성하는 것을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 레이아웃 분리 방법에 따라 그래프를 분할하는 것을 설명하기 위한 도면이다.
도 6은 본 발명의 다른 실시예에 따른 레이아웃 분리 방법에 따라 그래프에 대해 컬러링(coloring)을 하는 것을 설명하기 위한 도면이다.
도 7은 본 발명의 다른 실시예에 따른 레이아웃 분리 시스템을 설명하기 위한 도면이다.
도 8은 본 발명의 또 다른 실시예에 따른 레이아웃 분리 시스템을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따른 레이아웃 분리 방법을 설명하기 위한 흐름도이다.
도 10은 본 발명의 다양한 실시예에 따른 레이아웃 분리 시스템을 구현하는 반도체 시스템을 설명하기 위한 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 도면에서 표시된 구성요소의 크기 및 상대적인 크기는 설명의 명료성을 위해 과장된 것일 수 있다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭하며, "및/또는"은 언급된 아이템들의 각각 및 하나 이상의 모든 조합을 포함한다.
소자(elements) 또는 층이 다른 소자 또는 층의 "위(on)" 또는 "상(on)"으로 지칭되는 것은 다른 소자 또는 층의 바로 위뿐만 아니라 중간에 다른 층 또는 다른 소자를 개재한 경우를 모두 포함한다. 반면, 소자가 "직접 위(directly on)" 또는 "바로 위"로 지칭되는 것은 중간에 다른 소자 또는 층을 개재하지 않은 것을 나타낸다.
공간적으로 상대적인 용어인 "아래(below)", "아래(beneath)", "하부(lower)", "위(above)", "상부(upper)" 등은 도면에 도시되어 있는 바와 같이 하나의 소자 또는 구성 요소들과 다른 소자 또는 구성 요소들과의 상관관계를 용이하게 기술하기 위해 사용될 수 있다. 공간적으로 상대적인 용어는 도면에 도시되어 있는 방향에 더하여 사용시 또는 동작시 소자의 서로 다른 방향을 포함하는 용어로 이해되어야 한다. 예를 들면, 도면에 도시되어 있는 소자를 뒤집을 경우, 다른 소자의 "아래(below)" 또는 "아래(beneath)"로 기술된 소자는 다른 소자의 "위(above)"에 놓여질 수 있다. 따라서, 예시적인 용어인 "아래"는 아래와 위의 방향을 모두 포함할 수 있다. 소자는 다른 방향으로도 배향될 수 있고, 이에 따라 공간적으로 상대적인 용어들은 배향에 따라 해석될 수 있다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
비록 제1, 제2 등이 다양한 소자나 구성요소들을 서술하기 위해서 사용되나, 이들 소자나 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 소자나 구성요소를 다른 소자나 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 소자나 구성요소는 본 발명의 기술적 사상 내에서 제2 소자나 구성요소 일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
도 1은 본 발명의 일 실시예에 따른 레이아웃 분리 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 레이아웃 분리 시스템(1)은 레이아웃 입력 모듈(100), 그래프 생성 모듈(110), 그래프 분할 모듈(120) 및 분리 모듈(130)을 포함한다.
레이아웃 입력 모듈(100)은 복수의 폴리곤(polygon)을 포함하는 레이아웃 디자인(layout design)을 외부로부터 입력받는다. 레이아웃 디자인은 회로, 예컨대 집적 회로에 대한 논리적 디스크립션(logical description) 또는 회로 디스크립션(circuit description)을 지오메트릭 디스크립션(geometric description)으로 나타낸 것으로, 레이아웃 디자인은 회로 요소들과 상기 회로 요소들을 상호 연결하는 인터커넥션 등을 포함한다. 본 명세서에서는 레이아웃 디자인에 포함되어 다양한 물리적 회로 요소에 대응하는 지오메트리를 폴리곤 또는 회로 패턴으로 지칭하도록 한다. 본 발명의 몇몇의 실시예에서, 레이아웃 입력 모듈(100)은 레이아웃 디자인(layout design)을 컴퓨터 또는 소프트웨어(예컨대, EDA 툴(Electonic Design Automation tool)에 의해 다루어질(manipulate) 수 있는 데이터 파일의 형태로 입력받을 수 있다.
그래프 생성 모듈(110)은 레이아웃 입력 모듈(100)로부터 수신한 레이아웃 디자인을 리드(read)하고, 상기 레이아웃 디자인을 분석하여, 상기 레이아웃 디자인에 대응하는 복수의 노드(node) 및 에지(edge)를 포함하는 그래프(graph)를 생성한다. 여기서 노드는 레이아웃 디자인의 폴리곤에 대응되고, 에지는 복수의 노드 중 서로 미리 정해진 최소 거리보다 가깝게 배치된 2 개의 노드를 식별한다. 예를 들어, 레이아웃 디자인의 서로 인접한 제1 폴리곤과 제2 폴리곤은 각각 제1 노드와 제2 노드에 대응되고, 상기 레이아웃 디자인에 적용되는 디자인 룰(design rule)에 회로 패턴들 간의 최소 간격에 대한 제약 조건이 있다고 가정하자. 이 경우 제1 폴리곤과 제2 폴리곤 사이의 간격이 상기 디자인 룰에 명세된 제약 조건을 만족시키지 못하면 제1 노드와 제2 노드 사이에 에지를 형성한다. 그래프 생성 모듈(110)은 이러한 방식으로 레이아웃 입력 모듈(100)로부터 수신한 레이아웃 디자인에 대응하는 그래프를 생성한다.
그래프 분할 모듈(120)은 그래프 생성 모듈(110)에 의해 생성된 그래프를 분석하여, 차수(degree)가 미리 정해진 기준 값을 초과하는 노드를 기준으로 그래프를 복수의 서브 그래프로 분할한다. 여기서 차수는 특정 노드에 대한 특성 값으로서, 상기 노드가 가지고 있는 에지의 개수를 의미한다. 예를 들어, 상기 노드가 10 개의 에지를 가지고 있다면 차수는 10 이 될 수 있다. 본 발명의 몇몇의 실시예에서 특정 노드의 차수는 상기 노드가 갖는 에지의 개수에 비례하는 임의의 값으로 설정될 수 있다. 그래프 분할 모듈(120)이 노드의 차수를 기준으로 그래프를 분할하는 구체적인 과정에 대해서는 도 5와 관련하여 후술하도록 한다.
분리 모듈(130)은 그래프 분할 모듈(120)에 의해 분할된 복수의 서브 그래프 각각에 대해 MPT 분리(Multi Patterning Technology decomposition)를 수행한다. 여기서 MPT 분리는 각각의 서브 그래프에 포함되는 노드들에 대해 컬러(color)를 부여하는 방식으로 수행될 수 있다. 구체적으로, 특정 서브 그래프에서 동일한 에지를 공유하는 2 개의 노드에 대해서는 다른 컬러를 부여한다. 이러한 과정을 반복하여 하나의 서브 그래프에서 동일한 에지를 공유하는 어떤 2 개의 노드도 같은 컬러를 갖지 않도록 하고, 상기 서브 그래프의 노드들을 컬러 별로 분류하여 서로 다른 그룹에 속하게 할 수 있다. 예를 들어 제1 그룹에 속하게 된 노드들에 대응하는 회로 패턴들, 즉, 폴리곤들로부터 MPT 리소그래피(Multi Patterning Technology lithography)에 사용되는 제1 마스크가 제조될 수 있고, 제1 그룹과 다른 제2 그룹에 속하게 된 노드들에 대응하는 회로 패턴들, 즉, 폴리곤들로부터 MPT 리소그래피에 사용되는 제2 마스크가 제조될 수 있다.
특히, 분리 모듈(130)은 복수의 서브 그래프 각각에 대해 MPT 분리를 수행하여 획득한 복수의 컬러링 결과를 결합하여, 분할 모듈(120)에 의해 분할되기 전의 그래프 전체에 대해 컬러링을 수행할 수 있다. 또한, 분리 모듈(130)은 그래프 전체에 대해 컬러링을 수행한 후, 그래프의 노드에 부여된 컬러에 따라 복수의 폴리곤을 복수의 그룹으로 분류할 수 있다.
상술한 레이아웃 입력 모듈(100)이 입력 받은 레이아웃 디자인, 그래프 형성 모듈(110)에 의해 상기 레이아웃 디자인으로부터 생성된 그래프, 그래프 분할 모듈(120)에 의해 분할된 복수의 서브 그래프, 분리 모듈(130)에 의해 생성된 복수의 서브 그래프 또는 그래프에 대한 컬러링 결과(중간 결과 포함) 등은 컴퓨터 또는 소프트웨어(예컨대, EDA 툴(Electonic Design Automation tool)에 의해 다루어질(manipulate) 수 있는 데이터 파일의 형태로 일시적인(temporary) 컴퓨터로 판독 가능한 매체(예컨대, RAM(Random Access Memory)) 또는 비일시적인(non-transitory) 컴퓨터로 판독 가능한 매체(예컨대 스토리지 장치(20))에 저장될 수 있다.
도 2는 레이아웃 디자인에 포함되는 스탠다드 셀(standard cell)을 설명하기 위한 도면이고, 도 3은 복수의 폴리곤(polygon)을 포함하는 레이아웃 디자인(layout design)을 설명하기 위한 도면이다.
도 2를 참조하면, 레이아웃 디자인(200)은 복수의 스탠다드 셀(211-241)을 포함할 수 있다. 스탠다드 셀은 특정 기능을 구현하는 회로를 모듈화한 것으로 더 복잡한 기능을 구현하는 회로를 구성하기 위해 사용될 수 있다. 예를 들어, 스탠다드 셀은 논리 연산 AND, OR, NAND, NOR, INV 등을 수행할 수 있는 단위 회로를 구현한다. 만일 레이아웃 디자인(200)이 AND 회로와 INV 회로를 필요로 한다면, AND가 미리 구현된 스탠다드 셀(211)과 INV가 미리 구현된 스탠다드 셀(213)을 레이아웃 디자인(200)에 배치하는 것만으로 설계가 가능하다.
레이아웃 디자인(200)이 비교적 큰 사이즈의 칩을 설계하기 위한 것인 경우, 도 2와 같이 레이아웃 디자인(200)은 복수의 스탠다드 셀(211-241)을 포함하되, 복수의 스탠다드 셀(211-241)은 파워 레일(201, 203, 205, 207)에 의해 구분되는 영역에 가지런하게 배치될 수 있다.
도 2의 레이아웃 디자인(200)의 일부를 확대해서 보면, 도 3에 도시된 바와 같이, 레이아웃 디자인(200)은 복수의 파워 레일(301, 303, 305, 307, 309)과 파워 레일(301, 303, 305, 307, 309) 사이에 배치된 복수의 회로 패턴, 즉, 폴리곤(311-349)을 포함할 수 있다. 예를 들어, 파워 레일(301, 303) 사이에는 폴리곤(311-319)이 배치되고, 폴리곤(311)과 파워 레일(301) 사이의 간격은 디자인 룰에 명세된 제약 조건을 만족시키지 못할 수 있다. 또한, 폴리곤(317)과 폴리곤(319) 사이의 간격이 디자인 룰에 명세된 제약 조건을 벗어날 수도 있다. 이어지는 도 4에서는 복수의 파워 레일(301, 303, 305, 307, 309)과 파워 레일(301, 303, 305, 307, 309) 사이에 배치된 폴리곤(311-349) 사이의 간격이 레이아웃 디자인(200)에 적용되는 디자인 룰에 명세된 제약 조건을 만족시키지 못하는 경우를 가정하여 그래프 생성 모듈(120)을 이용하여 그래프를 생성하는 과정을 설명한다.
본 실시예에서는 예를 들기 위해 파워 레일(301, 303, 305, 307, 309)과 파워 레일(301, 303, 305, 307, 309) 사이에 배치된 폴리곤(311-349)을 구분하여 용어를 사용하였지만, 파워 레일(301, 303, 305, 307, 309) 역시 회로를 구성하는 요소로서 폴리곤에 해당함은 통상의 기술자가 이해할 수 있을 것이다.
도 4는 본 발명의 일 실시예에 따른 레이아웃 분리 방법에 따라 그래프(graph)를 생성하는 것을 설명하기 위한 도면이다.
도 4를 참조하면, 그래프 생성 모듈(120)은 레이아웃 디자인의 폴리곤(301-349)에 대응하는 노드(N1-N49)를 생성한다. 예를 들어, 노드(N1, N3, N5, N7, N9)는 폴리곤(301, 303, 305, 307, 309)에 각각 대응되고, 노드(N11, N13, N15, N17, N19)는 폴리곤(311, 313, 315, 317, 319)에 각각 대응될 수 있다.
다음으로 그래프 생성 모듈(120)은 레이아웃 디자인의 폴리곤(301-349)이 레이아웃 디자인에 적용되는 디자인 룰에 명세된 제약 조건을 만족하는지 검사하고, 상기 디자인 룰에 명세된 제약 조건을 만족시키지 못하는 간격으로 배치된 2 개의 폴리곤을 식별한다. 앞서 설명한 바와 같이, 폴리곤(301, 303, 305, 307, 309)과 그 사이에 배치된 폴리곤(311-349) 사이의 간격이 상기 제약 조건을 만족시키지 못한다고 가정하면, 그래프 생성 모듈(120)은 노드(N1-N49) 사이에 에지를 도 4와 같이 형성한다. 예를 들어, 폴리곤(301)과 폴리곤(311) 사이의 간격이 상기 제약 조건을 만족시키지 못하므로 노드(N1)와 노드(N11) 사이에 에지를 형성하고, 폴리곤(309)과 폴리곤(343) 사이의 간격이 상기 제약 조건을 만족시키지 못하므로 노드(N9)와 노드(N43) 사이에 에지를 형성할 수 있다. 만일 폴리곤(317)과 폴리곤(319) 사이의 간격에 상기 제약 조건을 만족시키지 못하는 경우에는 노드(N17)와 노드(N19) 사이에 에지를 형성할 수도 있다.
이와 같이 생성된 그래프는 MPT 리소그래피(Multi Patterning Technology lithography)를 이용하여 반도체 웨이퍼에 패턴을 형성하기 위해 사용될 수 있다. 예를 들어, DPT(Double Patterning Technology)를 이용하는 경우에는 그래프를 구성하는 노드에 2 가지의 컬러를 부여하되, 동일한 에지로 연결되는 2 개의 노드에 대해서는 서로 다른 컬러(즉, 제1 컬러 및 제2 컬러)를 부여하고, 제1 컬러가 부여된 노드에 대응하는 폴리곤을 포함하는 제1 마스크와 제2 컬러가 부여된 노드에 대응하는 폴리곤을 포함하는 제2 마스크를 제조할 수 있다. 반도체 웨이퍼에 제1 마스크를 이용하여 리소그래피 공정을 수행한 후, 제2 마스크를 이용하여 리소그래피 공정을 수행하면, 보다 미세한 패턴을 형성할 수 있다. 다른 예로서, TPT(Triple Patterning Technology)를 이용하는 경우에는 그래프를 구성하는 노드에 3 가지의 컬러를 부여하되, 동일한 에지로 연결되는 2 개의 노드에 대해서는 서로 다른 컬러(즉, 제1 컬러, 제2 컬러 및 제3 컬러 중 2 가지의 컬러)를 부여하고, 제1 컬러가 부여된 노드에 대응하는 폴리곤을 포함하는 제1 마스크, 제2 컬러가 부여된 노드에 대응하는 폴리곤을 포함하는 제2 마스크 및 제3 컬러가 부여된 노드에 대응하는 폴리곤을 포함하는 제3 마스크를 제조할 수 있다. 반도체 웨이퍼에 제1 마스크를 이용하여 리소그래피 공정을 수행한 후, 제2 마스크를 이용하여 리소그래피 공정을 수행하고, 제3 마스크를 이용하여 리소그래피 공정을 수행하면, 보다 미세한 패턴을 형성할 수 있다.
그런데 도 3 및 도 4에 도시된 레이아웃 디자인에서와 같이 비교적 큰 사이즈를 갖는 칩을 제조하기 위해서는 상술한 레이아웃 디자인에 대응하는 그래프에 대한 컬러링 작업의 수행 시간이 매우 크다. 예를 들어, n 개의 노드를 포함하는 그래프에서 k 종류의 컬러를 이용하여 MPT 분리를 위한 컬러링을 수행하는 시간은 다음과 같은 식으로 예측될 수 있다.
Figure pat00001
여기서 Pn은 n 개의 노드를 포함하는 그래프에서 k 종류의 컬러를 이용하여 컬러링을 하기 위한 경우의 수를 의미한다. 이에 따르면, 예를 들어, 도 4에서와 같은 25 개의 노드를 포함하는 그래프에 대해 3 종류의 컬러를 이용하여 컬러링을 하기 위한 경우의 수는 다음과 같이 매우 크다.
Figure pat00002
이러한 문제점을 해결하기 위해 본 발명의 다양한 실시예에 따른 레이아웃 방법 및 레이아웃 시스템은 그래프 생성 모듈(110)에 의해 생성된 그래프를 분할하는 그래프 분할 모듈(120)을 이용할 수 있다.
도 5는 본 발명의 일 실시예에 따른 레이아웃 분리 방법에 따라 그래프를 분할하는 것을 설명하기 위한 도면이다.
도 5를 참조하면, 그래프 분할 모듈(120)은 그래프 생성 모듈(110)에 의해 생성된 그래프를 분석하여 차수(degree)가 미리 정해진 기준 값을 초과하는 노드를 식별한다. 예를 들어, 미리 정해진 기준 값이 5 인 경우, 그래프 분할 모듈(120)은 도 4에 도시된 그래프를 분석하여 차수가 5를 초과하는 노드들, 즉 노드(N3, N5, N7)를 식별한다. 본 명세서에서 식별된 노드는 타겟 노드라고도 한다.
본 발명의 몇몇의 실시예에서, 그래프 분할 모듈(120)은 식별한 노드들의 리스트를 생성할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니고, 그래프 분할 모듈(120)은 예컨대 특정 데이터 구조를 갖는 컴퓨터 또는 소프트웨어에 의해 다루어질 수 있는 데이터 파일로 식별된 노드들의 정보를 생성할 수 있다. 예를 들어, 그래프 분할 모듈(120)은 상기 그래프를 순회(traverse)하면서 노드에 연결된 에지의 개수와 미리 정해진 기준 값을 비교하고, 차수가 미리 정해진 기준 값을 초과하는 노드의 식별 정보, 예컨대, 노드의 식별자(identifier) 또는 인덱스(index) 정보를 데이터 구조에 저장할 수 있다.
다음으로, 그래프 분할 모듈(120)은 식별한 노드들의 리스트에 기초하여 식별된 노드, 즉 타겟 노드를 기준으로 복수의 서브 그래프를 식별한다. 예를 들어, 도 4의 그래프에서 노드(N3, N5, N7)가 타겟 노드로 식별된 경우, 도 5에서와 같이 노드(N3, N5, N7)에 대응하는 노드(N4, N6, N8)를 추가로 생성한다. 다음으로 그래프 분할 모듈(120)은 노드(N1, N3)를 포함하는 서브 그래프, 노드(N4, N5)를 포함하는 서브 그래프, 노드(N6, N7)를 포함하는 서브 그래프 및 노드(N8, N9)를 포함하는 서브 그래프를 식별한다. 이와 같이 식별된 서브 그래프에 대한 정보는 컴퓨터 또는 소프트웨어에 의해 다루어질 수 있는 데이터로서 메모리(30) 또는 스토리지(20)에 저장될 수 있다.
본 발명의 몇몇의 실시예에서, 그래프 분할 모듈(120)은 상기 그래프를 순회(traverse)하면서 각각의 노드와 타겟 노드의 리스트를 비교하고, 해당 노드가 타겟 노드에 대응하는 경우, 타겟 노드에 대응하는 추가 노드(예컨대, 노드(N4, N6, N8))를 생성한 후, 그래프를 분할하여 복수의 서브 그래프를 생성할 수 있다
분리 모듈(130)은 그래프 분할 모듈(120)에 의해 생성된 복수의 서브 그래프 각각에 대해 MPT 분리를 수행하여 복수의 컬러링(coloring) 결과를 획득하고, 복수의 컬러링 결과를 결합하여 그래프 전체에 대한 컬러링을 완료한다. 또한 분리 모듈(130)은 그래프의 노드에 부여된 컬러에 따라 레이아웃 디자인의 복수의 폴리곤을 복수의 그룹으로 분류할 수 있다.
나아가, 분리 모듈(130)은 제1 그룹으로 분류된 복수의 폴리곤을 포함하는 레이아웃 디자인에 대응하는 제1 마스크 레이아웃 데이터 및 제2 그룹으로 분류된 복수의 폴리곤을 포함하는 레이아웃 디자인에 대응하는 제2 마스크 레이아웃 데이터를 생성할 수 있다. 본 발명의 몇몇의 실시예에서, 분리 모듈(130)은 제1 마스크 레이아웃 데이터 및 제2 마스크 레이아웃 데이터를 일시적인(temporary) 컴퓨터로 판독 가능한 매체에 저장할 수 있다. 본 발명의 다른 몇몇의 실시예에서, 분리 모듈(130)은 제1 마스크 레이아웃 데이터 및 제2 마스크 레이아웃 데이터를 비일시적인(non-transitory) 컴퓨터로 판독 가능한 매체에 저장할 수 있다. 비일시적인 컴퓨터로 판독 가능한 매체에 저장된 제1 마스크 레이아웃 데이터 및 제2 마스크 레이아웃 데이터는 MPT 리소그래피에 사용되는 제1 마스크 및 제2 마스크로 제조될 수 있다.
본 발명의 몇몇의 실시예에서, 제1 서브 그래프에 대해 MPT 분리를 수행하는 것과 제2 서브 그래프에 대해 MPT 분리를 수행하는 것은 병렬적으로 처리될 수 있다. 예를 들어, 제1 서브 그래프에 대한 MPT 분리는 제1 스레드(thread)(또는 프로세스(process))에 의해 수행되고, 제2 서브 그래프에 대한 MPT 분리는 제2 스레드에 의해 수행될 수 있다. 또한, 예를 들어, 제1 스레드는 제1 프로세싱 유닛 상에서 실행되고, 제2 스레드는 제2 프로세싱 유닛 상에서 실행될 수 있다. 여기서 프로세싱 유닛은 다중 프로세서, 다중 코어, 이종의 다중 프로세서 등을 포함할 수 있다.
본 실시예에서 컬러링을 하기 위한 경우의 수를 다시 계산해 보면 다음과 같다. 그래프 분할 모듈(120)에 의해 그래프는 4 개의 서브 그래프로 분할되었고, 분리 모듈(130)은 각각의 서브 그래프에 대해 컬러링을 수행하므로, 도 5에 도시된 그래프에 대해 3 종류의 컬러를 부여하는 경우에는 다음과 같이 계산된다.
Figure pat00003
즉 본 발명에 따른 레이아웃 분리 방법 및 레이아웃 분리 시스템에 의해 컬러링에 소요되는 시간이 크게 감소하였음을 알 수 있다.
도 6은 본 발명의 다른 실시예에 따른 레이아웃 분리 방법에 따라 그래프에 대해 컬러링(coloring)을 하는 것을 설명하기 위한 도면이다.
도 6을 참조하면, 도 5의 실시예와 다른 점은, 그래프 분할 모듈(120)이 4 개의 서브 그래프에 포함되는 전 타겟 노드(즉, 노드(N3, N5, N7) 및 이에 대한 복제 노드(N4, N6, N8))에 대해 동일한 컬러를 부여한다는 점이다.
이와 같이 타겟 노드의 컬러를 1 가지로 고정하게 되면 컬러링을 하기 위한 경우의 수는 더 줄어들 수 있다. 예를 들어 도 6에 도시된 그래프에 대해 3 종류의 컬러를 부여하는 경우에는 다음과 같이 계산된다.
Figure pat00004
즉, 4 개의 서브 그래프 각각에 대해 컬러링을 하기 위한 경우의 수는 2에 불과하므로 본 발명에 따른 레이아웃 분리 방법 및 레이아웃 분리 시스템에 의해 컬러링에 소요되는 시간이 크게 감소하였음을 알 수 있다.
도 7은 본 발명의 다른 실시예에 따른 레이아웃 분리 시스템을 설명하기 위한 도면이다.
도 7을 참조하면, 본 발명의 다른 실시예에 따른 레이아웃 분리 시스템(10)이 도 1의 실시예와 다른 점은 분리 모듈(130) 대신 버추얼 분리 모듈(131)을 포함하고, 디자인 룰 체크 모듈(140)을 더 포함한다는 점이다. 여기서 디자인 룰 체크 모듈(140)은 레이아웃 디자인에 대해 추가적인 디자인 룰 체크(Design Rule Check)를 수행한다.
버추얼 분리 모듈(131)은 회로의 설계 단계에서 동작하며, 레이아웃 디자인으로부터 가상적으로 그래프 분리를 수행한다. 가상적으로 그래프 분리를 수행한 결과는 메모리(30)에 일시적으로 저장된 후, 디자인 룰 체크 모듈(140)에 의해 레이아웃 디자인에 대해 간격 오차와 같은 제약 조건들을 검사하는 과정을 거친 후, 사인오프(signoff) 데이터로 변환될 수 있다.
도 8은 본 발명의 또 다른 실시예에 따른 레이아웃 분리 시스템을 설명하기 위한 도면이다.
도 8을 참조하면, 본 발명의 또 다른 실시예에 따른 레이아웃 분리 시스템(10)이 도 7의 실시예와 다른 점은 버추얼 분리 모듈(130) 대신 리얼 분리 모듈(131)을 포함하고, 마스크 생성 모듈(150)을 더 포함한다는 점이다. 여기서 마스크 생성 모듈(150)은 복수의 그룹에 대응되는 복수의 MPT 리소그래피(lithography) 마스크를 생성한다.
리얼 분리 모듈(132)은 칩의 양산 단계에서 동작하며, 레이아웃 디자인으로부터 실제적으로 그래프 분리를 수행한다. 실제적으로 그래프 분리를 수행한 결과는 스토리지(20)를 비롯한 비일시적인(non-transitory) 컴퓨터로 판독 가능한 매체에 저장된 후, 마스크 생성 모듈(150)에 의해 복수의 MPT 리소그래피 마스크를 생성하기 위해 사용될 수 있다.
도 9는 본 발명의 일 실시예에 따른 레이아웃 분리 방법을 설명하기 위한 흐름도이다.
도 9를 참조하면, 본 발명의 일 실시예에 따른 레이아웃 분리 방법은 레이아웃 디자인을 입력(S901)받고, 레이아웃 디자인으로부터 그래프를 형성(S903)하고, 레이아웃 디자인에 대응되는 그래프에서 타겟 노드(S905)를 선정한다. 다음으로 상기 방법은 타겟 노드를 기준으로 상기 그래프를 분할(S907)하고, 분할된 그래프 각각에 대해 MPT 분할 알고리즘을 적용(S909)하여, 그 결과, 즉, 분리된 마스크 레이아웃 데이터를 출력(S911)한다.
도 10은 본 발명의 다양한 실시예에 따른 레이아웃 분리 시스템을 구현하는 반도체 시스템을 설명하기 위한 도면이다.
도 10을 참조하면, 레이아웃 분리 시스템의 그래프 입력 모듈(110), 그래프 분할 모듈(120), 분리 모듈(130), 디자인 룰 체크 모듈(140) 및 마스크 생성 모듈(150)은 프로세서(15), 메모리(30), 스토리지(20) 및 입출력 장치(40)와 전기적으로 연결될 수 있고, 프로세서(15), 메모리(30), 스토리지(20), 입출력 장치(40), 그래프 분할 모듈(120), 분리 모듈(130), 디자인 룰 체크 모듈(140) 및 마스크 생성 모듈(150)은 버스(50)를 통해 데이터를 주고 받을 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
1, 2, 3: 반도체 시스템 10: 레이아웃 분리 시스템
15: 프로세서 20: 스토리지 장치
30: 메모리 40: I/O
100: 레이아웃 입력 모듈 110: 그래프 생성 모듈
120: 그래프 분할 모듈 130: 분리 모듈
131: 버추얼 분리 모듈 132: 리얼 분리 모듈
140: 디자인 룰 체크 모듈 150: 마스크 생성 모듈
200: 레이아웃 디자인 201, 203, 205, 207: 파워 레일
211-241: 스탠다드 셀 301, 303, 305, 307, 309: 파워 레일
311-349: 폴리곤

Claims (10)

  1. 복수의 폴리곤(polygon)을 포함하는 레이아웃 디자인(layout design)으로부터 복수의 노드(node) 및 에지(edge)를 포함하는 그래프(graph)를 생성하고, 상기 노드는 상기 레이아웃 디자인의 폴리곤에 대응되고, 상기 에지는 상기 복수의 노드 중 서로 미리 정해진 최소 거리보다 가깝게 배치된 2 개의 노드를 식별하고,
    상기 복수의 노드의 차수(degree)와 미리 정해진 기준 값을 비교하고,
    상기 복수의 노드 중 그 차수가 상기 기준 값을 초과하는 타겟 노드를 선정하고,
    상기 그래프로부터, 상기 타겟 노드를 기준으로 분할되는 제1 서브 그래프 및 제2 서브 그래프를 식별하고,
    상기 제1 서브 그래프 및 상기 제2 서브 그래프에 대해 MPT 분리(Multi Patterning Technology decomposition)를 각각 수행하여 제1 결과 및 제2 결과를 획득하고,
    상기 제1 결과 및 제2 결과를 결합하여, 상기 레이아웃 디자인의 일부에 대응하는 제1 마스크 레이아웃 데이터 및 상기 레이아웃 디자인의 다른 일부에 대응하는 제2 마스크 레이아웃 데이터를 생성하는 것을 포함하는 레이아웃 분리 방법.
  2. 제1항에 있어서,
    상기 제1 서브 그래프 및 상기 제2 서브 그래프에 대해 MPT 분리를 각각 수행하는 것은,
    상기 제1 서브 그래프에서 동일한 에지를 공유하는 2 개의 노드에 대해 서로 다른 컬러를 부여하고,
    상기 제2 서브 그래프에서 동일한 에지를 공유하는 2 개의 노드에 대해 서로 다른 컬러를 부여하는 것을 포함하는 레이아웃 분리 방법.
  3. 제2항에 있어서,
    상기 제1 서브 그래프 및 상기 제2 서브 그래프에 대해 MPT 분리를 각각 수행하는 것은,
    상기 제1 서브 그래프에 포함되는 타겟 노드에 제1 컬러를 부여하고,
    상기 제2 서브 그래프에 포함되는 타겟 노드에 제2 컬러를 부여하는 것을 포함하는 레이아웃 분리 방법.
  4. 제2항에 있어서,
    상기 제1 서브 그래프 및 상기 제2 서브 그래프에 대해 MPT 분리를 각각 수행하는 것은,
    상기 제1 서브 그래프에 포함되는 타겟 노드와 상기 제2 서브 그래프에 포함되는 타겟 노드에 동일한 컬러를 부여하는 것을 포함하는 레이아웃 분리 방법.
  5. 제1항에 있어서,
    상기 제1 서브 그래프 및 상기 제2 서브 그래프에 대해 MPT 분리를 각각 수행하는 것은,
    상기 제1 서브 그래프에 대해 MPT 분리를 수행하는 것과 병렬적으로 상기 제2 서브 그래프에 대해 MPT 분리를 수행하는 것을 포함하는 레이아웃 분리 방법.
  6. 복수의 폴리곤(polygon)을 포함하는 레이아웃 디자인(layout design)을 비일시적인(non-transitory) 컴퓨터로 판독 가능한 매체로부터 인출하고,
    상기 레이아웃 디자인으로부터 복수의 노드(node) 및 에지(edge)를 포함하는 그래프(graph)를 생성하여 메모리에 저장하고, 상기 노드는 상기 레이아웃 디자인의 폴리곤에 대응되고, 상기 에지는 상기 복수의 노드 중 서로 미리 정해진 최소 거리보다 가깝게 배치된 2 개의 노드를 식별하고,
    상기 그래프를 분석하여 차수(degree)가 미리 정해진 기준 값을 초과하는 노드의 리스트를 생성하고,
    상기 리스트에 포함되는 노드를 기준으로 상기 그래프를 복수의 서브 그래프로 분할하고,
    상기 복수의 서브 그래프 각각에 대해 MPT 분리(Multi Patterning Technology decomposition)를 수행하여 복수의 컬러링(coloring) 결과를 획득하고,
    상기 복수의 컬러링 결과를 결합하여 상기 그래프를 컬러링하고,
    상기 그래프의 노드에 부여된 컬러에 따라 상기 복수의 폴리곤을 복수의 그룹으로 분류하는 것을 포함하는 레이아웃 분리 방법.
  7. 제6항에 있어서,
    상기 복수의 서브 그래프는 제1 서브 그래프 및 제2 서브 그래프를 포함하고,
    상기 복수의 서브 그래프 각각에 대해 MPT 분리(Multi Patterning Technology decomposition)를 수행하여 복수의 컬러링 결과를 획득하는 것은,
    제1 프로세싱 유닛을 이용하여 상기 제1 서브 그래프에 대해 MPT 분리를 수행하고, 획득한 제1 컬러링 결과를 제1 메모리 영역에 저장하고,
    상기 제1 프로세싱 유닛과 병렬로 동작하는 제2 프로세싱 유닛을 이용하여 제2 서브 그래프에 대해 MPT 분리를 수행하고, 획득한 제2 컬러링 결과를 제2 메모리 영역에 저장하고,
    상기 복수의 컬러링 결과를 결합하여 상기 그래프를 컬러링하는 것은,
    상기 제1 메모리 영역에 저장된 상기 제1 컬러링 결과 및 상기 제2 메모리 영역에 저장된 상기 제2 컬러링 결과를 리드하고,
    리드한 상기 제1 컬러링 결과 및 상기 제2 컬러링 결과를 결합하여 상기 그래프에 대한 컬러링 결과를 제3 메모리 영역에 저장하는 것을 포함하는 레이아웃 분리 방법.
  8. 제6항에 있어서,
    상기 그래프의 노드에 부여된 컬러에 따라 상기 복수의 폴리곤을 복수의 그룹으로 분류한 후, 상기 레이아웃 디자인에 대해 추가적인 디자인 룰 체크(Design Rule Check)를 수행하고,
    상기 디자인 룰 체크가 완료된 상기 레이아웃 디자인을 레이아웃 데이터 파일로서 비일시적인(non-transitory) 컴퓨터로 판독 가능한 매체에 저장하는 것을 더 포함하는 레이아웃 분리 방법.
  9. 제8항에 있어서,
    상기 복수의 그룹은 복수의 MPT 리소그래피(lithography) 마스크에 대응되고,
    각각의 상기 그룹에 포함되는 폴리곤은 각각의 상기 MPT 리소그래피 마스크의 패턴에 대응되는 레이아웃 분리 방법.
  10. 하나 이상의 프로세서;
    복수의 폴리곤(polygon)을 포함하는 레이아웃 디자인(layout design)으로부터 복수의 노드(node) 및 에지(edge)를 포함하는 그래프(graph)를 생성하는 그래프 생성 모듈;
    상기 그래프를 분석하여 차수(degree)가 미리 정해진 기준 값을 초과하는 노드를 기준으로 상기 그래프를 복수의 서브 그래프로 분할하는 그래프 분할 모듈;
    상기 복수의 서브 그래프 각각에 대해 MPT 분리(Multi Patterning Technology decomposition)를 수행하여 복수의 컬러링 결과를 획득하는 분리 모듈을 포함하고,
    상기 노드는 상기 레이아웃 디자인의 폴리곤에 대응되고, 상기 에지는 상기 복수의 노드 중 서로 미리 정해진 최소 거리보다 가깝게 배치된 2 개의 노드를 식별하고,
    상기 분리 모듈은 복수의 컬러링 결과를 결합하여 상기 그래프를 컬러링한 후, 상기 그래프의 노드에 부여된 컬러에 따라 상기 복수의 폴리곤을 복수의 그룹으로 분류하는 레이아웃 분리 시스템.
KR1020150058010A 2015-04-24 2015-04-24 레이아웃 분리 방법 및 레이아웃 분리 시스템 KR102338365B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150058010A KR102338365B1 (ko) 2015-04-24 2015-04-24 레이아웃 분리 방법 및 레이아웃 분리 시스템
US15/135,041 US9874810B2 (en) 2015-04-24 2016-04-21 Layout decomposition methods and systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150058010A KR102338365B1 (ko) 2015-04-24 2015-04-24 레이아웃 분리 방법 및 레이아웃 분리 시스템

Publications (2)

Publication Number Publication Date
KR20160126664A true KR20160126664A (ko) 2016-11-02
KR102338365B1 KR102338365B1 (ko) 2021-12-09

Family

ID=57147630

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150058010A KR102338365B1 (ko) 2015-04-24 2015-04-24 레이아웃 분리 방법 및 레이아웃 분리 시스템

Country Status (2)

Country Link
US (1) US9874810B2 (ko)
KR (1) KR102338365B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113554091A (zh) * 2021-07-21 2021-10-26 长江存储科技有限责任公司 分解半导体结构的布局的方法、装置、系统和存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10529407B2 (en) * 2017-07-20 2020-01-07 Samsung Electronics Co., Ltd. Memory device including a plurality of power rails and method of operating the same
US10276394B2 (en) * 2017-09-14 2019-04-30 Taiwan Semiconductor Manufacturing Co., Ltd. Hybrid double patterning method for semiconductor manufacture
US11079685B2 (en) 2017-11-14 2021-08-03 Taiwan Semiconductor Manufacturing Co., Ltd. Method of manufacturing photo masks
US11409924B2 (en) * 2019-08-15 2022-08-09 Dassault Systémes Americas Corp. Modelling operating zones for manufacturing resources using virtual model and graphics based simulation

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100193357A1 (en) * 2009-01-30 2010-08-05 Chang Po-Ling Quantitative analysis method for micrornas
US8448100B1 (en) * 2012-04-11 2013-05-21 Taiwan Semiconductor Manufacturing Co., Ltd. Tool and method for eliminating multi-patterning conflicts
US8484607B1 (en) * 2012-03-06 2013-07-09 International Business Machines Corporation Decomposing layout for triple patterning lithography
US8601409B1 (en) * 2012-07-12 2013-12-03 Taiwan Semiconductor Manufacturing Co, Ltd. Compression method and system for use with multi-patterning
US20140282293A1 (en) * 2013-03-14 2014-09-18 Taiwan Semiconductor Manufacturing Company, Ltd. Eda tool and method for conflict detection during multi-patterning lithography

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7617476B2 (en) 2006-09-13 2009-11-10 Asml Masktools B.V. Method for performing pattern pitch-split decomposition utilizing anchoring features
US7913197B1 (en) 2007-02-21 2011-03-22 Cadence Design Systems, Inc. Method for double patterning lithography
JP4779003B2 (ja) 2007-11-13 2011-09-21 エーエスエムエル ネザーランズ ビー.ブイ. フルチップ設計のパターン分解を行うための方法
US7861196B2 (en) 2008-01-31 2010-12-28 Cadence Design Systems, Inc. System and method for multi-exposure pattern decomposition
US8069423B2 (en) 2008-08-11 2011-11-29 Cadence Design Systems, Inc. System and method for model based multi-patterning optimization
US8209656B1 (en) 2008-10-14 2012-06-26 Cadence Design Systems, Inc. Pattern decomposition method
JP5355112B2 (ja) * 2009-01-28 2013-11-27 株式会社東芝 パターンレイアウト作成方法
US8402396B2 (en) 2009-09-29 2013-03-19 The Regents Of The University Of California Layout decomposition for double patterning lithography
US8347240B2 (en) 2010-10-29 2013-01-01 International Business Machines Corporation Split-layer design for double patterning lithography
US8799844B2 (en) * 2011-01-28 2014-08-05 International Business Machines Corporation Layout decomposition method and apparatus for multiple patterning lithography
US8694945B2 (en) 2011-12-20 2014-04-08 Taiwan Semiconductor Manufacturing Co., Ltd. Automatic place and route method for electromigration tolerant power distribution
US8713491B2 (en) 2012-03-29 2014-04-29 Taiwan Semiconductor Manufacturing Co., Ltd. Pre-colored methodology of multiple patterning
US8745556B2 (en) 2012-06-28 2014-06-03 Taiwan Semiconductor Manufacturing Co., Ltd. Layout method and system for multi-patterning integrated circuits
US8647893B1 (en) 2012-08-28 2014-02-11 International Business Machines Corporation Method for post decomposition density balancing in integrated circuit layouts, related system and program product
US8689151B1 (en) 2012-09-12 2014-04-01 International Business Machines Corporation Pitch-aware multi-patterning lithography
US9384319B2 (en) * 2013-08-15 2016-07-05 Synopsys, Inc. Detecting and displaying multi-patterning fix guidance

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100193357A1 (en) * 2009-01-30 2010-08-05 Chang Po-Ling Quantitative analysis method for micrornas
US8484607B1 (en) * 2012-03-06 2013-07-09 International Business Machines Corporation Decomposing layout for triple patterning lithography
US8448100B1 (en) * 2012-04-11 2013-05-21 Taiwan Semiconductor Manufacturing Co., Ltd. Tool and method for eliminating multi-patterning conflicts
US8601409B1 (en) * 2012-07-12 2013-12-03 Taiwan Semiconductor Manufacturing Co, Ltd. Compression method and system for use with multi-patterning
US20140282293A1 (en) * 2013-03-14 2014-09-18 Taiwan Semiconductor Manufacturing Company, Ltd. Eda tool and method for conflict detection during multi-patterning lithography

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113554091A (zh) * 2021-07-21 2021-10-26 长江存储科技有限责任公司 分解半导体结构的布局的方法、装置、系统和存储介质

Also Published As

Publication number Publication date
US20160313638A1 (en) 2016-10-27
US9874810B2 (en) 2018-01-23
KR102338365B1 (ko) 2021-12-09

Similar Documents

Publication Publication Date Title
KR102338365B1 (ko) 레이아웃 분리 방법 및 레이아웃 분리 시스템
US8601409B1 (en) Compression method and system for use with multi-patterning
US8516406B1 (en) Methods, systems, and articles of manufacture for smart pattern capturing and layout fixing
US10013520B2 (en) Method of determining if layout design is N-colorable
US8935639B1 (en) Natively color-aware double patterning technology (DPT) compliant routing
US10643017B2 (en) Rule checking for multiple patterning technology
US9208273B1 (en) Methods, systems, and articles of manufacture for implementing clone design components in an electronic design
US20150007120A1 (en) Clustering using n-dimensional placement
EP3427163B1 (en) Node-centric analysis of dynamic networks
Tian et al. Constrained pattern assignment for standard cell based triple patterning lithography
US9514266B2 (en) Method and system of determining colorability of a layout
Tian et al. Triple patterning aware detailed placement with constrained pattern assignment
US9087174B1 (en) Methods, systems, and articles of manufacture for implementing multiple-patterning-aware design rule check for electronic designs
US8296706B2 (en) Handling two-dimensional constraints in integrated circuit layout
KR102320823B1 (ko) 집적 회로 및 그것의 레이아웃을 설계하는 방법
US10489547B2 (en) Multiple patterning method, system for implementing the method and layout formed
US9286432B1 (en) Methods, systems, and articles of manufacture for implementing correct-by-construction physical designs with multiple-patterning-awareness
US9171126B1 (en) Range pattern matching in mask data
Oliveira et al. A spectral clustering algorithm for manufacturing cell formation
US9928331B2 (en) Method and control device for circuit layout migration
CN116090402A (zh) 一种基于聚类算法的全局布线方法、装置和电子设备
TWI748005B (zh) 電路佈局著色方法及系統、製造半導體裝置的方法、微影方法以及微影製程系統
US10984164B1 (en) Method, system, and product for generating and maintaining a physical design for an electronic circuit having sync group constraints for design rule checking
CN111611761B (zh) 生成电路版图图案的方法、设备和计算机可读存储介质
KR102173204B1 (ko) 빅데이터 시각화 기반의 특허 분석 시스템 및 그 방법

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