KR20160051532A - 집적 회로 및 그것의 레이아웃을 설계하는 방법 - Google Patents

집적 회로 및 그것의 레이아웃을 설계하는 방법 Download PDF

Info

Publication number
KR20160051532A
KR20160051532A KR1020150059103A KR20150059103A KR20160051532A KR 20160051532 A KR20160051532 A KR 20160051532A KR 1020150059103 A KR1020150059103 A KR 1020150059103A KR 20150059103 A KR20150059103 A KR 20150059103A KR 20160051532 A KR20160051532 A KR 20160051532A
Authority
KR
South Korea
Prior art keywords
patterns
pattern
layout
integrated circuit
mask
Prior art date
Application number
KR1020150059103A
Other languages
English (en)
Other versions
KR102320823B1 (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 US14/926,128 priority Critical patent/US9946828B2/en
Publication of KR20160051532A publication Critical patent/KR20160051532A/ko
Application granted granted Critical
Publication of KR102320823B1 publication Critical patent/KR102320823B1/ko

Links

Images

Classifications

    • G06F17/5081
    • G06F17/5068

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

본 개시의 일실시예에 따른 컴퓨터 시스템 또는 프로세서에 의하여 구현되는 집적 회로의 레이아웃을 설계하는 방법은, 입력 레이아웃 데이터를 수신하는 단계, 복수의 패턴들에 대하여 설계 규칙을 체크하는 단계, 설계 규칙을 위반한 제1 및 제2 패턴 중 제1 패턴을 제1 패턴과 동일한 네트에 연결된 제3 패턴과 병합하는 단계 및 출력 레이아웃 데이터를 생성하는 단계를 포함할 수 있다.

Description

집적 회로 및 그것의 레이아웃을 설계하는 방법{INTEGRATED CIRCUIT AND METHOD OF DESIGNING LAYOUT THEREOF}
본 발명의 기술적 사상은 집적 회로에 관한 것으로서, 자세하게는 집적 회로 및 집적 회로의 레이아웃을 설계하는 방법에 관한 것이다.
반도체 제조 공정 기술이 발전함에 따라, 트랜지스터의 크기는 점점 작아지고 있으며, 이에 따라 보다 많은 수의 트랜지스터들이 반도체 장치에 집적되고 있다. 예를 들면, 하나의 칩에 컴퓨터나 다른 전자 시스템의 모든 구성부품들을 포함하는 집적 회로(Integrated Circuit; IC)를 말하는 시스템-온-칩(System-On-Chip; SOC)은 다양한 어플리케이션에 널리 사용되고 있으며, 어플리케이션의 성능이 향상됨에 따라 보다 많은 구성부품들을 포함하는 반도체 장치가 요구되고 있다.
한편, 반도체 장치에 집적되는 트랜지스터의 크기가 점점 작아짐에 따라 반도체 장치를 제조하는 공정의 난이도가 높아지고 있다. 이를 위하여, 반도체 제조 공정 기술의 진보뿐만 아니라, 반도체 장치를 설계하는 단계에서 반도체 제조 공정을 고려하고 보다 용이한 반도체 제조 공정을 사용하기 위한 제조를 고려한 설계(Design For Manufacturing; DFM)의 중요성이 커지고 있다.
본 개시의 기술적 사상은, 집적 회로 및 집적 회로의 레이아웃을 설계하는 방법에 관한 것으로서, 집적 회로 및 그것의 레이아웃 설계를 위한 컴퓨터 구현 방법을 제공한다.
본 개시의 기술적 사상의 일측면에 따른 하나의 레이어에 복수의 패턴들을포함하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법은, 상기 복수의 패턴들의 배치 정보 및 상기 복수의 패턴들 중 각각을 복수의 마스크들 중 하나의 마스크에 대응시킨 컬러링 정보를 포함하는 입력 레이아웃 데이터를 수신하는 단계, 상기 복수의 패턴들에 대하여 상기 레이어의 설계 규칙(design rule)을 체크하는 단계, 상기 복수의 패턴들 중 상기 설계 규칙을 위반한 제1 및 제2 패턴에 대하여, 상기 제1 패턴이 상기 제1 패턴과 동일한 네트에 연결된 제3 패턴과 병합되도록 상기 배치 정보를 변경하는 단계, 및 상기 제1 및 제3 패턴으로부터 병합된 패턴이 상기 제3 패턴에 대응하는 마스크에 대응되도록 상기 컬러링 정보를 갱신하는 단계를 포함할 수 있다.
본 개시의 기술적 사상의 일측면에 따른 하나의 레이어에 복수의 패턴들을 포함하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법은, 상기 복수의 패턴들의 배치 정보를 포함하는 입력 레이아웃 데이터를 수신하는 단계, 상기 복수의 패턴들 각각을 복수의 마스크들 중 하나의 마스크에 대응시킨 컬러링 정보를 생성하는 단계, 및 상기 컬러링 정보를 포함하는 출력 레이아웃 데이터를 생성하는 단계를 포함할 수 있고, 상기 컬러링 정보를 생성하는 단계는, 상기 복수의 패턴들 중 동일한 네트에 연결된 적어도 2개의 패턴들이 병합되도록 상기 배치 정보를 변경하는 단계, 및 상기 복수의 패턴들 및 상기 적어도 2개의 패턴들로부터 병합된 패턴이 상기 복수의 마스크들 중 하나의 마스크에 대응되도록 상기 컬러링 정보를 생성하는 단계를 포함할 수 있다.
본 개시의 기술적 사상의 일측면에 따른 컴퓨터로 읽을 수 있는 비일시적인 저장 매체는, 상기 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법을 실행하기 위한 복수의 명령들을 저장할 수 있다.
본 개시의 기술적 사상에 따른 집적 회로의 레이아웃을 설계하는 방법에 의하면, 멀티 마스크를 이용한 패터닝 기법이 용이하게 활용될 수 있고, 결과적인 집적 회로의 레이아웃의 집적도를 향상시킬 수 있다.
또한, 본 개시의 기술적 사상에 따른 집적 회로의 레이아웃을 설계하는 방법에 의하면, 집적 회로의 레이아웃을 설계하는데 걸리는 시간을 단축할 수 있다.
도 1은 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법을 나타내는 순서도이다.
도 2는 멀티 마스크 패터닝을 개략적으로 나타내는 도면이다.
도 3은 복수의 패턴들을 포함하는 집적 회로의 레이아웃을 나타내는 평면도이다.
도 4는 설계 규칙을 위반한 패턴들을 포함하는 집적 회로의 레이아웃을 나타내는 평면도이다.
도 5a 및 도 5b는 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법이 집적 회로의 레이아웃에 적용되는 과정을 나타내는 도면이다.
도 6은 본 개시의 예시적 실시예에 따라 도 1의 단계 S40의 예시를 나타내는 순서도이다.
도 7은 본 개시의 예시적 실시예에 따라 도 1의 단계 S60의 예시를 나타내는 순서도이다.
도 8은 복수의 표준 셀들을 포함하는 집적 회로의 레이아웃을 나타내는 평면도이다.
도 9a 및 도 9b는 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법이 집적 회로의 레이아웃에 적용되는 과정을 나타내는 도면이다.
도 10은 본 개시의 예시적 실시예에 따라 도 7의 단계 S62의 예시를 나타내는 순서도이다.
도 11a 및 도 11b는 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법이 집적 회로의 레이아웃에 적용되는 과정을 나타내는 도면이다.
도 12는 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법을 나타내는 순서도이다.
도 13은 본 개시의 예시적 실시예에 따라 도 12의 단계 S140의 예시를 나타내는 순서도이다.
도 14는 본 개시의 예시적 실시예에 따른 컴퓨터로 읽을 수 있는 저장 매체를 도시하는 블록도이다.
도 15은 본 개시의 예시적 실시예에 따른 컴퓨터 시스템을 도시하는 블록도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시 예에 대해 상세히 설명한다. 본 발명의 실시 예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되는 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나 축소하여 도시한 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수개의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 벗어나지 않으면서, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 아니하는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법을 나타내는 순서도이다. 집적 회로 또는 집적 회로의 레이아웃은 복수의 레이어들이 적층된 구조를 포함할 수 있고, 복수의 레이어 각각에 형성된 복수개의 패턴들을 포함할 수 있다. 패턴은 반도체 제조 공정에 따라 형성된 물질의 형상을 지칭할 수 있고, 하나의 레이어에 복수의 패턴들이 형성될 수 있다. 예를 들면, 패턴은 서로 다른 레이어에 형성된 도전체들을 전기적으로 연결시키는 비아(via)를 형성하기 위하여 특정 레이어에 형성될 수도 있고, 하나의 레이어에서 전기적 신호를 이동시키는 라인을 형성할 수도 있다. 패턴은 마스크 공정, 식각 공정, 및/또는 퇴적 공정 등을 통해서 형성될 수 있다.
집적 회로의 집적도를 높이기 위하여, 패턴의 크기 또는 서로 다른 패턴들 사이의 간격이 감소될 것이 요구된다. 이에 따라, 하나의 레이어에 포함된 패턴들을 형성하기 위해 단일 마스크가 아닌 복수의 마스크들을 사용하는 멀티 마스크 패터닝(multi-mask patterning)이 사용될 수 있다. 멀티 마스크 패터닝에 따라, 하나의 레이어에 포함된 복수의 패턴들 중 각각은 복수의 마스크들 중 하나의 마스크에 대응될 수 있고, 대응되는 마스크에 기초하여 형성될 수 있다. 예를 들면, 하나의 레이어에 형성하고자 하는 2개의 패턴들은 하나의 마스크에 기초하여 형성될 때보다 서로 다른 2개의 마스크들에 각각 기초하여 형성될 때 서로 더 근접하게 배치될 수 있다. 멀티 마스크 패터닝에 대한 자세한 내용은 도 2를 참조하여 후술될 것이다.
하나의 레이어에 형성될 복수의 패턴들 중 각각을 복수의 마스크들 중 하나에 대응시키는 것은 복수의 패턴들을 컬러링하는 것으로서 지칭될 수 있고, 복수의 패턴들 및 복수의 마스크들 사이의 대응관계를 포함하는 데이터는 컬러링 정보로서 지칭될 수 있다. 즉, 동일한 컬러를 가지는 패턴들은 동일한 마스크에 기초하여 형성될 수 있고, 상이한 컬러를 가지는 패턴들은 상이한 마스크에 기초하여 형성될 수 있다. 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법은 복수의 패턴들에 대한 컬러링을 효과적으로 수행함으로써 멀티 마스크 패터닝이 용이하게 활용되도록 하고, 이에 따라 집적 회로의 집적도를 향상시킬 수 있다. 뿐만 아니라, 집적 회로의 레이아웃을 설계하는 데 걸리는 시간을 단축시킬 수도 있다.
이하의 도면들에서 도시된 집적 회로의 레이아웃들은 집적 회로의 레이아웃을 정의하는 레이아웃 데이터로부터 도출된 그래픽 데이터일 수 있다. 또한, 이하의 설명에서 집적 회로의 레이아웃에 포함된 구성요소들은 레이아웃 데이터로부터 정의되는 것으로서, 레이아웃 데이터를 변경함으로써 생성, 제거 또는 변형될 수 있다.
도 1을 참조하면, 단계 S20에서, 입력 레이아웃 데이터를 수신하는 동작이 수행될 수 있다. 입력 레이아웃 데이터는, 예컨대 GDSII(Graphic Data System II)와 같이 집적 회로의 레이아웃에 대한 기하학적 정보를 포함할 수 있다. 예를 들면, 입력 레이아웃 데이터는 하나의 레이어에 형성된 복수의 패턴들에 대한 배치 정보를 포함할 수 있고, 배치 정보는 복수의 패턴들 중 각각의, 위치, 크기 및 연결된 네트에 관한 정보를 포함할 수 있다. 또한 본 실시예에서, 입력 레이아웃 데이터는 컬러링 정보를 포함할 수 있다. 입력 레이아웃 데이터에 포함된 컬러링 정보는 집적 회로의 레이아웃 생성시 디폴트로 정의된 것일 수도 있고, 집적 회로의 레이아웃에 기초하여 반도체 설계 툴의 컬러링 알고리즘에 의해 생성된 것일 수도 있다.
단계 S40에서, 복수의 패턴들에 대하여 설계 규칙을 체크하는 동작이 수행될 수 있다. 설계 규칙(design rule)은 주어진 반도체 제조 공정에 기초하여 집적 회로의 레이아웃을 설계하는 과정에서 준수하여야 할 복수의 수치들을 포함할 수 있다. 예를 들면, 설계 규칙은 패턴의 최소 폭을 포함할 수 있고, 하나의 레이어에 형성되는 2개의 패턴들 사이의 최소 간격을 포함할 수도 있다. 또한, 설계 규칙은 멀티 마스크 패터닝에서 동일한 마스크에 기초하여 형성되는 패턴들 사이의 최소 거리 및 상이한 마스크들에 기초하여 각각 형성되는 패턴들 사이의 최소 거리를 포함할 수 있다. 본 실시예에서, 복수의 패턴들은 동일한 레이어에서 형성된 것들일 수 있고, 복수의 패턴들에 대하여 설계 규칙을 준수하는지 여부가 판단될 수 있다.
단계 S60에서, 설계 규칙을 위반한 제1 및 제2 패턴 중 제1 패턴을 제3 패턴과 병합하는 동작이 수행될 수 있다. 예를 들면, 제1 및 제2 패턴은 동일한 마스크에 대응할 수 있고, 제1 및 제2 패턴 사이의 거리가, 설계 규칙에 따른 동일한 마스크에 기초하여 형성되는 패턴들 사이의 최소 거리보다 작을 수 있다. 제3 패턴은 제1 패턴과 동일한 네트(net)에 연결된 패턴으로서, 제1 패턴은 제3 패턴과 병합될 수 있다. 네트는 집적 회로의 레이아웃과 동등한 회로도에서 노드(node)에 대응하는 것으로서, 동일한 네트에 연결된 패턴들은 집적 회로의 동작시 동일한 전위(또는, 기생 저항에 기인하여 거의 유사한 전위)를 가질 수 있다.
제1 및 제3 패턴으로부터 병합된 패턴은 제3 패턴에 대응하는 마스크에 대응될 수 있다. 이에 따라, 제1 및 제2 패턴에 대하여 위반된 설계 규칙은 제1 및 제3 패턴으로부터 병합된 패턴 및 제2 패턴에 대하여 준수될 수 있다. 제1 및 제3 패턴의 병합은 입력 레이아웃 데이터에서 제1 및 제3 패턴에 대응하는 배치 정보를 삭제하고, 병합된 패턴에 대응하는 배치 정보를 생성함으로써 실현될 수 있다. 또한, 컬러링 정보를 갱신함으로써 병합된 패턴은 제3 패턴이 대응하던 마스크에 대응될 수 있다.
제1 및 제2 패턴이 설계 규칙에 위반되는 경우, 이를 극복하기 위하여 제1 또는 제2 패턴이 대응하는 마스크가 변경될 수 있다. 그러나, 만약 제1 패턴에 대응하는 마스크가 변경되는 경우, 제1 패턴 및 제1 패턴에 인접한 패턴들 사이에 대하여 설계 규칙이 위반될 수 있고, 이를 극복하기 위해 또 다른 패턴에 대응하는 마스크를 변경하는 동작이 반복될 수 있다. 이와 다르게, 제1 및 제2 패턴이 설계 규칙을 준수하도록 제1 또는 제2 패턴의 위치가 변경될 수 있다. 그러나, 만약 제1 패턴의 위치가 변경되는 경우, 제1 패턴의 이동에 따른 다른 패턴들(예컨대, 제1 패턴과 동일한 레이어에 있는 패턴 또는 다른 레이어에 있는 패턴)의 연쇄적인 이동이 발생할 수 있고, 불필요하게 낭비되는 공간이 발생할 수 있다. 따라서, 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법은 컬러링을 용이하게 수행할 수 있게 함으로써 집적 회로의 레이아웃을 설계하는데 걸리는 시간을 단축할 수 있다. 단계 S40에서 복수의 패턴들이 설계 규칙을 만족하는 경우 단계 S60은 생략될 수 있고, 단계 S80이 단계 S40에 후속하여 수행될 수 있다.
단계 S80에서, 출력 레이아웃 데이터를 생성하는 동작이 수행될 수 있다. 예를 들면, 단계 S60에서 변경된 배치 정보 또는 갱신된 컬러링 정보를 포함하는 출력 레이아웃 데이터가 생성될 수 있다. 출력 레이아웃 데이터는 복수의 패턴들의 배치 정보뿐만 아니라 컬러링 정보를 포함함으로써, 출력 레이아웃 데이터에 기초하여 집적 회로의 제조를 위한 반도체 제조 공정이 도출될 수 있다.
도 2는 멀티 마스크 패터닝을 개략적으로 나타내는 도면이다. 전술한 바와 같이, 하나의 레이어에 형성되는 복수의 패턴들이 복수의 마스크들에 기초하여 형성됨으로써 집적 회로의 집적도가 향상될 수 있다.
도 2를 참조하면, 복수의 패턴들(P1 내지 P4)은 복수의 마스크들(101 내지 103)에 기초하여 형성될 수 있다. 즉, 제1 레이어(L1) 위에 위치하는 레이어에서 형성된(또는 제1 레이어(L1) 위에 위치하는 레이어에 포함되는) 복수의 패턴들(P1 내지 P4) 각각은 복수의 마스크들(101 내지 103) 중 하나에 기초하여 형성될 수 있다. 예를 들면, 제1 및 제2 패턴(P1, P2)은 제1 마스크(101)에 기초하여 형성될 수 있고, 제3 패턴(P3)은 제2 마스크(102)에 기초하여 형성될 수 있고, 제4 패턴(P4)은 제3 마스크(103)에 기초하여 형성될 수 있다.
멀티 마스크 패터닝에 따라 하나의 레이어에서 형성되는 패턴들의 집적도가 향상될 수 있다. 예를 들면, 도 2에서 제1 패턴 및 제3 패턴은 서로 다른 마스크들(101, 102)에 기초하여 각각 형성됨으로써, 동일한 마스크로 형성될 때 보다 가까운 거리만큼 서로 이격될 수 있다. 하나의 레이어에 형성되는 복수의 패턴들을 형성하기 위해 사용되는 마스크들의 개수는 반도체 제조 공정에 기초하여 결정될 수 있고, 집적 회로를 제조하는데 걸리는 시간이 마스크들의 개수를 결정하는데 고려될 수 있다.
도 2에서 복수의 패턴들(P1 내지 P4)을 형성하기 위한 복수의 마스크들(101 내지 103)만이 도시하였으나, 복수의 패턴들(P1 내지 P4)은 추가적으로 수행되는 퇴적 공정 및/또는 식각 공정에 따라 형성될 수 있다. 또한, 도 2에서 복수의 패턴들(P1 내지 P4)은 제1 레이어(L1) 상에 돌출된 형상으로 도시되었으나, 본 개시의 예시적 실시예들에 따라 하나의 레이어에서 형성되는 복수의 패턴들은 홀(hole) 또는 비아(via)를 형성하는 패턴일 수도 있다.
도 3은 복수의 패턴들을 포함하는 집적 회로의 레이아웃을 나타내는 평면도이다. 구체적으로 도 3은 도 2에 도시된 멀티 마스크 패터닝에 기초하여 형성된 복수의 패턴들(P1 내지 P4)의 평면도를 나타내고, 복수의 패턴들(P1 내지 P4)은 제1 레이어(L1) 위에 위치하는 레이어에서 형성될 수 있다.
전술한 바와 같이, 설계 규칙은 동일한 마스크에 기초하여 하나의 레이어에 형성되는 2개의 패턴들 사이의 최소 간격인 D_same을 포함할 수 있고, 상이한 마스크들에 기초하여 하나의 레이어에 형성되는 2개의 패턴들 사이의 최소 간격인 D_diff를 포함할 수 있다. 멀티 마스크 패터닝의 효과에 의해서 D_diff는 D_same 보다 작을 수 있다. 입력 레이아웃 데이터에 따른 집적 회로의 레이아웃에서 복수의 패턴들 사이의 거리는 D_diff보다 크거나 같을 수 있다. 상이한 마스크들에 기초하여 형성되는 패턴들 사이의 거리는 주어진 반도체 제조 공정으로부터 구현이 가능한 최소의 거리일 수 있고, 이에 따라 입력 레이아웃 데이터에서 하나의 레이어에 형성된 복수의 패턴들 사이의 거리가 D_diff보다 크거나 같도록 설계될 수 있다. 서로 D_diff이상 이격된 복수의 패턴들 중 각각을 복수의 마스크들 중 하나를 대응시키는 컬러링 동작이 수행되고, 컬러링 정보가 생성될 수 있다.
도 2 및 도 3을 함께 참조하면, 서로 다른 마스크들(101, 102)에 기초하여 각각 형성되는 제1 패턴(P1) 및 제3 패턴(P3) 사이의 거리(D1)는 설계 규칙에 따른 D_diff보다 클 수 있다(즉, D1 > D_diff). 만약, D1이 D_diff보다 작다면, 제1 패턴(P1) 및 제3 패턴(P3)은 설계 규칙을 위반한 패턴들로서 분류될 수 있다. 마찬가지로, 서로 다른 마스크들(101, 103)에 기초하여 각각 형성되는 제1 패턴(P1) 및 제3 패턴(P3) 사이의 거리(D3)도 설계 규칙에 따른 D_diff보다 클 수 있다(즉, D3 > D_diff). 동일한 마스크, 즉 제1 마스크(101)에 기초하여 형성되는 제1 패턴(P1) 및 제2 패턴(P2) 사이의 거리(D2)는 설계 규칙에 따른 D_same보다 클 수 있다(즉, D2 > D_same). 이와 같이, 컬러링된 패턴들에 의해 설계 규칙이 위반되는 것은 컬러 충돌(color conflict)로서 지칭될 수 있다.
도 4는 설계 규칙을 위반한 패턴들을 포함하는 집적 회로의 레이아웃을 나타내는 평면도이다. 전술한 바와 같이, 하나의 레이어에 형성되는 복수의 패턴들은 컬러링에 의해서 복수의 마스크들 중 하나에 대응될 수 있고, 컬러링 정보는 집적 회로의 레이아웃을 생성할 때 디폴트로 정의될 수도 있고, 집적 회로의 레이아웃에 기초하여 반도체 설계 툴의 컬러링 알고리즘에 의해서 생성될 수도 있다. 도 4에서, 제1, 제2, 제6 및 제7 패턴들(10_1, 10_2, 10_6, 10_7)은 제1 마스크에 기초하여 형성될 수 있고, 제3 및 제8 패턴들(10_3, 10_8)은 제2 마스크에 기초하여 형성될 수 있고, 제4 및 제5 패턴들(10_4, 10_5)은 제3 마스크에 기초하여 형성될 수 있다.
도 4를 참조하면, 집적 회로의 레이아웃(10)은 하나의 레이어에서 형성되는 복수의 패턴들(10_1 내지 10_8)을 포함할 수 있다. 제1 마스크에 기초하여 형성되는 제1 패턴(10_1) 및 제2 패턴(10_2)은 Dx만큼 이격될 수 있고, Dx가 설계 규칙에 따른 D_same보다 작은 경우 제1 패턴(10_1) 및 제2 패턴(10_2)은 설계 규칙을 위반한 패턴으로 분류될 수 있다.
설계 규칙을 준수하기 위한 한 방법으로서, 제1 패턴(10_1)을 제1 마스크와 다른 마스크, 예컨대 제2 마스크에 대응시키는 경우, 제1 패턴(10_1) 및 제3 패턴(10_3)은 설계 규칙에 따른 D_same에 기인하여 설계 규칙을 위반할 수 있다. 또한, 제1 패턴(10_1)을 제3 마스크에 대응시키는 경우, 제1 패턴(10_1) 및 제4 패턴(10_4)은 설계 규칙에 따른 D_same에 기인하여 설계 규칙을 위반할 수 있다. 이와 같이, 위반된 패턴들 중 하나를 다른 마스크에 대응시키는 것은 설계 규칙을 위반한 새로운 패턴들을 생성할 수 있다.
설계 규칙을 준수하기 위한 다른 방법으로서, 제1 패턴(10_1)이 제2 패턴(10_2)으로부터 D_same보다 멀리 이격되도록 제1 패턴(10_1)을 이동시키는 경우, 제1 패턴(10_1)과 제1 패턴(10_1)에 인접한 다른 패턴들, 예컨대 제4 패턴(10_4) 또는 제5 패턴(10_5) 사이의 거리가 감소함에 따라, 설계 규칙에 따른 D_diff에 기인하여 설계 규칙을 위반할 수 있다. 이와 같이, 위반된 패턴들 중 하나의 위치를 이동시키는 것은 설계 규칙을 위반한 새로운 패턴들을 생성할 수 있다.
도 5a 및 도 5b는 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법이 집적 회로의 레이아웃에 적용되는 과정을 나타내는 도면이다. 구체적으로, 도 5a 및 도 5b는 도 4의 집적 회로의 레이아웃(10)에서 설계 규칙을 위반한 제1 및 제2 패턴들(10_1, 10_2)에 대하여 설계 규칙의 위반을 해소하는 과정을 나타내는 도면이다. 도 4와 유사하게, 도 5a 및 도 5b에서 집적 회로의 레이아웃(10')은 동일한 레이어에서 형성된 복수의 패턴들(10_1' 내지 10_8')을 포함할 수 있고, 제1 및 제2 패턴들(10_1', 10_2')은 동일한 마스크(즉, 제1 마스크)에 기초하여 형성되고, 제1 및 제2 패턴들(10_1', 10_2') 사이의 거리는 D_same보다 작을 수 있다.
본 개시의 예시적 실시예에 따라, 설계 규칙을 위반한 제1 및 제2 패턴들(10_1', 10_2')에 인접한 패턴들 중, 제1 또는 제2 패턴(10_1', 10_2')과 동일한 네트에 연결된 패턴이 선택될 수 있다. 예를 들면, 도 5a에 도시된 바와 같이, 제1 패턴(10_1')과 제3 패턴(10_3')이 동일한 네트, 예컨대 전원 네트에 연결된 경우, 제3 패턴(10_3')이 선택될 수 있다. 도 5a에서 그룹 G로 도시된 바와 같이, 동일한 네트에 연결된 제1 패턴(10_1') 및 제3 패턴(10_3')은 그룹핑될 수 있다.
본 개시의 예시적 실시예에 따라, 그룹핑된 패턴들은 병합될 수 있다. 즉, 그룹핑된 복수의 패턴들은 하나의 패턴으로 병합될 수 있다. 예를 들면, 도 5b에 도시된 바와 같이, 도 5a의 제1 패턴(10_1') 및 제3 패턴(10_3')은 병합될 수 있고, 이에 따라 제1 패턴(10_1') 및 제3 패턴(10_3')으로부터 병합된 패턴(10_13)이 생성될 수 있다. 병합된 패턴(10_13)은 제1 패턴(10_1') 및/또는 제3 패턴(10_3')을 연장함으로써 형성될 수 있다. 병합된 패턴(10_13)은 복수의 마스크들 중 하나에 대응될 수 있고, 예컨대 제3 패턴(10_3')에 대응하는 마스크(즉, 제2 마스크)에 병합된 패턴(10_13)이 대응되도록 컬러링 정보가 갱신될 수 있다.
도 5b를 참조하면, 제2 마스크에 대응된 병합된 패턴(10_13)에 기인하여 설계 규칙은 준수될 수 있다. 즉, 병합된 패턴(10_13)이 제2 마스크에 대응됨으로써 제1 마스크에 대응하는 제2 패턴(10_2') 및 병합된 패턴(10_13) 사이의 거리는 설계 규칙에 따른 D_diff와 비교될 수 있고, 제2 패턴(10_2') 및 병합된 패턴(10_13) 사이의 거리는 D_diff보다 클 수 있다. 이에 따라, 도 5a의 제1 패턴(10_1') 및 제2 패턴(10_2') 사이에 발생된 컬러 충돌은 용이하게 해소될 수 있다.
비록 도 5a 및 도 5b는 2개의 패턴들이 병합되는 예시를 도시하였으나, 본 개시의 기술적 사상이 이에 제한되지 아니하는 점은 이해될 것이다. 즉, 도 5a의 그룹(G)은 제1 패턴(10_1') 및 제3 패턴(10_3')뿐만 아니라 제1 패턴(10_1')과 동일한 네트에 연결된 다른 패턴을 더 포함할 수 있고, 그룹(G)에 의해 그룹핑된 패턴들은 병합될 수 있다.
도 6은 본 개시의 예시적 실시예에 따라 도 1의 단계 S40의 예시를 나타내는 순서도이다. 도 1을 참조하여 전술한 바와 같이, 도 1의 단계 S40에서 하나의 레이어에 형성된 복수의 패턴들에 대하여 설계 규칙을 체크하는 동작이 수행될 수 있다. 즉, 컬러 충돌의 발생 여부가 체크될 수 있다. 도6은 도 1의 단계 S40에서 복수의 패턴들 중 제1 마스크에 대응하는 제1 패턴 및 제2 패턴에 대하여 설계 규칙이 위반된 상태를 바탕으로 설명될 것이다. 즉, 도 6에서 제1 패턴 및 제2 패턴 사이의 거리는 설계 규칙에 따른 D_same보다 작을 수 있다.
본 개시의 예시적 실시예에 따라, 도 1의 단계 S60가 수행되기 전에 설계 규칙을 위반한 패턴을 다른 마스크에 대응시키는 동작이 단계 S40에서 수행될 수 있다. 즉, 단계 S60에 의해서 제1 패턴과 동일한 네트에 연결된 제3 패턴을 선택하고 제1 패턴과 제3 패턴을 병합하기 전에, 제1 및 제2 패턴에 인접한 패턴들에 대한 영향 없이 제1 또는 제2 패턴만을 다른 마스크에 대응시킴으로써 설계 규칙이 준수될 수 있는지 여부가 판단될 수 있다. 즉, 제1 또는 제2 패턴만을 다른 마스크에 대응시킴으로써 설계 규칙이 준수되지 못하는 경우, 단계 S60에 의해서 제1 패턴 및 제3 패턴이 병합될 수 있다. 이하에서, 도 6을 참조하여 도 1의 단계 S40의 예시가 상술될 것이다.
도 6을 참조하면, 도 1의 단계 S20에 후속하여 수행되는 단계 S41에서, 제1 또는 제2 패턴을 제1 마스크와 다른 마스크에 대응시키는 동작이 수행될 수 있다. 즉, 제1 또는 제2 패턴을 제1 마스크와 상이한 마스크에 대응시킬 수 있다. 단계 S43에서, 제1 및 제2 패턴에 인접한 패턴들(예컨대, 제1 및 제2 패턴으로부터 미리 정해진 거리 이하만큼 이격된 패턴들)과, 제1 및 제2 패턴에 대하여 설계 규칙을 체크하는 동작이 수행될 수 있다. 단계 S41에 기인하여 제1 또는 제2 패턴에 대응하는 마스크가 변경됨에 따라, 제1 및 제2 패턴에 인접한 패턴들과 제1 및 제2 패턴이 설계 규칙을 준수하는지 판단될 수 있다.
단계 S45에서, 제1 및 제2 패턴에 인접한 패턴들, 제1 및 제2 패턴이 설계 규칙을 통과하는지 판단하는 동작이 수행될 수 있다. 설계 규칙이 통과된 경우, 단계 S49에서 컬러링 정보를 갱신하는 동작이 수행될 수 있다. 즉, 제1 또는 제2 패턴에 대응하는 마스크가 변경되도록 컬러링 정보가 갱신될 수 있다. 갱신된 컬러링 정보를 포함하는 출력 레이아웃 데이터를 생성하는 도 1의 단계 S80이 단계 S49에 후속하여 수행될 수 있다.
단계 S45에서 설계 규칙이 통과되지 아니한 경우, 단계 S47에서 제1 또는 제2 패턴에 대응시킬 또 다른 마스크가 존재하는지 여부를 판단하는 동작이 수행될 수 있다. 전술한 바와 같이, 하나의 레이어에 형성된 복수의 패턴들을 위하여 사용 가능한 마스크들의 개수는 미리 정해질 수 있고, 단계 S41에 의해서 제1 또는 제2 패턴에 대응시킨 마스크들 외 다른 마스크가 존재하는지 여부가 단계 S45에서 판단될 수 있다. 제1 또는 제2 패턴에 대응시킬 또 다른 마스크가 존재하는 경우, 단계 S41이 단계 S47에 후속하여 수행될 수 있다. 반면, 제1 또는 제2 패턴에 대응시킬 마스크가 존재하지 아니한 경우, 제1 패턴을 및 제3 패턴과 병합하는 도 1의 단계 S60이 단계 S47에 후속하여 수행될 수 있다.
도 7은 본 개시의 예시적 실시예에 따라 도 1의 단계 S60의 예시를 나타내는 순서도이다. 도 1을 참조하여 전술한 바와 같이, 도 1의 단계 S60에서 설계 규칙을 위반한 제1 및 제2 패턴 중 제1 패턴을 제3 패턴과 병합하는 동작이 수행될 수 있다. 도 7은 도 1의 단계 S60에서 복수의 패턴들 중 제1 마스크에 대응하는 제1 패턴 및 제2 패턴에 대하여 설계 규칙이 위반된 상태를 바탕으로 설명될 것이다.
도 7을 참조하면, 단계 S62에서, 제1 및 제3 패턴이 병합되도록 입력 레이아웃 데이터의 배치 정보를 변경하는 동작이 수행될 수 있다. 제3 패턴은 제1 패턴이 연결된 네트와 동일한 네트에 연결된 패턴으로서, 단계 S62에서 입력 레이아웃 데이터에 포함된 배치 정보는 제1 패턴 및 제3 패턴이 병합되도록 변경될 수 있다. 예를 들면, 제1 패턴 및 제3 패턴에 대응하는 배치 정보는 삭제되고 제1 패턴 및 제3 패턴으로부터 병합된 패턴에 대응하는 배치 정보가 생성될 수 있다. 단계 S62의 예시는 도 10을 참조하여 상술될 것이다.
단계 S64에서, 제1 및 제3 패턴으로부터 병합된 패턴이 제3 패턴에 대응하는 마스크에 대응되도록 컬러링 정보를 갱신하는 동작이 수행될 수 있다. 병합된 패턴이 제3 패턴에 대응하는 마스크에 대응됨으로써 병합된 패턴 및 제2 패턴에 대하여 설계 규칙이 준수될 수 있다.
도 8은 복수의 표준 셀들을 포함하는 집적 회로의 레이아웃(20)을 나타내는 평면도이다. 표준 셀은 그 레이아웃에서 크기가 미리 정해진 규칙을 만족하는 집적 회로의 단위를 지칭할 수 있다. 예를 들면, 표준 셀의 레이아웃의 높이(즉, 레이아웃의 적층 방향과 수직인 제1 방향의 길이)는 일정할 수 있고, 표준 셀의 폭(즉, 레이아웃의 적층 방향 및 제1 방향과 수직인 제2 방향의 길이)은 표준 셀에 따라 상이할 수 있다. 표준 셀은 적어도 하나의 입력 핀 및/또는 적어도 하나의 출력 핀을 포함할 수 있고, 입력 핀으로 수신되는 입력 신호를 처리하고, 출력 핀을 통해서 출력 신호를 출력할 수 있다.
집적 회로는 복수의 표준 셀들로서 정의될 수 있고, 집적 회로를 설계하기 위한 툴은 복수의 표준 셀들에 대한 정보를 포함하는 표준 셀 라이브러리를 사용하여 집적 회로를 설계, 즉 집적 회로의 레이아웃을 완성할 수 있다. 집적 회로를 설계하기 위한 툴은 표준 셀에 포함된 핀(즉, 입력 핀 및 출력 핀)에 비아(via)를 배치함으로써, 표준 셀이 형성된 레이어와 다른 레이어에 형성되는 패턴과 핀을 연결할 수 있다. 즉, 표준 셀의 핀에 비아가 배치됨으로써 표준 셀의 입력 신호 또는 출력 신호가 이동할 수 있다.
비아는 패턴에 의해 형성된 비아 홀(via hole) 및 비아 홀을 채우는 비아 플러그(via plug)에 의해서 형성될 수 있다. 집적 회로의 레이아웃(20)을 설계하는 과정에서 설계 규칙은 비아들 사이의 간격을 규정할 수 있다. 예를 들면, 설계 규칙은 비아-투-비아 스페이스 룰(via-to-via space rule)을 포함할 수 있고, 비아-투-비아 스페이스 룰은 비아들 사이의 최소 간격을 포함할 수 있다. 비아-투-비아 스페이스 룰은 반도체 제조 공정에서 비아를 형성하기 위한 공정들, 예컨대 비아를 형성하기 위한 패턴을 형성하는 마스크 공정, 에칭 공정 및/또는 식각 공정 등에 기초하여 결정될 수 있다.
멀티 마스크 패터닝에 따라, 복수의 비아들 각각을 형성하기 위한 패턴들은 복수의 마스크들 중 하나에 기초하여 형성될 수 있다. 즉, 복수의 비아들 중 각각은 복수의 마스크들 중 하나에 기초하여 형성될 수 있다. 이에 따라, 하나의 레이어에서 형성되는 복수의 패턴들을 컬러링하는 동작은, 복수의 비아들을 컬러링하는 동작을 포함할 수 있다. 또한, 복수의 패턴들에 대하여 설계 규칙을 체크하는 것과 마찬가지로 복수의 비아들에 대하여 설계 규칙이 체크될 수 있고, 설계 규칙을 위반한 비아들이 발생할 수 있다. 이하에서, 비아들이 설계 규칙을 위반한 것은 비아들을 형성하기 위한 패턴들이 설계 규칙을 위반한 것으로 이해될 수 있고, 비아들을 컬러링 하는 것은 비아들을 형성하기 위한 패턴들을 컬러링하는 것으로 이해될 수 있다.
도 8을 참조하면, 집적 회로의 레이아웃(20)은 복수의 표준 셀들(21 내지 24)을 포함할 수 있고, 복수의 표준 셀들(21 내지 24)은 복수의 핀들(21_5, 21_6, 22_5, 22_6, 23_5, 23_6, 24_5, 24_6) 및 복수의 비아들(21_1, 21_2, 22_1, 22_2, 23_1, 23_2, 24_1, 24_2)을 각각 포함할 수 있다.
도 8에 도시된 예시에서, 제1 표준 셀(21)에 포함된 비아(21_1) 및 제4 표준 셀(24)에 포함된 비아(24_1)은 설계 규칙을 위반할 수 있다. 구체적으로, 비아(21_1) 및 비아(24_1)는 동일한 마스크(즉, 제1 마스크)에 대응될 수 있고, 동일한 마스크에서 비아들 사이의 거리를 규정하는 비아-투-비아 스페이스 룰을 위반할 수 있다. 비아-투-비아 스페이스 룰을 준수하기 위하여, 비아(21_1) 또는 비아(24_1)를 제1 마스크와 다른 마스크에 대응시키는 것은 전술한 바와 같이 비아(21_1) 또는 비아(24_1)에 인접한 다른 비아들을 다시 컬러링하는 작업을 유발할 수 있다. 또한, 비아-투-비아 스페이스 룰을 준수하기 위하여, 비아(21_1) 및 비아(24_1) 사이의 거리를 증가시키기 위하여 비아(21_1) 또는 비아(24_1)를 이동시키는 것은, 제1 표준 셀(21) 또는 제4 표준 셀(24)의 이동을 유발하거나, 비아(21_1) 또는 비아(24_1)에 인접한 다른 비아들이 비아-투-비아 스페이스 룰을 위반하는 것을 유발할 수 있다. 본 개시의 예시적 실시예에 따라 2개 이상의 비아들을 병합함으로써 설계 규칙의 위반, 즉 컬러 충돌을 해소할 수 있고, 이에 대한 상세한 내용은 이하에서 도 9a 및 도 9b를 참조하여 설명될 것이다.
도 9a 및 도 9b는 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법이 집적 회로의 레이아웃에 적용되는 과정을 나타내는 도면이다. 구체적으로, 도 9a 및 도 9b는 도 8의 집적 회로의 레이아웃(20)에서 설계 규칙을 위반한 비아들(21_1, 24_1)에 대하여 설계 규칙의 위반을 해소하는 과정을 나타내는 도면이다. 도 8과 유사하게, 도 9a 및 도 9b에서 집적 회로의 레이아웃(20')은 복수의 메모리 셀들(21' 내지 24')의 핀들(21_5', 21_6', 22_5', 22_6', 23_5', 23_6', 24_5', 24_6')에 연결된 비아들(21_1', 21_2', 22_1', 22_2', 23_1', 23_2', 24_1', 24_2')을 포함할 수 있다. 비아(21_1') 및 비아(24_1')는 동일한 마스크(즉, 제1 마스크)에 대응하고, 비아(21_1') 및 비아(24_1')는 동일한 마스크에 대응하는 비아들 사이의 거리를 규정하는 비아-투-비아 스페이스 룰을 위반할 수 있다.
본 개시의 예시적 실시예에 따라, 설계 규칙을 위반한 비아들(21_1', 24_1')에 인접한 패턴들 중, 비아들(21_1', 24_1') 중 하나와 동일한 네트에 연결된 패턴이 선택될 수 있다. 예를 들면, 도 9a에 도시된 바와 같이 제2 표준 셀(22')의 핀(22_5')에 연결된 비아(22_1')는, 비아(21_1')에 연결된 도선(29)에 연결될 수 있다. 즉, 비아(22_1')은 비아(21_1')과 동일한 네트에 연결될 수 있다.
본 개시의 예시적 실시예에 따라, 동일한 네트에 연결된 도 9a의 비아들(21_1') 및 비아(22_1')는 병합될 수 있다. 예를 들면, 도 9b에 도시된 바와 같이 도 9a의 비아들(21_1', 22_1')로부터 병합된 비아(20_12)가 생성될 수 있고, 병합된 비아(20_12)는 바-유형 비아(bar-type via)를 형성할 수 있다. 병합된 비아(20_12)는 복수의 마스크들 중 하나에 대응될 수 있고, 예컨대 도 9a의 비아(22_1')에 대응하는 마스크(즉, 제2 마스크)에 병합된 패턴(20_12)이 대응되도록 컬러링 정보가 갱신될 수 있다.
도 9b를 참조하면, 제2 마스크에 대응된 병합된 비아(20_12)에 기인하여 설계 규칙은 준수될 수 있다. 즉, 병합된 비아(20_12)가 제2 마스크에 대응됨으로써 제1 마스크에 대응하는 비아(24_1') 및 병합된 비아(20_12) 사이의 거리는 상이한 마스크에 대응하는 비아들 사이의 거리를 규정하는 비아-투-비아 스페이스 룰이 적용될 수 있다. 이에 따라, 비아(24_1') 및 병합된 비아(20_12)는 설계 규칙을 준수할 수 있다.
도 10은 본 개시의 예시적 실시예에 따라 도 7의 단계 S62의 예시를 나타내는 순서도이다. 도 7을 참조하여 전술한 바와 같이, 도 7의 단계 S62에서 제1 및 제3 패턴이 병합되도록 입력 레이아웃 데이터의 배치 정보를 변경하는 동작이 수행될 수 있다. 여기서 제1 패턴은 제2 패턴과 동일한 마스크에 대응할 수 있고, 제1 패턴 및 제2 패턴은 설계 규칙을 위반할 수 있다. 또한 제3 패턴은 제1 패턴이 연결된 네트와 동일한 네트에 연결될 수 있다.
도 10을 참조하면, 단계 S62_2에서 전원 네트에 공통으로 연결되고 동일한 마스크에 대응하는 제1 및 제3 패턴을 선택할 수 있다. 전원 네트는 집적 회로의 전체 또는 일부에 전원 전압, 예컨대 VDD 또는 접지 전압을 공급하기 위한 네트로서, 집적 회로의 레이아웃에서 전체적으로 또는 국소적으로 복수의 패턴들과 연결될 수 있다. 따라서, 본 예시에서 설계 규칙을 위반한 제1 패턴 및 제2 패턴 중 제1 패턴이 전원 네트에 연결된 경우, 전원 네트에 연결된 제3 패턴이 선택될 수 있다. 예를 들면, 도 9a에 도시된 예시에서 도선(29) 및 비아들(21_1', 22_1')이 연결된 네트는 전원 네트일 수 있다.
단계 S62_4에서, 제1 및 제2 패턴을 연장함으로써 병합된 패턴을 생성하는 동작이 수행될 수 있다. 예를 들면, 도 9b에 도시된 바와 같이, 도 9a의 비아들(21_1', 22_1')이 병합됨으로써 바-유형 비아가 형성될 수 있다. 그 다음에, 단계 S62_6에서 집적 회로의 레이아웃이 병합된 패턴을 포함하도록 배치 정보를 변경하는 동작이 수행될 수 있다. 즉, 제1 패턴 및 제3 패턴에 대응하는 배치 정보를 입력 레이아웃 데이터로부터 삭제하고, 병합된 패턴의 배치 정보를 입력 레이아웃 데이터에 추가할 수 있다.
도 11a 및 도 11b는 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법이 집적 회로의 레이아웃에 적용되는 과정을 나타내는 도면이다. 구체적으로, 도 11a 및 도 11b는 배치 정보를 포함하지만 컬러링 정보를 포함하지 아니하는 입력 레이아웃 데이터에서 복수의 패턴들을 컬러링하는 방법을 나타낸다. 이하에서, 집적 회로의 레이아웃을 설계하는 방법은 도 11a 및 도 11b를 참조하여 복수의 비아들을 컬러링하는 것으로서 설명되나, 복수의 비아들을 형성하기 위한 패턴들을 컬러링하는 것으로 이해될 것이다.
본 개시의 예시적 실시예에 따라 복수의 비아들을 컬러링하기 전에 동일한 네트에 연결된 비아들을 병합하는 동작이 수행될 수 있다. 이에 따라 비아들의 개수가 감소할 수 있고, 비아들을 컬러링하는 동작은 용이하게 수행될 수 있다.
도 11a를 참조하면, 집적 회로의 레이아웃(30)은 복수의 표준 셀들(31 내지 34)을 포함할 수 있고, 복수의 표준 셀들(31 내지 34)의 핀들에 연결된 복수의 비아들(31_1, 31_2, 32_1, 32_2, 33_1, 33_2, 34_1, 34_2)을 포함할 수 있다. 비아들(31_1, 32_1)은 도선(39)에 연결될 수 있고, 이에 따라 동일한 네트에 연결될 수 있다. 예를 들면, 도선(39)이 표준 셀들(31 내지 34)에 전원 전압을 공급하기 위한 파워 라인인 경우, 표준 셀들(31 내지 34) 각각은 적어도 하나의 비아를 통해서 도선(39)에 연결될 수 있다.
도 11b를 참조하면, 동일한 네트에 연결된 도 11a의 비아들(31_1, 32_1)이 병합됨으로서 병합된 비아(30_12)가 생성될 수 있다. 전술한 바와 같이, 병합된 비아(30_12)는 바-유형 비아일 수 있고, 도선(39)와 연결될 수 있다. 이에 따라, 집적 회로의 레이아웃(30)에서 컬러링 동작의 대상이 되는 비아들은 1개 감소할 수 있고, 비아들을 컬리링하는 동작은 용이하게 수행될 수 있다.
도 12는 본 개시의 예시적 실시예에 따른 집적 회로의 레이아웃을 설계하는 방법을 나타내는 순서도이다. 구체적으로 도 12에 도시된 실시예는 컬러링 정보를 생성하는 방법을 나타내는 순서도이다.
단계 S120에서, 입력 레이아웃 데이터를 수신하는 동작이 수행될 수 있다. 도 12에 도시된 실시예에서, 입력 레이아웃 데이터는 복수의 패턴들의 배치 정보를 포함할 수 있으나, 복수의 패턴들의 컬러링 정보는 포함되지 아니할 수 있다.
단계 S140에서, 복수의 패턴들 각각을 복수의 마스크들 중 하나의 마스크에 대응시킨 컬러링 정보를 생성하는 동작이 수행될 수 있다. 단계 S140은 도 14를 참조하여 상술될 것이다. 그 다음에, 단계 S180에서, 단계 S140에 의해서 생성된 컬러링 정보를 포함하는 출력 레이아웃 데이터를 생성할 수 있다.
도 13은 본 개시의 예시적 실시예에 따라 도 12의 단계 S140의 예시를 나타내는 순서도이다. 도 11a 및 도 11b를 참조하여 전술한 바와 같이, 복수의 패턴들을 컬러링하기 전에 동일한 네트에 연결된 패턴들을 병합하는 동작이 수행될 수 있다.
도 13을 참조하면, 단계 S142에서, 복수의 패턴들 중 동일한 네트에 연결된 적어도 2개의 패턴들이 병합되도록 배치 정보를 변경하는 동작이 수행될 수 있다. 예를 들면, 입력 레이아웃 데이터에 포함된 배치 정보에 기초하여, 하나의 레이어에 형성된 복수의 패턴들 중에서 미리 정해진 거리 이하만큼 서로 이격된 패턴 쌍들을 추출할 수 있고, 추출된 패턴 쌍들 중 동일한 네트에 연결된 패턴들을 포함하는 패턴 쌍이 선택될 수 있고, 선택된 패턴 쌍의 패턴들이 병합될 수 있다. 집적 회로의 레이아웃이 병합된 패턴을 포함하도록 입력 레이아웃 데이터의 배치 정보는 변경될 수 있다. 그 결과, 집적 회로의 레이아웃에서 하나의 레이어에 형성된 복수의 패턴들의 개수는 감소할 수 있다.
단계 S144에서, 복수의 패턴들 및 병합된 패턴 각각을 복수의 마스크들 중 하나의 마스크에 대응시킨 컬러링 정보를 생성하는 동작이 수행될 수 있다. 단계 S142에 의해서 감소된 개수의 패턴들에 대하여 컬러링 동작이 수행됨으로써 컬러링 정보를 생성하는데 걸리는 시간은 단축될 수 있다.
도 14는 본 개시의 예시적 실시예에 따른 컴퓨터로 읽을 수 있는 저장 매체(200)를 도시하는 블록도이다. 컴퓨터로 읽을 수 있는 저장 매체(200)는 컴퓨터에 명령어들 및/또는 데이터를 제공하는데 사용되는 동안 컴퓨터에 의해 읽혀질 수 있는 임의의 저장 매체를 포함할 수 있다. 예를 들면, 컴퓨터로 읽을 수 있는 저장 매체(200)는 디스크, 테이프, CD-ROM, DVD-ROM, CD-R, CD-RW, DVD-R, DVD-RW 등과 같은 자기 또는 광학 매체, RAM, ROM, 플래시 메모리 등과 같은 휘발성 또는 비휘발성 메모리, USB 인터페이스를 통해서 엑세스 가능한 비휘발성 메모리, 그리고 MEMS(microelectromechanical systems) 등을 포함할 수 있다. 컴퓨터로 읽을 수 있는 저장 매체는 컴퓨터에 삽입 가능하거나, 컴퓨터 내에 집적되거나, 네트워크 및/또는 무선 링크와 같은 통신 매개체를 통해서 컴퓨터와 결합될 수 있다. 도 14를 참조하면, 컴퓨터로 읽을 수 있는 저장 매체(200)는 위치 및 배선 프로그램(220), 컬러링 프로그램(240), 설계 규칙(260) 및 데이터 구조(280)를 포함할 수 있다.
위치 및 배선 프로그램(220)은 집적 회로의 레이아웃에 포함된 표준 셀들을 배치하고 도선을 통해서 연결하는 동작을 수행하는 복수의 명령어들을 포함할 수 있다. 또한, 위치 및 배선 프로그램(220)은 본 개시의 예시적 실시예들 중 하나에 따른 집적 회로의 레이아웃을 설계하는 방법을 수행하기 위한 복수의 명령어들을 포함할 수 있다.
컬러링 프로그램(240)은 하나의 레이어에 형성되는 복수의 패턴들 중 각각을 복수의 마스크들 중 하나에 대응시키는 동작, 즉 복수의 패턴들을 컬러링하는 동작을 수행하는 복수의 명령어들을 포함할 수 있다. 또한, 위치 및 배선 프로그램(220)은 본 개시의 예시적 실시예들 중 하나에 따른 집적 회로의 레이아웃을 설계하는 방법을 수행하기 위한 복수의 명령어들을 포함할 수 있다.
본 개시의 예시적 실시예에 따라, 컴퓨터로 읽을 수 있는 저장 매체(200)는 선행하는 도면들 중 하나 이상에서 도시된 순서도들의 일부나 전부를 수행하는 임의의 명령들을 포함하는 위치 및 배선 프로그램(220)과 컬러링 프로그램(240)을 저장할 수 있다. 도 14의 예시에서, 위치 및 배선 프로그램(220)과 컬러링 프로그램(240)은 개별적으로 도시되었으나, 하나의 프로그램으로서 컴퓨터로 읽을 수 있는 저장 매체(200)에 저장될 수도 있다.
설계 규칙(260)은 집적 회로를 제조하는 반도체 제조 공정에 기초하여 집적회로의 레이아웃이 준수해야 할 복수의 수치들을 포함할 수 있다. 위치 및 배선 프로그램(220)과 컬러링 프로그램(240)은 설계 규칙(260)에 포함된 수치를 참조하여 집적 회로의 레이아웃을 설계할 수 있다.
데이터 구조(280)는 위치 및 배선 프로그램(220)과 컬러링 프로그램(240)이 실행되는 과정에서 생성된 데이터를 관리하기 위한 저장 공간 등을 포함할 수 있다.
도 15은 본 개시의 예시적 실시예에 따른 컴퓨터 시스템(300)을 도시하는 블록도이다. 도 15에 도시된 바와 같이, 컴퓨터 시스템(300)은 프로세서(320), 메모리(340) 및 다양한 주변 장치들(360)을 포함할 수 있다. 프로세서(320)는 메모리(340) 및 주변 장치들(360)과 연결될 수 있다.
프로세서(320)는 이상에서 설명된 본 개시의 예시적 실시예들에 따른 방법들 중 적어도 하나를 수행하는 명령어들을 실행하도록 구성될 수 있다. 예를 들면, 프로세서(320)은 집적 회로의 레이아웃에 포함된 하나의 레이어에 형성되는 복수의 패턴들 중 각각을 복수의 마스크들 중 하나에 대응시키는 동작, 즉 복수의 패턴들을 컬러링하는 동작을 수행하는 복수의 명령어들을 수행할 수 있다. 즉, 도 1의 단계들(S20, S40, S60 및 S80) 및 도 12의 단계들(S120, S140 및 S160)은 프로세서(320)에 의하여 수행될 수 있다.
본 개시의 예시적 실시예에 따라, 프로세서(320)는 임의의 명령어 세트(예컨대, IA-32(Intel Architecture-32), 64 비트 확장 IA-32, x86-64, PowerPC, Sparc, MIPS, ARM, IA-64 등)를 실행할 수 있다. 또한, 컴퓨터 시스템(300)은 하나 이상의 프로세서를 포함할 수도 있다.
프로세서(320)는 임의의 방식으로 메모리(340) 및 주변 장치들(360)과 연결될 수 있다. 예를 들면, 프로세서(320)는 메모리(340) 및/또는 주변 장치들(360)과 다양한 상호연결들을 통해서 연결될 수 있다. 뿐만 아니라, 하나 이상의 브릿지 칩들이 프로세서(320), 메모리(340) 및 주변 장치들(360) 사이에 다중 연결들을 생성하면서 이러한 구성부품들을 연결하는데 사용될 수 있다.
메모리(340)는 임의의 유형의 메모리 시스템을 포함할 수 있다. 예를 들면, 메모리(340)는DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory), 모바일 DRAM, DDR SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory), LPDDR (Low Power DDR) SDRAM, GDDR (Graphic DDR) SDRAM, RDRAM(Rambus Dynamic Random Access Memory) 등과 같은 휘발성 메모리(volatile memory) 및/또는 EEPROM (non-volatile memory such as a Electrically Erasable Programmable Read-Only Memory), 플래시 메모리(flash memory), PRAM(Phase Change Random Access Memory), RRAM(Resistance Random Access Memory), NFGM (Nano Floating Gate Memory), PoRAM(Polymer Random Access Memory), MRAM (Magnetic Random Access Memory), FRAM(Ferroelectric Random Access Memory) 등과 같은 불휘발성 메모리(non-volatile memory) 등을 포함할 수 있다. 메모리 컨트롤러가 메모리(340)에 인터페이스하기 위하여 포함될 수 있으며, 그리고/또한 프로세서(320)가 그 메모리 컨트롤러를 포함할 수 있다. 메모리(340)는 이상에서 설명된 집적 회로의 레이아웃을 설계하는 방법의 적어도 일부를 수행하는 명령어들 및 프로세서(320)에 의해 처리되는 데이터를 저장할 수 있다.
메모리(340)는 집적 회로의 레이아웃을 저장할 수 있으며, 위치 및 배선 프로그램(220), 컬러링 프로그램(240), 설계 규칙(260) 및 데이터 구조(280)를 저장할 수 있다. 프로세서(320)은 메모리(340)에 저장된 위치 및 배선 프로그램(220), 컬러링 프로그램(240), 설계 규칙(260) 및 데이터 구조(280)를 이용하여, 상기 집적 회로의 레이아웃에 포함된 하나의 레이어에 형성되는 복수의 패턴들 중 각각을 복수의 마스크들 중 하나에 대응시키는 동작, 즉 복수의 패턴들을 컬러링하는 동작을 수행하는 복수의 명령어들을 수행할 수 있다. 따라서, 컴퓨터 시스템(300)은 프로세서(320)에 의하여 자동으로 집적 회로의 레이아웃을 설계할 수 있다.
주변 장치들(360)은 컴퓨터시스템(300)에 포함되거나 결합될 수 있는 임의의 유형의 하드웨어 장치들, 예컨대 저장 장치 또는 입출력 장치(비디오 하드웨어, 오디오 하드웨어, 사용자 인터페이스 장치들, 네트워킹 하드웨어 등) 등을 포함할 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 발명의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (10)

  1. 하나의 레이어에 형성된 복수의 패턴들을 포함하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법으로서,
    상기 복수의 패턴들의 배치 정보 및 상기 복수의 패턴들 중 각각을 복수의 마스크들 중 하나의 마스크에 대응시킨 컬러링 정보를 포함하는 입력 레이아웃 데이터를 수신하는 단계;
    상기 복수의 패턴들에 대하여 상기 레이어의 설계 규칙(design rule)을 체크하는 단계;
    상기 복수의 패턴들 중 상기 설계 규칙을 위반한 제1 및 제2 패턴에 대하여, 상기 제1 패턴이 상기 제1 패턴과 동일한 네트에 연결된 제3 패턴과 병합되도록 상기 배치 정보를 변경하는 단계; 및
    상기 제1 및 제3 패턴으로부터 병합된 패턴이 상기 제3 패턴에 대응하는 마스크에 대응되도록 상기 컬러링 정보를 갱신하는 단계를 포함하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법.
  2. 제1항에 있어서,
    상기 제1 및 제2 패턴은 제1 마스크에 대응하고,
    상기 제3 패턴은 상기 제1 마스크와 다른 제2 마스크에 대응하고,
    상기 컬러링 정보를 갱신하는 단계는, 상기 병합된 패턴이 상기 제2 마스크에 대응되도록 상기 컬러링 정보를 갱신하는 것을 특징으로 하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법.
  3. 제2항에 있어서,
    상기 설계 규칙을 체크하는 단계는,
    상기 제1 또는 제2 패턴을 복수의 마스크들 중 상기 제1 마스크와 다른 마스크에 대응시키는 단계; 및
    상기 제1 및 제2 패턴에 인접한 패턴들, 상기 제1 및 제2 패턴에 대하여 상기 설계 규칙을 체크하는 단계를 포함하는 것을 특징으로 하는 직접 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법.
  4. 제1항에 있어서,
    상기 집적 회로는 적어도 하나의 핀을 포함하는 복수의 표준 셀들을 포함하고,
    상기 입력 레이아웃 데이터의 상기 배치 정보에서, 상기 제1 내지 제3 패턴들은 상기 복수의 표준 셀들 중 서로 다른 표준 셀에 포함된 핀들에 각각 배치된 것을 특징으로 하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법.
  5. 제1항에 있어서,
    상기 복수의 패턴들 중 각각은 비아(via)를 형성하기 위하여 상기 레이어에 형성되는 패턴이고,
    상기 병합된 패턴은 바-유형(bar-type) 비아를 형성하기 위하여 상기 레이어에 형성되는 패턴인 것을 특징으로 하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법.
  6. 제1항에 있어서,
    상기 배치 정보를 변경하는 단계는,
    상기 집적 회로의 전원 네트에 공통으로 연결되고 동일한 마스크에 대응하는 상기 제1 및 제3 패턴을 선택하는 단계;
    상기 레이어에서 상기 제1 및 제3 패턴을 각각 연장함으로써 상기 병합된 패턴을 생성하는 단계; 및
    상기 레이아웃이 병합된 패턴을 포함하도록 상기 배치 정보를 변경하는 단계를 포함하는 것을 특징으로 하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법.
  7. 제1항에 있어서,
    상기 설계 규칙은,
    상기 복수의 패턴들 중 동일한 마스크에 대응하는 2개의 패턴들 사이의 간격을 정의하는 제1 규칙; 및
    상기 복수의 패턴들 중 상이한 마스크들에 대응하는 2개의 패턴들 사이의 간격을 정의하는 제2 규칙을 포함하고,
    상기 제1 규칙에서 정의하는 간격은 상기 제2 규칙에서 정의하는 간격보다 큰 것을 특징으로 하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법.
  8. 제1항에 있어서,
    변경된 상기 배치 정보 및 갱신된 상기 컬러링 정보를 포함하는 출력 레이아웃 데이터를 생성하는 단계를 더 포함하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법.
  9. 하나의 레이어에 형성된 복수의 패턴들을 포함하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법으로서,
    상기 복수의 패턴들의 배치 정보를 포함하는 입력 레이아웃 데이터를 수신하는 단계;
    상기 복수의 패턴들 각각을 복수의 마스크들 중 하나의 마스크에 대응시킨 컬러링 정보를 생성하는 단계; 및
    상기 컬러링 정보를 포함하는 출력 레이아웃 데이터를 생성하는 단계를 포함하고,
    상기 컬러링 정보를 생성하는 단계는, 상기 복수의 패턴들 중 동일한 네트에 연결된 적어도 2개의 패턴들이 병합되도록 상기 배치 정보를 변경하는 단계; 및
    상기 복수의 패턴들 및 상기 적어도 2개의 패턴들로부터 병합된 패턴이 상기 복수의 마스크들 중 하나의 마스크에 대응되도록 상기 컬러링 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법.
  10. 제9항에 있어서,
    상기 배치 정보를 변경하는 단계는,
    상기 집적 회로의 전원 네트에 공통으로 연결되는 제1 및 제2 패턴을 선택하는 단계;
    상기 레이어에서 상기 제1 및 제2 패턴을 각각 연장함으로써 병합된 패턴을 생성하는 단계; 및
    상기 레이아웃이 병합된 패턴을 포함하도록 상기 배치 정보를 변경하는 단계를 포함하는 것을 특징으로 하는 집적 회로의 레이아웃 설계를 위한 컴퓨터 구현 방법.
KR1020150059103A 2014-10-30 2015-04-27 집적 회로 및 그것의 레이아웃을 설계하는 방법 KR102320823B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/926,128 US9946828B2 (en) 2014-10-30 2015-10-29 Integrated circuit and method of designing layout thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201462072494P 2014-10-30 2014-10-30
US62/072,494 2014-10-30

Publications (2)

Publication Number Publication Date
KR20160051532A true KR20160051532A (ko) 2016-05-11
KR102320823B1 KR102320823B1 (ko) 2021-11-02

Family

ID=56026245

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150059103A KR102320823B1 (ko) 2014-10-30 2015-04-27 집적 회로 및 그것의 레이아웃을 설계하는 방법

Country Status (1)

Country Link
KR (1) KR102320823B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180021910A (ko) * 2015-08-21 2018-03-05 퀄컴 인코포레이티드 집적 회로 레이아웃에서 그룹 제약들을 할당하기 위한 시스템들 및 방법들
KR20180070322A (ko) * 2016-12-16 2018-06-26 삼성전자주식회사 멀티플 패터닝 리소그래피를 위한 집적 회로, 집적 회로의 설계를 위한 컴퓨팅 시스템 및 컴퓨터 구현 방법
KR20180070321A (ko) * 2016-12-16 2018-06-26 삼성전자주식회사 트리플 패터닝 리소그래피를 위한 집적 회로, 상기 집적 회로의 설계를 위한 컴퓨팅 시스템 및 컴퓨터 구현 방법
US10366200B2 (en) 2016-09-07 2019-07-30 Taiwan Semiconductor Manufacturing Company, Ltd. System for and method of manufacturing a layout design of an integrated circuit
US10403619B2 (en) 2017-06-08 2019-09-03 Samsung Electronics Co., Ltd. Semiconductor device having shared power line connections and method of manufacturing the same

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050275043A1 (en) * 2004-06-10 2005-12-15 Chien-Chao Huang Novel semiconductor device design
US20110219341A1 (en) * 2010-03-08 2011-09-08 Cadence Design Systems, Inc. Method, system, and program product for interactive checking for double pattern lithography violations
US8359556B1 (en) * 2011-06-29 2013-01-22 International Business Machines Corporation Resolving double patterning conflicts

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050275043A1 (en) * 2004-06-10 2005-12-15 Chien-Chao Huang Novel semiconductor device design
US20110219341A1 (en) * 2010-03-08 2011-09-08 Cadence Design Systems, Inc. Method, system, and program product for interactive checking for double pattern lithography violations
US8739095B2 (en) * 2010-03-08 2014-05-27 Cadence Design Systems, Inc. Method, system, and program product for interactive checking for double pattern lithography violations
US8359556B1 (en) * 2011-06-29 2013-01-22 International Business Machines Corporation Resolving double patterning conflicts

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180021910A (ko) * 2015-08-21 2018-03-05 퀄컴 인코포레이티드 집적 회로 레이아웃에서 그룹 제약들을 할당하기 위한 시스템들 및 방법들
US10366200B2 (en) 2016-09-07 2019-07-30 Taiwan Semiconductor Manufacturing Company, Ltd. System for and method of manufacturing a layout design of an integrated circuit
US10565348B2 (en) 2016-09-07 2020-02-18 Taiwan Semiconductor Manufacturing Company, Ltd. System for and method of fabricating an integrated circuit
US10977421B2 (en) 2016-09-07 2021-04-13 Taiwan Semiconductor Manufacturing Company, Ltd. System for and method of manufacturing an integrated circuit
KR20180070322A (ko) * 2016-12-16 2018-06-26 삼성전자주식회사 멀티플 패터닝 리소그래피를 위한 집적 회로, 집적 회로의 설계를 위한 컴퓨팅 시스템 및 컴퓨터 구현 방법
KR20180070321A (ko) * 2016-12-16 2018-06-26 삼성전자주식회사 트리플 패터닝 리소그래피를 위한 집적 회로, 상기 집적 회로의 설계를 위한 컴퓨팅 시스템 및 컴퓨터 구현 방법
US10403619B2 (en) 2017-06-08 2019-09-03 Samsung Electronics Co., Ltd. Semiconductor device having shared power line connections and method of manufacturing the same

Also Published As

Publication number Publication date
KR102320823B1 (ko) 2021-11-02

Similar Documents

Publication Publication Date Title
KR101745798B1 (ko) 글로벌 연결부 라우팅 방법 및 이를 실시하기 위한 시스템
CN107066681B (zh) 集成电路和制造集成电路的计算机实现方法
US10579771B2 (en) Integrated circuit including standard cells overlapping each other and method of generating layout of the integrated circuit
US9946828B2 (en) Integrated circuit and method of designing layout thereof
KR102320823B1 (ko) 집적 회로 및 그것의 레이아웃을 설계하는 방법
CN106055724B (zh) 设计半导体器件、制造器件的系统以及使用系统的方法
US10621300B2 (en) Computing system for performing colorless routing for quadruple patterning lithography
US9424384B2 (en) Method of density-controlled floorplan design for integrated circuits and integrated circuits
US10599130B2 (en) Method and system for manufacturing an integrated circuit in consideration of a local layout effect
TW201813050A (zh) 實現具有延伸出單元邊界的金屬層節段的標準單元的積體電路
US9817941B2 (en) Methods, systems, and articles of manufacture for implementing high current carrying interconnects in electronic designs
CN105895578A (zh) 形成掩模的方法
CN109582997B (zh) 标准单元的布线方法及其相关的计算机系统和指令
US10990741B2 (en) Multiple patterning method and system for implementing the method
US20180231604A1 (en) Computer implemented methods and computing systems for designing integrated circuits by considering back-end-of-line
US10424518B2 (en) Integrated circuit designing system and a method of manufacturing an integrated circuit
US10331838B2 (en) Semiconductor device with fill cells
TW202002166A (zh) 整合裝置以及形成整合裝置的方法
KR102636094B1 (ko) 트리플 패터닝 리소그래피를 위한 집적 회로, 상기 집적 회로의 설계를 위한 컴퓨팅 시스템 및 컴퓨터 구현 방법
TWI718245B (zh) 積體電路、製造其的電腦實施方法以及定義其的標準元件
US11227084B2 (en) Multi-bit standard cell
TW201935289A (zh) 用於單元交換的方法
KR101932805B1 (ko) 패턴 기반 전력 및 접지 (pg) 라우팅 및 비아 생성
US11387144B2 (en) Semiconductor device and method of manufacturing the same
US20200201954A1 (en) Method of designing a layout for a semiconductor integrated circuit

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