KR20230065976A - 셀 설계를 위한 혼합 확산 브레이크 - Google Patents

셀 설계를 위한 혼합 확산 브레이크 Download PDF

Info

Publication number
KR20230065976A
KR20230065976A KR1020237005218A KR20237005218A KR20230065976A KR 20230065976 A KR20230065976 A KR 20230065976A KR 1020237005218 A KR1020237005218 A KR 1020237005218A KR 20237005218 A KR20237005218 A KR 20237005218A KR 20230065976 A KR20230065976 A KR 20230065976A
Authority
KR
South Korea
Prior art keywords
cell
diffusion
edge
dummy transistor
diffusion break
Prior art date
Application number
KR1020237005218A
Other languages
English (en)
Inventor
디팍 다트타트라야 쉐어레카르
빅토르 모로즈
자밀 카와
Original Assignee
시놉시스, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 시놉시스, 인크. filed Critical 시놉시스, 인크.
Publication of KR20230065976A publication Critical patent/KR20230065976A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier
    • H01L27/04Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier the substrate being a semiconductor body
    • H01L27/10Devices 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 at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/31Design entry, e.g. editors specifically adapted for circuit design
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/20Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/12Timing analysis or timing optimisation

Abstract

혼합 확산 브레이크를 포함하는 셀들(101, 111)을 이용하여 집적 회로 레이아웃(100)을 설계. 각각의 셀(101, 111)은 제1 및 제2 에지들(102, 103)을 갖고, 제2 에지는 제1 에지로부터 대향하고 있다. 셀은 셀의 제1 에지와 제1 확산 브레이크의 에지 사이에 걸쳐 있는 제1 더미 트랜지스터를 갖는다. 제1 확산 브레이크는 제1 더미 트랜지스터(105a) 아래에 중심을 둘 수 있다. 제1 더미 트랜지스터(105a) 및 제1 확산 브레이크는 단일 확산 브레이크를 형성할 수 있다. 추가적으로, 셀은 셀의 제2 에지와 제2 확산 브레이크(105b)의 에지 사이에 걸쳐 있는 제2 더미 트랜지스터를 갖는다. 제2 더미 트랜지스터(105b)는 셀 내로 게이트 피치의 절반의 거리에 걸쳐 있을 수 있고, 제2 에지 위에 중심을 둘 수 있다. 제2 더미 트랜지스터 및 제2 확산 브레이크는 이중 확산 브레이크를 형성할 수 있다.

Description

셀 설계를 위한 혼합 확산 브레이크
관련 출원에 대한 상호 참조
본 출원은 2020년 9월 14일자로 출원된 미국 가출원 제63/078,168호의 이익을 주장하며, 그러한 가출원은 그 전체가 참조로 포함된다.
기술분야
본 개시내용은 집적 회로들에 관한 것으로서, 특히, 집적 회로들의 셀 기반 설계를 위한 확산 브레이크들(diffusion breaks)에 관한 것이다.
현대의 반도체 프로세스들은 상이한 전위들에서 물리적으로 인접한 확산들을 전기적으로 격리하기 위해 확산의 연속성을 단절(break)시킨다. 2가지 타입의 확산 브레이크(diffusion break), 즉, 단일 확산 브레이크(single diffusion break)(SDB) 및 이중 확산 브레이크(double diffusion break)(DDB)가 흔히 이용된다. SDB에서, 브레이크는 격리 게이트(isolation gate) 또는 더미 게이트(dummy gate) 아래에 중심을 두며, 이는 폴리 또는 더미 트랜지스터로서 지칭될 수 있고, 상이하지만 인접한 확산들을 분리한다. DDB의 경우, 브레이크는 인접한 확산들을 분리하는 더미 게이트들의 쌍 사이의 중간에 중심을 둔다. 서플라이(supply) 또는 접지(ground)에 결부된 더미 게이트들은 SDB와 동일한 영역 효율로, 그러나 더 높은 누설의 대가로 더 높은 성능으로 물리적으로 인접한 확산들을 격리하기 위해, 연속 확산으로 지칭되는 제3 메커니즘을 제공한다.
셀 기반 설계에서, 라이브러리 셀들은, 예를 들어, 칩 레벨을 포함하는 설계 실현의 다양한 레벨들에서 인접한 셀들로부터 셀에서의 확산을 격리하기 위해 그들의 좌측 및 우측 경계들에서 SDB 또는 DDB 메커니즘을 이용한다. 따라서, SDB 셀들은 그들의 좌측 및 우측 경계들에 중심을 둔 더미 게이트들을 갖는 반면, DDB 셀들은 그들의 좌측 및 우측 경계들 내에서, 접촉된 게이트(폴리) 피치(CPP) 또는 "게이트 피치(gate pitch)"의 절반에 위치된 더미 게이트들을 갖는다. DDB 셀들은 SDB 셀들보다 적어도 하나의 게이트 피치만큼 더 넓다. 연속 확산을 이용하는 셀들은 좌측 및 우측 경계들에서 격리 더미 게이트들을 갖는 SDB와 유사하다. DDB 셀 내의 확산 브레이크들은 그들의 좌측/우측 경계들이 게이트 피치 그리드들 사이의 정확히 중간에 있도록 그들이 배치되는 설계 제약에 영향을 미치지 않고서, SDB, 연속 확산, 또는 DDB로서 구현될 수 있다. 유사하게, SDB 셀들 내의 확산 브레이크들은 또한 그들이 게이트 그리드와 정렬된 그들의 좌측 또는 우측 경계들로 배치되는 설계 제약에 영향을 미치지 않고서, SDB, 연속 확산, 또는 DDB 메커니즘으로 구현될 수 있다.
실시예들은 집적 회로를 설계하기 위한 셀의 디지털 표현에 관한 것으로서, 셀은 제1 에지, 제1 에지의 대향 측면(opposite side)에서의 제2 에지, 제1 더미 트랜지스터 및 제2 더미 트랜지스터를 포함한다. 제1 더미 트랜지스터는 셀의 제1 에지와 제1 확산 브레이크의 에지 사이에 걸쳐 있다. 제1 확산 브레이크는 제1 더미 트랜지스터 아래에 중심을 둔다. 제2 더미 트랜지스터는 셀의 제2 에지와 제2 확산 브레이크의 에지 사이에 걸쳐 있다. 제2 더미 트랜지스터는 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있다.
하나 이상의 실시예에서, 제1 더미 트랜지스터 및 제1 확산 브레이크는 단일 확산 브레이크를 형성한다.
하나 이상의 실시예에서, 제2 확산 브레이크는 셀 내의 확산 영역을 인접 셀의 확산 영역으로부터 격리하고, 제2 확산 브레이크는 제2 더미 트랜지스터와 인접 셀의 더미 트랜지스터 사이의 중간에 중심을 둔다.
하나 이상의 실시예에서, 제2 더미 트랜지스터, 인접 셀의 더미 트랜지스터, 및 제2 확산 브레이크는 이중 확산 브레이크를 형성한다.
하나 이상의 실시예에서, 제1 확산 브레이크는 셀의 제1 에지와 함께 중심을 둔다.
하나 이상의 실시예에서, 제2 확산 브레이크는 셀의 제2 에지에 접한다.
하나 이상의 실시예에서, 제2 더미 트랜지스터는 제2 확산 브레이크의 에지 위에 중심을 둔다.
하나 이상의 실시예에서, 셀은 정수의 게이트 피치들(integer number of gate pitches)보다 게이트 피치의 절반만큼 더 큰 폭을 갖는다.
실시예들은 또한 제1 셀, 제2 셀, 제3 셀, 및 제4 셀 중 하나를 선택함으로써 집적 회로 설계를 설계하는 것에 관한 것이다. 제1 셀은 제1 셀의 좌측 에지와 제1 확산 브레이크의 에지 사이에 걸쳐 있는 제1 더미 트랜지스터 - 제1 확산 브레이크는 제1 더미 트랜지스터 아래에 중심을 둠 -; 및 제1 셀의 우측 에지와 제2 확산 브레이크의 에지 사이에 걸쳐 있는 제2 더미 트랜지스터 - 제2 확산 브레이크는 제2 더미 트랜지스터 아래에 중심을 둠 - 를 포함한다. 제2 셀은 제2 셀의 좌측 에지와 제3 확산 브레이크의 에지 사이에 걸쳐 있는 제3 더미 트랜지스터 - 제3 더미 트랜지스터는 제2 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있음 -; 및 제2 셀의 우측 에지와 제4 확산 브레이크의 에지 사이에 걸쳐 있는 제4 더미 트랜지스터 - 제4 더미 트랜지스터는 제2 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있음 - 를 포함한다. 제3 셀은 제3 셀의 좌측 에지와 제5 확산 브레이크의 에지 사이에 걸쳐 있는 제5 더미 트랜지스터 - 제5 확산 브레이크는 제5 더미 트랜지스터 아래에 중심을 둠 -; 및 제3 셀의 우측 에지와 제6 확산 브레이크의 에지 사이에 걸쳐 있는 제6 더미 트랜지스터 - 제6 더미 트랜지스터는 제3 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있음 - 를 포함한다. 제4 셀은 제4 셀의 좌측 에지와 제7 확산 브레이크의 에지 사이에 걸쳐 있는 제7 더미 트랜지스터 - 제7 더미 트랜지스터는 제4 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있음 -; 및 제4 셀의 우측 에지와 제8 확산 브레이크의 에지 사이에 걸쳐 있는 제8 더미 트랜지스터 - 제8 확산 브레이크는 제8 더미 트랜지스터 아래에 중심을 둠 - 를 포함한다. 선택된 셀은 집적 회로 설계 내로 위치된다. 선택된 셀을 포함하는 집적 회로 설계의 시뮬레이션이 수행된다.
하나 이상의 실시예에서, 제1 셀, 제2 셀, 제3 셀, 및 제4 셀 중 하나는, 4개의 셀들 각각에 대해, 집적 회로 설계에서 각자의 셀을 다른 셀에 인접하게 위치시키는 것과 연관된 성능 메트릭들(performance metrics)을 결정함으로써 선택된다. 셀은 집적 회로 설계의 타이밍 및 전력 제약들 중 하나 이상에 대해 최적화하기 위해 결정된 성능 메트릭들에 기초하여 선택된다.
하나 이상의 실시예에서, 각자의 셀을 위치시키는 것과 연관된 성능 메트릭들은 다른 셀을 위치시키기 위한 각자의 셀의 측면(side)을 결정함으로써 결정된다. 다른 셀을 각자의 셀의 좌측 에지에 위치시키기로 결정하는 것에 응답하여, 다른 셀을 각자의 셀의 좌측 에지에 위치시키는 것과 연관된 모델이 액세스된다. 모델은 성능 메트릭들을 포함한다.
하나 이상의 실시예에서, 선택된 셀은 집적 회로 설계 내의 이전에 배치된 셀을 선택된 셀로 대체함으로써 집적 회로 설계 내로 위치된다.
하나 이상의 실시예에서, 제1 셀은 제1 더미 트랜지스터 및 제1 확산 브레이크를 포함하는 제1 단일 확산 브레이크, 및 제2 더미 트랜지스터 및 제2 확산 브레이크를 포함하는 제2 단일 확산 브레이크를 포함한다.
하나 이상의 실시예에서, 제2 셀은 제3 더미 트랜지스터 및 제3 확산 브레이크를 포함하는 제1 이중 확산 브레이크, 및 제4 더미 트랜지스터 및 제4 확산 브레이크를 포함하는 제2 이중 확산 브레이크를 포함한다.
하나 이상의 실시예에서, 제3 셀은 제5 더미 트랜지스터 및 제5 확산 브레이크를 포함하는 단일 확산 브레이크, 및 제6 더미 트랜지스터 및 제6 확산 브레이크를 포함하는 이중 확산 브레이크를 포함한다.
하나 이상의 실시예에서, 제4 셀은 제7 더미 트랜지스터 및 제7 확산 브레이크를 포함하는 이중 확산 브레이크, 및 제8 더미 트랜지스터 및 제8 확산 브레이크를 포함하는 단일 확산 브레이크를 포함한다.
본 개시내용은 아래에 주어지는 상세한 설명으로부터 그리고 본 개시내용의 실시예들의 첨부 도면들로부터 더 충분히 이해될 것이다. 도면들은 본 개시내용의 실시예들의 지식 및 이해를 제공하기 위해 이용되며, 본 개시내용의 범위를 이러한 특정 실시예들로 제한하지 않는다. 더욱이, 도면들이 반드시 축척대로 그려져 있는 것은 아니다.
도 1은 일 실시예에 따른, 셀들로부터 생성된 집적 회로 레이아웃을 도시한다.
도 2a는 일 실시예에 따른, 단일 확산 브레이크 셀의 상위 레벨 뷰를 도시한다.
도 2b는 일 실시예에 따른, 도 2a에서 설명된 바와 같은 단일 확산 브레이크 셀의 단면 뷰를 도시한다.
도 3a는 일 실시예에 따른, 이중 확산 브레이크 셀의 상위 레벨 뷰를 도시한다.
도 3b는 일 실시예에 따른, 도 3a에 설명된 바와 같은 이중 확산 브레이크 셀의 단면 뷰를 도시한다.
도 4a는 일 실시예에 따른, 좌측 측면(left side) 상에 단일 확산 브레이크를 갖는 혼합 확산 브레이크 셀(mixed diffusion break cell)의 상위 레벨 뷰를 도시한다.
도 4b는 일 실시예에 따른, 도 4a에 설명된 바와 같은 좌측 측면 상에 단일 확산 브레이크를 갖는 혼합 확산 브레이크 셀의 단면 뷰를 도시한다.
도 5a는 일 실시예에 따른, 좌측 측면 상에 이중 확산 브레이크 메커니즘을 갖는 혼합 확산 브레이크 셀의 상위 레벨 뷰를 도시한다.
도 5b는 일 실시예에 따른, 도 5a에 설명된 바와 같은 좌측 측면 상에 이중 확산 브레이크 메커니즘을 갖는 혼합 확산 브레이크 셀의 단면 뷰를 도시한다.
도 6a는 일 실시예에 따른, 서로 하나의 게이트 피치만큼 떨어져 배치된 단일 확산 브레이크 셀들의 상위 레벨 뷰를 도시한다.
도 6b는 일 실시예에 따른, 도 6a에서 설명된 바와 같은 서로 하나의 게이트 피치만큼 떨어져 배치된 단일 확산 브레이크 셀들의 단면 뷰를 도시한다.
도 7a는 일 실시예에 따른, 서로 인접한 혼합 확산 브레이크 셀들의 상위 레벨 뷰를 도시한다.
도 7b는 일 실시예에 따른, 도 7a에 설명된 바와 같은 서로 인접한 혼합 확산 브레이크 셀들의 단면 뷰를 도시한다.
도 8은 적어도 하나의 실시예에 따른, 집적 회로를 설계하기 위한 프로세스를 도시하는 흐름도이다.
도 9는 일 실시예에 따른, 집적 회로의 설계 및 제조 동안 이용되는 다양한 프로세스들의 흐름도를 도시한다.
도 10은 본 개시내용의 실시예들이 동작할 수 있는 예시적인 컴퓨터 시스템의 도면을 도시한다.
본 개시내용의 양태들은 셀 설계를 위한 혼합 확산 브레이크들에 관한 것이다. 실시예들은 SDB와 DDB 사이의 2개의 중간 변형들을 포함하는, 각자의 확산 브레이크들을 갖는 다양한 타입들의 셀들에 관한 것이다. 이러한 중간 변형들은 셀 기반 설계를 수행할 때 SDB 및 DDB의 혼합의 더 다양하고 더 미세한 입도를 가능하게 한다. SDB 셀들은 DDB보다 낮은 게이트 입력 커패시턴스를 가지며, 이는 일부 성능 손실(예를 들어, 처리 속도의 손실)을 보상할 수 있다. 또한, DDB 영역에 매칭하기 위해 하나의 그리드에 의해 SDB 셀들을 넓히는 것은 셀 개략도에서 트랜지스터들의 구동을 증가시킬 수 있고, 이는 DDB와의 성능 갭을 더 축소시킬 수 있다. 따라서, 동일한 설계에서 SDB 및 DDB 셀들을 혼합하여, DDB가 이점을 제공하는 경우 그것을 이용하고, 다른 곳에서는 SDB를 이용하는 것은, SDB 셀들 또는 DDB 셀들을 독점적으로 이용하는 설계들에 비해 성능 개선들을 제공한다.
전자 설계 자동화(electronic design automation)(EDA) 시스템은, 도 9를 참조하여 설명된 바와 같이, 집적 회로에 대한 레이아웃을 생성할 수 있다. 일 실시예에서, EDA 시스템은 행들로 나란히 배치되도록 설계된 셀들의 세트를 포함하는 셀 라이브러리를 수신한다. 셀들의 세트는 표준 셀들 및 표준 셀들의 수정된 버전들을 포함할 수 있다. EDA 시스템은 라이브러리로부터 셀들의 인스턴스들을 배열함으로써 집적 회로에 대한 레이아웃의 적어도 일부를 생성할 수 있다. EDA 시스템은 셀들의 인스턴스들을 함께 접속하여 집적 회로의 원하는 기능을 구현할 수 있다.
EDA 시스템은 그리드형 레이아웃 설계들(gridded layout designs)을 생성할 수 있다. 그리드형 설계에서, 셀들과 같은 회로 컴포넌트들의 에지들은 미리 결정된 그리드에 정렬된다. 일부 실시예들에서, 레이아웃의 트랜지스터 게이트들은 인접한 게이트들 사이에 고정된 거리를 가지며, 여기서 이 고정된 거리는 게이트 피치이다. 게이트 피치는 미리 결정된 그리드에서의 그리드 유닛들의 배수일 수 있다. 본 명세서에서 언급된 바와 같이, 용어들 게이트 피치 및 그리드는 레이아웃 설계 내의 셀 치수들(예를 들어, 폭들) 및 셀 배치(예를 들어, 셀들의 에지들 사이의 거리)를 설명하기 위해 이용된다.
본 명세서에 설명된 EDA 시스템의 실시예들은 각자의 확산 브레이크 메커니즘들을 갖는 다양한 타입들의 셀들에 액세스할 수 있다. 4개의 예시적인 타입의 셀들이 도 2a 내지 도 5b를 참조하여 설명된다. 제1 타입의 셀은 대향 에지들(예를 들어, 좌측 및 우측 에지들)에서 SDB를 가지며, 본 명세서에서 타입 1 셀로서 지칭된다. 제2 타입의 셀은 대향 에지들에서 DDB를 가지며, 본 명세서에서 타입 2 셀로 지칭된다. 제3 타입 및 제4 타입의 셀은 하나의 에지에서 SDB를 갖고 대향 에지에서 DDB를 갖는다. 타입 3 셀은 좌측 에지에서의 SDB 및 우측 에지에서의 DDB를 갖는 셀을 지칭한다. 타입 4 셀은 좌측 에지에서의 DDB 및 우측 에지에서의 SDB를 갖는 셀을 지칭한다. EDA 시스템이 혼합 확산 브레이크들로 지칭될 수 있는 상이한 확산 브레이크들을 갖는 셀들(예를 들어, 타입 3 및 4 셀들)을 배치하는 예시적인 구성들이 도 6a 내지 도 7b와 관련하여 설명된다.
EDA 시스템은 SDB 또는 연속 확산 메커니즘들을 이용하는 내부 확산 브레이크들을 갖는 셀들을 갖는 셀 라이브러리에 액세스할 수 있다. EDA 시스템은 내부 확산 브레이크를 갖는 셀의 폭을 SDB와 연관된 최소 폭으로부터 게이트 피치의 절반만큼 더 큰 혼합 확산 브레이크 셀(예를 들어, 도 4a 내지 도 5b에 도시된 셀들)의 폭으로 수정할 수 있다. EDA 시스템은 또한 셀의 폭을 최소 폭으로부터 하나의 게이트 피치만큼 더 큰 DDB 셀(예를 들어, 도 3a 및 도 3b에 도시된 셀)의 폭으로 수정할 수 있다. EDA 시스템은 폭이 (예를 들어, 정수 개수의 게이트 피치들과는 대조적으로) 게이트 피치의 절반만큼 입도가 증가할 수 있게 하고, 이는 결국 성능 속도가 더 미세한 입도로 증가할 수 있게 하기 때문에, EDA 시스템은 칩 레벨에서 영역 및 성능의 최적화를 개선한다.
도 1은 일 실시예에 따른, 셀들로부터 생성된 집적 회로 레이아웃을 도시한다. 집적 회로 레이아웃(100)은, 다른 것들 중에서, 셀들(101 및 111)을 포함한다. 셀들은 단일 행으로 구성되고, 혼합 확산 브레이크들을 이용한다. 셀은 4개의 측면들 또는 에지들 상에 경계지어질 수 있고, 인버터, NAND 게이트, NOR 게이트, 또는 플립-플롭과 같은 임의의 일반 셀을 나타낼 수 있다. 레이아웃(100)은 명료성을 촉진하기 위해 간략화되었지만, 레이아웃(100)은 도시되지 않은 추가적인 셀들을 포함할 수 있다. 셀은 논리적 기능을 수행하기 위한 논리적 셀을 지칭한다. 하나 이상의 셀이 결합되어 물리적 셀을 형성할 수 있다. 예를 들어, 다중-비트 셀의 단일 물리적 셀은 다수의 논리적 단일-비트 셀들을 포함할 수 있다.
또한, 연속적인 트랜지스터들(예를 들어, 더미 또는 활성 트랜지스터들) 사이의 거리는 SDB 및 DDB를 갖는 회로 설계들에서 균일할 수 있다. 예를 들어, 연속적인 트랜지스터들 사이의 거리는 동일할 수 있다. 대안적으로, 연속적인 트랜지스터들 사이의 거리는 균일할 필요가 없다. 본 명세서의 도면들은 연속적인 트랜지스터들 사이의 다양한 거리들을 도시할 수 있다. 예를 들어, 도 1에서, 연속적인 트랜지스터들(105a 및 104) 사이의 거리는 연속적인 트랜지스터들(104 및 105b) 사이의 동일한 거리로서 도시된다. 그러나, 연속적인 트랜지스터들(105b 및 115a) 사이에 차이 거리가 존재한다. 대안적으로, 도시된 연속적인 트랜지스터들 사이의 거리들은 균일할 수 있다. 예를 들어, 트랜지스터들(105b 및 115a) 사이의 거리는 104와 105b 사이의 거리와 동일할 수 있다.
확산 브레이크는 셀의 제1 에지로부터 셀의 제1 에지와 대향하는 제2 에지로 연장되는 확산 영역에서의 브레이크를 지칭한다. 예를 들어, 확산 영역은 셀(101)의 에지(102)로부터 에지(103)까지 연장될 수 있다. 확산 브레이크는 인접한 셀들의 활성 영역들을 분리할 수 있다. 예를 들어, 확산 브레이크(107b)는 셀들(101, 111)의 활성 영역들을 분리할 수 있고, 활성 영역들은 활성 트랜지스터들(104, 114)을 각각 포함한다. 확산 브레이크(107a)는 셀(101)의 에지(102)와 접촉하는 셀의 활성 영역으로부터 셀(101)을 분리할 수 있다. 유사하게, 확산 브레이크(117)는 셀(111)의 에지(113)와 접촉하는 셀의 활성 영역으로부터 셀(111)을 분리할 수 있다. 더미 트랜지스터들은 셀들의 에지들에 위치될 수 있고, 하나의 활성 트랜지스터를 근처의 활성 트랜지스터로부터 격리할 수 있다. 예를 들어, 더미 트랜지스터들(105b 및 115a)은 활성 트랜지스터(114)로부터 활성 트랜지스터(104)를 격리할 수 있다.
2가지 타입의 확산 브레이크, 즉, 단일 확산 브레이크(SDB) 및 이중 확산 브레이크(DDB)가 흔히 이용된다. SDB에서, 브레이크는 더미 트랜지스터 아래에 중심을 둔다. DDB의 경우, 브레이크는 인접한 확산들을 분리하는 더미 트랜지스터들의 쌍 사이의 중간에 중심을 둔다. 예시적인 DDB가 도 1에 도시된다. 확산 브레이크(107b)는 DDB이고, 하나의 더미 트랜지스터로부터 다음 더미 트랜지스터로(예를 들어, 더미 트랜지스터(105b)로부터 더미 트랜지스터(115a)로) 연장된다. 도 1은 또한 예시적인 SDB들을 도시한다. 확산 브레이크(107a)는 제1 예시적인 SDB이고, 여기서 확산 브레이크(107a)는 더미 트랜지스터(105a) 아래에 중심을 둔다. 유사하게, 확산 브레이크(117)는 더미 트랜지스터(115b) 아래에 중심을 둔 제2 예시적인 SDB이다.
레이아웃(100)은 셀의 하나의 에지에서의 SDB 및 셀의 대향 에지에서의 DDB의 조합을 갖는 혼합 확산 브레이크를 갖는 셀들(101, 111)을 도시한다. DDB는 DDB가 양쪽 모두가 아닌 하나의 에지에 있더라도 SDB보다 증가된 성능 속도들을 제공할 수 있다. 이것은 성능 속도의 증가에 동일하게 기여하는 양쪽 측면들에서의 DDB 메커니즘들과는 대조적으로, 셀의 하나의 에지로부터 주로 오는 DDB의 성능 혜택의 성질에 기인할 수 있다. 레이아웃에서의 영역이 중요하지만 셀들의 성능이 우선순위화될 때, EDA 시스템은 하나의 에지에서는 DDB로부터 대부분의 성능 혜택을 얻는 한편 다른 에지에서는 SDB를 이용하기 위해 혼합 확산 브레이크 메커니즘들을 갖는 셀들을 이용할 수 있다. 따라서, 혼합 확산 브레이크는 EDA 시스템이 다른 것보다 하나를 많이 희생시키지 않고 성능 및 영역 혜택들 모두를 밸런싱할 수 있게 한다. 한편, EDA 시스템은 대향 에지들에서 SDB를 이용함으로써 영역 개선들을 강조하거나, 대향 에지들에서 DDB를 이용함으로써 성능 개선들을 강조할 수 있다.
EDA 시스템이 확산 브레이크 메커니즘들을 사용자에 의한 선택에 이용가능하게 할 수 있지만, EDA 시스템은 추가적으로 또는 대안적으로 어느 타입의 확산 브레이크를 이용할지를 결정함으로써, 다양한 설계 파라미터들에 기초한 결정들을 수행할 수 있다. 일 실시예에서, EDA 시스템은 각각의 타입의 확산 브레이크에 대해 별개의 셀 레이아웃들을 생성할 수 있다. 예를 들어, EDA 시스템은 도 2a 내지 도 4b에 도시된 셀들 각각에 대해 4개의 상이한 셀 레이아웃들을 생성할 수 있고, 이들은 각각 셀의 대향 에지들에서의 확산 브레이크들의 상이한 순열들을 갖는다.
다른 실시예에서, EDA 시스템은 추가적인 레이아웃 자동화를 제공하고 사용자의 설계 노력을 줄이기 위해 대향 에지들에서 SDB를 갖는 타입 1 셀들의 레이아웃들을 구성할 수 있다(예를 들어, 도 2a 및 도 2b). 일 예에서, 시스템은 셀의 우측 에지에서 타입 1 셀을 게이트 피치의 절반만큼 연장시키고, 도 4a 및 도 4b에 도시된 타입 3 셀을 생성한다. 다른 예에서, 시스템은 좌측 에지에서의 타입 1 셀을 게이트 피치의 절반만큼 연장시키고, 도 5a 및 도 5b에 도시된 타입 4 셀을 생성한다. 또 다른 예에서, 시스템은 좌측 및 우측 에지들 둘 다에서 타입 1 셀을 연장시키고, 도 3a 및 도 3b에서의 타입 2 셀을 생성한다.
IC 설계의 블록 레벨에서, EDA 시스템은 셀 배치 후에 특정 셀 타입을 선택하고, 다양한 설계 파라미터들에 기초하여 어느 셀 타입이 구성되어야 하는지를 결정할 수 있다. 용어들 블록 레벨 또는 셀 레벨은 2개 이상의 셀을 묘사하는 EDA 툴에 대한 설계의 뷰를 지칭한다. EDA 시스템은 SDB 셀을 추출하고, IC 설계에서의 SDB 셀의 위치에서 4개의 타입의 셀들 각각의 타이밍 및 전력 메트릭들을 특성화하여, IC 설계의 성능을 개선하기 위해 어느 타입이 선택되어야 하는지를 결정하기 위해 4개의 셀 타입 변형들의 성능 메트릭들을 캡처할 수 있다. 이 방법은 더 양호한 핀 위치들이 더 큰 DDB-스타일 레이아웃들로 가능하지 않거나, 또는 셀의 낮은 이용이 추가 레이아웃 노력을 보장하지 않을 때 이용될 수 있다. 다양한 타입들의 확산 브레이크 메커니즘 레이아웃들의 가용성은 EDA 시스템이 셀들의 이러한 배치후 튜닝(post-placement tuning)을 수행할 수 있게 한다. 다양한 확산 브레이크 메커니즘 타입들 및 배치후 튜닝을 제공함으로써, EDA 시스템은 사용자의 레이아웃 설계 요건들에 대해 유연한 셀 설계 구성들을 제공한다.
도 2a 및 도 2b는 일 실시예에 따른, 단일 확산 브레이크 셀을 도시한다. 도 2a는 셀(201)의 평면 뷰(top view)(200a)를 도시하고, 도 2b는 라인(210)을 가로질러 취해진 셀(201)의 단면 뷰(200b)를 도시한다. 평면 뷰(200a)는 셀(201)의 활성 트랜지스터(204) 및 더미 트랜지스터들(205a 및 205b)을 도시한다. 기준 라인들(206a 및 206b)(점선들)은 각각 더미 트랜지스터들(205a 및 205b) 아래의 확산 브레이크들의 중심과 정렬된다. 단면 뷰(200b)는 라인들(206a 및 206b)을 따라 더미 트랜지스터들(205a 및 205b)과 함께 중심을 둔 확산 브레이크들(207a 및 207b)을 도시한다. 단면 뷰(200b)는 셀(201)의 트랜지스터들(예를 들어, 활성 트랜지스터(204))의 도핑된 소스들 및 드레인들을 포함하는 도핑 영역들(220)을 포함한다. 도핑 영역들은 도 3b, 도 4b, 도 5b, 도 6b, 및 도 7b의 단면 뷰들에서 유사하게 도시된다.
셀(201)은 셀(201)의 한 측면에서의 좌측 에지(202) 및 셀(201)의 대향 측면에서의 우측 에지(203)를 포함한다. 활성 트랜지스터(204)는 지정된 기능(예를 들어, 처리(processing), 전력 게이팅(power gating), 캐시(cache) 등)을 수행한다. 하나의 트랜지스터만이 셀(201)에 포함되는 것으로 설명되지만, 셀(201)은 다수의 활성 트랜지스터들을 포함할 수 있다. 또한, 활성 트랜지스터(204)는 셀(201)의 중심에 위치하지 않을 수 있고, 셀(201)의 좌측 또는 우측 측면으로 오프셋될 수 있다. 명료성을 촉진하기 위해 셀(201) 및 도 3a 내지 도 7b에서 도시된 다른 셀들이 하나의 활성 트랜지스터를 갖는 것으로 도시되지만, 셀은 다수의 활성 트랜지스터들을 포함할 수 있다. 셀(201)의 활성 트랜지스터(204)는 (예를 들어, IC 설계 프로세스의 셀 배치 동안 및 그 후에) 확산 브레이크들(207a 및 207b)을 이용하여 이웃 셀들의 활성 트랜지스터들로부터 분리될 수 있다.
셀(201)은 에지들(202 및 203) 둘 다에 단일 확산 브레이크들이 제공되는 타입 1 셀이다. 제1 SDB는 더미 트랜지스터(205a) 및 확산 브레이크(207a)를 포함한다. 제2 SDB는 더미 트랜지스터(205b) 및 확산 브레이크(207b)를 포함한다. 더미 트랜지스터(205a) 및 확산 브레이크(207a)는 에지(202)에 중심을 둔다. 더미 트랜지스터(205b) 및 확산 브레이크(207b)는 에지(203)에 중심을 둔다. 타입 1의 셀들은 정수 개수의 게이트 피치들인 폭을 가질 수 있다.
도 3a 및 3b는 일 실시예에 따른, 이중 확산 브레이크 셀을 도시한다. 도 3a는 셀(301)의 상면 뷰(300a)를 도시하고, 도 3b는 라인(310)을 가로질러 취해진 셀(301)의 단면 뷰(300b)를 도시한다. 상면 뷰(300a)는 셀(301)의 활성 트랜지스터(304) 및 더미 트랜지스터들(305a 및 305b)을 도시한다. 기준 라인들(306a 및 306b)(점선들)은 각각 더미 트랜지스터들(305a 및 305b) 아래의 확산 브레이크들의 중심과 정렬된다. 단면 뷰(300b)는 각각 에지들(302 및 303)과 함께 중심을 둔 확산 브레이크들(307a 및 307b)을 도시한다. 일부 실시예들에서, 셀(301)과 같은 하나 이상의 에지에서 DDB를 갖는 셀들은 셀의 에지에 접하는 확산 브레이크를 가질 수 있다. 예를 들어, 확산 브레이크(307a)가 에지(302)를 넘어 연장되는 것으로 도시되지만, (예를 들어, IC 설계 동안 EDA 시스템에 의해 액세스되는 바와 같은) 셀(301)의 레이아웃은 에지들(302 및 303)을 넘어 연장되지 않을 수 있다. 따라서, 확산 브레이크(307a)는 에지(302)에 접할 수 있고, 확산 브레이크(307b)는 에지(303)에 접할 수 있다.
셀(301)은 셀(301)의 하나의 측면에서의 좌측 에지(302) 및 셀(301)의 대향 측면에서의 우측 에지(303)를 포함한다. 셀(301)의 활성 트랜지스터(304)는 (예를 들어, IC 설계 프로세스의 셀 배치 동안 및 그 후에) 확산 브레이크들(307a 및 307b)을 이용하여 이웃 셀들의 활성 트랜지스터들로부터 분리될 수 있다. 셀(301)은 양쪽 에지(302 및 303)에 이중 확산 브레이크들이 제공되는 타입 2 셀이다. 제1 DDB는 더미 트랜지스터(305a) 및 확산 브레이크(307a)를 포함한다. 제2 DDB는 더미 트랜지스터(305b) 및 확산 브레이크(307b)를 포함한다. 타입 2 셀들은 그들의 좌측 및 우측 에지들 내에서 게이트 피치의 절반에 각각 위치된 더미 트랜지스터들을 가질 수 있다. 더미 트랜지스터(305a)는 확산 브레이크(307a)의 에지 위에 중심을 둘 수 있고, 여기서 확산 브레이크(307a)는 에지(302)로부터 셀(301) 내의 게이트 피치의 절반에 걸쳐 있다. 유사하게, 더미 트랜지스터(205b)는 확산 브레이크(207b)의 에지 위에 중심을 둘 수 있고, 여기서 확산 브레이크(307b)는 에지(303)로부터 셀(301) 내의 게이트 피치의 절반에 걸쳐 있다.
타입 2의 셀들은 정수 개의 게이트 피치들인 폭을 가질 수 있다. 타입 2 셀들은 타입 1 셀들보다 적어도 하나의 게이트 피치만큼 더 넓을 수 있다. 일부 실시예들에서, 타입 2의 셀들은 타입 1 셀의 좌측 및 우측 에지들 상에서 게이트 피치의 절반만큼 더 넓은 폭을 가짐으로써 타입 1의 셀들보다 하나의 게이트 피치만큼 더 넓은 폭을 갖는다. 이러한 폭의 증가는 단일 확산 브레이크의 폭과 비교하여 이중 확산 브레이크의 증가된 폭을 수용하는 것일 수 있다.
도 4a 및 도 4b는 일 실시예에 따른, 좌측 측면 상에 단일 확산 브레이크를 갖는 혼합 확산 브레이크 셀을 도시한다. 도 4a는 셀(401)의 상면 뷰(400a)를 도시하고, 도 4b는 라인(410)을 가로질러 취해진 셀(401)의 단면 뷰(400b)를 도시한다. 상면 뷰(400a)는 셀(401)의 활성 트랜지스터(404) 및 더미 트랜지스터들(405a 및 405b)을 도시한다. 기준 라인들(406a 및 406b)(점선들)은 각각 더미 트랜지스터들(405a 및 405b) 아래의 확산 브레이크들의 중심과 정렬된다. 단면 뷰(400b)는 라인(406a)을 따라 더미 트랜지스터(405a)와 함께 중심을 둔 확산 브레이크(407a)를 도시한다. 확산 브레이크(407b)는 더미 트랜지스터(405b) 아래에 있고, 셀(401)의 라인(406b)에 중심을 둔다.
셀(401)은 셀(401)의 하나의 측면에서의 좌측 에지(402) 및 셀(401)의 대향 측면에서의 우측 에지(403)를 포함한다. 셀(401)의 활성 트랜지스터(404)는 (예를 들어, IC 설계 프로세스의 셀 배치 동안 및 그 후에) 확산 브레이크들(407a 및 407b)을 이용하여 이웃 셀들의 활성 트랜지스터들로부터 분리될 수 있다. 좌측 에지(402)에서의 단일 확산 브레이크 및 우측 에지(403)에서의 이중 확산 브레이크의 존재로 인해, 셀(401)은 본 명세서에서 타입 3 셀이라고 지칭된다. SDB는 더미 트랜지스터(405a) 및 확산 브레이크(407a)를 포함한다. DDB는 더미 트랜지스터(405b) 및 확산 브레이크(407b)를 포함한다.
타입 3 셀들은 셀들의 하나의 에지에 위치된 하나의 더미 트랜지스터 및 셀들의 대향 에지 내에서 게이트 피치의 절반에 위치된 다른 더미 트랜지스터를 가질 수 있다. 예를 들어, 더미 트랜지스터(405a) 및 확산 브레이크(407a)는 에지(402)에 중심을 둔다. 더미 트랜지스터(405a)는 에지(402)와 확산 브레이크(407a)의 에지 사이에 걸쳐 있다. 더미 트랜지스터(405b)는 확산 브레이크(407b)의 에지 위에 중심을 둘 수 있고, 여기서 확산 브레이크(407b)는 에지(403)로부터 셀(401) 내의 게이트 피치의 절반에 걸쳐 있다. 더미 트랜지스터(405b)는 에지(403)와 확산 브레이크(407b)의 에지(예를 들어, 트랜지스터(405b)의 중심과 정렬된 에지) 사이에 걸쳐 있다. 따라서, 더미 트랜지스터(405b)의 중심은 에지(403)로부터 게이트 피치의 절반에 있고, 셀(401)에서의 게이트 피치의 절반의 거리 또는 폭에 걸쳐 있다.
타입 3의 셀들은 정수 개수의 게이트 피치들보다 게이트 피치의 절반만큼 더 큰 폭을 가질 수 있다. 일부 실시예들에서, 셀의 하나의 에지에서의 DDB의 중심은 대향 에지에서의 SDB의 중심이 중심으로부터인 것보다 셀의 중심으로부터 게이트 피치의 절반만큼 더 넓다. 예를 들어, 에지(403)는 에지(402)보다 셀(401)의 중심으로부터 (예를 들어, 트랜지스터(404)의 중심에서) 게이트 피치의 절반만큼 더 멀다.
도 5a 및 도 5b는 일 실시예에 따른, 좌측 측면 상에 이중 확산 브레이크 메커니즘을 갖는 혼합 확산 브레이크 메커니즘 셀을 도시한다. 도 5a는 셀(501)의 상면 뷰(500a)를 도시하고, 도 5b는 라인(510)을 가로질러 취해진 셀(501)의 단면 뷰(500b)를 도시한다. 상면 뷰(500a)는 셀(501)의 활성 트랜지스터(504) 및 더미 트랜지스터들(505a 및 505b)을 도시한다. 기준 라인들(506a 및 506b)(점선들)은 각각 더미 트랜지스터들(505a 및 505b) 아래의 확산 브레이크들의 중심과 정렬된다. 단면 뷰(500b)는 더미 트랜지스터(505a) 아래에 있고 셀(501)의 라인(506a)에 중심을 둔 확산 브레이크(507a)를 도시한다. 확산 브레이크(507b)는 라인(506b)을 따라 더미 트랜지스터(505b)와 함께 중심을 둔다.
셀(501)은 셀(501)의 하나의 측면에서의 좌측 에지(502) 및 셀(501)의 대향 측면에서의 우측 에지(503)를 포함한다. 셀(501)의 활성 트랜지스터(504)는 (예를 들어, IC 설계 프로세스의 셀 배치 동안 및 그 후에) 확산 브레이크들(507a 및 507b)을 이용하여 이웃 셀들의 활성 트랜지스터들로부터 분리될 수 있다. 좌측 에지(502)에서의 이중 확산 브레이크 및 우측 에지(503)에서의 단일 확산 브레이크의 존재로 인해, 셀(501)은 본 명세서에서 타입 4 셀이라고 지칭된다. DDB는 더미 트랜지스터(505a) 및 확산 브레이크(507a)를 포함한다. SDB는 더미 트랜지스터(505b) 및 확산 브레이크(507b)를 포함한다.
타입 3 셀들(예를 들어, 도 4a 및 도 4b의 셀(401))과 유사하게, 셀(501)과 같은 타입 4 셀들은 하나의 에지에서 SDB를 갖고 다른 에지에서 DDB를 갖는다. 예를 들어, 더미 트랜지스터(505a)는 확산 브레이크(507a)의 에지 위에 중심을 두고, 여기서 확산 브레이크(507a)는 에지(502)로부터 셀(501) 내의 게이트 피치의 절반에 걸쳐 있다. 더미 트랜지스터(505a)는 에지(502)와 확산 브레이크(507a)의 에지 사이에 걸쳐 있다. 따라서, 더미 트랜지스터(505a)의 중심은 에지(502)로부터 게이트 피치의 절반에 있고, 셀(501)에서의 게이트 피치의 절반의 거리에 걸쳐 있다. 더미 트랜지스터(505b) 및 확산 브레이크(507b)는 에지(503)에 중심을 둔다. 타입 3 셀들과 유사하게, 타입 4의 셀들은, DDB를 갖는 셀 에지의 폭이 셀의 중심으로부터 SDB를 갖는 에지보다 게이트 피치의 절반만큼 더 넓기 때문에 정수 개수의 게이트 피치들보다 게이트 피치의 절반만큼 더 큰 폭을 가질 수 있다. 예를 들어, 에지(502)는 에지(503)보다 셀(501)의 중심으로부터 (예를 들어, 트랜지스터(504)의 중심에서) 게이트 피치의 절반만큼 더 멀다.
도 6a 및 도 6b는 일 실시예에 따른, 서로 하나의 게이트 피치만큼 떨어져 있는 2개의 단일 확산 브레이크 셀들의 배치를 도시한다. EDA 시스템은 IC 설계 레이아웃에서 서로의 옆에 배치하기 위해 셀들의 라이브러리에 액세스할 수 있다. 라이브러리는 도 2a 내지 도 5b를 참조하여 설명된 바와 같은 타입들 1 내지 4의 셀들을 포함할 수 있다. EDA 시스템은 서로 접하는 셀들을 배치할 수 있다(예를 들어, 하나의 셀의 에지는 인접 셀의 에지로부터 제로 게이트 피치들만큼 떨어져 배치된다). 일부 실시예들에서, EDA 시스템은 서로 적어도 하나의 게이트 피치만큼 떨어져 셀들을 배치할 수 있다. 예를 들어, 도 6a 및 도 6b에 도시된 바와 같이, EDA 시스템은 폭이 하나의 게이트 피치인 공간(608)에 의해 타입 1 셀들을 배치할 수 있다.
셀들(601 및 611)은, 셀(201)과 유사하게, 셀들의 양쪽 에지들에서 SDB를 갖는 타입 1 셀들이다. 도 6a는 셀들(601 및 611)의 상면 뷰(600a)를 도시하고, 도 4b는 라인들(610)에서의 셀들(601 및 611)의 단면 뷰(400b)를 도시한다. 상면 뷰(600a)는 셀(601)의 활성 트랜지스터(604) 및 더미 트랜지스터들(605a 및 605b)과 셀(611)의 활성 트랜지스터(614) 및 더미 트랜지스터들(615a 및 615b)을 도시한다. 기준 라인들(606a, 606b, 616a, 및 616b)(점선들)은 각각 더미 트랜지스터들(605a, 605b, 615a, 및 615b) 아래의 확산 브레이크들의 중심과 정렬된다. 단면 뷰(600b)는 각각 라인들(606a, 606b, 616a, 및 616b)을 따라 더미 트랜지스터들(605a, 605b, 615a, 및 615b)과 함께 중심을 둔 확산 브레이크들(607a, 607b, 617a, 및 617b)을 도시한다.
셀(601)은 셀(601)의 하나의 측면에서의 좌측 에지(602) 및 셀(601)의 대향 측면에서의 우측 에지(603)를 포함한다. 셀(611)은 셀(611)의 하나의 측면에서의 좌측 에지(612) 및 셀(611)의 대향 측면에서의 우측 에지(613)를 포함한다. 셀(601)의 활성 트랜지스터(604)는 확산 브레이크들(607b 및 617a)을 통해 이웃 셀(611)의 활성 트랜지스터(614)로부터 분리된다. 제1 SDB는 더미 트랜지스터(606a) 및 확산 브레이크(607a)를 포함하고, 제2 SDB는 더미 트랜지스터(606b) 및 확산 브레이크(607b)를 포함하고, 제3 SDB는 더미 트랜지스터(616a) 및 확산 브레이크(617a)를 포함하고, 제4 SDB는 더미 트랜지스터(606d) 및 확산 브레이크(617b)를 포함한다.
일부 실시예들에서, EDA 시스템은 배타적으로 타입 1인 확산 브레이크들을 갖는 셀들의 라이브러리(즉, DDB 또는 혼합 확산 브레이크 메커니즘 셀들에 대한 별개의 레이아웃이 없는 라이브러리)를 수신할 수 있다. EDA 시스템은 타입 1 셀들을 미리 결정된 거리만큼 떨어지게 배치하고, 배치된 셀들의 타입을 수정할 수 있다. 예를 들어, EDA 시스템은 셀들(601 및 611)을 하나의 게이트 피치만큼 떨어져 배치하고, 셀들(601 또는 611) 중 하나 이상을 대안적인 셀 타입들(예를 들어, 셀 타입들 2-4)로 수정할 수 있다. EDA 시스템은 셀들(601, 611)을 하나의 게이트 피치만큼 떨어져게 배치했으므로, EDA 시스템은 셀들 사이의 충분한 공간을 허용하여, 에지들(603, 612) 각각에서 셀들(601, 611)의 폭을 확장하고, 셀 타입을 변경한다. 예시적인 수정이 도 7a 및 도 7b를 참조하여 설명된다.
도 7a 및 도 7b는 일 실시예에 따른, 서로 인접한 혼합 확산 브레이크 메커니즘 셀들의 배치를 도시한다. 셀(701)은, 셀(401)과 유사하게, 셀의 좌측 에지인 에지(702)에서 SDB를 갖고, 셀의 우측 에지인 에지(703)에서 DDB를 갖는 타입 3 셀이다. 셀(711)은, 셀(501)과 유사하게, 셀의 좌측 에지인 에지(712)에서 DDB를 갖고, 셀의 우측 에지인 에지(713)에서 SDB를 갖는 타입 4 셀이다. 도 7a는 셀들(701 및 711)의 상면 뷰(700a)를 도시하고, 도 7b는 라인(710)에서의 셀들(701 및 711)의 단면 뷰(700b)를 도시한다. 상면 뷰(700a)는 셀(701)의 활성 트랜지스터(704) 및 더미 트랜지스터들(705a 및 705b)과 셀(711)의 활성 트랜지스터(714) 및 더미 트랜지스터들(715a 및 715b)을 도시한다. 기준 라인들(706a, 706b 및 716)(점선들)은 각각 더미 트랜지스터들(705a, 705b, 715a 및 715b) 아래의 확산 브레이크들의 중심과 정렬된다. 단면 뷰(700b)는 각각 더미 트랜지스터들(705a 및 715b)과 함께 중심을 둔 확산 브레이크들(707a 및 717) 및 더미 트랜지스터들(705b 및 715a) 아래의 확산 브레이크(707b)를 도시한다. 확산 브레이크(707b)는 또한 셀들(701 및 717)의 접하는 에지들(703 및 712)에 중심을 둔다.
EDA 시스템은 본 명세서에서 설명된 바와 같은 타입들 1 내지 4의 셀들에 대한 별개의 레이아웃들을 포함하는 셀들의 라이브러리에 액세스할 수 있다. 예를 들어, EDA 시스템은 타입 3 셀에 액세스하여 이를 다른 타입 4 셀 옆에 배치할 수 있다. 일부 실시예들에서, EDA 시스템은 타입 1에 배타적인 확산 브레이크 메커니즘들을 갖는 셀들을 초기에 배치할 수 있다. EDA 시스템은 타입 1 셀들을 초기에 이용하여 모든 셀 타입들로 위에서 설명된 라이브러리에 액세스하거나, 또는 타입 1에 배타적인 확산 브레이크 메커니즘들을 갖는 라이브러리에 액세스할 수 있다. EDA 시스템은 타입 1 셀들을 미리 결정된 거리(예를 들어, 도 6a 및 도 6b에 도시된 바와 같이 하나의 게이트 피치)만큼 떨어져 배치하고, 배치 후에 셀 타입을 수정할 수 있다. 예를 들어, EDA 시스템은 2개의 타입 1 셀들을 하나의 게이트 피치만큼 떨어져 배치하고, 제1 셀을 제2 셀의 좌측에 배치하고, 제1 셀을 타입 3 셀로 그리고 제2 셀을 타입 4 셀로 수정한다. 셀들(701 및 711)은 전술한 어느 한 예의 배치 방법의 결과일 수 있다.
타입 1 셀들을 수정하는 일 실시예에서, EDA 시스템은 타입 1 셀을 다른 타입의 셀로 대체한다. 예를 들어, EDA 시스템은 셀(601)을 셀(701)로 그리고 셀(611)을 셀(711)로 대체한다. 타입 1 셀들을 수정하는 다른 실시예에서, EDA 시스템은 타입 1 셀의 하나 이상의 확산 브레이크를 이동시킨다. 예를 들어, EDA 시스템은 확산 브레이크(607b)의 에지가 라인(606b)에서 더미 트랜지스터(605b)의 중심과 정렬되도록 확산 브레이크(607b)를 셀(601)의 중심으로부터 멀리 이동시킨다. 이 예에서, EDA 시스템은 또한 확산 브레이크(617a)의 에지가 라인(616a)에서 더미 트랜지스터(615a)의 중심과 정렬되도록 확산 브레이크(617a)를 셀(611)의 중심으로부터 멀리 이동시킬 수 있다.
EDA 시스템은 IC 설계의 레이아웃에서 타입들 1 내지 4 중 어느 것을 이용할지를 선택할 수 있다. 일 실시예에서, EDA 시스템은 4개의 셀 타입들 각각에 대해, IC 설계에서 대응하는 셀을 다른 셀에 인접하게 위치시키는 것과 연관된 성능 메트릭들을 결정한다. 성능 메트릭들은, 지연, 슬루(slew), 동적 전력, 또는 누설이나 그들 근처에 배치된 셀과 같은 메트릭들에 악영향을 미치는 확산 브레이크의 영향들에 관련될 수 있다. 성능 메트릭들을 결정하는 일 실시예에서, EDA 시스템은 4개의 셀 타입들 중 하나의 셀 타입의 셀이 그 옆에 배치될 타겟 셀의 측면을 결정한다. EDA 시스템은 셀이 그 옆에 배치되는 타겟 셀들의 측면들 및 4개의 셀 타입들 각각에 대한 모델들에 액세스할 수 있다. 모델은 디레이트 테이블(derate table)일 수 있다. 예를 들어, EDA 시스템은 타입 3 셀을 타겟 셀의 우측 측면에 위치시키는 것에 대응하는 디레이트 테이블에 액세스한다. 이러한 모델들을 이용하여, EDA 시스템은 특정 확산 브레이크 메커니즘 타입들의 셀들을 배치하는 것에 대응하는 성능 메트릭들을 평가한다. EDA 시스템은 결정된 성능 메트릭들에 기초하여 4개의 셀 타입들로부터 셀을 선택할 수 있다. 따라서, EDA 시스템은 IC 설계의 타이밍 또는 전력 제약들에 대해 최적화할 수 있다.
도 8은 일 실시예에 따른, 집적 회로를 설계하기 위한 프로세스(800)를 도시하는 흐름도이다. EDA 시스템은 프로세스(800)를 수행할 수 있다. 802에서, EDA 시스템은 제1 셀, 제2 셀, 제3 셀, 및 제4 셀로부터 하나의 셀을 선택할 수 있다. 제1 셀은 타입 1 셀일 수 있고, 제2 셀은 타입 2 셀일 수 있고, 제3 셀은 타입 3 셀일 수 있고, 제4 셀은 타입 4 셀일 수 있다. 일 예에서, EDA 시스템은 IC 설계 레이아웃에서 2개의 셀들을 서로 인접하게 배치하고, 셀들 사이에는 갭이 남아 있고(즉, 2개의 셀들 사이에 수평으로 하나의 게이트 피치에 다른 셀이 배치되지 않고), 셀들 중 적어도 하나는 확산 브레이크를 포함한다. EDA 시스템은 셀의 타입을 수정함으로써 2개의 셀들의 배치후 튜닝을 수행할 수 있다. 예를 들어, 802에서, EDA 시스템은 레이아웃에서 타입 1 셀을 대체할 타입 3 셀을 선택할 수 있다. 일 실시예에서, 802에서, EDA 시스템은 레이아웃에서 4개의 셀들 각각을 위치시키는 것과 연관된 성능 메트릭들을 결정한 후에 4개의 셀들 중 하나를 선택할 수 있다. 예를 들어, EDA 시스템은 타입 1 셀을 대안적인 타입들(예로서, 타입들 2 내지 4) 각각으로 대체함으로써 유발되는 성능 속도의 각각의 증가 또는 감소를 결정할 수 있다. EDA 시스템은 타입 3 셀이 IC 설계의 성능 속도를 증가시키는 것으로 결정할 수 있다.
804에서, EDA 시스템은 선택된 셀을 집적 회로 설계 내에 위치시킨다. 예를 들어, 804에서, EDA 시스템은 타입 1 셀과 동일한 레이아웃 상의 위치에 중심을 두도록 타입 3 셀을 위치시킨다. 806에서, EDA 시스템은 선택된 셀을 포함하는 집적 회로 설계의 시뮬레이션을 수행한다. 806에서, EDA 시스템은 선택된 셀을 포함하는 레이아웃을 갖는 회로의 거동을 복제하기 위해 IC 설계의 레이아웃의 거동의 트랜지스터 시뮬레이션, 네트리스트(netlist)의 논리적 거동의 논리 시뮬레이션, 하드 에뮬레이션, 또는 임의의 다른 적절한 IC 시뮬레이션을 수행할 수 있다.
도 8을 참조하여 전술한 프로세스 및 형식들의 시퀀스는 단지 예시일 뿐이다. 예를 들어, 선택하는 것(802) 및 위치시키는 것(804)의 프로세스는 806 시뮬레이션을 수행하는 것으로 진행하기 전에 반복될 수 있다.
도 9는 집적 회로를 나타내는 설계 데이터 및 명령어들을 변환 및 검증하기 위해 집적 회로와 같은 제조 물품의 설계, 검증, 및 제조 동안 이용되는 프로세스들의 예시적인 세트(900)를 도시한다. 이러한 프로세스들 각각은 다수의 모듈들 또는 동작들로서 구조화되고 가능해질 수 있다. 용어 'EDA'는 용어 '전자 설계 자동화'를 의미한다. 이러한 프로세스들은 설계자에 의해 공급되는 정보, 즉, EDA 프로세스들(912)의 세트를 이용하는 제조 물품을 생성하도록 변환되는 정보를 갖는 제품 아이디어(910)의 생성으로 시작한다. 설계가 완료될 때, 설계는 테이프 아웃(taped-out)(934)되고, 이는 집적 회로에 대한 아트워크(artwork)(예를 들어, 기하학적 패턴들)가 마스크 세트를 제조하기 위해 제조 설비에 전송되고, 이는 이후 집적 회로를 제조하는 데 이용된다. 테이프 아웃 후에, 반도체 다이가 제조(936)되고, 패키징 및 조립 프로세스들(938)이 수행되어 완성된 집적 회로(940)를 생성한다.
회로 또는 전자 구조체에 대한 사양들은 로우-레벨 트랜지스터 재료 레이아웃들로부터 하이-레벨 기술 언어들까지의 범위일 수 있다. VHDL, Verilog, SystemVerilog, SystemC, MyHDL 또는 OpenVera와 같은 하드웨어 기술 언어(hardware description language)('HDL')를 이용하여 회로들 및 시스템들을 설계하기 위해 하이-레벨의 표현이 이용될 수 있다. HDL 기술은 논리-레벨 레지스터 전송 레벨('RTL') 기술, 게이트-레벨 기술(gate-level description), 레이아웃-레벨 기술(layout-level description), 또는 마스크-레벨 기술(mask-level description)로 변환될 수 있다. 더 상세한 기술인 각각의 더 낮은 표현 레벨은 설계 기술에 더 유용한 상세, 예를 들어, 기술을 포함하는 모듈들에 대한 더 많은 상세들을 추가한다. 더 상세한 기술들인 표현의 더 낮은 레벨들은 컴퓨터에 의해 생성되거나, 설계 라이브러리로부터 도출되거나, 다른 설계 자동화 프로세스에 의해 생성될 수 있다. 더 상세한 기술들을 특정하기 위한 표현 언어의 더 낮은 레벨에서의 사양 언어의 예는 SPICE이며, 그것은 많은 아날로그 컴포넌트들을 갖는 회로들의 상세한 기술들에 이용된다. 표현의 각각의 레벨에서의 기술들은 그 계층의 대응하는 툴들(예를 들어, 형식 검증 툴)에 의한 이용을 위해 인에이블된다. 설계 프로세스는 도 9에 도시된 시퀀스를 이용할 수 있다. 설명된 프로세스들은 EDA 제품들(또는 툴들)에 의해 가능해진다.
시스템 설계(914) 동안, 제조될 집적 회로의 기능이 특정된다. 설계는 전력 소비, 성능, 영역(물리적 및/또는 코드의 라인들), 및 비용의 감소 등과 같은 원하는 특성들을 위해 최적화될 수 있다. 설계를 상이한 타입들의 모듈들 또는 컴포넌트들로 파티셔닝하는 것은 이 형식에서 발생할 수 있다.
논리적 설계 및 기능적 검증(916) 동안, 회로에서의 모듈들 또는 컴포넌트들은 하나 이상의 기술 언어로 특정되고, 사양은 기능 정확도에 대해 체크된다. 예를 들어, 회로의 컴포넌트들은 설계되는 회로 또는 시스템의 사양의 요건들에 부합하는 출력들을 생성하도록 검증될 수 있다. 기능적 검증은 시뮬레이터들 및 다른 프로그램들, 예컨대, 테스트벤치 생성기들(testbench generators), 정적 HDL 체커들, 및 형식 검증기들을 이용할 수 있다. 일부 실시예들에서, '에뮬레이터들(emulators)' 또는 '프로토타이핑 시스템들(prototyping systems)'이라고 지칭되는 컴포넌트들의 특수 시스템들은 기능적 검증의 속도를 높이는 데 이용된다.
테스트를 위한 합성 및 설계(918) 동안, HDL 코드는 네트리스트로 변환된다. 일부 실시예들에서, 네트리스트는 그래프 구조일 수 있으며, 그래프 구조의 에지들은 회로의 컴포넌트들을 나타내고, 그래프 구조의 노드들은 컴포넌트들이 어떻게 상호접속되는지를 나타낸다. HDL 코드 및 네트리스트 둘 다는, 제조될 때, 집적 회로가 특정된 설계에 따라 수행하는 것을 검증하기 위해 EDA 제품에 의해 이용될 수 있는 계층적 제조 물품들이다. 네트리스트는 타겟 반도체 제조 기술에 대해 최적화될 수 있다. 추가적으로, 완성된 집적 회로는 집적 회로가 사양의 요건들을 만족시키는지를 검증하기 위해 테스트될 수 있다.
네트리스트 검증(920) 동안, 네트리스트는 타이밍 제약들의 준수 및 HDL 코드와의 대응에 대해 체크된다. 설계 계획(922) 동안, 집적 회로에 대한 전체 플로어 플랜(overall floor plan)이 구성되고 타이밍 및 상위 레벨 라우팅(top-level routing)을 위해 분석된다.
레이아웃 또는 물리적 구현(924) 동안, 물리적 배치(트랜지스터들 또는 커패시터들과 같은 회로 컴포넌트들을 위치시키는 것) 및 라우팅(다수의 전도체들에 의한 회로 컴포넌트들의 접속)이 발생하고, 특정 논리 기능들을 가능하게 하기 위한 라이브러리로부터의 셀들의 선택이 수행될 수 있다. 본 명세서에서 이용된 바와 같이, 용어 '셀'은 부울 논리 함수(Boolean logic function)(예를 들어, AND, OR, NOT, XOR) 또는 (플립플롭 또는 래치와 같은) 저장 함수를 제공하는 트랜지스터들, 다른 컴포넌트들 및 상호접속들의 세트를 특정할 수 있다. 본 명세서에서 이용된 바와 같이, 회로 '블록'은 둘 이상의 셀들을 지칭할 수 있다. 셀 및 회로 블록 둘 다는 모듈 또는 컴포넌트라고 지칭될 수 있고, 물리적 구조들 및 시뮬레이션들 둘 다로서 인에이블된다. 파라미터들은 크기와 같은 ('표준 셀들'에 기초하여) 선택된 셀들에 대해 특정되고, EDA 제품들에 의한 이용을 위해 데이터베이스에서 액세스가능하게 된다.
분석 및 추출(926) 동안, 회로 기능은 레이아웃 레벨에서 검증되고, 이는 레이아웃 설계의 개선을 허용한다. 물리적 검증(928) 동안, DRC 제약들, 전기적 제약들, 리소그래피 제약들과 같은 제조 제약들이 정확하고, 회로 기능이 HDL 설계 사양과 부합하도록 보장하기 위해 레이아웃 설계가 체크된다. 해상도 향상(930) 동안, 레이아웃의 기하구조는 회로 설계가 어떻게 제조되는지를 개선하도록 변환된다.
테이프 아웃 동안, 데이터는 리소그래피 마스크들의 생성을 위해 (적절한 경우에 리소그래피 향상들이 적용된 후에) 이용되도록 생성된다. 마스크 데이터 준비(932) 동안, '테이프 아웃' 데이터는 완성된 집적 회로들을 생성하는 데 이용되는 리소그래피 마스크들을 생성하는 데 이용된다.
(도 10의 컴퓨터 시스템(1000) 또는 도 9의 호스트 시스템(907)과 같은) 컴퓨터 시스템의 저장 서브시스템은 본 명세서에서 설명된 EDA 제품들의 일부 또는 전부에 의해 이용되는 프로그램들 및 데이터 구조들, 및 라이브러리에 대한 셀들의 개발을 위해 그리고 라이브러리를 이용하는 물리적 및 논리적 설계를 위해 이용되는 제품들을 저장하는 데 이용될 수 있다.
도 10은 머신으로 하여금 본 명세서에서 논의된 방법들 중 임의의 하나 이상을 수행하게 하기 위한 명령어들의 세트가 실행될 수 있는 컴퓨터 시스템(1000)의 예시적인 머신을 도시한다. 대안적인 구현들에서, 머신은 LAN, 인트라넷, 엑스트라넷, 및/또는 인터넷에서 다른 머신들에 접속(예를 들어, 네트워킹)될 수 있다. 머신은 클라이언트-서버 네트워크 환경에서 서버 또는 클라이언트 머신으로서, 피어-투-피어(또는 분산형) 네트워크 환경에서 피어 머신으로서, 또는 클라우드 컴퓨팅 인프라스트럭처 또는 환경에서 서버 또는 클라이언트 머신으로서 동작할 수 있다.
머신은 개인용 컴퓨터(personal computer)(PC), 태블릿 PC, 셋톱 박스(set-top box)(STB), PDA(Personal Digital Assistant), 셀룰러 전화, 웹 기기, 서버, 네트워크 라우터, 스위치 또는 브리지, 또는 해당 머신에 의해 취해질 액션들을 특정하는 (순차적이거나 또는 다른 방식의) 명령어들의 세트를 실행할 수 있는 임의의 머신일 수 있다. 또한, 단일 머신이 예시되어 있지만, "머신"이라는 용어는 또한 본 명세서에서 논의된 방법들 중 임의의 하나 이상을 수행하기 위해 명령어들의 세트(또는 다수의 세트들)를 개별적으로 또는 공동으로 실행하는 머신들의 임의의 집합을 포함하는 것으로 간주되어야 한다.
예시적인 컴퓨터 시스템(1000)은, 버스(1030)를 통해 서로 통신하는, 처리 디바이스(1002), 메인 메모리(1004)(예를 들어, 판독 전용 메모리(ROM), 플래시 메모리, 동기식 DRAM(SDRAM)과 같은 동적 랜덤 액세스 메모리(DRAM)), 정적 메모리(1006)(예를 들어, 플래시 메모리, 정적 랜덤 액세스 메모리(SRAM) 등), 및 데이터 저장 디바이스(1018)를 포함한다.
처리 디바이스(1002)는 마이크로프로세서, 중앙 처리 유닛 등과 같은 하나 이상의 프로세서를 나타낸다. 보다 구체적으로, 처리 디바이스는 CISC(complex instruction set computing) 마이크로프로세서, RISC(reduced instruction set computing) 마이크로프로세서, VLIW(very long instruction word) 마이크로프로세서, 또는 다른 명령어 세트들을 구현하는 프로세서, 또는 명령어 세트들의 조합을 구현하는 프로세서들일 수 있다. 처리 디바이스(1002)는 또한 주문형 집적 회로(application specific integrated circuit)(ASIC), 필드 프로그래머블 게이트 어레이(field programmable gate array)(FPGA), 디지털 신호 프로세서(digital signal processor)(DSP), 네트워크 프로세서 등과 같은 하나 이상의 특수 목적 처리 디바이스일 수 있다. 처리 디바이스(1002)는 본 명세서에 설명된 동작들 및 형식들을 수행하기 위한 명령어들(1026)을 실행하도록 구성될 수 있다.
컴퓨터 시스템(1000)은 네트워크(1020)를 통해 통신하기 위해 네트워크 인터페이스 디바이스(1008)를 더 포함할 수 있다. 컴퓨터 시스템(1000)은 또한, 비디오 디스플레이 유닛(1010)(예를 들어, 액정 디스플레이(LCD) 또는 음극선관(CRT)), 영숫자 입력 디바이스(1012)(예를 들어, 키보드), 커서 제어 디바이스(1014)(예를 들어, 마우스), 그래픽 처리 유닛(1022), 신호 생성 디바이스(1016)(예를 들어, 스피커), 그래픽 처리 유닛(1022), 비디오 처리 유닛(1028), 및 오디오 처리 유닛(1032)을 포함할 수 있다.
데이터 저장 디바이스(1018)는, 본 명세서에 설명된 방법들 또는 기능들 중 임의의 하나 이상을 구현하는 소프트웨어 또는 명령어들(1026)의 하나 이상의 세트가 저장되어 있는 (비일시적 컴퓨터 판독가능 매체라고도 알려진) 머신 판독가능 저장 매체(1024)를 포함할 수 있다. 명령어들(1026)은 또한, 컴퓨터 시스템(1000)에 의한 그 실행 동안에, 완전히 또는 적어도 부분적으로, 메인 메모리(1004) 내에 및/또는 처리 디바이스(1002) 내에 존재할 수 있고, 메인 메모리(1004) 및 처리 디바이스(1002)는 또한 머신 판독가능 저장 매체를 구성한다.
일부 구현들에서, 명령어들(1026)은 본 개시내용에 대응하는 기능을 구현하기 위한 명령어들을 포함한다. 머신 판독가능 저장 매체(1024)가 예시적인 구현에서 단일 매체인 것으로 도시되어 있지만, "머신 판독가능 저장 매체"라는 용어는 명령어들의 하나 이상의 세트를 저장한 단일 매체 또는 다수의 매체들(예를 들어, 중앙집중형 또는 분산형 데이터베이스, 및/또는 연관된 캐시들 및 서버들)을 포함하는 것으로 간주되어야 한다. 용어 "머신 판독가능 저장 매체"는 또한, 머신에 의한 실행을 위한 명령어들의 세트를 저장 또는 인코딩할 수 있고, 머신 및 처리 디바이스(1002)로 하여금 본 개시내용의 방법들 중 임의의 하나 이상을 수행하게 하는 임의의 매체를 포함하는 것으로 간주되어야 한다. 따라서, "머신 판독가능 저장 매체"라는 용어는 고체 상태 메모리들, 광학 매체 및 자기 매체를 포함하지만 이에 제한되지는 않는 것으로 간주되어야 한다.
이전의 상세한 설명들의 일부 부분들은 컴퓨터 메모리 내의 데이터 비트들에 대한 동작들의 알고리즘들 및 심볼 표현들의 관점에서 제시되었다. 이러한 알고리즘 설명들 및 표현들은 데이터 처리 분야의 통상의 기술자가 그들의 작업의 본질을 본 기술분야의 다른 통상의 기술자에게 가장 효과적으로 전달하기 위해 이용되는 방식들이다. 알고리즘은 원하는 결과를 초래하는 동작들의 시퀀스일 수 있다. 동작들은 물리적 양들의 물리적 조작들을 요구하는 것들이다. 그러한 양들은 저장, 결합, 비교, 및 다른 방식으로 조작될 수 있는 전기 또는 자기 신호들의 형태를 취할 수 있다. 그러한 신호들은 비트들, 값들, 요소들, 심볼들, 문자들, 용어들, 숫자들 등으로 지칭될 수 있다.
그러나, 이들 및 유사한 용어들 모두는 적절한 물리적 양들과 연관되고 이들 양들에 적용되는 편리한 라벨들일 뿐이라는 점을 명심해야 한다. 본 개시내용으로부터 명백한 바와 같이 구체적으로 달리 언급되지 않는 한, 설명 전반에 걸쳐, 특정 용어들이 컴퓨터 시스템의 레지스터들 및 메모리들 내의 물리적(전자적) 양들로서 표현되는 데이터를 컴퓨터 시스템 메모리들 또는 레지스터들 또는 다른 그러한 정보 저장 디바이스들 내의 물리적 양들로서 유사하게 표현되는 다른 데이터로 조작하고 변환하는 컴퓨터 시스템 또는 유사한 전자 컴퓨팅 디바이스의 액션 및 프로세스들을 지칭한다는 것이 이해된다.
본 개시내용은 또한 본 명세서에서의 동작들을 수행하기 위한 장치에 관한 것이다. 이 장치는 의도된 목적을 위해 특별히 구성될 수 있거나, 컴퓨터에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 재구성되는 컴퓨터를 포함할 수 있다. 그러한 컴퓨터 프로그램은, 각각이 컴퓨터 시스템 버스에 결합되는, 플로피 디스크들, 광학 디스크들, CD-ROM들, 및 자기-광학 디스크들을 포함하는 임의의 타입의 디스크, 판독 전용 메모리(ROM)들, 랜덤 액세스 메모리(RAM)들, EPROM들, EEPROM들, 자기 또는 광학 카드들, 또는 전자 명령어들을 저장하기에 적합한 임의의 타입의 매체들과 같은, 그러나 이에 제한되지 않는, 컴퓨터 판독가능 저장 매체에 저장될 수 있다.
본 명세서에 제시된 알고리즘들 및 디스플레이들은 본질적으로 임의의 특정 컴퓨터 또는 다른 장치에 관련되지 않는다. 다양한 다른 시스템들이 본 명세서의 교시들에 따라 프로그램들과 함께 이용될 수 있거나, 또는 방법을 수행하기 위해 더 특수화된 장치를 구성하는 것이 편리한 것으로 판명될 수 있다. 또한, 본 개시내용은 임의의 특정 프로그래밍 언어를 참조하여 설명되지 않는다. 다양한 프로그래밍 언어들이 본 명세서에 설명된 바와 같은 개시내용의 교시들을 구현하기 위해 이용될 수 있다는 것이 이해될 것이다.
본 개시내용은 본 개시내용에 따른 프로세스를 수행하도록 컴퓨터 시스템(또는 다른 전자 디바이스들)을 프로그래밍하는 데 이용될 수 있는 명령어들이 저장되어 있는 머신 판독가능 매체를 포함할 수 있는 컴퓨터 프로그램 제품 또는 소프트웨어로서 제공될 수 있다. 머신 판독가능 매체는 머신(예를 들어, 컴퓨터)에 의해 판독가능한 형태로 정보를 저장하기 위한 임의의 메커니즘을 포함한다. 예를 들어, 머신 판독가능(예를 들어, 컴퓨터 판독가능) 매체는 판독 전용 메모리("ROM"), 랜덤 액세스 메모리("RAM"), 자기 디스크 저장 매체들, 광학 저장 매체들, 플래시 메모리 디바이스들 등과 같은 머신(예를 들어, 컴퓨터) 판독가능 저장 매체를 포함한다.
전술한 개시내용에서, 개시내용의 구현들은 그 특정 예시적인 구현들을 참조하여 설명되었다. 다음의 청구항들에 개시된 바와 같은 본 개시내용의 구현들의 더 넓은 사상 및 범위를 벗어나지 않고 다양한 수정들이 이루어질 수 있다는 것이 명백할 것이다. 본 개시내용이 단일 시제에서의 일부 요소들을 언급하는 경우, 하나보다 많은 요소가 도면들에 묘사될 수 있고, 유사한 요소들은 유사한 번호들로 라벨링된다. 따라서, 본 개시내용 및 도면들은 제한적인 의미가 아니라 예시적인 의미로 간주되어야 한다.

Claims (20)

  1. 집적 회로를 설계하기 위한 셀의 디지털 표현을 저장한 비일시적 컴퓨터 판독가능 매체로서, 상기 셀은,
    제1 에지;
    상기 제1 에지의 대향 측면에서의 제2 에지;
    상기 셀의 상기 제1 에지와 제1 확산 브레이크의 에지 사이에 걸쳐 있는 제1 더미 트랜지스터 - 상기 제1 확산 브레이크는 상기 제1 더미 트랜지스터 아래에 중심을 둠 -; 및
    상기 셀의 상기 제2 에지와 제2 확산 브레이크의 에지 사이에 걸쳐 있는 제2 더미 트랜지스터 - 상기 제2 더미 트랜지스터는 상기 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있음 - 를 포함하는,
    비일시적 컴퓨터 판독가능 매체.
  2. 제1항에 있어서,
    상기 제1 더미 트랜지스터 및 상기 제1 확산 브레이크는 단일 확산 브레이크를 형성하는, 비일시적 컴퓨터 판독가능 매체.
  3. 제1항 또는 제2항에 있어서,
    상기 제2 확산 브레이크는 상기 셀 내의 확산 영역을 인접 셀의 확산 영역으로부터 격리하고, 상기 제2 확산 브레이크는 상기 제2 더미 트랜지스터와 상기 인접 셀의 더미 트랜지스터 사이의 중간에 중심을 두는, 비일시적 컴퓨터 판독가능 매체.
  4. 제3항에 있어서,
    상기 제2 더미 트랜지스터, 상기 인접 셀의 상기 더미 트랜지스터, 및 상기 제2 확산 브레이크는 이중 확산 브레이크를 형성하는, 비일시적 컴퓨터 판독가능 매체.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 제1 확산 브레이크는 상기 셀의 상기 제1 에지와 함께 중심을 두는, 비일시적 컴퓨터 판독가능 매체.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 제2 확산 브레이크는 상기 셀의 상기 제2 에지에 접하는, 비일시적 컴퓨터 판독가능 매체.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 제2 더미 트랜지스터는 상기 제2 확산 브레이크의 에지 위에 중심을 두는, 비일시적 컴퓨터 판독가능 매체.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 셀은 정수의 게이트 피치들보다 게이트 피치의 절반만큼 더 큰 폭을 갖는, 비일시적 컴퓨터 판독가능 매체.
  9. 집적 회로 설계를 설계하기 위한 방법으로서,
    제1 셀, 제2 셀, 제3 셀, 또는 제4 셀 중 하나를 선택하는 단계 -
    상기 제1 셀은,
    상기 제1 셀의 좌측 에지와 제1 확산 브레이크의 에지 사이에 걸쳐 있는 제1 더미 트랜지스터 - 상기 제1 확산 브레이크는 상기 제1 더미 트랜지스터 아래에 중심을 둠 -; 및
    상기 제1 셀의 우측 에지와 제2 확산 브레이크의 에지 사이에 걸쳐 있는 제2 더미 트랜지스터 - 상기 제2 확산 브레이크는 상기 제2 더미 트랜지스터 아래에 중심을 둠 - 를 포함하고,
    상기 제2 셀은,
    상기 제2 셀의 좌측 에지와 제3 확산 브레이크의 에지 사이에 걸쳐 있는 제3 더미 트랜지스터 - 상기 제3 더미 트랜지스터는 상기 제2 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있음 -; 및
    상기 제2 셀의 우측 에지와 제4 확산 브레이크의 에지 사이에 걸쳐 있는 제4 더미 트랜지스터 - 상기 제4 더미 트랜지스터는 상기 제2 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있음 - 를 포함하고,
    상기 제3 셀은,
    상기 제3 셀의 좌측 에지와 제5 확산 브레이크의 에지 사이에 걸쳐 있는 제5 더미 트랜지스터 - 상기 제5 확산 브레이크는 상기 제5 더미 트랜지스터 아래에 중심을 둠 -; 및
    상기 제3 셀의 우측 에지와 제6 확산 브레이크의 에지 사이에 걸쳐 있는 제6 더미 트랜지스터 - 상기 제6 더미 트랜지스터는 상기 제3 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있음 - 를 포함하고,
    상기 제4 셀은,
    상기 제4 셀의 좌측 에지와 제7 확산 브레이크의 에지 사이에 걸쳐 있는 제7 더미 트랜지스터 - 상기 제7 더미 트랜지스터는 상기 제4 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있음 -; 및
    상기 제4 셀의 우측 에지와 제8 확산 브레이크의 에지 사이에 걸쳐 있는 제8 더미 트랜지스터 - 상기 제8 확산 브레이크는 상기 제8 더미 트랜지스터 아래에 중심을 둠 - 를 포함함 -;
    선택된 셀을 상기 집적 회로 설계 내로 위치시키는 단계; 및
    상기 선택된 셀을 포함하는 상기 집적 회로 설계의 시뮬레이션을 수행하는 단계를 포함하는
    방법.
  10. 제9항에 있어서,
    상기 제1 셀, 상기 제2 셀, 상기 제3 셀, 및 상기 제4 셀 중 하나를 선택하는 단계는,
    4개의 셀들 각각에 대해, 상기 집적 회로 설계에서 각자의 셀을 다른 셀에 인접하게 위치시키는 것과 연관된 성능 메트릭들을 결정하는 단계; 및
    상기 집적 회로 설계의 타이밍 및 전력 제약들 중 하나 이상에 대해 최적화하기 위해 상기 결정된 성능 메트릭들에 기초하여 상기 셀을 선택하는 단계를 포함하는, 방법.
  11. 제10항에 있어서,
    상기 집적 회로 설계에서 각자의 셀을 다른 셀에 인접하게 위치시키는 것과 연관된 성능 메트릭들을 결정하는 단계는,
    다른 셀을 위치시키기 위한 상기 각자의 셀의 측면을 결정하는 단계; 및
    상기 다른 셀을 상기 각자의 셀의 좌측 에지에 위치시키기로 결정하는 것에 응답하여, 상기 다른 셀을 상기 각자의 셀의 상기 좌측 에지에 위치시키는 것과 연관된 모델에 액세스하는 단계 - 상기 모델은 상기 성능 메트릭들을 포함함 - 를 포함하는, 방법.
  12. 제9항 내지 제11항 중 어느 한 항에 있어서,
    선택된 셀을 상기 집적 회로 설계 내로 위치시키는 단계는 상기 집적 회로 설계 내의 이전에 배치된 셀을 상기 선택된 셀로 대체하는 단계를 포함하는, 방법.
  13. 제9항 내지 제12항 중 어느 한 항에 있어서,
    상기 제1 셀은 상기 제1 더미 트랜지스터 및 상기 제1 확산 브레이크를 포함하는 제1 단일 확산 브레이크, 및 상기 제2 더미 트랜지스터 및 상기 제2 확산 브레이크를 포함하는 제2 단일 확산 브레이크를 포함하는, 방법.
  14. 제9항 내지 제13항 중 어느 한 항에 있어서,
    상기 제2 셀은 상기 제3 더미 트랜지스터 및 상기 제3 확산 브레이크를 포함하는 제1 이중 확산 브레이크, 및 상기 제4 더미 트랜지스터 및 상기 제4 확산 브레이크를 포함하는 제2 이중 확산 브레이크를 포함하는, 방법.
  15. 제9항 내지 제14항 중 어느 한 항에 있어서,
    상기 제3 셀은 상기 제5 더미 트랜지스터 및 상기 제5 확산 브레이크를 포함하는 단일 확산 브레이크, 및 상기 제6 더미 트랜지스터 및 상기 제6 확산 브레이크를 포함하는 이중 확산 브레이크를 포함하는, 방법.
  16. 제9항 내지 제15항 중 어느 한 항에 있어서,
    상기 제4 셀은 상기 제7 더미 트랜지스터 및 상기 제7 확산 브레이크를 포함하는 이중 확산 브레이크, 및 상기 제8 더미 트랜지스터 및 상기 제8 확산 브레이크를 포함하는 단일 확산 브레이크를 포함하는, 방법.
  17. 셀로부터 적어도 부분적으로 인스턴스화된 집적 회로로서, 상기 셀은,
    제1 에지;
    상기 제1 에지의 대향 측면에서의 제2 에지;
    상기 셀의 상기 제1 에지와 제1 확산 브레이크의 에지 사이에 걸쳐 있는 제1 더미 트랜지스터 - 상기 제1 확산 브레이크는 상기 제1 더미 트랜지스터 아래에 중심을 둠 -; 및
    상기 셀의 상기 제2 에지와 제2 확산 브레이크의 에지 사이에 걸쳐 있는 제2 더미 트랜지스터 - 상기 제2 더미 트랜지스터는 상기 셀에서의 게이트 피치의 절반의 거리에 걸쳐 있음 - 를 포함하는,
    집적 회로.
  18. 제17항에 있어서,
    상기 제1 더미 트랜지스터 및 상기 제1 확산 브레이크는 단일 확산 브레이크를 형성하는, 집적 회로.
  19. 제17항 또는 제18항에 있어서,
    상기 제2 확산 브레이크는 상기 셀 내의 확산 영역을 인접 셀의 확산 영역으로부터 격리하고, 상기 제2 확산 브레이크는 상기 제2 더미 트랜지스터와 상기 인접 셀의 더미 트랜지스터 사이의 중간에 중심을 두는, 집적 회로.
  20. 제19항에 있어서,
    상기 제2 더미 트랜지스터, 상기 인접 셀의 상기 더미 트랜지스터, 및 상기 제2 확산 브레이크는 이중 확산 브레이크를 형성하는, 집적 회로.
KR1020237005218A 2020-09-14 2021-09-13 셀 설계를 위한 혼합 확산 브레이크 KR20230065976A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063078168P 2020-09-14 2020-09-14
US63/078,168 2020-09-14
PCT/US2021/050119 WO2022056412A1 (en) 2020-09-14 2021-09-13 Mixed diffusion break for cell design

Publications (1)

Publication Number Publication Date
KR20230065976A true KR20230065976A (ko) 2023-05-12

Family

ID=78135136

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237005218A KR20230065976A (ko) 2020-09-14 2021-09-13 셀 설계를 위한 혼합 확산 브레이크

Country Status (4)

Country Link
US (1) US20220085018A1 (ko)
KR (1) KR20230065976A (ko)
CN (1) CN116710923A (ko)
WO (1) WO2022056412A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230252208A1 (en) * 2022-02-09 2023-08-10 Synopsys, Inc. Transforming a logical netlist into a hierarchical parasitic netlist
CN117727751A (zh) * 2022-09-19 2024-03-19 华为技术有限公司 标准单元、集成电路、标准单元库及电子设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9831272B2 (en) * 2016-03-31 2017-11-28 Qualcomm Incorporated Metal oxide semiconductor cell device architecture with mixed diffusion break isolation trenches
KR102599048B1 (ko) * 2018-08-16 2023-11-06 삼성전자주식회사 표준 셀을 포함하는 집적 회로 및 이를 제조하기 위한 방법

Also Published As

Publication number Publication date
US20220085018A1 (en) 2022-03-17
CN116710923A (zh) 2023-09-05
WO2022056412A1 (en) 2022-03-17

Similar Documents

Publication Publication Date Title
KR20230065976A (ko) 셀 설계를 위한 혼합 확산 브레이크
US11836425B2 (en) Engineering change orders with consideration of adversely affected constraints
US11790150B2 (en) Placement and simulation of cell in proximity to cell with diffusion break
US20220171912A1 (en) Poly-bit cells
US11836433B2 (en) Memory instance reconfiguration using super leaf cells
US20210390244A1 (en) System and Method for Synchronizing Net Text Across Hierarchical Levels
US11531797B1 (en) Vector generation for maximum instantaneous peak power
US11853680B2 (en) Incremental routing based pin assignment
US20210034804A1 (en) Refining multi-bit flip flops mapping without explicit de-banking and re-banking
US11847396B1 (en) Integrated circuit design using multi-bit combinational cells
US20230252208A1 (en) Transforming a logical netlist into a hierarchical parasitic netlist
US11416661B2 (en) Automatic derivation of integrated circuit cell mapping rules in an engineering change order flow
US20230306180A1 (en) Static timing analysis of multi-die three-dimensional integrated circuits
US11222154B2 (en) State table complexity reduction in a hierarchical verification flow
US11836000B1 (en) Automatic global clock tree synthesis
US20230022615A1 (en) Boundary cell having a common semiconductor type for library cell
US11972191B2 (en) System and method for providing enhanced net pruning
US11328873B2 (en) Parallel plate capacitor resistance modeling and extraction
US11816407B1 (en) Automatic channel identification of high-bandwidth memory channels for auto-routing
US20240096435A1 (en) Built-in self-test circuit for row hammering in memory
US11526642B1 (en) Clock network power estimation for logical designs
US20220327266A1 (en) Generating a reduced block model view on-the-fly
US20220050947A1 (en) Global mistracking analysis in integrated circuit design
WO2022256955A1 (en) Metal-insulator-metal capacitor insertion
WO2023059915A1 (en) Unified framework and method for accurate context-aware timing modeling