KR20100052395A - 3차원 변동 커패시턴스 계산을 위한 시스템 및 방법 - Google Patents
3차원 변동 커패시턴스 계산을 위한 시스템 및 방법 Download PDFInfo
- Publication number
- KR20100052395A KR20100052395A KR1020090075231A KR20090075231A KR20100052395A KR 20100052395 A KR20100052395 A KR 20100052395A KR 1020090075231 A KR1020090075231 A KR 1020090075231A KR 20090075231 A KR20090075231 A KR 20090075231A KR 20100052395 A KR20100052395 A KR 20100052395A
- Authority
- KR
- South Korea
- Prior art keywords
- random walk
- conductors
- conductor
- path
- floating random
- Prior art date
Links
Images
Classifications
-
- 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
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/70—Manufacture or treatment of devices consisting of a plurality of solid state components formed in or on a common substrate or of parts thereof; Manufacture of integrated circuit devices or of parts thereof
- H01L21/77—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate
- H01L21/78—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices
- H01L21/82—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/10—Noise analysis or noise optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Manufacturing & Machinery (AREA)
- Power Engineering (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
커패시턴스 도출 기법이 제공된다. 일 태양에서, 집적 회로 설계의 전도체들 간의 변동 커플링 커패시턴스(variational coupling capacitance)를 분석하기 위한 방법이 제공된다. 본 방법은 이하의 단계들을 포함한다. 커플링 커패시턴스는 일 집합의 플로팅 랜덤 워크 경로(floating random walk paths)를 이용하여 설계로부터 관심 대상 전도체들 간에 계산된다. 하나 이상의 전도체들이 교란된다. 교란에 의해 영향받는 플로팅 랜덤 워크 경로들 중 임의의 것이 수정된다. 관심 대상 전도체들 간의 커플링 커패시턴스는 수정된 플로팅 랜덤 워크 경로를 포함하도록 재계산된다.
집적 회로 설계, 커패시턴스, 플로팅 랜덤 워크
Description
본 발명은 집적 회로 설계에 관한 것이며, 보다 구체적으로는 집적 회로 설계의 민감도(sensitivity) 및 증분 변동 커패시턴스(incremental variational capacitance) 분석에 관한 것이다.
집적 회로 전기를 평가하는데 있어서의 기초는 빠르고 효율적으로 커패시턴스를 도출하는 것이다. 지난 수십 년간 커패시턴스 분석에 수많은 다양한 접근법이 제안되었다. 이러한 접근법들을 두 개의 카테고리로 나눌 수 있다. 하나는 경계 요소법(boundary element) 또는 유한 차동법(finite difference)과 같은 결정론적 기법(deterministic technique)이고, 다른 하나는 플로팅 랜덤 워크(floating random walk)와 같은 확률론적 기법(stochastic technique)이다. 일반적으로 결정론적 기법은 선형 시스템 함수를 풀이하는 것과 연관된다. 그러나 고집적 회로 기하 형상에서, 선형 시스템의 해를 얻는데 필요한 시간이 계산의 복잡성을 좌우한다. 멀티폴 확장(multipole expansion), 계층 기법(hierarchical techniques) 및 사전 정정 고속 푸리에 변환(pre-corrected fast Fourier transform)과 같은 다양 한 가속 도구("빠른 풀이법(fast-solver)")가 시스템의 속도 향상을 위해 제안되어 왔다.
향상된 도구를 사용하여도 결정론적 기법은 매우 많은 수의 유사 구성과 연관된 복잡한 설계의 사용에 있어 매우 비효율적이었음이 증명되었다. 예를 들자면, 타이밍 및 노이즈 분석에 사용되는 파라미터화된 감소 차수 모델(parameterized reduced-order models)의 생성, 및 매크로 및 풀-칩 기생 레이아웃 도출(macro and full-chip parasitic layout extraction)에 사용되는 커패시턴스 테이블의 생성을 들 수 있다. 이러한 모델은 파라미터의 대표 집합에 대응하는 커패시턴스의 대표 집합을 만드는데 많은 수의 유사 구성을 사전 풀이하는 것(presolution)을 필요로 한다. 다른 예시로는 확률적 배열 알고리즘(stochastic collocation algorithm)과 같은 수많은 확률적 도출 기법에서 볼 수 있는 커패시턴스 분산의 도출을 들 수 있다. 이러한 예시 모두는 매우 많은 수의 유사 구성을 풀이하는 것을 기초 단계로 필요로 한다.
도 1은 45 나노미터(nm) 기술로 설계된 SRAM 셀(static random access memory cell)의 활성 영역에 위치한 웨이퍼의 윤곽(contour)을 도시한 이미지(100)이다. 광학적 사전 보정 및 해상도 강화(resolution improvement)와 같은 리소그라픽 개량 기법을 사용함에도 불구하고 이미지(100)에는 매우 비정형적인 윤곽이 나타난다. 윤곽 인식 도출(contour aware extraction)이 리소그라픽 비정형성이 존재하는 레이아웃 기생 성분(layout parasitics)의 정확성을 향상시키기 위해 제안되었으나, 이러한 윤곽의 고도의 비정형적 특징은 이같은 접근법을 시간 비효율적으로 만든다.
리소그라피는 주로 마스크 면의 레이아웃 형상에 주로 영향을 미친다. 반면에, 화학적-기계적 연마(CMP)는 마스크 면에 수직한 상호 연결(interconnect) 높이에 있어서의 불확정성에 기여한다. 이러한 불확정성은 많은 수의 유사 구성을 수용할 수 있는 고속의 도출 기법에 대한 필요성을 더욱 강조한다.
수많은 유사 구성의 환경에서의 커패시턴스 도출은 일반적으로 수반 방법(adjoint method)을 사용하여 구현되며, 이 수반 방법은 수 개의 파라미터에 독립한 계산적인 복잡성을 갖는 많은 수의 독립 변수에 대해 커패시턴스 매트릭스의 민감도(보다 구체적으로는 커패시턴스 매트릭스의 벡터)를 계산하는 것을 용이하게 한다. 그러나, 민감도를 계산하는데 요구되는 총 시간은 공칭 시스템을 해결하는데 필요한 시간의 약 2.5배이다. 그러나 특히 크고 복잡한 설계 구성이 연관된 경 우 개선의 여지가 매우 많다. 이와 같이 복잡한 설계 구성에서, 수반 방법과 같은 통상의 접근법이 주류적 사용에 있어 매우 비효율적이라고 증명되었다.
따라서 많은 수의 유사 구성을 수용할 수 있는 향상된 커패시턴스 도출 기법이 요구된다.
본 발명은 커패시턴스 도출 기법을 제공한다. 본 발명의 일 태양에 따르면, 집적 회로 설계의 전도체들 간의 변동 커플링 커패시턴스를 분석하기 위한 방법이 제공된다. 이 방법은 후술할 단계를 포함한다. 일 집합의 플로팅 랜덤 워크 경로를 사용하여, 설계로부터 관심 대상 전도체들 간의 커플링 커패시턴스가 계산된다. 하나 이상의 전도체들이 교란된다. 교란에 의해 영향받는 플로팅 랜덤 워크 경로들 중 임의의 것이 수정된다. 관심 대상 전도체들 간의 커플링 커패시턴스는 수정된 플로팅 랜덤 워크 경로를 포함하도록 재계산될 수 있다.
교란될 전도체가 설계로부터 선택될 수 있다. 하나 이상의 플로팅 랜덤 워크 경로가 종료하는 선택된 전도체의 모서리가 선택될 수 있다. 선택된 전도체의 모서리는 선택된 전도체의 기하 형상을 약 10퍼센트 이하 변화시키는 양만큼 내측으로(inward) 교란될 수 있다. 교란되지 않은 모서리에서 종료된 임의의 플로팅 랜덤 워크 경로는 교란된 모서리로 확장될 수 있다. 관심 대상 전도체들 간의 커플링 커패시턴스는 확장된 플로팅 랜덤 워크 경로를 포함하도록 재계산될 수 있다. 커플링 커패시턴스 민감도는 교란된 모서리에 대해 결정될 수 있다.
또한, 교란에 의해 여전히 영향받지만 교란되지 않은 모서리에서 종료하지 않는 임의의 플로팅 랜덤 워크 경로가 식별될 수 있다. 식별된 각각의 플로팅 랜덤 워크 경로가 여전히 유효한지를 결정할 수 있다. 교란 이후에 유효하지 않은 임의의 식별된 플로팅 랜덤 워크 경로는 수정될 수 있다.
하나 이상의 전도체들이 교란되어 새로운 집적 회로 설계를 생성할 수 있으며, 여기서 각각의 하나 이상의 전도체는 전도체의 기하 형상을 약 10퍼센트 이상변화시키는 양만큼 교란된다. 플로팅 랜덤 워크 경로는 새로운 집적 회로 설계에 맵핑(mapped) 될 수 있다. 새로운 집적 회로 설계에 맵핑된 각각의 플로팅 랜덤 워크 경로가 새로운 집적 회로 설계에서 유효한지를 결정될 수 있다. 유효하지 않은 새로운 집적 회로 설계에 맵핑된 임의의 플로팅 랜덤 워크 경로는 수정될 수 있다. 새로운 집적 회로 설계에 맵핑된 유효한 임의의 플로팅 랜덤 워크 경로는 유지될 수 있다. 커플링 커패시턴스는 새로운 집적 회로 설계로부터 관심 대상 전도체들 간에서 계산될 수 있다.
플로팅 랜덤 워크 경로 중 임의의 하나에 있어, 플로팅 랜덤 워크 경로가 어떤 전도체에 의존하는지 결정될 수 있다. 전도체, 플로팅 랜덤 워크 경로 및 플로팅 랜덤 워크 경로가 어떤 전도체에 의존하는지를 묘사하기 위한 방법으로서 설계가 그래픽적으로 표현될 수 있다. 하나 이상의 전도체는 교란된 각각의 전도체의 기하 형상을 약 10퍼센트 이상 변화시킨 양만큼 교란될 수 있다. 플로팅 랜덤 워크 경로가 하나 이상의 교란된 전도체에 의존하는지를 결정하는데 설계의 그래픽적 표현이 사용될 수 있다. 플로팅 랜덤 워크 경로는 플로팅 랜덤 워크 경로가 하나 이상의 교란된 전도체에 의존하는 경우 수정될 수 있다. 플로팅 랜덤 워크 경로는 플로팅 랜덤 워크 경로가 하나 이상의 교란된 전도체에 의존하지 않는 경우 유지될 수 있다.
본 발명 및 본 발명의 부가적인 특징 및 장점은 후술할 발명의 상세한 설명 및 도면을 참조하여 완전하게 이해할 수 있을 것이다.
플로팅 랜덤 워크 기법을 사용하면 다양한 현저한 장점이 나타낸다. 첫째로, 플로팅 랜덤 워크 기법은 구성의 수(K)와 완전히 독립적으로, 매우 많은 수(K)의 유사 구성을 시간 내에 효율적으로 해결하는데 사용될 수 있다. 둘째로, 플로팅 랜덤 워크 기법의 복잡성은 설계상의 전도체의 수와 독립하며, 이에 따라 크고 매우 복잡한 전도체 시스템의 효율적인 취급을 가능하게 한다. 셋째로, 플로팅 랜덤 워크 기법은 매트릭스 어셈블리(matrix assembly) 또는 시스템 풀이와 관련되지 않기 때문에 메모리 활용의 관점에서 극히 효율적이다. 넷째로, 플로팅 랜덤 워크 기법은 에러 경계(error bounds)의 중간 결과(intermediate results)를 보고하는 기능을 제공하여, 이는 현재의 도출 케이스가 요구하는 정확성에 부합하는 기준이 필요하지 않은 설계를 가능하게 한다. 다섯째로, 플로팅 랜덤 워크 기법은 병렬화하도록 수정가능하며, 이에 따라 멀티 스레드, 멀티 코어 컴퓨터 아키텍처에서의 현재 기술 발전을 활용할 수 있다. 본 교시 내용에서, 플로팅 랜덤 워크 기법은 3차원 멀티 레이어 유전체 구성을 효율적으로 취급하도록 구성된다.
본 명세서에 제시된 기법은 예컨대 설계의 변화가 작을 때는 집적 회로 설계 의 민감도 변동 커패시턴스 분석(sensitivity variational capacitance analysis)과 관련되고, 예컨대 설계의 변화가 클 때는 집적 회로 설계의 증분 변동 커패시턴스 분석(incremental variational capacitance analysis)과 관련된다. 예를 들어, 도 2는 집적 회로 설계에서 전도체들 간의 커플링 커패시턴스 민감도를 결정하는 예시적인 방법(200)을 설명하는 도면이다. 단계(202)에서, 설계로부터의 관심 대상 전도체들 간의 커플링 커패시턴스(즉, 공칭 커플링 커패시턴스(nominal coupling capacitance))는 플로팅 랜덤 워크 기법(floating random walk technique)을 사용하여 계산된다. 플로팅 랜덤 워크 기법은 이하에서 기술된다. 그러나 일반적으로 플로팅 랜덤 워크 기법은 임의의 전도체에서 시작하여 다른 타깃 전도체에서 종료(terminate)하는 하나 이상의 플로팅 랜덤 워크 경로를 생성하는 것과 연관된다. 이러한 플로팅 랜덤 워크 경로의 설정은 전도체들 간의 커플링 커패시턴스를 계산하는데 사용될 수 있다.
단계(204)에서, 설계로부터의 전도체들 중 하나는 교란이 될 것으로 선택된다. 후술할 바와 같이, 방법(200)은 수회 반복되어 복수의 전도체의 교란을 포함할 수 있다. 교란은 집합적으로, 전도체의 부분집합 또는 모든 전도체 상에서 이루어질 수 있다. 전도체의 부분집합이 선택될 때, 선택 기준으로는 전도체에 이루어지는 교란의 상대적 또는 절대적인 크기 및 선택된 전도체가 그 전도체가 속하는 전기 네트워크의 총 커패시터에 미치는 기여도를 포함할 수 있다. 이하의 내용에서 명백해 지다시피, 전도체 중 임의의 하나를 교란시키는 것에 의해 선택된 전도체의 기하 형상의 변화에 기초하여 설계의 커패시턴스 민감도 분석을 할 수 있다. 집적 회로의 정상 동작 중 전도체의 형상에 미세한 변화가 일어날 수 있다. 민감도 분석은 이러한 변화를 시뮬레이션한다. 본 명세서에서 사용되는 용어 "미세한(slight)"는 전도체의 임의의 파라미터에 있어서의 10% 이하의 변화를 지칭한다. 예컨대, 후술할 바와 같이, 임의의 전도체의 모서리가 교란될 때(변화될 때), 변화가 교란 전-후를 비교하여 전도체 기하 형상의 약 10퍼센트 이하의 영향을 주는 경우, 민감도 분석을 위해 변화는 미세한 것으로 여겨진다. 자세한 내용은 이하를 참조한다.
단계(206)에서, 단계(204)에서 선택되는 전도체의 모서리는 교란될 것으로 선택된다. 교란될 모서리는 수행되는 전기 분석의 형식에 따라서 선택된다. 예시로서만, 신호 무결성 분석(signal integrity analysis)이 필요한 때, 전도체의 수직 모서리가 선택된다. 이 프로세스에서는, 선택된 모서리에서 하나 이상의 플로팅 랜덤 워크 경로가 종료하는 것으로 가정된다. 단계(208)에서, 선택된 모서리는 내측으로 교란된다. 위에서 강조한 바와 같이, 민감도 계산에서 교란은 관심 대상 기하 파라미터의 공칭 값의 약 10퍼센트 이하로 설정된다. 이하에서 설명할 바와 같이, 본 발명의 민감도 분석은, 교란이 작은 이상, 교란이 파라미터의 증가 또는 감소에 대응하는지에 의존하지 않는다. 따라서, 방법(200)의 모든 반복에 대해, 임의의 전도체의 선택된 모서리가 내측으로 교란될 수 있다. 즉, 파라미터 교란으로 계산 도메인(computational domain)이 확장된다.
일단 모서리가 내측으로 교란되면, 교란되지 않은 모서리에서 일단 종료했었던 플로팅 랜덤 워크 경로는 영향받을 것이다. 즉, 플로팅 랜덤 워크 경로는 미완 성된 경로로 끝날 것이다. (전술한) 단계(202)로부터의 수 개의 플로팅 랜덤 워크 경로는 시작한 교란되지 않은 모서리에서 종료하지 않을 가능성이 높다. 따라서, 분석에 집중하기 위해, 단계(210)에서는 어느 경로가 교란되지 않은 모서리에서 본래대로 종료하였는지에 대한 판단이 이루어질 수 있다.
단계(212)에서, 미완성된 경로가 다시 모서리(교란된 모서리)에서 종료하거나 벗어날 때까지(즉, 일부 확장된 경로는 탈선하며, 타깃 전도체에 도달하지 않음) 수정되며, 이 경우 확장된다(예컨대, 후술할 도 3 참조). 단계(214)에서 커플링 커패시턴스는 재계산되며, 이 때, 확장된 플로팅 랜덤 워크 경로를 계산에 포함한다. 단계(216)에서, 커플링 커패시턴스 민감도는 교란된 모서리에 대해서 결정되며, 이는, 아래에서 상세히 설명할 바와 같이, 교란되지 않은 (공칭) 상태로부터의 커플링 커패시턴스(단계(202)) 및 교란된 상태로부터의 커플링 커패시턴스(단계(214))에 기초한다.
방법(200)의 단계는 원하는 수의 전도체의 교란이 수행될 때까지 반복될 수 있다(이상의 내용 참조). 이상의 내용으로부터 명백한 바와 같이, 교란된 모서리는 커플링 커패시턴스 계산과 연관된 전도체 상에 있다. 본 명세서에서의 커패시턴스 민감도 기법은, 교란된 모서리가 커플링 커패시턴스 계산과 연관되지 않은 전도체에 있는 상황을 처리한다(이하 참조).
도 3은 커플링 커패시턴스 계산과 연관된 전도체의 모서리의 교란을 설명하는 도면이다. 도 3은 방법(200; 도 2)의 예시적인 반복을 도식화한 도면이다. 도 3에서 전도체들(302, 304, 306)은 "전도체 i", "전도체 j" 및 "전도체 k"로 라벨링 된다. 플로팅 랜덤 워크 경로(308)는 전도체(302) 주위 가우시안 표면(Gaussian surface)에서 시작하여(플로팅 랜덤 워크 프로세스에 대한 이하의 내용 참조) 전도체(304)의 교란되지 않은 모서리(311) 상에서 예비적으로 종료하도록 생성되었다. 플로팅 랜덤 워크 경로(308)는 무작위로 선택된 일련의 지점들, 즉 가우시안 표면 상의 지점(지점(309a))과 전도체들 간의 최대 경계 입방체(maximal bounding cubes: 310) 상의 지점(지점(309b))을 따른다(플로팅 랜덤 워크 프로세스에 대한 이하의 내용을 참조). 이러한 예비적 플로팅 랜덤 워크 경로는 본 명세서에서 공칭 경로라고 지칭된다. 공칭 경로는 어떠한 전도체도 변화되거나 수정되지 않은 경우에 대해 실행되는 플로팅 랜덤 워크 경로에 대응된다. 전도체(304)의 모서리(311)가 교란된 때, 플로팅 랜덤 워크 경로(308)는 미완성 상태가 된다. 민감도 분석을 위해 미세한 교란으로 하는 교란 δ에 대해, δ는 예컨대 공칭 치수 j공칭의 10% 이하여야 한다는 것에 주의한다. 방법(200)에 따르면, 이후 플로팅 랜덤 워크 경로(308)가 벗어나거나(escape; 예컨대 경로(308a)), 전도체(304)의 교란된 모서리(312)에서 종료할 때까지(예컨대, 경로(308b)) 플로팅 랜덤 워크 경로(308)는 수정, 즉 확장된다. 다른 공칭 플로팅 랜덤 워크 경로(314)는 전도체(302) 주위 가우시안 표면상에서 시작되고 전도체(306)에서 종료하는 것으로 나타난다. 플로팅 랜덤 워크 경로(314)는 플로팅 랜덤 워크 경로(308)와 동일한 방법으로 생성된다. 그러나 플로팅 랜덤 워크 경로(314)가 교란된 전도체와 연관되지 않기 때문에, 수정되지 않은 상태로 유지된다. 공칭 경로 및 확장된 경로로부터의 커패시턴스 계 산은 교란된 모서리(312)에 대한 커패시턴스 민감도를 계산하는데 사용될 수 있다. 예컨대 후술할 도 4를 참조한다.
도 4는 커패시턴스 민감도를 결정하기 위해 공칭 및 교란 후 플로팅 랜덤 워크 경로를 사용하는 예시적인 방법(400)을 설명하는 도면이다. 설명을 위해 방법(400)은 도 3에 도시되고 위에서 설명한 예시적인 구성의 환경에서 설명될 것이지만, 일반적으로 임의의 전도체 구성에 적용가능하다. 단계(402)에서 생성된 임의의 플로팅 랜덤 워크 경로에 대해, 경로가 교란된 전도체에서 종료하였는지에 대한 결정이 이루어진다. 예컨대, 도 3을 참조하여, 경로(308)는 교란된 전도체에서 종료하고 경로(314)는 교란된 전도체에서 종료하지 않는다. 만약 문제의 경로가 교란된 전도체에서 종료하면, 단계(404)에서 공칭 경로(교란 이전 경로)의 값이 설계에 대해 공칭 커패시터(nominal capacitance)에 추가된다. 예컨대, 도 3을 참조하여, 경로(308)가 교란된 전도체 j에서 종료하기 때문에, 경로 값은 공칭 커패시턴스 Cij에만 추가된다. 이후 경로는 교란된 전도체(또는 잠재적으로 다른 전도체)에서 다시 종료할 때까지 확장되고, 단계(406)에서, 확장된 경로 값은 교란 커패시턴스에 추가된다. 예컨대, 도 3을 참조하여, 교란된 경로 값은 교란 커패시턴스 에 추가된다. 경로가 계속되는 때에 경로가 타깃 전도체(도 3의 경우 타깃 전도체가 전도체 j임)와는 다른 전도체로 도달(land on)할 수 있는 선택사양을 포함하는데 인덱스 m이 사용된다.
한편, 문제의 경로가 교란된 전도체에서 종료하지 않는 경우, 단계(410)에 서, 경로 값은 공칭 및 교란 커패시터에 모두 추가된다. 예컨대, 도 3을 참조하여, 경로(314)는 교란되지 않은 전도체 k에서 종료하기 때문에, 경로 값은 공칭 커패시턴스 Cik및 교란 커패시턴스 에 추가된다. 단계(410)에서, 커패시턴스 민감도(capacitance sensitivity: C.S.)는 변화된 파라미터, 즉 교란된 모서리에 e대해 정의된다. 예컨대, 도 3을 참조하여, 파라미터 Pj에서의 변화 δj 에 대한 민감도 Cik는 로 정의된다. 교란된 전도체가 커패시턴스 계산의 일부가 아닌 경우(아래 참조), 교란 커패시터에 대한 커패시턴스의 민감도는 0인 것에 주의한다.
본 발명의 플로팅 랜덤 워크 기반의 유한 차동 민감도 분석은 (교란이 작은 이상) 파라미터 교란의 정확한 크기 또는 이러한 교란이 파라미터의 증가 또는 감소에 대응하는지에 의존하지 않는다. 결과적으로 기하학적 교란은 언제나 계산 도메인이 확장되거나 이와 균등하게 (예컨대, 도 3의 전도체 j에서 δ 이동(shift)으로 설명한 바와 같이) 금속(전도체) 도메인이 줄어들도록 항상 정의될 수 있다. 계산 도메인은 이러한 구조 하에서 확장되기 때문에, 모든 변이 입방체(transition cube)가 재사용될 수 있다. 그러나 (교란 전에) 교란된 경계선에 의해 제한되었던(constrained) 이러한 입방체는 (교란 후) 교란된 기하 형상에서의 임의의 전도체 모서리와 접촉하지 않을 것이다. 결과적으로, 이러한 변이 입방체로 인해, 정 지 확률은 0이다. 이러한 새로운 특성은 공칭 및 교란된 기하 형상에서의 랜덤 워크 간의 차이가 공칭 기하 형상에서의 경로가 기하학적 교란을 정의하는 임의의 전도체 모서리에서 종료할 경우(예컨대, 도 3의 종료 지점 p 0) 및 임의의 전도체 모서리에서만 종료한 경우 발생한다는 것을 나타낸다. 이러한 경로는 교란된 기하 형상에서 정지하지 않을 것이며, 따라서 교란된 기하 형상에 대해 반드시 연속될 것이다. 연속된 경로 값은 종료한 전도체에 기초하여 적절한 커패시턴스로 추가된다. 이러한 논의는 전도체 j와 연관된 파라미터 Pj의 변화 δj 에 기인한 커패시턴스 Cix,x∈{1, 2...N}의 상대적인 변화를 계산하는데 동기가 된다.
경로 연속 단계는, 플로팅 랜덤 워크가 전도체 표면으로부터 거리 δ 떨어진 곳에서 시작하는 것으로 해석되고, 랜덤 워크가 전도체 j의 표면을 지나 연속하는지를 결정하는 것으로 해석될 수 있다(도 3). 따라서 커패시턴스의 교란은 연속하려고 하는 경로의 수에 비례한다(도 3의 경로(308a)). 이러한 해석은, 교란된 시스템이 매우 작은 수의 단계에서 평균적으로 모인다는(converge) 것을 밝혀낸다. 사실상, 공칭 및 교란된 시스템의 커패시턴스 간의 차이가 작기 때문에, 대부분의 워크는 하나의 반복(iteration)으로 전도체 j에서 종료된다(도 3의 경로 308b).
도 5는 플로팅 랜덤 워크 기법을 사용하여, 두 개의 전도체들, 즉 제1 전도체와 제2 전도체 간의 커플링 커패시턴스를 결정하는 예시적인 방법(500)을 설명하는 도면이다. 단계(502)에서 설계로부터 두 개의 전도체가 선택된다. 예컨대, 도 3에 도시된 구성을 다시 참조하면, 전도체들(302, 304)은 커패시턴스 분석을 위해 선택된 전도체들이다. 단계(504)에서 가우시안 표면이 전도체들 중 하나 주위에 생성된다. 프로세스는 어떠한 전도체에서도 시작될 수 있다. 이 경우, 가우시안 표면은 제1 전도체 주위에 임의로 생성된다. 예컨대, 가우시안 표면이 전도체(302) 주위에 생성되는 도 3을 참조한다.
단계(506)에서, 지점은 가우시안 표면에 무작위로 선택된다. 예컨대, 지점(309a)이 가우시안 표면 상에 무작위로 선택되는 도 3을 참조한다. 단계(508)에서 최대 경계 입방체(maximal bounding cube)는 무작위로 선택된 지점을 포함하도록, 예컨대 그 중앙이 무작위로 선택된 지점에 위치하도록 구성된다. 예컨대, 경계 입방체(310)의 중앙이 지점(309a) 주위에 위치하는 도 3을 참고한다. 경계 입방체는 최근접 전도체의 모서리로 확장하지만 전도체를 포함하지 않도록 구성된다. 단계(510)에서, 지점은 경계 입방체의 경계선 상에서 무작위로 선택된다. 예컨대, 지점(309b)이 일련의 제1 경계 입방체(310)의 경계선 상에서 선택되는 도 3을 참조한다.
단계(508, 510)는 플로팅 랜덤 워크 경로가 타깃 전도체(이 경우 제2 전도체)에서 종료될 때까지 n회 반복된다. 단계(512)에서 플로팅 랜덤 워크 경로는 선택된 전도체들 간의 커플링 커패시턴스를 계산하는데 사용된다.
플로팅 랜덤 워크 기법은 전도체 i 및 전도체 j간의 커패시턴스 Cij(예컨대, 도 3 참조)를 규정된 전도체 포텐셜의 다차원(무한차원일 수 있음) 적분으로서 표현하는 것에 기초한다. Cij를 도출할 때, 나머지 전도체는 0 포텐셜이고, 전도체 j 는 단위 포텐셜로 가정된다. 공식은 커패시턴스 Cij, 또는 이와 균등한 전도체 i에서의 총 전하 q를 전자장 의 함수로 표현하는 것으로 시작한다.
여기서, S0는 전도체 i 주위의 가우시안 표면이며, 는 대응하는 법선(corresponding normal)이고, φ(η (0))는 정전기 포텐셜이다. 본 사상은 그린(green) 함수를 사용하여 포텐셜 φ(η (0)) 주위의 경계선의 포텐셜의 함수로서 작성한 것이다. 이러한 경계선은 도메인이 균일(homogeneous)한 경우 임의적이다(멀티 레이어 매체가 효율적으로 다루어질 수 있도록 균일성 제약이 완화될 수 있다. 이하 참조). 플로팅 랜덤 워크 기법의 기본 형태에서, 지점 η (0)의 포텐셜은 η (0) 주위에 그 중앙이 위치하는 가장 큰 경계 입방체 S1의 경계선에서의 포텐셜의 관점에서 기록되고, 최근접 전도체(그러나, 모든 전도체를 포함하지는 않음)의 모서리로 확장된다. 따라서, 포텐셜은 아래와 같이 주어진다.
여기서 G(η (0),η (1))는 사각형 S1 도메인에서의 라플라스 방정식과 연관된 그린의 함수이다. 플로팅 랜덤 워크 기법의 주요 사상 중 하나는 G(η (0),η (1))를 확률 밀도 함수로서 해석하는 것이다. 이는 조화 함수의 극대 원칙(maximum principle of harmonic function) 및 해결 이론의 고유성(uniqueness of the solution theorem)으로부터 직접 유도되며, 이는 전체 경계선이 단위 포텐셜을 가지는 경우 전체 사각형 도메인 내의 라플라스 방정식의 해 역시 일정한 단위 포텐셜, 즉 이 되기 때문이다.
이러한 확률적 해석으로서, 임의의 변이 사각형의 그린 함수는 경계선에서의 지점 η (1) 와 연계된 사각형 내의 지점 η (1)의 가능성을 측정하는 변이 확률로써 식별될 수 있다. 후술할 바와 같이, 변이 사각형 및 변이 확률의 용어가 사용될 것이며, 후자는 그린 함수와 서로 교환하여 사용할 수 있다.
구성에 의하여, 경계 사각형의 경계선의 일부는 일부 전도체 경계선의 적어도 일부와 접촉하며 이에 따라 미리 정해진 포텐셜을 갖는 것에 주목한다. 따라서 위의 방정식 2는 아래와 같이 다시 작성될 수 있다.
여기서, K1은 특정 포텐셜을 갖는 경계선의 일부이고, U1은 어떠한 전도체에도 접촉하지 않는 경계선의 일부이며, 따라서 그것의 포텐셜은 특정되지 않고 아직 결정되지 않는다. U1 상의 지점과 연관된 알려지지 않은 포텐셜은 이상에서 설명한 바와 같이 다른 경계 사각형 상의 포텐셜의 관점에서 다시 작성된다.
이 프로세스는 순환적으로 반복되어, 이하의 확장의 결과를 얻는다.
기호 Si=Ki∪Ui는 다차원 적분을 기술하는데 사용된다. 여기서, Ki는 포텐셜이 알려진 표면 Si의 일부이고, Ui는 포텐셜이 알려지지 않은 표면 Si의 일부이다. 생성된 다차원 적분은 이후 무작위로 번역될 수 있는 몬테 까를로 적분(Monte Carlo integral)을 사용하여 계산된다. 각각의 랜덤 워크는 일련의 랜덤 단계들로 이루어진다. 랜덤 워크는 랜덤 단계가 전도체 경계선으로부터 거리 ε 내에 포함되는 경우 중지된다. 결과적으로, 커패시턴스 공식, 즉 방정식 4는 이하와 같이 플로팅 랜덤 워크를 구현하면서 이산화된다(discretized).
여기서, △im는 표면 m상의 im번째 증분 거리이다. Cij를 도출할 때, j번째 전도체를 제외한 모든 전도체는 그라운드되는 것으로 가정한다는 것에 주의한다. 결과적으로, 모든 Cix:x∈{1, 2, ...,N}(N은 전도체의 총 개수)를 동시에 도출할 수 있다.
플로팅 랜덤 워크 기법을 사용하면 다양한 현저한 장점이 나타낸다. 첫째로, 플로팅 랜덤 워크 기법은 구성의 수(K)와 완전히 독립적으로, 매우 많은 수(K)의 유사 구성을 시간 내에 효율적으로 해결하는데 사용될 수 있다. 둘째로, 플로팅 랜덤 워크 기법의 복잡성은 설계상의 전도체의 수와 독립하며, 이에 따라 크고 매우 복잡한 전도체 시스템의 효율적인 취급을 가능하게 한다. 셋째로, 플로팅 랜덤 워크 기법은 매트릭스 어셈블리(matrix assembly) 또는 시스템 풀이가 관련되지 않기 때문에 메모리 활용의 관점에서 극히 효율적이다. 넷째로, 플로팅 랜덤 워크 기법은 에러 경계(error bounds)의 중간 결과(intermediate results)를 보고하는 기능을 제공하여, 이는 현재의 도출 케이스가 요구하는 정확성에 부합하는 기준이 필요하지 않은 설계를 가능하게 한다. 다섯째로, 플로팅 랜덤 워크 기법은 병렬화하도록 수정가능하며, 이에 따라 멀티 스레드, 멀티 코어 컴퓨터 아키텍처에서의 현재 기술 발전을 활용할 수 있다. 본 교시 내용에서, 플로팅 랜덤 워크 기법은 3차원 멀티 레이어 유전체 구성을 효율적으로 취급하도록 구성된다.
임의의 멀티 레이어 유전체 매체가 존재하는 경우에도 3차원 집적 회로 구성의 전도체들 간의 커플링 커패시턴스를 효율적이고 효과적으로 결정하는데 사용될 수 있는 플로팅 랜덤 워크 기법은 본 명세서에서 참고로 하는 대리인 정리번호 YOR920080649US1의 "Techniques for Computing Capacitances in a Medium With Three-Dimensional Conformal Dielectrics" (이후, "대리인 정리번호 YOR920080649US1"라고 함)에 설명되어 있다. 대리인 정리번호 YOR920080649US1에 설명된 기술은 본 발명의 기법에서 필요로 하는 커패시턴스를 결정하는데 사용될 수 있다.
위에서 강조한 바와 같이, 교란된 모서리가 커플링 커패시턴스 계산과 연관되지 않은 전도체 상에 있을 수 있다. 도 6에 도시된 방법(600)은 이러한 상황을 처리한다. 단계(602)에서, 설계로부터의 관심 대상 전도체들 간의 커플링 커패시턴스(즉, 공칭 커플링 커패시턴스)가 상술한 플로팅 랜덤 워크 기법을 이용하여 계산된다.
단계(604)에서, 설계로부터의 전도체들 중 하나가 교란될 것으로 선택된다. 방법(600)은 민감도 변동 커패시턴스 분석 또한 다루기 때문에, 교란은 위에서 정의한 바와 같이 작다. 방법(600)은 복수 번 반복되어 복수의 전도체의 교란을 수반할 수 있다. 위에서 설명한 바와 같이, 교란은 집합적으로, 전도체의 부분집합 또는 전도체의 전체에서 이루어질 수 있다. 전도체의 부분집합이 선택될 때, 선택 기준으로는, 전도체에 이루어지는 교란의 상대적 또는 절대적인 크기 및 선택된 전도체가 그 전도체가 속하는 전기 네트워크 전체의 총 커패시터에 미치는 기여도를 들 수 있다. 이하에서 명백해 지다시피, 전도체 중 임의의 하나를 교란시키는 것은 선택된 전도체의 기하 형상의 변화에 기초하여 설계의 커패시턴스 민감도 분석이 이루어질 수 있도록 한다. 전도체의 형상의 미세한 변화는 집적 회로의 정상 동작 중에 발생할 수 있다. 민감도 분석은 이러한 변화를 시뮬레이션한다.
단계(606)에서, 단계(604)에서 선택된 전도체의 모서리가 교란될 것으로 선택된다. 상술한 바와 같이, 모서리는 수행될 전기 분석의 유형에 따라 선택된다. 예시로서만, 신호 무결성 분석이 필요할 때, 전도체의 수직 모서리가 선택된다. 이 프로세스에서 커플링 커패시턴스 결정과 연관된 플로팅 랜덤 워크 경로(들)가 선택된 모서리에서 종료하는 것으로 가정된다(단계 (602) 참조). 단계(608)에서, 선택된 모서리가 내측으로 교란된다. 민감도 계산에서, 교란은 관심 대상 기하 파라미터의 공칭 값의 약 10퍼센트 이하로 설정된다. 본 발명의 민감도 분석은 교란이 작은 한, 교란이 파라미터의 증가 또는 감소와 대응하는지에 의존하지 않는다. 따라서, 방법(600)의 모든 반복에 대해, 임의의 전도체의 선택된 모서리는 내측으 로 교란될 수 있다.
상술한 바와 같이, 플로팅 랜덤 워크는 일련의 최대 경계 변이 입방체(maximal bounding transition cube)를 포함할 수 있고, 최대 경계 변이 입방체의 각각의 중앙은 변이 지점에 위치하며, 최근접 전도체의 모서리로 확장되지만 전도체를 포함하지는 않도록 구성된다. 따라서, 이 프로세스에서 교란된 전도체는 커패시턴스 계산에 연관되지는 않지만 경로에 영향을 줄 수 있다(즉, 경로를 따라 하나 이상의 변이 입방체와 접촉할 수 있다). 따라서, 모서리가 내측으로 교란된 때, 일단 교란되지 않은 모서리와 접촉했었던 변이 입방체는 유효할 수 있거나 더 이상 유효하지 않을 수 있다. 예시로서, 문제의 변이 입방체가 교란 후에도 최근접 전도체의 모서리로 여전히 확장하는지가 평가되어야 한다. 따라서, 단계(610)에서, 교란되지 않은 모서리와 본래대로 접촉했던 변이 입방체(들)가 식별된다. 단계(610)는 교란되지 않은 모서리 상에서 종료하지 않지만 교란에 의해 영향받는 경로를 식별한다. 그 후, 단계(612)에서, 단계(610)에서 식별된 변이 입방체(및 그에 따른 연관된 경로)가 여전히 유효한지에 대한 판정이 이루어진다. 변이 입방체/경로가 여전히 유효한 경우, 즉, 입방체가 교란 후에도 여전히 최근접 전도체의 모서리로 확장한 경우, 단계(614)에서, 연관된 랜덤 워크 경로가 유지된다. 그러나 변이 입방체/경로가 유효하지 않은 경우, 즉 교란 후에 변이 입방체가 최근접 전도체의 모서리로 확장하지 않는 경우, 단계(616)에서, 연관된 랜덤 워크 경로는 수정되어야 한다. 예시적인 일 실시예에 따르면, 가능한 한 많은 랜덤 워크 경로가 재사용된다. 따라서, 랜덤 워크 경로는 변이 입방체에서 시작하여 유효하지 않 은 입방체에 즉각적으로 우선하도록(precede) 수정될 수 있다. 그 후, 상술한 플로팅 랜덤 워크 기법이 경로를 완성하기 위해, 즉 경로가 타깃 전도체에서 종료하거나 벗어날 때까지 사용될 수 있다.
단계(618)에서, 커플링 커패시턴스가 재계산된다. 재계산된 커플링 커패시턴스는 단계(614)로부터의 값 또는 단계(616)로부터의 수정된 경로(들)를 포함한다. 단계(620)에서, 커플링 커패시턴스 민감도는 교란된 모서리에 대해 판정되고, 이는 이하에서 설명할 바와 같이, 교란되지 않은 (공칭) 상태의 커플링 커패시턴스(단계(602)) 및 교란된 상태의 커플링 커패시턴스(단계(618))에 기초한다.
방법(600)의 단계는 원하는 수의 전도체가 교란될 때까지 반복될 수 있다(상술한 내용 참조). 또한, 임의의 집적 회로 설계에 대한 커패시턴스 민감도를 얻기 위해, 방법(600)의 복수 번의 반복과 연관된 (상술한) 방법(200)의 복수 번의 반복은 모든 전도체 구성을 처리하기 위해 수행되어야 할 가능성이 크며, 전도체 구성에서 교란된 전도체는 커패시턴스 계산에 각각 연관되거나 연관되지 않는다.
도 7은 커플링 커패시턴스 계산에 연관되지 않은 전도체의 모서리의 교란을 도시하는 도면이다. 도 7은 방법(600)의 예시적인 반복에 대한 도식적인 도면이다(상술한 내용 참고). 도 7에서, 전도체들(702, 704, 706)은 각각 "전도체 i", "전도체 j" 및 "전도체 k"로 라벨링된다. 플로팅 랜덤 워크 경로(708)는 전도체(702) 주위의 가우시안 표면에서 시작하고 전도체(704)에서 종료하도록 생성되었다. 플로팅 랜덤 워크 경로(708)는 무작위로 선택된 일련의 지점, 즉, 가우시안 표면 상의 지점(지점(709a)) 및 전도체들 간의 최대 경계 입방체(710) 상의 지점 (지점(709b))을 따른다. 이 플로팅 랜덤 워크 경로는 본 명세서에서 공칭 경로로 지칭되기도 한다. 도 7에 도시된 예시적인 실시예에 따르면, 교란되는 전도체, 즉 전도체(706)는 커플링 커패시턴스 계산에 연관되지 않는다. 그러나 전도체(706)의 교란되지 않은 모서리(711)가 "문제의 최대 경계 입방체"로 라벨링된, 제2 최대 경계 입방체와 경로(708)를 따라 접촉한다는 것을 주의한다. 그러나 전도체(706)의 모서리(711)가 교란된 때에도(교란되어 더 이상 제2 경계 입방체와 접촉하지 않는 교란된 모서리(712)를 발생시킬 때에도), 문제의 경계 입방체는 최근접 전도체, 즉 전도체(702)의 모서리로 여전히 확장하기 때문에 유효한 상태를 유지한다. 따라서, 랜덤 워크 경로(708)는 수정 없이 유지될 수 있다.
이제, 본 발명의 플로팅 랜덤 워크 기반 커패시턴스 민감도 기법의 복잡성은 종래 이용되는 수반 방법의 복잡성과 비교한다. 임의의 기하 형상에서의 모든 전도체가 본 발명의 기법에 따라 교란된다고 가정하자. 이는 모든 시뮬레이션 경로가 연속된다는 것을 의미한다. 결과적으로, 모든 기하 변동(geometrical variation)에 대한 커패시턴스 민감도를 계산하는데 필요한 추가 비용이 가지는 공칭 커패시턴스를 계산하는 비용에 대한 비율이 연속 경로의 길이가 가지는 공칭 경로의 길이에 대한 비율에 비례한다. 모든 교란은 작은 변동을 기술하기 때문에, 어떤 커패시턴스도 현저히 변화하지 않는다. 결과적으로, 대부분의 경로 연속은 짧고, 이는 원하는 비율이 1보다 작고, 따라서 (공칭 및 교란된 시스템 풀이의) 총 복잡성은 공칭 커패시턴스의 풀이의 총 복잡성의 2 배보다 작다는 것을 의미한다. 이러한 범위는 (유한 차동에 기초하더라도) 이러한 방법이, 통상적으로 공칭 시스 템을 풀이하는 비용의 2.5배 내에서 공칭 및 민감도 분석을 모두 계산할 수 있도록 하는 수반 방법보다 계산에 있어 뛰어나다는 것을 나타낸다.
이제 본 발명의 기법의 민감도 분석과 연관된 에러를 설명한다. 랜덤 변수 및 가 정의되고, 여기서 N은 랜덤 워크의 총 수이고, {xi}와 {yi}는 공칭 및 교란된 랜덤 워크와 각각 연관되고, 동일하게 분산된 (i.i.d.) 일련의 랜덤 변수이다. (경로 공유를 발생시키는) 경로 연속 프로세스 때문에, (xi, yi) 쌍이 상호 연관된다. 플로팅 랜덤 워크로부터 얻은 결정론적 파라미터 교란 dP에 대한 커패시턴스 민감도(C.S.; capacitance sensitivity)는 아래와 같이 정의된다.
이하는 본 발명의 커패시턴스 민감도 추정량(capacitance sensitivity estimator)의 특징 중 일부를 요약한다. 식 6으로부터 얻은 민감도는 참 민감도(true sensitivity)의 편향되지 않은 추정량이다. 또한, 추정량과 연관된 평가 구간은 아래와 같이 주어진다.
N이 증가할수록, 차이의 변동이 로 점근적으로(asymptotically) 감 소한다는 것을 관측할 수 있다. 상이한 경로 간의 상호 연관이 민감도 추정량의 정확도를 향상시킨다는 것에 또한 주목한다. 샘플 공분산(sample covariance)이 아래와 같이 PMCC(Pearson product-moment correlation coefficient)로부터 계산된다는 것에 주의한다.
상호 연관 계수는 통상적으로 0.5보다 크다.
이상의 커패시턴스 민감도 기법이 작은 기하 교란(예컨대, 전도체(들)의 형상의 약 10% 이하의 변화)을 분석하는데 적합하지만, 교란이 클 때에는 상이한 접근 방법이 필요하다. 이하에서는, 민감도 분석을 통해 효율적으로 포착되는 것이 아닌, 복수의 큰 변동으로부터 얻는 "유사" 기하 형상의 커패시턴스를 계산할 수 있는 증분 변동 분석 기법(incremental variation analysis techniques)을 설명한다. 전도체 형상의 미세한 변화와 비교하여, 큰 변동은 관심 대상 기하 파라미터의 공칭 값의 10%보다 큰 전도체 형상의 변화를 포함한다. 진행하기에 앞서, 민감도 분석 또는 현저한 변동에 반대되는, "유사" 기하 형상이 의미하는 바를 명확히 하는 것이 중요하다. "유사" 기하 형상은 서로 동일한 기하 위상을 가지는 형상이며, 기하 형상을 설명하는 일부 파라미터에 대해서만 상이하다. 이하에서, 구성이라는 용어는 본래 (공칭) 기하 형상의 파라미터의 부분 집합을 변경시킴으로써 구성된 기하 형상을 지칭하는데 이용될 것이다. 또한, "고차원(저차원)"이라는 용어는 많은(적은) 수의 공칭 기하 형상의 기하 파라미터를 변경시킴으로 구성되는 기 하 형상을 지칭하는데 이용될 것이다.
모든 가능한 "유사" 구성의 수는 기하 파라미터의 총 수에 지수적(exponentially)으로 의존한다. 따라서, 기법은 대부분 저차원 모델에 항상 제한된다. 부분 공간 재활용(subspace recycling)과 같은 효율적인 기법이 많은 수의 구성의 풀이를 가속시키는데 이용되는 경우에도, 시스템 매트릭스의 더 큰 교란으로, 교란된 매트릭스에 의해 포괄되는 부분 공간이 공칭 구성에 의해 포괄되는 부분 공간으로부터 현저히 변동한다는 사실을 피할 수 없다. 이하에서는, 플로팅 랜덤 워크 기법과 연관된 주요 계산에 있어서의 장점 중 하나, 즉 고차원 구성의 커패시턴스의 계산의 효율성을 설명한다.
도 8은 유사 기하 형상을 가지는 집적 회로 설계의 커플링 커패시턴스를 결정하는 예시적인 방법(800)을 설명하는 도면이다. 상술한 바와 같이, 유사 기하 형상의 개념은 설계가 서로 동일한 기하 위상을 가지고 있지만 기하 형상을 설명하는 하나 이상의 파라미터에 대해서는 서로 상이하다는 사실과 관련된다. 예시로서만, 두 개의 집적 회로 설계가 전도체의 동일한 레이아웃(즉, 개수 및 배치) 즉, 동일한 위상을 가지지만 하나 이상의 전도체의 기하 형상이 두 개의 설계에 있어 상이한 경우, 두 개의 집적 회로 모두는 유사 기하 형상을 가지는 것으로 간주된다. 기하 변동이 작은 한, 유사 기하 형상의 개념 또한 상술한 민감도 분석에 적용될 수 있다는 것에 주의하는 것이 중요하다.
단계(802)에서, 플로팅 랜덤 워크 기법이 본래 (공칭) 집적 회로 설계 구성에 대해 랜덤 워크 경로를 생성하기 위해 이용된다. 플로팅 랜덤 워크 기법은 상 술한 바와 같다. 그 후, 경로는 (상술한) 공칭 구성의 전도체들 간의 커플링 커패시턴스를 결정하기 위해 이용된다. 단계(804)에서, 공칭 경로는 새롭고, 기하적으로 유사 구성으로 맵핑된다. 새롭고, 기하적으로 유사 구성은 공칭 구성의 하나 이상의 전도체를 교란시키는 것에 의해 얻어질 수 있다. 예시적인 실시예에 따르면, 위에서 정의한 바와 같이, 다수의 전도체가 교란되고, 교란이 크다.
맵핑은 교란된 전도체를 포함하는 공간상에 공칭 경로를 중첩(superimpose)하는 것에 의해 이루어질 수 있다. 이 같은 중첩은 교란된 구성에서 모든 전도체 모서리의 위치에 대한 공칭 경로의 위치를 드러낸다.
단계(806)에서, 각 공칭 경로에 대해, 문제의 경로가 새로운 구성에 대해 유효한지에 대한 결정이 이루어진다. 상술한 바와 같이, 연관된 모든 변이 입방체가 최근접 전도체의 모서리로 연장하지만 어떤 전도체(들)도 포함하지 않는 경우, 경로는 유효하다. 문제의 경로가 유효한 경우, 단계(808)에서, 경로는 유지된다. 단계(808)에서 시작하는 프로세스는 모든 경로가 평가될 때까지 반복될 수 있다.
반면, 문제의 경로가 새로운 구성에 대해 유효하지 않은 경우, 단계(810)에서, 경로가 제1 비-재사용 변이 입방체로부터 시작하도록 수정(적어도 일부 재생)된다. 상술한 바와 같이, 단계(806)에서 시작한 프로세스는 모든 경로가 평가될 때까지 반복될 수 있다. 모든 경로가 평가되면, 단계(812)에서, 새로운 설계에 대한 커패시턴스가 계산될 수 있다. 공칭 또는 재생성된 각각의 경로는 커패시턴스 값에 대해 각자 기여한다. 이러한 기여는 한 번에 하나의 경로씩 공칭 또는 교란 커패시턴스에 대해 추가된다. 커패시턴스는 YOR920080649US1에서 주어진 이하의 식을 이용하여 계산될 수 있다.
여기서, C12는 제1 및 제2 전도체 간의 커플링 커패시턴스를 나타낸다. G(Ri1, Ri2)는 랜덤 워크 경로를 따르는 제1 경계 입방체의 그린 함수를 나타내고, 여기서 ri1은 제1 입방체의 중앙 지점을 나타내고, r12는 제1 입방체의 경계 지점을 나타낸다. G(Ri2, Ri3)는 랜덤 워크 경로를 따르는 제2 경계 입방체의 그린 함수를 나타낸다. 유사하게, G(Rim-1, Rim)는 랜덤 워크 경로를 따르는 m번째 및 마지막 입방체의 그린 함수를 나타낸다. 는 m번째 입방체를 위한 경계 적분 단계이고, 는 제2의 타깃 전도체 상에 할당된 포텐셜이다.
증분 변동 분석에 대한 일부 일반적인 설명이 제시된다. 단일 랜덤 워크 경로는 일반적으로 전도체 집합에 대한 산재된(sparse) 의존도를 갖는다. 즉, 단일 경로를 제한하는 전도체의 수가 전도체의 총 수와 비교할 때 매우 작다. 이러한 특성은 경로 종료의 가능성이 높기 때문에 밀집 구성에서는 더욱 강조된다. 결과적으로, 임의의 새로운 구성에 대해, 공칭 구성의 경로가 파라미터의 변동하는 부분 집합에 의해 제한되지 않을 경우, 이 같은 경로는 교란된 기하 형상의 커패시턴스를 계산하는데 재사용될 수 있다. 반면, 경로가 변동하는 전도체에 의존하면, 이 같은 경로는 제1 비-재사용 변이 입방체로부터 시작하도록 재시뮬레이션되어야 한다. 이 같은 경로의 수는 경로의 총 수와 비교할 때 매우 작기 때문에, 포워드 랜덤 워크 기법에 의해, 작은 수의 추가 경로를 생성하여 이전에 알고 있던 공칭 구성의 해로부터 새로운 구성의 해를 얻을 수 있다.
증분 분석의 개념은 이하와 같이 요약된다. 기하 변동을 설명하는 총 파라미터 집합은 K 개의 파라미터로 구성되는 것으로 가정한다. 구성 는 ji∈{1,...,K}인 j-터플(tuple) j=(j1,j2,...,jj)에 의해 인덱스된 파라미터를 변경시킴으로써 구성되는 기하 형상으로 정의된다. 또한, 는 공칭 구성이고, 이 같은 구성의 플로팅 랜덤 워크 시뮬레이션이 완료되었다는 것을 가정한다. 결과 경로는 로 표시된다. 경로는 그룹 으로 파티션(partition)되고, 각 그룹은 파라미터 ji에 의존하는 모든 경로를 포함하게 된다. 그룹이 서로 배타적이지 않다는 것에 주의한다. 그룹 의 경로의 수는 Nji로 표시된다. 구성 의 커패시턴스를 계산하도록 재시뮬레이션되는데 필요한 경로를 포함한 집합은 이하와 같이 주어진다.
이 같은 경로의 수는 집합의 카디널리티(cardinality)에 의해 주어지고 보다 적다. 결과적으로, 재시뮬레이션된 경로의 수는 변동하는 파라미터의 수가 증가함에 따라 감소한다.
그 후, 구성 을 시뮬레이션하기 위해 변동하는 모든 전도체에 의존하는 경로만이 재시뮬레이션되어야 한다. 결과적으로, 재시뮬레이션된 경로의 수는 j의 함수로서 엄밀하게 증가하는 것이 아니다. 재시뮬레이션될 것이 필요한 경로의 부분 집합을 설명했으며, 이제 잔여 경로와 경로 및 재시뮬레이션되는 방법을 설명한다.
증분 분석에 대해 상술한 가정과 동일한 가정이 유지된다. mj∈{1,...,K}이고 m < j인 m-터플 m=(m1, m2, ..., mm)에 의해 인덱스된 파라미터를 변경시키는 것에 의해 구성된, 모든 구성 의 모든 커패시턴스가 추출된 것으로 또한 가정한다. 결과적으로, 모든 구성 의 경로가 사용가능하다. 구성 의 커패시턴스를 계산하기 위해, 집합 의 경로가 재사용된다. 경로를 pm∈(여기서 m은 경로를 제한하는 파라미터의 색인을 포함하는 m-터플임)로 가정한다. 구조에 의해 이 같은 경로는 구성 에서 재시뮬레이션되었고, 따라서 의 랜덤 워크를 배치하는데 이용될 수 있다. 구성이 탑-다운 방식, 즉 공칭 구성에서 시작하여 순서대로 구성 을 완료하는 방식으로 시뮬레이션된다는 것을 의미한다.
마지막으로, 근접한 전도체만이 동일한 경로를 제한할 수 있기 때문에 본 발명의 기법이 전도체의 근접도를 본질적으로 설명한다는 것을 관측할 수 있다. 그러나 전도체가 이격되면 연관 경로가 교차점을 가지지 않을 확률이 높게 되고, 상술한 바와 같이 고차원 교란이 저차원 교란으로부터 직접적으로 얻어질 수 있다.
본 발명의 기법의 주목할 만한 세부 구현으로는 메모리 활용이 있다. 구성 의 커패시턴스가 순차대로 도출되면, 모든 시뮬레이션된 또는 재시뮬레이션된 경로의 세부 항목이 추적(저장)되어야 한다. 구체적으로, 변이 지점, 변이 사각형 및 모든 경로의 변이 사각형을 포함하는 전도체가 저장되어야 한다. 그러나 이와 같이 할 경우, 플로팅 랜덤 워크 알고리즘의 주요 장점 중 하나, 즉 메모리 사용이 필요없다는 것을 잃게 된다. 이러한 단점을 극복하기 위해, 모든 구성의 커패시턴스가 동시에 도출될 수 있다. 이는, 공칭 구성을 위한 경로를 생성하는 것, 예컨대 식 9에 의해 임의의 집합과 같은 경로를 필요로 하는 구성을 위한 경로만을 재시뮬레이션하는 것 및 경로(또는 재시뮬레이션 중 하나)를 재사용하는 것에 의해 이루어진다(이상의 내용, 예컨대 집합 에서 재사용된 경로를 참조) (공칭 또는 재생성된) 결과 경로는 모든 구성의 커패시턴스 벡터를 동시에 배치하는데 이용된다. 그 후, 다른 경로가 선택되고 단계는 필요한 신뢰 구간에 도 달될 때까지 반복된다. 당연히, 이 같은 프로세스는 (상이한 경로의 독립성의 결과로서) 단일 구성의 커패시턴스를 도출하는데 필요한 서로 다른 워크가 계산되는 순서(order)가 임의적이기 때문에 가능하다. 결과적으로, 추가 메모리가 필요 없고, 대부분의 계산이 재사용되면서 모든 구성의 커패시턴스 값이 동시에 계산된다.
한 번에 전체 구성에 대한 커패시컨스를 결정하는 대신, 방법(800)과 같이(이상에서 설명한 도 8 참조), 경로-대-경로 기반의 증분 변동 분석을 수행하는 것이 가능하다. 이 같은 접근 방법은 예컨대, 전도체의 많은 부분집합이 전도체의 수 및 상대 위치는 변화하지 않는 수정의 적용을 받을 때 바람직하다. 리소그라픽 변동에 기인하는 수정의 경우는 이 범주에 속한다. 특히, 도 9는 경로-대-경로 기반의 집적 회로 설계의 커패시턴스를 결정하는 예시적인 방법(900)을 도시하는 도면이다. 단계(902)에서, 플로팅 랜덤 워크 경로는 복수의 전도체들을 포함하는 임의의 공칭(본래) 집적 회로 구성을 위해 생성된다. 공칭 구성은 모든 차원의 변화(교란)가 이루어진 구성이다. 차원적인 교란은 전도체의 기하적인 변화를 나타낸다. 위에서 상세히 설명한 바와 같이, 기하 변화는 전도체 모서리를 내측으로 교란시키는 것을 포함할 수 있다.
단계(904)에서, 단계(902)에서 생성된 공칭 경로의 전도체 의존성이 판정된다. 이상에서 상세히 설명한 바와 같이, 랜덤 워크 경로는 일련의 변이 사각형에 기초할 수 있으며, 각각의 변이 사각형은 최근접 전도체의 모서리로 연장(즉, 전도체와 접촉)하지만 어떤 전도체(들)도 포함하지 않는다. 따라서, 연관된 전이 사각형에 의한 임의의 경로(예컨대, 공칭 경로)는 설계의 하나 이상의 전도체에 의존한 다(설계의 하나 이상의 전도체에 대한 교란에 의해 영향받을 수 있다). 각각의 전도체는 경로에 대한 의존 전도체로 간주되고 의존성 목록에 위치할 수 있다. 이 같은 의존성은 이하에서 설명할 도 10에서 그래픽적으로 도시된다(도 10에서 도시된 의존성은 본 발명의 기법에 따른 의존성 목록으로 간주될 수 있다). 이하에서 상세히 설명할 바와 같이, 전도체가 의존성 목록에 위치한다는 것은 목록 상의 전도체가 교란된 때, 공칭 경로의 일부가 재시뮬레이션이 필요하다는 것을 의미한다.
다음으로, 설계는 전도체, 플로팅 랜덤 워크 및 전도체 중 플로팅 랜덤 워크가 어떤 전도체에 의존하는지를 도시하기 위한 방법으로 그래픽적으로 표현된다. 예시적인 실시예에 따르면, 단계(905)에서, 전도체 의존성은 구성 트리를 생성하는데 이용된다. 예시적인 구성 트리는 도 10에서 제시되며, 이하에서 설명된다. 그러나 일반적으로 구성 트리는 다수의 레벨(L)와 다수의 노드(n)를 포함한다. 전도체 수는 (트리, 예컨대 공칭 구성의 시작 지점을 나타내는 가장 높은 위치의 노드를 제외하고) 각 노드와 연관된다. 트리에서의 노드의 수는 설계에서의 교란된 전도체의 총 수, 즉 2x에 기초하며, x는 설계에서의 교란된 전도체의 수이다. 교란된 전도체의 수가 커질수록, 계산의 정확도도 높아지고, 설계의 모든 전도체가 교란되는 실시예가 본 명세서에서 제시된다. 한 번에 교란되는 전도체의 수는 트리의 어떤 레벨 L이 현재 평가되고 있는지에 의존한다. 예를 들어, 트리의 제1 레벨에서 한 번에 하나의 전도체만이 교란된다. 트리의 제2 레벨에서 한 번에 두 개의 전도체가 교란된다.
트리를 위에서 아래로 설명한다. 따라서, 트리의 제1 레벨에서의 제1 노드에서 시작할 때, 그 노드와 연관된 전도체 번호가 교란된다. 전도체의 교란은 위에서 상세히 설명하였다. 단계(906)에서, 특정 노드/전도체 번호가 의존성 목록에 있는지에 대한 결정이 이루어진다. 위에서 강조한 바와 같이, 전도체가 의존성 목록에 있지 않은 경우, 공칭 경로(모든 변화가 기초하는 경로)가 교란에 의해 변화하지 않는다. 이와 같이, 단계(910)에서, 경로는 변화하지 않는다. 단계(906)에서 시작한 프로세스는 트리의 다음 노드/레벨에 대해 반복될 수 있다. 반면, 전도체가 경로에 대해 의존성 목록에 있는 경우, 공칭 경로는 교란의 결과로 수정, 즉 적어도 일부 재시뮬레이션이 필요하다. 그러나 동일한 노드 번호가 트리의 더 높은 상위 레벨, 즉 방법의 이전 반복 동안 이미 발견되었는지에 대한 결정이 단계(912)에서 처음으로 이루어진다. 이것이 프로세서의 첫 번째 순환인 경우, 의존 노드 번호가 발견된 것은 이번이 처음이다. 단계(210)는 이미 재시뮬레이션되었던 경로의 재시뮬레이션을 방지한다. 따라서, 경로가 이미 재시뮬레이션되었던 경우, 이전에 재시뮬레이션된 경로가 단계(914)에서 재호출된다. 그 후, 단계(906)에서 시작한 프로세스는 트리의 다음 노드/레벨에 대해 반복될 수 있다. 그러나 노드/전도체가 이전에 발견되지 않았던 경우, 단계(916)에서 경로는 재시뮬레이션된다. 다시 한번, 단계(906)에서 시작한 프로세스는 트리의 다음 노드/레벨에 대해 반복될 수 있다.
트리의 모든 레벨에서의 모든 노드가 평가되면, 단계(918)에서 트리의 각 노드에서의 커패시턴스에 대한 경로 기여도가 계산된다. 트리의 각 노드는 전도체의 구성을 나타내고, 각 노드에 대해 계산된 랜덤 경로는 구성의 커패시턴스에 대한 자기 자신의 기여도를 가진다. 이러한 기여도는 모든 노드에 대해 동시에 추가된다. 방법(900)은 설계의 다른 공칭 랜덤 워크 경로로 반복될 수 있다. 사용된 공칭 경로/방법(900)의 반복의 횟수는 필요한 정확도의 레벨에 의존한다. 즉, 플로팅 랜덤 워크 기법은 확률 밀도 함수의 이용을 수반하기 때문에, 경로의 수가 많아질 수록, 정확도의 레벨이 높아진다. 정확도의 레벨은 방법(900)을 실행하기 이전에 사용자에 의해 사전 설정될 수 있다.
도 10은 예시적인 구성 트리(1000)를 도시하는 도면이다. 트리(1000)는 4 개의 전도체를 가지는 예시적인 집적 회로 설계를 나타내며, 4개의 모든 전도체는 (상술한 도 9에서 설명한) 방법(900)에서 약술한 프로세스에 따라 교란된다. 따라서, 트리(1000)는 (0 내지 4로 라벨링되는) 24 또는 16개의 노드를 가진다. 설계에서의 의존성을 설명하는데 도움이 되도록, 코드화된 사각형이 각 노드 옆에 나타나고, 코드키가 트리의 왼쪽에 제시된다. 즉, 본 예시에서, 공칭 경로는 전도체들(2, 3)에 의존성을 가지지만, 전도체(1, 4)에는 의존성을 가지지 않는다. 따라서, 레벨 L1에서 시작하여 왼쪽에서 오른쪽으로 작동하면, 첫 번째 전도체(1; 즉 전도체(1)만) 교란된다. 공칭 경로가 전도체(1)에 의존성을 가지지 않기 때문에, 공칭 경로는 교란에 의해 변화하지 않는다. 다음으로, 전도체(2; 즉 전도체(2)만)가 교란된다. 공칭 경로는 전도체(2)에 의존성을 가지기 때문에, 공칭 경로는 교란에 기인하여 적어도 일부분 재시뮬레이션되어야 한다. 교란된 노드/전도체(2)는 이전에 발견되지 않았었기 때문에, 공칭 경로는 수정, 즉 재시뮬레이션된다. 동일한 과정이 전도체(3)로의 교란에 적용된다. 반면, 전도체(4)는 전도체(1)와 동일하게 교란된 때에 공칭 경로의 재시뮬레이션을 필요로 하지 않는다.
레벨 L2로 이동하면, 전도체(1, 2)가 교란된다. 상술한 바와 같이, 전도체(1)의 교란은 경로의 재시뮬레이션을 필요로 하지 않지만, 전도체(2)의 교란은 필요로 한다. 그러나 전도체(2)의 교란에 대한 경로는 위에서 볼 수 있는 바와 같이 레벨 L1에서 이미 재시뮬레이션되었다. 따라서, 전도체(2)의 교란에 기초한 재시뮬레이션된 경로는 재시뮬레이션되기 보다는 간단하게 재호출될 수 있다. 동일한 과정이 전도체들(1, 3)의 교란에 적용된다. 전도체들(1, 4)은 공칭 경로에 영향을 주지 않기 때문에 전도체들(1, 4)의 교란은 재시뮬레이션을 필요로 하지 않는다. 다음 그룹에서, 전도체들(2, 3)이 교란된다. 양 전도체의 교란은 공칭 경로에 영향을 주기 때문에 경로는 재시뮬레이션되어야 한다(전도체들(2, 3)의 변화에 기인하여 새로운 경로가 생성된 것을 표시하는 코드키 참조). 그 후, 전도체들(2, 4)은 교란된다. 전도체(4)의 교란은 경로에 영향을 주지 않기 때문에, 레벨 L1으로부터 전도체(2)에 대한 재시뮬레이션된 경로는 재호출될 수 있다. 전도체들(3, 4)의 교란에 대해 동일한 상황이 적용된다.
레벨 L3로 이동하여, 전도체들(1, 2, 3)이 교란된다. 전도체(1)는 경로에 영향을 주지 않기 때문에, 레벨 L2로부터 전도체들(2, 3)의 교란으로부터 얻은 재시뮬레이션된 경로가 재호출될 수 있다. 유사하게, 전도체들(1, 2, 4; 전도체들 중 전도체들(1, 4)은 경로에 영향을 주지 않음)가 교란된 때, 교란된 전도체(2)에 대한 재시뮬레이션된 경로는 레벨 L1로부터 재호출될 수 있다. 다음 그룹에서, 전도체들(2, 3, 4)이 교란된다. 전도체(4)는 경로에 영향을 주지 않기 때문에, 전도체들(2, 3)의 교란으로부터 재시뮬레이션된 경로는 레벨 L2로부터 재호출될 수 있다.
레벨 L4로 이동하면, 전도체들(1, 2, 3, 4)이 교란된다. 다시 한번, 전도체들(1, 4)은 경로에 영향을 주지 않기 때문에, 전도체들(2, 3)의 교란으로부터 재시뮬레이션된 경로가 레벨 L2로부터 재호출될 수 있다. 점선(1002)에 의해 원 내로 포함된 노드들이 강조하는 바는 재생성된 경로가 전도체(4)에 의존성을 가지는 드문 경우를 주의하여야 한다는 것이다. 이 경우, 전도체(4)의 교란은 경로의 재생성을 호출한다. 그 결과, 트리(1000)에서 제시된 시뮬레이션 중, 공칭 경로의 가능한 모든 구성이 평가된다. 이러한 문맥에서의 용어 "구성"은 변동하는 파라미터(즉, 전도체 기하 형상)에 의해 인덱싱되는 전도체 위상(즉, 설계의 전도체 레이아웃)의 인스턴스화(instantiation)를 지칭한다.
이제 구성 트리를 생성하는데 사용되는 일반적인 프로세스가 설명될 것이다. 초기 레벨(레벨 L0)은 구성 트리의 루트(root)이고 취해지는 모든 차원적 교란(dimensional perturbations)에 대한 공칭 구성이다. 레벨 L1은 공칭 구성에 대하여 한 개 및 한 개만의 전도체가 수정되는 구성으로 이루어진다. 레벨 L2는 공칭 구성에 대하여 두 개 및 두 개만의 전도체가 수정되는 구성으로 이루어진다. 일반적으로, 구성 트리 내의 레벨 Lx는 공칭 구성에 대하여 x개 및 x개만의 전도체가 수정되는 구성으로 이루어진다. 임의의 레벨 내의 노드는 이전 레벨 내의 부 모(parent) 노드를 넘어서 위에서 수정된 전도체의 인덱스로 라벨링된다. 구성을 중복 카운트하는 것을 방지하기 위하여, 신규 노드의 생성이 이전에 생성된 노드를 염두에 두고 이루어짐을 확실히 하면서, 트리 내의 각각의 레벨이 좌측에서 우측으로 채워져 나간다. 도 10을 참조하여, 제2 레벨에서, 노드 3은 노드 2의 자식(child)이지만, 노드 2는 노드 2의 자식이 아닌 방식에 주의한다. 이는, 위에서 설명한 바와 같이, 전도체(2, 3)가 수정된 구성(2, 3)이 이미 고려되었기 때문이다. 따라서, 트리 내의 구성은 공칭 구성에 대하여 그 구성에서 교란된 전도체들의 인덱스를 제공하는 노드의 라벨로 트리를 추적하여 올라감으로써 고유하게 결정된다. 트리의 크기는 수정이 적용된 전도체 집합의 크기에 관련 있음을 주목한다. n개의 전도체의 시스템에서 모든 전도체에 수정이 적용되는 경우, 트리의 크기는 2n이다. 오직 p<n개의 전도체에 수정이 적용되는 경우, 크기는 2p이다. 수정이 적용되는 전도체의 수가 증가할수록 증분 분석(incremental analysis)의 장점도 커질 것이다.
상기에 기술된 바와 같은 커패시턴스 민감도 분석의 효용성은 도 11에 도시된 바와 같이 전도체 기하 형상의 변동에 대한 20개의 전도체 구조의 민감도를 계산하는 것에 의해 증명될 수 있다. 즉, 도 11은 20개의 전도체 기하 형상의 이차원 단면도인데, 여기서 각각의 전도체는 따라서 1 내지 20으로 라벨링된다. 전도체의 치수(dimension)는 x 및 y 축 상에 나노미터(nm)로 주어진다. 전도체(14)는 커패시턴스 벡터가 도출될 타깃 전도체이다. 구성(k)은, 다른 모든 전도체는 그 공칭 크기를 유지하도록 하면서, 임의의 전도체(k)의 폭 및 두께를 2퍼센트 감축시키는 것에 의해 형성된다. 구성의 총 수는 20이다. 결과적으로, 기하 형상의 민감도는 형상 변동(수축, 팽창)에 대하여 계산될 수 있다. 본 발명의 포워드 랜덤 워크(forward random walk: FRW) 기법으로부터 얻어지는 커패시턴스 C14, 19는 도 12 내의 서로 다른 모든 구성에 대하여 표준 경계 요소 기법(boundary-element method: BEM)으로부터 얻어지는 커패시턴스와 비교된다. 그래프(1200)에서, 는 x 축 상에 기입되고 (미터당 패러데이(F/m)로 측정된) 커패시턴스는 y 축 상에 기입된다. 신뢰 구간은 1퍼센트로 설정된다. 구성(21)은 공칭 구성을 나타낸다. 도 13은 랜덤 워크 상호 연관으로 인한 오류 소거(error cancellation)를 나타내는 상대 민감도를 도시한다. 그래프(1300)에서, 구성 인덱스는 x 축 상에 기입되고 상대 커패시턴스 변동은 y 축 상에 기입된다. 그래프(1300)에서, 커패시턴스 상대 변동의 백분율 ×100이 계산되는데, 여기서 i는 구성 인덱스이고, 는 공칭 커패시턴스이다. 교란된 구성과 공칭 구성 간의 상호 연관에 기인한 에러 소거로 인하여 절대 변동 의 정확도가 약 1%임이 관측된다. 표본 상호 연관 계수(sample correlation coefficient; 11)는 약 0.8이다. 플로팅 랜덤 워크 민감도 분석을 완료하는데 필요한 총 시간은 공칭 시뮬레이션 시간에 비해 단지 인자 1.39 만큼 큰데 반해(즉, 1.39배), 표준 유한 차동 기법(standard finite difference technique)에서는 20배, 표준 수반 기법(standard adjoint technique)에서는 2.5배이다. 나아가, 본 발명의 민감도 분석은 BEM 수반 민감도 분석보다 약 10배 빠르고, BEM 유한 차동 민감도 분석에 비해 약 100배 빠르다.
다음으로, 본 발명의 플로팅 랜덤 워크 기법이 교란된 기하 형상의 커패시턴스를 효과적으로 계산하는데 사용되는 방법이 설명된다. 본 발명의 초점은 민감도 분석을 통해 포착되지 않는 대규모 교란에 있다. 먼저, 도 14는 특정 개수의 전도체에 의존하는 경로의 백분율을 도시한다. 그래프(1400)에서, 전도체의 수는 x 축 상에 기입되고 경로의 수 (경로의 백분율)는 y 축 상에 기입된다. 그래프(1400)는 공칭 랜덤 워크 경로의 전도체에 대한 산재된(sparse) 의존성을 보여준다. 모든 경로 중 73퍼센트 이상이 다른 어떤 전도체와 접촉하지 않고 타깃 전도체에서 끝나는 것이 관측된다. 경로의 나머지 18퍼센트는 오직 타깃 및 목적지 전도체에만 의존한다. 나머지 경로 중 거의 모두가 세 개 또는 네 개의 전도체에 의존함이 관측된다. 결과적으로, 다섯 개 이상의 전도체에 영향을 주는 어떤 교란도 추가적인 노력을 거의 들이지 않고 시뮬레이션 될 수 있다. 이러한 산재된 의존성은 플로팅 랜덤 워크 기법의 근본적인 강점을 이룬다.
본 발명의 변동 분석 기법에 의해 얻어진 커패시턴스 C18,14 및 C13,14를 표준 경계 요소 기법으로부터 얻어진 커패시턴스와 비교하는 것에 의해, 도 15에서 본 발명의 변동 분석 기법의 정확성이 설명된다. 즉, 도 15는 확고한 BEM과 대비되는 본 발명의 플로팅 랜덤 워크 기반 변동 분석의 정확성에 대한 유효성을 검증하는 그래프(1500)이다. 그래프(1500)에서, 구성 인덱스는 x 축 상에 기입되고 커패시턴스(F/m로 측정됨) y 축 상에 기입된다. 비교는 9개의 서로 다른 구성에 대하 여 이루어진다. 이들 구성은 전도체(13, 15; 즉, 도 11에서 전도체(14)를 둘러싸는 우측 및 좌측 전도체)를, 인자 (0,0), (12.4퍼센트, 0), (25퍼센트, 0), (0, 12.5퍼센트), (0, 25퍼센트), (12.5퍼센트, 12.5퍼센트), (12.5퍼센트, 25퍼센트), (25퍼센트, 12.5퍼센트) 및 (25퍼센트, 25퍼센트)만큼 수축시키는 것에 대응된다. 모든 구성에 대하여 정확도는 5퍼센트 더 양호하다. 나아가, 도 16에서 본 발명의 플로팅 랜덤 워크 기반 기법을 사용하여 9개의 서로 다른 구성의 커패시턴스를 계산하는데 요구되는 시뮬레이션 시간이, 경로 재활용(path recycling)을 하지 않는 표준 방법에 있어서 통상적인 시간의 선형 증가와 비교되어 도시된다. 즉, 도 16은 본 발명의 플로팅 랜덤 워크 기반 변동 기법을 사용하여 추가 구성을 처리하는 것에 대한 누적 시뮬레이션 시간을 추정 표준 시간과 비교하여 도시하는 그래프(1600)이다. 그래프(1600)에서, 구성 인덱스는 x 축 상에 기입되고 정규화된 시간은 y 축 상에 기입된다. 경로 재활용이 이루어지는 플로팅 랜덤 워크(FRW) 기법 및 경로 재활용이 이루어지지 않는 플로팅 랜덤 워크(FRW) 기법이 도시된다. 본 발명의 기법의 부선형(sublinear) 복잡성이 명확하게 나타난다.
마지막으로, 이 관측은 다항식 정밀성(polynomial exactness; 3, 5, 7 및 9[14])의 확장에 필요한 20차원 공간 내의 모든 산재된 격자점(grid point)을 생성하는데 필요한 시간을 계산하는 것에 의해 유효성이 검증된다. 이러한 구성의 격자점의 총 수는 각각 41, 861, 12341 및 135751이다. 풀이(solve)의 수와 구성 당 평균 시뮬레이션 시간 간의 관계가 도 17에 도시된다. 도 17은 구성 수의 증가에 따른 평균 시뮬레이션 시간의 감소를 나타내는 로그-로그 플롯(1700)이다. 플 롯(1700)에서, "유사" 구성의 수는 x 축 상에 기입되고 구성 당 정규화 평균 시뮬레이션 시간은 y 축 상에 기입된다. 구성은 5자리의 산재 격자에 기초하여 구성된다. 105개의 구성을 풀이한 후에 추가 구성을 풀이하는데 필요한 시간이 7백만초(msec)라는 것이 추론될 수 있다. 유사 구성의 수가 증가할 때 구성 당 평균 시뮬레이션 시간이 감축되는 것이 관측된다. 실제로는, 12,341개의 구성 모두를 푸는데 필요한 총 시뮬레이션 시간은 본 발명의 기법에 의해 22개의 독립적인(independent) 구성을 푸는데 필요한 시간보다 작다(즉, 561배의 속도 증가에 대응되는, 모든 구성을 독립적으로 푸는데 필요한 시간의 0.2퍼센트보다 작다). 더욱이, 총 130,000개의 "유사" 구성을 푸는데 필요한 시간은 50개 미만의 독립적인 구성을 푸는데 필요한 시간과 동일하거나, 또는 동등하게 하나의 풀이 당 평균 시뮬레이션 시간의 세 자리 크기 만큼 감축된다.
이제 도 18로 돌아가면, 본 발명의 일 실시예에 따른, 집적 회로 설계에서 전도체들 간의 변동 커플링 커패시턴스를 분석하기 위한 장치(1800)의 블록 다이어그램이 도시된다. 장치(1800)는 본 명세서에 개시된 방법론들 중 하나 이상을 구현하기 위한 일 실시예를 나타내는 것으로 이해되어야 할 것이다.
장치(1800)는 컴퓨터 시스템(1810) 및 착탈가능 매체(1850)를 포함한다. 컴퓨터 시스템(1810)은 프로세스(1820), 네트워크 인터페이스(1825), 메모리(1830), 매체 인터페이스(1835) 및 선택적 디스플레이(1840)를 포함한다. 네트워크 인터페이스(1825)는 컴퓨터 시스템(1810)이 네트워크에 연결되는 것을 가능하게 하고, 매 체 인터페이스(1835)는 컴퓨터 시스템(1810)이, 예컨대, 하드 드라이브 또는 착탈가능 매체(1850)와 같은, 매체와 상호 작용하는 것을 가능하게 한다.
당업계에 공지된 바와 같이, 본 명세서에 설명된 방법 및 장치는 실행시에 본 발명의 실시예들을 구현하는 하나 이상의 프로그램을 포함하는 머신 판독가능 매체를 포함하는 제조물로서 배포될 수도 있다. 예를 들어, 머신 판독가능 매체는 일 집합의 플로팅 랜덤 워크 경로를 사용하여 상기 설계로부터 관심 대상 전도체들 간의 커플링 커패시턴스를 계산하고, 상기 전도체 중 하나 이상을 교란시키고, 상기 교란에 의해 영향받은 플로팅 랜덤 워크 경로 중 임의의 것을 수정하고, 상기 수정된 플로팅 랜덤 워크 경로를 포함하도록 상기 관심 대상 전도체들 간의 커플링 커패시턴스를 재계산하도록 구성된 프로그램을 포함할 수 있다.
프로그램은 또한 상기 교란될 설계로부터 전도체를 선택하고, 상기 선택된 전도체의 모서리를 선택하고 - 상기 플로팅 랜덤 워크 경로 중 하나 이상이 상기 모서리 상에서 종료함 -, 상기 선택된 전도체의 모서리를 상기 선택된 전도체의 기하 형상(geometry)을 약 10퍼센트 이하 변화시키는 양만큼 내측으로 교란시키고, 교란되지 않은 모서리 상에서 종료하는 상기 플로팅 랜덤 워크 경로 중 임의의 것을 상기 교란된 모서리로 연장하고, 상기 연장된 플로팅 랜덤 워크 경로를 포함하도록 상기 관심 대상 전도체들 간의 커플링 커패시턴스를 재계산하고, 상기 교란된 모서리에 대하여 커플링 커패시턴스 민감도를 판정하도록 구성될 수 있다.
나아가, 프로그램은 상기 교란되지 않은 모서리 상에서 종료하지 않지만 여전히 상기 교란에 의해 영향받는 상기 플로팅 랜덤 워크 경로 중 임의의 것을 식별 하고, 상기 식별된 플로팅 랜덤 워크 경로 각각이 여전히 유효한지를 판정하고, 상기 교란 후에 유효하지 않은 상기 식별된 플로팅 랜덤 워크 경로 중 임의의 것을 수정하도록 구성될 수 있다.
또한, 프로그램은 신규 집적 회로 설계를 생성하기 위하여 상기 하나 이상의 전도체를 교란시키고 - 상기 하나 이상의 전도체 각각은 그 전도체의 기하 형상을 약 10퍼센트 이상 변화시키는 양만큼 교란됨 - , 상기 플로팅 랜덤 워크 경로를 상기 신규 집적 회로 설계에 매핑하고, 상기 신규 집적 회로 설계에 매핑된 상기 플로팅 랜덤 워크 경로 각각이 상기 신규 집적 회로 설계에서 유효한지를 판정하고, 유효하지 않은 상기 신규 집적 회로 설계에 매핑된 상기 플로팅 랜덤 워크 경로 중 임의의 것을 수정하고, 유효한 상기 신규 집적 회로 설계에 매핑된 상기 플로팅 랜덤 워크 경로 중 임의의 것을 유지하고, 상기 신규 집적 회로 설계로부터 관심 대상 전도체들 간의 커플링 커패시턴스를 계산하도록 구성될 수 있다.
더욱이, 프로그램은 상기 플로팅 랜덤 워크 경로 중 임의의 하나에 대하여, 상기 플로팅 랜덤 워크 경로가 상기 전도체 중 어느 것에 의존하는지 판정하고, 상기 전도체, 상기 플로팅 랜덤 워크 경로 및 상기 플로팅 랜덤 워크 경로가 상기 전도체 중 어느 것에 의존하는지를 묘사하는 방식으로 상기 설계를 그래픽적으로 표현하고, 상기 전도체 중 하나 이상을 각각의 상기 교란된 전도체를 약 10퍼센트 이상 변화시키는 양만큼 교란시키고, 상기 플로팅 랜덤 워크 경로가 상기 하나 이상의 교란된 전도체에 의존하는지를 판정하기 위하여 상기 설계의 상기 그래픽적 표현을 사용하고, 상기 플로팅 랜덤 워크 경로가 상기 하나 이상의 교란된 전도체에 의존하는 경우, 상기 플로팅 랜덤 워크 경로를 수정하고, 상기 플로팅 랜덤 워크 경로가 상기 하나 이상의 교란된 전도체에 의존하지 않는 경우, 상기 플로팅 랜덤 워크 경로를 유지하도록 구성될 수 있다.
머신 판독가능 매체는 기록가능 매체(예컨대, 플로피 디스크, 하드 드라이브, 착탈가능 매체(1850)와 같은 광 디스크 또는 메모리 카드) 또는 전송 매체(예컨대, 광 섬유, WWW(world wide web), 케이블 또는 시분할 다중 접속(time division multiple access), 코드 분할 다중 접속(code division multiple access)을 이용하는 무선 채널 또는 다른 무선 주파수 채널을 포함하는 네트워크)일 수 있다. 정보를 저장할 수 있고 컴퓨터 시스템에 사용하기에 적합한 임의의 공지된 또는 개발된 매체가 사용될 수 있다.
프로세서(1820)는 본 명세서에 개시된 방법, 단계, 기능을 구현하도록 구성될 수 있다. 메모리(1830)는 분산되거나 로컬일 수 있고 프로세서(1820)는 분산되거나 하나일 수 있다. 메모리(1830)는 전기, 자기 또는 광 메모리 또는 이들의 임의의 조합 또는 다른 유형의 저장 장치로서 구현될 수 있다. 더욱이, 용어 "메모리"는 프로세서(1820)에 의해 액세스되는 어드레싱 가능한 공간(addressable space) 내의 어드레스로부터 판독될 수 있고, 그 어드레스에 기록될 수 있는 임의의 정보를 포함하기에 충분하도록 넓게 해석되어야 한다. 이러한 정의에 따르면, 네트워크 인터페이스(1825)를 통하여 액세스 가능한, 네트워크상의 정보는 프로세서(1820)가 네트워크로부터 정보를 검색할 수 있기 때문에 여전히 메모리(1830) 내에 있는 것이다. 프로세서(1820)를 구성하는 분산된 프로세서 각각은 자신의 고유 한 어드레싱 가능 공간을 가짐을 주목해야할 것이다. 또한, 컴퓨터 시스템(1810) 중 일부 또는 전부는 애플리케이션 특화 또는 범용 집적 회로에 통합될 수 있다는 것을 주목해야할 것이다.
선택적 비디오 디스플레이(1840)는 장치(1800)의 인간 사용자와 상호작용하는데 적합한 임의의 유형의 비디오 디스플레이이다. 일반적으로, 비디오 디스플레이(1840)는 컴퓨터 모니터 또는 다른 유사 비디오 디스플레이일 수 있다.
결론적으로, 본 명세서에서 제시된 것은 다수의 파라미터 변동에 대하여 커패시터 민감도를 효과적으로 계산하기 위한 향상된 플로팅 랜덤 워크 기법에 있어서의 새로운 유한 차동 기반 민감도 분석이다. 새로운 기법은 경계 요소 기법에 기초한 표준 수반 민감도 분석보다 10배 빠르다. 나아가, 공칭 커패시턴스 및 모든 민감도의 계산에 대한 추정 복잡도는 파라미터의 수에 관계없이 공치 커패시턴스만을 계산하는 것의 복잡도의 두 배 미만이다. 더욱이, 본 발명의 플로팅 랜덤 워크 기법으로부터 얻어진 민감도에 대하여 오류 범위(error bound)가 도출되었다.
또한, 본 명세서에서 제시된 것은 원래 기하 형상의 기하 파라미터에 대하여 동시에 비-극소 교란(non-infinitesimal perturbation)한 결과 초래되는 "유사" 구성의 커패시턴스를 계산하기 위한 새로운 플로팅 랜덤 워크 기법이다. 새로운 기법에 따르면, 일 집합의 유사 구성 내에서 단일 구성을 푸는데 필요한 평균 시간은 그 집합의 카디널리티가 증가됨에 따라 감소된다. 카디널리티 105의 일 집합의 유사 구성의 단일 구성에 대한 평균 시뮬레이션 시간은 세 자리 수 크기로 감소한다. 결과적으로, 130,000개가 넘는 유사 구성이 단지 50개의 독립적인 구성을 푸는데 필요한 시간 안에 풀릴 수 있었고, 이는 자연스럽게 리소- 및 CMP-인식 도출(litho- 및 CMP-aware extraction)에 부합할 것이다.
본 발명의 예시적인 실시예들이 본 명세서에 기술되었지만, 본 발명은 정확히 이들 실시예에 한정되는 것이 아니고, 당업자라면 본 발명의 범주를 벗어나지 않으면서 다양한 변경 및 수정을 가할 수 있음을 이해할 수 있을 것이다.
도 1은 SRAM 셀의 활성 영역에 위치한 웨이퍼 윤곽을 도시한 도면.
도 2는 본 발명의 실시예에 따라 집적 회로 설계에서 전도체들 간의 커플링 커패시턴스 민감도를 결정하기 위한 예시적인 방법을 설명한 도면.
도 3은 본 발명의 실시예에 따라 커플링 커패시턴스 계산과 연관된 전도체의 모서리의 교란을 설명한 도면.
도 4는 본 발명의 실시예에 따라 커패시턴스 민감도를 결정하기 위해 공칭(nominal) 및 교란 후(post-perturbation) 플로팅 랜덤 워크 경로를 사용하기 위한 예시적인 방법을 설명한 도면.
도 5는 본 발명의 실시예에 따라 집적 회로 설계에서 전도체들 간의 커플링 커패시터를 결정하기 위해 플로팅 랜덤 워크 기법을 사용하기 위한 예시적인 방법을 설명한 도면.
도 6은 본 발명의 실시예에 따라 집적 회로 설계에서 전도체들 간의 커플링 커패시턴스 민감도를 결정하는 다른 예시적인 방법을 설명한 도면.
도 7은 본 발명의 실시예에 따라 커플링 커패시턴스 계산에 연관되지 않은 전도체의 모서리의 교란을 설명한 도면.
도 8은 본 발명의 실시예에 따라 유사 기하 형상을 갖는 집적 회로 설계의 커플링 커패시턴스를 결정하기 위한 예시적인 방법을 설명한 도면.
도 9는 본 발명의 실시예에 따라 경로-대-경로(path-by-path) 기반의 집적 회로 설계의 커패시턴스를 결정하기 위한 예시적인 방법을 설명한 도면.
도 10은 본 발명의 실시예에 따르는 예시적인 구성 트리(configuration tree)를 도시한 도면.
도 11은 본 발명의 실시예에 따르는 20개의 전도체 기하 형상의 2차원 횡단면을 도시한 도면.
도 12는 본 발명의 실시예에 따라 도 11의 기하 형상에 대한 표준 경계-요소법(standard boundary-element method)으로부터 얻어진 것과 비교하여, 본 발명의 포워드 랜덤 워크 기법(forward random walk technique)로부터 얻어지는 커패시턴스 값들 간의 비교를 도시한 그래프.
도 13은 본 발명의 실시예에 따라 랜덤 워크 상호 연관(random walk correlation)에 기인한 에러 취소(error cancellation)를 나타내는 상대적 민감도를 도시하는 그래프.
도 14는 본 발명의 실시예에 따라 특정 수의 전도체에 의존하는 경로의 퍼센트를 나타내는 그래프.
도 15는 본 발명의 실시예에 따라 경계 요소 방법과 비교되는 본 발명의 플로팅 랜덤 워크 기반 변동 분석의 정확성을 검증하는 그래프.
도 16은 본 발명의 실시예에 따라 본 발명의 플로팅 랜덤 워크 기반 변동 기법을 사용하여 추가 구성을 처리하기 위한 누적 시뮬레이션 시간을 추정 표준 시간과 비교하여 도시하는 그래프.
도 17은 본 발명의 실시예에 따라 구성의 수가 증가함에 따라 평균 시뮬레이션 시간이 감소하는 것을 증명하는 로그-로그 플롯(plot).
도 18은 본 발명의 실시예에 따라 본 명세서에 제시된 하나 이상의 방법을 구현하기 위한 예시적인 시스템을 나타내는 도면.
<도면의 주요 부분에 대한 부호의 설명>
1820: 프로세서
1825: 네트워크 인터페이스
1830: 메모리
1835: 매체 인터페이스
1840: 디스플레이
1850: 매체
Claims (10)
- 집적 회로 설계에서 전도체들 간의 변동 커플링 커패시턴스(variational coupling capacitance)를 분석하기 위한 방법으로서,플로팅 랜덤 워크 경로들(floating random walk paths)의 집합을 사용하여 상기 설계로부터 관심 대상 전도체들 간의 커플링 커패시턴스를 계산하는 단계;상기 전도체들 중 하나 이상을 교란(perturb)시키는 단계;상기 교란에 의해 영향받은 플로팅 랜덤 워크 경로들 중 임의의 것을 수정하는 단계; 및상기 수정된 플로팅 랜덤 워크 경로들을 포함하도록 상기 관심 대상 전도체들 간의 커플링 커패시턴스를 재계산하는 단계를 포함하는 방법.
- 제1항에 있어서,상기 설계로부터 교란될 전도체를 선택하는 단계;상기 선택된 전도체의 모서리를 선택하는 단계 - 상기 플로팅 랜덤 워크 경로들 중 하나 이상이 상기 모서리 상에서 종료함 - ;상기 선택된 전도체의 모서리를, 상기 선택된 전도체의 기하 형상(geometry)을 약 10퍼센트 이하 변화시키는 양만큼 내측으로(inward) 교란시키는 단계;교란되지 않은 모서리 상에서 종료하는 상기 플로팅 랜덤 워크 경로들 중 임 의의 것을 교란된 모서리로 연장하는 단계;상기 연장된 플로팅 랜덤 워크 경로들을 포함하도록 상기 관심 대상 전도체들 간의 커플링 커패시턴스를 재계산하는 단계; 및상기 교란된 모서리에 대하여 커플링 커패시턴스 민감도(coupling capacitance sensitivity)를 판정하는 단계를 더 포함하는 방법.
- 제2항에 있어서,어떤 플로팅 랜덤 워크 경로들이 상기 교란되지 않은 모서리 상에서 종료하는지를 결정하는 단계를 더 포함하는 방법.
- 제1항에 있어서,상기 관심 대상 전도체들 간의 커플링 커패시턴스를 계산하는 단계는,상기 관심 대상 전도체들로부터 제1 전도체 및 제2 전도체를 선택하는 단계;상기 제1 전도체 주위에 가우시안 표면(Gaussian surface)을 생성하는 단계;상기 가우시안 표면상에서 임의로 선택된 지점에서 시작하여 상기 제2 전도체 상에서 종료하는 랜덤 워크 경로를 생성하는 단계; 및상기 랜덤 워크 경로를 사용하여 상기 제1 전도체와 제2 전도체 간의 커플링 커패시턴스를 계산하는 단계를 더 포함하는 방법.
- 제2항에 있어서,상기 교란되지 않은 모서리 상에서 종료하지 않지만 여전히 상기 교란에 의해 영향받는 상기 플로팅 랜덤 워크 경로들 중 임의의 것을 식별하는 단계;각각의 상기 식별된 플로팅 랜덤 워크 경로들이 여전히 유효한지를 판정하는 단계; 및상기 교란 후에 유효하지 않은 상기 식별된 플로팅 랜덤 워크 경로들 중 임의의 것을 수정하는 단계를 더 포함하는 방법.
- 제1항에 있어서,새로운 집적 회로 설계를 생성하기 위해 하나 이상의 전도체를 교란시키는 단계 - 상기 하나 이상의 전도체 각각은 해당 전도체의 기하 형상을 약 10퍼센트 이상 변화시키는 양만큼 교란됨 - ;상기 플로팅 랜덤 워크 경로들을 상기 새로운 집적 회로 설계에 매핑하는 단계;상기 새로운 집적 회로 설계에 매핑된 각각의 상기 플로팅 랜덤 워크 경로들이 상기 새로운 집적 회로 설계에서 유효한지를 판정하는 단계;상기 새로운 집적 회로 설계에 매핑된 유효하지 않은 상기 플로팅 랜덤 워크 경로들 중 임의의 것을 수정하는 단계;상기 새로운 집적 회로 설계에 매핑된 유효한 상기 플로팅 랜덤 워크 경로들 중 임의의 것을 유지하는 단계; 및상기 새로운 집적 회로 설계로부터 관심 대상 전도체들 간의 커플링 커패시 턴스를 계산하는 단계를 더 포함하는 방법.
- 제1항에 있어서,상기 플로팅 랜덤 워크 경로들 중 임의의 하나에 대하여, 해당 플로팅 랜덤 워크 경로가 상기 전도체들 중 어느 것에 의존하는지를 판정하는 단계;상기 전도체들, 상기 플로팅 랜덤 워크 경로 및 상기 플로팅 랜덤 워크 경로가 상기 전도체들 중 어느 것에 의존하는지를 묘사하는(depict) 방식으로 상기 설계를 그래픽적으로 표현하는 단계;상기 전도체들 중 하나 이상을, 교란되는 전도체들 각각의 기하 형상을 약 10퍼센트 이상 변화시키는 양만큼 교란시키는 단계;상기 설계의 상기 그래픽적 표현을 사용하여 상기 플로팅 랜덤 워크 경로가 상기 하나 이상의 교란된 전도체에 의존하는지를 판정하는 단계;상기 플로팅 랜덤 워크 경로가 상기 하나 이상의 교란된 전도체에 의존하는 경우, 상기 플로팅 랜덤 워크 경로를 수정하는 단계; 및상기 플로팅 랜덤 워크 경로가 상기 하나 이상의 교란된 전도체에 의존하지 않는 경우, 상기 플로팅 랜덤 워크 경로를 유지하는 단계를 더 포함하는 방법.
- 제7항에 있어서,상기 플로팅 랜덤 워크 경로가 어느 전도체에 의존하는지를 판정하는 단계는, 어느 전도체가, 변화될 경우, 상기 플로팅 랜덤 워크 경로의 변화를 초래할지 를 판정하는 단계를 더 포함하는 방법.
- 집적 회로 설계에서 전도체들 간의 변동 커플링 커패시턴스를 분석하기 위한 장치로서,메모리; 및상기 메모리에 연결되는 적어도 하나의 프로세서를 포함하고,상기 적어도 하나의 프로세서는,플로팅 랜덤 워크 경로들의 집합을 사용하여 상기 설계로부터 관심 대상 전도체들 간의 커플링 커패시턴스를 계산하고,상기 전도체들 중 하나 이상을 교란시키고,상기 교란에 의해 영향받은 플로팅 랜덤 워크 경로들 중 임의의 것을 수정하고,상기 수정된 플로팅 랜덤 워크 경로들을 포함하도록 상기 관심 대상 전도체들 간의 커플링 커패시턴스를 재계산하도록 동작하는 장치.
- 집적 회로 설계에서 전도체들 간의 변동 커플링 커패시턴스를 분석하기 위한, 머신 판독가능 매체를 포함하는 제조물(article of manufacture)로서, 상기 머신 판독가능 매체는 하나 이상의 프로그램을 포함하며,상기 하나 이상의 프로그램은, 실행 시에,플로팅 랜덤 워크 경로들의 집합을 사용하여 상기 설계로부터 관심 대상 전 도체들 간의 커플링 커패시턴스를 계산하는 단계;상기 전도체들 중 하나 이상을 교란시키는 단계;상기 교란에 의해 영향받은 플로팅 랜덤 워크 경로들 중 임의의 것을 수정하는 단계; 및상기 수정된 플로팅 랜덤 워크 경로들을 포함하도록 상기 관심 대상 전도체들 간의 커플링 커패시턴스를 재계산하는 단계를 수행하는 제조물.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/267,598 | 2008-11-09 | ||
US12/267,598 US8122419B2 (en) | 2008-11-09 | 2008-11-09 | System and method for three-dimensional variational capacitance calculation |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20100052395A true KR20100052395A (ko) | 2010-05-19 |
Family
ID=42166334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090075231A KR20100052395A (ko) | 2008-11-09 | 2009-08-14 | 3차원 변동 커패시턴스 계산을 위한 시스템 및 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8122419B2 (ko) |
KR (1) | KR20100052395A (ko) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8539426B2 (en) * | 2011-02-22 | 2013-09-17 | International Business Machines Corporation | Method and system for extracting compact models for circuit simulation |
CN103793557B (zh) * | 2014-01-14 | 2016-08-17 | 清华大学 | 面向集成电路互连电容提取的线网高斯面采样方法及系统 |
CN104008255B (zh) * | 2014-06-13 | 2017-01-18 | 清华大学 | 面向集成电路电容提取的多介质随机行走方法及系统 |
US9594727B2 (en) * | 2014-12-22 | 2017-03-14 | Synopsys, Inc. | Optimization of parasitic capacitance extraction using statistical variance reduction technique |
US10274533B1 (en) * | 2015-05-18 | 2019-04-30 | Helic, Inc. | Pre-computation system and method for transition domain characterization within a floating random walk based multi-dielectric capacitance extraction methodology |
CN105095567B (zh) * | 2015-07-01 | 2018-02-16 | 清华大学 | 电容参数提取方法 |
US20170177776A1 (en) * | 2015-12-16 | 2017-06-22 | International Business Machines Corporation | Partitioning of wiring for capacitance extraction without loss in accuracy |
CN105701307B (zh) * | 2016-01-18 | 2018-11-23 | 武汉理工大学 | 基于随机行走电容提取的保证准确度的线网时延计算方法 |
US10489539B2 (en) * | 2016-09-23 | 2019-11-26 | Synopsys, Inc. | Virtual terminals for linear-parameter extraction |
CN110019975B (zh) | 2017-10-10 | 2020-10-16 | 创新先进技术有限公司 | 随机游走、基于集群的随机游走方法、装置以及设备 |
CN109658094B (zh) | 2017-10-10 | 2020-09-18 | 阿里巴巴集团控股有限公司 | 随机游走、基于集群的随机游走方法、装置以及设备 |
CN107844674B (zh) * | 2017-12-18 | 2019-06-28 | 清华大学 | 处理悬浮导体的随机行走电容参数提取方法 |
US11687695B2 (en) * | 2021-03-31 | 2023-06-27 | Siemens Industry Software Inc. | Shadow feature-based determination of capacitance values for integrated circuit (IC) layouts |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6314545B1 (en) * | 1997-08-01 | 2001-11-06 | Agere Systems Guardian Corporation | Quadrature solutions for 3D capacitance extraction |
US6305004B1 (en) * | 1999-08-31 | 2001-10-16 | International Business Machines Corporation | Method for improving wiring related yield and capacitance properties of integrated circuits by maze-routing |
US6871167B1 (en) * | 1999-10-26 | 2005-03-22 | Agere Systems Inc. | System and method for determining capacitance for large-scale integrated circuits |
US7103524B1 (en) * | 2001-08-28 | 2006-09-05 | Cadence Design Systems, Inc. | Method and apparatus for creating an extraction model using Bayesian inference implemented with the Hybrid Monte Carlo method |
US6883148B1 (en) * | 2001-08-28 | 2005-04-19 | Cadence Design Systems, Inc. | Method and apparatus for creating an extraction model using Bayesian inference |
US7051293B1 (en) * | 2001-08-28 | 2006-05-23 | Cadence Design Systems, Inc. | Method and apparatus for creating an extraction model |
US7805697B2 (en) * | 2002-12-06 | 2010-09-28 | Multigig Inc. | Rotary clock synchronous fabric |
US7283943B1 (en) * | 2004-06-24 | 2007-10-16 | Sun Microsystems, Inc. | Method of modeling circuit cells for powergrid analysis |
US7197729B2 (en) * | 2005-03-09 | 2007-03-27 | Synopsys, Inc. | Method and apparatus for computing equivalent capacitance |
JP4922094B2 (ja) * | 2007-07-26 | 2012-04-25 | 株式会社東芝 | パターンデータ作成方法 |
US7979825B2 (en) * | 2008-03-31 | 2011-07-12 | International Business Machines Corporation | Method and system for the calculation of the sensitivities of an electrical parameter of an integrated circuit |
US8024690B2 (en) * | 2008-05-19 | 2011-09-20 | Arm Limited | Method, system and computer program product for determining routing of data paths in interconnect circuitry providing a narrow interface for connection to a first device and a wide interface for connection to a distributed plurality of further devices |
US8056035B2 (en) * | 2008-06-04 | 2011-11-08 | International Business Machines Corporation | Method and system for analyzing cross-talk coupling noise events in block-based statistical static timing |
-
2008
- 2008-11-09 US US12/267,598 patent/US8122419B2/en not_active Expired - Fee Related
-
2009
- 2009-08-14 KR KR1020090075231A patent/KR20100052395A/ko not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
US20100122222A1 (en) | 2010-05-13 |
US8122419B2 (en) | 2012-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20100052395A (ko) | 3차원 변동 커패시턴스 계산을 위한 시스템 및 방법 | |
Crane et al. | A survey of algorithms for geodesic paths and distances | |
Shi et al. | Adaptive simplification of point cloud using k-means clustering | |
US10474781B2 (en) | Virtual hierarchical layer usage | |
US6996790B2 (en) | System and method for generating a two-dimensional yield map for a full layout | |
TWI837115B (zh) | 依據填充分率體素資料進行多材料網格生成之非暫態媒體、系統及方法 | |
CN103914865B (zh) | 形成几何图案的面的组 | |
KR20140139984A (ko) | 3d 모델링된 오브젝트의 압축 및 압축해제 | |
US20100122223A1 (en) | Techniques for Computing Capacitances in a Medium With Three-Dimensional Conformal Dielectrics | |
JP6788187B2 (ja) | シミュレーションプログラム、シミュレーション方法および情報処理装置 | |
CN116432329A (zh) | 利于制造和结构性能的具有特征厚度控制的计算机辅助生成设计 | |
KR20130116169A (ko) | 더블 패터닝 기술을 위한 rc 코너해 | |
Deng et al. | Surface k-NN query processing | |
CN107506572B (zh) | 获取目标点的高度的方法和装置 | |
de Berg et al. | Exact and approximate computations of watersheds on triangulated terrains | |
CN116229116A (zh) | 一种基于相似零件的工艺复用加工方法、系统及电子设备 | |
CN105426626B (zh) | 基于相似数据样式聚类的多点地质统计学建模方法 | |
KR101235506B1 (ko) | 초기 클러스터링을 사용한 병합식 계층적 클러스터링 방법 및 장치 | |
Frentzos et al. | On the effect of location uncertainty in spatial querying | |
CN110349265B (zh) | 一种四面体拓扑网格生成方法及电子设备 | |
CN111666689A (zh) | 特征线追踪方法、堆芯中子物理计算方法和装置 | |
JP2008197921A (ja) | シミュレーション装置、シミュレーション方法及びシミュレーションプログラム | |
CN112927350B (zh) | 多域地质体模型构建方法、装置、设备及存储介质 | |
Africa et al. | Scalable Recovery-based Adaptation on Quadtree Meshes for Advection-Diffusion-Reaction Problems | |
EP2926244A1 (en) | Method and apparatus for creating 3d model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |