KR20160063225A - 집적 회로 레이아웃 생성을 위한 방법, 소자 및 컴퓨터 프로그램 제품 - Google Patents

집적 회로 레이아웃 생성을 위한 방법, 소자 및 컴퓨터 프로그램 제품 Download PDF

Info

Publication number
KR20160063225A
KR20160063225A KR1020150095243A KR20150095243A KR20160063225A KR 20160063225 A KR20160063225 A KR 20160063225A KR 1020150095243 A KR1020150095243 A KR 1020150095243A KR 20150095243 A KR20150095243 A KR 20150095243A KR 20160063225 A KR20160063225 A KR 20160063225A
Authority
KR
South Korea
Prior art keywords
net
nets
air gap
dummy
length
Prior art date
Application number
KR1020150095243A
Other languages
English (en)
Other versions
KR101776385B1 (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 KR20160063225A publication Critical patent/KR20160063225A/ko
Application granted granted Critical
Publication of KR101776385B1 publication Critical patent/KR101776385B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique
    • 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/392Floor-planning or layout, e.g. partitioning or placement
    • 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
    • H01L23/00Details of semiconductor or other solid state devices
    • H01L23/52Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames
    • H01L23/522Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames including external interconnections consisting of a multilayer structure of conductive and insulating layers inseparably formed on the semiconductor body
    • H01L23/528Geometry or layout of the interconnection structure
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/0203Particular design considerations for integrated circuits
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/04Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body
    • H01L27/06Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a non-repetitive configuration
    • H01L27/0611Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a non-repetitive configuration integrated circuits having a two-dimensional layout of components without a common active region

Landscapes

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

Abstract

적어도 부분적으로 프로세서에 의해 수행되는 방법은 에어 갭 삽입 공정을 수행하는 단계를 포함한다. 에어 갭 삽입 공정은 집적 회로의 레이아웃의 복수의 네트를 순서대로 분류하고, 상기 복수의 네트의 분류된 순서에 따라 상기 복수의 네트에 인접하게 에어 갭 패턴을 삽입하는 것을 포함한다. 방법은 집적 회로의 수정된 레이아웃을 생성하는 것을 더 포함한다. 수정된 레이아웃은 복수의 네트와 삽입된 에어 갭 패턴을 포함한다.

Description

집적 회로 레이아웃 생성을 위한 방법, 소자 및 컴퓨터 프로그램 제품{METHOD, DEVICE AND COMPUTER PROGRAM PRODUCT FOR INTEGRATED CIRCUIT LAYOUT GENERATION}
본 발명은 집적 회로 레이아웃 생성을 위한 방법, 소자 및 컴퓨터 프로그램제품에 관한 것이다.
집적 회로(integrated circuit; IC)의 소형화에 있어서 최근의 경향은 전력을 덜 소비하면서도 더 많은 기능성을 보다 고속으로 제공하는 보다 작은 소자로 귀결된다. 소형화 공정은 보다 엄격한 설계 및/또는 제조 사양으로 귀결된다. 설계와 제조 사양의 만족을 보장하면서 IC 설계를 개발, 최적화 및 검증하기 위해 다양한 전자 설계 자동화(electronic design automation; EDA) 공정이 개발되고 있다.
일부 실시예에서, 적어도 부분적으로 프로세서에 의해 수행되는 방법은 에어 갭 삽입 공정을 수행하는 것을 포함한다. 에어 갭 삽입 공정은 집적 회로의 레이아웃의 복수의 네트를 순서대로 분류하고, 복수의 네트의 분류된 순서에 따라 복수의 네트에 인접하게 에어 갭 패턴을 삽입하는 것을 포함한다. 방법은 집적 회로의 수정된 레이아웃을 생성하는 것을 더 포함한다. 수정된 레이아웃은 복수의 네트와 삽입된 에어 갭 패턴을 포함한다.
일부 실시예에서, 소자는 다음의 동작들을 수행하도록 구성된 적어도 하나의 프로세서를 포함한다. 더미 네트 및 에어 갭 삽입 공정은 집적 회로의 레이아웃의 복수의 네트를 순서대로 분류하고 복수의 네트의 분류된 순서에 따라 복수의 네트에 인접하게 더미 네트와 에어 갭 패턴을 삽입하는 것을 포함한다. 집적 회로의 수정된 레이아웃이 생성된다. 수정된 레이아웃은 복수의 네트와 삽입된 더미 네트 및 삽입된 에어 갭 패턴을 포함한다.
일부 실시예에서, 컴퓨터 프로그램 제품은 적어도 하나의 프로세서에 의해 실행시 해당 적어도 하나의 프로세서가 다음의 동작들을 수행하도록 하는 명령어들을 내부에 포함하는 비일시적 컴퓨터 판독가능한 매체를 포함한다. 에어 갭 삽입을 위한 후보 네트는 집적 회로의 복수의 네트 중에서 선택된다. 후보 네트에 대한 다양한 스케일링 비율이 대응하는 후보 네트의 길이를 기초로 결정된다. 후보 네트의 정전 용량은 후보 네트의 대응하는 스케일링 비율을 기초로 추정된다. 집적 회로의 레이아웃을 생성하기 위해 후보 네트의 추정된 정전 용량을 기초로 글로벌 라우팅, 트랙 할당, 또는 세부적인 라우팅 중 적어도 하나가 수행된다.
본 발명의 여러 측면들은 첨부 도면을 함께 판독시 다음의 상세한 설명으로부터 가장 잘 이해될 것이다. 산업계에서의 표준 관행에 따라 다양한 특징부들은 비율대로 작도된 것은 아님을 밝힌다. 실제, 다양한 특징부의 치수는 논의의 명확성을 위해 임의로 증감될 수 있다.
도 1은 일부 실시예에 따른 IC 설계 공정의 적어도 일부의 기능적 흐름도이다.
도 2a는 일부 실시예에 따른 IC 레이아웃의 일부의 개략적 평면도이다.
도 2b는 일부 실시예에 따라 제조된 IC의 일부의 개략적 단면도이다.
도 3은 일부 실시예에 따른 에어 갭 삽입 방법의 흐름도이다.
도 4a 내지 도 4d는 일부 실시예에 따른 IC 레이아웃의 여러 부분의 개략적 평면도이다.
도 5는 일부 실시예에 따른 더미 네트(dummy net) 및 에어 갭 삽입 방법의 흐름도이다.
도 6a 내지 도 6d는 일부 실시예에 따른 IC 레이아웃의 여러 부분의 개략적 평면도이다.
도 7은 일부 실시예에 따른 IC 설계 공정의 일부의 흐름도이다.
도 8은 일부 실시예에 따른 EDA 툴의 기능적 흐름도이다.
도 9a는 일부 실시예에 따른 IC 레이아웃의 일부의 개략적 평면도이다.
도 9b는 일부 실시예에 따른 IC 설계 공정에서 EDA 툴에 의해 사용되는 스케일링 비율의 판정을 위한 그래프이다.
도 9c 내지 도 9e는 일부 실시예에 따른 IC 레이아웃의 여러 부분의 개략적 평면도이다.
도 10은 일부 실시예에 따른 IC 설계 공정의 적어도 일부의 기능적 흐름도이다.
도 11은 일부 실시예에 따른 컴퓨터 시스템의 블록도이다.
다음의 설명은 제공된 주제의 여러 가지 다른 특징부의 구현을 위해 다수의 상이한 실시예 또는 실례를 제공한다. 본 발명을 단순화하기 위해 구성 성분 및 배열의 특정 예들을 아래에 설명한다. 이들은 물론 단지 여러 가지 예일 뿐이고 한정하고자 의도된 것이 아니다. 예를 들면, 이어지는 설명에서 제2 특징부 상에 제1 특징부의 형성은 제1 및 제2 특징부가 직접 접촉되게 형성되는 실시예를 포함할 수 있고 제1 및 제2 특징부가 직접 접촉되지 않을 수 있게 추가의 특징부가 제1 및 제2 특징부 사이에 형성될 수 있는 실시예도 포함할 수 있다. 추가로, 본 발명은 여러 예에서 참조 번호 및/또는 문자를 반복할 수 있다. 이러한 반복은 단순 및 명료를 위한 것으로 그 자체가 논의되는 다양한 실시예 및/또는 구성 간의 관계를 지시하는 것은 아니다.
도 1은 일부 실시예에 따른 설계 공정(100)의 적어도 일부의 기능적 흐름도이다. 설계 공정(100)은 IC의 제조 이전에 IC의 설계를 개발, 최적화 및/또는 검증하기 위해 하나 이상의 EDA 툴을 활용한다. EDA 툴은 일부 실시예에서 여기 설명되는 바와 같이 지시된 기능성을 수행하도록 설정된 적어도 하나의 프로세서에 의해 실행되는 하나 이상의 실행 가능 명령 세트이다.
110 단계에서, 회로 설계자에 의해 IC의 설계가 제공된다. 일부 실시예에서, IC의 설계는 IC의 배선도, 즉 전기 회로도를 포함한다. 일부 실시예에서, 배선도는 SPICE(Simulation Program with Integrated Circuit Emphasis)의 네트리스트(netlist)와 같은 배선 네트리스트의 형태로 작성 또는 제공된다. 일부 실시예에서, 설계가 미리 정해진 사양을 만족하는지 여부를 판정하기 위해 해당 설계에 대해 사전 레이아웃 시뮬레이션이 수행된다. 설계가 미리 정해진 사양을 만족하지 않으면, IC는 재설계된다. 적어도 하나의 실시예에서, 사전 레이아웃 시뮬레이션은 생략된다.
120 단계에서, 설계를 기초로 IC의 레이아웃이 작성된다. 레이아웃은 회로 요소들을 상호 연결하는 다양한 네트의 물리적 위치는 물론 IC의 다양한 회로 요소의 물리적 위치를 포함한다. 예를 들면, 레이아웃은 그래픽 설계 시스템(Graphic Design System; GDS) 파일의 형태로 작성된다. 설계를 기술하는 다른 데이터 포맷은 다양한 실시예의 범위 내에 있다. 일부 실시예에서, 레이아웃은 자동 배치 배선(Automatic Placement and Routing; APR) 툴에 의해 작성된다. 여러 실시예에 따른 예시적인 APR 툴의 구성 및 기능성은 도 8과 관련하여 설명된다.
130 단계에서, 레이아웃 내로 더미 특징부를 삽입하기 위해 더미 삽입 공정이 수행된다. 적어도 하나의 실시예에서, 더미 특징부 삽입의 목적은 제조 수율 및/또는 품질을 향상시키기 위한 것이다. 예를 들면, IC 생산은 한정되는 것은 아니지만 증착, 포토리소그래피, 에칭, 화학적 기계적 연마(chemical mechanical polishing; CMP) 등을 포함하는 다양한 공정을 포함한다. CMP 공정은 전도성 재료 및/또는 유전 재료를 에치백(etch back)하고 평탄화하기 위해 수행되며, 재료 제거 공정에서 화학적 에칭 및 기계적 연마를 포함한다. 일부 실시예에서, 더미 특징부의 삽입은 제조 중인 IC 내의 금속 등의 전도성 재료의 밀도를 향상시켜 CMP 품질을 보장하기에 충분한 기계적 강도를 달성한다. 다른 예에서, 인접한 도전 패턴이 미리 정해진 값보다 큰 간격으로 서로 크게 이격된 경우, 제조 중에 금속 편중 효과가 잠재적으로 생겨서 크게 이격된 도전 패턴의 폭이 최초 설계된 것보다 더 넓어지게 하고, 이는 다시 저항, 정전용량, 및/또는 회로 성능에 의도치 않은 변동을 야기한다. 일부 실시예에서, 넓게 이격된 도전 패턴 사이에 더미 특징부의 삽입은 금속 편중 효과의 가능성을 줄여서 제조된 IC의 품질 및/또는 성능을 향상시킨다. 적어도 하나의 실시예에서, 더미 삽입 공정은 여기 설명되는 APR 툴 및/또는 설계 규칙 검사(design-rule-checking; DRC) 툴에 의해 수행된다. 예시적인 더미 삽입 공정이 참조로 여기에 그 전체가 포함된 미국 특허 제7,801,717호와 미국 특허 제8,307,321호에 기술된다. 일부 실시예에 따른 추가의 예시적인 더미 삽입 공정이 도 5 및 도 6a 내지 도 6d와 관련하여 설명된다.
140 단계에서, 레이아웃 내로 에어 갭 패턴을 삽입하기 위해 에어 갭 삽입 공정이 수행된다. 레이아웃 내로 삽입된 에어 갭 패턴은 도 2a 및 도 2b와 관련하여 설명되는 바와 같이 기생 정전 용량을 감소시키고 제조된 IC의 성능을 향상시키기 위해 제조된 IC에서 에어 갭이 형성되도록 할 것이다. 일부 실시예에 따른 예시적인 에어 갭 삽입 공정이 도 3 및 도 4a 내지 도 4d와 관련하여 설명된다.
150 단계에서, RC 추출 툴에 의해 저항 및 정전 용량(resistance and capacitance; RC) 추출이 수행된다. RC 추출은 후속 단계에서의 타이밍 및/또는 전력 시뮬레이션을 위한 IC 내의 컴포넌트의 기생 파라미터, 예컨대 기생 저항 및 기생 정전 용량을 판정하기 위해 가동된다. 이러한 기생 파라미터는 회로 설계자에 의해 의도된 것은 아니지만, 그럼에도 IC 내의 다양한 컴포넌트의 구성 및/또는 재료의 결과로 생긴다. 추출된 기생 파라미터는 RC 기술 파일 내에 포함된다. 일부 실시예에 따른 예시적인 RC 추출 툴의 구성 및 기능성이 도 10과 관련하여 설명된다.
일부 실시예에서, 하나 이상의 검증 및/또는 확인이 수행된다. 예를 들면, 생성된 레이아웃이 설계에 대응하는 것을 보장하기 위해 레이아웃 대 회로 (layout-versus-schematic; LVS) 확인이 수행된다. 다른 예의 경우, 레이아웃이 소정의 제조 설계 규칙을 만족시키는 것을 보장하기 위해, 즉 IC가 제조될 수 있는 것을 보장하기 위해 DRC 툴에 의해 설계 규칙 확인이 수행된다. 여러 가지 확인 사항 중 하나가 실패하면, 공정을 110 단계 및/또는 120 단계로 복귀시키는 것에 의해 레이아웃 또는 설계 중 적어도 하나에 대해 수정을 행한다.
160 단계에서, 레이아웃이 미리 정해진 사양을 만족시키는지 여부를 판정하기 위해 타이밍 종료 확인(timing sign-off check)(사후 레이아웃 시뮬레이션으로도 지칭됨)이 수행된다. 일부 실시예에서, 사후 레이아웃 시뮬레이션이 레이아웃이 미리 정해진 사양을 만족시키지 않음을 지시하면, 예컨대, 원치 않는 타이밍 지연이 있는 경우, 공정을 110 단계 내지 140 단계 중 임의의 단계로 복귀시키는 것에 의해 레이아웃 또는 설계 중 적어도 하나에 대해 수정을 행한다. 그렇지 않으면, 레이아웃을 170 단계에서의 제조로 통과시킨다. 일부 실시예에서, 전술한 단계 중 하나 이상의 단계가 생략된다.
도 2a는 일부 실시예에 따른 IC 레이아웃(200A)의 일부의 개략적 평면도이다. 레이아웃(200A)은 복수의 네트(202, 204, 206, 208, 210)를 포함한다. 레이아웃(200A)은 대응하는 네트 쌍 사이에 복수의 에어 갭 패턴(222, 224, 226, 228)을 더 포함한다. 예를 들면, 에어 갭 패턴(222)은 네트(202)와 네트(212) 사이에 위치되고, 에어 갭 패턴(224)은 네트(204)와 네트(206) 사이에 위치되고, 에어 갭 패턴(226)은 네트(206)와 네트(208) 사이에 위치되고, 에어 갭 패턴(228)은 네트(208)와 네트(210) 사이에 위치된다.
도 2a에는 도시되어 있지 않지만, 레이아웃(200A)은 복수의 네트에 의해 상호 연결된 복수의 회로 소자를 더 포함한다. 회로 소자는 능동 소자 또는 수동 소자이다. 능동 소자의 예로는 한정되는 것은 아니지만 트랜지스터와 다이오드를 포함한다. 트랜지스터의 예로는 한정되는 것은 아니지만 금속 산화물 반도체 전계 효과 트랜지스터(MOSFET), 상보적 금속 산화물 반도체(CMOS) 트랜지스터, 바이폴라 접합 트랜지스터(BJT), 고전압 트랜지스터, 고주파 트랜지스터, p채널 및/또는 n채널 전계 효과 트랜지스터(PFET/NFET), FinFET, 융기된 소스/드레인을 갖는 평면형 MOS 트랜지스터를 포함한다. 수동 소자의 예로는 한정되는 것은 아니지만 캐패시터, 인덕터, 퓨즈, 저항기를 포함한다. 일부 실시예에서, 회로 소자는 해당 회로 소자로부터 전기 신호가 출력되거나 또는 이 해당 소자 내로 전기 신호가 입력되는 하나 이상의 노드를 가진다. 일부 실시예에서, 한 쌍의 노드가 배선에 의해 서로 전기적으로 연결된다. 전기적으로 연결된 배선 세트는 네트를 형성한다. 적어도 하나의 실시예에서, 네트는 단일 배선을 포함한다. 적어도 하나의 실시예에서, IC는 다수의 교대 배열된 전도층 및 유전층을 포함한다. 배선은 전도층 내에 형성된다. 적어도 하나의 실시예에서, 네트는 단일의 전도층 내에 형성된 배선 또는 배선들을 포함한다. 적어도 하나의 실시예에서, 네트는 IC의 상이한 전도층들에 형성된 배선들과, 상이한 전도층들에 형성된 해당 배선들을 전기적으로 연결시키는 하나 이상의 비아를 포함한다. 단순성을 위해, 여기 설명되는 예시적인 실시예의 다양한 네트는 하나 이상의 도면에서 단일 배선을 포함하거나 및/또는 단일의 전도층 내에 형성되는 것으로 예시된다. 여기에서의 설명은 네트가 2개 이상의 배선을 포함하거나 및/또는 2개 이상의 전도층 내에 형성되는 실시예에 적용 가능하다.
복수의 네트는 신호 네트(202, 204, 206, 208, 210)와 더미 네트(212)를 포함한다. 신호 네트는 회로 소자에 신호 또는 전력을 보내도록 구성된 네트이다. 신호의 예로는 한정되는 것은 아니지만 데이터 신호, 제어 신호, 클록 신호 등을 포함한다. 더미 네트는 신호나 전력을 보내도록 구성되지 않은 네트이다. 예를 들면, 더미 네트는 플로팅 네트(floating net)이다. 여기의 설명에서, 달리 특정하지 않으면, "네트"는 "신호 네트"와 "더미 네트" 모두를 지칭한다.
에어 갭 패턴(222, 224, 226, 228)은 레이아웃(200A) 내에 포함된 마스크 층의 패턴이다. 에어 갭 패턴(222, 224, 226, 228)은 인접하는 네트 사이의 대응하는 공간을 커버한다. 예를 들면, 에어 갭 패턴(222)은 인접하는 네트(202, 212) 사이의 공간을 커버한다. IC의 제조시, 에어 갭 패턴(222, 224, 226, 228)에 의해 커버된 공간 내에 유전 재료가 형성되는 것이 방지됨으로써 예컨대 도 2b와 관련하여 설명되는 바와 같이 인접하는 네트 사이에 대응하는 에어 갭이 형성된다.
도 2b는 일부 실시예에 따라 제조된 IC(200B)의 일부의 개략적 단면도이다. 도 2b의 예시적인 구성에서, 제조된 IC(200B)의 일부는 도 2a의 II-II 라인을 따라 취한 단면도에 대응한다. 제조된 IC(200B)는 교대로 배열된 복수의 전도층(231, 233)과 유전층(232, 234)을 포함한다. 예를 들면, 유전층(232)은 전도층(231) 위에 배치되고, 전도층(233)은 유전층(232) 위에 배치되고, 유전층(234)은 전도층(233) 위에 배치된다. 전도층(231)은 아래에 위치한 전도층 또는 회로 소자에 전기적으로 연결된 전도성 패턴(235)을 포함한다. 전도성 패턴(235)은 유전층(232)의 유전 재료(236) 내의 전도성 비아(237)에 전기적으로 결합된다. 전도층(233)은 유전 재료(238) 내에 복수의 전도성 패턴(244, 246, 248)을 포함한다. 전도성 패턴(248)은 전도성 비아(237)에 의해 전도성 패턴(235)에 전기적으로 결합되어 여기 설명되는 바와 같은 다중 전도층 내에 네트를 형성한다. 전도성 패턴(244, 246, 248)은 도 2a의 레이아웃(200A) 내의 네트(204, 206, 208)에 대응한다. 전도성 패턴(244, 246) 사이에는 에어 갭(264)이 존재한다. 전도성 패턴(246, 248) 사이에는 에어 갭(266)이 존재한다. 에어 갭(244, 246)은 도 2a의 레이아웃(200A) 내의 에어 갭 패턴(224, 226)에 대응한다. 공정 변형 및/또는 재료 특성에 기인하여, 하나 이상의 실시예에서 유전 재료의 여러 부분들이 에어 갭과 대응하는 전도성 패턴 사이에 존재한다. 예를 들면, 레이아웃(200A) 내의 에어 갭 패턴(224)이 네트(204, 206) 사이의 공간을 엣지에서 엣지까지 커버하더라도, 유전 재료(238)의 여러 부분(265, 267)이 여전히 에어 갭(264)과 대응하는 전도성 패턴(244, 246) 사이의 커버된 공간 내에 존재한다. 일부 실시예에서, 에어 갭은 대응하는 전도성 패턴 사이에서 엣지로부터 엣지까지 연장되며, 예컨대, 유전 재료(238)의 일부(265, 267)는 제조된 IC 내에 존재하지 않는다. 에어 갭 패턴에 의해 커버되지 않은 인접한 전도성 패턴 간의 영역은 유전 재료로 충전된다. 예를 들면, 도 2a의 레이아웃(200A) 내의 영역(229)은 에어 갭 패턴에 의해 커버되지 않고 제조된 IC(200B)에서 유전 재료(238)로 충전될 것이다. 전도층(233) 위에는 유전층(234)의 유전 재료(239)가 존재한다. 유전 재료(239)를 형성하는 재료 및/또는 공정과 관련된 하나 이상의 요소에 기인하여, 적어도 하나의 실시예에서 에어 갭의 최상부는 유전 재료(239) 내로 돌출된다. 예를 들면, 에어 갭(266)의 최상부(269)는 유전 재료(239) 내로 돌출된다. 전도성 패턴(235, 244, 246, 248) 및/또는 전도성 비아(237)의 재료의 예로는 구리와 같은 금속을 포함한다. 유전 재료(236, 238, 239)의 예로는 한정되는 것은 아니지만 SiNx, SiOx, SiON, SiC, SiBN, SiCBN 또는 이들의 조합을 포함한다. 에어 갭 형성 공정의 예는 참조로 여기에 그 내용이 포함된 미국 특허 제8,456,009호에 설명된다. 제조된 IC의 설명된 구성은 하나의 예이다. 다른 구성은 다양한 실시예의 범위 내에 있다.
회로 소형화의 목적으로, IC 내에서 배선과 회로 소자와 같은 전도성 구조체의 밀도는 증가하고 배선과 회로 소자의 크기는 감소된다. 결국, 전도성 구조체 간의 기생 정전 용량이 잠재적으로 증가하고, 이는 다시 IC의 여러 회로 소자 사이에서 전송되는 신호의 타이밍 지연 및/또는 전력 소비를 증가시킨다. 전도성 구조체 사이의 기생 정전 용량은 전도성 구조체 간의 절연의 유전율에 의존한다. 공기의 유전율(약 1)은 여러 유전 재료의 유전율보다 낮기 때문에, IC의 전도성 구조체 사이에는 유전 재료 이외에 에어 갭이 형성됨으로써 인접하는 전도성 구조체 사이의 절연의 전체 유효 유전율이 감소되고 기생 정전 용량이 감소된다. 일부 실시예에서, "에어 갭"은 IC의 전도성 구조체 사이에 형성된 유전 재료(들)의 유전율보다 낮은 유전율을 갖는 공기, 진공, 기체 또는 물질을 포함한다. 에어 갭의 형성은 여기 설명되는 바와 같이 하나 이상의 에어 갭 제약이 있다. 일부 실시예는 에어 갭 제약을 만족하면서 기생 정전 용량 감소의 효과를 최대화, 최적화 또는 증가시키기 위한 에어 갭 삽입 방법을 제공한다.
도 3은 일부 실시예에 따른 에어 갭 삽입 방법(300)의 흐름도이다. 도 4a 내지 도 4d는 일부 실시예에 따른 방법(300)의 다양한 구현을 예시하는 IC 레이아웃(400A~400D)의 여러 부분의 개략적 평면도이다. 방법(300)은 IC의 레이아웃의 복수의 네트에 인접하게 에어 갭 패턴이 삽입되는 에어 갭 삽입 공정(305)을 포함한다. 방법(300)은 복수의 네트와 삽입된 에어 갭 패턴을 포함하는 수정된 레이아웃이 생성되는 단계(315)를 더 포함한다.
도 3의 에어 갭 삽입 공정(305)의 325 단계에서, 집적 회로의 레이아웃 내의 복수의 네트 또는 레이아웃의 일부가 순서대로 분류된다. 일부 실시예에서, 복수의 네트는 네트의 대응하는 길이(여기서는 네트 길이로도 지칭됨)에 의해 분류된다. 예를 들면, 도 4a에 예시된 바와 같이, 레이아웃(400A)의 층은 네트(402, 404, 406)를 포함한다. 네트(404)는 네트(402, 406)에 인접하고 네트(402, 406)로부터 엣지 간 간격(s)만큼 이격된다. 예를 들면, 간격(s)은 네트(402)의 엣지(407)와 네트(404)의 엣지(408) 사이의 거리이다. 간격(s)은 에어 갭 삽입의 제약을 만족시킨다. 예를 들면, 간격(s)은 에어 갭 삽입의 최대 간격과 같거나 그 보다 작다. 인접하는 네트 간의 간격이 에어 갭 삽입의 최대 간격보다 크면, 인접하는 네트 사이에 에어 갭 패턴이 삽입되지 않는다. 적어도 하나의 실시예에서, 간격(s)은 IC의 설계 및/또는 제조 사양에 의해 허용되는 인접하는 네트 간의 최소 간격이고, 에어 갭은 간격(s)을 갖는 인접하는 네트 사이에만 삽입되도록 허용된다. 도 4a의 예시적인 구성에서, 네트(404)의 길이(도 4a에서 "길이"로 지시됨)는 네트(402)의 길이보다 크며, 이 네트(402)의 길이는 네트(406)의 길이보다 크다. 네트(402, 404, 406)는 대응하는 길이의 순서로, 즉 네트(404), 네트(402), 네트(406)의 순서로 분류된다.
복수의 네트들을 분류한 후, 복수의 네트의 분류된 순서에 따라 복수의 네트에 인접하게 에어 갭 패턴이 삽입된다. 예를 들면, 도 3의 에어 갭 삽입 공정(305)의 335 단계에서, 지수(i)를 1로 설정한다. 이것은 에어 갭 삽입을 위해 IC의 분류된 네트 중 제1 네트를 선택하는 것에 대응한다. 도 4a의 예시적인 구성에서, 최장 길이의 네트(404)가 최단 길이의 다른 네트(402, 406)에 앞서 에어 갭 삽입을 위해 선택된다.
도 3의 에어 갭 삽입 공정(305)의 345 단계에서, 현재 선택된 네트, 즉 네트[i]에 인접하게 적어도 하나의 에어 갭 패턴이 삽입된다. 도 4a의 예시적인 구성에서, 현재 선택된 네트(404)에 인접하게 에어 갭 패턴(411, 413)이 삽입된다. 에어 갭 패턴(411)은 현재 선택된 네트(404)와 인접한 네트(402) 사이에 삽입되어 해당 네트(402, 404) 사이의 기생 정전 용량을 감소시킨다. 에어 갭 패턴(413)은 현재 선택된 네트(404)와 다른 인접한 네트(406) 사이에 삽입되어 해당 네트(404, 406) 간의 기생 정전 용량을 감소시킨다.
도 3의 에어 갭 삽입 공정(305)의 355 단계에서, 삽입된 에어 갭 패턴이 제약을 만족시키는지 여부가 판정된다. 도 4a의 예시적인 구성에서, 삽입된 에어 갭 패턴(411, 413)이 제약을 만족시키는지 여부가 판정된다. 일부 실시예에서, 상기 제약은 에어 갭 밀도, 즉 에어 갭이 형성될 층의 전체 면적에 대한 삽입된 에어 갭 패턴에 의해 커버되는 에어 갭의 전체 면적의 비율을 포함한다. 상기 층의 전체 면적은 해당 층 내의 전도성 구조체(예, 네트)의 면적과 네트 사이의 절연부(예, 에어 갭과 유전 재료)의 면적을 포함한다. 삽입된 에어 갭 패턴의 에어 갭 밀도가 미리 정해진 에어 갭 밀도 제약보다 크면, 층의 기계적 강도가 잠재적으로는 제조 중에 및/또는 최종 제품에서 응력을 견뎌내는데 불충분하다. 일부 실시예에서, 에어 갭 밀도 제약은 50%이다. 다른 에어 갭 밀도 제약치 및/또는 에어 갭 밀도 이외의 다른 제약은 다양한 실시예의 범위 내에 있다.
도 3의 에어 갭 삽입 공정(305)의 365 단계에서, 삽입된 에어 갭 패턴이 제약을 만족시킨다라는 판정(355 단계에서 '예')에 응답하여, 지수(i)를 증가시킨다. 이것은 에어 갭 삽입을 위해 IC의 분류된 네트 중에서 다음 네트를 선택하는 것에 대응한다. 도 4a의 예시적인 구성에서, 다음 네트, 즉 네트(402)가 에어 갭 삽입을 위해 선택된다. 이후, 공정은 네트(402)에 인접하게, 예컨대 네트(402)와 해당 네트(402)에 인접한 다른 네트 사이에 적어도 하나의 에어 갭 패턴이 삽입되는 345 단계로 복귀된다. 이후, 공정은 삽입된 에어 갭 패턴, 즉 네트(402)에 인접하게 삽입된 하나 이상의 에어 갭 패턴과 에어 갭 패턴(411, 413)이 제약을 만족시키는지 여부가 판정되는 355 단계로 진행한다. 삽입된 에어 갭 패턴이 제약을 만족시킨다는 판정(355 단계에서 '예')에 응답하여, 지수(i)를 다시 증가시키고 다음의 네트, 예컨대 도 4a의 네트(406)에 대해 345 및 355 단계가 수행된다.
도 3의 에어 갭 삽입 공정(305)의 375 단계에서, 삽입된 에어 갭 패턴이 제약을 만족시키지 못한다는 판정(355 단계에서 '아니오')에 응답하여, 최종적으로 삽입된 에어 갭 패턴이 제거되고, 이후 공정은 315 단계로 진행되고 남아있는 삽입된 에어 갭 패턴을 갖는 수정된 IC 레이아웃이 생성된다. 예를 들면, 현재의 네트가 도 4a의 예시적인 구성의 네트(402)이고 355 단계에서 삽입된 에어 갭 패턴이 제약을 만족시키지 못하는 것을 나타낸 경우, 네트(402)에 인접하게 삽입된 적어도 하나의 에어 갭 패턴이 제거된다. 일부 실시예에서, 여러 개의 에어 갭 패턴이 현재의 네트에 인접하게 삽입된 경우 제약이 만족되지 않는다는 판정에 응답하여, 현재의 네트에 인접하게 삽입된 에어 갭 패턴 모두가 제거된다. 일부 실시예에서, 여러 개의 에어 갭 패턴이 현재의 네트에 인접하게 삽입되었을 때 제약이 만족되지 않는다는 판정에 응답하여, 현재의 네트에 인접하게 삽입된 에어 갭 패턴들은 제약이 만족될 때까지 하나씩 제거된다. 다른 구성들은 다양한 실시예의 범위 내에 있다.
일부 실시예에서, 네트의 대응하는 길이에 따라 IC 또는 IC의 일부 내의 복수의 네트를 분류하는 것에 의해, 짧은 길이의 네트 이전에 긴 길이의 네트에 대해 에어 갭 패턴이 삽입된다. 결국, 하나 이상의 실시예에서, 짧은 네트보다 잠재적으로 타이밍 지연 및 회로 성능에 대해 더 큰 영향을 미치는 긴 네트를 따라 네트의 정전 용량에 있어서 기생 정전 용량의 감소가 최적화된다. 설명된 네트 길이에 의한 분류는 하나의 예이다. 다른 분류 구성은 다양한 실시예의 범위 내에 있다.
일부 실시예에서, IC 또는 IC의 일부 내의 네트는 투영 길이(projection length)에 의해 분류된다. 한 쌍의 인접한 네트의 투영 길이는 인접한 네트가 서로를 따라 연장하는 길이이다. 도 4b의 예시적인 구성에서, 네트(422, 424)의 투영 길이(a)는 네트(422, 424)가 서로를 따라 연장하는 길이이다. 투영 길이(a)는 네트(422, 424) 사이에 삽입 가능한 에어 갭의 길이에 대응한다. 네트(424, 426)의 투영 길이(b)는 네트(424, 426)가 서로를 따라 연장하는 길이이다. 투영 길이(b)는 네트(424, 426) 사이로 삽입 가능한 에어 갭의 길이에 대응한다. 네트(426, 428)의 투영 길이(c)는 네트(426, 428)가 서로를 따라 연장하는 길이이다. 투영 길이(c)는 네트(426, 428) 사이로 삽입 가능한 에어 갭의 길이에 대응한다. 도 4b의 예시적인 구성에서, 투영 길이(a)는 투영 길이(c)보다 길고, 투영 길이(c)는 투영 길이(b)보다 길다.
일부 실시예에서, 대응하는 투영 길이에 의해 네트를 분류한 후, 도 3의 단계들(335, 345, 355, 365, 375)과 관련하여 설명된 바와 같이, 짧은 투영 길이의 네트 이전에 긴 투영 길이의 네트 사이로 에어 갭 패턴이 삽입되고 제약이 확인된다. 도 4b의 예시적인 구성에서, 먼저 최장의 투영 길이(a)를 갖는 네트(422, 424) 사이에 에어 갭 패턴(431)이 삽입된다. 삽입된 에어 갭 패턴(431)이 제약을 만족시키는지 여부가 판정된다. 삽입된 에어 갭 패턴(431)이 제약을 만족시키는 것을 나타내면, 공정은 두 번째로 긴 투영 길이(c)를 갖는 네트(426, 428) 사이로 에어 갭 패턴(435)을 삽입하도록 진행된다. 삽입된 에어 갭 패턴(431, 435)이 제약을 만족시키는지 여부가 판정된다. 삽입된 에어 갭 패턴(431, 435)이 제약을 만족시키는 것을 나타내면, 공정은 투영 길이(b)를 갖는 네트(424, 426) 사이로 에어 갭 패턴(예, 도 4c에서 437로 예시됨)을 삽입하도록 진행된다. 삽입된 에어 갭 패턴, 즉 에어 갭 패턴(431, 435)과 네트(424, 426) 사이에 삽입된 에어 갭 패턴이 제약을 만족시키는지 여부가 판정된다. 삽입된 에어 갭 패턴이 제약을 만족시키지 않는 것을 나타내면, 마지막으로 네트(424, 426) 사이로 삽입된 에어 갭 패턴(예, 도 4c에서 437로 예시됨)이 제거된다. 도 4b에 나타낸 바와 같이 네트(422, 424, 426, 428)와 삽입된 에어 갭 패턴(431, 435)을 갖는 수정된 레이아웃이 형성된다. 도 4b와 관련하여 설명된 분류 구성을 구현하는 하나 이상의 실시예에서, 네트 간의 정전 용량을 결합시키기 위해 기생 정전 용량 감소가 최적화된다.
일부 실시예에서, IC 또는 IC의 일부 내의 네트는 비용 함수에 의해 분류된다. 예시적인 비용 함수(Cost 1)는 각각의 네트를 따른 투영 길이의 합이며, 이것은 다음의 수학식에 의해 판정된다:
Figure pat00001
여기서, i는 복수의 네트 중 i번째 네트이고,
N은 복수의 네트 중 i번째 네트에 인접한 네트의 수이고,
j는 i번째 네트에 인접한 N개의 네트 중 j번째 네트를 나타내고,
Proj_Length(j)는 i번째 네트와 j번째 네트가 서로를 따라 연장하는 투영 길이이고,
Length(i)는 i번째 네트의 길이이다.
도 4c의 예시적인 구성에서, 도 4b와 관련하여 설명된 바와 동일한 네트(422, 424, 426, 428)가 에어 갭 삽입을 위해 고려된다. 도 4c의 네트(422, 424, 426, 428)는 도 4b와 관련하여 설명된 바와 같은 투영 길이 대신에 비용 함수(Cost 1)에 의해 분류된다. 네트(422)의 경우, 비용 함수(Cost 1)는 투영 길이(a)이다. 네트(424)의 경우, 비용 함수(Cost 1)는 투영 길이(a) 플러스 투영 길이(b)의 합인데, 이는 네트(422, 424, 426, 428) 중 가장 크다. 네트(426)의 경우, 비용 함수(Cost 1)는 투영 길이(b) 플러스 투영 길이(c)의 합으로, 이는 네트(422, 424, 426, 428) 중 두 번째로 크다. 네트(428)의 경우, 비용 함수(Cost 1)는 네트(422, 424, 426, 428) 중 가장 작은 투영 길이(c)이다. 결국, 네트는 네트(424), 네트(426), 네트(422), 네트(428)의 순서로 분류된다.
일부 실시예에서, 네트를 비용 함수(Cost 1)에 의해 분류한 후, 도 3의 단계들(335, 345, 355, 365, 375)과 관련하여 설명된 바와 같이 작은 비용 함수(Cost 1)의 네트 이전에 큰 비용 함수(Cost 1)의 네트에 인접하게 에어 갭 패턴이 삽입되고 제약이 체크된다. 도 4c의 예시적인 구성에서, 에어 갭 패턴(431, 437)은 다른 네트(422, 426, 428) 이전에 최대 Cost 1를 갖는 네트(424)에 인접하게 삽입된다. 삽입된 에어 갭 패턴(431, 437)이 제약을 만족시키는지 여부가 판정된다. 삽입된 에어 갭 패턴(431, 437)이 제약을 만족시키는 것을 나타내면, 네트(426)가 두 번째로 큰 비용 함수(Cost 1)를 가지므로 공정은 네트(426, 428) 사이에 에어 갭 패턴(예, 도 4b에서 435에 예시됨)을 삽입하도록 진행된다. 삽입된 에어 갭 패턴(431, 437)과 네트(426, 428) 사이에 삽입된 에어 갭 패턴이 제약을 만족시키는지 여부가 판정된다. 삽입된 에어 갭 패턴이 제약을 만족시키지 않음을 나타내면, 마지막으로 네트(426, 428) 사이에 삽입된 에어 갭 패턴(예, 도 4b에서 435로 예시됨)이 제거된다. 도 4c에 나타낸 바와 같이 네트(422, 424, 426, 428)와 삽입된 에어 갭 패턴(431, 437)을 갖는 수정된 레이아웃이 형성된다. 도 4c와 관련하여 설명된 바와 같이 비용 함수(Cost 1)를 사용하여 분류 구성을 구현하는 하나 이상의 실시예에서, 네트의 총 정전 용량에 대해 기생 정전 용량 감소가 최적화된다.
일부 실시예에 따른 다른 예의 비용 함수(Cost 2)는 다음의 수학식에 의해 판정되는 바와 같이 네트의 길이에 대한 각 네트의 비용 함수(Cost 1)의 비율이다:
Figure pat00002
도 4d의 예시적인 구성에서, 네트(442, 446, 448, 450, 452)는 동일한 길이(L)를 가지며, 네트(444)는 2L의 길이를 갖는다. 네트(444, 450)의 경우, 비용 함수(Cost 1)는 2L이다. 그러나, 네트(444)의 길이는 2L인 반면, 네트(450)의 길이는 L이다. 결국, 네트(444)의 비용 함수(Cost 2)는 1이고, 네트(450)의 비용 함수(Cost 2)는 2이다. 네트가 비용 함수(Cost 2)에 의해 분류되면, 큰 비용 함수(Cost2)의 네트(450)는 작은 비용 함수(Cost 2)의 네트(444)보다 순위가 높다.
일부 실시예에서, 네트를 비용 함수(Cost 2)에 의해 분류한 후, 도 3의 단계들(335, 345, 355, 365, 375)과 관련하여 설명된 바와 같이 작은 비용 함수(Cost 2)의 네트 이전에 큰 비용 함수(Cost 2)의 네트에 인접하게 에어 갭 패턴이 삽입되고 제약이 체크된다. 예를 들면, 낮은 순위의 네트(444)에 인접하게 에어 갭 패턴(457, 459)이 삽입되기 전에 높은 순위의 네트(450)에 인접하게 에어 갭 패턴(453, 455)이 삽입된다. 도 4d와 관련하여 설명되는 바와 같이 비용 함수(Cost 2)를 사용하여 분류 구성을 구현하는 하나 이상의 실시예에서, 네트 길이에 대한 네트의 총 정전 용량의 비율에 대해 기생 정전 용량 감소가 최적화된다.
설명된 분류 구성은 예시적인 것이다. 다른 분류 구성은 다양한 실시예의 범위 내에 있다. 일부 실시예에서, 다른 분류 구성이 IC의 다른 부분에 적용된다. 일부 실시예에서, 어떤 분류 구성에서 에어 갭 패턴이 추후의 단계에서 검증 또는 확인을 통과하지 못하게 되면, 다른 분류 구성을 적용하여 에어 갭 패턴을 다시 형성한다.
일부 실시예에서, 기생 정전 용량 감소 최적화 공정은 에어 갭 삽입은 물론 더미 네트 삽입도 포함한다.
도 5는 일부 실시예에 따른 더미 네트(dummy net) 및 에어 갭 삽입 방법(500)의 흐름도이다. 도 6a 및 도 6b는 일부 실시예에 따른 방법(500)의 다양한 구현을 예시한 IC 레이아웃(600A~600B)의 여러 부분의 개략적 평면도이다. 방법(500)은 더미 네트와 에어 갭 패턴이 IC의 레이아웃의 복수의 네트에 인접하게 삽입된 더미 네트 및 에어 갭 삽입 공정(505)을 포함한다. 방법(500)은 복수의 네트와 삽입된 더미 네트 및 에어 갭 패턴을 포함하는 수정된 레이아웃이 형성되는 단계(515)를 더 포함한다.
도 5의 더미 네트 및 에어 갭 삽입 공정(505)의 525 단계에서, 집적 회로의 레이아웃 또는 레이아웃의 일부의 복수의 네트가 순서대로 분류된다. 일부 실시예에서, 복수의 네트는 도 4a와 관련하여 설명된 바와 같이 네트의 대응하는 길이에 의해 분류된다. 예를 들면, 도 6a에 나타낸 바와 같이, 레이아웃(600A)의 층은 네트(602, 604, 606)를 포함한다. 네트(604)는 네트(602, 606)에 비해 최장 길이(도 6a에서 "길이"로 지시됨)를 갖는다.
복수의 더미 네트를 분류한 후, 복수의 네트의 분류된 순서에 따라 복수의 네트에 인접하게 더미 네트와 에어 갭 패턴이 삽입된다. 예를 들면, 도 5의 더미 네트 및 에어 갭 삽입 공정(505)의 535 단계에서, 지수(i)를 1로 설정한다. 이것은 더미 네트 및 에어 갭 삽입을 위해 IC의 분류된 네트 중 제1 네트를 선택하는 것에 대응한다. 도 6a의 예시적인 구성에서, 더미 네트 및 에어 갭 삽입을 위해 보다 짧은 길이의 다른 네트(602, 606) 이전에 최장 길이의 네트(604)가 선택된다.
도 5의 더미 네트 및 에어 갭 삽입 공정(505)의 540 단계에서, 현재 선택된 네트, 즉 네트[i]에 인접하게 적어도 하나의 더미 네트가 삽입된다. 도 6a의 예시적인 구성에서, 더미 네트(608, 610)와 현재 선택된 네트(604) 사이에 에어 갭 패턴이 삽입될 수 있게 하는 간격(s)으로 현재 선택된 네트(604)에 인접하게 더미 네트(608, 610)가 삽입된다.
도 5의 더미 네트 및 에어 갭 삽입 공정(505)의 545 단계에서, 현재 선택된 네트, 즉 네트[i]에 인접하게 적어도 하나의 에어 갭 패턴이 삽입된다. 도 6a의 예시적인 구성에서, 현재 선택된 네트(604)에 인접하게 에어 갭 패턴(611, 613, 615, 617)이 삽입된다. 구체적으로, 대응하는 인접 네트 사이의 기생 정전 용량을 감소시키기 위해 한편으로 현재 선택된 네트(604)와 다른 한편으로 대응하는 네트(602, 606, 608, 610) 사이에 에어 갭 패턴(611, 613, 615, 617)이 삽입된다.
도 5의 더미 네트 및 에어 갭 삽입 공정(505)의 555 단계에서, 도 3의 355 단계와 관련하여 설명된 바와 같이 삽입된 에어 갭 패턴이 제약을 만족시키는지 여부가 판정된다.
도 5의 더미 네트 및 에어 갭 삽입 공정(505)의 565 단계에서, 삽입된 에어 갭 패턴이 제약을 만족시킨다는 판정(555 단계에서 '예')에 응답하여, 도 3의 365 단계와 관련하여 설명된 바와 같이 지수(i)를 증가시키고 공정을 540 및 545 단계로 복귀시켜 IC의 분류된 네트 중 다음 네트에 대해 적어도 하나의 더미 네트 및 적어도 하나의 에어 갭 패턴을 삽입한다.
도 5의 더미 네트 및 에어 갭 삽입 공정(505)의 575 단계에서, 도 3의 375 단계와 관련하여 설명된 바와 같이, 삽입된 에어 갭 패턴이 제약을 만족시키지 않는다는 판정(555 단계에서 '아니오')에 응답하여, 최종 삽입된 에어 갭 패턴이 제거되고 공정이 515 단계로 진행된다.
일부 실시예에서, 575 단계에서, 삽입된 에어 갭 패턴이 제약을 만족시키지 않는다는 판정에 응답하여, 최종 삽입된 에어 갭 패턴이 제거됨은 물론, 최종 삽입된 더미 네트도 제거된다. 일부 실시예에서, 현재의 네트에 인접하게 여러 개의 에어 갭 패턴 및/또는 더미 네트가 삽입된 경우 제약이 만족되지 않는다는 판정에 응답하여, 현재 네트에 인접하게 삽입된 에어 갭 패턴 및 더미 네트 모두가 제거된다. 일부 실시예에서, 현재 네트에 인접하게 여러 개의 에어 갭 패턴 및 더미 네트가 삽입된 경우 제약이 만족되지 않는다는 판정에 응답하여 현재 네트에 인접하게 삽입된 에어 갭 패턴이 제약이 만족될 때까지 하나씩 제거된다. 현재의 네트와 삽입된 더미 네트 사이에 삽입된 에어 갭 패턴이 제거되는 경우, 더미 네트도 제거된다. 다른 구성은 다양한 실시예의 범위 내에 있다.
방법(300)과 관련하여 설명된 하나 이상의 장점 및/또는 효과는 일부 실시예에 따라 방법(500)에 의해 달성될 수 있다. 적어도 하나의 실시예에서, 더미 네트의 추가적인 삽입은 에어 갭 커버리지를 증가시킨다. 예를 들면, 도 4a의 레이아웃(400A)에서 2개의 에어 갭 패턴(411, 413)이 삽입되지만, 도 6a의 레이아웃(600A)에서는 4개의 에어 갭 패턴(611, 613, 615, 617)이 삽입된다. 결국, 적어도 하나의 실시예에서, 방법(500)에 의해 기생 정전 용량 감소 효과가 더욱 향상된다.
일부 실시예에서, 비용 함수에 의해 IC 또는 IC의 일부의 네트가 분류된다. 예를 들면, 비용 함수(Cost 3)는 다음의 수학식에 의해 결정된다:
Figure pat00003
여기서, i는 복수의 네트 중 i번째 네트이고,
N은 복수의 네트 중 i번째 네트에 인접한 네트의 수이고,
j는 i번째 네트에 인접한 N개의 네트 중 j번째 네트를 나타내고,
Proj_Length(j)는 i번째 네트와 j번째 네트가 서로를 따라 연장하는 투영 길이이고,
Cair_gap은 i번째 네트와 j번째 네트 사이의 단위 결합 정전 용량이고,
P는 i번째 네트에 인접하게 삽입 가능한 더미 네트의 수이고,
k는 i번째 네트에 인접하게 삽입 가능한 P개의 더미 네트 중의 k번째 더미 네트를 나타내고,
Dummy_Length(k)는 k번째 더미 네트의 길이이고,
Cdummy는 k번째 더미 네트의 단위 결합 정전 용량이다.
도 6b의 예시적인 구성에서, 레이아웃(600B)은 네트(622, 624, 626, 632)를 포함한다. 인접하는 네트(622, 626)에 대한 네트(624)의 투영 길이는 도 4b와 관련하여 설명된 바와 같이 판정된다. 네트(622, 624, 626, 632)의 치수 및/또는 투영 길이를 기초로, 네트(624)에 인접하게 더미 네트(628, 630)가 삽입 가능함이 판정되고 더미 네트(628, 630)의 치수가 결정된다. 삽입 가능한 더미 네트(628, 630)의 치수를 기초로, 네트(624)에 인접하게 삽입된 더미 네트의 정전 용량과 관련된 비용 함수(Cost3)(또는 Cap_Cost)가 결정된다. 나머지 다른 네트(622, 626, 632)에 인접하게 삽입된 더미 네트의 정전 용량과 관련된 비용 함수(Cost3)는 비슷한 방식으로 결정되며, 비용 함수(Cost3)에 의해 네트(622, 624, 626, 632)가 분류된다. 이후 공정은 도 5와 관련하여 설명된 바와 같이 더미 네트와 에어 갭 패턴을 삽입한다. 비용 함수(Cost3)를 이용하여 분류 구성을 구현하는 하나 이상의 실시예에서, 네트의 총 정전 용량에 대해 기생 정전 용량 감소가 최적화된다.
다른 예의 비용 함수(Cost4)가 다음의 수학식에 의해 판정된다:
Figure pat00004
여기서, i는 복수의 네트 중 i번째 네트를 나타내고,
Length(i)는 i번째 네트의 길이이다.
네트에 대한 비용 함수(Cost4)를 계산한 후, 네트는 계산된 비용 함수 값에 의해 분류된다. 공정은 이후 도 5와 관련하여 설명된 바와 같이 더미 네트와 에어 갭 패턴을 삽입한다. 비용 함수(Cost4)를 이용하여 분류 구성을 구현하는 하나 이상의 실시예에서, 네트 길이에 대한 네트의 총 정전 용량의 비율에 대해 기생 정전 용량 감소가 최적화된다.
다른 예의 비용 함수(Cost5)가 다음의 수학식에 의해 판정된다:
Figure pat00005
여기서,
Figure pat00006
이고,
Rdummy는 k번째 더미 네트의 단위 저항이다.
네트에 대한 비용 함수(Cost5)를 계산한 후, 네트는 계산된 비용 함수 값에 의해 분류된다. 이후 공정은 도 5와 관련하여 설명된 바와 같이 더미 네트와 에어 갭 패턴을 삽입한다. 비용 함수(Cost5)를 사용하여 분류 구성을 구현하는 하나 이상의 실시예에서, 삽입된 더미 네트의 정전 용량과 관련된 비용 함수(Cap_Cost)는 물론, 삽입된 더미 네트의 저항과 관련된 비용 함수(Res_Cost)도 역시 고려된다. 적어도 하나의 실시예에서, 삽입된 더미 네트의 저항에 대한 이러한 추가적인 고려는 삽입된 더미 네트가 정전 용량의 감소에 기여함과 동시에 더미 네트에 대응하는 추가된 전도성 패턴에 기인하여 저항을 증가시키기 때문에 유용하다.
더미 네트와 에어 갭 삽입을 위한 설명된 분류 구성은 예시적인 것이다. 다른 분류 구성은 다양한 실시예의 범위 내에 있다. 일부 실시예에서, IC의 다른 부분에 상이한 분류 구성이 적용된다. 일부 실시예에서, 추후의 단계에서 에어 갭 패턴이 검증 또는 확인을 통과하지 못하는 결과를 분류 구성이 가져오면, 에어 갭 패턴을 재생성하기 위해 다른 분류 구성이 적용된다.
도 6c는 일부 실시예에 따른 IC 레이아웃(600C)의 일부의 개략적인 평면도이다. 레이아웃(600C)은 네트(652, 654, 656, 658, 660, 662)를 포함한다. 인접한 네트(654, 656)는 에어 갭 패턴(657)이 해당 네트(654, 656) 사이에 삽입될 수 있게 허용하는 간격(s) 만큼 서로 이격되어 있다. 유사하게, 인접한 네트(658, 660) 사이 및 인접한 네트(660, 662) 사이의 간격(s)은 대응하는 에어 갭 패턴(677, 679)의 삽입을 허용한다. 그러나, 네트(652, 654) 사이의 간격은 에어 갭 패턴의 삽입이 허용되는 간격(s)보다 큰 3s이다. 일부 실시예에서, 더미 네트와 2개의 인접한 네트 사이에 에어 갭 패턴이 삽입되는 것을 허용하도록 에어 갭 삽입을 위한 최대 간격보다 큰 간격을 갖는 2개의 인접한 네트 사이에 더미 네트가 삽입된다. 예를 들면, s의 폭을 갖는 더미 네트(664)는 네트(652, 654) 사이에 삽입된다. 결국, 더미 네트(664)와 네트(652, 654) 각각의 사이의 간격은 에어 갭 삽입이 허용되는 간격(s)이 된다. 결국, 에어 갭 커버리지를 증가시키고 네트(652, 654)의 기생 정전 용량을 감소시키기 위해 에어 갭 패턴(671, 673)이 더미 네트(664)와 대응하는 네트(652, 654) 사이에 삽입 가능하다. 설명된 더미 네트 삽입 기술은 여기서 3s 더미 삽입으로 지칭된다. 일부 실시예에서, 3s 더미 삽입은 도 1과 관련하여 설명된 130 단계에서 수행된다. 일부 실시예에서, 130 단계에서 수행되는 3s 더미 삽입 이후에 도 3과 관련하여 설명된 에어 갭 삽입 방법이 후속된다. 일부 실시예에서, 3s 더미 삽입은 도 5와 관련하여 설명된 바와 같은 더미 네트 및 에어 갭 삽입 방법에서의 540 단계에서 수행된다. 다른 구성은 다양한 실시예의 범위 내에 있다.
레이아웃(600C)은 에어 갭 커버리지를 증가시키기 위해 일부 실시예에 따라 3s 더미 삽입이 수행되는 경우의 예를 나타내지만, 더미 네트 및 에어 갭 삽입은 최적화되지 않는다. 도 6d는 일부 실시예에 따라 더미 네트 및 에어 갭 삽입이 최적화된 IC 레이아웃(600D)의 일부의 개략적인 평면도이다. 적어도 하나의 실시예에서, 레이아웃(600D)은 도 6a 및 도 6b와 관련하여 설명된 분류 구성 및 비용 함수(Cost3, Cost4, Cost5)를 이용하여 방법(500)을 수행하는 것으로 얻어진다. 예를 들면, 레이아웃(600D)을 얻기 위해 도 6a와 관련하여 설명된 바와 같은 네트 길이에 의한 분류 구성이 적어도 하나의 실시예에서 채용된다. 레이아웃(600C)에 비해, 레이아웃(600D)의 경우, 네트(654, 658) 사이에 더미 네트(684)가 삽입되고, 긴 네트(658, 660)와 삽입된 더미 네트(684) 주변에 에어 갭 패턴(691, 693, 695, 677, 699)이 집중된다. 결국, 긴 네트(658, 660)의 기생 정전 용량이 감소됨으로써 레이아웃(600C)에서 얻어진 것보다 더 크게 기생 정전 용량 감소가 이루어진다. 적어도 하나의 실시예에서, 레이아웃(600C)에서 더미 네트(664)와 에어 갭 패턴(671, 673, 675, 679)의 길이는 레이아웃(600C)에서 대응하는 더미 네트(684)와 에어 갭 패턴(691, 693, 695, 699)의 길이와 실질적으로 동일하다. 결국, 레이아웃(600C)에 비해, 레이아웃(600D)은 더미 네트와 에어 갭 패턴의 커버리지가 거의 변하지 않고 긴 네트 및/또는 임계 네트를 따라 기생 정전 용량 감소가 더 크게 일어난다.
도 7은 일부 실시예에 따른 IC 설계 공정(700)의 일부의 흐름도이다.
715 단계에서, IC의 레이아웃이 형성된다. 적어도 하나의 실시예에서, 레이아웃은 여기 설명되는 APR 툴에 의해 형성된다.
725 단계에서, 더미 네트 삽입 공정이 수행된다. 적어도 하나의 실시예에서, 도 1의 130 단계와 관련하여 설명된 바와 같이 생산 수율 및/또는 품질의 향상을 위해 더미 네트가 삽입된다. 적어도 하나의 실시예에서, 725 단계에서의 더미 네트 삽입 공정에서 3s 더미 삽입이 수행된다.
735 단계에서, 에어 갭 삽입 공정이 수행된다. 적어도 하나의 실시예에서, 735 단계에서 에어 갭 삽입 방법(300)이 수행된다. 일부 실시예에서, 725 및 735 단계에서 더미 네트 및 에어 갭 삽입 방법(500)이 수행된다. IC의 수정된 레이아웃이 735 단계에 의해 생성된다.
745 단계에서, 타이밍 종료 확인이 수행된다. 적어도 하나의 실시예에서, 도 1의 160 단계와 관련하여 설명된 바와 같이 IC의 수정된 레이아웃이 타이밍 사양을 만족시키는지 여부를 판정하기 위해 타이밍 종료 확인이 수행된다.
IC의 수정된 레이아웃이 타이밍 사양을 만족시키지 않는다는 판정(755 단계에서 '아니오')에 응답하여 공정은 IC 내의 불량 신호 경로 또는 신호 경로들을 식별하는 765 단계로 진행된다.
일부 실시예에서, 공정은 765 단계로부터 735 단계로 추가로 진행되어(화살표(767)에 의해 지시됨) 불량 신호 경로 또는 신호 경로들 내의 네트에 대해 에어 갭 삽입 최적화가 수행된다. 예를 들면, 하나 이상의 실시예에서, 예컨대, 네트 길이, 투영 길이, Cost1 또는 Cost2와 같이 도 4a 내지 도 4d와 관련하여 설명된 분류 구성 중 적어도 하나를 이용하여 IC의 레이아웃 내의 네트에 대해 에어 갭 삽입 방법(300)이 735 단계에서 수행된다. 에어 갭 삽입 방법(300)은 예컨대, 네트 길이, 투영 길이, Cost1 또는 Cost2와 같이 상기 설명된 분류 구성 중 적어도 하나를 이용하여 765 단계에서 식별된 불량 신호 경로 또는 신호 경로들 내의 네트에 대해 다시 적용된다. 적어도 하나의 실시예에서, 에어 갭 삽입 방법(300)은 상이한 실행마다 다른 분류 구성을 이용한다. 예를 들면, 에어 갭 삽입 방법(300)은 레이아웃의 에어 갭 삽입을 최적화하기 위해, 예컨대 네트 길이와 같은 하나의 분류 구성을 이용하고, 불량 신호 경로 또는 신호 경로들의 에어 갭 삽입을 최적화하기 위해, 예컨대 Cost2와 같이 상이한 분류 구성을 이용한다. 다른 구성은 다양한 실시예의 범위 내에 있다.
일부 실시예에서, 공정은 765 단계로부터 725 단계로 추가로 진행되어(화살표(769)에 의해 지시됨) 불량 신호 경로 또는 신호 경로들 내의 네트에 대해 더미 네트 및 에어 갭 삽입 최적화가 수행된다. 예를 들면, 하나 이상의 실시예에서, 예컨대, 네트 길이, Cost3, Cost4 및 Cost5와 같이 여기 설명된 분류 구성 중 적어도 하나를 이용하여 IC의 레이아웃 내의 네트에 대해 더미 네트 및 에어 갭 삽입 방법(500)이 725 및 735 단계에서 수행된다. 더미 네트 및 에어 갭 삽입 방법(500)은 예컨대, 네트 길이, Cost3, Cost4 또는 Cost5와 같이 상기 설명된 분류 구성 중 적어도 하나를 이용하여 765 단계에서 식별된 불량 신호 경로 또는 신호 경로들 내의 네트에 대해 다시 적용된다. 적어도 하나의 실시예에서, 에어 갭 삽입 방법(300)은 상이한 실행마다 다른 분류 구성을 이용한다. 예를 들면, 더미 네트 및 에어 갭 삽입 방법(500)은 레이아웃의 더미 네트 및 에어 갭 삽입을 최적화하기 위해, 예컨대 네트 길이와 같은 하나의 분류 구성을 이용하고, 불량 신호 경로 또는 신호 경로들의 더미 네트 및 에어 갭 삽입을 최적화하기 위해, 예컨대 Cost5와 같이 상이한 분류 구성을 이용한다. 다른 구성은 다양한 실시예의 범위 내에 있다.
IC의 수정된 레이아웃이 타이밍 사양을 만족시킨다는 판정(755 단계에서 '예')에 응답하여, 공정은 775 단계에서 종료된다. 적어도 하나의 실시예에서, 타이밍 종료를 통과한 수정된 레이아웃은 추가의 검증 또는 확인을 받거나 IC 제조를 위해 출력된다.
다른 접근법으로, 수율만을 고려하여 에어 갭 삽입이 수행되며, 타이밍 위배가 있는 경우, 공정은 시간 소모적인 재배치 및/또는 재 라우팅(re-routing)을 위해 APR에서의 배치 또는 라우팅 스테이지로 복귀한다. 다른 접근법에 비해, 일부 실시예에 따른 IC 설계 공정(700)은 타이밍 위배가 있는 경우 배치 또는 라우팅 스테이지로 복귀하지 않으며, 이보다는 IC 설계 공정(700)은 여기 설명되는 바와 같이 더미 네트 및/또는 에어 갭 배열을 최적화하기 위해 더미 네트 삽입 및/또는 에어 갭 삽입 스테이지로 복귀한다. 일부 실시예에 따른 IC 설계 공정(700)은 하나 이상의 신호 경로가 타이밍 종료에 실패한 경우 레이아웃의 재배치 및/또는 재 라우팅을 포함하지 않으므로, 하나 이상의 실시예에서 IC 설계 공정(700)은 다른 접근법에 비해 사이클 시간을 감소시킨다. 일부 실시예에서, IC 설계 공정(700)은 불량 신호 경로를 감소된 시간 사이클로 수정하기 위해 디지털 및 아날로그 설계 타이밍 종료 절차에 적용 가능하다. 방법(300) 및/또는 방법(500)과 관련하여 설명된 하나 이상의 장점 및/또는 효과는 일부 실시예에 따라 방법(700)에 의해 달성 가능하다.
도 8은 일부 실시예에 따라 APR 툴(800)의 기능적 흐름도이다. 적어도 하나의 실시예에서, APR 툴(800)은 도 1의 120 단계에서 설명된 APR 툴 및/또는 도 7의 715 단계에서 설명된 APR 툴에 대응한다.
810 단계에서, APR 툴(800)은 IC의 레이아웃의 생성을 위한 입력을 받아들인다. 도 8의 예시적인 구성에서, 입력은 110 단계와 관련하여 설명된 바와 같은 네트리스트의 형태의 IC의 설계, 설계에 대한 제약을 포함하는 시놉시스 설계 제약(Synopsys Design Constraint; SDC) 파일, 및 평면 플래닝(floor plan)을 포함한다. 다른 구성은 다양한 실시예의 범위 내에 있다. 예를 들면, 일부 실시예에서, APR 툴(800)은 전기적으로 연결된 회로 요소들을 연결시키는 상호배선 또는 네트에 걸쳐 이동되는 신호의 시간 지연을 감소시키고 및/또는 IC의 면적을 감소시키기 위해 서로 전기적으로 연결될 것이고 서로 근접 배치될 회로 요소를 식별하기 위해 평면 플래닝을 수행한다. 일부 실시예에서, APR 툴(800)은 클록 및 로직 그룹과 같은 복수의 블록 또는 그룹으로 설계를 분할하기 위해 파니셔닝(partitioning)을 수행한다.
812 단계에서, APR 툴(800)은 일부 실시예에서 전자 설계의 파니셔닝 및/또는 평면 플래닝을 기초로 전력 플래닝(power planning)을 수행한다.
814 단계에서, APR 툴(800)은 배치(placement)를 수행한다. 예를 들면, 한정되는 것은 아니지만 클록 트리 합성(clock tree synthesis: CTS) 이전 및/또는 이후에 사전 배치(pre-placement) 최적화, 배치 중(in-placement) 최적화, 사후 배치(post-placement) 최적화를 포함하는 하나 이상의 단계로 수행된다.
816 단계에서, APR 툴(800)은 스큐(skew) 및/또는 지연을 최소화하기 위해 CTS 를 수행한다.
818, 820, 822 단계에서, APR 툴(800)은 배치된 회로 요소를 상호 연결하는 다양한 네트를 경로지정하기 위해 라우팅을 수행한다. 라우팅은 경로 지정된 배선 또는 네트가 제약 세트를 만족시키는 것을 보장하기 위해 수행된다.
구체적으로, 818 단계에서, APR 툴(800)은 배선 또는 네트에 사용되는 라우팅 리소스를 할당하기 위해 글로벌 라우팅을 수행한다. 예를 들면, 글로벌 라우팅 중에, 라우팅 영역은 다수의 서브 영역으로 분할되고, 배치된 회로 요소의 핀은 해당 서브 영역에 매핑되며, 네트는 배선이 물리적으로 라우팅 가능한 서브 영역의 세트로서 구성된다.
820 단계에서, APR 툴(800)은 IC의 대응하는 전도층에 배선 또는 네트를 할당하기 위해 트랙 할당을 수행한다.
822 단계에서, APR 툴(800)은 할당된 전도층에서 그리고 글로벌 라우팅 리소스 내에서 배선 또는 네트를 라우팅하는 세부적인 라우팅을 수행한다. 예를 들면, 세부적인 라우팅 중에 글로벌 라우팅에서 정해진 대응하는 서브 영역 세트 내에 그리고 트랙 할당시 정해진 전도층 내에 물리적 배선이 형성된다.
824 단계에서, APR 툴(800)은 배치된 회로 요소와 라우팅된 네트를 포함하는 IC의 레이아웃을 출력한다. APR 툴(800)의 설명된 단계들은 예시적인 것이다. 다른 구성은 다양한 실시예의 범위 내에 있다. 예를 들면, 하나 이상의 실시예에서, 설명된 단계 중 하나 이상의 단계가 생략된다.
일부 실시예에서, 라우팅 단계 중에, APR 툴(800)은 라우팅된 네트의 네트 길리를 최소화하거나 및/또는 IC의 전체 면적을 최소화하려는 시도를 행하도록 구성된다. 일부의 경우, 라우팅 단계는 네트가 서로 나란히 연장되는 투영 길이 및/또는 전도성 패턴의 밀도를 증가시키는 경향이 있다. 증가된 밀도의 전도성 패턴과 관련된 기생 정전 용량 및/또는 신호 누화(cross-talk)를 감소시키기 위해, 일부 실시예에서 APR 툴(800)은 라우팅되고 있는 배선의 기생 파라미터, 특히 기생 정전 용량을 추정하기 위해 830 단계에서 추가로 RC 추정을 수행하도록 구성된다. 추정된 기생 파라미터는 네트의 라우팅을 위한 다양한 옵션에 대한 타이밍 지연을 추정하기 위해 라우팅 과정 중 적어도 하나의 단계, 즉 글로벌 라우팅, 트랙 할당 또는 세부적인 라우팅 중 적어도 하나에서 사용된다. 이후, 타이밍 지연 추정은 미리 정해진 성능 목표가 만족되도록 네트를 라우팅함에 있어 어떤 라우팅 옵션이 사용되는지를 판정하는데 사용된다.
일부 실시예에서, APR 툴(800)은 여기 설명되는 바와 같이 APR 툴(800)에 의해 출력되는 레이아웃으로 추후 삽입될 에어 갭을 고려하여 RC 추정을 수행한다. RC 추정은 도 9a 내지 도 9e와 관련하여 설명되는 832, 834, 836 단계를 포함한다.
832 단계에서, IC의 복수의 네트 중 에어 갭 삽입을 위한 후보 네트가 선택된다. 예를 들면, 도 9a는 일부 실시예에 따라 IC를 위해 형성된 레이아웃의 일부(900A)의 개략적 평면도이다. 레이아웃 부분(900A)은 그리드 라인(912)을 갖는 라우팅 그리드 상에 배열된 네트(902, 904, 906, 908, 910)를 포함한다. 인접한 그리드 라인(912)은 IC의 설계 및/또는 제조 사양에 의해 허용된 인접 네트 간의 최소 간격인 간격(s)의 정수배에 대응하는 피치만큼 서로 이격되어 있다. 도 9a의 예시적인 구성에서, 인접한 그리드 라인(912) 간의 피치는 2s이다. 네트(904)는 에어 갭 삽입을 위한 최대 간격보다 크지 않은 간격(s)만큼 네트(902, 906)로부터 이격되어 있다. 결국, 에어 갭 패턴(913, 915)은 네트(904)와 대응하는 네트(902, 906) 사이에 삽입 가능하고, 네트(902, 904, 906)는 에어 갭 삽입을 위한 후보 네트로서 식별된다. 적어도 하나의 실시예에서, 에어 갭 패턴들(913, 915)은 도 3 및 도 5와 관련하여 설명된 바와 같이 APR 툴(800)에 의해 레이아웃이 출력되고 에어 갭 삽입 공정이 수행된 이후까지 실제로 삽입되지 않는다. 네트(908, 910)는 에어 갭 삽입을 위한 최대 간격보다 큰 간격(3s)만큼 서로 이격되어 있다. 결국, 네트(908, 910) 사이로 어떤 에어 갭 패턴도 삽입될 수 없어서 네트(908, 910)는 에어 갭 삽입을 위한 후보 네트로서 식별되지 않는다. 일부 실시예에서, 간격(s)은 에어 갭 삽입을 위한 최대의 간격이고, 따라서 에어 갭 패턴은 해당 간격(s)만큼 서로 이격되어 있는 인접한 네트 사이로만 삽입 가능하다. 적어도 하나의 실시예에서, 간격(s)은 0.08 마이크로미터이다. 네트가 배열되거나 배열되도록 예정된 그리드 라인(912)을 기초로, 인접한 네트 간의 간격이 결정되어 에어 갭 삽입을 위한 최대 간격과 비교되고, 그 비교를 기초로 에어 갭 삽입을 위한 후보 네트가 결정된다. 에어 갭 삽입을 위한 후보 네트의 식별을 위한 다른 구성은 다양한 실시예의 범위 내에 있다.
834 단계에서, 대응하는 후보 네트의 길이를 기초로 후보 네트에 대한 다양한 스케일링 비율(scaling ratio)이 결정되며, 836 단계에서, 대응하는 스케일링 비율을 기초로 후보 네트의 정전 용량이 추정된다. 스케일링 비율은 대응하는 후보 네트의 정전 용량에 대한 에어 갭의 영향을 나타낸다. 일부 실시예에서, 스케일링 비율이 높을수록, 대응하는 후보 네트의 정전 용량에 대한 에어 갭의 영향이 낮다. 예를 들면, 도 9b는 일부 실시예에 따라 다양한 스케일링 비율을 결정하는 그래프(900B)이다. 그래프(900B)는 일부 실시예에 따라 생성되는 레이아웃의 다양한 부분(900C~900E)의 개략적인 평면도인 도 9c 내지 도 9e와 관련하여 그려진 것이다.
일부 실시예에서, 후보 네트가 제1 임계 길이보다 작은 길이를 가지면, 후보 네트의 스케일링 비율은 제1 스케일링 비율 값을 갖는다. 예를 들면, 도 9b에 예시된 바와 같이, 후보 네트가 제1 임계 길이(L1)보다 작은 길이를 가지는 경우, 후보 네트의 스케일링 비율은 제1 스케일링 비율 값(SR1)을 가진다. 적어도 하나의 실시예에서, 제1 스케일링 비율 값(SR1)은 후보 네트에 인접하게 어떤 에어 갭도 삽입되지 않을 것이고 후보 네트의 정전 용량은 에어 갭에 의해 영향을 받지 않음을 지시하는 1이다. 적어도 하나의 실시예에서, 제1 임계 길이(L1)는 에어 갭이 삽입될 수 있는 최소의 네트 길이이다. 적어도 하나의 실시예에서, L1은 0.18754 마이크로미터이다. 도 9c의 예시적인 구성에서, 네트(922)는 에어 갭 삽입을 위한 후보 네트인데, 이는 해당 네트가 인접 네트(924)로부터 간격(s)을 두고 위치되기 때문이다. 그러나, 네트(922)의 길이(L)는 L1보다 작기 때문에, 결국 어떤 에어 갭 패턴도 네트(922)에 인접하게 삽입될 수 없다.
일부 실시예에서, 후보 네트가 제1 임계 길이 이상이고 제2 임계 길이 이하인 길이를 가지는 경우, 후보 네트의 스케일링 비율은 후보 네트의 대응하는 길이가 제1 임계 길이로부터 제2 임계 길이로 증가됨에 따라 제1 스케일링 비율 값으로부터 제2 스케일링 비율 값으로 감소된다. 예를 들면, 도 9b에 도시된 바와 같이, 후보 네트가 제1 임계 길이(L1)와 제2 임계 길이(L2) 사이의 길이를 가지는 경우, 후보 네트의 스케일링 비율은 후보 네트의 대응하는 길이가 증가함에 따라 제1 스케일링 비율 값(SR1)으로부터 제2 스케일링 비율 값(SR2)으로 감소된다. 적어도 하나의 실시예에서, 제2 스케일링 비율 값(SR2)은 0.7인데, 이 값은 대응하는 후보 네트에 인접하게 에어 갭이 삽입될 때 후보 네트의 정전 용량이 30%만큼 감소될 것, 즉 에어 갭 삽입이 없는 대응하는 후보 네트의 정전 용량의 70%가 될 것임을 나타낸다. 적어도 하나의 실시예에서, 제2 임계 길이(L2)는 6 마이크로미터이다. SR1, SR2, L1, L2의 특정 수치 값은 예시적인 것이다. 다양한 실시예의 범위 내에 다른 수치 값이 존재한다.
도 9d의 예시적인 구성에서, 후보 네트(932, 934, 936)는 에어 갭 패턴(937, 939)이 후보 네트(932, 934)와 네트(934, 936) 사이로 삽입될 수 있을 만큼 충분히 길다. 그러나, 후보 네트(934)를 다른 전도성 패턴에 전기적으로 결합시키기 위한 비아(941, 943)의 존재는 삽입 가능한 에어 갭 패턴(937, 939)의 유효 길이(Lf)를 후보 네트(932, 934, 936)의 길이(L)의 일부로 제한시킨다. 그 이유는 비아(941, 943)가 예컨대 제조시의 오정렬에 기인하여 에어 갭 위에 안착될 가능성을 감소시키기 위해 대응하는 비아(941, 943)를 둘러싸는 영역(945, 947)에 에어 갭이 형성되지 않을 것이기 때문이다. 영역(945, 947)의 크기는 영역(945, 947)과 대응하는 비아(941, 943)의 대향 엣지들 사이의 간격(V)인 비아 제약에 의해 결정된다. 적어도 하나의 실시예에서, V는 0.06 마이크로미터이다. 다른 실시예의 범위 내에 V의 다른 수치 값이 존재한다.
도 9b에서 L1과 L2 사이의 네트 길이에 대해 감소하는 스케일링 비율은 에어 갭 삽입에 대한 비아 제약의 영향을 반영한다. 네트 길이가 도 9d의 예시적인 구성에서 보여지는 바와 같이 짧으면, 비아 제약은 삽입 가능한 에어 갭의 유효 길이(Lf)를 크게 제한한다. 결국, 에어 갭 삽입으로 얻을 수 있는 정전 용량 감소의 양이 낮고, 에어 갭이 삽입된 후보 네트의 정전 용량은 에어 갭이 삽입되지 않은 후보 네트의 정전 용량에 가까운데, 이는 스케일링 비율이 1에 가깝다는 것을 의미한다. 네트 길이가 도 9e의 예시적인 구성에서 보여지는 바와 같이 증가하면, 비아 제약은 삽입 가능한 에어 갭의 유효 길이(Lf)를 후보 네트의 길이(L)에 비해 덜 연장되게 제한한다. 결국, 에어 갭 삽입으로 얻을 수 있는 정전 용량 감소량이 증가하고 에어 갭 삽입을 갖는 후보 네트의 정전 용량이 감소되는데, 이는 스케일링 비율이 감소됨을 의미한다. 비아 제약이 적어도 하나의 실시예에서 무시될 수 있도록 네트 길이가 충분히 긴 경우, 스케일링 비율은 고정된다. 예를 들면, 도 9b에 도시된 바와 같이, 후보 네트가 제2 임계 길이(L2)보다 큰 길이를 갖는 경우, 대응하는 스케일링 비율은 제2 스케일링 비율 값(SR2)을 가진다.
네트 길이와 스케일링 비율 간의 상기 설명된 관계는 예시적인 것이다. 다양한 실시예의 범위 내에 다른 구성이 존재한다. 예를 들면, 적어도 하나의 실시예에서, L1과 L2 사이의 네트 길이에 대한 스케일링 비율의 감소는 도 9에 나타낸 바와 같이 선형이 아니고, 대신에 스케일링 비율의 감소는 일부 실시예에서 비선형이거나 계단형이다.
결정된 스케일링 비율을 기초로, 에어 갭 삽입에 따른 후보 네트의 정전 용량은 대응하는 스케일링 비율을 에어 갭 삽입이 없는 후보 네트의 정전 용량에 곱하는 것에 의해 추정된다. 에어 갭이 고려된 추정된 정전 용량은 여기 설명되는 라우팅 단계에 사용된다. 라우팅 과정 중 에어 갭이 고려되지 않는 다른 접근법에 비해, 하나 이상의 실시예의 APR 툴은 후속하는 에어 갭 삽입을 위해 최적화된 레이아웃을 제공한다. 결국, 적어도 하나의 실시예는 에어 갭 삽입과 관련된 성능을 최대화하거나 적어도 증가시킨다.
도 8과 관련하여 설명된 바와 같은 APR 툴에서의 에어 갭 고려 및/또는 도 5 및 도 6a 내지 도 6d와 관련하여 설명되는 바와 같은 에어 갭 커버리지를 증가시키기 위한 더미 네트의 추가 이외에, 일부 실시예는 예컨대 RC 추출 단계에서와 같은 추후의 설계 단계에서 에어 갭을 고려한다.
도 10은 일부 실시예에 따른 IC 설계 공정(1000)의 적어도 일부의 기능적 흐름도이다.
1010 단계에서, IC의 네트리스트와 SDC 파일이 제공된다. 적어도 하나의 실시예에서, 네트리스트와 SDC 파일은 도 8의 810 단계와 관련하여 설명된 바와 같은 레이아웃의 형성을 위한 입력에 대응한다.
1020 단계에서, 오리지널 RC 기술 파일이 제공된다. 오리지널 RC 기술 파일을 생성하기 위한 예시적인 방법이 참조로 여기에 그 전체 내용이 포함된 미국 특허 출원 공개 제2009/0077507호에 기술된다. 적어도 하나의 실시예에서, 오리지널 RC 기술 파일은 다양한 프리미티브(primitive) 다각형 패턴의 미리 저장된 기생 정전 용량과 저항을 포함한다. 적어도 하나의 실시예에서, 오리지널 RC 기술 파일은 기생 정전 용량을 결정하기 위한 유전율(K)을 더 포함한다. IC 내에 에어 갭이 삽입되면, 기생 정전 용량은 감소된다. 적어도 하나의 실시예에서, 유전율(K)은 여기 설명되는 바와 같이 에어 갭 삽입에 기인한 기생 정전 용량의 감소를 모방하기 위해 조정된다. 예를 들면, 유전율(K)은 IC의 제조에 사용되는 한편 해당 범위에서 기생 정전 용량이 생기는 유전 재료의 실제 유전율보다 작도록 감소된다.
1030 단계에서, 1010 단계에서 제공된 네트리스트와 SDC 파일과 1020 단계에서 제공된 오리지널 RC 기술 파일은 도 1의 120 단계와 관련하여 설명된 바와 같이 IC의 레이아웃을 생성하기 위해 배치 및 라우팅 단계를 수행하는 APR 툴로의 입력으로서 사용된다. 적어도 하나의 실시예에서, 여기 설명되는 APR 툴(800)은 배치 및 라우팅 단계(1030)에 사용된다.
1040 단계에서, 수정된 레이아웃을 얻기 위해 APR 툴에 의해 출력된 레이아웃 내로 에어 갭을 삽입시키는 에어 갭 삽입 공정이 수행된다. 적어도 하나의 실시예에서, 1040 단계에서 에어 갭 삽입 방법(300) 또는 더미 네트 및 에어 갭 삽입 방법(500)이 수행된다.
1050 단계에서, 1040 단계에서 에어 갭 삽입 공정에 의해 출력된 수정된 레이아웃은 RC 추출 툴에 의해 RC 추출이 수행된다. RC 추출은 도 1의 150 단계와 관련하여 설명된 바와 같이 후속 처리에서 수정된 레이아웃에서 기생 파라미터를 결정하기 위해 수행된다. 적어도 하나의 실시예에서, 1050 단계에서의 RC 추출은 1051~1059 단계를 포함한다.
1051 단계에서, 에어 갭 고려 없이 RC 추출을 기초로 정적 타이밍 분석(static timing analysis: STA)이 수행된다. 적어도 하나의 실시예에서, 에어 갭 고려 없는 RC 추출은 삽입된 에어 갭을 무시하면서 수정된 레이아웃으로부터 기생 저항 및 정전 용량을 추출한다. 예를 들면, RC 추출 툴은 1040 단계로부터 받아들인 수정된 레이아웃을 1020 단계에서 제공된 오리지널 RC 기술 파일에서 정해진 인식 가능한 프리미티브 다각형 패턴을 포함하는 여러 블록으로 분할한다. 이후 RC 추출 툴은 오리지널 RC 기술 파일로부터 대응하는 미리 저장된 기생 저항 및 정전 용량을 판독하는 것에 의해 수정된 레이아웃의 기생 저항 및 정전 용량을 추출한다. STA는 IC 내의 다양한 신호 경로를 따른 시간 지연을 평가하기 위해 추출된 기생 저항 및 정전 용량을 이용하여 수행된다. 적어도 하나의 실시예에서, 삽입된 에어 갭과, 삽입된 에어 갭을 갖는 네트를 따르는 유전율의 변동과 관련된 복잡성을 무시하는 것에 의해, 1051 단계는 수정된 레이아웃에 대해 에어 갭을 고려한 시간 소모적인 RC 추출을 실행할 필요 없이 수행된다.
1052 단계에서, 1051 단계로부터 얻어진 다양한 신호 경로를 따른 시간 지연을 기초로, 에어 갭을 고려한 RC 추출을 위한 신호 경로 중 적어도 하나의 경로가 식별된다. 적어도 하나의 실시예에서, 식별된 신호 경로는 중요 신호 경로(critical signal path)이다. 일례로, 중요 신호 경로는 최장의 시간 지연을 갖는 신호 경로이다. 다른 예로, 중요 신호 경로는 타이밍 제약에 가깝거나 그보다 큰 시간 지연을 갖는 신호 경로이다. 일부 실시예에서, 2개 이상의 중요 신호 경로가 식별된다. 예를 들면, 에어 갭을 고려한 RC 추출을 위해 여러 개의 최상의 중요 신호 경로가 식별된다. 에어 갭을 고려한 RC 추출을 위해 신호 경로를 식별하기 위한 다른 구성은 다양한 실시예의 범위 내에 있다.
1053 단계에서, 에어 갭을 고려한 RC 추출은 1052 단계에서 식별된 신호 경로에 대해 수행된다. 에어 갭을 고려한 이러한 RC 추출은 여기서 코너형(corner-based) RC 추출로 지칭된다. 적어도 하나의 실시예에서, 코너형 RC 추출은 삽입된 에어 갭을 갖는 네트를 따라 변하는 유전율이 고려되는 것을 제외하고, 1051 단계와 관련하여 설명된 RC 추출과 유사한 방식으로 수행된다. 결국, 코너형 RC 추출은 보다 정확한 추출 기생 파라미터를 제공한다. 적어도 하나의 실시예에서, IC 내에서 다른 신호 경로에 대해서가 아니라, 하나 이상의 식별된 신호 경로에 대해 코너형 RC 추출을 수행하는 것에 의해 처리 시간이 감소되는 한편 정확성은 IC에 걸쳐 보장되는데, 이는 중요 신호 경로에 대응하는 코너 케이스가 코너형 RC 추출에 의해 커버되기 때문이다.
1054 단계에서, 식별된 신호 경로 각각에 대해 2개의 시간 지연 값이 얻어진다. Daccurate로 지칭되는 제1 시간 지연 값은 코너형 RC 추출에 의해 추출된 기생 정전 용량을 이용하여 식별된 신호 경로에 대해 유도된다. Dcorner로 지칭되는 제2 시간 지연 값은 1051 단계와 관련하여 설명된 바와 같이 에어 갭을 고려하지 않은 RC 추출에 의해 추출된 기생 정전 용량을 이용하여 식별된 신호 경로에 대해 유도된다. 적어도 하나의 실시예에서, Dcorner는 1051 단계에서 STA의 결과로부터 얻어진다.
1055 단계에서, Dcorner가 Daccurate와 매칭되는지 여부가 판정된다. Dcorner는 Daccrate와 Dcorner 간의 차이의 절대값이 X 퍼센트 이하일 때 Daccurate와 매칭되는 것으로 간주된다. 일부 실시예에서, X는 2%~4%이다. 적어도 하나의 실시예에서, X는 3%이다. Dcorner를 Daccurate와 매칭시키기 위한 다른 X 값 및/또는 구성은 다양한 실시예의 범위 내에 있다.
1056 단계에서, Dcorner가 Daccurate와 매칭되지 않는다는 판정(1055 단계에서 '아니오')에 응답하여, 오리지널 RC 기술 파일의 유전율(K)이 조정된다. 적어도 하나의 실시예에서, Dcorner>Daccurate는 에어 갭을 고려하지 않고 추출된 기생 정전 용량이 코너형 RC 추출에 의해 추출된 보다 정확한 기생 정전 용량보다 큰 것을 나타낸다. 코너형 RC 추출에 의해 추출된 것과 매칭되도록 에어 갭 고려 없이 추출된 기생 정전 용량을 감소시키기 위해, 오리지널 RC 기술 파일의 유전율(K)이 예컨대, 스케일 다운되는 것처럼 감소된다. 적어도 하나의 실시예에서, Dcorner<Daccurate는 에어 갭을 고려하지 않고 추출된 기생 정전 용량이 코너형 RC 추출에 의해 추출된 보다 정확한 기생 정전 용량보다 작은 것을 나타낸다. 코너형 RC 추출에 의해 추출된 것과 매칭되도록 에어 갭 고려 없이 추출된 기생 정전 용량을 증가시키기 위해, 오리지널 RC 기술 파일의 유전율(K)이 예컨대, 스케일 업되는 것처럼 증가된다. 일부 실시예에서, 코너형 RC 추출과 유전율(K)의 조정을 위해 식별되는 신호 경로는 IC의 사양에 의해 허용되는 최소 폭(즉, 1W)과 IC의 사양에 의해 허용되는 인접하는 네트로부터의 최소 간격(즉, 1S)을 갖는 네트를 포함하는 1W1S 신호 경로를 포함한다.
1057 단계에서, 오리지널 RC 기술 파일을 1056 단계에서 조정된 유전율(K)로 갱신하는 것에 의해 새로운 RC 기술 파일이 얻어진다.
1058 단계에서, 에어 갭 고려 없이 추출된 기생 정전 용량은 조정된 유전율(K)로 갱신된다. 예를 들면, 유전율(K)이 1056 단계에서의 조정으로 스케일 다운된 경우, 조정된 유전율(K)에 따라 기생 정전 용량도 스케일 다운된다. 유전율(K)이 1056 단계에서의 조정으로 스케일 업되면, 기생 정전 용량이 또한 조정된 유전율(K)에 따라 스케일 업된다. 갱신된 기생 정전 용량을 이용하여 대응하는 식별된 신호 경로에 대해 Dcorner를 재계산하도록 STA가 수행된다. 이후 공정은 1055 단계로 복귀되어 재계산된 Dcorner가 Daccurate와 매칭되는지 여부를 판정한다. 재계산된 Dcorner가 여전히 Daccurate와 매칭되지 않으면, 1056, 1057, 1058 단계들에서 유전율(K)이 반복적으로 조정된다.
1059 단계에서, Dcorner가 Daccurate와 매칭된다는 판정(1055 단계에서 '예')에 응답하여, IC 내의 다른 신호 경로에 대해 에어 갭 고려 없이 추출된 기생 정전 용량을 조정하기 위해 Daccurate와 Dcorner의 매칭에 대응하는 유전율(K)이 사용된다. 일부 실시예에서, 유전율(K)이 1056 단계에서 조정시 스케일 다운되는 경우, 상기 다른 신호 경로에 대해 추출된 기생 정전 용량도 역시 조정된 유전율에 따라 스케일 다운된다. 1056 단계에서의 조정시 유전율(K)이 스케일 업 되는 경우, 다른 신호 경로에 대해 추출된 기생 정전 용량도 역시 조정된 유전율(K)에 따라 스케일 업 된다. 조정된 기생 파라미터들은 후속 처리를 위해 출력된다.
1060 단계에서, 조정된 기생 파라미터들을 이용하여 IC 레이아웃을 타이밍 종료한다. 적어도 하나의 실시예에서, 1060 단계에서의 타이밍 종료는 도 1의 160 단계와 관련하여 설명된 타이밍 종료에 대응한다.
소정의 다른 접근법은 IC에 대한 에어 갭 고려된 RC 추출을 수행한다. 이러한 RC 추출은 인접하는 전도성 패턴들 사이의 절연이 에어 갭으로부터 유전 재료까지 변할 때 삽입된 에어 갭의 존재와 이와 관련된 유전율의 변화에 기인하여 시간 소모적이다. 추가로, 에어 갭 삽입의 위치가 추후 단계에서의 분석을 기초로 변할 때, 에어 갭 패턴을 포함하는 마스크 층이 재생성되고 에어 갭을 고려한 시간 소모적인 RC 추출이 IC에 대해 반복된다. 결국, 설계 시간과 비용이 증가한다.
다른 접근법에 비해, 일부 실시예에 따른 IC 설계 공정(1000)은 IC 내의 다른 경로가 아닌 하나 이상의 중요 신호 경로에 대해 에어 갭을 고려한 RC 추출을 수행한다. 결국, 처리 시간이 감소되는 한편 IC에 걸쳐 정확성이 보장되는데, 이는 중요 신호 경로에 대응하는 코너 케이스가 코너형 RC 추출에 의해 커버되기 때문이다. 적어도 하나의 실시예에서, 타이밍 종료(예, 1060 단계)와 레이아웃 수정(예, 1030 단계 및/또는 1040 단계) 사이의 소요 시간은 다른 접근법에 비해 감소된다. 적어도 하나의 실시예에서, RC 추출은 에어 갭 패턴을 포함하는 마스크 층의 반복적인 생성 없이 수행된다.
전술한 방법은 예시적인 단계들을 포함하지만, 반드시 예시된 순서로 수행되는 것이 필요한 것은 아니다. 단계들은 본 발명의 실시예의 취지 및 범위에 따라 적절히 부가, 대체, 순서 변화 및/또는 제거될 수 있다. 다른 특징부들 및/또는 다른 실시예와 결합된 실시예들은 본 발명의 범위 내에 있으며, 본 발명의 검토를 통해 당업자에게 분명할 것이다.
도 11은 일부 실시예에 따른 컴퓨터 시스템(1100)의 블록도이다. 도 1 내지 도 7과 관련하여 설명된 툴 및/또는 엔진 및/또는 시스템 및/또는 단계 중 하나 이상은 도 11의 하나 이상의 컴퓨터 시스템(1100)에 의해 소정의 실시예로 구현된다. 시스템(1100)은 버스(1104) 또는 다른 상호 연결 통신 메커니즘을 통해 통신 가능하게 결합된 적어도 하나의 프로세서(1101), 메모리(1102), 네트워크 인터페이스(I/F)(1106), 저장부(1110), 입/출력(I/O) 장치(1108)를 포함한다.
메모리(1102)는, 일부 실시예에서, 예컨대, 커널(1114), 사용자 공간(1116), 커널 및/또는 사용자 공간의 일부분, 및 그 컴포넌트들과 같은 프로세서(1101)에 의해 실행될 명령 및/또는 데이터를 저장하기 위해 버스(1104)에 결합된 랜덤 액세스 메모리(RAM) 및/또는 다른 동적 저장 장치 및/또는 읽기 전용 메모리(ROM) 및/또는 다른 정적 저장 장치를 포함한다. 또한 메모리(1102)는, 일부 실시예에서, 프로세서(1101)에 의해 실행될 명령의 실행 중에 임시 변수 또는 다른 중간 정보를 저장하기 위해 사용되기도 한다.
일부 실시예에서, 자기 디스크 또는 광학 디스크와 같은 저장 장치(1110)는 커널(1114), 사용자 공간(1116) 등의 데이터 및/또는 명령을 저장하기 위해 버스(1104)에 결합된다. I/O 장치(1108)는 시스템(1100)과의 사용자의 상호 작용을 가능케 하기 위해 입력 장치, 출력 장치 및/또는 조합된 입력/출력 장치를 포함한다. 입력 장치는 정보와 명령을 프로세서(1101)에 전달하기 위해 예컨대, 키보드, 키패드, 마우스, 트랙볼, 트랙패드, 및/또는 커서 방향 키를 포함한다. 출력 장치는 사용자에게 정보를 전달하기 위해 예컨대, 디스플레이, 프린터, 음성 합성기 등을 포함한다.
일부 실시예에서, 도 1 내지 도 7과 관련하여 설명된 툴 및/또는 엔진 및/또는 시스템의 하나 이상의 동작 및/또는 기능성이 이러한 동작 및/또는 기능성을 수행하기 위해 프로그램화된 프로세서(1101)에 의해 구현된다. 일부 실시예에서, 프로세서(1101)는 전문적으로 구성된 하드웨어(예, 하나 이상의 주문형 집적 회로(ASIC))로서 구성된다. 메모리(1102), I/F(1106), 저장 장치(1110), I/O 장치(1108), 하드웨어 성분(1118) 및 버스(1104) 중 하나 이상은 프로세서(1101)에 의한 처리를 위해 명령, 데이터, 설계 제약, 설계 규칙, 네트리스트, 레이아웃, 모델 및/또는 다른 파라미터를 수용하도록 작동 가능하다.
일부 실시예에서, 동작 및/또는 기능성은 비일시적 컴퓨터 판독 가능 기록 매체 내에 저장된 프로그램의 함수로서 구현된다. 적어도 하나의 실시예에서, 동작 및/또는 기능성은 메모리(1102) 내에 저장된 일련의 실행 가능한 명령과 같은 프로그램의 함수로서 구현된다. 적어도 하나의 실시예에서, 메모리(1102) 내에 저장된 명령은 도 1, 도 3, 도 5, 도 7, 도 8, 도 10과 관련하여 설명된 공정 흐름 중 적어도 하나를 실시하는 기능성을 포함한다. 비일시적 컴퓨터 판독 가능 기록 매체의 예는 한정되는 것은 아니지만 DVD와 같은 하나 광학 디스크, 하드 디스크와 같은 자기 디스크, ROM, RAM, 메모리 카드 등의 반도체 메모리 중 하나 이상의 것과 같은 외부/착탈가능형 및/또는 내부/내장형 저장 또는 메모리 유닛을 포함한다.
일부 실시예에서, IC 내의 네트의 길이 및/또는 다른 특성 또는 비용 함수에 따라 IC의 레이아웃 내로 에어 갭이 삽입된다. 결국, 에어 갭 삽입에 기인한 기생 정전 용량의 감소의 효과가 하나 이상의 실시예에서 최적화된다.
일부 실시예에서, 에어 갭이 삽입될 수 없는 영역 내의 에어 갭 커버리지를 증가시키기 위해 더미 네트가 IC의 레이아웃 내로 삽입된다. 일부 실시예에서, IC의 네트의 길이 및/또는 다른 특성 또는 비용 함수에 따라 더미 네트 및 에어 갭이 삽입된다. 결국, 에어 갭 삽입에 기인한 기생 정전 용량의 감소의 효과가 하나 이상의 실시예에서 최적화된다.
일부 실시예에서, 레이아웃 내로 에어 갭이 실제로 삽입되기 이전에도 APR 단계에서 에어 갭을 고려하여 RC 추정이 수행된다. 결국, APR 단계는 에어 갭 삽입과 관련된 성능 이익을 최대화하거나 적어도 증가시키는 후속 에어 갭 삽입을 위해 최적화된 레이아웃을 출력한다.
일부 실시예에서, IC의 중요 신호 경로에 대해 에어 갭을 고려하여 코너형 RC 추출이 수행되는 반면, 에어 갭을 고려하지 않은 RC 추출은 IC의 덜 중요한 다른 신호 경로에 대해 수행된다. 결국, 코너 케이스를 커버하는 것에 의해 설계 소요 시간이 감소되는 한편 정확성이 보장된다.
이상의 설명은 당업자가 본 발명의 여러 측면들을 잘 이해할 수 있도록 여러 실시예의 특징부들의 개요를 설명한 것이다. 당업자들은 자신들이 여기 도입된 실시예와 동일한 목적을 수행하거나 및/또는 동일한 장점을 달성하기 위해 다른 공정 또는 구조를 설계 또는 수정하기 위한 기초로서 본 발명을 용이하게 이용할 수 있음을 알아야 한다. 또한, 당업자들은 등가의 구성이 본 발명의 취지 및 범위를 벗어나지 않으며 그리고 본 발명의 취지 및 범위를 벗어나지 않고 다양한 변화, 대체 및 변경을 이룰 수 있음을 알아야 한다.

Claims (10)

  1. 적어도 부분적으로 프로세서에 의해 수행되는 방법으로서,
    에어 갭 삽입 공정을 수행하는 단계로서, 상기 에어 갭 삽입 공정은,
    집적 회로의 레이아웃의 복수의 네트(net)들을 순서대로 분류하는 단계와,
    상기 복수의 네트들의 분류된 순서에 따라, 상기 복수의 네트들에 인접하게 에어 갭 패턴들을 삽입하는 단계
    를 포함한 것인, 상기 에어 갭 삽입 공정을 수행하는 단계와,
    상기 집적 회로의 수정된 레이아웃을 생성하는 단계
    를 포함하며, 상기 수정된 레이아웃은 상기 복수의 네트들과 상기 삽입된 에어 갭 패턴들을 포함한 것인, 방법.
  2. 제1항에 있어서, 상기 분류에서, 상기 복수의 네트들은,
    상기 복수의 네트들의 길이, 또는
    상기 복수의 네트들 중 인접하는 네트들의 투영(projection) 길이
    중 적어도 하나에 기초하여 분류되며, 상기 인접한 네트들은 대응하는 투영 길이에 걸쳐 서로를 따라 연장하는 것인, 방법.
  3. 제1항에 있어서, 상기 분류에서, 상기 복수의 네트들은,
    Figure pat00007
    또는
    Figure pat00008

    중 적어도 하나에 기초하여 분류되며, 여기서,
    i는 상기 복수의 네트들 중 i번째 네트를 나타내고,
    N은 상기 복수의 네트들 중 상기 i번째 네트에 인접한 네트들의 개수이고,
    j는 상기 i번째 네트에 인접한 N개의 네트들 중 j번째 네트를 나타내고,
    Proj_Length(j)는 상기 i번째 네트와 상기 j번째 네트가 서로를 따라 연장하는 투영 길이이고,
    Length(i)는 상기 i번째 네트의 길이인 것인, 방법.
  4. 제1항에 있어서, 상기 에어 갭 삽입 공정은,
    상기 복수의 네트들 중의 네트에 인접하게 적어도 하나의 에어 갭 패턴을 삽입한 후, 삽입된 에어 갭 패턴들이 제약사항을 만족시키는지 여부를 결정하는 단계와,
    상기 삽입된 에어 갭 패턴들이 상기 제약사항을 만족시키지 않는다는 결정에 응답하여,
    삽입된 적어도 하나의 에어 갭 패턴을 제거하는 단계와,
    상기 수정된 레이아웃을 생성하는 단계로 진행하는 단계와,
    상기 삽입된 에어 갭 패턴들이 상기 제약사항을 만족시킨다는 결정에 응답하여,
    상시 분류된 순서에 따라 상기 복수의 네트들 중 다음번째의 네트에 인접하게 적어도 하나의 추가적인 에어 갭 패턴을 삽입하는 단계와,
    상기 결정하는 단계로 복귀하는 단계
    를 더 포함하는 것인, 방법.
  5. 제1항에 있어서,
    상기 복수의 네트들은 신호 네트들과 적어도 하나의 더미 네트를 포함하며,
    상기 방법은, 상기 에어 갭 삽입 공정 이전에, 상기 신호 네트들 중 적어도 하나의 신호 네트에 인접하게 상기 적어도 하나의 더미 네트를 삽입하는 단계
    를 더 포함하는, 방법.
  6. 제1항에 있어서,
    상기 집적 회로가 타이밍 사양을 만족시키는지 여부를 체크하는 단계와,
    상기 집적 회로가 상기 타이밍 사양을 만족시키지 않는다는 결정에 응답하여,
    상기 집적 회로 내의 불량 신호 경로를 식별하는 단계와,
    상기 불량 신호 경로 내에 포함된 네트들에 대해 상기 에어 갭 삽입 공정을 수행하는 단계
    를 더 포함하는, 방법.
  7. 적어도 하나의 프로세서를 포함하는 소자로서, 상기 프로세서는,
    더미 네트 및 에어 갭 삽입 공정으로서, 상기 더미 네트 및 에어 갭 삽입 공정은,
    집적 회로의 레이아웃의 복수의 네트들을 순서대로 분류하는 단계와,
    상기 복수의 네트들의 분류된 순서에 따라, 상기 복수의 네트들에 인접하게 더미 네트들과 에어 갭 패턴들을 삽입하는 단계
    를 포함한 것인, 상기 더미 네트 및 에어 갭 삽입 공정; 및
    상기 집적 회로의 수정된 레이아웃을 생성하는 단계
    를 수행하도록 구성되며, 상기 수정된 레이아웃은 상기 복수의 네트들, 상기 삽입된 더미 네트들, 및 상기 삽입된 에어 갭 패턴들을 포함한 것인, 소자.
  8. 제7항에 있어서, 상기 분류에서, 상기 복수의 네트들은,
    Length(i), 또는
    Figure pat00009

    중 적어도 하나에 기초하여 분류되며, 여기서,
    i는 상기 복수의 네트들 중 i번째 네트를 나타내고,
    Length(i)는 상기 i번째 네트의 길이이며,
    N은 상기 복수의 네트들 중 상기 i번째 네트에 인접한 네트들의 개수이고,
    j는 상기 i번째 네트에 인접한 N개의 네트들 중 j번째 네트를 나타내고,
    Proj_Length(j)는 상기 i번째 네트와 상기 j번째 네트가 서로를 따라 연장하는 투영 길이이고,
    Cair_gap은 상기 i번째 네트와 상기 j번째 네트 사이의 단위 결합 정전용량이고,
    P는 상기 i번째 네트에 인접하게 삽입가능한 더미 네트들의 개수이고,
    k는 상기 i번째 네트에 인접하게 삽입가능한 P개의 더미 네트들 중의 k번째 더미 네트를 나타내고,
    Dummy_Length(k)는 상기 k번째 더미 네트의 길이이며,
    Cdummy는 상기 k번째 더미 네트의 단위 결합 정전용량인 것인, 소자.
  9. 제7항에 있어서, 상기 분류에서, 상기 복수의 네트들은,
    Figure pat00010
    또는
    Figure pat00011

    중 적어도 하나에 기초하여 분류되며, 여기서,
    Figure pat00012
    이고,
    Figure pat00013
    이며,
    i는 상기 복수의 네트들 중 i번째 네트를 나타내고,
    Length(i)는 상기 i번째 네트의 길이이며,
    N은 상기 복수의 네트들 중 상기 i번째 네트에 인접한 네트들의 개수이고,
    j는 상기 i번째 네트에 인접한 N개의 네트들 중 j번째 네트를 나타내고,
    Proj_Length(j)는 상기 i번째 네트와 상기 j번째 네트가 서로를 따라 연장하는 투영 길이이고,
    Cair_gap은 상기 i번째 네트와 상기 j번째 네트 사이의 단위 결합 정전용량이고,
    P는 상기 i번째 네트에 인접하게 삽입가능한 더미 네트들의 개수이고,
    k는 상기 i번째 네트에 인접하게 삽입가능한 P개의 더미 네트들 중의 k번째 더미 네트를 나타내고,
    Dummy_Length(k)는 상기 k번째 더미 네트의 길이이며,
    Cdummy는 상기 k번째 더미 네트의 단위 결합 정전용량이며,
    Rdummy는 상기 k번째 더미 네트의 단위 저항인 것인, 소자.
  10. 비일시적 컴퓨터 판독가능 매체로서,
    적어도 하나의 프로세서에 의해 실행시, 상기 적어도 하나의 프로세서로 하여금,
    집적 회로의 복수의 네트들 중, 에어 갭 삽입을 위한 후보 네트들을 선택하는 단계와,
    대응하는 후보 네트들의 길이에 기초하여 상기 후보 네트들에 대한 다양한 스케일링 비율을 결정하는 단계와,
    상기 후보 네트들의 대응하는 스케일링 비율에 기초하여 상기 후보 네트들의 정전용량을 추정하는 단계와,
    상기 집적 회로의 레이아웃을 생성하기 위해 상기 후보 네트들의 상기 추정된 정전용량에 기초하여, 글로벌 라우팅, 트랙 할당, 또는 세부적인 라우팅 중 적어도 하나
    를 수행하게 하는 명령어들을 포함한 것인, 비일시적 컴퓨터 판독가능 매체.
KR1020150095243A 2014-11-26 2015-07-03 집적 회로 레이아웃 생성을 위한 방법, 소자 및 컴퓨터 프로그램 제품 KR101776385B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/555,191 2014-11-26
US14/555,191 US10140407B2 (en) 2014-11-26 2014-11-26 Method, device and computer program product for integrated circuit layout generation

Publications (2)

Publication Number Publication Date
KR20160063225A true KR20160063225A (ko) 2016-06-03
KR101776385B1 KR101776385B1 (ko) 2017-09-07

Family

ID=56010481

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150095243A KR101776385B1 (ko) 2014-11-26 2015-07-03 집적 회로 레이아웃 생성을 위한 방법, 소자 및 컴퓨터 프로그램 제품

Country Status (4)

Country Link
US (1) US10140407B2 (ko)
KR (1) KR101776385B1 (ko)
CN (1) CN105631087B (ko)
TW (1) TWI598758B (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9991249B2 (en) * 2016-02-11 2018-06-05 Samsung Electronics Co., Ltd. Integrated circuit and computer-implemented method of manufacturing the same
US10169507B2 (en) * 2016-11-29 2019-01-01 Taiwan Semiconductor Manufacturing Co., Ltd. Variation-aware circuit simulation
US10949595B2 (en) * 2017-06-22 2021-03-16 Semiconductor Energy Laboratory Co., Ltd. Layout design system and layout design method
US10846456B2 (en) * 2018-05-02 2020-11-24 Taiwan Semiconductor Manufacturing Company Ltd. Integrated circuit modeling methods and systems
KR102661963B1 (ko) 2018-09-28 2024-04-30 삼성전자주식회사 반도체 소자 및 반도체 소자 제조 방법
KR102611938B1 (ko) * 2018-12-04 2023-12-08 구글 엘엘씨 신경망을 사용한 통합 회로 플로어 플랜 생성
TWI713984B (zh) * 2019-01-28 2020-12-21 和碩聯合科技股份有限公司 計算導體阻抗的方法
TWI718486B (zh) * 2019-02-27 2021-02-11 瑞昱半導體股份有限公司 積體電路佈局設計方法
US11537773B2 (en) 2020-05-18 2022-12-27 Taiwan Semiconductor Manufacturing Company Ltd. Systems and methods for integrated circuit layout
DE102021106202A1 (de) 2020-05-18 2021-11-18 Taiwan Semiconductor Manufacturing Co., Ltd. Systeme und verfahren für integriertes schaltungslayout
CN113505554A (zh) * 2021-07-05 2021-10-15 广东工业大学 时效预校准方法及系统

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6728113B1 (en) 1993-06-24 2004-04-27 Polychip, Inc. Method and apparatus for non-conductively interconnecting integrated circuits
JP3481222B2 (ja) 2001-09-07 2003-12-22 松下電器産業株式会社 配線構造及びその設計方法
JP2004021766A (ja) * 2002-06-19 2004-01-22 Fujitsu Ltd 電子回路設計方法及びコンピュータプログラム
JP4284235B2 (ja) * 2004-06-07 2009-06-24 富士通株式会社 配線選択方法及び装置、配線選択プログラム及び配線選択プログラムを記録したコンピュータ読取可能な記録媒体、並びに、遅延改善方法
US7228514B2 (en) * 2005-01-21 2007-06-05 International Business Machines Corporation Method, system and computer program product for automatically estimating pin locations and interconnect parasitics of a circuit layout
US7703067B2 (en) 2006-03-31 2010-04-20 Synopsys, Inc. Range pattern definition of susceptibility of layout regions to fabrication issues
JP2008103610A (ja) 2006-10-20 2008-05-01 Matsushita Electric Ind Co Ltd 半導体集積回路の配線構造およびその設計方法と設計装置
JP2008130911A (ja) * 2006-11-22 2008-06-05 Matsushita Electric Ind Co Ltd 半導体集積回路設計方法およびプログラム、半導体集積回路設計支援方法およびプログラム、配線寄生容量算出方法およびプログラム
US7801717B2 (en) 2007-01-22 2010-09-21 Taiwan Semiconductor Manufacturing Company, Ltd Method for smart dummy insertion to reduce run time and dummy count
JP2008205283A (ja) 2007-02-21 2008-09-04 Matsushita Electric Ind Co Ltd 半導体集積回路装置の配線構造並びにその設計方法及び設計装置
KR100847844B1 (ko) * 2007-08-10 2008-07-23 주식회사 동부하이텍 반도체 소자의 더미 패턴 설계방법
US8826207B2 (en) 2007-09-17 2014-09-02 Taiwan Semiconductor Manufacturing Company, Ltd. Method of generating technology file for integrated circuit design tools
US8307321B2 (en) 2009-03-20 2012-11-06 Taiwan Semiconductor Manufacturing Company, Ltd. Method for dummy metal and dummy via insertion
US8456009B2 (en) 2010-02-18 2013-06-04 Taiwan Semiconductor Manufacturing Company, Ltd. Semiconductor structure having an air-gap region and a method of manufacturing the same
US8865497B2 (en) 2010-06-25 2014-10-21 International Business Machines Corporation Planar cavity MEMS and related structures, methods of manufacture and design structures
US8769451B2 (en) * 2012-07-12 2014-07-01 Taiwan Semiconductor Manufacturing Company, Ltd. Semiconductor device design method, system and computer program product

Also Published As

Publication number Publication date
US10140407B2 (en) 2018-11-27
TWI598758B (zh) 2017-09-11
TW201629815A (zh) 2016-08-16
US20160147928A1 (en) 2016-05-26
KR101776385B1 (ko) 2017-09-07
CN105631087B (zh) 2018-12-21
CN105631087A (zh) 2016-06-01

Similar Documents

Publication Publication Date Title
KR101776385B1 (ko) 집적 회로 레이아웃 생성을 위한 방법, 소자 및 컴퓨터 프로그램 제품
CN107066681B (zh) 集成电路和制造集成电路的计算机实现方法
KR102396699B1 (ko) 셀 레벨 레이아웃 의존성 응력 효과들을 사용하는 셀의 배치 및 라우팅
US8336002B2 (en) IC design flow enhancement with CMP simulation
Kahng et al. VLSI physical design: from graph partitioning to timing closure
US8230373B2 (en) ESD analysis device and ESD analysis program used for designing semiconductor device and method of designing semiconductor device
US8701055B1 (en) Macro cell based process design kit for advanced applications
US8745565B2 (en) Satisfying routing rules during circuit design
US10169515B2 (en) Layout modification method and system
US11853676B2 (en) Layout context-based cell timing characterization
US7739095B2 (en) Method for determining best and worst cases for interconnects in timing analysis
US8707230B1 (en) Method and system for semiconductor simulation
US20100270671A1 (en) Manipulating fill patterns during routing
US10796060B2 (en) Method and system for pin layout
WO2011094031A2 (en) Zone-based leakage power optimization
US20150089465A1 (en) Separation and minimum wire length constrained maze routing method and system
US9659133B2 (en) Method, system and computer program product for generating layout for semiconductor device
US10346579B2 (en) Interactive routing of connections in circuit using auto welding and auto cloning
US20070266360A1 (en) Metal Thickness Simulation for Improving RC Extraction Accuracy
KR20170094744A (ko) 집적 회로 및 상기 집적 회로의 제조를 위한 컴퓨터 구현 방법
JP2009026045A (ja) 半導体集積回路のレイアウト作成装置および半導体集積回路の製造方法
Lienig et al. Steps in Physical Design: From Netlist Generation to Layout Post Processing
US10509888B1 (en) System and method for forming integrated device
US10534889B2 (en) Determining ECO aggressor nets during incremental extraction

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant