KR20150035405A - 집적회로 레이아웃을 생성하는 방법 - Google Patents

집적회로 레이아웃을 생성하는 방법 Download PDF

Info

Publication number
KR20150035405A
KR20150035405A KR20140124060A KR20140124060A KR20150035405A KR 20150035405 A KR20150035405 A KR 20150035405A KR 20140124060 A KR20140124060 A KR 20140124060A KR 20140124060 A KR20140124060 A KR 20140124060A KR 20150035405 A KR20150035405 A KR 20150035405A
Authority
KR
South Korea
Prior art keywords
boundary
standard cell
cell
cells
standard
Prior art date
Application number
KR20140124060A
Other languages
English (en)
Other versions
KR102407458B1 (ko
Inventor
주니어 말린 웨인 프레드릭
뤽 뻴루아 장
뤽 ?루아 장
Original Assignee
에이알엠 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에이알엠 리미티드 filed Critical 에이알엠 리미티드
Publication of KR20150035405A publication Critical patent/KR20150035405A/ko
Application granted granted Critical
Publication of KR102407458B1 publication Critical patent/KR102407458B1/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/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • 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/394Routing
    • 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

Landscapes

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

Abstract

집적회로 레이아웃을 생성하는 방법은, 표준 셀들의 호환성이 없는 경계영역들이 서로 옆에 배치되어 있는 경계충돌을 허용하면서 표준 셀 라이브러리로부터 선택된 표준 셀들의 배치를 결정하는 단계를 포함한다. 표준 셀들 간의 라우팅 접속을 결정한 후에, 집적회로 레이아웃을 생성한다. 집적회로 레이아웃의 생성은 적어도 한 개의 경계충돌을 해결하기 위해서 적어도 한 개의 호환성이 없는 경계영역을 대체 경계영역에 매핑하는 매핑 단계를 포함한다.

Description

집적회로 레이아웃을 생성하는 방법{METHOD OF GENERATING AN INTEGRATED CIRCUIT LAYOUT}
본 발명은 집적회로의 분야에 관한 것이다. 특히, 본 발명은 집적회로 레이아웃을 생성하는 방법에 관한 것이다.
집적회로 레이아웃을 생성하기 위해서 자동화된 툴이 설치될 수 있다. 표준 셀 라이브러리는 집적회로 레이아웃에 포함되도록 선택가능한 상이한 타입의 표준 셀들을 정의한다. 시스템 디자이너는 생성되어야 하는 회로 레이아웃의 기능 정의를 자동화된 디자인 시스템에 제공할 수 있고, 자동화된 디자인 시스템은 필요한 기능 정의를 충족시키는 라이브러리로부터 표준 셀들을 선택함으로써 집적회로 레이아웃을 생성할 수 있다.
인접한 셀들의 경계 영역과의 호환이 제한한 경계영역을 갖는 몇몇 표준 셀들을 제공하는 것이 알려져 있다. 일부 셀들은 서로 호환성이 없는 경계영역을 갖는 경우도 있기 때문에, 그러한 셀들은 집적회로 레이아웃에서 서로 옆에 배치될 수 없다. 따라서, 자동화된 디자인 시스템은 집적회로의 셀 배치를 결정할 때 인접한 경계영역의 호환성을 고려할 수 있다. 예를 들면, 이 시스템은 호환이 되는 경계영역을 가진 셀들만 서로 옆에 배치되어 있도록 셀들을 선택할 수 있다. 그렇지만, 이것은 셀 배치 및 셀에의 접속의 라우팅에 있어서 유연성을 제한하여, 회로 레이아웃의 효율성을 줄일 수 있다. 또한, 이들 셀들이 여전히 서로 옆에 배치될 수 있도록 인접한 셀들의 호환성이 없는 경계영역들 사이에 필러(filler) 영역들을 배치하는 것도 가능하다. 그렇지만, 이 필러 영역은 집적회로 레이아웃의 면적을 증가시켜, 바람직하지 않다. 본 기술은 이들 문제를 해결하는 것을 추구한다.
일 국면에서 보면, 본 발명은 복수의 표준 셀 -각 표준 셀은 집적회로 레이아웃에 포함하기 위한 잠재적인 기능요소(potential functional component)를 정의한다 - 을 정의하는 표준 셀 라이브러리를 이용해서 집적회로 레이아웃을 생성하는 컴퓨터 구현 방법을 제공하고,
상기 방법은,
표준 셀들의 배치의 인접한 표준 셀들에 있어서 호환성이 없는 경계영역들이 서로 인접해서 배치되어 있는 1개 이상의 경계 충돌을 허용하면서 상기 표준 셀 라이브러리로부터 선택된 표준 셀들의 배치를 결정하는 단계 - 상기 호환성이 없는 경계영역들은 상기 집적회로 레이아웃에 있어서 서로 인접해 배치될 수 없는 경계영역들을 구비한다 -와,
상기 배치에서의 표준 셀들 간의 라우팅 접속을 결정하는 단계와,
상기 배치 및 라우팅 접속에 의거해 상기 집적회로 레이아웃을 생성하는 단계를 포함하고,
상기 생성 단계는 경계충돌 중 적어도 하나에 대해서, 경계충돌을 해결하기 위해서 상기 배치에 있어서의 호환성이 없는 경계영역들 중의 적어도 하나가 상기 집적회로 레이아웃에 있어서의 대체 경계영역에 매핑되어 있는 매핑 단계를 포함한다.
이 방법은 표준 셀들의 배치의 인접한 표준 셀들에 있어서 호환성이 없는 경계영역들이 서로 인접해 배치되어 있는 1개 이상의 경계 충돌을 허용하면서 셀 라이브러리로부터 선택된 표준 셀들의 배치를 결정한다. 이것은 경계충돌이 있는 그러한 배치를 허용하지 않는 공지된 시스템과는 대조적이다. 매핑 단계는 경계충돌 중의 적어도 하나에 대해서, 경계충돌을 해결하기 위해서 상기 배치에 있어서의 호환성이 없는 경계영역들 중의 적어도 하나가 대체 경계영역에 매핑되어 있는 레이아웃 생성 방법에서는 나중에 제공된다. 이 기술은 몇 가지의 이점을 제공한다. 배치 및 라우팅 이후에 매핑 단계를 제공함으로써, 배치 및 라우팅 단계는 인접한 셀들의 경계영역들의 호환성을 고려할 필요가 없기 때문에 덜 복잡해진다. 또한, 이 기술은 셀 배치에 어느 셀을 배치할지를 선택하는 데에 더 큰 유연성을 제공하여, 예를 들면 표준 셀들 사이에 더 나은 접속의 라우팅을 허용할 수 있다. 또한, 경계충돌을 허용하면서 표준 셀들을 배치하지만, 나중에 이러한 충돌을 해결하기 위해서 호환성이 없는 경계영역을 대체 경계영역에 매핑함으로써, 호환성이 없는 경계영역들 사이에 필러 영역을 이용하는 일없이 표준 셀들을 배치하여, 최종적인 집적회로 레이아웃의 면적을 줄이는 것이 가능하다.
표준 셀들의 배치를 결정하는 단계는 그 배치에 반사된 셀을 배치하는 것을 포함할 수 있고, 이 반사된 셀은 표준 셀 라이브러리로부터의 선택된 표준 셀의 반사 버전을 포함한다. 라이브러리로부터 셀을 반사할 수 있는 능력을 제공하는 것이 유용한데, 그 이유는 이것에 의해 좀더 효율적으로 접속이 셀에 라우팅될 수 있어, 다른 라우팅을 위한 공간이 확보되기 때문이다. 그렇지만, 반사될 셀이 셀의 각기 다른 에지에서 상이한 경계영역을 갖는 경우, 반사에 의해 경계영역이 적당한 위치에서 교환될 수 있기 때문에 셀이 반사되지 않았다면 셀을 반사시키는 것에 의해 존재하지 않았던 경계충돌이 발생할 수 있다. 따라서, 공지된 집적회로 레이아웃 디자인에 있어서는, 경계충돌을 해결하기 위해서 추가될 필러 영역을 요구하는 일없이 반사된 셀을 도입하는 것이 어려웠다. 반면, 본 기술은 배치에 있어서의 반사된 셀에 의해 야기된 그러한 경계충돌을 허용할 수 있고, 그리고나서 나중에 일단 배치 및 라우팅이 결정되었다면 충돌을 해결하기 위해서 호환성이 없는 경계영역을 대체 경계영역에 매핑할 수 있다. 따라서, 반사된 셀 배치의 이점은 여전히 셀 배치 단계 또는 라우팅 단계의 복잡한 변경 없이 그리고 회로 면적을 증가시키는 필러 영역 없이 달성될 수 있다. 이 셀의 반사는 어떤 축에 대해서 이루어질 수 있다. 예를 들면, 이 반사는 수평으로, 수직으로 또는 대각선으로 셀을 2개로 나누는 축에 대해서 이루어질 수 있다.
배치 단계에 있어서는, 표준 셀들은 서로 직접 인접해 있는 호환성이 없는 경계영역과 배치될 수 있다. 따라서, 경계충돌은 셀 배치를 제한하지 않고, 이 충돌은 매핑 단계에 의해 나중에 해결될 수 있다.
몇몇 셀들은 단지 다른 셀과의 경계충돌을 일으킬 수 있는 셀의 한 측에 경계영역을 가질 수 있다. 다른 셀들은 셀의 2개 이상의 측면에 그러한 경계영역을 가질 수 있다. 따라서, 몇몇 셀들은 셀의 다수의 에지에서 일어나는 경계충돌을 가질 수 있다.
매핑 단계에서는 표준 셀의 나머지를 혼자 남겨두면서 표준 셀의 경계영역만을 대체 경계영역에 매핑하는 것이 가능하다. 그렇지만, 셀의 나머지와 경계영역 간의 상호 접속이 복잡해짐에 따라, 호환성이 없는 경계영역을 갖는 전체 표준 셀을 대체 경계영역을 포함하고 원래의 표준 셀과 같은 기능요소에 대응하는 대체 표준 셀로 교체하는 것이 더 간단할 수도 있다. 예를 들면, 셀 라이브러리는 같은 기능 요소에 대응하는 표준 셀들의 다양한 버전을 정의할 수 있고, 각 버전은 서로 다른 배열의 경계영역을 갖는다. 매핑 단계는 경계충돌을 해결하기 위해서 타겟 표준 셀을 그것의 대체 버전의 것으로 교체할 수 있다.
정반대인 표준 셀의 반대 에지에 있는 경계영역들을 갖는 대체 표준 셀을 타겟 표준 셀의 대응하는 경계영역들에 제공하는 것이 특히 유용할 수 있다. 따라서, 타겟 표준 셀이 제1 에지에서 제1 경계영역, 제2 에지에서 제2 경계영역을 가지면, 대체 표준 셀은 제2 에지에서 제1 경계영역, 제1 에지에서 제2 경계영역을 갖지만, 타겟 표준 셀과 같은 기능 요소를 가질 수도 있다. 이것은 상술한 바와 같이 타겟 표준 셀이 라이브러리로부터의 반사된 버전의 셀인 경우에 유용하다. 셀의 반사가 제1 및 제2 에지 중의 하나 또는 양쪽에서 경계충돌을 일으켰다면, 반대로 종종 타겟 표준 셀을 경계영역을 가진 대체 표준 셀로 교체하는 것에 의해 충돌(들)을 해결할 수 있다.
따라서, 특정한 기능요소에 대해서는, 셀 라이브러리가 같은 구성요소에 대한 2개의 상이한 버전의 표준 셀을 정의하는 특징 정보를 포함하는 것이 유용할 수 있다. 제1 버전은 한 개의 에지에 제1 경계영역을, 반대의 에지에 제2 경계영역을, 2개의 에지 사이에 특정한 기능요소를 갖는다. 대체 버전은 제1 버전과 같은 장소에 경계영역 외에 제1 버전과 비교해서 반사된 기능요소를 갖는다. 상기에서 논의한 타겟 표준 셀은 반사된 형태의 제1 버전에 대응할 수 있고 그래서 라이브러리는 제1 버전이 반사된 타겟 표준 셀을 무조건으로 식별할 수 있기 때문에 이 반사된 형태를 정의하는 특징적인 데이터를 더 포함할 필요가 없을 것이다. 따라서, 배치에 대한 타겟 표준 셀을 생성하기 위해서 제1 버전의 셀을 반사시킴으로써 초래된 경계충돌은 매핑 스테이지에서 타겟 표준 셀을 제2 버전의 셀로 교체함으로써 해결될 수 있다.
보통, 셀들이 호환성이 제한된 경계영역을 가진 다수의 에지를 가질 수 있다. 이 경우에, 한 개의 경계충돌을 해결하기 위해서 매핑 단계에서 표준 셀을 교체함으로써 교체된 셀의 또 다른 에지에 또 다른 충돌이 발생할 수 있다. 따라서, 다른 경계충돌이 해결되었을 때는 다른 셀로부터 번졌던 경계충돌을 해결하기 위해서 배치의 다수의 표준 셀을 대체 셀로 교체하는 것이 때때로 필요할 수 있다.
경계충돌은 2개의 호환성이 없는 경계영역이 서로 인접해 배치되었을 때 야기될 수 있다. 경계충돌을 해결하기 위해서 호환성이 없는 경계영역 중 하나만 교체하면 된다. 예를 들면, 호환성이 없는 경계영역 중 하나는 호환성이 없는 경계영역 중의 다른 하나와 호환되는 대체 경계영역과 교체될 수 있다. 다른 경우에는, 호환성이 없는 경계영역의 양쪽을 호환되는 대체가능한 것으로 교체하는 것이 더 간단할 수 있다. 예를 들면, 호환성이 없는 경계영역을 포함하는 셀들의 다른 경계영역에 의존해서, 예를 들면 상기 설명한 것처럼 한 개만 교체하는 것에 의해 다른 경계충돌이 일어나 다른 셀들로 번지면, 양쪽 호환성이 없는 경계영역을 대체가능한 것으로 교체하는 것이 바람직할 수 있다.
매핑 단계는 집적회로 레이아웃을 생성하는 방법의 다양한 스테이지에서 행해질 수 있다. 하나의 예에 있어서는, 매핑 단계는 디자인 룰 검증 또는 제조 룰 검증을 위해 집적회로 레이아웃을 출력하기 위한 "스트림아웃(streamout)" 단계에서 행해질 수 있다. 디자인 또는 제조 룰 검증은 제조시에 생성된 집적회로 레이아웃이 제대로 작동할 것이라는 것을 보증하기 위한 다양한 체크를 포함할 수 있다. 이 지점에서는 배치 또는 라우팅 스테이지에서보다 더 적은 데이터가 배치된 셀들을 특성화하는 것이 필요하기 때문에, 스트림아웃 스테이지에서 매핑 단계를 수행하는 것이 바람직하다. 상기 설명한 것처럼 대체가능한 버전의 표준 셀들을 이용하는 매핑 단계가 배치 또는 라우팅 단계에서 행해졌다면, 이것은 배치/라우팅을 위해 완전히 모델링될 각 버전의 셀을 요구하여, 표준 셀 라이브러리의 복잡성과 데이터의 볼륨을 증가시킬 것이다. 그렇지만, 스트림아웃 단계에서는, 대체가능한 버전의 셀들이 더 적은 데이터를 이용해서 정의됨으로써, 셀 라이브러리의 구현이 좀더 효율적으로 이루어질 수 있다.
몇몇 예에 있어서는, 단지 2개의 서로 다른 타입의 경계영역만이 있는 경우가 있다. 예를 들면, 같은 타입의 경계영역은 호환되지 않는 것으로 간주될 수 있고 반대 타입의 경계영역은 서로 호환되는 것으로 간주될 수 있다. 이 경우에, 컴퓨터 구현 디자인은 어느 경계타입이 각 셀 경계에 존재하는지의 표시 이외의 경계영역의 호환성을 특징짓는 적은 정보를 필요로 할 수 있다.
그렇지만, 다른 예에 있어서는, 2개 이상의 타입의 경계영역이 있을 수 있고, 각기 다른 타입의 경계영역이 호환가능한지를 결정하는 것이 더 복잡할 수 있다. 따라서, 이 방법은 호환성 정보를 이용해서 각기 다른 타입의 상이한 경계영역의 호환성을 나타낼 수 있다. 매핑 단계는 경계충돌을 식별해서 호환성 정보에 의거해 대체 경계영역을 결정할 수 있다.
본 기술은 인접한 표준 셀들의 호환성이 없는 경계영역들 간의 충돌을 처리하기 위한 향상된 기술을 제공하지만, 셀 배치에서 일어나는 경계충돌마다 이 기술을 이용하는 것이 필수적인 것은 아니다. 몇몇 경계충돌에 대해서는, 셀 배치를 조절해서 제1 공간에서 경계충돌을 회피함으로써 또는 경계 사이에 필러 영역을 삽입하는 등 공지된 기술을 이용하는 것이 가능하다. 따라서, 셀 배치에서 일어나는 경계충돌의 일부에 대해서만 매핑 단계를 이용하는 것이 가능하다.
이 방법은 생성된 레이아웃을 출력하는 단계를 포함할 수 있다. 예를 들면, 생성된 레이아웃은 기억매체 상에 그것을 기억하거나 그것을 외부장치에 출력함으로써 출력될 수 있다. 그리고나서 제조자는 생성된 집적회로 레이아웃을 갖는 집적회로를 제조할 수 있다.
또 다른 국면에서 보면, 본 발명은 집적회로 레이아웃에 포함되는 복수의 표준 셀 - 각 표준 셀은 제1 에지와 상기 제1 에지 맞은편의 제2 에지를 구비한다 - 을 정의하는 정보를 구비하는 표준 셀 라이브러리를 기억하는 컴퓨터 판독가능한 기억매체를 제공하고,
상기 복수의 표준 셀은,
상기 제1 에지에서의 제1 경계영역, 상기 제2 에지에서의 제2 경계영역 및 상기 제1 에지와 상기 제2 에지 사이의 미리 결정된 기능요소를 포함하는 제1 표준 셀과,
상기 제1 에지에서의 제1 경계영역, 상기 제2 에지에서의 제2 경계영역 및 상기 제1 에지와 상기 제2 에지 사이의 미리 결정된 기능 요소의 반사된 버전을 포함하는 제2 표준 셀을 구비한다.
표준 셀들의 호환성이 없는 경계영역들 사이에서의 경계충돌을 해결하기 위해서, 표준 셀 라이브러리는 같은 기능요소를 갖는 제1 및 제2 버전의 표준 셀을 구비할 수 있다. 제1 버전은 제1 에지에서의 제1 경계영역, 제1 에지 맞은편의 제2 에지에서의 제2 경계영역, 및 상기 제1 및 상기 제2 에지 사이의 미리 결정된 기능 요소를 포함할 수 있다. 제2 표준 셀은 제1 표준 셀 내에 대응하는 기능요소에 관하여 반사된 기능요소를 갖는 것 외에 제1 및 제2 에지에 관하여 제1 표준 셀과 같은 위치에 경계영역을 갖는다(예를 들면, 기능요소는 수평으로, 수직으로, 또는 대각선으로 셀을 2개로 분할하는 축에 대해서 반사될 수 있다.)
일부 예에 있어서는, 집적회로 레이아웃의 디자인에 있어서의 배치 단계는 제1 및 제2 버전의 표준 셀 양쪽을 선택하는 데에 이용가능하다. 이 경우, 셀 라이브러리는 양쪽 제1 및 제2 표준 셀에 대한 배치 및 접속 라우팅을 제어하기 위한 제어 정보를 구비할 수 있다. 이 경우에, 반사된 버전의 제1 표준 셀 대신에 플립된(flipped) 제2 표준 셀을 삽입함으로써 배치 단계에서 경계충돌이 회피될 수 있다.
반면, 다른 예에서는, 제1 표준 셀만이 배치 및 라우팅에 이용가능하고(무반사 형태인지 반사 형태인지), 제2 표준 셀은 경계충돌을 해결하기 위한 다음 매핑 단계에서 반사된 버전의 제1 표준 셀을 교체할 수 있다. 이 경우, 표준 셀 라이브러리는 제2 표준 셀이 아니라 제1 표준 셀에 대해서만 배치 및 접속 라우팅을 제어하기 위한 제어 정보를 포함할 수 있다. 이 접근법은 제2 표준 셀을 정의하기 위한 특징 데이터의 양이 오히려 배치/라우팅 스테이지에서 완전히 복제되는 셀의 모델을 요구하는 것보다 레이아웃 생성 프로세스의 나중 스테이지에 그것을 삽입함으로써 감소될 수 있기 때문에 더 효율적이다.
셀 라이브러리를 기억하는 기억매체는 예를 들면, 랜덤 액세스 메모리, 플래쉬 메모리, 자기 기억매체 또는 광디스크 등의 비일시 기억매체일 수 있다.
본 기술의 그 외의 국면, 특징 및 이점은 첨부도면을 참조하여 이하의 예시적인 실시예의 설명으로부터 분명해질 것이다.
도 1a 내지 1d는 서로 다른 타입의 경계영역을 갖는 표준 셀들의 예를 나타낸 것이다.
도 2a 및 2b는 집적회로 레이아웃에 있어서 배치 전의 표준 셀을 반사시키는 예를 나타낸 것이다.
도 3은 인접한 표준 셀들의 경계영역들 사이에서 일어날 수 있는 경계충돌의 예를 나타낸 것이다.
도 4는 표준 셀 라이브러리를 이용해서 집적회로 레이아웃을 생성하는 방법의 예를 개략적으로 나타낸 것이다.
도 5a 및 5b는 표준 셀의 제1 및 제2 형태를 개략적으로 나타낸 것이다.
도 6은 대체 경계영역에 1개 이상의 호환성이 없는 경계영역을 매핑하는 제1 예를 나타낸 것이다.
도 7은 호환가능한 대체 경계영역에 호환성이 없는 경계영역을 매핑하는 제2 예를 나타낸 것이다.
도 8은 집적회로 레이아웃을 생성하는 방법을 나타낸 것이다.
도 9는 그 방법을 실행하기 위한 컴퓨터 시스템의 예를 개략적으로 나타낸 것이다.
도 1a 내지 1d는 집적회로 레이아웃에의 잠재적 포함을 위한 4개의 표준 셀 2, 4, 6, 8의 예를 나타낸 것이다. 각 표준 셀은 집적회로의 어떤 구성요소든 포함할 수 있는 기능회로(10)를 구비한다. 예를 들면, 기능회로(10)는 AND 게이트 혹은 OR 게이트 등의 로직 게이트, 가산기 또는 곱셈기일 수 있다. 기능 요소를 나타내기 위해서 도면에 문자 F를 사용할 것이다. 각 표준 셀은 표준 셀의 에지에 경계영역(12)을 포함한다. 도 1a 내지 1d는 이 셀의 좌측 및 우측 에지에 경계영역(12)을 나타내지만, 다른 예에 있어서는, 좌측 및 우측 에지 대신에 혹은 좌측 및 우측 에지에 더해서, 상부 및 하부 에지에 경계영역이 있을 수 있다.
집적회로 디자인 룰 또는 다른 제약에 의해 서로 다른 타입의 경계영역(12)이 집적회로 레이아웃에서 서로 인접해 배치될 수 없도록 서로 호환되지 않게 된다. 예를 들면, 제조된 회로의 올바른 작동을 보증하기 위해서, 셀의 같은 층에 있는 금속선들이 특정 최소 거리보다 더 가까운 것을 방지하는 제조 룰이 있을 수 있다. 따라서, 인접한 셀들은 금속선들이 셀의 에지에 가깝게 지나가는 경계영역을 갖는 경우, 이것은 인접한 셀의 경계영역에 있는 유사한 금속선과 충돌하여, 제조룰을 위반할 수 있다. 도 1a 내지 1d는 셀의 같은 층에 있는 금속선들의 상이한 배치의 예를 나타낸다. 도 1a에 있어서, 셀 2는 경계영역(12) 내에 어떠한 금속선도 가지고 있지 않으므로, 그것의 경계영역(12)은 어떤 다른 경계영역(12)과도 호환될 수 있다. 그렇지만, 도 1b-1d의 셀 4, 6, 8은 배치가 서로 다른 경계영역(12)에 금속선을 가지고 있다. 대응하는 위치에 경계영역(12)에 들어가는 금속선을 가지고 있는 셀들이 서로 옆에 배치되어 있으면, 이것은 경계 충돌의 원인이 될 수 있다. 예를 들면, 도 1b의 표준 셀 4의 좌측 에지에 있는 경계영역 B1은 같은 타입의 인접한 표준 셀 4의 우측 에지에 있는 경계영역 B2과 호환된다. 그렇지만, 인접한 셀들은 모두 필요한 최소 거리보다 더 가까운 경계영역의 하부에 있는 금속선을 가지고 있기 때문에 경계영역 B1은 도 1c에 나타낸 것과 같은 경계영역 C2 혹은 도 1d에 나타낸 경계영역 D와는 호환되지 않을 것이다.
경계 충돌은 도 1a과 같이 경계영역에서 금속선이 확장되는 것을 피하도록 모든 셀에게 요구함으로써 회피될 수 있지만, 일부 표준 셀들이 경계영역으로 확장되는 것을 허용하는 것이 유용한데, 그 이유는 그러한 셀들이 디자인된 집적회로의 기능적인 밀도(functional density)를 증가시키기 위해서, 셀의 폭을 작게 하는 것을 가능하게 하기 때문이다. 그러므로, 경계 충돌이 일어날 수 있는 셀들을 이용하는 것이 바람직할 수 있다.
경계영역(12)으로 확장되는 표준 셀의 금속선들 또는 다른 구성요소의 배치뿐만 아니라, 표준 셀들의 특정 경계영역이 서로 호환되지 않는 다른 이유도 있을 수 있다. 예를 들면, 반도체의 인접한 영역들의 도핑 농도의 차가 있을 수도 있다. 서로 다른 타입의 셀 경계에 대한 더 많은 정보가 ARM Limited of Cambridge, UK에 의해 제출된 US 특허 공개공보 US2010/0115484 A1에 제공되어 있고, 그것의 내용은 여기에 참고로 포함되어 있다.
때때로, 집적회로 레이아웃에 표준 셀을 배치할 때 표준 셀을 반사시키는 것이 바람직할 수 있다. 예를 들면, 도 2a는 3개의 구성요소 A, B, C로 이루어진 표준 셀(20)의 예를 나타낸다. 도 2a의 예에 있어서, 구성요소 C는 셀(20)의 좌측에 표준 셀과 접속되어야 하고, 구성요소 A, B는 셀(20)의 우측에 표준 셀과 접속되어야 한다. 그렇지만, 이것은, 접속 22이 인접한 셀들에 도달하기 위해서 셀 20의 다른 구성요소들을 지나가야 하므로, 접속 22이 셀(20)에서의 접속을 라우팅하기 위해 이용가능한 공간을 많이 사용한다.
도 2b에 도시한 바와 같이, 지난번처럼 셀(20)의 양측의 같은 셀들에 구성요소 A, B, C를 라우팅하면서, Y축(24)에 대해서 표준 셀(20)을 반사시킴으로써, 라우팅된 접속은 셀(20) 내의 큰 부분을 지나가는 것이 더 이상 필요하지 않다. 예를 들면, 이러한 반사는 구성요소 C가 도 2a에서보다는 접속되어야 하는 좌측 인접한 셀에 현재 더 가깝다는 것을 의미한다. 이것은 접속 22의 일부를 짧게 해서, 도 2a에서는 불가능했을 것인 표준 셀(20)에 대해서 추가 접속을 라우팅하기 위한 공간(26)을 만들 수 있다는 것을 의미한다. 따라서, 표준 셀을 플립핑(flipping)하는 것이, 집적회로 레이아웃에 셀을 배치하는 경우에 유용할 수 있다. 도 2a 및 2b는 Y축(24)에 대한 반사(reflection)를 나타내고, 다른 예에 있어서는, 이 반사는 도 2b에 나타낸 것처럼 X축(28) 혹은 대각선 Z축(29), 혹은 다른 축에 대한 것일 수 있다. 바람직하게는, 이 반사는 셀(20)을 2개로 분할하는 축에 대한 것일 수도 있다.
그렇지만, 반사되어야 하는 표준 셀이 다른 경계영역과 호환성이 제한된 경계영역(12)을 가지고 있으면, 셀을 반사시키는 것에 의해, 셀이 반사되지 않았을 때 발생하지 않았던 추가 경계충돌이 발생한다. 예를 들면, 각 셀이 좌측의 경계영역 B1과 우측의 경계영역 B2을 갖는 도 1b에 나타낸 타입 4의 한 줄의 표준 셀이 있을 수 있다. 무반사 형태의 셀들에 있어서, 그러한 셀들은 각 경계에서 영역 B1 및 B2가 서로 호환가능하기 때문에 서로 인접해 배치될 수 있다(영역 B2의 상부 절반의 금속선은 영역 B1의 하부 절반의 금속선과 충돌하지 않는다). 그렇지만, 도 3에 나타낸 바와 같이, 셀(30) 중의 2개가 Y축에 대해서 반사되면, 이들 셀(30)에 대해서 경계영역 B1, B2가 교체되어서, 같은 영역 B1 또는 같은 영역 B2 중의 2개가 서로 인접할 때 경계충돌이 발생한다. 일반적으로, 이 문제는 도 3에 나타낸 바와 같이 인접한 셀들 사이에 공간(32)을 삽입함으로써 해결되었지만, 이것에 의해 집적회로의 면적이 증가한다. 또한, 이 문제는 도 2a 및 2b에 나타낸 바와 같이 반사를 방지함으로써 해결될 수 있다. 그렇지만, 이것은 도 2b에 나타낸 바와 같이 셀 배치 및 라우팅에 있어서의 디자인 자유를 제한하여, 예를 들면, 접속 라운팅을 좀더 효율적으로 할 기회를 제거한다. 반사를 회피하는 것에 의해 적절한 핀에 도달하도록 복잡한 방식으로 서로를 지나서 라우팅되는 셀에 대한 입출력이 요구될 수 있다.
도 4는 충돌하는 셀들 사이에 추가 공간을 삽입할 필요없이 셀들이 배치 위에 플립(flipped)되는 것을 허용하는 집적회로 레이아웃을 생성하는 방법을 나타낸다. 이 방법은 컴퓨터, 예를 들면 EDA(Electronic Design Automation) 툴을 이용해서 구현된다. 컴퓨터는 예를 들면 이하의 도 9과 관련해서 설명한 것일 수 있다. 회로 디자이너는 디자인될 집적회로에 대해서 몇 개의 기능요건(40)을 명시한다. 예를 들면, 이 기능요건은 RTL(Register Trnasfer Language)을 이용하는 등, 원하는 회로의 게이트 레벨 표현을 제공하거나 회로의 하이 레벨 표현을 이용할 수 있다. 셀 라이브러리(42)는 예를 들면 이 방법을 구현하는 컴퓨터에 의해 판독가능한 기록매체 상에 제공된다. 이 셀 라이브러리(42)는 집적회로 디자인에 포함되는 잠재적 기능요소에 각각 대응하는 표준 셀(44)을 정의하는 데이터를 포함한다. 배치 단계 50에서, 라이브러리(42)로부터의 표준 셀(44)은 입력된 기능요건(40)을 충족시키기 위해서 선택되고, 선택된 셀(44)을 포함하는 셀 배치(52)가 생성된다. 예를 들면, 셀 배치(52)는 라이브러리(42)로부터 선택된 셀(44)의 다양한 행(54) 및 열(56)로 이루어질 수 있다. 배치 단계는 셀 배치(52)에 위치되기 전에 라이브러리(42)로부터 몇 개의 표준 셀(44)을 반사한다. 이 도면에 있어서, 백워드 문자 F를 이용해서 반사된 표준 셀들이 표시되고, 반대로 통상의 문자 F를 이용해서 무반사 셀이 표시된다. 이전의 디자인 프로세스와 달리, 배치 단계(50)는 셀들의 경계가 충돌하도록 셀들 및 반사된 셀들이 위치되는 것을 허용한다(이것은 도 4에서 설명기호로 표시된다). 따라서, 배치 단계가 인접한 셀들의 경계가 서로 호환가능한지를 고려할 필요가 없다. 배치 단계 50은 필러 영역을 개입시키지 않고, 셀들의 경계가 서로 직접 인접해 있도록 셀들을 배치한다.
라우팅 단계 58에서는, 셀들 사이의 다양한 접속(60)이 결정된다. 예를 들면, 이 접속(60)은 셀 배치(52)의 상이한 셀들로 나타낸 구성요소들 사이의 기능관계를 구현할 수 있다. 스트림아웃(streamout) 단계(62)에서는, 셀 배치(52)는 디자인 룰 검증 또는 제조 룰 검증을 위해서 스트림 아웃된다. 디자인/제조 룰 검증은 배치 및 라우팅 단계에 의해 생성된 집적회로 레이아웃이 집적회로를 제조할 수 있는 방법을 지배하는 다양한 룰을 따르는지를 체크하기 위한 1개 이상의 단계를 포함한다. 예를 들면, 이 검증은, 제조시 집적회로가 제대로 동작하는 것을 방지할 수 있기 때문에, 셀의 같은 층에 있는 2개의 금속선이 최소 거리보다 더 가깝지 않다는 것을 체크할 수 있다.
집적회로 디자인이 이 검증에 실패하면, 배치 단계(50)로 다시 전송되어서 새로운 배치를 생성한다.
스트림아웃 단계(62)는 경계충돌을 해결해서, 최종의 집적회로 레이아웃을 생성하기 위해서, 배치된 셀들의 호환성이 없는 경계영역을 대체 경계영역에 매핑하는 매핑 단계를 포함한다. 도 4에 나타낸 예에 있어서, 셀 배치(52)의 타겟 셀(68)은 인접한 셀(72)과의 충돌을 피하기 위해서 타겟 셀(68)과 같은 기능요소를 갖지만 서로 다른 경계영역 배열을 갖는 대체 셀(70)로 교체될 수 있다. 스트림아웃 단계(62)에서 셀을 대체 셀과 교체함으로써, 최종의 집적회로 레이아웃이 셀 배치 단계(50)에서 복잡성을 초래하거나 회로 면적을 증가시키는 일없이, 경계충돌의 걱정 없이 생성될 수 있다.
도 4에 나타낸 매핑을 가능하게 하기 위해서는, 같은 기능성을 제공하지만, 서로에 대해 기능요소의 소자들의 상이한 상대 위치를 갖는 대체 형태의 표준 셀과 경계영역을 라이브러리(42)에 제공하는 것이 유용하다. 하나의 예가 도 5a 및 5b에 도시되어 있다. 도 5a는 표준 셀의 제1 에지(92)에서의 제1 경계영역(B1)과 표준 셀의 제2 에지(92)에서의 제2 경계영역(B2)과의 사이에 소정의 기능요소(90)를 갖는 제1 형태(80)의 표준 셀을 나타낸다. 도 5b는 경계영역 B1 및 B2가 각각 여전히 제1 에지(92) 및 제2 에지(94)에 있지만, 기능요소(90)가 제1 형태(80)의 표준 셀에서의 기능요소(90)에 관하여 Y축에 대하여 반사되어 있는 반사 기능요소(96)와 교체되는 제2 형태의 표준 셀(82)을 나타낸다. 반사 기능요소(96)는 제1 형태(80)에서의 기능요소(90)의 정확한 미러 상(mirror image)일 필요는 없다. 기능요소의 소자들의 상대위치가 플립되도록 반사되는 것이면 된다(예를 들면, 도 2a 및 2b의 예에 있어서, 구성요소 C는 무반사 형태의 소자 A 및 B의 우측에 있고, 반사 형태의 소자 A 및 B의 좌측에 있다). 또한, 도 5a의 예에 나타낸 바와 같이, 기능요소(90)는 셀의 우측 에지에 있는 경계영역 B2에 접속되어야 하는 부분 P와 좌측 에지에 있는 경계영역 B1에 접속되어야 하는 부분 Q를 가질 수 있다. 제2 형태(82)의 셀에 있어서, 부분 P 및 Q의 상대위치는 기능요소(90)가 반사됨에 따라 변화할 수 있지만, 부분 P 및 Q는 여전히 좌측 에지 및 우측 에지에 각각 접속될 필요가 있다. 따라서, 제2 형태(82)의 셀의 접속(87)은 제1 형태(80)의 셀의 대응하는 접속(87)의 미러 상이 아닐 수도 있다.
도 6은 도 5a 및 5b에 나타낸 제1 형태 및 제2 형태의 표준 셀이 어떻게 유용할 수 있는지의 예를 나타낸다. 도 6의 상부에 나타낸 바와 같이, 셀 배치(50) 및 라우팅(52)에서는, 셀 라이브러리(42)가 제1 형태(80)의 표준 셀을 이용해서 셀 배치(52)를 제어할 수 있다. 셀 라이브러리(42)는 (반사되고 있는 경계영역을 포함하는) 셀 배치(52)에 있어서의 와이어 액세스(wire access)에 대해서 전체 셀이 반사되는 제1 형태(80) 또는 제1 형태의 반사된 버전(86) 중 어느 하나를 포함하도록 선택할 수 있다. 반사된 셀(86)은 셀의 완전 반사이기 때문에, 자동화된 디자인 시스템은 배치/라우팅 스테이지에 대해서 모델링될 어떤 추가 셀도 필요로 하는 일없이 제1 형태(80)로부터 반사된 셀을 결정할 수 있다. 그렇지만, 이 반사는 접속 라우팅에 도움이 될 수 있지만, 그것은 셀 경계에서 경계 위반(94)을 발생한다.
도 6의 하부에 나타낸 바와 같이, 제2 형태(82)의 표준 셀을 제공함으로써, 배치 및 라우팅 후에 형성된 제1 형태(80)의 반사된 버전(86)은 경계 위반을 해결하기 위해서 스트림아웃 단계 중에 제2 형태(82)에 매핑될 수 있다. 제2 형태(82)의 대체 셀은 배치 또는 라우팅 단계에서 같은 셀의 2개 이상의 풀 모델(full model)을 제공할 필요성을 회피하는, 비교적 적은 특징적 데이터(예를 들면, 필요한 전용 모델 뷰(model view)는 단지 CDL 또는 GDS2일 수 있다)를 이용해서 정의될 수 있다.
도 7은 경계영역을 대체 경계영역에 매핑하는 제2 예를 나타낸다. 이 예에 있어서는, 단지 셀의 2개의 형태 사이에서 선택하는 것보다는, 선택할 수 있는 이용가능한 셀이 다수 있을 수 있다. 예를 들면, 셀들이 도 1a 내지 1d에 나타낸 각기 다른 타입의 경계영역을 가질 수 있는 곳에는, 다양한 다른 타입의 경계위반이 있을 수 있다. 도 7의 상부는, Y축을 따라 대응하는 지점에서 경계의 양측으로부터 경계영역에 진입하는 금속 노출로 인해 셀 경계 C2-B1 및 D-B1에서 경계위반(100)이 발생하는 예를 나타낸다. 도 7의 하부에 나타낸 바와 같이, 경계타입 B1, B2를 갖는 셀 102를 경계타입 C1, C2를 갖는 셀 104에 매핑하고, 경계 타입 B1, B2를 갖는 셀 106을 경계타입 A, A를 갖는 셀 108에 매핑함으로써, 이들 경계 위반을 해결할 수 있다.
도 7은 매핑 단계에서 전체 셀이 교체되는 예를 나타내지만, 셀의 나머지를 교체하는 일없이 셀의 셀 경계 부분만 교체할 수 있는 시스템을 제공하는 것도 가능하다. 따라서, 매핑 단계에서 같은 셀에 대해서 구현될 수 있는 에지 타입이 다수 있을 수도 있다.
또한, 단순히 배치 단계에서 원하는 곳에 셀들을 배치하고(어떤 경계위반을 무시하고) 그 후에 필요한 경우에 나중 단계에서 경계영역을 대체 경계영역에 매핑함으로써, 다수의 경계타입을 갖는 셀들을, 단 한 개의 경계타입만을 갖는 셀들 및 원하는 대로 어떤 경계 타입 제한도 없는 다른 셀들과 혼합하는 것이 가능하다.
도 8은 집적회로 레이아웃을 생성하는 방법을 설명하는 흐름도이다. 스텝 200에서, 생성할 집적회로의 기능 묘사가 입력된다. 단계 202에서는, 라이브러리 42로부터 표준 셀들의 배치 52가 결정된다. 배치 단계는 예를 들면 라우팅 효율을 향상시키기 위해서, 한 축에 대해서 1개 이상의 셀을 선택적으로 플립핑(반사)하는 것을 포함한다. 이 배치 단계는 호환성이 없는 경계영역들이 서로 옆에 배치되어 있는 곳에 경계충돌이 있도록 셀들이 배치되는 것을 허용한다. 단계 204에서는, 라우팅 접속(60)이 셀 배치 52의 상이한 셀들을 상호접속하도록 결정된다. 단계 206에서는, 인접한 경계영역과 충돌하는 1개 이상의 호환성이 없는 경계영역이 이 충돌을 해결하는 대체 경계영역에 매핑된다. 이 단계는 어느 타입의 셀 경계가 다른 타입의 셀 경계와 충돌하는지를 나타내는, 호환성 정보를 이용해서, 경계충돌이 일어나는 곳과 대체 경계영역을 이용해서 그 충돌을 해결하는 방법을 결정한다. 단계 208에서는, 단계 206과 같이 대체 영역에 매핑된 경계영역을 갖는 셀 배치 52는 디자인 룰 검증 및/도는 제조 룰 검증을 위해서 스트림 아웃된다(streamed out). 디자인 룰 검증 및 제조 룰 검증은 유사하지만, 어떤 디자인/제조 제약의 규정준수를 위해서 약간 다른 체크를 행할 수도 있다. 단계 210에서는, 스트림 아웃된 집적회로 레이아웃을, 예를 들면 기억매체 또는 통신장치를 이용해서 출력한다. 그리고나서, 레이아웃을 제조자 또는 제조장치에 공급할 수 있고, 단계 212에서는 집적회로가 이전 단계에서 생성하는 레이아웃에 제조된다. 단계 206 및 208은 도 8에 별도의 단계로서 도시되어 있지만, 다른 예에서는 이들은 같은 단계로 결합되어도 된다.
도 9는 상술한 기술, 특히 집적회로의 레이아웃의 생성을 구현하는 데에 사용될 수 있는 범용 컴퓨터(300)의 일례를 개략적으로 나타낸 것이다. 이 범용 컴퓨터(300)는 공통 버스(322)를 통해서 모두 접속되는, 중앙처리장치(302)와, 랜덤 액세스 메모리(304)와, 판독 전용 메모리(306)와, 네트워크 인터페이스 카드(308)와, 하드 디스크 드라이브(310)와, 디스플레이 드라이브(312) 및 모니터(314)와, 키보드(318)와 마우스(320)를 갖는 유저 입출력 회로(316)를 포함한다. 작동 중에, 중앙처리장치(302)는 랜덤 액세스 메모리(304), 판독 전용 메모리(306) 및 하드 디스크 드라이브(310) 중 한 개 이상에 기억되거나 네트워크 인터페이스 카드(308)를 통해서 동적으로 다운로드될 수 있는 컴퓨터 프로그램 명령들을 실행할 수 있다. 이러한 처리를 행한 결과는 디스플레이 드라이버(312) 및 모니터(314)를 통해서 유저에게 표시될 수 있다. 범용 컴퓨터(300)의 동작을 제어하기 위한 유저 입력은 키보드(318) 또는 마우스(320)로부터의 유저 입출력 회로(316)를 통해서 수신될 수 있다. 컴퓨터 프로그램은 다양한 서로 다른 컴퓨터 언어로 기록될 수 있다는 것을 알 수 있을 것이다. 컴퓨터 프로그램은 기록매체 상에 기억 및 분배될 수 있거나 범용 컴퓨터(300)에 동적으로 다운로드될 수 있다. 범용 컴퓨터(300)는 적절한 컴퓨터 프로그램의 제어 하에서 동작할 때, 상술한 기술을 실행할 수 있고, 상술한 기술을 실행하기 위한 장치를 형성하는 것으로 간주할 수 있다. 범용 컴퓨터(300)의 구성은 상당히 다를 수 있고, 도 9는 단지 일례에 불과하다.
여기에서는 본 기술의 특정 실시예들을 기술했지만, 본 발명은 이들에 한정되지 않고, 많은 변형 및 추가가 본 발명의 범위 내에서 가능하다는 것을 알 수 있을 것이다. 예를 들면, 이하의 종속 청구항의 특징의 다양한 조합은 본 발명의 범위를 벗어나지 않고 이루어질 수 있다.

Claims (17)

  1. 집적회로 레이아웃에 포함하기 위한 잠재적인 기능요소(potential functional component)를 각각 정의하는 복수의 표준 셀을 정의하는 표준 셀 라이브러리를 이용해서 집적회로 레이아웃을 생성하는 컴퓨터 구현 방법으로서,
    집적회로 레이아웃에 있어서 서로 인접해 배치될 수 없는 경계영역들을 구비하는 호환성이 없는 경계영역들이, 표준 셀들의 배치의 인접한 표준 셀들에 있어서 서로 인접해서 배치되어 있는 1개 이상의 경계 충돌을 허용하면서 표준 셀 라이브러리로부터 선택된 표준 셀들의 배치를 결정하는 단계와,
    상기 배치에서의 표준 셀들 간의 라우팅 접속을 결정하는 단계와,
    상기 배치 및 라우팅 접속에 의거해 집적회로 레이아웃을 생성하는 단계를 포함하고,
    상기 생성 단계는 경계충돌 중의 적어도 하나에 대해서, 경계충돌을 해결하기 위해서 상기 배치에 있어서의 호환성이 없는 경계영역들 중의 적어도 하나가 집적회로 레이아웃에 있어서의 대체 경계영역에 매핑되어 있는 매핑 단계를 포함하는 것을 특징으로 하는, 컴퓨터 구현 방법.
  2. 제 1 항에 있어서,
    상기 배치를 결정하는 단계는 상기 배치에 반사된 셀을 배치하는 것을 포함하고, 상기 반사된 셀은 상기 표준 셀 라이브러리로부터 선택된 표준 셀의 반사된 버전을 포함하는 것을 특징으로 하는, 컴퓨터 구현 방법.
  3. 제 2 항에 있어서,
    상기 반사된 셀은 상기 반사된 셀을 형성하기 위해서 상기 선택된 표준 셀의 경계영역들과 기능요소를 반사시킴으로써 형성되는 것을 특징으로 하는, 컴퓨터 구현 방법.
  4. 제 1 항에 있어서,
    상기 배치를 결정하는 단계는 상기 배치에 있어서 서로 직접 인접해 있는 적어도 한 개의 경계충돌에 대해서 호환성이 없는 경계영역들을 갖는 표준 셀들을 배치하는 것을 포함하는 것을 특징으로 하는, 컴퓨터 구현 방법.
  5. 제 1 항에 있어서,
    상기 매핑 단계는 상기 호환성이 없는 경계영역들 중의 적어도 하나를 구비하는 상기 배치의 타겟 표준 셀을, 상기 타겟 표준 셀과 같은 기능 요소와 상기 대체 경계영역을 포함하는 집적회로 레이아웃에 있어서의 대체 표준 셀로 교체하는 것을 포함하는 것을 특징으로 하는, 컴퓨터 구현 방법.
  6. 제 5 항에 있어서,
    상기 타겟 표준 셀은 표준 셀의 제1 에지에서의 제1 경계영역과 상기 제1 에지 맞은편의 표준 셀의 제2 에지에서의 제2 경계영역을 구비하고,
    상기 대체 표준 셀은 상기 표준 셀의 제1 에지에서의 제2 경계영역과 상기 표준 셀의 제2 에지에서의 제1 경계영역을 구비하는 것을 특징으로 하는, 컴퓨터 구현 방법.
  7. 제 6 항에 있어서,
    상기 타겟 표준 셀은 상기 표준 셀 라이브러리로부터 선택된 표준 셀의 반사된 버전을 포함하고, 상기 선택된 표준 셀은 상기 제1 에지에서의 제2 경계영역, 상기 제2 에지에서의 제1 경계영역, 및 상기 제1 에지와 상기 제2 에지 사이의 미리 결정된 기능요소를 포함하는 것을 특징으로 하는, 컴퓨터 구현 방법.
  8. 제 1 항에 있어서,
    상기 매핑 단계는 디자인 룰 검증 또는 제조 룰 검증을 위해 집적회로 레이아웃을 출력하는 단계에서 행해지는 것을 특징으로 하는, 컴퓨터 구현 방법.
  9. 제 1 항에 있어서,
    상기 매핑 단계는 복수의 상이한 타입의 경계영역들 간의 호환성을 나타내는 호환성 정보에 의거해서 호환성이 없는 경계영역들 중의 적어도 하나를 대체 경계영역에 매핑하는 것을 특징으로 하는, 컴퓨터 구현 방법.
  10. 제 1 항에 있어서,
    상기 생성된 집적회로 레이아웃을 출력하는 단계를 포함하는 것을 특징으로 하는, 컴퓨터 구현 방법.
  11. 제 1 항에 있어서,
    상기 생성된 집적회로 레이아웃을 갖는 집적회로를 제조하는 단계를 포함하는 것을 특징으로 하는, 컴퓨터 구현 방법.
  12. 청구항 11의 방법에 따라 제조된 집적회로.
  13. 청구항 1의 방법을 실행하도록 구성된 컴퓨터.
  14. 집적회로 레이아웃에 포함하기 위한, 제1 에지와 상기 제1 에지 맞은편의 제2 에지를 각각 구비하는 복수의 표준 셀을 정의하는 정보를 포함하는 표준 셀 라이브러리를 기억하는 컴퓨터 판독가능한 기억매체로서,
    상기 복수의 표준 셀은,
    상기 제1 에지에서의 제1 경계영역, 상기 제2 에지에서의 제2 경계영역 및 상기 제1 에지와 상기 제2 에지 사이의 미리 결정된 기능요소를 포함하는 제1 표준 셀과,
    상기 제1 에지에서의 제1 경계영역, 상기 제2 에지에서의 제2 경계영역, 및 상기 제1 에지와 상기 제2 에지 사이의 미리 결정된 기능요소의 반사된 버전을 포함하는 제2 표준 셀을 구비하는 것을 특징으로 하는, 컴퓨터 판독가능한 기억매체.
  15. 제 14 항에 있어서,
    상기 표준 셀 라이브러리는 상기 제1 표준 셀과 상기 제2 표준 셀 양쪽에 대한 배치 및 접속 라우팅을 제어하기 위한 제어 정보를 포함하는 것을 특징으로 하는, 컴퓨터 판독가능한 기억매체.
  16. 제 14 항에 있어서,
    상기 표준 셀 라이브러리는 상기 제2 표준 셀이 아니라 상기 제1 표준 셀에 대한 배치 및 접속 라우팅을 제어하기 위한 제어 정보를 포함하는 것을 특징으로 하는, 컴퓨터 판독가능한 기억매체.
  17. 제 16 항에 있어서,
    상기 표준 셀 라이브러리는 상기 제1 표준 셀의 반사 버전을, 배치 및 접속 라우팅을 따르는 상기 제2 표준 셀로 교체하는 것을 제어하기 위한 제어 정보를 포함하는 것을 특징으로 하는, 컴퓨터 판독가능한 기억매체.
KR1020140124060A 2013-09-27 2014-09-18 집적회로 레이아웃을 생성하는 방법 KR102407458B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/039,224 US8959472B1 (en) 2013-09-27 2013-09-27 Considering compatibility of adjacent boundary regions for standard cells placement and routing
US14/039,224 2013-09-27

Publications (2)

Publication Number Publication Date
KR20150035405A true KR20150035405A (ko) 2015-04-06
KR102407458B1 KR102407458B1 (ko) 2022-06-10

Family

ID=51752472

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140124060A KR102407458B1 (ko) 2013-09-27 2014-09-18 집적회로 레이아웃을 생성하는 방법

Country Status (5)

Country Link
US (1) US8959472B1 (ko)
KR (1) KR102407458B1 (ko)
CN (1) CN104517004B (ko)
GB (1) GB2520123A (ko)
TW (1) TWI625639B (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9690896B2 (en) 2015-04-09 2017-06-27 Samsung Electronics Co., Ltd. Method for manufacturing a semiconductor device and semiconductor device manufactured by the same
US9698056B2 (en) 2015-04-09 2017-07-04 Samsung Electronics., Ltd. Method for designing layout of semiconductor device and method for manufacturing semiconductor device using the same
US9773772B2 (en) 2015-04-09 2017-09-26 Samsung Electronics Co., Ltd. Semiconductor device and method of fabricating the same
KR20180025210A (ko) * 2016-08-31 2018-03-08 에이알엠 리미티드 3차원 집적회로 디자인을 생성하는 방법
US10204920B2 (en) 2015-04-09 2019-02-12 Samsung Electronics Co., Ltd. Semiconductor device including polygon-shaped standard cell
US11043428B2 (en) 2015-04-09 2021-06-22 Samsung Electronics Co., Ltd. Method for designing layout of semiconductor device and method for manufacturing semiconductor device using the same

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9348963B1 (en) * 2014-09-30 2016-05-24 Cadence Design System, Inc. Automatic abutment for devices with horizontal pins
US9734276B2 (en) * 2014-10-22 2017-08-15 Samsung Electronics Co., Ltd. Integrated circuit and method of designing layout of the same
US9928333B2 (en) 2015-07-30 2018-03-27 Samsung Electronics Co., Ltd. Methods of designing a layout of a semiconductor device including field effect transistor and methods of manufacturing a semicondutor device using the same
KR102415952B1 (ko) 2015-07-30 2022-07-05 삼성전자주식회사 반도체 소자의 레이아웃 설계 방법, 및 그를 이용한 반도체 소자의 제조 방법
US10114918B2 (en) 2016-01-27 2018-10-30 Arm Limited Physical placement control for an integrated circuit based on state bounds file
US10496783B2 (en) * 2017-04-19 2019-12-03 Mentor Graphics Corporation Context-aware pattern matching for layout processing
US10572615B2 (en) * 2017-04-28 2020-02-25 Synopsys, Inc. Placement and routing of cells using cell-level layout-dependent stress effects
US10503859B2 (en) * 2017-08-30 2019-12-10 Arm Limited Integrated circuit design and/or fabrication
US10741539B2 (en) * 2017-08-30 2020-08-11 Taiwan Semiconductor Manufacturing Co., Ltd. Standard cells and variations thereof within a standard cell library
KR102596528B1 (ko) 2018-01-15 2023-11-01 삼성전자주식회사 반도체 장치
CN110660792B (zh) * 2019-09-30 2022-03-18 上海华力微电子有限公司 Fdsoi标准单元的填充图形的生成方法以及版图布局方法
CN112668271A (zh) 2019-10-15 2021-04-16 台湾积体电路制造股份有限公司 集成电路器件设计方法和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004362420A (ja) * 2003-06-06 2004-12-24 Renesas Technology Corp 自動配置装置
US7378195B2 (en) * 2004-06-28 2008-05-27 International Business Machines Corporation System for coloring a partially colored design in an alternating phase shift mask
US20100281446A1 (en) * 2009-04-30 2010-11-04 Taiwan Semiconductor Manufacturing Company, Ltd. Integrated Circuit Design using DFM-Enhanced Architecture
US20110084312A1 (en) * 2009-10-13 2011-04-14 Tela Innovations, Inc. Methods for Cell Boundary Encroachment and Layouts Implementing the Same

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7028285B2 (en) * 2000-07-05 2006-04-11 Synopsys, Inc. Standard cell design incorporating phase information
JP2006165065A (ja) * 2004-12-02 2006-06-22 Matsushita Electric Ind Co Ltd 半導体集積回路及びそのレイアウト方法、並びにスタンダードセル
WO2007002799A1 (en) * 2005-06-29 2007-01-04 Lightspeed Logic, Inc. Methods and systems for placement
US7989849B2 (en) * 2006-11-15 2011-08-02 Synopsys, Inc. Apparatuses and methods for efficient power rail structures for cell libraries
US7526744B2 (en) * 2007-01-31 2009-04-28 Avago Technologies General Ip (Singapore) Pte. Ltd. Integrated circuit design method for efficiently generating mask data
TWI475415B (zh) * 2007-07-23 2015-03-01 Synopsys Inc 架構之實體合成
US8631383B2 (en) * 2008-06-30 2014-01-14 Qimonda Ag Integrated circuits, standard cells, and methods for generating a layout of an integrated circuit
US8136072B2 (en) 2008-11-03 2012-03-13 Arm Limited Standard cell placement
US7919792B2 (en) * 2008-12-18 2011-04-05 Taiwan Semiconductor Manufacturing Company, Ltd. Standard cell architecture and methods with variable design rules
US8255837B2 (en) * 2009-02-03 2012-08-28 Taiwan Semiconductor Manufacturing Company, Ltd. Methods for cell boundary isolation in double patterning design
JP2011124423A (ja) * 2009-12-11 2011-06-23 Toshiba Corp セルライブラリ、レイアウト方法およびレイアウト装置
US8423946B1 (en) * 2010-05-25 2013-04-16 Marvell International Ltd. Circuitry having programmable power rails, architectures, apparatuses, and systems including the same, and methods and algorithms for programming and/or configuring power rails in an integrated circuit
US8756550B2 (en) * 2011-09-19 2014-06-17 Texas Instruments Incorporated Method to ensure double patterning technology compliance in standard cells
KR20130035578A (ko) * 2011-09-30 2013-04-09 삼성전자주식회사 Dpl 공정을 위한 표준셀 라이브러리의 생성 방법 및 이를 이용한 dpl 마스크 생성방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004362420A (ja) * 2003-06-06 2004-12-24 Renesas Technology Corp 自動配置装置
US7378195B2 (en) * 2004-06-28 2008-05-27 International Business Machines Corporation System for coloring a partially colored design in an alternating phase shift mask
US20100281446A1 (en) * 2009-04-30 2010-11-04 Taiwan Semiconductor Manufacturing Company, Ltd. Integrated Circuit Design using DFM-Enhanced Architecture
US20110084312A1 (en) * 2009-10-13 2011-04-14 Tela Innovations, Inc. Methods for Cell Boundary Encroachment and Layouts Implementing the Same

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9690896B2 (en) 2015-04-09 2017-06-27 Samsung Electronics Co., Ltd. Method for manufacturing a semiconductor device and semiconductor device manufactured by the same
US9698056B2 (en) 2015-04-09 2017-07-04 Samsung Electronics., Ltd. Method for designing layout of semiconductor device and method for manufacturing semiconductor device using the same
US9773772B2 (en) 2015-04-09 2017-09-26 Samsung Electronics Co., Ltd. Semiconductor device and method of fabricating the same
US10026688B2 (en) 2015-04-09 2018-07-17 Samsung Electronics Co., Ltd. Semiconductor device and method of fabricating the same
US10204920B2 (en) 2015-04-09 2019-02-12 Samsung Electronics Co., Ltd. Semiconductor device including polygon-shaped standard cell
US10332798B2 (en) 2015-04-09 2019-06-25 Samsung Electronics Co., Ltd. Method for designing layout of semiconductor device and method for manufacturing semiconductor device using the same
US11043428B2 (en) 2015-04-09 2021-06-22 Samsung Electronics Co., Ltd. Method for designing layout of semiconductor device and method for manufacturing semiconductor device using the same
USRE49545E1 (en) 2015-04-09 2023-06-06 Samsung Electronics Co., Ltd. Semiconductor device including polygon-shaped standard cell
KR20180025210A (ko) * 2016-08-31 2018-03-08 에이알엠 리미티드 3차원 집적회로 디자인을 생성하는 방법

Also Published As

Publication number Publication date
TWI625639B (zh) 2018-06-01
KR102407458B1 (ko) 2022-06-10
CN104517004A (zh) 2015-04-15
US8959472B1 (en) 2015-02-17
CN104517004B (zh) 2019-11-01
GB201415488D0 (en) 2014-10-15
TW201514742A (zh) 2015-04-16
GB2520123A (en) 2015-05-13

Similar Documents

Publication Publication Date Title
KR102407458B1 (ko) 집적회로 레이아웃을 생성하는 방법
US20190026417A1 (en) Computer Implemented System and Method for Generating a Layout of a Cell Defining a Circuit Component
US8775999B2 (en) Standard cell placement method to exercise placement permutations of standard cell libraries
US7890909B2 (en) Automatic block composition tool for composing custom blocks having non-standard library cells in an integrated circuit design flow
US8185856B2 (en) Manufacturing method, manufacturing program and manufacturing system for adjusting signal delay in a semiconductor device
JP2004502259A (ja) 階層型金属末端、包囲、および曝露をチェックする方法およびシステム
US8051400B2 (en) Modifying integrated circuit layout
CN108416077B (zh) 用于通过考虑后段制程来设计集成电路的方法和计算系统
JP2008547135A (ja) プリミティブ構築標準セルを作成するための方法
US10089433B2 (en) Method for triple-patterning friendly placement
KR20090115230A (ko) 제조능력을 위한 디자인
US20040025136A1 (en) Method for designing a custom ASIC library
US10339241B1 (en) Methods for incremental circuit design legalization during physical synthesis
US8713507B1 (en) Method and apparatus for efficiently inserting fills in an integrated circuit layout
US7418675B2 (en) System and method for reducing the power consumption of clock systems
JP2006155524A (ja) 半導体集積回路の検証方法、検証装置および検証プログラム
JP2009134439A (ja) ソフトマクロを用いたレイアウト設計方法、ソフトマクロのデータ構造及びソフトマクロライブラリの作成方法
US11042684B1 (en) Dynamic width-space patterns for handling complex DRC rules
US10482211B1 (en) System and method for electronic circuit design editing having adaptive visual indicia for relative current loading of circuit layout portions
KR101932805B1 (ko) 패턴 기반 전력 및 접지 (pg) 라우팅 및 비아 생성
US10936772B1 (en) Methods for incremental circuit physical synthesis
JP2006338090A (ja) 半導体集積回路の設計方法および設計装置
KR102718979B1 (ko) Beol을 고려하여 집적 회로를 설계하기 위한 컴퓨터 구현 방법 및 컴퓨팅 시스템
JP7334580B2 (ja) 自動配置配線装置、自動配置配線方法、自動配置配線プログラム、自動配置配線プログラムを格納した記憶媒体および半導体集積回路
KR20230173904A (ko) 반도체 집적 회로 설계 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant