KR20150059128A - 핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법 및 이 방법을 실행하기 위한 시스템 - Google Patents
핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법 및 이 방법을 실행하기 위한 시스템 Download PDFInfo
- Publication number
- KR20150059128A KR20150059128A KR1020140163554A KR20140163554A KR20150059128A KR 20150059128 A KR20150059128 A KR 20150059128A KR 1020140163554 A KR1020140163554 A KR 1020140163554A KR 20140163554 A KR20140163554 A KR 20140163554A KR 20150059128 A KR20150059128 A KR 20150059128A
- Authority
- KR
- South Korea
- Prior art keywords
- layout
- finfet
- design
- circuit diagram
- circuit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 103
- 230000005669 field effect Effects 0.000 title claims abstract description 10
- 238000013461 design Methods 0.000 claims abstract description 165
- 238000004088 simulation Methods 0.000 claims abstract description 93
- 238000010586 diagram Methods 0.000 claims description 86
- 230000003071 parasitic effect Effects 0.000 claims description 34
- 238000000605 extraction Methods 0.000 claims description 29
- 210000004457 myocytus nodalis Anatomy 0.000 claims description 25
- 230000008569 process Effects 0.000 claims description 10
- 230000000694 effects Effects 0.000 claims description 8
- 210000004027 cell Anatomy 0.000 claims description 3
- 238000009792 diffusion process Methods 0.000 claims description 2
- 229910021420 polycrystalline silicon Inorganic materials 0.000 claims description 2
- 229920005591 polysilicon Polymers 0.000 claims description 2
- 230000008878 coupling Effects 0.000 claims 1
- 238000010168 coupling process Methods 0.000 claims 1
- 238000005859 coupling reaction Methods 0.000 claims 1
- 238000012876 topography Methods 0.000 claims 1
- 238000004519 manufacturing process Methods 0.000 description 12
- 238000013507 mapping Methods 0.000 description 6
- 239000003990 capacitor Substances 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L29/00—Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
- H01L29/66—Types of semiconductor device ; Multistep manufacturing processes therefor
- H01L29/68—Types of semiconductor device ; Multistep manufacturing processes therefor controllable by only the electric current supplied, or only the electric potential applied, to an electrode which does not carry the current to be rectified, amplified or switched
- H01L29/76—Unipolar devices, e.g. field effect transistors
- H01L29/772—Field effect transistors
- H01L29/78—Field effect transistors with field effect produced by an insulated gate
- H01L29/785—Field effect transistors with field effect produced by an insulated gate having a channel with a horizontal current flow in a vertical sidewall of a semiconductor body, e.g. FinFET, MuGFET
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L27/00—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
- H01L27/02—Devices 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/0203—Particular design considerations for integrated circuits
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L29/00—Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
- H01L29/02—Semiconductor bodies ; Multistep manufacturing processes therefor
- H01L29/06—Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions
- H01L29/0603—Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions characterised by particular constructional design considerations, e.g. for preventing surface leakage, for controlling electric field concentration or for internal isolations regions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Engineering (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Ceramic Engineering (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법은, 프로세서를 이용하여 성능 상세에 기초한 제1 회로 얼개도 설계를 설계하는 단계를 포함하고, 상기 제1 회로 얼개도 설계에는 인공 요소가 없고, 상기 인공 요소는 FinFET 기반 회로의 전기 성능을 시뮬레이팅하도록 사용된다. 상기 방법은 프로세스를 이용하여 인공 요소를 고려한 제2 회로 얼개도 설계를 형성하도록 제1 회로 얼개도 설계 내의 적어도 하나의 디바이스를 수정하는 단계를 더 포함한다. 방법은 상기 제2 회로 얼개도를 이용하고 상기 인공 요소를 고려하는 프리-레이아웃 시뮬레이션을 수행하는 단계를 더 포함한다. 방법은 레이아웃을 발생시키는 단계로서, 상기 레이아웃은 인공 요소를 고려하지 않는, 단계, 및 포스트-레이아웃 시뮬레이션을 수행하는 단계로서, 상기 포스트-레이아웃 시뮬레이션은 인공 요소를 고려하지 않는, 단계를 더 포함한다.
Description
본 발명은 핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법 및 이 방법을 실행하기 위한 시스템에 관한 것이다.
회로 설계자들은 고객으로부터 회로 성능 요건을 수신하고 성능 요건을 만족시킬 수 있는 회로를 설계한다. 회로는 설계된 회로의 성능을 시뮬레이팅하는 데에 회로 설계자를 돕는 컴퓨터 프로그램을 이용하여 설계된다.
회로의 설계 중에, 회로의 성능을 보다 정확하게 예측하기 위해 인접한 디바이스들과 도전성 요소들 간에 저항 및 정전 용량이 고려된다. 노드 크기가 감소함에 따라, 인접한 디바이스들과 도전성 요소들 간의 간격이 또한 감소되고, 이로 인해 회로의 성능에 관한 저항 및 정전 용량의 영향이 증가된다.
핀 전계 효과 트랜지스터(FinFET; fin field effect transistor)를 기초로 한 회로의 경우, 회로 설계자는 2개의 별개의 얼개도를 만든다. 하나의 얼개도는 실제 회로 설계의 부분이 아닌 인공 요소를 포함한다. 이들 인공 요소는 인접한 디바이스들과 연결부들 간에 저항 및 정전 용량을 처리하는 데에 일조하도록 사용된다. 다른 얼개도는 인공 요소를 포함하지 않고 회로 내에 디바이스를 배치하는 데에 일조하도록 사용된다. 2개의 얼개도는 얼개도들 간의 차이를 제거하고 성능 요건을 만족시키기 위해 양쪽 얼개도를 수정하는 것을 포함하는 반복 프로세스를 이용하여 개선된다.
본 발명에 의한 핀 전계 효과 트랜지스터(FinFET: fin field effect transistor) 기반 회로를 설계하는 방법은, 프로세서를 이용하여 성능 상세에 기초한 제1 회로 얼개도 설계를 설계하는 단계로서, 상기 제1 회로 얼개도 설계에는 FinFET 기반 회로의 전기 성능을 시뮬레이팅하도록 사용되는 인공 요소들이 없는 것인, 상기 제1 회로 얼개도 설계를 설계하는 단계; 프로세스를 이용하여 상기 인공 요소들을 고려한 제2 회로 얼개도 설계를 형성하도록 상기 제1 회로 얼개도 설계 내의 적어도 하나의 디바이스를 수정하는 단계; 상기 제2 회로 얼개도를 이용하고 상기 인공 요소들을 고려하는 프리-레이아웃 시뮬레이션을 수행하는 단계; 상기 인공 요소들을 고려하지 않는 레이아웃을 발생시키는 단계; 및 상기 인공 요소들을 고려하지 않는 포스트-레이아웃 시뮬레이션을 수행하는 단계를 포함한다.
본 발명에 의한 다른 핀 전계 효과 트랜지스터(FinFET: fin field effect transistor) 기반 회로를 설계하는 방법은, 프로세서를 이용하여 성능 상세(performance specification)에 기초한 제1 회로 얼개도 설계(circuit schematic design)를 설계하는 단계로서, 상기 제1 회로 얼개도 설계에는 FinFET 기반 회로의 전기 성능(electrical performance)을 시뮬레이팅하도록 사용되는 인공 요소(artificial element)들이 없는 것인, 상기 제1 회로 얼개도 설계를 설계하는 단계; 상기 인공 요소들을 포함하는 제2 회로 얼개도 설계를 형성하도록 매크로 FinFET 라이브러리를 이용하여 상기 제1 회로 얼개도 설계를 수정하는 단계로서, 상기 제2 회로 얼개도 설계는 기생 모드와, 상기 기생 모드와 상이한 레이아웃 모드 사이에서 전환될 수 있고, 상기 매크로 FinFET 라이브러리는 상기 기생 모드와 관련된 제1 파라미터 셀(P셀) 심볼, 상기 레이아웃 모드와 관련된 제2 P셀 심볼, 상기 기생 모드와 관련된 제1 P셀 얼개도, 상기 레이아웃 모드와 관련된 제2 P셀 얼개도, 및 저항 정전 용량(RC; resistance capacitance) 등가 방정식들을 포함하는 것인, 상기 제1 회로 얼개도 설계를 수정하는 단계; 상기 기생 모드에서의 상기 제2 회로 얼개도 설계와 RC 등가 방정식들을 이용하여 프리-레이아웃 시뮬레이션을 수행하는 단계; 상기 레이아웃 모드에서의 상기 제2 회로 얼개도 설계를 이용하여 레이아웃을 발생시키는 단계; 및 상기 레이아웃 모드에서의 상기 제2 회로 얼개도 설계를 이용하여 포스트-레이아웃 시뮬레이션을 수행하는 단계를 포함한다.
본 발명에 의한 핀 전계 효과 트랜지스터(FinFET: fin field effect transistor) 기반 회로를 설계하는 시스템은, 프로세서; 및 상기 프로세서에 접속된 비일시적 컴퓨터 판독 가능 매체를 포함하고, 상기 비일시적 컴퓨터 판독 가능 매체는, 프로세서를 이용하여 성능 상세(performance specification)에 기초한 제1 회로 얼개도 설계(circuit schematic design)를 설계하는 명령어들로서, 상기 제1 회로 얼개도 설계에는 FinFET 기반 회로의 전기 성능(electrical performance)을 시뮬레이팅하도록 사용되는 인공 요소(artificial element)들이 없는 것인, 상기 제1 회로 얼개도 설계를 설계하는 명령어들; 프로세스를 이용하여 상기 인공 요소들을 고려한 제2 회로 얼개도 설계를 형성하도록 상기 제1 회로 얼개도 설계 내의 적어도 하나의 디바이스를 수정하는 명령어들; 상기 제2 회로 얼개도를 이용하고 상기 인공 요소들을 고려하는 프리-레이아웃 시뮬레이션을 수행하는 명령어들; 상기 인공 요소들을 고려하지 않는 레이아웃을 발생시키는 명령어들; 및 상기 인공 요소들을 고려하지 않는 포스트-레이아웃 시뮬레이션을 수행하는 명령어들을 포함한다.
하나 이상의 실시예가 첨부 도면에 제한이 아니라 일례로서 예시되고, 도면에서 동일한 참조 부호를 갖는 요소는 도면 전체에 걸쳐서 동일한 요소를 나타낸다. 산업에 있어서의 표준적 실시에 따라, 다양한 특징부들은 실척으로 도시되지 않고 오직 예시를 위해서만 사용된다는 점을 강조한다. 사실상, 도면에서 다양한 특징부들의 치수는 논의의 명확도를 위해 임의로 증가 또는 감소될 수 있다. 본 개시의 도면은 다음을 포함한다:
도 1은 하나 이상의 실시예에 따른 핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법의 플로우 차트이다;
도 2는 하나 이상의 실시예에 따른 매크로 FinFET 라이브러리의 블럭도이다;
도 3a는 하나 이상의 실시예에 따른 n형 FinFET의 기생 모드에서의 개략도이다;
도 3b는 하나 이상의 실시예에 따른 n형 FinFET의 레이아웃 모드에서의 개략도이다;
도 4는 하나 이상의 실시예에 따른 FinFET 기반 회로를 설계하는 방법의 플로우 차트이다;
도 5는 하나 이상의 실시예에 따른 프로세스 설계 키트(PDK) 라이브러리와 매크로 FinFET 애플리케이션 프로그래밍 인터페이스(API)의 블럭도이다;
도 6은 하나 이상의 실시예에 따른 FinFET 기반 회로를 설계하는 방법의 플로우 차트이다; 그리고
도 7은 하나 이상의 실시예에 따른 FinFET 기반 회로를 설계하기 위한 범용 연산 디바이스의 블럭도이다.
도 1은 하나 이상의 실시예에 따른 핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법의 플로우 차트이다;
도 2는 하나 이상의 실시예에 따른 매크로 FinFET 라이브러리의 블럭도이다;
도 3a는 하나 이상의 실시예에 따른 n형 FinFET의 기생 모드에서의 개략도이다;
도 3b는 하나 이상의 실시예에 따른 n형 FinFET의 레이아웃 모드에서의 개략도이다;
도 4는 하나 이상의 실시예에 따른 FinFET 기반 회로를 설계하는 방법의 플로우 차트이다;
도 5는 하나 이상의 실시예에 따른 프로세스 설계 키트(PDK) 라이브러리와 매크로 FinFET 애플리케이션 프로그래밍 인터페이스(API)의 블럭도이다;
도 6은 하나 이상의 실시예에 따른 FinFET 기반 회로를 설계하는 방법의 플로우 차트이다; 그리고
도 7은 하나 이상의 실시예에 따른 FinFET 기반 회로를 설계하기 위한 범용 연산 디바이스의 블럭도이다.
이하의 개시는 본 발명의 상이한 특징부들을 실시하기 위한 많은 상이한 실시예, 즉 예를 제공한다. 구성요소 및 구조의 특정한 예는 본 개시를 간소화하도록 아래에서 설명된다. 이들은 예일 뿐이고 한정하도록 의도되지 않는다.
도 1은 하나 이상의 실시예에 따른 핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법(100)의 플로우 차트이다. 방법(100)은 인공 요소를 포함하지 않는 얼개도 설계가 설계되는 작동(102)에서 시작한다. 회로 설계자는 고객으로부터 성능 상세를 수신한다. 회로 설계자는 성능 상세를 만족시키도록 얼개도 설계를 생성한다. 얼개도 설계는 얼개도 설계에서 인접한 디바이스들 및 도전성 요소들의 영향을 시뮬레이팅하도록 사용되는 인공 요소를 초기에 포함하지 않는다. 적어도 몇몇 실시에에서, 성능 상세라는 용어는 하나 이상의 성능 상세를 포함하도록 의도된다.
FinFET 기반 회로에서 각각의 FinFET 디바이스들과 연결부들 내의 요소들의 저항 및 정전 용량 효과를 처리하기 위하여 매크로 FinFET 라이브러리(104)가 작동(102)으로부터의 얼개도 설계에 결합된다. 매크로 FinFET 라이브러리(104)는 비일시적 컴퓨터 판독 가능 매체에 저장된다. 매크로 FinFET 라이브러리(104)는 프리-레이아웃 시뮬레이션과 레이아웃 대 얼개도(LVS; layout versus schematic) 시뮬레이션 모두를 위한 파라미터 셀(p셀) 심볼을 포함한다. 매크로 FinFET 라이브러리(104)는 또한 각각의 FinFET 디바이스를 위한 컴포넌트 설명 포맷(CDF; component description format)을 포함한다. 매크로 FinFET 라이브러리(104)는 RC 빈 값(RC bin value)이라 불리는, 저항 및 정전 용량에 대해 시뮬레이팅된 값을 포함한다. 몇몇 실시예에서, RC 빈 값은 상업적인 RC 추출 툴을 이용하여 결정된다. FinFET 디바이스 및 결과적인 RC 빈 값에 대한 수정을 기초로 하여, FinFET 디바이스의 저항 및 정전 용량 효과를 시뮬레이팅하도록 인공 요소가 설계된다. 매크로 FinFET 라이브러리(104)는 특정한 FinFET 디바이스 설계, 즉 특정한 치수, 다수의 핑거, 및 기타 적절한 인공 요소와 결합하여 이들 인공 요소를 저장하도록 구성된다. 몇몇 실시예에서, 인공 요소는 폴리실리콘 산화물 확산 에지(PODE; polysilicon oxide diffusion edge) 디바이스, MEOL(middle end of line) 연결부, BEOL(back end of line) 연결부, 또는 RC 효과를 FinFET 디바이스 내에서 시뮬레이팅하는 다른 적절한 RC 디바이스를 포함한다.
작동(106)에서, 매크로 FinFET 파라미터를 포함하는 얼개도 설계가 생성된다. 매크로 FinFET 라이브러리(104)를 작동(102)으로부터의 얼개도 설계와 결합함으로써, 얼개도 내의 FinFET 디바이스가 FinFET 디바이스의 RC 성능을 시뮬레이팅하는 데에 일조하는 인공 요소를 포함하도록 수정된다. 매크로 FinFET 파라미터는 인공 요소를 포함하기 때문에 작동(102)으로부터의 얼개도 설계와 비교하여 회로의 성능을 보다 정확하게 시뮬레이팅할 수 있다.
프리-레이아웃 시뮬레이션이 작동(108)에서 수행된다. 프리-레이아웃 시뮬레이션은 얼개도 설계의 성능을 고객으로부터의 성능 상세와 비교하도록 사용되는 전기 특성 또는 기능 특성을 발생시킨다. 몇몇 실시예에서, 프리-레이아웃 시뮬레이션은 얼개도 설계와 성능 상세 간에 I-V 곡선 또는 전류 게인을 비교하는 것을 포함한다. 몇몇 실시예에서, 프리-레이아웃 시뮬레이션은 시뮬레이팅된 입력값에 응답하여 얼개도 설계의 출력값을 시뮬레이팅하는 것을 포함한다. 이어서, 출력값은 성능 상세에 대해 비교된다.
프리-레이아웃 시뮬레이션에 후속하여, 프리-레이아웃 시뮬레이션의 결과가 성능 상세를 만족시키면, 방법(100)은 작동(110)으로 계속된다. 프리-레이아웃 시뮬레이션의 결과가 성능 상세를 만족시키지 못하면, 방법(100)은 작동(106)으로 복귀되고 얼개도 설계가 변경된다.
작동(110)에서, 레이아웃이 발생된다. 레이아웃은 얼개도 설계에서 디바이스들과 연결부들의 물리적 배치이다. 레이아웃은 프리-레이아웃 시뮬레이션에서 RC 성능을 시뮬레이팅하도록 사용되는 인공 요소를 포함하지 않는다. 몇몇 실시예에서, 레이아웃은 그래픽 데이터베이스 시스템(GDS; graphic database system)을 이용하여 발생된다. 몇몇 실시예에서, 레이아웃은 다수의 층을 포함한다. 몇몇 실시예에서, 레이아웃의 발생은 웨이퍼를 패터닝하여 회로를 형성하도록 사용되는 마스크를 설계하는 것을 포함한다. 몇몇 실시예에서, 마스크의 갯수는 레이아웃에서 층들의 갯수와 동일하다. 몇몇 실시예에서, 레이아웃의 적어도 하나의 층을 형성하도록 1개보다 많은 마스크가 사용된다. 몇몇 실시예에서, 레이아웃은 비일시적 컴퓨터 판독 가능 매체에 저장된다. 몇몇 실시예에서, 레이아웃은 CADENCE DESIGN SYSTEMS사로부터 입수 가능한 VIRTUOSO® 등의 툴, 또는 다른 적절한 레이아웃 발생 툴을 이용하여 발생된다. 몇몇 실시예에서, 레이아웃은 얼개도 설계를 기초로 하여 생성되는 넷리스트(netlist)에 기초하여 발생된다.
몇몇 실시예에서, 넷리스트는 얼개도 설계에서 다양한 디바이스 및 연결부의 재료와 치수를 포함한다. 예컨대, 트랜지스터를 설명하는 넷리스트는 게이트 폭, 게이트 길이, 트랜지스터 단자들의 위치, 핑거의 갯수, 또는 트랜지스터를 설명하는 데에 사용되는 다른 적절한 파라미터를 포함한다.
몇몇 실시예에서, 레이아웃의 발생 중에 설계 규칙 점검(DRC; design rule check)이 수행된다. DRC는 레이아웃에서 특징부들 간에 충분한 간격을 유지하도록 수행되어, 레이아웃이 제조 프로세스 중에 정밀하게 형성될 수 있다. 몇몇 실시예에서, 레이아웃을 발생시키도록 사용된 동일한 툴이 DRC를 수행하도록 사용된다. 몇몇 실시예에서, DRC는 레이아웃의 발생에 후속하여 별개의 툴에 의해 수행된다.
작동(112)에서, LVS 점검이 수행된다. LVS 점검은 레이아웃이 회로 설계자에 의해 설계된 회로를 정확하게 나타내는 것을 보장하는 데에 일조하도록 레이아웃을 얼개도 설계와 비교한다. LVS 점검은 얼개도 설계에서의 인공 요소를 처리하지 못한다. 몇몇 실시예에서, LVS 점검은 레이아웃 설계로부터 레이아웃 넷리스트를 추출하는 것을 포함한다. 추출된 레이아웃 넷리스트는 인공 요소를 포함하지 않는다. 몇몇 실시예에서, 추출된 레이아웃 넷리스트는 디바이스에 대응하는 노드, 예컨대 트랜지스터에 대한 게이트(G), 드레인(D), 소스(S) 및 벌크(B)를 포함한다. 몇몇 실시예에서, 추출된 레이아웃 넷리스트는 레이아웃이 얼개도 설계와 일치하는지를 결정하도록 얼개도 설계와 비교된다.
작동(114)에서, RC 추출이 수행된다. 몇몇 실시예에서, RC 추출은 레이아웃으로부터 전기 성능 정보를 추출한다. 몇몇 실시예에서, RC 추출은 추출된 레이아웃 넷리스트를 기초로 하여 수행된다. 몇몇 실시예에서, RC 추출은 추출된 정보를 다양한 디바이스 모델에 적용하여 작동(110)에서 발생된 레이아웃의 전기 특성을 결정한다. RC 추출은 액티브 디바이스 및 다양한 액티브 디바이스들을 함께 연결하도록 사용되는 상호 연결 구조체를 모두 처리한다. 몇몇 실시예에서, 레이아웃 기생 추출(LPE; layout parasitic extraction)이 RC 추출과 결합하여 수행된다. LPE는 넷리스트에 의존하는 대신에 레이아웃으로부터 액티브 디바이스에 관한 정보를 추출한다.
포스트-레이아웃 시뮬레이션이 작동(116)에서 수행된다. 포스트-레이아웃 시뮬레이션은 작동(110)의 레이아웃에서 회로의 성능을 결정하고 그 성능을 고객으로부터 수신한 성능 상세와 비교한다. 몇몇 실시예에서, 포스트-레이아웃 시뮬레이션은 SYNOPSYS사로부터 입수 가능한 HSPICE®; CADENCE DESIGN SYSTEMS사로부터 입수 가능한 SPECTRE®; 또는 다른 적절한 포스트-시뮬레이션 툴 등의 포스트-레이아웃 시뮬레이터를 이용하여 수행된다.
포스트-레이아웃 시뮬레이션이 레이아웃이 성능 상세를 만족시킨다고 결정하면, 레이아웃은 레이아웃을 생성하도록 사용되는 마스크의 제조를 시작하도록 제조 단계로 전달된다. 포스트-레이아웃 시뮬레이션이 레이아웃이 성능 상세를 만족시키지 못한다고 결정하면, 실패를 처리하여 성능 상세를 만족시키도록 레이아웃 또는 얼개도 설계 중 적어도 하나가 변경된다.
방법(100)을 이용하면, 매크로 FinFET 파라미터를 포함하지 않는 방법과 비교하여 FinFET 기반 회로의 설계 중에 시간과 자원을 절감하는 데에 도움이 된다. 2개의 별개의 얼개도 설계를 개발하는 대신에, 회로 설계자는 단일의 얼개도 설계를 개발하고 매크로 FinFET 라이브러리(104)가 회로의 RC 성능을 시뮬레이팅하는 데에 일조하는 인공 요소를 고려하기 위해 얼개도 설계를 수정하도록 이용된다. 매크로 FinFET 라이브러리(104)는 RC 추출을 용이하게 하도록 인공 요소를 포함하는 p셀 얼개도와 레이아웃 발생 및 평가를 위한 인공 요소가 없는 p셀 얼개도 간의 전환을 가능하게 한다. 상이한 p셀 얼개도들 간을 용이하게 전환하는 능력은 회로 설계자가 얼개도 설계를 기생 모드로 의도치않게 남겨 두는 것을 피하는 데에 일조한다. 포스트-레이아웃 시뮬레이션 중에 설계를 기생 모드로 남겨 두면, 인공 요소의 기생 RC 값을 두 번 고려하게 되고, 이로 인해 시뮬레이션의 정확도가 떨어진다.
도 2는 하나 이상의 실시예에 따른 매크로 FinFET 라이브러리(104)의 블럭도이다. 매크로 FinFET 라이브러리(104)는 비일시적 컴퓨터 판독 가능 매체에 저장된다. 매크로 FinFET 라이브러리(104)는 CDF(202), p셀 심볼(204), p셀 얼개도(206), RC 빈 값(208) 및 RC 등가 방정식(210)을 포함한다. 매크로 FinFET 라이브러리(104)는 n형 트랜지스터, p형 트랜지스터, 레지스터 또는 다른 디바이스 등의 다양한 FinFET 디바이스를 위한 파라미터를 포함한다.
CDF(202)는 각각의 FinFET 디바이스를 위한 구조체를 포함한다. 몇몇 실시예에서, 구조체는 인공 요소를 포함하는, 상속 PDK FinFET 디바이스와 매크로 FinFET 정보를 모두 포함한다.
P셀 심볼(204)은 기생 모드용 아이콘과 레이아웃 모드용 아이콘을 모두 포함한다. P셀 심볼(204)은 얼개도 설계가 기생 모드에 있는지 또는 레이아웃 모드에 있는지를 회로 설계자가 용이하게 확인하도록 할 수 있다.
P셀 얼개도(206)는 기생 모드와 레이아웃 모드 모두를 위한 얼개도 설계를 포함한다. 기생 모드 P셀 얼개도(206)는 PODE, MEOL, BEOL 또는 다른 기생 요소 등의 인공 요소를 포함한다. 레이아웃 모드의 P셀 얼개도(206)에는 인공 요소가 없다.
RC 빈 값(208)은 FinFET 디바이스의 상이한 구성과 결합하는 시뮬레이션 툴을 이용하여 결정된다. 상이한 구성은 FinFET 디바이스를 위한 상이한 치수 또는 상이한 재료를 포함한다. 이들 상이한 구성은 FinFET 디바이스에 상이한 기생 효과를 일으킨다. 이들 상이한 기생 효과는 방법(100)에 사용하도록 매크로 FinFET 라이브러리(104)에 저장된다.
RC 등가 방정식(210)은 RC 빈 값(208)을 기초로 하여 결정된다. RC 등가 방정식(210)은 FinFET 디바이스의 기생 성능을 결정하도록 사용된다. 몇몇 실시예에서, RC 등가 방정식(210)은 선형이다. 몇몇 실시예에서, RC 등가 방정식(210)은 비선형이다. 몇몇 실시예에서, RC 등가 방정식(210)은 상이한 RC 빈 값(208) 사이에 삽입하도록 사용된다.
도 3a는 하나 이상의 실시예에 따른 n형 FinFET(300)의 기생 모드에서의 개략도이다. FinFET(300)는 기생 모드에서의 P셀 얼개도이다. FinFET(300)는 n형 트랜지스터(302)를 포함한다. 각각의 소스 단자와 드레인 단자 근처에 PODE(304)가 배치된다. FinFET(300)의 MEOL 및 BEOL 연결부를 나타내는 레지스터와 캐패시터(306)가 트랜지스터(302)를 둘러싼다.
PODE(304)는 더미 게이트 구조체와 유사하고 작동 중에 트랜지스터(302)의 실제 성능을 시뮬레이팅하는 데에 일조하도록 사용된다. FinFET(300)는 2개의 PODE(304)를 포함한다. 몇몇 실시예에서, 2개보다 많거나 적은 PODE(304)가 FinFET(300)에 포함된다. PODE(304)는 실제로 트랜지스터(302)의 부품이 아니지만, 트랜지스터의 실제 성능을 시뮬레이팅하도록 사용된다.
레지스터와 캐패시터(306)는 FinFET(300)의 연결부를 통해 전파되는 신호의 성능을 반영한다. 레지스터와 캐패시터(306)는 FinFET(300)의 연결부에 형성되지 않지만, FinFET의 연결부를 통해 전파되는 신호의 실제 전파 속도, 전압 레벨 및 전류 레벨을 시뮬레이팅하는 데에 일조한다.
도 3b는 하나 이상의 실시예에 따른 n형 FinFET(300')의 레이아웃 모드에서의 개략도이다. FinFET(300')는 레이아웃 모드에서의 P셀 얼개도이다. FinFET(300')는 게이트 단자(G), 소스 단자(S), 드레인 단자(D), 및 벌크 단자(B)를 갖는 트랜지스터(302')를 포함한다. FinFET(300; 도 3a)와 비교하여, FinFET(300')는 PODE(304) 또는 레지스터와 캐패시터(306)를 포함하지 않는다. FinFET(300')는 트랜지스터의 전기 성능이 아니라 트랜지스터(302')의 위치 설정 및 연결부를 결정하도록 사용된다. 따라서, FinFET(300')는 트랜지스터(302')의 제조 중에 실제로 형성되는 요소들만을 포함한다.
방법(100; 도 1)은 전기 성능 시뮬레이션과 레이아웃 발생을 모두 가능하게 하도록 회로 설계자가 FinFET(300; 도 3a)과 FinFET(300'; 도 3b) 사이를 용이하게 전환하게 한다. 상이한 P셀 얼개도들 사이를 용이하게 전환하는 능력은 회로 설계 중에 시간 및 자원을 절감하도록 단일의 얼개도 설계를 사용할 수 있게 한다. P셀 얼개도들 사이를 용이하게 전환하는 능력은 또한 고객에 의해 제공되는 성능 상세를 만족시키기 위해 회로 설계의 개선 중에 사용되는 반복 횟수를 감소시키는 데에 일조한다.
도 4는 하나 이상의 실시예에 따른 FinFET 기반 회로를 설계하는 방법(400)의 플로우 차트이다. 방법(400)은 매크로 FinFET 디바이스를 포함하지 않는 얼개도 설계가 설계되는 작동(402)에서 시작한다. 회로 설계자는 고객으로부터 성능 상세를 수신한다. 회로 설계자는 성능 상세를 만족시키도록 얼개도 설계를 생성한다. 얼개도 설계는 얼개도 설계에서 인접한 디바이스들 및 도전성 요소들의 영향을 시뮬레이팅하도록 사용되는 인공 요소를 초기에 포함하지 않는다.
FinFET 기반 회로에서 각각의 FinFET 디바이스 내의 요소들의 저항 및 정전 용량 효과를 처리하기 위하여 PDK 라이브러리(404)가 매크로 애플리케이션 프로그래밍 인터페이스(API)(406)에 의해 플러깅되고 얼개도 설계와 결합된다. PDK 라이브러리(404)는 비일시적 컴퓨터 판독 가능 매체에 저장된다. PDK 라이브러리(404)는 각각의 FinFET 디바이스의 네이티브 구조체와 연결부를 포함한다. PDK 라이브러리(404)는 또한 넷리스트 래퍼(netlist wrapper)를 포함한다. 넷리스트 래퍼는 고유 PDK 넷리스트 절차 또는 매크로 FinFET 넷리스트 절차가 방법(400)의 각 스테이지에서 FinFET 디바이스를 평가하도록 사용되는지를 제어하도록 사용된다. CDF는 또한 PDK 라이브러리(404)의 부분이다. CDF는 매크로 FinFET API(406)로부터 제공되는 수정을 기초로 하여 조절될 수 있다. 몇몇 실시예에서, PDK 라이브러리(404)는 외부 소스로부터 제공되고 매크로 FinFET API(406)에 의해 플러깅될 수 있다.
매크로 FinFET API(406)는 비일시적 컴퓨터 판독 가능 매체에 저장된다. 매크로 FinFET API(406)에서의 넷리스트 절차는 MEOL 및 BEOL 연결부의 PODE 및 레지스터와 캐패시터 요소와 같은 인공 요소를 포함하기 위해 PDK 라이브러리(404)로부터의 넷리스트 래퍼에 플러깅하도록 사용된다. RC 빈 값과 RC 등가 방정식이 또한 매크로 FinFET API(406)에 저장된다. 매크로 FinFET API(406)는 또한 다양한 FinFET 디바이스를 위한 모델 카드를 포함한다. 모델 카드는 FinFET 디바이스에 전기적으로 커플링되는 노드에 관한 정보를 포함한다. 몇몇 실시예에서, 모델 카드는 또한 FinFET 디바이스에 관한 기생 정보를 포함한다. 몇몇 실시예에서, 매크로 FinFET API(406)는 외부 소스로부터 제공되는 PDK 라이브러리(404)에 플러깅할 수 있다.
이와 달리, 매크로 FinFET 라이브러리(104; 도 1)의 경우, PDK 라이브러리(404)와 매크로 FinFET API(406)의 조합이 PDK 라이브러리에 저장된 넷리스트 래퍼에 플러깅하는 것과 관련된다. PDK 라이브러리(404)의 넷리스트 래퍼에 플러깅함으로써, PDK 라이브러리(404)의 넷리스트 래퍼는 인공 요소와, 회로의 제조 중에 실제로 형성되는 요소만을 포함하는 고유 PDK 넷리스트를 모두 포함한다. PDK 라이브러리(404)의 넷리스트 래퍼에 플러깅하면, PDK 라이브러리에 저장된 RC 맵핑 테이블이 업데이트된다. 업데이트된 RC 맵핑 테이블은 회로 설계자가 기생 모드와 고유 PDK 넷리스트 절차 모드 사이를 전환할 필요 없이 정확한 RC 추출과 FinFET 디바이스의 시뮬레이션을 가능하게 한다.
작동(408)에서, 매크로 FinFET 파라미터를 포함하는 얼개도 설계가 생성된다. PDK 라이브러리(404)와 매크로 FinFET API(406)를 작동(402)으로부터의 얼개도 설계와 결합함으로써, 얼개도 내의 FinFET 디바이스가 FinFET 디바이스의 RC 성능을 시뮬레이팅하는 데에 일조하는 인공 요소를 포함하도록 수정된다. 매크로 FinFET 파라미터는 인공 요소를 포함하기 때문에 작동(402)으로부터의 얼개도 설계와 비교하여 회로의 성능을 보다 정확하게 시뮬레이팅할 수 있다.
프리-레이아웃 시뮬레이션이 작동(410)에서 수행된다. 프리-레이아웃 시뮬레이션은 얼개도 설계의 성능을 고객으로부터의 성능 상세와 비교하도록 사용되는 전기 특성 또는 기능 특성을 발생시킨다. 몇몇 실시예에서, 프리-레이아웃 시뮬레이션은 얼개도 설계와 성능 상세 간에 I-V 곡선 또는 전류 게인을 비교하는 것을 포함한다. 몇몇 실시예에서, 프리-레이아웃 시뮬레이션은 시뮬레이팅된 입력값에 응답하여 얼개도 설계의 출력값을 시뮬레이팅하는 것을 포함한다. 이어서, 출력값은 성능 상세에 대해 비교된다. 몇몇 실시예에서, 프리-레이아웃 시뮬레이션은 PDK 라이브러리(404)로부터의 넷리스트 래퍼와 매크로 FinFET API(406)의 넷리스트 절차의 조합을 기초로 하여 수행된다.
프리-레이아웃 시뮬레이션에 후속하여, 프리-레이아웃 시뮬레이션의 결과가 성능 상세를 만족시키면, 방법(400)은 작동(412)으로 계속된다. 프리-레이아웃 시뮬레이션의 결과가 성능 상세를 만족시키지 못하면, 방법(400)은 작동(408)으로 복귀되고 얼개도 설계가 변경된다.
작동(412)에서, 레이아웃이 발생된다. 레이아웃은 얼개도 설계에서 디바이스들과 연결부들의 물리적 배치이다. 레이아웃은 프리-레이아웃 시뮬레이션에서 RC 성능을 시뮬레이팅하도록 사용되는 인공 요소를 포함하지 않는다. 몇몇 실시예에서, 레이아웃은 GDS를 이용하여 발생된다. 몇몇 실시예에서, 레이아웃은 다수의 층을 포함한다. 몇몇 실시예에서, 레이아웃의 발생은 웨이퍼를 패터닝하여 회로를 형성하도록 사용되는 마스크를 설계하는 것을 포함한다. 몇몇 실시예에서, 마스크의 갯수는 레이아웃에서 층들의 갯수와 동일하다. 몇몇 실시예에서, 레이아웃의 적어도 하나의 층을 형성하도록 1개보다 많은 마스크가 사용된다. 몇몇 실시예에서, 레이아웃은 비일시적 컴퓨터 판독 가능 매체에 저장된다. 몇몇 실시예에서, 레이아웃은 CADENCE DESIGN SYSTEMS사로부터 입수 가능한 VIRTUOSO® 등의 툴, 또는 다른 적절한 레이아웃 발생 툴을 이용하여 발생된다. 몇몇 실시예에서, 레이아웃은 매크로 FinFET API로부터의 넷리스트 절차를 수정하는 일 없이 PDK 라이브러리(404)로부터의 넷리스트 래퍼를 기초로 하여 발생된다.
몇몇 실시예에서, DRC가 레이아웃의 발생 중에 레이아웃에서 특징부들 간에 충분한 간격을 유지하도록 수행되어, 레이아웃이 제조 프로세스 중에 정밀하게 형성될 수 있다. 몇몇 실시예에서, 레이아웃을 발생시키도록 사용된 동일한 툴이 DRC를 수행하도록 사용된다. 몇몇 실시예에서, DRC는 레이아웃의 발생에 후속하여 별개의 툴에 의해 수행된다.
작동(414)에서, LVS 점검이 수행된다. LVS 점검은 레이아웃이 회로 설계자에 의해 설계된 회로를 정확하게 나타내는 것을 보장하는 데에 일조하도록 레이아웃을 얼개도 설계와 비교한다. LVS 점검은 얼개도 설계에서의 인공 요소를 처리하지 못한다. 몇몇 실시예에서, LVS 점검은 매크로 FinFET API(406)로부터의 넷리스트 절차가 없는 PDK 라이브러리(404)로부터의 넷리스트 래퍼를 포함한다. 몇몇 실시예에서, 넷리스트 래퍼는 레이아웃이 얼개도 설계와 일치하는지를 결정하도록 얼개도 설계와 비교된다.
작동(416)에서, RC 추출이 수행된다. 몇몇 실시예에서, RC 추출은 레이아웃으로부터 전기 성능 정보를 추출한다. 몇몇 실시예에서, RC 추출은 넷리스트 래퍼를 기초로 하여 수행된다. 몇몇 실시예에서, RC 추출은 RC 추출 중에 고유 PDK 디바이스가 정확한 RC 정보에 의해 애너테이션되는 것을 보장하는 데에 일조하도록 RC 맵핑 테이블(504; 도 5a)을 기초로 하여 수행된다. 몇몇 실시예에서, RC 추출은 추출된 정보를 다양한 디바이스 모델에 적용하여 작동(412)에서 발생된 레이아웃의 전기 특성을 결정한다. RC 추출은 액티브 디바이스 및 다양한 액티브 디바이스들을 함께 연결하도록 사용되는 상호 연결 구조체를 모두 처리한다. 몇몇 실시예에서, LPE가 RC 추출과 결합하여 수행된다.
포스트-레이아웃 시뮬레이션이 작동(418)에서 수행된다. 포스트-레이아웃 시뮬레이션은 작동(412)의 레이아웃에서 회로의 성능을 결정하고 그 성능을 고객으로부터 수신한 성능 상세와 비교한다. 몇몇 실시예에서, 포스트-레이아웃 시뮬레이션은 SYNOPSYS사로부터 입수 가능한 HSPICE®; CADENCE DESIGN SYSTEMS사로부터 입수 가능한 SPECTRE®; 또는 다른 적절한 포스트-시뮬레이션 툴 등의 포스트-레이아웃 시뮬레이터를 이용하여 수행된다.
포스트-레이아웃 시뮬레이션이 레이아웃이 성능 상세를 만족시킨다고 결정하면, 레이아웃은 레이아웃을 생성하도록 사용되는 마스크의 제조를 시작하도록 제조 단계로 전달된다. 포스트-레이아웃 시뮬레이션이 레이아웃이 성능 상세를 만족시키지 못한다고 결정하면, 실패를 처리하여 성능 상세를 만족시키도록 레이아웃 또는 얼개도 설계 중 적어도 하나가 변경된다.
방법(100; 도 1)과 유사하게, 방법(400)은 매크로 FinFET 파라미터를 포함하지 않는 방법과 비교하여 FinFET 기반 회로의 설계 중에 시간과 자원을 절감하는 데에 도움이 된다. 2개의 별개의 얼개도 설계를 개발하는 대신에, 회로 설계자는 단일의 얼개도를 개발하고 회로의 RC 성능을 시뮬레이팅하는 데에 일조하기 위해 인공 요소를 추가하도록 PDK 라이브러리(404)와 매크로 FinFET API(406)의 조합이 사용된다. PDK 라이브러리 넷리스트 래퍼(502; 도 5a)는 RC 추출을 용이하게 하도록 인공 요소를 포함하는 넷리스트와 고유 프리-레이아웃의 평가를 위한 인공 요소가 없는 넷리스트 간의 전환을 가능하게 한다. 방법(400)의 이점은, PDK 라이브러리(404) 내의 RC 맵핑 테이블(504)을 이용함으로써 RC 추출 스테이지에서 기생 RC 값을 두 번 이중 계수하는 것을 자동적으로 방지하기 위해, 설계자가 얼개도 설계를 인공 요소를 갖는 매크로 FinFET API(406)와 관련시키거나 인공 요소가 없는 고유 PDK 요소를 채택하더라도 정확한 레이아웃을 생성한다는 것이다.
도 5는 하나 이상의 실시예에 따른 PDK 라이브러리(404)와 매크로 FinFET API(406)의 블럭도이다. PDK 라이브러리(404)는 비일시적 컴퓨터 판독 가능 매체에 저장된다. PDK 라이브러리는 매크로 FinFET API의 넷리스트 절차 또는 고유 PDK 넷리스트 절차를 전환하는 것을 포함하는 넷리스트 래퍼(502)를 포함한다. 넷리스트 래퍼(502)는 넷리스트에 인공 요소를 포함하도록 매크로 FinFET API(406)로부터 수신된 정보를 기초로 하여 수정될 수 있다. RC 맵핑 테이블(504)이 또한 PDK 라이브러리(404)에 포함된다. RC 맵핑 테이블(504)는 RC 추출 스테이지에서 기생 RC 값을 두 번 이중 계수하는 것을 방지하고 RC 추출 스테이지에서 고유 PDK 디바이스를 확실하게 백 애너테이션하도록 사용된다. CDF(506)는 또한 FinFET 디바이스의 네이티브 구조체를 제공하는 데에 일조하도록 PDK 라이브러리에 포함된다. CDF(506)는 RC 성능 시뮬레이션 중에 인공 요소를 포함하도록 매크로 FinFET API(406)로부터의 정보를 기초로 하여 수정될 수 있다.
매크로 FinFET API(406)는 FinFET 디바이스의 RC 성능 시뮬레이션 중에 인공 요소를 포함하도록 넷리스트 래퍼(502)에 플러깅하도록 사용되는 넷리스트 절차(550)를 포함한다. 매크로 FinFET API(406)에 저장되는 RC 빈 값(552)은 FinFET 디바이스의 상이한 구성과 결합하여 시뮬레이션 툴을 이용하여 결정된다. RC 빈 값(552)은 FinFET 디바이스에서의 인공 요소에 대해 초기 RC 파라미터 값을 저장한다. 매크로 FinFET API(406)에 저장된 RC 등가 방정식(554)은 FinFET 디바이스의 기생 성능을 결정하도록 사용된다. 몇몇 실시예에서, RC 등가 방정식(554)은 선형이다. 몇몇 실시예에서, RC 등가 방정식(554)은 비선형이다. 몇몇 실시예에서, RC 등가 방정식(554)은 상이한 RC 빈 값(552)들 사이에 삽입하도록 사용된다. 매크로 FinFET API(406)는 또한 등가 모델 카드(556)를 포함한다. 등가 모델 카드(556)는 회로 설계의 속도와 정밀도를 증가시키도록 FinFET 디바이스와 관련된 구조체 및 성능 데이터를 저장하도록 사용된다.
도 6은 하나 이상의 실시예에 따른 FinFET 기반 회로를 설계하는 방법(600)의 플로우 차트이다. 방법(600)은 PDK FinFET 디바이스를 포함하지 않는 얼개도 설계가 설계되는 작동(602)에서 시작한다. 회로 설계자는 고객으로부터 성능 상세를 수신한다. 회로 설계자는 성능 상세를 만족시키도록 얼개도 설계를 생성한다. 얼개도 설계는 얼개도 설계에서 인접한 디바이스들 및 도전성 요소들의 영향을 시뮬레이팅하도록 사용되는 FinFET 디바이스의 특정한 구조체를 초기에 포함하지 않는다.
FinFET 기반 회로에서 각각의 FinFET 디바이스의 구조체를 처리하기 위하여 PDK 라이브러리(604)가 얼개도 설계와 결합된다. PDK 라이브러리(604)는 비일시적 컴퓨터 판독 가능 매체에 저장된다. PDK 라이브러리(604)는 PDK 라이브러리(404; 도 4)와 유사하다. 몇몇 실시예에서, PDK 라이브러리(604)는 외부 소스로부터 제공되고 수정될 수 있다.
작동(606)에서, PDK FinFET 디바이스를 포함하는 얼개도 설계가 생성된다. PDK 라이브러리(604)를 작동(602)에서의 얼개도 설계와 결합함으로써, FinFET의 네이티브 구조체가 얼개도 설계에 포함된다.
전자 설계 자동화(EDA; electronic design automation) 툴을 이용하여 작동(608)에서 PDK FinFET 디바이스에 제약이 추가된다. EDA 툴은 회로를 분석하여 입력값에 대한 회로의 응답을 결정하도록 사용된다. 몇몇 실시예에서, EDA 툴은 외부 소스로부터 제공된다. 몇몇 실시예에서, 제약은 FinFET 디바이스의 전기 성능을 정밀하게 시뮬레이팅하는 데에 일조하는 인공 요소를 처리하는 것을 포함한다.
프리-레이아웃 시뮬레이션이 작동(610)에서 수행된다. 프리-레이아웃 시뮬레이션은 얼개도 설계의 성능을 고객으로부터의 성능 상세와 비교하도록 사용되는 전기 특성 또는 기능 특성을 발생시킨다. 프리-레이아웃 시뮬레이션은 매크로 FinFET API(614)에 의해 플러깅되는 제약 API(612)를 기초로 하여 수행된다. 제약 API(612)는 EDA 툴에 의해 PDK FinFET 디바이스에 도입되는 제약과 상호 작용하도록 구성된다. 몇몇 실시예에서, 제약 API(612)는 외부 소스에 의해 제공된다. 제약 API(612)는 EDA 툴에 의해 실행된다. 제약 API(612)는 인공 요소에 관한 상세를 포함하기 위해 매크로 FinFET API(614)에 의해 수정되도록 구성된다. 매크로 FinFET API(614)는 매크로 FinFET API(406; 도 4)와 유사하다. 몇몇 실시예에서, 프리-레이아웃 시뮬레이션은 얼개도 설계와 성능 상세 간에 I-V 곡선 또는 전류 게인을 비교하는 것을 포함한다. 몇몇 실시예에서, 프리-레이아웃 시뮬레이션은 시뮬레이팅된 입력값에 응답하여 얼개도 설계의 출력값을 시뮬레이팅하는 것을 포함한다. 이어서, 출력값은 성능 상세에 대해 비교된다.
PDK 라이브러리(404; 도 4)와 매크로 FinFET API(406)의 결합과 달리, 제약 API(612)와 매크로 FinFET API(614)는 EDA 툴을 이용하여 인공 요소를 수정하도록 프리-레이아웃 시뮬레이션 중에만 적용된다. 방법(600)의 이점은 인공 요소의 사용을 프리-레이아웃 시뮬레이션으로 제한함으로써 RC 컴포넌트의 이중 계수가 회피된다는 것이다. 몇몇 실시예에서, 제약 API(612)와 매크로 FinFET API(614)는 PDK FinFET 디바이스 내의 넷리스트를 수정하지 못한다.
프리-레이아웃 시뮬레이션에 후속하여, 프리-레이아웃 시뮬레이션의 결과가 성능 상세를 만족시키면, 방법(600)은 작동(616)으로 계속된다. 프리-레이아웃 시뮬레이션의 결과가 성능 상세를 만족시키지 못하면, 방법(600)은 작동(610)으로 복귀되고 얼개도 설계가 변경된다.
작동(616)에서, 레이아웃이 발생된다. 레이아웃은 얼개도 설계에서 디바이스들과 연결부들의 물리적 배치이다. 레이아웃은 프리-레이아웃 시뮬레이션에서 제약 API(612)와 매크로 FinFET API(614)에 의해 정의되는 인공 요소를 포함하지 않는다. 몇몇 실시예에서, 레이아웃은 GDS를 이용하여 발생된다. 몇몇 실시예에서, 레이아웃은 다수의 층을 포함한다. 몇몇 실시예에서, 레이아웃의 발생은 웨이퍼를 패터닝하여 회로를 형성하도록 사용되는 마스크를 설계하는 것을 포함한다. 몇몇 실시예에서, 마스크의 갯수는 레이아웃에서 층들의 갯수와 동일하다. 몇몇 실시예에서, 레이아웃의 적어도 하나의 층을 형성하도록 1개보다 많은 마스크가 사용된다. 몇몇 실시예에서, 레이아웃은 비일시적 컴퓨터 판독 가능 매체에 저장된다. 몇몇 실시예에서, 레이아웃은 CADENCE DESIGN SYSTEMS사로부터 입수 가능한 VIRTUOSO® 등의 툴, 또는 다른 적절한 레이아웃 발생 툴을 이용하여 발생된다.
몇몇 실시예에서, DRC가 레이아웃의 발생 중에 레이아웃에서 특징부들 간에 충분한 간격을 유지하도록 수행되어, 레이아웃이 제조 프로세스 중에 정밀하게 형성될 수 있다. 몇몇 실시예에서, 레이아웃을 발생시키도록 사용된 동일한 툴이 DRC를 수행하도록 사용된다. 몇몇 실시예에서, DRC는 레이아웃의 발생에 후속하여 별개의 툴에 의해 수행된다.
작동(618)에서, LVS 점검이 수행된다. LVS 점검은 레이아웃이 회로 설계자에 의해 설계된 회로를 정확하게 나타내는 것을 보장하는 데에 일조하도록 레이아웃을 얼개도 설계와 비교한다. LVS 점검은 얼개도 설계에서의 인공 요소를 처리하지 못한다.
작동(620)에서, RC 추출이 수행된다. 몇몇 실시예에서, RC 추출은 레이아웃으로부터 전기 성능 정보를 추출한다. 몇몇 실시예에서, RC 추출은 추출된 정보를 다양한 디바이스 모델에 적용하여 작동(616)에서 발생된 레이아웃의 전기 특성을 결정한다. RC 추출은 액티브 디바이스 및 다양한 액티브 디바이스들을 함께 연결하도록 사용되는 상호 연결 구조체를 모두 처리한다. 몇몇 실시예에서, LPE가 RC 추출과 결합하여 수행된다.
포스트-레이아웃 시뮬레이션이 작동(622)에서 수행된다. 포스트-레이아웃 시뮬레이션은 작동(616)의 레이아웃에서 회로의 성능을 결정하고 그 성능을 고객으로부터 수신한 성능 상세와 비교한다. 몇몇 실시예에서, 포스트-레이아웃 시뮬레이션은 SYNOPSYS사로부터 입수 가능한 HSPICE®; CADENCE DESIGN SYSTEMS사로부터 입수 가능한 SPECTRE®; 또는 다른 적절한 포스트-시뮬레이션 툴 등의 포스트-레이아웃 시뮬레이터를 이용하여 수행된다.
포스트-레이아웃 시뮬레이션이 레이아웃이 성능 상세를 만족시킨다고 결정하면, 레이아웃은 레이아웃을 생성하도록 사용되는 마스크의 제조를 시작하도록 제조 단계로 전달된다. 포스트-레이아웃 시뮬레이션이 레이아웃이 성능 상세를 만족시키지 못한다고 결정하면, 실패를 처리하여 성능 상세를 만족시키도록 레이아웃 또는 얼개도 설계 중 적어도 하나가 변경된다.
방법(100; 도 1)과 유사하게, 방법(600)은 매크로 FinFET 파라미터를 포함하지 않는 방법과 비교하여 FinFET 기반 회로의 설계 중에 시간과 자원을 절감하는 데에 도움이 된다. 2개의 별개의 얼개도 설계를 개발하는 대신에, 회로 설계자는 단일의 얼개도를 개발하고 EDA 툴을 이용하여 회로의 RC 성능을 시뮬레이팅하는 데에 일조하기 위해 인공 요소를 추가하도록 제약된 PDK 라이브러리와 매크로 FinFET API(614)의 조합이 사용된다. 제약된 PDK 라이브러리는 정밀한 전기 성능 시뮬레이션을 용이하게 하도록 프리-레이아웃 시뮬레이션 중에 매크로 FinFET API(614)의 포함을 허용하지만, 레이아웃 발생 및 평가 중에 매크로 FinFET API(614)의 정보를 포함하지 않는다. 매크로 FinFET API(614) 정보의 제한된 사용은 시뮬레이션의 정확도를 감소시키는, 기생 RC 값을 두 번 고려하는 위험을 감소시키기 위해 레이아웃 발생 또는 평가 중에 회로 설계자가 인공 요소를 의도치않게 고려하는 것을 회피하는 데에 일조한다.
당업자라면, 방법(100, 400, 600)에서의 작동 순서가 본 설명의 범위로부터 벗어남이 없이 변경될 수 있다는 것을 알 것이다. 당업자라면, 또한 추가의 작동이 추가될 수 있거나 작동이 본 설명의 범위로부터 벗어남이 없이 제거될 수 있다는 것을 알 것이다.
도 7은 하나 이상의 실시예에 따른 FinFET 기반 회로를 설계하기 위한 범용 연산 디바이스(700)의 블럭도이다. 연산 디바이스(700)는 하드웨어 프로세서(702)와, 컴퓨터 프로그램 코드(706), 즉 실행 가능한 명령어 세트가 인코딩된 또는 저장된 비일시적 컴퓨터 판독 가능 저장 매체(704)를 포함한다. 컴퓨터 판독 가능 저장 매체(704)는 또한 메모리 어레이를 만들기 위한 제조 기계와 접속하기 위한 명령어(707)가 인코딩된다. 프로세서(702)는 버스(708)를 통해 컴퓨터 판독 가능 저장 매체(704)에 전기적으로 커플링된다. 프로세서(702)는 또한 버스(708)에 의해 I/O 인터페이스(710)에 전기적으로 커플링된다. 네트워크 인터페이스(712)가 또한 버스(708)를 통해 프로세서(702)에 전기적으로 접속된다. 네트워크 인터페이스(712)는 네트워크(714)에 연결되어, 프로세서(702)와 컴퓨터 판독 가능 저장 매체(704)가 네트워크(714)를 통해 외부 요소에 연결될 수 있다. 프로세서(702)는 연산 디바이스(700)가 방법(100), 방법(400) 또는 방법(600)에 설명된 작동들 중 일부 또는 전부를 수행하는 데에 사용될 수 있게 하기 위하여 컴퓨터 판독 가능 저장 매체(704)에 인코딩된 컴퓨터 프로그램 코드(706)를 실행하도록 구성된다.
몇몇 실시예에서, 프로세서(702)는 중앙 처리 유닛(CPU; central processing unit), 멀티 프로세서, 분산 처리 시스템, 애플리케이션 전용 집적 회로(ASIC; application specific integrated circuit), 및/또는 적절한 처리 유닛이다.
몇몇 실시예에서, 컴퓨터 판독 가능 저장 매체)704)는 전자, 광학, 전자기, 적외선, 및/또는 반도체 시스템(또는 장치 또는 디바이스)이다. 예컨대, 컴퓨터 판독 가능 저장 매체(704)는 반도체 또는 고형 상태 메모리, 자기 테이프, 착탈형 컴퓨터 디스켓, 랜덤 엑세스 메모리(RAM), 리드 온리 메모리(ROM), 강성 자기 디스크, 및/또는 광 디스크를 포함한다. 광 디스크를 이용하는 몇몇 실시예에서, 컴퓨터 판독 가능 저장 매체(704)는 콤팩트 디스크-리드 온리 메모리(CD-ROM), 콤팩트 디스크-리드/라이트(CD-R/W), 및/또는 디지털 비디오 디스크(DVD)를 포함한다.
몇몇 실시예에서, 저장 매체(704)는 연산 디바이스(700)가 방법(100), 방법(400) 또는 방법(600)을 수행하게 하도록 구성되는 컴퓨터 프로그램 코드(706)를 저장한다. 몇몇 실시예에서, 저장 매체(704)는 또한 방법(100, 400 또는 600)을 수행하는 데에 요구되는 정보 뿐만 아니라, P셀 심볼 파라미터(716), P셀 얼개도 파라미터(718), RC 빈 값 파라미터(720), RC 등가 방정식 파라미터(722), 등가 모델 카드 파라미터(727) 또는 방법(100, 400 또는 600)의 작동을 수행하기 위한 실행 가능한 명령어 세트와 같이 방법(100, 400 또는 600)을 수행하는 동안에 발생되는 정보를 저장한다.
몇몇 실시예에서, 저장 매체(704)는 외부 기계와 접속하기 위한 명령어(707)를 저장한다. 명령어(707)는 프로세서(702)가 회로 설계 과정 중에 방법(100, 400 또는 600)을 효과적으로 실행하도록 외부 기계에 의해 판독 가능한 명령어를 발생하게 할 수 있다.
연산 디바이스(700)는 I/O 인터페이스(710)를 포함한다. I/O 인터페이스(710)는 외부 회로에 커플링된다. 몇몇 실시예에서, I/O 인터페이스(710)는 키보드, 키패드, 마우스, 트랙볼, 트랙패드, 및/또는 정보와 명령어를 프로세서(702)에 전달하기 위한 커서 지향 키를 포함한다.
연산 디바이스(700)는 또한 프로세서(702)에 커플링되는 네트워크 인터페이스(712)를 포함한다. 네트워크 인터페이스(712)는 연산 디바이스(700)가 네트워크(714)와 통신하게 하고, 네트워크에는 하나 이상의 다른 컴퓨터 시스템이 접속된다. 네트워크 인터페이스(712)는 BLUETOOTH, WIFI, WIMAX, GPRS, 또는 WCDMA 등의 무선 네트워크 인터페이스; 또는 ETHERNET, USB, 또는 IEEE-1394 등의 유선 네트워크 인터페이스를 포함한다. 몇몇 실시예에서, 방법(100, 400 또는 500)은 2개 이상의 연산 디바이스(700)에서 실행되고, FinFET 디바이스 구조체 또는 전기 성능 등의 정보가 네트워크(714)를 통해 상이한 연산 디바이스(700) 사이에 교환된다.
연산 디바이스(700)는 I/O 인터페이스(710)를 통해 회로 설계자로부터 회로 설계에 관한 정보를 수신하도록 구성된다. 정보는 FinFET 디바이스의 종류를 결정하도록 버스(708)를 통해 프로세서(702)로 전달된다. 이어서, FinFET 디바이스의 P셀 심볼이 P셀 심볼 파라미터(716)로서 컴퓨터 판독 가능 매체(704)에 저장된다. FinFET 디바이스의 P셀 얼개도는 P셀 얼개도 파라미터(718)로서 컴퓨터 판독 가능 매체(704)에 저장된다. 연산 디바이스(700)는 I/O 인터페이스(710)를 통해 FinFET 디바이스에 관한 RC 정보를 수신하도록 구성된다. 정보는 RC 빈 값 파라미터(720)로서 컴퓨터 판독 가능 매체(704)에 저장된다. 연산 디바이스(700)는 RC 등가 방정식에 관한 정보를 계산하도록 구성된다. 정보는 RC 등가 방정식 파라미터(722)로서 컴퓨터 판독 가능 매체(704)에 저장된다. 연산 디바이스(700)는 FinFET 디바이스의 정보 모델 카드를 계산하도록 구성된다. 정보는 등가 모델 카드 파라미터(724)로서 컴퓨터 판독 가능 매체(704)에 저장된다.
본 설명의 한가지 양태는 핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법에 관한 것이다. 상기 방법은 프로세서를 이용하여 성능 상세에 기초한 제1 회로 얼개도 설계를 설계하는 단계를 포함하고, 상기 제1 회로 얼개도 설계에는 인공 요소가 없고, 상기 인공 요소는 FinFET 기반 회로의 전기 성능을 시뮬레이팅하도록 사용된다. 상기 방법은 프로세스를 이용하여 인공 요소를 고려한 제2 회로 얼개도 설계를 형성하도록 제1 회로 얼개도 설계 내의 적어도 하나의 디바이스를 수정하는 단계를 더 포함한다. 방법은 상기 제2 회로 얼개도를 이용하고 상기 인공 요소를 고려하는 프리-레이아웃 시뮬레이션을 수행하는 단계를 더 포함한다. 방법은 레이아웃을 발생시키는 단계로서, 상기 레이아웃은 인공 요소를 고려하지 않는, 단계, 및 포스트-레이아웃 시뮬레이션을 수행하는 단계로서, 상기 포스트-레이아웃 시뮬레이션은 인공 요소를 고려하지 않는, 단계를 더 포함한다.
본 설명의 다른 양태는 핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법에 관한 것이다. 방법은 프로세서를 이용하여 성능 상세에 기초한 제1 회로 얼개도 설계를 설계하는 단계를 포함하고, 상기 제1 회로 얼개도 설계에는 인공 요소가 없고, 상기 인공 요소는 FinFET 기반 회로의 전기 성능을 시뮬레이팅하도록 사용된다. 상기 방법은 인공 요소를 포함하는 제2 회로 얼개도 설계를 형성하도록 매크로 FinFET 라이브러리를 이용하여 상기 제1 회로 얼개도 설계를 수정하는 단계를 더 포함하고, 상기 제2 회로 얼개도 설계는 기생 모드와, 상기 기생 모드와 상이한 레이아웃 모드 사이에서 전환될 수 있다. 매크로 FinFET 라이브러리는 기생 모드와 관련된 제1 파라미터 셀(P셀) 심볼, 레이아웃 모드와 관련된 제2 P셀 심볼, 기생 모드와 관련된 제1 P셀 얼개도, 레이아웃 모드와 관련된 제2 P셀 얼개도, 및 저항 정전 용량(RC; resistance capacitance) 등가 방정식을 포함한다. 방법은 기생 모드에서의 제2 회로 얼개도 설계와 RC 등가 방정식을 이용하여 프리-레이아웃 시뮬레이션을 수행하는 단계를 더 포함한다. 방법은 레이아웃 모드에서의 제2 회로 얼개도 설계를 이용하여 레이아웃을 발생시키는 단계, 및 레이아웃 모드에서의 제2 회로 얼개도 설계를 이용하여 포스트-레이아웃 시뮬레이션을 수행하는 단계를 더 포함한다.
본 설명의 또 다른 양태는 핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 시스템에 관한 것이다. 시스템은 프로세서, 및 프로세서에 접속된 비일시적 컴퓨터 판독 가능 매체를 포함한다. 비일시적 컴퓨터 판독 가능 매체는, 프로세서를 이용하여 성능 상세에 기초한 제1 회로 얼개도 설계를 설계하는 명령어를 포함하고, 제1 회로 얼개도 설계에는 인공 요소가 없고, 상기 인공 요소는 FinFET 기반 회로의 전기 성능을 시뮬레이팅하도록 사용된다. 비일시적 컴퓨터 판독 가능 매체는 프로세스를 이용하여 인공 요소를 고려한 제2 회로 얼개도 설계를 형성하도록 제1 회로 얼개도 설계 내의 적어도 하나의 디바이스를 수정하는 명령어를 더 포함한다. 비일시적 컴퓨터 판독 가능 매체는 제2 회로 얼개도를 이용하고 상기 인공 요소를 고려하는 프리-레이아웃 시뮬레이션을 수행하는 명령어를 더 포함한다. 비일시적 컴퓨터 판독 가능 매체는 레이아웃을 발생시키는 명령어로서, 레이아웃은 인공 요소를 고려하지 않는, 명령어, 및 포스트-레이아웃 시뮬레이션을 수행하는 명령어로서, 포스트-레이아웃 시뮬레이션은 인공 요소를 고려하지 않는, 명령어를 더 포함한다.
당업자라면, 개시된 실시예들이 전술한 이점들 중 하나 이상을 만족시킨다는 것을 쉽게 알 것이다. 전술한 명세서를 읽으면, 당업자는 본 명세서에 광범위하게 개시된 바와 같이 다양한 변경, 균등물의 대체 및 다양한 다른 실시예를 발생시킬 수 있을 것이다. 따라서, 본 발명에 허여되는 보호 범위는 첨부된 청구범위 및 그 균등물에 포함되는 한정에 의해서만 제한된다.
Claims (20)
- 핀 전계 효과 트랜지스터(FinFET: fin field effect transistor) 기반 회로를 설계하는 방법에 있어서,
프로세서를 이용하여 성능 상세(performance specification)에 기초한 제1 회로 얼개도 설계(circuit schematic design)를 설계하는 단계로서, 상기 제1 회로 얼개도 설계에는 FinFET 기반 회로의 전기 성능(electrical performance)을 시뮬레이팅하도록 사용되는 인공 요소(artificial element)들이 없는 것인, 상기 제1 회로 얼개도 설계를 설계하는 단계;
프로세스를 이용하여 상기 인공 요소들을 고려한 제2 회로 얼개도 설계를 형성하도록 상기 제1 회로 얼개도 설계 내의 적어도 하나의 디바이스를 수정하는 단계;
상기 제2 회로 얼개도를 이용하고 상기 인공 요소들을 고려하는 프리-레이아웃 시뮬레이션을 수행하는 단계;
상기 인공 요소들을 고려하지 않는 레이아웃을 발생시키는 단계; 및
상기 인공 요소들을 고려하지 않는 포스트-레이아웃 시뮬레이션을 수행하는 단계를 포함하는, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제1항에 있어서,
상기 인공 요소들을 고려하지 않는 레이아웃 대 얼개도(LVS; layout versus schematic) 점검을 수행하는 단계; 및
상기 인공 요소들을 고려하지 않는 RC 추출을 수행하는 단계를 더 포함하는, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제1항에 있어서,
상기 프리-레이아웃 시뮬레이션의 결과들을 상기 성능 상세와 비교하는 단계;
상기 프리-레이아웃 시뮬레이션의 결과들이 상기 성능 상세를 만족시키지 못하면 상기 제2 회로 얼개도 설계를 변경하는 단계; 및
상기 프리-레이아웃 시뮬레이션의 결과들이 상기 성능 상세를 만족시키면 상기 레이아웃을 발생시키는 단계를 더 포함하는, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제1항에 있어서,
상기 제1 회로 얼개도 설계를 수정하는 단계는 상기 제1 회로 얼개도 설계를 상기 인공 요소들에 관한 정보를 포함하는 매크로 FinFET 라이브러리와 결합시키는 단계를 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제1항에 있어서,
상기 제1 회로 얼개도 설계를 수정하는 단계는 상기 제1 회로 얼개도 설계를 프로세스 설계 키트(PDK; process design kit) 라이브러리와 매크로 FinFET 애플리케이션 프로그래밍 인터페이스(API; application programming interface)의 조합과 결합시키는 단계를 포함하고,
상기 PDK는 상기 제1 회로 얼개도 설계에서의 FinFET 디바이스의 구조체를 포함하고, 상기 매크로 FinFET API는 상기 인공 요소들에 관한 정보를 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제5항에 있어서,
상기 인공 요소들에 관한 정보를 포함하도록 상기 매크로 FinFET API에서의 넷리스트 절차(netlist procedure)를 상기 PDK 라이브러리에서의 넷리스트 래퍼(netlist wrapper)에 플러깅(plugging)하는 단계를 더 포함하는, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제1항에 있어서,
PDK 라이브러리에 관한 제약들을 확립하는 단계; 및
제약 PDK 라이브러리를 기초로 하여 상기 프리-레이아웃 시뮬레이션 중에 상기 인공 요소들을 위한 전기 성능 정보를 수신하는 단계를 더 포함하는, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제7항에 있어서,
상기 전기 성능 정보를 수신하는 단계는 매크로 FinFET API와 결합된 제약 API로부터 전기 성능 정보를 수신하는 단계를 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 핀 전계 효과 트랜지스터(FinFET: fin field effect transistor) 기반 회로를 설계하는 방법에 있어서,
프로세서를 이용하여 성능 상세(performance specification)에 기초한 제1 회로 얼개도 설계(circuit schematic design)를 설계하는 단계로서, 상기 제1 회로 얼개도 설계에는 FinFET 기반 회로의 전기 성능(electrical performance)을 시뮬레이팅하도록 사용되는 인공 요소(artificial element)들이 없는 것인, 상기 제1 회로 얼개도 설계를 설계하는 단계;
상기 인공 요소들을 포함하는 제2 회로 얼개도 설계를 형성하도록 매크로 FinFET 라이브러리를 이용하여 상기 제1 회로 얼개도 설계를 수정하는 단계로서, 상기 제2 회로 얼개도 설계는 기생 모드와, 상기 기생 모드와 상이한 레이아웃 모드 사이에서 전환될 수 있고, 상기 매크로 FinFET 라이브러리는 상기 기생 모드와 관련된 제1 파라미터 셀(P셀) 심볼, 상기 레이아웃 모드와 관련된 제2 P셀 심볼, 상기 기생 모드와 관련된 제1 P셀 얼개도, 상기 레이아웃 모드와 관련된 제2 P셀 얼개도, 및 저항 정전 용량(RC; resistance capacitance) 등가 방정식들을 포함하는 것인, 상기 제1 회로 얼개도 설계를 수정하는 단계;
상기 기생 모드에서의 상기 제2 회로 얼개도 설계와 RC 등가 방정식들을 이용하여 프리-레이아웃 시뮬레이션을 수행하는 단계;
상기 레이아웃 모드에서의 상기 제2 회로 얼개도 설계를 이용하여 레이아웃을 발생시키는 단계; 및
상기 레이아웃 모드에서의 상기 제2 회로 얼개도 설계를 이용하여 포스트-레이아웃 시뮬레이션을 수행하는 단계를 포함하는, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제9항에 있어서,
상기 프리-레이아웃 시뮬레이션을 수행하는 단계는 상기 인공 요소들을 포함하는 제1 P셀 얼개도를 이용하는 단계를 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제9항에 있어서,
상기 제1 회로 얼개도를 수정하는 단계는 폴리실리콘 산화물 확산 에지(PODE; polysilicon oxide diffusion edge) 요소, MEOL(middle end of line) 연결부들, 또는 BEOL(back end of line) 연결부들 중 적어도 하나를 포함하는 상기 인공 요소들을 고려하는 단계를 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제9항에 있어서,
상기 레이아웃 모드에서의 상기 제2 회로 얼개도 설계를 이용하여 레이아웃 대 얼개도(LVS; layout versus schematic) 점검을 수행하는 단계; 및
상기 레이아웃 모드에서의 상기 제2 얼개도 설계를 이용하여 RC 추출을 수행하는 단계를 더 포함하는, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제9항에 있어서,
상기 프리-레이아웃 시뮬레이션의 결과들을 상기 성능 상세와 비교하는 단계;
상기 프리-레이아웃 시뮬레이션의 결과들이 상기 성능 상세를 만족시키지 못하면 상기 제2 회로 얼개도 설계를 변경하는 단계; 및
상기 프리-레이아웃 시뮬레이션의 결과들이 상기 성능 상세를 만족시키면 상기 레이아웃을 발생시키는 단계를 더 포함하는, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제9항에 있어서,
상기 포스트-레이아웃 시뮬레이션의 결과들을 상기 성능 상세와 비교하는 단계;
상기 포스트-레이아웃 시뮬레이션의 결과들이 상기 성능 상세를 만족시키지 못하면 상기 제2 회로 얼개도 설계를 변경하는 단계; 및
상기 포스트-레이아웃 시뮬레이션의 결과들이 상기 성능 상세를 만족시키면 상기 레이아웃의 마스크들을 제작하는 단계를 더 포함하는, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제9항에 있어서,
상기 프리-레이아웃 시뮬레이션을 수행하는 단계는 선형 RC 등가 방정식들을 이용하는 단계를 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 제9항에 있어서,
상기 프리-레이아웃 시뮬레이션을 수행하는 단계는 비선형 RC 등가 방정식들을 이용하는 단계를 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 방법. - 핀 전계 효과 트랜지스터(FinFET: fin field effect transistor) 기반 회로를 설계하는 시스템에 있어서,
프로세서; 및
상기 프로세서에 접속된 비일시적 컴퓨터 판독 가능 매체를 포함하고,
상기 비일시적 컴퓨터 판독 가능 매체는,
프로세서를 이용하여 성능 상세(performance specification)에 기초한 제1 회로 얼개도 설계(circuit schematic design)를 설계하는 명령어들로서, 상기 제1 회로 얼개도 설계에는 FinFET 기반 회로의 전기 성능(electrical performance)을 시뮬레이팅하도록 사용되는 인공 요소(artificial element)들이 없는 것인, 상기 제1 회로 얼개도 설계를 설계하는 명령어들;
프로세스를 이용하여 상기 인공 요소들을 고려한 제2 회로 얼개도 설계를 형성하도록 상기 제1 회로 얼개도 설계 내의 적어도 하나의 디바이스를 수정하는 명령어들;
상기 제2 회로 얼개도를 이용하고 상기 인공 요소들을 고려하는 프리-레이아웃 시뮬레이션을 수행하는 명령어들;
상기 인공 요소들을 고려하지 않는 레이아웃을 발생시키는 명령어들; 및
상기 인공 요소들을 고려하지 않는 포스트-레이아웃 시뮬레이션을 수행하는 명령어들을 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 시스템. - 제17항에 있어서,
상기 비일시적 컴퓨터 판독 가능 매체는 상기 제1 회로 얼개도 설계를 매크로 FinFET 라이브러리와 결합시키는 명령어들을 더 포함하고,
상기 매크로 FinFET 라이브러리는 상기 인공 요소들에 관한 정보를 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 시스템. - 제17항에 있어서,
상기 비일시적 컴퓨터 판독 가능 매체는 상기 제1 회로 얼개도 설계를 프로세스 설계 키트(PDK; process design kit) 라이브러리와 매크로 FinFET 애플리케이션 프로그래밍 인터페이스(API; application programming interface)의 조합과 결합시키는 명령어들을 더 포함하고,
상기 PDK는 상기 제1 회로 얼개도 설계에서의 FinFET 디바이스의 구조체를 포함하고, 상기 매크로 FinFET API는 상기 인공 요소들에 관한 정보를 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 시스템. - 제19항에 있어서,
상기 비일시적 컴퓨터 판독 가능 매체는 상기 인공 요소들에 관한 정보를 포함하도록 상기 매크로 FinFET API에서의 넷리스트 절차(netlist procedure)를 이용하여 상기 PDK 라이브러리에서의 넷리스트 래퍼(netlist wrappper)를 수정하는 명령어들을 더 포함하는 것인, 핀 전계 효과 트랜지스터(FinFET) 기반 회로 설계 시스템.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/086,127 US9122833B2 (en) | 2013-11-21 | 2013-11-21 | Method of designing fin field effect transistor (FinFET)-based circuit and system for implementing the same |
US14/086,127 | 2013-11-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150059128A true KR20150059128A (ko) | 2015-05-29 |
KR101662401B1 KR101662401B1 (ko) | 2016-10-10 |
Family
ID=53174601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140163554A KR101662401B1 (ko) | 2013-11-21 | 2014-11-21 | 핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법 및 이 방법을 실행하기 위한 시스템 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9122833B2 (ko) |
KR (1) | KR101662401B1 (ko) |
CN (1) | CN104657537B (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9747409B2 (en) | 2015-09-24 | 2017-08-29 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method of parameter extraction and system thereof |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9330219B2 (en) * | 2014-03-31 | 2016-05-03 | Taiwan Semiconductor Manufacturing Company, Ltd. | Integrated circuit design method |
US10372867B2 (en) * | 2014-09-02 | 2019-08-06 | Synopsys, Inc. | In-design real-time electrical impact verification flow |
US9996643B2 (en) * | 2014-11-17 | 2018-06-12 | Taiwan Semiconductor Manufacturing Company, Ltd. | Integrated circuit modeling method using resistive capacitance information |
US10650110B2 (en) | 2015-07-08 | 2020-05-12 | Hewlett Packard Enterprise Development Lp | Photonic circuit design systems |
US9886544B2 (en) * | 2016-02-23 | 2018-02-06 | Taiwan Semiconductor Manufacturing Co., Ltd. | Layout checking system and method |
US9679887B1 (en) | 2016-06-02 | 2017-06-13 | Taiwan Semiconductor Manufacturing Co., Ltd. | Over-voltage protection circuit |
US10808333B2 (en) * | 2018-01-08 | 2020-10-20 | Totic Technology Inc. | Method and apparatus for performing layout designs using stem cells |
US11314914B2 (en) * | 2018-11-29 | 2022-04-26 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method and non-transitory computer readable medium of operating an electronic design automation platform for an optimal intgrated circuit design |
CN114077815A (zh) * | 2020-08-12 | 2022-02-22 | 深圳市海思半导体有限公司 | 一种围栅器件的设计方法和装置 |
CN114818593A (zh) * | 2021-01-19 | 2022-07-29 | 长鑫存储技术有限公司 | 仿真方法、装置、电源线拓扑网络、测试电路及存储介质 |
US11900038B2 (en) | 2021-01-19 | 2024-02-13 | Changxin Memory Technologies, Inc. | Simulation method and device, power wire topology network, test circuit and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09127188A (ja) * | 1995-10-02 | 1997-05-16 | Altera Corp | 集積回路を作る方法およびウェハ上のダイを検査するためのシステム |
JP2009540612A (ja) * | 2006-06-13 | 2009-11-19 | フォームファクター, インコーポレイテッド | 特定用途向けプローブカード試験システムの設計方法 |
JP2010141016A (ja) * | 2008-12-10 | 2010-06-24 | Panasonic Corp | 半導体集積回路装置及びその設計方法 |
KR20120086258A (ko) * | 2011-01-25 | 2012-08-02 | 캐논 가부시끼가이샤 | 설계 지원장치 및 그 정보처리 방법 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7898037B2 (en) * | 2007-04-18 | 2011-03-01 | Taiwan Semiconductor Manufacturing Company, Ltd. | Contact scheme for MOSFETs |
US8799833B2 (en) * | 2011-04-29 | 2014-08-05 | Taiwan Semiconductor Manufacturing Company, Ltd. | System and methods for converting planar design to FinFET design |
US8631382B2 (en) * | 2012-03-08 | 2014-01-14 | Taiwan Semiconductor Manufacturing Company, Ltd. | LVS implementation for FinFET design |
KR101904417B1 (ko) * | 2012-03-30 | 2018-10-08 | 삼성전자주식회사 | 반도체 집적 회로 및 그 설계 방법 |
US8826213B1 (en) * | 2013-03-11 | 2014-09-02 | Taiwan Semiconductor Manufacturing Company, Ltd. | Parasitic capacitance extraction for FinFETs |
-
2013
- 2013-11-21 US US14/086,127 patent/US9122833B2/en active Active
-
2014
- 2014-11-21 KR KR1020140163554A patent/KR101662401B1/ko active IP Right Grant
- 2014-11-21 CN CN201410677448.7A patent/CN104657537B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09127188A (ja) * | 1995-10-02 | 1997-05-16 | Altera Corp | 集積回路を作る方法およびウェハ上のダイを検査するためのシステム |
JP2009540612A (ja) * | 2006-06-13 | 2009-11-19 | フォームファクター, インコーポレイテッド | 特定用途向けプローブカード試験システムの設計方法 |
JP2010141016A (ja) * | 2008-12-10 | 2010-06-24 | Panasonic Corp | 半導体集積回路装置及びその設計方法 |
KR20120086258A (ko) * | 2011-01-25 | 2012-08-02 | 캐논 가부시끼가이샤 | 설계 지원장치 및 그 정보처리 방법 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9747409B2 (en) | 2015-09-24 | 2017-08-29 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method of parameter extraction and system thereof |
Also Published As
Publication number | Publication date |
---|---|
CN104657537B (zh) | 2018-03-23 |
CN104657537A (zh) | 2015-05-27 |
US20150143314A1 (en) | 2015-05-21 |
US9122833B2 (en) | 2015-09-01 |
KR101662401B1 (ko) | 2016-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101662401B1 (ko) | 핀 전계 효과 트랜지스터(FinFET) 기반 회로를 설계하는 방법 및 이 방법을 실행하기 위한 시스템 | |
US8826213B1 (en) | Parasitic capacitance extraction for FinFETs | |
US8701067B1 (en) | Methods, systems, and articles of manufactures for implementing electronic circuit designs with IR-drop awareness | |
KR102396699B1 (ko) | 셀 레벨 레이아웃 의존성 응력 효과들을 사용하는 셀의 배치 및 라우팅 | |
CN107315848B (zh) | 用于集成电路设计的方法及系统 | |
CN103544333B (zh) | 半导体器件设计方法、系统和计算机程序产品 | |
US8806414B2 (en) | Method and system for layout parasitic estimation | |
US8336002B2 (en) | IC design flow enhancement with CMP simulation | |
CN104933214B (zh) | 集成电路设计方法和装置 | |
US10467364B2 (en) | Characterizing cell using input waveforms with different tail characteristics | |
US20170344692A1 (en) | Computer-implemented method of designing an integrated circuit | |
US20220147678A1 (en) | Systems and methods for capacitance extraction | |
US9721059B1 (en) | Post-layout thermal-aware integrated circuit performance modeling | |
US8522181B2 (en) | Capacitance extraction for advanced device technologies | |
US10223485B2 (en) | Reliability verification based on combining voltage propagation with simulation | |
US8966429B2 (en) | Bit slice elements utilizing through device routing | |
US20230260591A1 (en) | Transforming local wire thru resistances into global distributed resistances | |
US9032352B2 (en) | Method of optimizing capacitive couplings in high-capacitance nets in simulation of post-layout circuits | |
WO2023029007A1 (zh) | 用于电子设计自动化的方法和设备 | |
US10467375B2 (en) | Methods and systems to estimate power network noise | |
CN112771529B (zh) | 基于Elmore延迟时间(EDT)的电阻模型 | |
US10803222B1 (en) | Methods, systems, and computer program product for implementing an electronic design having embedded circuits | |
US10811316B2 (en) | Method and system of forming integrated circuit | |
US10395000B1 (en) | Methods, systems, and computer program products for implementing an electronic design using voltage-based electrical analyses and simulations with corrections | |
Knoth et al. | Methods of parameter variations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |