KR20180088259A - Method and system for manufacturing integrated circuit by considering local layout effect - Google Patents

Method and system for manufacturing integrated circuit by considering local layout effect Download PDF

Info

Publication number
KR20180088259A
KR20180088259A KR1020170118835A KR20170118835A KR20180088259A KR 20180088259 A KR20180088259 A KR 20180088259A KR 1020170118835 A KR1020170118835 A KR 1020170118835A KR 20170118835 A KR20170118835 A KR 20170118835A KR 20180088259 A KR20180088259 A KR 20180088259A
Authority
KR
South Korea
Prior art keywords
instance
integrated circuit
context group
instances
layer pattern
Prior art date
Application number
KR1020170118835A
Other languages
Korean (ko)
Other versions
KR102434992B1 (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 삼성전자주식회사
Priority to US15/867,939 priority Critical patent/US10599130B2/en
Priority to CN201810070832.9A priority patent/CN108460184B/en
Publication of KR20180088259A publication Critical patent/KR20180088259A/en
Application granted granted Critical
Publication of KR102434992B1 publication Critical patent/KR102434992B1/en

Links

Images

Classifications

    • G06F17/5081

Landscapes

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

Abstract

According to an exemplary embodiment of the present disclosure, disclosed are a computing system and method for designing an integrated circuit by considering a local layout effect. A method for manufacturing an integrated circuit including instances of standard cells according to an exemplary embodiment of the present invention includes the steps of: arranging a first instance; and arranging a second instance with a front-end-layer pattern which is identical to a context group of the first instance to be adjacent to the first instance. The context group includes information on the front-end-layer pattern of the instances generating the same local layout effect in the first instance and arranged to be adjacent to the first instance. Accordingly, the present invention improve the performance of the integrated circuit.

Description

로컬 레이아웃 효과를 고려하여 집적 회로를 제조하는 방법 및 시스템 {METHOD AND SYSTEM FOR MANUFACTURING INTEGRATED CIRCUIT BY CONSIDERING LOCAL LAYOUT EFFECT}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a method and system for manufacturing an integrated circuit,

본 개시의 기술적 사상은 집적 회로에 관한 것으로서, 자세하게는 로컬 레이아웃 효과를 고려하여 집적 회로를 제조하기 위한 방법 및 시스템에 관한 것이다.Technical aspects of the present disclosure relate to an integrated circuit, and more particularly, to a method and system for manufacturing an integrated circuit in consideration of local layout effects.

디지털 신호를 처리하는 집적 회로는 표준 셀들에 기초하여 설계될 수 있다. 집적 회로는 표준 셀들의 인스턴스(instance)들을 포함할 수 있고, 하나의 표준 셀에 대응하는 인스턴스들은 동일한 구조, 즉 레이아웃을 가질 수 있다. 집적 회로가 원하는 기능을 구현하도록 인스턴스들이 배치되고 인스턴스들을 전기적으로 연결하는 상호 연결들이 생성됨으로써, 집적 회로의 레이아웃이 생성될 수 있다. An integrated circuit for processing digital signals can be designed based on standard cells. The integrated circuit may include instances of standard cells, and instances corresponding to one standard cell may have the same structure, i.e., a layout. Instances are placed and interconnects electrically connecting the instances are created so that the integrated circuit implements the desired functionality, so that a layout of the integrated circuit can be created.

반도체 제조 공정이 미세화됨에 기인하여, 복수의 레이어들에 형성된 패턴들을 포함하는 표준 셀은 감소된 크기의 패턴들을 포함할 뿐만 아니라 표준 셀의 크기도 감소할 수 있다. 이에 따라, 집적 회로에 포함된 표준 셀의 인스턴스는 그 주변 구조(즉, 레이아웃)로부터 받는 영향이 커질 수 있다. 이러한 주변 레이아웃에 의한 영향은 로컬 레이아웃 효과(local layout effect; LLE) 또는 레이아웃 의존 효과(layout dependent effect; LDE)로 지칭될 수 있다.Due to the miniaturization of the semiconductor manufacturing process, standard cells including patterns formed in a plurality of layers not only include patterns of reduced size, but also can reduce the size of standard cells. Thus, an instance of a standard cell included in an integrated circuit may have a large influence from its surrounding structure (i.e., layout). The effect of such a peripheral layout can be referred to as a local layout effect (LLE) or a layout dependent effect (LDE).

본 개시의 기술적 사상은 로컬 레이아웃 효과를 고려하여 집적 회로를 설계하는 방법에 관한 것으로서, 로컬 레이아웃 효과를 반영하여, 집적 회로의 레이아웃을 생성하고, 집적 회로를 제조하는 시스템 및 방법을 제공한다.The technical idea of the present disclosure relates to a method of designing an integrated circuit in consideration of a local layout effect, and provides a system and a method for generating an integrated circuit layout and manufacturing an integrated circuit reflecting the local layout effect.

본 개시의 기술적 사상의 일측면에 따른, 표준 셀들의 인스턴스들을 포함하는 집적 회로를 제조하기 위한 방법은, 제1 인스턴스를 배치하는 단계, 및 제1 인스턴스의 컨텍스트 그룹과 일치하는 프론트-엔드-레이어(front-end-layer) 패턴을 갖는 제2 인스턴스를 제1 인스턴스에 인접하게 배치하는 단계를 포함하고, 컨텍스트 그룹은 제1 인스턴스에 동일한 로컬 레이아웃 효과(local layout effect)를 발생시키고 제1 인스턴스에 인접하게 배치되는, 인스턴스들의 프론트-엔드-레이어 패턴에 대한 정보를 포함할 수 있다.According to an aspect of the present disclosure, a method for fabricating an integrated circuit including instances of standard cells includes the steps of: placing a first instance, and creating a front-end-layer placing a second instance having a front-end-layer pattern adjacent to the first instance, wherein the context group generates the same local layout effect on the first instance, And may include information about the front-end-layer pattern of the instances, which are arranged adjacently.

본 개시의 기술적 사상의 일측면에 따른, 집적 회로를 포함하는 반도체 장치의 제조 방법에 있어서, 표준 셀의 인스턴스들을 포함하는 레이아웃 데이터를 생성하는 상기 집적 회로를 설계하는 단계, 및 레이아웃 데이터를 기초로 집적 회로를 제조하는 단계를 포함하고, 집적 회로를 설계하는 단계는, 제1 인스턴스를 배치하고, 제1 인스턴스에 제1 방향으로 인접하도록 제2 인스턴스를 배치하는 단계, 및 제2 인스턴스의 프론트-엔드-레이어 패턴이 제1 인스턴스의 컨텍스트 그룹과 일치하는지 판단하는 단계; 를 포함하고, 컨텍스트 그룹은 상기 제1 인스턴스에 동일한 로컬 레이아웃 효과를 발생시키고 제1 인스턴스에 인접하게 배치되는, 인스턴스들의 프론트-엔드-레이어 패턴에 대한 정보를 포함할 수 있다. According to an aspect of the present disclosure, there is provided a method of manufacturing a semiconductor device including an integrated circuit, the method comprising: designing the integrated circuit to generate layout data including instances of a standard cell; Wherein the step of designing an integrated circuit includes the steps of: placing a first instance and placing a second instance adjacent to the first instance in a first direction, and designing a front- Determining if the end-layer pattern matches a context group of the first instance; And the context group may include information about the front-end-layer pattern of instances, which generates the same local layout effect on the first instance and is disposed adjacent to the first instance.

본 개시의 기술적 사상의 일측면에 따른, 표준 셀들의 인스턴스들을 포함하는 집적 회로를 제조하기 위한 컴퓨팅 시스템으로서, 프로시저(procedure)들을 포함하는 정보를 저장하는 메모리, 및 메모리에 엑세스 가능하고, 프로시저들을 실행하는 프로세서를 포함하고, 프로시저들은, 제1 인스턴스를 배치하고, 제1 인스턴스의 컨텍스트 그룹과 액티브 영역의 형상이 서로 일치하는 상기 제2 인스턴스를 배치하는 인스턴스 배치기; 및 인스턴스들을 라우팅함으로써 집적 회로의 레이아웃 데이터를 생성하는 라우터;를 포함하고, 컨텍스트 그룹은 제1 인스턴스에 동일한 로컬 레이아웃 효과를 발생시키고 제1 인스턴스에 인접하게 배치되는, 인스턴스들의 액티브 영역 대한 정보를 포함할 수 있다.A computing system for fabricating an integrated circuit including instances of standard cells, in accordance with an aspect of the teachings of the present disclosure, includes: a memory that stores information including procedures; An instance deployer for deploying a first instance and for arranging the second instance in which a shape of an active area and a context group of a first instance coincide with each other; And a router for generating layout data of the integrated circuit by routing the instances, wherein the context group includes information about the active regions of the instances, which generate the same local layout effect on the first instance and are disposed adjacent to the first instance can do.

본 개시의 예시적 실시예에 따른 집적 회로를 설계하기 위한 시스템 및 방법에 의하면, 타겟 표준 셀에 발생하는 로컬 레이아웃 효과를 반영하여, 타겟 표준 셀과 인접한 표준 셀을 배치하도록 집적 회로를 설계할 수 있다. 따라서, 집적 회로의 성능이 향상되고, 집적 회로가 최적으로 설계될 수 있다.A system and method for designing an integrated circuit according to an exemplary embodiment of the present disclosure can design an integrated circuit to place a standard cell adjacent a target standard cell, reflecting the local layout effects that occur in the target standard cell. have. Thus, the performance of the integrated circuit can be improved, and the integrated circuit can be designed optimally.

도 1은 본 개시의 예시적 실시예에 따른 프로그램을 저장하는 메모리를 포함하는 컴퓨팅 시스템의 블록도를 나타낸다.
도 2a는 본 개시의 예시적 실시예에 따라 집적 회로의 개략적인 레이아웃을 나타낸다.
도 2b는 도 2a의 집적 회로의 개략적인 레이아웃의 일부를 나타낸 도면이다.
도 3은 본 개시의 예시적 실시예에 따라 도 1의 프로그램의 블록도를 나타낸다.
도 4는 본 개시의 예시적 실시예에 따라 집적 회로를 설계하는 방법을 나타내는 순서도이다.
도 5는 타겟 표준 셀에 발생되는 로컬 레이아웃 효과를 설명하기 위한 그래프이다.
도 6은 본 개시의 예시적 실시예에 따른 집적 회로의 개략적인 레이아웃의 일부를 나타낸 도면이다.
도 7은 본 개시의 예시적 실시예에 따라 집적 회로를 설계하는 방법을 나타내는 순서도이다.
도 8은 본 개시의 예시적 실시예에 따라 집적 회로를 설계하는 방법을 나타내는 순서도이다.
도 9a 및 도 9b는 본 개시의 예시적 실시예에 따른 집적 회로의 개략적인 레이아웃의 일부를 나타낸 도면이다.
도 10은 본 개시의 예시적 실시예에 따라 도 1의 프로그램의 블록도를 나타낸다.
도 11은 본 개시의 예시적 실시예에 따라 집적 회로를 설계하는 방법을 나타내는 순서도이다.
도 12는 본 개시의 일 실시예에 따른 반도체 장치의 제조 방법을 나타내는 흐름도이다.
1 shows a block diagram of a computing system including a memory for storing a program according to an exemplary embodiment of the present disclosure;
Figure 2a illustrates a schematic layout of an integrated circuit in accordance with an exemplary embodiment of the present disclosure.
Figure 2B is a diagram illustrating a portion of a schematic layout of the integrated circuit of Figure 2A.
Figure 3 shows a block diagram of the program of Figure 1 in accordance with an exemplary embodiment of the present disclosure.
4 is a flow diagram illustrating a method of designing an integrated circuit in accordance with an exemplary embodiment of the present disclosure.
5 is a graph for explaining the local layout effect generated in the target standard cell.
6 is a diagram illustrating a portion of a schematic layout of an integrated circuit according to an exemplary embodiment of the present disclosure;
7 is a flow diagram illustrating a method of designing an integrated circuit in accordance with an exemplary embodiment of the present disclosure.
8 is a flow diagram illustrating a method of designing an integrated circuit in accordance with an exemplary embodiment of the present disclosure.
9A and 9B are views showing a portion of a schematic layout of an integrated circuit according to an exemplary embodiment of the present disclosure;
Figure 10 shows a block diagram of the program of Figure 1 in accordance with an exemplary embodiment of the present disclosure.
11 is a flow diagram illustrating a method of designing an integrated circuit in accordance with an exemplary embodiment of the present disclosure.
12 is a flowchart showing a method of manufacturing a semiconductor device according to an embodiment of the present disclosure.

도 1은 본 개시의 예시적 실시예에 따른 프로그램을 저장하는 메모리를 포함하는 컴퓨팅 시스템(10)의 블록도를 나타낸다. 본 개시의 예시적 실시예에 따라 집적 회로를 설계하는 동작은 컴퓨팅 시스템(10)에서 수행될 수 있다.1 shows a block diagram of a computing system 10 including a memory for storing a program according to an exemplary embodiment of the present disclosure. The operation of designing the integrated circuit in accordance with the exemplary embodiment of the present disclosure may be performed in the computing system 10.

컴퓨팅 시스템(10)은 데스크탑 컴퓨터, 워크스테이션, 서버 등과 같이 고정형 컴퓨팅 시스템일 수도 있고, 랩탑 컴퓨터 등과 같이 휴대형 컴퓨팅 시스템일 수도 있다. 도 1에 도시된 바와 같이, 컴퓨팅 시스템(10)은 CPU(central processing unit)(11), 입출력 장치들(12), 네트워크 인터페이스(13), RAM(random access memory)(14), ROM(read only memory)(15) 및 저장 장치(16)를 포함할 수 있다. CPU(11), 입출력 장치들(12), 네트워크 인터페이스(13), RAM(14), ROM(15) 및 저장 장치(16)는 버스(17)에 연결될 수 있고, 버스(17)를 통해서 서로 통신할 수 있다.The computing system 10 may be a fixed computing system, such as a desktop computer, a workstation, a server, or the like, or a portable computing system, such as a laptop computer. 1, the computing system 10 includes a central processing unit (CPU) 11, input / output devices 12, a network interface 13, a random access memory (RAM) 14, only memory < / RTI > (15) and a storage device (16). The CPU 11, the input / output devices 12, the network interface 13, the RAM 14, the ROM 15 and the storage device 16 may be connected to the bus 17, Communication can be performed.

CPU(11)는 프로세싱 유닛으로 지칭될 수 있고, 예를 들어 마이크로프로세서(micro-processor), AP(application processor, DSP(digital signal processor), GPU(graphic processing unit)와 같이, 임의의 명령어 세트(예를 들어, IA-32(Intel Architecture-32), 64 비트 확장 IA-32, x86-64, PowerPC, Sparc, MIPS, ARM, IA-64 등)를 실행할 수 있는 코어를 포함할 수 있다. 예를 들면, CPU(11)는 버스(17)를 통해서 메모리, 즉 RAM(14) 또는 ROM(15)에 액세스할 수 있고, RAM(14) 또는 ROM(15)에 저장된 명령어들을 실행할 수 있다. 도 1에 도시된 바와 같이, RAM(14)은 본 개시의 예시적 실시예에 따른 프로그램(20) 또는 그것의 적어도 일부를 저장할 수 있고, 프로그램(20)은 CPU(11)로 하여금 집적 회로를 설계하기 위한 동작을 수행하도록 할 수 있다. 즉, 프로그램(20)은 CPU(11)에 의해서 실행 가능한 복수의 명령어들을 포함할 수 있고, 프로그램(20)에 포함된 복수의 명령어들은 CPU(11)로 하여금 본 개시의 예시적 실시예들에 따른 집적 회로를 설계하기 위한 동작들을 수행하도록 할 수 있다.CPU 11 may be referred to as a processing unit and may be implemented as any instruction set such as a micro-processor, an application processor, a digital signal processor (DSP), a graphics processing unit (GPU) For example, a core capable of executing IA-32 (Intel Architecture-32), 64-bit extensions IA-32, x86-64, PowerPC, Sparc, MIPS, ARM, IA-64, etc.). For example, the CPU 11 may access the memory, that is, the RAM 14 or the ROM 15, via the bus 17 and execute the instructions stored in the RAM 14 or the ROM 15. [ 1, the RAM 14 may store a program 20 or at least a portion thereof in accordance with the illustrative embodiment of the present disclosure, and the program 20 may cause the CPU 11 to design an integrated circuit The program 20 may include a plurality of instructions executable by the CPU 11, The plurality of instructions contained in the program 20 may cause the CPU 11 to perform operations for designing an integrated circuit according to the exemplary embodiments of the present disclosure.

저장 장치(16)는 컴퓨팅 시스템(10)에 공급되는 전력이 차단되더라도 저장된 데이터를 소실하지 아니할 수 있다. 예를 들면, 저장 장치(16)는 EEPROM(non-volatile memory such as a Electrically Erasable Programmable Read-Only Memory), 플래시 메모리(flash memory), PRAM(Phase Change Random Access Memory), RRAM(Resistance Random Access Memory), NFGM(Nano Floating Gate Memory), PoRAM(Polymer Random Access Memory), MRAM(Magnetic Random Access Memory), FRAM(Ferroelectric Random Access Memory) 등과 같은 비휘발성 메모리를 포함할 수도 있고, 자기 테이프, 광학 디스크, 자기 디스크와 같은 저장 매체를 포함할 수도 있다. 또한, 저장 장치(16)는 컴퓨팅 시스템(10)으로부터 탈착 가능할 수도 있다. 저장 장치(16)는 본 개시의 예시적 실시예에 따른 프로그램(20)을 저장할 수 있으며, 프로그램(20)이 CPU(11)에 의해서 실행되기 이전에 저장 장치(16)로부터 프로그램(20) 또는 그것의 적어도 일부가 RAM(14)으로 로딩될 수 있다. 저장 장치(16)는 프로그램 언어로 작성된 파일을 저장할 수도 있고, 컴파일러 등에 의해서 생성된 프로그램(20) 또는 그것의 적어도 일부가 RAM(14)으로 로딩될 수도 있다.The storage device 16 may not lose the stored data even if the power supplied to the computing system 10 is interrupted. For example, the storage device 16 may be a non-volatile memory such as an electrically erasable programmable read-only memory (EEPROM), a flash memory, a phase change random access memory (PRAM), a resistance random access memory ), Nano Floating Gate Memory (NFGM), Polymer Random Access Memory (PoRAM), Magnetic Random Access Memory (MRAM), Ferroelectric Random Access Memory (FRAM) Or may include a storage medium such as a magnetic disk. In addition, the storage device 16 may be removable from the computing system 10. The storage device 16 may store the program 20 in accordance with the illustrative embodiment of the present disclosure and may store the program 20 or the program 20 from the storage device 16 prior to being executed by the CPU 11. [ At least a portion of it may be loaded into the RAM 14. The storage device 16 may store a file written in a programming language and the program 20 or at least a part thereof generated by a compiler or the like may be loaded into the RAM 14. [

저장 장치(16)는 CPU(11)에 의해서 처리될 데이터 또는 CPU(11)에 의해서 처리된 데이터를 저장할 수도 있다. 즉, CPU(11)는 프로그램(20)에 따라, 저장 장치(16)에 저장된 데이터를 처리함으로써 새로운 데이터를 생성할 수 있고, 생성된 데이터를 저장 장치(16)에 저장할 수도 있다. 예를 들면, 저장 장치(16)는 프로그램(20)에 의해서 처리되는 도 3의 입력 데이터(D010)를 저장할 수도 있으며, 프로그램(20)에 의해서 생성되는 도 3의 레이아웃 데이터(D100)를 저장할 수도 있다.The storage device 16 may store data to be processed by the CPU 11 or data processed by the CPU 11. [ That is, the CPU 11 can generate new data by processing the data stored in the storage device 16 according to the program 20, and store the generated data in the storage device 16. [ For example, the storage device 16 may store the input data D010 of FIG. 3 processed by the program 20, store the layout data D100 of FIG. 3 generated by the program 20 have.

입출력 장치들(12)은 키보드, 포인팅 장치 등과 같은 입력 장치를 포함할 수 있고, 디스플레이 장치, 프린터 등과 같은 출력 장치를 포함할 수 있다. 예를 들면, 사용자는 입출력 장치들(12)을 통해서, CPU(11)에 의해 프로그램(20)의 실행을 트리거하거나 도 3의 입력 데이터(D010)를 입력할 수도 있으며, 도 3의 레이아웃 데이터(D100) 및/또는 오류 메시지 등을 확인할 수도 있다.Input / output devices 12 may include input devices such as keyboards, pointing devices, and the like, and may include output devices such as display devices, printers, and the like. For example, the user may trigger the execution of the program 20 by the CPU 11 or input the input data D010 of Fig. 3 via the input / output devices 12, D100) and / or an error message.

네트워크 인터페이스(13)는 컴퓨팅 시스템(10) 외부의 네트워크에 대한 액세스를 제공할 수 있다. 예를 들면, 네트워크는 다수의 컴퓨팅 시스템들 및 통신 링크들을 포함할 수 있고, 통신 링크들은 유선 링크들, 광학 링크들, 무선 링크들 또는 임의의 다른 형태의 링크들을 포함할 수 있다. 도 3의 입력 데이터(D010)가 네트워크 인터페이스(13)를 통해서 컴퓨팅 시스템(10)에 제공될 수도 있고, 레이아웃 데이터(D100)가 네트워크 인터페이스(13)를 통해서 다른 컴퓨팅 시스템에 제공될 수도 있다.The network interface 13 may provide access to a network outside the computing system 10. For example, a network may include multiple computing systems and communication links, and the communication links may include wired links, optical links, wireless links, or any other type of links. The input data D010 of Figure 3 may be provided to the computing system 10 via the network interface 13 and the layout data D100 may be provided to the other computing system via the network interface 13. [

도 2a는 본 개시의 예시적 실시예에 따라 집적 회로(5)의 개략적인 레이아웃을 나타낸다. 도 2a에서 집적 회로(5)에 포함된 각 구성요소들은, 설명의 편의를 위해서 스케일에 맞지 아니할 수 있고, 과장되거나 축소되어 도해될 수 있다.2A shows a schematic layout of an integrated circuit 5 according to an exemplary embodiment of the present disclosure. In Fig. 2A, the components included in the integrated circuit 5 may not fit the scale for illustrative convenience, and may be exaggerated or reduced.

도 2a를 참조하면, 집적 회로(5)는 표준 셀들의 인스턴스들(C01, C02)을 포함할 수 있다. 동일한 표준 셀에 대응하는 인스턴스들은 동일한 레이아웃을 가질 수 있고, 상이한 표준 셀들에 각각 대응하는 인스턴스들은 상이한 레이아웃들을 각각 가질 수 있다. 인스턴스들(C01 내지 C06)은 복수의 행들(R01 내지 R04)에 정렬되어 배치될 수 있다. 인스턴스들(C01 내지 C06)은 X방향으로 연장되는 복수의 행들(R01 내지 R04)과 수직한 방향(즉, Y방향)으로 규정된 길이(H)(즉, 높이)를 가질 수 있고, 복수의 행들과 평행한 방향(즉, X방향)으로 동일하거나 상이한 길이(즉, 폭)를 가질 수 있다. 인스턴스들(C01 내지 C06)이 정렬되는 복수의 행들(R01 내지 R04) 각각은 표준 셀의 최소 높이와 일치하는 높이를 가질 수 있다.Referring to FIG. 2A, the integrated circuit 5 may include instances of standard cells (C01, C02). Instances corresponding to the same standard cell may have the same layout, and instances corresponding to different standard cells may have different layouts, respectively. The instances C01 to C06 may be arranged in a plurality of rows R01 to R04. The instances C01 to C06 may have a length H (i.e., height) defined in a direction perpendicular to the plurality of rows R01 to R04 extending in the X direction (i.e., the Y direction) (I.e., width) in the direction parallel to the rows (i.e., the X direction). Each of the plurality of rows R01 through R04 in which the instances C01 through C06 are aligned may have a height corresponding to a minimum height of the standard cell.

기능, 타이밍 특성 등과 같은 표준 셀의 물리적 특성에 기초하여, 복수의 표준 셀들에 관한 정보를 포함하는 셀 라이브러리(예를 들어, 도 3의 D310)로부터 집적 회로에 포함될 표준 셀이 선정될 수 있고, 선정된 표준 셀의 인스턴스가 배치됨으로써 집적 회로(5)의 레이아웃이 생성될 수 있다. A standard cell to be included in an integrated circuit may be selected from a cell library (for example, D310 in FIG. 3) including information on a plurality of standard cells, based on the physical characteristics of standard cells such as functions, timing characteristics, The layout of the integrated circuit 5 can be created by placing instances of the selected standard cells.

인스턴스는 그 주변 레이아웃에 따라 표준 셀의 물리적 특성(즉, 표준 셀의 진성(intrinsic) 물리적 특성)과 상이한 물리적 특성을 가질 수 있다. 예를 들면, 인스턴스에 포함된 트랜지스터의 문턱전압(Vth) 및 드레인 포화 전류(Idsat)는 인스턴스 주변의 레이아웃에 따라 변동할 수 있고, 이에 따라 집적 회로(5)에 포함된 인스턴스의 물리적 특성은 셀 라이브러리에서 정의하는 표준 셀의 진성(intrinsic) 물리적 특성과 상이할 수 있다. 이와 같이 인스턴스의 주변 레이아웃에 의한 영향은 로컬 레이아웃 효과(local layout effect; LLE) 또는 레이아웃 의존 효과(layout dependent effect; LDE)로서 지칭될 수 있다.An instance may have physical characteristics that differ from the physical characteristics of a standard cell (i. E. Intrinsic physical characteristics of a standard cell) depending on its surrounding layout. For example, the threshold voltage (Vth) and the drain saturation current (Idsat) of the transistors included in the instance may vary according to the layout around the instance, so that the physical characteristics of the instance included in the integrated circuit May differ from the intrinsic physical properties of the standard cells defined in the library. In this way, the influence of the peripheral layout of the instance can be referred to as a local layout effect (LLE) or a layout dependent effect (LDE).

트랜지스터의 물리적 특성, 예를 들어 문턱전압(Vth) 및 드레인 포화 전류(Idsat) 등은, 그 트랜지스터의 주변에 형성된 프론트-엔드-레이어(front-end-layer 또는 front-end-of-layer)의 패턴에 의해서 변동될 수 있다. 프론트-엔드-레이어는 트랜지스터의 형성과 관계된 레이어로서, 반도체 제조 공정에서 트랜지스터, 캐패시터, 저항 등과 같은 소자들을 형성하는 FEOL(front-end-of-line)에 의해 형성되는 레이어를 지칭할 수 있다. The physical characteristics of the transistor, for example, the threshold voltage Vth and the drain saturation current Idsat, may be the same as those of the front-end-layer or front-end-of-layer It can be varied by a pattern. The front-end-layer may refer to a layer formed by a front-end-of-line (FEOL) that forms elements such as transistors, capacitors, resistors, etc. in a semiconductor manufacturing process.

본 개시의 예시적 실시예에 따라, 도 1의 컴퓨팅 시스템(10)에서 수행될 수 있는 집적 회로를 설계하는 방법은, 로컬 레이아웃 효과를 고려할 수 있다. 예를 들면, 도 3 등을 참조하여 후술되는 바와 같이, 컴퓨팅 시스템(10)은 프론트-엔드-레이어의 패턴에 따라 발생하는 로컬 레이아웃 효과를 고려하여, 제2 인스턴스를 제1 인스턴스에 인접하도록 배치할 수 있다. 이에 따라, 로컬 레이아웃 효과에 의해 제1 인스턴스는 상대적으로 지연 시간이 감소되거나 전력 손실이 감소될 수 있고, 집적 회로의 성능이 향상될 수 있다. According to an exemplary embodiment of the present disclosure, a method of designing an integrated circuit that may be performed in the computing system 10 of FIG. 1 may take into account local layout effects. For example, as described below with reference to FIG. 3 and the like, the computing system 10 may arrange the second instance to be adjacent to the first instance, taking into account the local layout effect that occurs according to the pattern of the front- can do. As a result, the local layout effect allows the first instance to be relatively reduced in delay time or power loss, and the performance of the integrated circuit can be improved.

도 2b는 도 2a의 집적 회로(5)의 개략적인 레이아웃의 일부를 나타낸 도면으로서, 집적 회로(5)에 포함된 제1 인스턴스(C01) 및 제2 인스턴스(C02)의 프론트-엔드-레이어에 형성된 패턴들을 설명하기 위한 도면이다. Fig. 2B is a diagram showing a part of the schematic layout of the integrated circuit 5 of Fig. 2A, in which the first instance C01 and the second instance C02 included in the integrated circuit 5 are connected to the front- And is a view for explaining the formed patterns.

도 2b를 참조하면, 인스턴스들(C01, C02)은 셀 바운더리(CB1, CB2)에 의해 한정되고, 인스턴스들(C01, C02)은 복수의 핀들(FN1, FN2), 제1 및 제2 액티브(active) 영역들(예를 들어, AR1, AR2) 및 복수의 게이트 라인들(gate lines)(GL1, GL2, GL3)를 포함할 수 있다. 셀 바운더리(CB1, CB2)는 인스턴스들(C01, C02)을 한정하는 아웃라인으로, 배치 및 배선(Place and Route, P&R) 툴은 셀 바운더리(CB1, CB2)를 이용하여 인스턴스들(C01, C02)을 인식할 수 있다. 셀 바운더리(CB1, CB2)는 네 개의 바운더리 라인들로 구성된다.2B, the instances C01 and C02 are defined by the cell boundaries CB1 and CB2 and the instances C01 and C02 are defined by the plurality of pins FN1 and FN2, active regions (e.g., AR1, AR2) and a plurality of gate lines (GL1, GL2, GL3). The cell boundaries CB1 and CB2 are outlines that define the instances C01 and C02 and the Place and Route tool uses the cell boundaries CB1 and CB2 to instantiate the instances C01 and C02 ) Can be recognized. The cell boundaries CB1 and CB2 are composed of four boundary lines.

복수의 핀들(FN1, FN2)은 제1 방향(예를 들어, X 방향)으로 연장되고, 제2 방향에 수직인 제2 방향(예를 들어, Y 방향)을 따라 서로 평행하게 배치될 수 있다. 제1 액티브 영역(AR1)과 제2 액티브 영역(AR2)은 서로 평행하게 배치될 수 있으며, 서로 다른 도전형을 가질 수 있다. 예를 들어, 제1 액티브 영역(AR1)은 P형 FinFET이 형성되기 위한 액티브 영역 일 수 있고, 제2 액티브 영역(AR2)은 N형 FinFET이 형성되기 위한 액티브 영역 일 수 있다.The plurality of pins FN1 and FN2 may extend in a first direction (e.g., the X direction) and may be disposed parallel to each other along a second direction (e.g., Y direction) perpendicular to the second direction . The first active area AR1 and the second active area AR2 may be arranged in parallel with each other and may have different conductivity types. For example, the first active region AR1 may be an active region for forming a P-type FinFET, and the second active region AR2 may be an active region for forming an N-type FinFET.

일 실시예에서는, 제1 및 제2 액티브 영역들(AR1, AR2) 각각에 3개의 핀들(FN)이 배치될 수 있다. 그러나, 본 발명은 이에 한정되지 않고, 제1 및 제2 액티브 영역들(AR1, AR2) 각각에 배치된 복수의 핀들(FN1, FN2)의 개수는 다양하게 변경될 수 있고, 2개의 핀들이 배치될 수도 있다. 이때, 제1 및 제2 액티브 영역들(AR1, AR2)에 배치되는 복수의 핀들(FN1, FN2)은 액티브 핀들이라고 지칭할 수 있다. 도 2 b에서는 액티브 핀들만을 도시하였으나, 본 발명은 이에 한정되지 않으며, 인스턴스들(C01, C02)은 셀 바운더리(CB1, CB2)와 제1 액티브 영역(AR1), 제1 및 제2 액티브 영역들(AR1, AR2) 사이의 영역, 또는 제2 액티브 영역(AR2)과 셀 바운더리(CB1, CB2) 사이의 영역에 배치되는 더미 핀들을 더 포함할 수 있다.In one embodiment, three pins FN may be disposed in each of the first and second active areas AR1 and AR2. However, the present invention is not limited to this, and the number of the plurality of fins FN1, FN2 disposed in each of the first and second active areas AR1, AR2 can be variously changed, . At this time, the plurality of fins FN1 and FN2 disposed in the first and second active areas AR1 and AR2 may be referred to as active pins. 2B, the present invention is not limited to this. Instances C01 and C02 may include cell boundaries CB1 and CB2 and a first active region AR1, first and second active regions AR1 and AR2, And dummy pins disposed in a region between the second active region AR2 and the cell boundary CB1 or CB2 or between the second active region AR2 and the cell boundary CB1 or CB2.

복수의 게이트 라인들(GL1, GL2, GL3)은 제2 방향(예를 들어, Y 방향)으로 연장될 수 있고, 제1 방향(예를 들어, X 방향)을 따라 서로 평행하게 배치될 수 있다. 이때, 복수의 게이트 라인들(GL1, GL2, GL3)은 전기 전도성을 갖는 임의의 물질로 구성될 수 있으며, 예를 들어, 폴리 실리콘, 금속, 금속 합금 등을 포함할 수 있다. 이 때, 제1 인스턴스(C01)와 제2 인스턴스(C02)가 인접하는 경계면에 배치되는 게이트 라인(GL2)은 더미 게이트 라인일 수 있다. The plurality of gate lines GL1, GL2 and GL3 may extend in a second direction (e.g., the Y direction) and may be disposed parallel to each other along the first direction (e.g., the X direction) . The plurality of gate lines GL1, GL2, and GL3 may be formed of any material having electrical conductivity, and may include, for example, polysilicon, a metal, a metal alloy, or the like. At this time, the gate line GL2 disposed at the interface between the first instance C01 and the second instance C02 may be a dummy gate line.

제1 인스턴스(C01)는 인접하게 배치된 제2 인스턴스(C02)에 의한 로컬 레이아웃 효과로 인하여, 물리적 특성이 변할 수 있다. 로컬 레이아웃 효과는 제2 인스턴스(C02)의 프론트-엔드-레이어의 패턴들의 형상에 따라 달라질 수 있다. 예를 들어, 제2 인스턴스(C02)에 배치되는 제1 및 제2 액티브 영역들(AR1, AR2)의 형상 및 제1 및 제2 액티브 영역들(AR1, AR2)에 포함된 복수의 핀들(FN1, FN2)의 수에 따라 달라질 수 있다. 프론트-엔드-레이어의 패턴들의 형상에 따른 로컬 레이아웃 효과의 변화는 도 6 등에 대한 설명에서 후술하겠다. The physical properties of the first instance C01 may vary due to the local layout effect by the adjacently disposed second instance C02. The local layout effect may vary depending on the shape of the front-end-layer patterns of the second instance C02. For example, the shape of the first and second active regions AR1 and AR2 disposed in the second instance C02 and the shape of the plurality of fins FN1 and FN2 included in the first and second active regions AR1 and AR2, , FN2). The change of the local layout effect according to the shape of the patterns of the front-end-layer will be described later with reference to FIG. 6 and the like.

본 개시의 예시적 실시예에 따른 컴퓨팅 시스템(10)은 제2 인스턴스(C02)를 제1 인스턴스(C01)에 인접하게 배치할 때, 제2 인스턴스(C02)의 프론트-엔드-레이어의 패턴들의 형상에 따라, 제1 인스턴스(C01)에 발생하는 로컬 레이아웃 효과를 고려하여 제2 인스턴스(C02)를 배치할 수 있다. 따라서, 컴퓨팅 시스템(10)은 제1 인스턴스(C01)에 발생하는 로컬 레이아웃의 효과를 집적 회로의 성능에 유리하도록 이용할 수 있다.The computing system 10 in accordance with the exemplary embodiment of the present disclosure is able to determine that when placing the second instance C02 adjacent to the first instance C01 the patterns of the front-end-layer patterns of the second instance C02 The second instance C02 can be arranged in consideration of the local layout effect generated in the first instance C01 according to the shape. Accordingly, the computing system 10 may utilize the effect of the local layout that occurs in the first instance C01 in favor of the performance of the integrated circuit.

도 3은 본 개시의 예시적 실시예에 따라 도 1의 프로그램(20)의 블록도를 나타낸다. 도 1을 참조하여 전술된 바와 같이, 프로그램(20)은 복수의 명령어들을 포함할 수 있고, 프로그램(20)에 포함된 복수의 명령어들은 CPU(11)로 하여금 본 개시의 예시적 실시예에 따른 집적 회로를 설계하는 동작을 수행하도록 할 수 있다. 도 3에 도시된, 프로그램(20)의 구성 요소들 전부가 도 1의 RAM(14)에 저장될 수도 있고, 구성요소들 중 적어도 일부가 도 1의 RAM(14)에 저장되고 나머지 일부가 도 1의 ROM(15) 또는 저장 장치(16)에 저장될 수도 있다.FIG. 3 shows a block diagram of program 20 of FIG. 1 in accordance with an exemplary embodiment of the present disclosure. As described above with reference to FIG. 1, program 20 may include a plurality of instructions, and the plurality of instructions contained in program 20 may cause CPU 11 to execute instructions, So that an operation of designing an integrated circuit can be performed. All of the components of the program 20 shown in Figure 3 may be stored in the RAM 14 of Figure 1 and at least some of the components are stored in the RAM 14 of Figure 1, 1 < / RTI >

도 3을 참조하면, 프로그램(20)은 구현 그룹(100)을 포함할 수 있고, 구현 그룹(100)은 복수의 프로시저들(120, 140)을 포함할 수 있다. 프로시저(procedure)는 특정 태스크를 수행하기 위한 일련의 명령어들을 지칭할 수 있다. 프로시저는 함수(function), 루틴(routine), 서브루틴(subroutine), 서브프로그램(subprogram) 등으로도 지칭될 수 있다. 프로시저들 각각은 외부로부터 제공된 데이터(예를 들어, D010) 또는 다른 프로시저가 생성한 데이터를 처리할 수 있다. 본 명세서에서, 도 1의 CPU(11)가 프로시저(예를 들어, 120 또는 140)를 실행함으로써 동작을 수행하는 것은, 프로시저(예를 들어, 120 또는 140)가 상기 동작을 수행하는 것으로도 표현될 수 있다.3, the program 20 may include an implementation group 100, and the implementation group 100 may include a plurality of procedures 120, 140. A procedure may refer to a set of instructions for performing a particular task. A procedure may also be referred to as a function, a routine, a subroutine, a subprogram, or the like. Each of the procedures may process externally provided data (e.g., D010) or data generated by another procedure. In this specification, the CPU 11 of FIG. 1 performs an operation by executing a procedure (for example, 120 or 140) by performing a procedure (for example, 120 or 140) Can also be expressed.

셀 라이브러리(D310), 설계 규칙(D320) 및 LLE 데이터(D330)는 저장 매체(30)에 저장될 수 있고, 예를 들어 저장 매체(30)는 도 1의 저장 장치(16)일 수 있다. 셀 라이브러리(D310)는 복수의 표준 셀들의 물리적 특성에 관한 정보, 예를 들어 기능 정보, 타이밍 정보, 레이아웃 정보, 전력 정보 중 적어도 하나를 포함할 수 있다. 일 실시예에서, 셀 라이브러리(D310)는 동일한 기능을 수행하나 프론트-엔드-레이어의 액티브 영역 패턴이 서로 상이한 표준 셀들에 대한 정보를 포함할 수 있다. 일 실시예에서, 셀 라이브러리(D310)는 동일한 기능을 수행하나 프론트-엔드-레이어의 액티브 영역 패턴이 서로 대칭인 관계를 갖는 표준 셀들에 대한 정보를 포함할 수 있다. 또한, 셀 라이브러리(D310)는 동일한 기능을 수행하나 프론트-엔드-레이어의 액티브 영역 패턴이 서로 상이한 표준 셀들에 대한 정보도 포함할 수 있다. The cell library D310, the design rule D320 and the LLE data D330 may be stored in the storage medium 30, for example the storage medium 30 may be the storage device 16 of Fig. The cell library D310 may include at least one of information on physical characteristics of a plurality of standard cells, for example, function information, timing information, layout information, and power information. In one embodiment, the cell library D310 may include information about standard cells that perform the same function but whose active area patterns of the front-end-layer are different from each other. In one embodiment, the cell library D310 may include information about standard cells that perform the same function, but whose active area patterns in the front-end-layer are symmetric to each other. In addition, the cell library D310 may include information on standard cells that perform the same function but have different active area patterns of the front-end-layer.

설계 규칙(D320)은 집적 회로가 반도체 공정에 의해서 제조되기 위하여 및/또는 집적 회로의 성능 저하를 방지하기 위하여 집적 회로의 레이아웃이 준수해야 할 규칙들을 포함할 수 있다. Design rule D320 may include rules that an integrated circuit must conform to in order for the integrated circuit to be fabricated by a semiconductor process and / or to prevent degradation of the performance of the integrated circuit.

LLE 데이터(D330)는 셀 라이브러리(D310)에 저장된 표준 셀들의 프론트-엔드-레이어에 형성된 패턴들에 대한 정보를 포함할 수 있다. 일 실시예에서, 동일한 로컬 레이아웃 효과를 발생시키는 프론트-엔드-레이어의 패턴들의 정보가 하나의 컨텍스트 그룹으로 분류될 수 있고, LLE 데이터(D330)는 복수의 컨텍스트 그룹들에 대한 정보를 포함할 수 있다. 예를 들어, LLE 데이터(D330)의 컨텍스트 그룹은 인접하게 배치되는 표준 셀의 지연 시간을 감소시키도록 로컬 레이아웃 효과를 발생시키는 표준 셀들의 프론트-엔드-레이어의 패턴들에 대한 정보를 포함할 수 있다. 또는, LLE 데이터(D330)의 컨텍스트 그룹은 인접하게 배치되는 표준 셀의 전력 소모를 감소시키도록 로컬 레이아웃 효과를 발생시키는 표준 셀들의 프론트-엔드-레이어의 패턴들에 대한 정보를 포함할 수 있다. 일 실시예에서, 컨텍스트 그룹은 타겟 표준 셀에 인접한 경계면에서의 액티브 영역의 형상(예를 들어, 액티브 핀이 개수 등)에 대한 정보를 포함할 수 있다. The LLE data D330 may include information on patterns formed in the front-end-layer of the standard cells stored in the cell library D310. In one embodiment, the information of the front-end-layer patterns that produce the same local layout effect can be categorized into a single context group, and the LLE data D330 can include information about a plurality of context groups have. For example, the context group of the LLE data D330 may contain information about the front-end-layer patterns of standard cells that produce a local layout effect to reduce the delay time of a contiguous standard cell have. Alternatively, the context group of LLE data D330 may include information about the front-end-layer patterns of standard cells that produce a local layout effect to reduce the power consumption of the neighboring standard cells. In one embodiment, the context group may include information about the shape (e.g., the number of active pins) of the active area at the interface adjacent to the target standard cell.

구현 그룹(100)은 저장 매체(30)에 저장된 데이터(D310, D320, D330)를 참조할 수 있고, 입력 데이터(D010)로부터 레이아웃 데이터(D100)를 생성할 수 있다. 입력 데이터(D010)는 집적 회로를 정의하는 데이터로서, 예를 들어 표준 셀들의 인스턴스들 및 그 인스턴스들의 전기적 연결 관계들에 관한 정보를 포함하는 네트리스트(netlist)를 포함할 수 있다. 또한, 입력 데이터(D010)는 집적 회로의 요건(requirement)에 관한 정보, 예를 들어 타이밍 조건, 전력 조건, 면적 조건 등을 더 포함할 수도 있다. 구현 그룹(100)은 저장 매체(30)에 저장된 데이터(D310, D320, D330)를 참조함으로써, 집적 회로를 정의하는 입력 데이터(D010)로부터 집적 회로의 레이아웃의 물리적 정보를 포함하는 레이아웃 데이터(D100)를 생성할 수 있다. The implementation group 100 may refer to the data D310, D320 and D330 stored in the storage medium 30 and may generate the layout data D100 from the input data D010. The input data D010 may be data defining an integrated circuit, for example a netlist containing information about the instances of standard cells and the electrical connections of those instances. Further, the input data D010 may further include information on the requirements of the integrated circuit, for example, a timing condition, a power condition, an area condition, and the like. The implementation group 100 references the data D310, D320, and D330 stored in the storage medium 30 to generate layout data D100 including the physical information of the layout of the integrated circuit from the input data D010 defining the integrated circuit Can be generated.

일 실시예에서, 구현 그룹(100)은 저장 매체(30)에 저장된 데이터(D310, D320, D330)를 참조함으로써, 입력 데이터(D010)에 포함된 집적 회로 요건에 대응되는 컨택스트 그룹을 참조하여, 인스턴스들이 배치된 레이아웃 데이터(D100)를 생성할 수 있다. 따라서, 타겟 표준 셀의 제1 인스턴스에 인접하도록 배치되는 제2 인스턴스의 물리적 특성(프론트-엔드-레이어)이 결정될 수 있고, 그에 따른 레이아웃 데이터(D100)를 생성할 수 있다. 예를 들어, 구현 그룹(100)은 제1 인스턴스와 인접한 경계면에서 제2 인스턴스의 액티브 영역의 형상이 변하도록 제2 인스턴스의 액티브 영역에 포함된 복수의 핀들의 개수를 결정할 수 있다.In one embodiment, the implementation group 100 refers to the data group D310, D320, D330 stored in the storage medium 30, thereby referring to the context group corresponding to the integrated circuit requirements contained in the input data D010 , The layout data D100 in which the instances are arranged can be generated. Thus, the physical characteristics (front-end-layer) of the second instance disposed adjacent to the first instance of the target standard cell can be determined and the layout data D100 accordingly generated. For example, the implementation group 100 may determine the number of the plurality of fins included in the active region of the second instance so that the shape of the active region of the second instance changes at the interface adjacent to the first instance.

구현 그룹(100)의 배치기(120)는 셀 라이브러리(D310)를 참조하여 입력 데이터(D010)에서 정의된 인스턴스들을 배치할 수 있다. 배치기(120)는 셀 라이브러리(D310)를 참조함으로써 입력 데이터(D010)에서 정의된 인스턴스들의 레이아웃을 획득할 수 있고, 입력 데이터(D010)에 포함된 집적 회로의 요건에 관한 정보 및 설계 규칙(D320)에 기초하여 인스턴스들(즉, 인스턴스들의 레이아웃들)을 배치할 수 있다. The deployer 120 of the implementation group 100 can refer to the cell library D310 and arrange the instances defined in the input data D010. The deployer 120 can obtain the layout of the instances defined in the input data D010 by referring to the cell library D310 and can obtain information about the requirements of the integrated circuit included in the input data D010 and the design rule D320 (I. E., Layouts of instances) based on the < / RTI >

배치기(120)는 제1 인스턴스를 배치하고, 제1 인스턴스가 배치되지 아니한 영역에, 제1 인스턴스와 인접하도록 제2 인스턴스을 배치할 수 있다. 제1 인스턴스에 적절한 로컬 레이아웃 효과를 발생시키기 위해, 배치기(120)는 LLE 데이터(D330) 및 설계 규칙(D320)을 참조하여, LLE 데이터(D330)에 포함된 컨텍스트 그룹에 대한 정보를 기초로, 제1 인스턴스의 컨텍스트 그룹에 대응되는 프론트-엔드-레이어 패턴의 형상을 갖는 제2 인스턴스를 배치할 수 있다. The deployer 120 may deploy the first instance and place the second instance in an area where the first instance is not located, such that the second instance is adjacent to the first instance. The deployer 120 refers to the LLE data D330 and the design rule D320 to generate an appropriate local layout effect for the first instance based on the information about the context group included in the LLE data D330, A second instance having a shape of a front-end-layer pattern corresponding to a context group of the first instance may be arranged.

다만, 본 개시에 따른 일 실시예는 배치기(120)가 제1 인스턴스 및 제2 인스턴스를 순차적으로 배치하는 것에 한정되지는 않는다. 배치기(120)는 제1 인스턴스 및 제2 인스턴스를 함께 배치할 수 있다. 배치기(120)는 LLE 데이터(D330)및 설계 규칙(D320)을 참조하여, LLE 데이터(D330)에 포함된 컨텍스트 그룹에 대한 정보를 반영하여, 제2 인스턴스를 포함하는 인스턴스들을 재배치할 수도 있다. 도 7 및 도 8의 설명에서 후술하겠다. However, one embodiment according to the present disclosure is not limited to deploying device 120 sequentially arranging the first instance and the second instance. The deployer 120 may deploy the first instance and the second instance together. The deployer 120 may refer to the LLE data D330 and the design rule D320 and reflect the information about the context group included in the LLE data D330 to relocate the instances including the second instance. Will be described later in the description of FIG. 7 and FIG.

라우터(140)는 배치기(120)에 의해서 배치된 인스턴스들을 전기적으로 연결하는 상호연결들을 생성할 수 있다. 예를 들면, 라우터(140)는 라우팅 리소스, 즉 복수의 배선층들 및 비아들을 사용하여, 배선층에 형성된 패턴 및/또는 비아를 포함하는 상호 연결을 생성할 수 있다. 라우터(140)는 입력 데이터(D010)에 정의된 인스턴스들의 연결 관계에 관한 정보 및 설계 규칙(D320)에 기초하여 상호 연결들을 생성할 수 있다. 또한, 라우터(140)는 입력 데이터(D010)에 포함된 집적 회로의 요건에 관한 정보에 기초하여 상호 연결들을 생성할 수 있다.Router 140 may create interconnections that electrically connect instances disposed by deployer 120. For example, the router 140 may use a routing resource, i. E., A plurality of interconnect layers and vias, to create an interconnect that includes patterns and / or vias formed in the interconnect layer. The router 140 can generate the interconnections based on the design rule D320 and information about the connection relationship of the instances defined in the input data D010. In addition, the router 140 may generate interconnections based on information regarding the requirements of the integrated circuit included in the input data D010.

도 4는 본 개시의 예시적 실시예에 따라 집적 회로를 설계하는 방법을 나타내는 순서도이다. 구체적으로, 도 4는 로컬 레이아웃 효과를 고려하여 집적 회로의 레이아웃을 생성하는 방법을 나타내고, 도 4에 도시된 방법은 도 3의 구현 그룹(100)에 의해서 수행될 수 있다. 4 is a flow diagram illustrating a method of designing an integrated circuit in accordance with an exemplary embodiment of the present disclosure. Specifically, FIG. 4 shows a method of generating the layout of an integrated circuit in consideration of the local layout effect, and the method shown in FIG. 4 may be performed by the implementation group 100 of FIG.

도 4를 참조하면, 타겟 표준 셀의 제1 인스턴스가 배치되는 동작이 수행될 수 있다(S110). 제1 인스턴스는 입력 데이터(D010, 도 3)에 의해 정의될 수 있고, 설계 규칙(D320, 도 3)을 고려하여 배치될 수 있다. Referring to FIG. 4, an operation in which a first instance of a target standard cell is disposed may be performed (S110). The first instance may be defined by input data (D010, FIG. 3) and may be placed in consideration of design rule (D320, FIG. 3).

타겟 표준 셀의 특성을 고려하여, LLE 데이터(D330)에 포함된 복수의 컨텍스트 그룹들 중에서 제1 인스턴스에 대응되는 적어도 하나의 컨텍스트 그룹이 선택될 수 있다(S120). 각각의 컨텍스트 그룹들은 인접한 인스턴스에 동일한 로컬 레이아웃 효과를 발생시키는 프론트-엔드-레이어 패턴에 대한 컨텍스트들을 포함할 수 있다. 따라서, 제1 인스턴스의 지연 시간이 단축되는 것이 중요한지, 제1 인스턴스의 전력 소비를 감소시키는 것이 중요한지에 따라 컨텍스트 그룹이 선택될 수 있다. In consideration of the characteristics of the target standard cell, at least one context group corresponding to the first instance among the plurality of context groups included in the LLE data D330 may be selected (S120). Each of the context groups may include contexts for the front-end-layer pattern that produce the same local layout effect on adjacent instances. Therefore, the context group can be selected depending on whether it is important to shorten the delay time of the first instance or to reduce the power consumption of the first instance.

선택된 컨텍스트 그룹을 기초로, 제1 인스턴스와 인접한 경계면에서 형성되는 프론트-엔드-레이어 패턴의 형상이 결정될 수 있고, 상기 프론트-엔드-레이어 패턴을 포함하는 제2 인스턴스가 제1 인스턴스에 인접하게 배치될 수 있다(S130). 제2 인스턴스는 표준 셀의 인스턴스로서, 설계 규칙(D320, 도 3)을 준수하도록 배치될 수 있다. The shape of the front-end-layer pattern formed at the interface adjacent to the first instance may be determined based on the selected context group, and the second instance including the front-end-layer pattern may be placed adjacent to the first instance (S130). The second instance is an instance of a standard cell and can be arranged to comply with design rules (D320, FIG. 3).

제1 인스턴스 및 제2 인스턴스의 커넥션들을 라우팅하는 동작이 수행될 수 있다(S140). 예를 들면, 제1 인스턴스 및 제2 인스턴스를 연결하는 상호 연결들이 생성될 수 있고, 제1 인스턴스 및 제2 인스턴스의 배치에 관한 정보 및 상호 연결들에 관한 물리적 정보를 포함하는 레이아웃 데이터(D100, 도 3)가 생성될 수 있다.Routing connections of the first instance and the second instance may be performed (S140). For example, interconnections may be created that connect the first instance and the second instance, and layout data D100, D100, and D100, including physical information about interconnections and information about the placement of the first and second instances, 3) may be generated.

본 개시의 일 실시예에 따른 집적 회로를 설계하는 방법은 제1 인스턴스에 작용할 로컬 레이아웃 효과를 미리 고려하여 제2 인스턴스를 배치하므로 집적 회로의 성능을 향상시킬 수 있다.The method of designing an integrated circuit according to an embodiment of the present disclosure can improve the performance of the integrated circuit by arranging the second instance in advance considering the local layout effect to be applied to the first instance.

도 5은 타겟 표준 셀에 발생되는 로컬 레이아웃 효과를 설명하기 위한 그래프이다. 5 is a graph for explaining the local layout effect generated in the target standard cell.

도 2b 및 도 5를 참조하면, 제2 인스턴스(C02)의 액티브 영역들(AR1, AR2)의 형상에 따른 제1 인스턴스(C01)의 드레인 포화 전류(Idsat)의 변화를 알 수 있다. 제2 인스턴스(C02)는 타겟 표준 셀의 제1 인스턴스(C01)에 인접하게 배치될 수 있다. Referring to FIG. 2B and FIG. 5, a change in the drain saturation current Idsat of the first instance C01 according to the shape of the active regions AR1 and AR2 of the second instance C02 can be known. The second instance C02 may be disposed adjacent to the first instance C01 of the target standard cell.

제2 인스턴스(C02)의 액티브 영역들(AR1, AR2)은 액티브 영역들(AR1, AR2)에 포함된 핀의 수가 감소하면서 액티브 영역들(AR1, AR2)의 형상이 변할 수 있다. 액티브 영역들(AR1, AR2)의 형상이 변하는 지점에서 액티브 영역들(AR1, AR2)은 ‘L’자 형상을 가질 수 있다. 예를 들어, 액티브 영역들(AR1, AR2)의 ‘L’자 형상은 액티브 영역들(AR1, AR2)에 포함된 핀의 개수가 3개에서 2개로 감소될 때, 형성될 수 있다.The active regions AR1 and AR2 of the second instance C02 may change shapes of the active regions AR1 and AR2 while the number of the pins included in the active regions AR1 and AR2 decreases. The active regions AR1 and AR2 may have an L shape at a point where the shapes of the active regions AR1 and AR2 change. For example, the 'L' shape of the active areas AR1 and AR2 may be formed when the number of pins included in the active areas AR1 and AR2 is reduced from three to two.

도 6의 (a)를 참조하면, N형의 finFET의 경우에, 제1 인스턴스(C01)의 중심으로부터 제2 인스턴스(C02)의 제1 액티브 영역(AR1) 또는 제2 액티브 영역(AR2)의 ‘L’자 형상까지의 거리(D)가 멀어질수록 드레인 포화 전류(Idsat)의 값이 감소할 수 있다. 반면, 도 6의 (b)를 참조하면, P형의 finFET의 경우에, 제1 인스턴스(C01)의 중심으로부터 제2 인스턴스(C02)의 제1 액티브 영역(AR1) 또는 제2 액티브 영역(AR2)의 ‘L’자 형상까지의 거리(D)가 멀어질수록 드레인 포화 전류(Idsat)의 값이 증가할 수 있다.Referring to FIG. 6A, in the case of the N-type finFET, the first active region AR1 of the second instance C02 or the second active region AR2 of the second instance C02 from the center of the first instance C01 The value of the drain saturation current Idsat may decrease as the distance D to the 'L' shape is further away. 6 (b), in the case of the P-type finFET, the first active region AR1 or the second active region AR2 of the second instance C02 from the center of the first instance C01 , The value of the drain saturation current Idsat may increase as the distance D to the shape of the 'L'

제1 인스턴스(C01)가 타이밍 크리티컬 패스에 포함되는 경우에는, N형의 finFET이 형성되는 액티브 영역(예를 들어, 제2 액티브 영역(AR2))이 ‘L’자 형상을 갖는 레이아웃을 가지는 제2 인스턴스(C02)가 제1 인스턴스(C01)에 인접하도록 배치될 수 있다. 이 때, ‘L’자 형상이 제1 인스턴스(C01)와 가깝게 배치될수록 지연 시간이 감소될 수 있다. When the first instance C01 is included in the timing critical path, the active region (for example, the second active region AR2) in which the N-type finFET is formed has a layout having an L shape 2 instances C02 may be disposed adjacent to the first instance C01. At this time, the delay time can be reduced as the 'L' shape is disposed closer to the first instance C01.

일 실시예에서, 저장 매체(30, 도 3)에 저장된 LLE 데이터(D330)에는 N형의 finFET이 형성되는 액티브 영역(예를 들어, 제2 액티브 영역(AR2))의 형상에 대한 정보 및 제1 인스턴스(C01)의 중심으로부터 제2 액티브 영역(AR2)의 ‘L’자 형상까지의 거리(D)에 대한 정보가 하나의 컨텍스트 그룹으로 저장될 수 있다. In one embodiment, the LLE data D330 stored in the storage medium 30 (FIG. 3) includes information on the shape of the active area (for example, the second active area AR2) in which the N-type finFET is formed, Information about the distance D from the center of the first active area AR2 to the 'L' shape of the second active area AR2 may be stored in one context group.

반면, 제1 인스턴스(C01)가 타이밍 크리티컬 패스에 포함되지 않는 경우에는, 제1 인스턴스(C01)의 전력 소모를 감소시키기 위하여, P형의 finFET이 형성되는 액티브 영역(예를 들어, 제1 액티브 영역(AR1))이 ‘L’자 형상을 갖는 레이아웃을 가지는 제2 인스턴스(C02)가 제1 인스턴스(C01)에 인접하도록 배치될 수 있다. 이 때, ‘L’자 형상이 제1 인스턴스(C01)와 가깝게 배치될 수록 소모 전력이 감소될 수 있다. On the other hand, in the case where the first instance C01 is not included in the timing critical path, in order to reduce the power consumption of the first instance C01, the active region in which the P-type finFET is formed (for example, The second instance C02 having the layout in which the region AR1 has the L shape is adjacent to the first instance C01. At this time, as the 'L' shape is disposed closer to the first instance C01, the consumed power may be reduced.

일 실시예에서, LLE 데이터(D330, 도 3)에는 P형의 finFET이 형성되는 액티브 영역(예를 들어, 제1 액티브 영역(AR1))의 형상에 대한 정보 및 제1 인스턴스(C01)의 중심으로부터 제1 액티브 영역(AR1)의 ‘L’자 형상까지의 거리(D)에 대한 정보가 하나의 컨텍스트 그룹으로 저장될 수 있다. In one embodiment, the LLE data (D330, Figure 3) includes information about the shape of the active area (e.g., the first active area AR1) where the P-type finFET is formed and the center of the first instance C01 The information on the distance D from the first active area AR1 to the 'L' shape of the first active area AR1 can be stored in one context group.

도 6은 본 개시의 예시적 실시예에 따른 집적 회로(5_1)의 개략적인 레이아웃의 일부를 나타낸 도면으로서, 집적 회로(5_1)에 포함된 제1 인스턴스(C01) 및 제2 인스턴스(C02_1)의 프론트-엔드-레이어에 형성된 패턴들을 설명하기 위한 도면이다. 6 is a diagram showing a part of the schematic layout of the integrated circuit 5_1 according to the exemplary embodiment of the present disclosure. The first instance C01 and the second instance C02_1 included in the integrated circuit 5_1 FIG. 8 is a view for explaining patterns formed on the front-end-layer; FIG.

도 4 및 도 6을 참조하면, 집적 회로(5_1)의 레이아웃에는 제1 인스턴스(C01)가 배치될 수 있다. 일 실시예에서, 제1 인스턴스(C01)는 타이밍 크리티컬 패스에 포함될 수 있다. 제1 인스턴스(C01) 주변에 배치되는 인스턴스들에 의한 로컬 레이아웃 효과를 고려하여, LLE 데이터(D330, 도 3)에 포함된 복수의 컨텍스트 그룹들 중 지연 시간이 상대적으로 감소되는 컨텍스트 그룹을 선택할 수 있다(S120). 다만, 이에 한정되는 것은 아니며, 복수의 컨택스트 그룹들 중에서, 상기 제1 인스턴스에 발생시키고자 하는 다른 로컬 레이아웃 효과에 대응되는 상기 제1 인스턴스의 컨택스트 그룹을 선택할 수도 있다. 선택된 컨텍스트 그룹은 N형의 finFET이 형성되는 액티브 영역(예를 들어, 제2 액티브 영역(AR2_1))이 ‘L’자 형상을 갖도록 하는 액티브 영역의 형상에 대한 정보 및 ‘L’자 형상이 형성되는 위치에 대한 정보를 포함할 수 있다. Referring to FIGS. 4 and 6, the first instance C01 may be disposed in the layout of the integrated circuit 5_1. In one embodiment, the first instance C01 may be included in the timing critical pass. The context group in which the delay time is relatively reduced among the plurality of context groups included in the LLE data D330 (FIG. 3) can be selected in consideration of the local layout effect by the instances disposed around the first instance C01 (S120). However, the present invention is not limited to this. Of the plurality of context groups, the context group of the first instance corresponding to another local layout effect to be generated in the first instance may be selected. The selected context group includes information on the shape of the active region in which the active region (for example, the second active region AR2_1) in which the N-type finFET is formed has the L shape, and the L shape And information about the location where it is located.

따라서, 제1 인스턴스(C01)의 제2 액티브 영역(AR2_1)은 3개의 핀들을 포함할 수 있고, 제2 액티브 영역(AR2_1)에 2개의 핀들을 포함하는 제2 인스턴스(C02_1)가 제1 인스턴스(C01)와 인접하게 배치될 수 있다(S130). 이에 따라 제2 액티브 영역(AR2_1) 의‘L’자 형상이 제1 인스턴스(C01) 및 제2 인스턴스(C02_1)의 경계면에서 형성될 수 있으므로, 제1 인스턴스(C01)의 중심으로부터 제2 액티브 영역(AR2_1)의 ‘L’자 형상까지의 거리(D)가 가까워져, 로컬 레이아웃 효과로 인한 지연 시간이 감소될 수 있다. Accordingly, the second active area AR2_1 of the first instance C01 may include three pins, and the second instance C02_1 including the two pins in the second active area AR2_1 may be the first active area AR2_1, (C01) (S130). Since the 'L' shape of the second active area AR2_1 can be formed at the interface between the first instance C01 and the second instance C02_1, the second active area AR2_1 can be formed from the center of the first instance C01, The distance D to the shape of the letter 'L' of the second element AR2_1 approaches, and the delay time due to the local layout effect can be reduced.

다만, 본 개시에 따른 일 실시예는, 제2 액티브 영역(AR2_1)의‘L’자 형상이 제1 인스턴스(C01) 및 제2 인스턴스(C02_1)의 경계면에서 형성되도록, 제2 인스턴스(C02_1)가 배치되는 것에 한정되는 것은 아니며, 제2 인스턴스(C02_1)의 제2 액티브 영역(AR2_1) 내부에 ‘L’자 형상이 형성될 수도 있다. 또한, 제1 인스턴스(C01)의 제2 액티브 영역(AR2_1)은 3개 이상의 핀들을 포함할 수도 있고, 제2 인스턴스(C02_1)의 제2 액티브 영역(AR2_1)도 2개개 이상의 핀들을 포함할 수 있다. It should be noted that one embodiment according to the present disclosure may include a second instance C02_1 such that the 'L' shape of the second active area AR2_1 is formed at the interface between the first instance C01 and the second instance C02_1. And an L shape may be formed in the second active area AR2_1 of the second instance C02_1. The second active area AR2_1 of the first instance C01 may include three or more pins and the second active area AR2_1 of the second instance C02_1 may include two or more pins. have.

본 도면에서는, 지연 시간을 감소시키 위한 제2 인스턴스(C02_1)의 프론트-엔드-레이어 패턴의 형상에 대해서만 설명하였으나, 이에 한정되는 것은 아니다. 타겟 표준 셀의 전력 소모를 감소시키기 위해서, LLE 데이터(D330, 도 3)에 포함된 복수의 컨텍스트 그룹들 중 전력 소모가 상대적으로 감소되는 컨텍스트 그룹을 선택할 수도 있다. 선택된 컨텍스트 그룹은 P형의 finFET이 형성되는 액티브 영역(예를 들어, 제1 액티브 영역(AR1))이 ‘L’자 형상을 갖도록 하는 액티브 영역의 형상에 대한 정보 및 ‘L’자 형상이 형성되는 위치에 대한 정보를 포함할 수 있다. 따라서, 제1 인스턴스(C01)의 제1 액티브 영역(AR1)에는 3개의 핀들이 배치될 수 있고, 제1 액티브 영역(AR1)에 2개의 핀들을 포함하는 제2 인스턴스(C02_1)가 제1 인스턴스(C01)와 인접하게 배치될 수도 있다.In this figure, only the shape of the front-end-layer pattern of the second instance C02_1 for reducing the delay time is described, but the present invention is not limited thereto. In order to reduce the power consumption of the target standard cell, the context group in which the power consumption is relatively reduced among the plurality of context groups included in the LLE data (D330, Fig. 3) may be selected. The selected context group includes information on the shape of the active region in which the active region (for example, the first active region AR1) in which the P-type finFET is formed has the L shape, and the L shape And information about the location where it is located. Thus, three pins may be disposed in the first active area AR1 of the first instance C01, and a second instance C02_1 including two pins in the first active area AR1 may be arranged in the first active area AR1, (C01).

도 7은 본 개시의 예시적 실시예에 따라 집적 회로를 설계하는 방법을 나타내는 순서도이다. 도 7에 도시된 방법은 도 3의 구현 그룹(100)에 의해서 수행될 수 있다. 도 4의 순서도와 비교할 때, 도 7에서는 제2 인스턴스를 제1 인스턴스에 인접하게 배치한 후, 제1 인스턴스에 발생되는 로컬 레이아웃 효과를 고려하여, 제1 인스턴스의 주변 영역에 인스턴스를 재배치하는 데에 특징이 있다. 7 is a flow diagram illustrating a method of designing an integrated circuit in accordance with an exemplary embodiment of the present disclosure. The method shown in FIG. 7 may be performed by the implementation group 100 of FIG. In comparison with the flowchart of Fig. 4, in Fig. 7, after arranging the second instance adjacent to the first instance, the local layout effect generated in the first instance is taken into consideration and the instance is relocated to the peripheral region of the first instance .

도 7을 참조하면, 제1 인스턴스가 배치되고, 제1 인스턴스에 인접하도록 제2 인스턴스가 배치되는 동작이 수행될 수 있다(S210). 제1 인스턴스 및 제2 인스턴스는 입력 데이터(D010, 도 3)에 의해 정의될 수 있고, 설계 규칙(D320, 도 3)을 고려하여 배치될 수 있다. Referring to FIG. 7, an operation in which a first instance is disposed and a second instance is disposed adjacent to the first instance may be performed (S210). The first instance and the second instance may be defined by input data (D010, FIG. 3) and may be placed in consideration of design rule (D320, FIG. 3).

입력 데이터(D010)를 참고하여, 제1 인스턴스가 타이밍 크리티컬 패스에 포함되는지 판단될 수 있다(S220). 제1 인스턴스가 타이밍 크리티컬 패스에 포함되는 경우에는, LLE 데이터(D330, 도 3)에 포함된 복수의 컨텍스트 그룹들 중에서 제1 인스턴스에 대응되는 적어도 하나의 컨텍스트 그룹이 선택될 수 있다(S230). 예를 들어, 선택된 컨텍스트 그룹은 지연 시간을 감소시킬 수 있는 프론트-엔드-레이어 패턴의 형상에 대한 정보를 포함할 수 있다. 따라서, 선택된 컨텍스트 그룹을 기초로, 제1 인스턴스와 인접하는 인스턴스의 프론트-엔드-레이어 패턴의 형상이 결정될 수 있다. Referring to the input data D010, it can be determined whether the first instance is included in the timing critical path (S220). When the first instance is included in the timing critical path, at least one context group corresponding to the first instance among the plurality of context groups included in the LLE data (D330, FIG. 3) may be selected (S230). For example, the selected context group may include information about the shape of the front-end-layer pattern that may reduce latency. Thus, based on the selected context group, the shape of the front-end-layer pattern of the instance adjacent to the first instance can be determined.

제2 인스턴스의 프론트-엔드-레이어 패턴이 선택된 컨텍스트 그룹과 일치하는지 판단될 수 있다(S240). 제2 인스턴스의 프론트-엔드-레이어 패턴이 선택된 컨텍스트 그룹과 일치하는지 여부는 제1 인스턴스와 제2 인스턴스가 서로 인접하는 경계면의 프론트-엔드-레이어 패턴을 기준으로 판단될 수 있다. It can be determined if the front-end-layer pattern of the second instance matches the selected context group (S240). Whether the front-end-layer pattern of the second instance matches the selected context group can be determined based on the front-end-layer pattern of the interface where the first instance and the second instance are adjacent to each other.

제2 인스턴스가 선택된 컨텍스트 그룹과 상이한 프론트-엔드-레이어 패턴의 형상을 포함하는 경우에는 제2 인스턴스는 탈락될 수 있다. 프론트-엔드-레이어 패턴의 형상이 선택된 컨텍스트 그룹과 일치하는, 제3 인스턴스가 제1 인스턴스에 인접하게 배치될 수 있다(S250). If the second instance includes a shape of the front-end-layer pattern different from the selected context group, the second instance may be omitted. A third instance, where the shape of the front-end-layer pattern matches the selected context group, may be placed adjacent to the first instance (S250).

제3 인스턴스는 제2 인스턴스와 기능은 동일하나, 프론트-엔드-레이어 패턴의 형상이 상이할 수 있다. 특히, 제1 인스턴스와의 인접면에서의 프론트-엔드-레이어 패턴의 형상이 상이할 수 있다. 예를 들어, 제2 인스턴스는 도 2b의 제2 인스턴스(C02)와 동일한 프론트-엔드-레이어 패턴을 포함할 수 있고, 제3 인스턴스는 도 7의 제2 인스턴스(C02_1)와 동일한 프론트-엔드-레이어 패턴을 포함할 수 있다. The third instance has the same function as the second instance, but the shape of the front-end-layer pattern may be different. In particular, the shape of the front-end-layer pattern on the side adjacent to the first instance may be different. For example, the second instance may include the same front-end-layer pattern as the second instance C02 of FIG. 2B, and the third instance may include the same front-end-layer pattern as the second instance C02_1 of FIG. You can include layer patterns.

제3 인스턴스가 제1 인스턴스에 인접하게 배치되면, 제1 인스턴스 및 제3 인스턴스의 커넥션들을 라우팅하는 동작이 수행될 수 있다(S260). 예를 들어, 제1 인스턴스 및 제3 인스턴스를 연결하는 상호 연결들이 생성될 수 있고, 제1 인스턴스 및 제3 인스턴스의 배치에 관한 정보 및 상호 연결들에 관한 물리적 정보를 포함하는 레이아웃 데이터(D100, 도 3)가 생성될 수 있다.If the third instance is disposed adjacent to the first instance, operations of routing connections of the first instance and the third instance may be performed (S260). For example, interconnections connecting the first instance and the third instance may be created, and layout data D100, D100 including physical information on interconnections and information on the placement of the first and third instances, 3) may be generated.

제1 인스턴스가 타이밍 크리티컬 패스에 포함되지 않거나, 제2 인스턴스의 프론트-엔드-레이어 패턴이 선택된 컨텍스트 그룹과 일치하는 경우에는, 제1 인스턴스 및 제2 인스턴스의 커넥션들을 라우팅하는 동작이 수행될 수 있다(S270). 예를 들면, 제1 인스턴스 및 제2 인스턴스를 연결하는 상호 연결들이 생성될 수 있고, 제1 인스턴스 및 제2 인스턴스의 배치에 관한 정보 및 상호 연결들에 관한 물리적 정보를 포함하는 레이아웃 데이터(D100, 도 3)가 생성될 수 있다.If the first instance is not included in the timing critical path, or if the front-end-layer pattern of the second instance matches the selected context group, an operation of routing connections of the first instance and the second instance may be performed (S270). For example, interconnections may be created that connect the first instance and the second instance, and layout data D100, D100, and D100, including physical information about interconnections and information about the placement of the first and second instances, 3) may be generated.

본 도면에서는, 제1 인스턴스가 타이밍 크리티컬 패스에 포함되는지 판단하는 단계에 대해서만 설명하고 있으나, 이에 한정되는 것은 아니며, 제1 인스턴스가 전력 소비의 제한이 있는 경우에는, LLE 데이터(D330, 도 3)에 포함된 복수의 컨텍스트 그룹들 중에서 전력 소모 감소 효과에 대응되는 적어도 하나의 컨텍스트 그룹이 선택될 수도 있다. 선택된 컨텍스트 그룹을 기초로, 제2 인스턴스와 기능은 동일하나 프론트-엔드-레이어 패턴의 형상이 상이한 제3 인스턴스가 제1 인스턴스에 인접하게 배치될 수도 있다.However, the present invention is not limited to this. The LLE data D330 (FIG. 3) may be used when the first instance has a limitation on the power consumption. However, At least one context group corresponding to the power consumption reduction effect among the plurality of context groups included in the context group may be selected. Based on the selected context group, a third instance having the same function as the second instance but different in the shape of the front-end-layer pattern may be disposed adjacent to the first instance.

본 개시의 일 실시예에 따른 집적 회로를 설계하는 방법은 제1 인스턴스에 작용할 로컬 레이아웃 효과를 미리 고려하여 제2 인스턴스를 배치하므로 집적 회로의 성능을 향상시킬 수 있다.The method of designing an integrated circuit according to an embodiment of the present disclosure can improve the performance of the integrated circuit by arranging the second instance in advance considering the local layout effect to be applied to the first instance.

도 8은 본 개시의 예시적 실시예에 따라 집적 회로를 설계하는 방법을 나타내는 순서도이다. 도 8에 도시된 방법은 도 3의 구현 그룹(100)에 의해서 수행될 수 있다. 도 7의 순서도와 비교할 때, 도 8에서는 제2 인스턴스를 로컬 레이아웃 효과를 고려하여, 재배치하는 데에 특징이 있다. 도 8의 순서도에서 도 7의 S210, S220, S230, S240, S270단계가 동일하게 수행될 수 있고, 도 8은 S240단계부터 이후에 수행되는 단계들을 나타낼 수 있다. 8 is a flow diagram illustrating a method of designing an integrated circuit in accordance with an exemplary embodiment of the present disclosure. The method shown in FIG. 8 may be performed by the implementation group 100 of FIG. In comparison with the flowchart in Fig. 7, Fig. 8 is characterized in that the second instance is relocated in consideration of the local layout effect. In the flowchart of FIG. 8, steps S210, S220, S230, S240, and S270 of FIG. 7 may be performed in the same manner, and FIG. 8 may represent steps performed after step S240.

도 8을 참조하면, 제2 인스턴스의 프론트-엔드-레이어 패턴이 선택된 컨텍스트 그룹과 일치하는지 판단될 수 있다(S240). 프론트-엔드-레이어 패턴이 선택된 컨텍스트 그룹과 일치하는지 여부는 제1 인스턴스와 제2 인스턴스가 서로 인접하는 경계면의 프론트-엔드-레이어 패턴을 기준으로 판단될 수 있다. Referring to FIG. 8, it can be determined whether the front-end-layer pattern of the second instance matches the selected context group (S240). Whether or not the front-end-layer pattern matches the selected context group can be determined based on the front-end-layer pattern of the interface where the first instance and the second instance are adjacent to each other.

제2 인스턴스의 프론트-엔드-레이어 패턴이 선택된 컨텍스트 그룹과 일치하지는 않는 경우에는, 제2 인스턴스의 프론트-엔드-레이어 패턴의 대칭 구조가 컨텍스트 그룹과 일치하는지 판단될 수 있다(S245). 예를 들어, 제1 인스턴스와 인접한 경계면에서의 제2 인스턴스의 프론트-엔드-레이어 패턴이, 선택된 컨텍스트 그룹과 일치하지 않는 경우에는, 제1 인스턴스와 인접한 면과 반대 방향의 면에서의 제2 인스턴스의 프론트-엔드-레이어 패턴이 선택된 컨텍스트 그룹과 일치하는지 판단될 수 있다. If the front-end-layer pattern of the second instance does not match the selected context group, it can be determined whether the symmetric structure of the front-end-layer pattern of the second instance matches the context group (S245). For example, if the front-end-layer pattern of the second instance at the interface adjacent to the first instance does not match the selected context group, the second instance in the face opposite to the face adjacent to the first instance It can be determined whether the front-end-layer pattern of the content group matches the selected context group.

제2 인스턴스의 프론트-엔드-레이어 패턴의 대칭 구조가 컨텍스트 그룹과 일치하는 경우에는, 제2 인스턴스는 대칭 변환되어 재배치될 수 있다(S235). 예를 들어, 제1 인스턴스 및 제2 인스턴스가 서로 제1 방향으로 인접하게 배치될 때, 제2 인스턴스는 제1 방향과 수직한 방향의 축을 기준으로 대칭 변환된 후 재배치될 수 있다. 이후에 제1 인스턴스 및 재배치된 제2 인스턴스의 커넥션들을 라우팅하는 동작이 수행될 수 있다(S265). If the symmetric structure of the front-end-layer pattern of the second instance matches the context group, the second instance may be symmetrically transformed and relocated (S235). For example, when the first instance and the second instance are disposed adjacent to each other in the first direction, the second instance can be rearranged after being symmetrically transformed with respect to an axis perpendicular to the first direction. Thereafter, an operation of routing connections of the first instance and the relocated second instance may be performed (S265).

제2 인스턴스의 프론트-엔드-레이어 패턴의 대칭 구조가 선택된 컨텍스트 그룹과 일치하지 않는 경우에는, 제2 인스턴스는 탈락되고, 제2 인스턴스와 기능은 동일하나, 프론트-엔드-레이어 패턴의 형상이 상이한 제3 인스턴스가 제1 인스턴스에 인접하게 배치될 수 있다(S250). 제3 인스턴스의 프론트-엔드-레이어 패턴은 선택된 컨텍스트 그룹과 일치할 수 있다. 이후에, 제1 인스턴스 및 제3 인스턴스의 커넥션들을 라우팅하는 동작이 수행될 수 있다(S260). If the symmetric structure of the front-end-layer pattern of the second instance does not match the selected context group, the second instance is dropped, the function is the same as the second instance, but the shape of the front- A third instance may be placed adjacent to the first instance (S250). The front-end-layer pattern of the third instance may match the selected context group. Thereafter, an operation of routing connections of the first instance and the third instance may be performed (S260).

도 9a 및 도 9b는 본 개시의 예시적 실시예에 따른 집적 회로(5_2, 5_2')의 개략적인 레이아웃의 일부를 나타낸 도면으로서, 집적 회로(5_1)에 포함된 제1 인스턴스(C01) 및 제2 인스턴스(C02_2, C02_2')의 프론트-엔드-레이어에 형성된 패턴들을 설명하기 위한 도면이다.9A and 9B are diagrams showing a part of the schematic layout of the integrated circuits 5_2 and 5_2 'according to the exemplary embodiment of the present disclosure. The first instance C01 included in the integrated circuit 5_1, 2-instance (C02_2, C02_2 ').

도 8 및 도 9a를 참조하면, 집적 회로(5_2)의 레이아웃에는 제1 인스턴스(C01)가 배치될 수 있다. 일 실시예에서, 제1 인스턴스는 타이밍 크리티컬 패스에 포함될 수 있다. 제1 인스턴스(C01) 주변에 배치되는 인스턴스들에 의한 로컬 레이아웃 효과를 고려하여, LLE 데이터(D330, 도 3)에 포함된 복수의 컨텍스트 그룹들 중 지연 시간이 상대적으로 감소되는 컨텍스트 그룹을 선택할 수 있다. 선택된 컨텍스트 그룹은 N형의 finFET이 형성되는 액티브 영역(예를 들어, 제2 액티브 영역(AR2_2))이 ‘L’자 형상을 갖도록 하는 액티브 영역의 형상에 대한 정보 및 ‘L’자 형상이 형성되는 위치에 대한 정보를 포함할 수 있다. Referring to Figs. 8 and 9A, a first instance C01 may be disposed in the layout of the integrated circuit 5_2. In one embodiment, the first instance may be included in the timing critical path. The context group in which the delay time is relatively reduced among the plurality of context groups included in the LLE data D330 (FIG. 3) can be selected in consideration of the local layout effect by the instances disposed around the first instance C01 have. The selected context group includes information on the shape of the active area in which the active area (for example, the second active area AR2_2) in which the N-type finFET is formed has the L shape, and the L shape And information about the location where it is located.

제2 인스턴스(C02_2)는 제1 인스턴스(C01)에 인접하는 경계면에서 제2 액티브 영역(AR2_2)에 3개의 핀들을 포함하고 있으므로, 경계면에서 제2 액티브 영역(AR2_2)을 ‘L’자 형상으로 만들지 못한다. 따라서, 제2 인스턴스(C02_2)는 선택된 컨택스트 그룹과 일치하지 않을 수 있다. 다만, 제2 인스턴스(C02_2)는 제1 인스턴스(C01)에 인접하는 경계면의 반대면에서 제2 액티브 영역(AR2_2)에 2개의 핀들을 포함하고 있으므로, 상기 반대면이 제1 인스턴스(C01)와 인접하도록 배치되면, 선택된 컨택스트 그룹과 일치할 수 있다. Since the second instance C02_2 includes three fins in the second active area AR2_2 at the interface adjacent to the first instance C01, the second active area AR2_2 is formed in the L shape at the interface I can not make it. Thus, the second instance C02_2 may not coincide with the selected context group. However, since the second instance C02_2 includes two fins in the second active area AR2_2 on the opposite side of the interface adjacent to the first instance C01, the opposite side is connected to the first instance C01, If positioned contiguously, they may coincide with the selected context group.

도 8, 도 9a 및 도 9b를 참조하면, 제2 인스턴스(C02_2)는 대칭 변환된 후 재배치될 수 있다(S235). 예를 들어, 제1 인스턴스(C01)와 제2 인스턴스(C02_2)는 X방향으로 인접하게 배치될 수 있고, 제2 인스턴스(C02_2)는 Y방향과 평행한 축을 중심으로 대칭 변환되어 재배치될 수 있다. 재배치된 제2 인스턴스(C02_2')의 프론트-엔드-레이어 패턴은 제1 인스턴스(C01)에 대응되는 선택된 컨텍스트 그룹과 일치할 수 있다.8, 9A and 9B, the second instance C02_2 may be symmetrically transformed and relocated (S235). For example, the first instance C01 and the second instance C02_2 may be disposed adjacent to each other in the X direction, and the second instance C02_2 may be symmetrically transformed and relocated around an axis parallel to the Y direction . The front-end-layer pattern of the relocated second instance C02_2 'may coincide with the selected context group corresponding to the first instance C01.

제1 인스턴스(C01) 및 재배치된 제2 인스턴스(C02_2')의 인접면에서, 제1 인스턴스(C01)의 제2 액티브 영역(AR2_2')에는 3개의 핀들이 배치될 수 있고, 재배치된 제2 인스턴스(C02_2')의 제2 액티브 영역(AR2_2')에는 2개의 핀들이 배치될 수 있다. 이에 따라 제2 액티브 영역(AR2_2') 의‘L’자 형상이 제1 인스턴스(C01) 및 제2 인스턴스(C02_2')의 경계면에서 형성되므로, 제1 인스턴스(C01)의 중심으로부터 제2 액티브 영역(AR2_2')의 ‘L’자 형상까지의 거리가 가까워져, 로컬 레이아웃 효과로 인한 지연 시간이 감소될 수 있다. On the contiguous side of the first instance C01 and the relocated second instance C02_2 ', three fins may be placed in the second active area AR2_2' of the first instance C01, Two fins may be disposed in the second active area AR2_2 'of the instance C02_2'. Accordingly, since the 'L' shape of the second active area AR2_2 'is formed at the interface between the first instance C01 and the second instance C02_2', the second active area AR2_2 ' The distance to the shape of the letter 'L' of the second element AR2_2 'approaches, and the delay time due to the local layout effect can be reduced.

도 10은 본 개시의 예시적 실시예에 따라 도 1의 프로그램의 블록도를 나타낸다. 도 11는 본 개시의 예시적 실시예에 따라 집적 회로를 설계하는 방법을 나타내는 순서도이다. 도 10에서 도 3에서와 동일한 참조 부호는 동일 부재를 의미하며, 여기서는 설명의 간략화를 위하여 도 3와 중복되는 구성의 상세한 설명은 생략한다. Figure 10 shows a block diagram of the program of Figure 1 in accordance with an exemplary embodiment of the present disclosure. 11 is a flow diagram illustrating a method of designing an integrated circuit in accordance with an exemplary embodiment of the present disclosure. In FIG. 10, the same reference numerals as those in FIG. 3 denote the same members, and a detailed description of the components that are the same as those in FIG. 3 will be omitted for simplicity.

도 10 및 도 11을 참조하면, 프로그램(20a)은 구현 그룹(100) 및 분석 그룹(200)을 포함할 수 있고, 구현 그룹(100) 및 분석 그룹(200)은 복수의 프로시저들(120, 140, 220)을 각각 포함할 수 있다. 10 and 11, the program 20a may include an implementation group 100 and an analysis group 200, and the implementation group 100 and the analysis group 200 may include a plurality of procedures 120 , 140 and 220, respectively.

LLE 데이터(D330)는 로컬 레이아웃 효과에 의한 표준 셀의 물리적 특성 변동에 관한 정보를 포함할 수 있다. 예를 들어, LLE 데이터(D330)는 로컬 레이아웃 효과에 의한 표준 셀의 타이밍 조건 또는 전력 조건의 변동에 관한 정보를 포함할 수 있다. The LLE data D330 may include information on the physical property variation of the standard cell due to the local layout effect. For example, the LLE data D330 may include information about a timing condition or a variation of a power condition of a standard cell due to a local layout effect.

분석 그룹(200)은 저장 매체(30)에 저장된 데이터(D310, D320, D330)를 참조할 수 있고, 레이아웃 데이터(D100)로부터 결과 데이터(D200)를 생성할 수 있다. 레이아웃 데이터(D100)는 집적 회로의 레이아웃에 관한 물리적 정보를 포함할 수 있고, 예를 들면 GDSII 포맷을 가지는 데이터를 포함할 수 있다. 비록 도 11에서 분석 그룹(200)은 구현 그룹(100)에 의해서 생성된 레이아웃 데이터(D100)를 엑세스하는 것으로 도시되었으나, 레이아웃 데이터(D100)는 분석 그룹(200)이 수행되는 컴퓨팅 시스템과 상이한 컴퓨팅 시스템에 의해서 생성되어 분석 그룹(200)에 제공될 수도 있다. 분석 그룹(200)은 레이아웃 데이터(D100)에 기초하여 집적 회로의 성능을 분석할 수 있고, 집적 회로의 성능에 관한 정보를 포함하는 결과 데이터(D200)를 생성할 수 있다. The analysis group 200 can refer to the data D310, D320 and D330 stored in the storage medium 30 and generate the result data D200 from the layout data D100. The layout data D100 may include physical information related to the layout of the integrated circuit, and may include data having a GDSII format, for example. Although the analysis group 200 in FIG. 11 is shown as accessing the layout data D100 generated by the implementation group 100, the layout data D100 may be different from the computing system in which the analysis group 200 is implemented, May be generated by the system and provided to the analysis group 200. The analysis group 200 can analyze the performance of the integrated circuit based on the layout data D100 and generate the result data D200 that includes information on the performance of the integrated circuit.

성능 분석기(220)는 레이아웃 데이터(D100)에 포함된 인스턴스의 물리적 특성에 기초하여 집적 회로의 성능을 분석함으로써 결과 데이터(D200)를 생성할 수 있다. 예를 들면, 성능 분석기(220)는, 집적 회로의 타이밍 특성, 전력 특성, 노이즈 특성 등을 분석할 수 있다. 또한, 성능 분석기(220)는 입력 데이터(D010)에 포함된 집적 회로의 요건에 관한 정보를 참조하여, 집적 회로의 성능이 요건을 충족하는지 여부를 판단한 결과를 포함하는 결과 데이터(D200)를 생성할 수도 있다. 따라서, 성능 분석기(220)는 제1 인스턴스(C01, 도 2a)의 물리적 특성을 산출(S310)할 수 있고, 이에 따라 제1 인스턴스(C01, 도 2a)에 인접하게 배치된 제2 인스턴스(C02, 도 2a)로 인한 로컬 레이아웃 효과가 목적에 맞게 발생하였는지를 검증(S320)할 수 있다. The performance analyzer 220 can generate the result data D200 by analyzing the performance of the integrated circuit based on the physical characteristics of the instance included in the layout data D100. For example, the performance analyzer 220 can analyze the timing characteristics, power characteristics, noise characteristics, and the like of the integrated circuit. Further, the performance analyzer 220 refers to the information on the requirements of the integrated circuit included in the input data D010, and generates result data D200 including the result of determining whether the performance of the integrated circuit satisfies the requirement You may. Thus, the performance analyzer 220 can calculate (S310) the physical characteristics of the first instance (C01, FIG. 2A) and thereby determine the second instance (C02 (FIG. 2A) can be verified (S320) whether or not the local layout effect has occurred according to the purpose.

구현 그룹(100)은, 레이아웃 데이터(D100)에 기초하여 분석 그룹(200)이 생성한, 집적 회로의 성능에 관한 정보를 포함하는 결과 데이터(D200)를 엑세스할 수 있다. 구현 그룹(100)은 결과 데이터(D200)에 기초하여, 레이아웃 데이터(D100)에 따른 집적 회로의 성능이 입력 데이터(D010)에 포함된 집적 회로의 요건을 충족하는지 여부에 따라 집적 회로의 레이아웃을 변경할 수 있고, 변경된 레이아웃을 나타내는 새로운 레이아웃 데이터(D100)를 생성할 수 있다. 결과 데이터(D200)는 로컬 레이아웃 효과에 따른 집적 회로의 성능 변동을 포함할 수 있고, 구현 그룹(100)은 결과 데이터(D200)에 기초하여 최적으로 설계된 집적 회로의 레이아웃을 나타내는 새로운 레이아웃 데이터(D100)를 생성할 수 있다. The implementation group 100 can access the result data D200 including information on the performance of the integrated circuit generated by the analysis group 200 based on the layout data D100. The implementation group 100 determines the layout of the integrated circuit according to whether or not the performance of the integrated circuit according to the layout data D100 satisfies the requirements of the integrated circuit included in the input data D010, New layout data D100 indicating the changed layout can be generated. The result data D200 may include variations in the performance of the integrated circuit according to the local layout effect and the implementation group 100 may include new layout data D100 indicating the layout of the optimally designed integrated circuit based on the result data D200 Can be generated.

일 실시예에서, 타겟 표준 셀의 제1 인스턴스(C01, 도 2a)에 인접하게 배치된 제2 인스턴스(C02, 도 2a)로 인한 로컬 레이아웃 효과가 목적에 맞게 발생하지 않은 경우에는, 구현 그룹(100)은 레이아웃 데이터(D100)에 기초하여, 제2 인스턴스(C02, 도 2a)를 제3 인스턴스로 바꾸어 배치하거나, 제2 인스턴스를 제1 인스턴스와 인접한 면과 상기 인접한 면의 반대면을 서로 대칭시켜 재배치할 수 있다(S320). 상기 S320단계는 도 9의 S260단계 또는 S265단계와 유사하게 수행될 수 있다.In one embodiment, if the local layout effect due to the second instance (C02, Figure 2a) placed adjacent to the first instance of the target standard cell (C01, Figure 2a) does not occur for the purpose, 100 may be arranged to replace the second instance (C02, FIG. 2A) with the third instance based on the layout data D100, or to dispose the second instance on the opposite side of the face adjacent to the first instance, (S320). The step S320 may be performed similarly to the step S260 or S265 of FIG.

도 12는 본 개시의 일 실시예에 따른 반도체 장치의 제조 방법을 나타내는 흐름도이다.12 is a flowchart showing a method of manufacturing a semiconductor device according to an embodiment of the present disclosure.

도 12를 참조하면, 반도체 장치의 제조 방법은 집적 회로의 설계 및 집적 회로의 제조 공정으로 구분될 수 있다. 집적 회로의 설계는 단계 S10 및 S20을 포함하고, 집적 회로의 제조 공정은 단계 S30 및 S40을 포함하고, 레이아웃 데이터를 기초로 집적 회로에 따른 반도체 장치를 제조하는 단계로서, 반도체 공정 모듈에서 수행될 수 있다. Referring to FIG. 12, a manufacturing method of a semiconductor device can be classified into a design of an integrated circuit and a manufacturing process of an integrated circuit. The design of the integrated circuit includes steps S10 and S20, the manufacturing process of the integrated circuit includes steps S30 and S40, and the step of manufacturing the semiconductor device according to the integrated circuit based on the layout data, .

단계 S10에서, 물리-인식(physical-aware) 합성 동작을 수행한다. 예를 들어, 단계 S10은 합성 툴을 이용하여 프로세서에 의해 수행될 수 있다. "합성"은 집적 회로에 대한 입력 데이터를, 로직 게이트들로 이루어진 하드웨어 형태로 변환함으로써 넷리스트(netlist)를 생성하는 동작으로서, "로직(logic) 합성"이라고 지칭할 수 있다. 입력 데이터는 집적 회로의 동작(behavior)에 대한 추상적 형태, 예컨대, RTL(Register Transfer Level)에서 정의된 데이터일 수 있다. 넷리스트는 표준 셀 라이브러리를 이용하여 RTL 코드로부터 생성될 수 있고, 게이트 레벨의 넷리스트일 수 있다. In step S10, a physical-aware compositing operation is performed. For example, step S10 may be performed by a processor using a synthesis tool. "Synthesis" may be referred to as "logic synthesis" as an operation to generate a netlist by converting input data for an integrated circuit into a hardware form of logic gates. The input data may be an abstract form for the behavior of the integrated circuit, for example, data defined in Register Transfer Level (RTL). The netlist may be generated from the RTL code using a standard cell library and may be a netlist at the gate level.

단계 S20에서, 배치 및 라우팅 동작을 수행한다. 예를 들어, 단계 S20은 P&R 툴을 이용하여 프로세서에 의해 수행될 수 있다. 구체적으로, 넷리스트에 따라 집적 회로를 정의하는 표준 셀들을 배치하고, 이어서, 배치된 표준 셀들에 포함된 넷들을 라우팅함으로써, 집적 회로에 대한 레이아웃 데이터를 생성할 수 있다. In step S20, placement and routing operations are performed. For example, step S20 may be performed by the processor using the P & R tool. Specifically, layout data for an integrated circuit can be generated by placing standard cells defining the integrated circuit according to the netlist, and then routing the nets included in the standard cells disposed.

본 개시의 일 실시예에 따른 반도체 장치의 제조 방법은 도 1 내지 도 11을 참조하여 상술된 집적 회로의 설계 방법을 수행함으로써 반도체 장치를 제조할 수 있다. 구체적으로, 단계 S20은 도 5의 S110 내지 S140단계를 포함하거나, 도 8의 S210 내지 S270를 포함할 수 있고, 또는 도 9의 S240 내지 S265 단계를 포함할 수 있고, 중복된 설명은 생략하기로 한다. A method of manufacturing a semiconductor device according to an embodiment of the present disclosure can manufacture a semiconductor device by performing the method of designing the integrated circuit described above with reference to Figs. Specifically, step S20 may include steps S110 to S140 of FIG. 5, steps S210 to S270 of FIG. 8, or steps S240 to S265 of FIG. 9, and redundant description is omitted do.

단계 S30에서, 레이아웃 데이터를 기초로 마스크를 생성한다. 구체적으로, 먼저 레이아웃 데이터를 기초로 OPC(Optical Proximity Correction)를 수행할 수 있는데, OPC는 광 근접 효과에 따른 오차를 반영하여 레이아웃을 변경하는 공정을 지칭한다. 이어서, OPC 수행 결과에 따라 변경된 레이아웃에 따라 마스크를 제조할 수 있다. 이때, OPC를 반영한 레이아웃, 예컨대, OPC가 반영된 GDS(Graphic Data System)II를 이용하여 마스크를 제조할 수 있다.In step S30, a mask is generated based on the layout data. Specifically, first, an optical proximity correction (OPC) can be performed based on layout data. The OPC refers to a process of changing a layout reflecting errors due to optical proximity effects. Then, the mask can be manufactured according to the changed layout according to the result of the OPC. At this time, a mask reflecting the OPC, for example, a GDS (Graphic Data System) II in which OPC is reflected can be used.

단계 S40에서, 마스크를 이용하여 집적 회로가 구현된 반도체 장치를 제조한다. 구체적으로, 복수의 마스크들을 이용하여 웨이퍼 등과 같은 반도체 기판 상에 다양한 반도체 공정을 진행하여 집적 회로가 구현된 반도체 장치를 형성한다. 예를 들어, 마스크를 이용하는 공정은 리소그라피 공정을 통한 패터닝 공정을 의미할 수 있다. 이러한 패터닝 공정을 통해 반도체 기판이나 물질층 상에 원하는 패턴을 형성할 수 있다. 한편, 반도체 공정은 증착 공정, 식각 공정, 이온 공정, 세정 공정 등을 포함할 수 있다. 또한, 반도체 공정은 반도체 소자를 PCB 상에 실장하고 밀봉재로 밀봉하는 패키징 공정을 포함할 수도 있고, 반도체 소자나 패키지에 대해 테스트를 하는 테스트 공정을 포함할 수도 있다.In step S40, a semiconductor device in which an integrated circuit is implemented is manufactured using a mask. Specifically, various semiconductor processes are performed on a semiconductor substrate such as a wafer using a plurality of masks to form a semiconductor device in which an integrated circuit is implemented. For example, a process using a mask may refer to a patterning process through a lithography process. Through this patterning process, a desired pattern can be formed on a semiconductor substrate or a material layer. Meanwhile, the semiconductor process may include a deposition process, an etching process, an ion process, a cleaning process, and the like. In addition, the semiconductor process may include a packaging process for mounting the semiconductor device on the PCB and sealing it with a sealing material, and may include a test process for testing the semiconductor device or package.

이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, exemplary embodiments have been disclosed in the drawings and specification. Although the embodiments have been described herein with reference to specific terms, it should be understood that they have been used only for the purpose of describing the technical idea of the present disclosure and not for limiting the scope of the present disclosure as defined in the claims . Therefore, those skilled in the art will appreciate that various modifications and equivalent embodiments are possible without departing from the scope of the present invention. Accordingly, the true scope of protection of the present disclosure should be determined by the technical idea of the appended claims.

Claims (10)

표준 셀들의 인스턴스들을 포함하는 집적 회로를 제조하는 방법으로서,
제1 인스턴스를 배치하는 단계; 및
상기 제1 인스턴스의 컨텍스트 그룹과 일치하는 프론트-엔드-레이어(front-end-layer) 패턴을 갖는 제2 인스턴스를 상기 제1 인스턴스에 인접하게 배치하는 단계; 를 포함하고,
상기 컨텍스트 그룹은, 상기 제1 인스턴스에 동일한 로컬 레이아웃 효과(local layout effect)를 발생시키고 상기 제1 인스턴스에 인접하게 배치되는, 인스턴스들의 프론트-엔드-레이어 패턴에 대한 정보를 포함하는 것을 특징으로 하는 집적 회로를 제조하는 방법.
CLAIMS What is claimed is: 1. A method of fabricating an integrated circuit comprising instances of standard cells,
Placing a first instance; And
Placing a second instance having a front-end-layer pattern coinciding with a context group of the first instance adjacent to the first instance; Lt; / RTI >
Wherein the context group includes information about a front-end-layer pattern of instances, which generates a local layout effect in the first instance and is disposed adjacent to the first instance. A method for fabricating an integrated circuit.
제1 항에 있어서,
상기 컨텍스트 그룹은 상기 제1 인스턴스의 지연 시간이 감소되는 로컬 레이아웃 효과를 발생시키는 프론트-엔드-레이어의 패턴에 대한 정보를 포함하고,
상기 제1 인스턴스 및 상기 제2 인스턴스는 N형 FinFET이 형성되는 액티브 영역을 포함하고,
상기 제1 인스턴스와 상기 제2 인스턴스가 인접한 면에서 상기 제1 인스턴스의 액티브 영역에 포함된 핀의 개수는 상기 제2 인스턴스의 액티브 영역에 포함된 핀의 개수보다 많은 것을 특징으로 하는 집적 회로를 제조하는 방법.
The method according to claim 1,
Wherein the context group includes information on a pattern of a front-end-layer generating a local layout effect in which a delay time of the first instance is reduced,
Wherein the first instance and the second instance comprise an active region in which an N-type FinFET is formed,
Wherein the number of fins included in the active area of the first instance on the side where the first instance and the second instance are adjacent to each other is greater than the number of fins included in the active area of the second instance. How to.
제1 항에 있어서,
상기 컨텍스트 그룹은 상기 제1 인스턴스의 전력 소비가 감소되는 로컬 레이아웃 효과를 발생시키는 프론트-엔드-레이어의 패턴에 대한 정보를 포함하고,
상기 제1 인스턴스는 상기 제2 인스턴스는 P형 FinFET이 형성되는 액티브 영역을 포함하고,
상기 제1 인스턴스와 상기 제2 인스턴스가 인접한 면에서 상기 제1 인스턴스의 액티브 영역에 포함된 핀의 개수는 상기 제2 인스턴스의 액티브 영역에 포함된 핀의 개수보다 많은 것을 특징으로 하는 집적 회로를 제조하는 방법.
The method according to claim 1,
Wherein the context group includes information about a pattern of a front-end-layer generating a local layout effect in which power consumption of the first instance is reduced,
Wherein the first instance comprises an active region in which the second instance is formed with a P-type FinFET,
Wherein the number of fins included in the active area of the first instance on the side where the first instance and the second instance are adjacent to each other is greater than the number of fins included in the active area of the second instance. How to.
제1 항에 있어서,
상기 컨텍스트 그룹은 상기 제1 인스턴스의 경계면에 형성되는 액티브 영역의 형상에 대한 정보를 포함하는 것을 특징으로 하는 집적 회로를 제조하는 방법.
The method according to claim 1,
Wherein the context group includes information about a shape of an active area formed at an interface of the first instance.
집적 회로를 포함하는 반도체 장치의 제조 방법에 있어서,
표준 셀의 인스턴스들을 포함하는 레이아웃 데이터를 생성하는 상기 집적 회로를 설계하는 단계; 및
상기 레이아웃 데이터를 기초로 상기 집적 회로를 제조하는 단계를 포함하고,
상기 집적 회로를 설계하는 단계는,
제1 인스턴스를 배치하고, 상기 제1 인스턴스에 제1 방향으로 인접하도록 제2 인스턴스를 배치하는 단계; 및
상기 제2 인스턴스의 프론트-엔드-레이어 패턴이 상기 제1 인스턴스의 컨텍스트 그룹과 일치하는지 판단하는 단계; 를 포함하고,
상기 컨텍스트 그룹은, 상기 제1 인스턴스에 동일한 로컬 레이아웃 효과를 발생시키고 상기 제1 인스턴스에 인접하게 배치되는, 인스턴스들의 프론트-엔드-레이어 패턴에 대한 정보를 포함하는 것을 특징으로 하는 방법.
A method of manufacturing a semiconductor device including an integrated circuit,
Designing the integrated circuit to generate layout data including instances of a standard cell; And
And fabricating the integrated circuit based on the layout data,
Wherein designing the integrated circuit comprises:
Placing a first instance and placing a second instance adjacent to the first instance in a first direction; And
Determining if a front-end-layer pattern of the second instance matches a context group of the first instance; Lt; / RTI >
Wherein the context group comprises information about a front-end-layer pattern of instances, which generates the same local layout effect on the first instance and is disposed adjacent to the first instance.
제5 항에 있어서,
상기 집적 회로를 설계하는 단계는,
상기 제2 인스턴스의 프론트-엔드-레이어 패턴과 제2 방향과 평행한 축을 중심으로 대칭인 패턴이 상기 컨텍스트 그룹과 일치하는지를 판단하는 단계를 더 포함하고,
상기 제2 방향은 상기 제1 방향과 서로 수직인 것을 특징으로 하는 방법.
6. The method of claim 5,
Wherein designing the integrated circuit comprises:
Further comprising determining whether a pattern symmetric about an axis parallel to the front-end-layer pattern of the second instance and the second direction matches the context group,
And wherein the second direction is perpendicular to the first direction.
제6 항에 있어서,
상기 제2 인스턴스의 프론트-엔드-레이어 패턴과 대칭인 패턴이 상기 컨텍스트 그룹과 일치하는 경우에,
상기 제2 인스턴스를 상기 제2 방향과 평행한 축을 중심으로 대칭 변환시켜 재배치하는 단계를 더 포함하는 것을 특징으로 하는 방법.
The method according to claim 6,
If a pattern symmetric to the front-end-layer pattern of the second instance matches the context group,
And rearranging the second instance by symmetrically transforming the second instance around an axis parallel to the second direction.
제5 항에 있어서,
상기 제2 인스턴스의 프론트-엔드-레이어 패턴이 상기 컨텍스트 그룹과 일치하지 않는 경우에,
상기 제2 인스턴스를 대신하여 제3 인스턴스를 배치하는 단계를 포함하고,
상기 제3 인스턴스는, 상기 제2 인스턴스와 동일한 기능을 수행하고, 프론트-엔드-레이어 패턴이 상기 컨텍스트 그룹과 일치하는 것을 특징으로 하는 방법.
6. The method of claim 5,
And if the front-end-layer pattern of the second instance does not match the context group,
And placing a third instance on behalf of the second instance,
Wherein the third instance performs the same function as the second instance and the front-end-layer pattern matches the context group.
표준 셀들의 인스턴스들을 포함하는 집적 회로를 제조하기 위한 컴퓨팅 시스템으로서,
프로시저들을 포함하는 정보를 저장하는 메모리; 및
상기 메모리에 엑세스 가능하고, 상기 프로시저들을 실행하는 프로세서를 포함하고,
상기 프로시저들은,
제1 인스턴스를 배치하고, 상기 제1 인스턴스의 컨텍스트 그룹과 액티브 영역의 형상이 서로 일치하는 제2 인스턴스를 배치하는 인스턴스 배치기; 및
상기 인스턴스들을 라우팅함으로써 집적 회로의 레이아웃 데이터를 생성하는 라우터;를 포함하고,
상기 컨텍스트 그룹은, 상기 제1 인스턴스에 동일한 로컬 레이아웃 효과를 발생시키고 상기 제1 인스턴스에 인접하게 배치되는, 인스턴스들의 액티브 영역 대한 정보를 포함하는 것을 특징으로 하는 컴퓨팅 시스템.
CLAIMS What is claimed is: 1. A computing system for manufacturing an integrated circuit comprising instances of standard cells,
A memory for storing information including procedures; And
A processor accessible to the memory and executing the procedures,
The procedures include:
An instance placement unit for arranging a first instance and arranging a second instance in which a shape of an active area and a context group of the first instance coincide with each other; And
And a router for generating layout data of the integrated circuit by routing the instances,
Wherein the context group comprises information about an active region of instances, wherein the context group generates the same local layout effect on the first instance and is disposed adjacent to the first instance.
제9 항에 있어서,
상기 프로시저들은,
상기 제2 인스턴스의 배치에 따른 상기 제1 인스턴스의 물리적 특성을 산출하고, 산출된 상기 물리적 특성을 기초로 목적에 맞는 로컬 레이아웃 효과가 발생하였는지 검증하는 성능 분석기를 더 포함하고,
목적에 맞는 로컬 레이아웃 효과가 발생하지 않은 경우에는,
상기 인스턴스 배치기는, 상기 제2 인스턴스를 대신하여 제3 인스턴스를 배치하고,
상기 제3 인스턴스는, 상기 제2 인스턴스와 동일한 기능을 수행하고, 상기 제1 인스턴스와 인접하는 면의 액티브 영역의 형상이 상기 제2 인스턴스와 서로 상이한 것을 특징으로 하는 컴퓨팅 시스템.
10. The method of claim 9,
The procedures include:
Further comprising a performance analyzer for calculating a physical property of the first instance according to the arrangement of the second instance and for verifying whether a local layout effect according to the purpose has occurred based on the calculated physical property,
If the local layout effect does not occur for the purpose,
The instance placeer arranges a third instance on behalf of the second instance,
Wherein the third instance performs the same function as the second instance and the shape of the active area adjacent to the first instance is different from the second instance.
KR1020170118835A 2017-01-26 2017-09-15 Method and system for manufacturing integrated circuit by considering local layout effect KR102434992B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US15/867,939 US10599130B2 (en) 2017-01-26 2018-01-11 Method and system for manufacturing an integrated circuit in consideration of a local layout effect
CN201810070832.9A CN108460184B (en) 2017-01-26 2018-01-24 Method and system for manufacturing integrated circuit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20170012967 2017-01-26
KR1020170012967 2017-01-26

Publications (2)

Publication Number Publication Date
KR20180088259A true KR20180088259A (en) 2018-08-03
KR102434992B1 KR102434992B1 (en) 2022-08-23

Family

ID=63250538

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170118835A KR102434992B1 (en) 2017-01-26 2017-09-15 Method and system for manufacturing integrated circuit by considering local layout effect

Country Status (1)

Country Link
KR (1) KR102434992B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7590968B1 (en) * 2006-03-01 2009-09-15 Tela Innovations, Inc. Methods for risk-informed chip layout generation
KR20160047380A (en) * 2014-10-22 2016-05-02 삼성전자주식회사 Integrated circuit and method of designing layout of the integrated circuit
US20160378888A1 (en) * 2015-06-24 2016-12-29 International Business Machines Corporation Modeling transistor performance considering non-uniform local layout effects

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7590968B1 (en) * 2006-03-01 2009-09-15 Tela Innovations, Inc. Methods for risk-informed chip layout generation
KR20160047380A (en) * 2014-10-22 2016-05-02 삼성전자주식회사 Integrated circuit and method of designing layout of the integrated circuit
US20160378888A1 (en) * 2015-06-24 2016-12-29 International Business Machines Corporation Modeling transistor performance considering non-uniform local layout effects

Also Published As

Publication number Publication date
KR102434992B1 (en) 2022-08-23

Similar Documents

Publication Publication Date Title
US10599130B2 (en) Method and system for manufacturing an integrated circuit in consideration of a local layout effect
US10902168B2 (en) Computer-implemented method and computing system for designing integrated circuit by considering timing delay
US10902173B2 (en) System for designing integrated circuit using extracted model parameter and method of manufacturing integrated circuit using the same
US10817640B2 (en) Integrated circuit including different types of cells, and method and system of designing the same
US10817637B2 (en) System and method of designing integrated circuit by considering local layout effect
US20230107940A1 (en) Layout context-based cell timing characterization
US11030383B2 (en) Integrated device and method of forming the same
US11699009B2 (en) Integrated circuit design method and system
JP2006301961A (en) Automatic floor planning technique for semiconductor integrated circuit
US11238207B2 (en) Method and system for fabricating integrated circuit with aid of programmable circuit synthesis
US11625524B2 (en) Integrated circuit and method of designing a layout thereof
US20150143317A1 (en) Determination Of Electromigration Features
KR102563927B1 (en) System and method for designing integrated circuit by considering local layout effect
KR20170094744A (en) Integrated circuit and computer-implemented method for manufacturing the same
KR102434992B1 (en) Method and system for manufacturing integrated circuit by considering local layout effect
US11328109B2 (en) Refining multi-bit flip flops mapping without explicit de-banking and re-banking
CN116569336A (en) Bit-gathering unit
CN109872990B (en) Semiconductor device and method for manufacturing the same
US20230237236A1 (en) Method of designing layout of semiconductor integrated circuit, method of designing and manufacturing semiconductor integrated circuit using the same, and design system performing same
US20230267261A1 (en) Design system, design method and method of manufacture of semiconductor device
US20210374321A1 (en) System and method for providing enhanced net pruning
TW202341000A (en) Cell libraries and computing systems

Legal Events

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