KR102335243B1 - 반도체 장치의 레이아웃 검증을 수행하는 컴퓨터 기반 시스템 및 그것의 레이아웃 검증 방법 - Google Patents

반도체 장치의 레이아웃 검증을 수행하는 컴퓨터 기반 시스템 및 그것의 레이아웃 검증 방법 Download PDF

Info

Publication number
KR102335243B1
KR102335243B1 KR1020150012154A KR20150012154A KR102335243B1 KR 102335243 B1 KR102335243 B1 KR 102335243B1 KR 1020150012154 A KR1020150012154 A KR 1020150012154A KR 20150012154 A KR20150012154 A KR 20150012154A KR 102335243 B1 KR102335243 B1 KR 102335243B1
Authority
KR
South Korea
Prior art keywords
layout
device code
code
active region
gate line
Prior art date
Application number
KR1020150012154A
Other languages
English (en)
Other versions
KR20160034164A (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 삼성전자주식회사
Priority to US14/843,491 priority Critical patent/US10095825B2/en
Publication of KR20160034164A publication Critical patent/KR20160034164A/ko
Application granted granted Critical
Publication of KR102335243B1 publication Critical patent/KR102335243B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/66Types of semiconductor device ; Multistep manufacturing processes therefor
    • H01L29/66007Multistep manufacturing processes
    • H01L29/66075Multistep manufacturing processes of devices having semiconductor bodies comprising group 14 or group 13/15 materials
    • H01L29/66227Multistep manufacturing processes of devices having semiconductor bodies comprising group 14 or group 13/15 materials the devices being controllable only by the electric current supplied or the electric potential applied, to an electrode which does not carry the current to be rectified, amplified or switched, e.g. three-terminal devices
    • H01L29/66409Unipolar field-effect transistors
    • H01L29/66477Unipolar field-effect transistors with an insulated gate, i.e. MISFET
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L22/00Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
    • H01L22/20Sequence of activities consisting of a plurality of measurements, corrections, marking or sorting steps
    • 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]
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/40Electrodes ; Multistep manufacturing processes therefor
    • H01L29/43Electrodes ; Multistep manufacturing processes therefor characterised by the materials of which they are formed
    • H01L29/49Metal-insulator-semiconductor electrodes, e.g. gates of MOSFET
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/04Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body
    • H01L27/06Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a non-repetitive configuration
    • H01L27/0611Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a non-repetitive configuration integrated circuits having a two-dimensional layout of components without a common active region
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/06Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions
    • H01L29/0603Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions characterised by particular constructional design considerations, e.g. for preventing surface leakage, for controlling electric field concentration or for internal isolations regions
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/40Electrodes ; Multistep manufacturing processes therefor
    • H01L29/41Electrodes ; Multistep manufacturing processes therefor characterised by their shape, relative sizes or dispositions
    • H01L29/423Electrodes ; Multistep manufacturing processes therefor characterised by their shape, relative sizes or dispositions not carrying the current to be rectified, amplified or switched
    • H01L29/42312Gate electrodes for field effect devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Ceramic Engineering (AREA)
  • Manufacturing & Machinery (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Metal-Oxide And Bipolar Metal-Oxide Semiconductor Integrated Circuits (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)

Abstract

본 발명의 실시 예에 따른 레이아웃 설계 및 검증 시스템에서의 핀 기반(Fin based)의 집적회로 레이아웃을 장치 코드로 추출하는 레이아웃 검증 방법은, 특정 집적회로 단위의 레이아웃을 레이아웃 설계 시스템이 수신하는 단계, 상기 레이아웃의 활성 영역, 게이트 라인들, 그리고 실리콘 핀들의 교차점의 수를 참조하여 게이트 라인 단위로 장치 코드를 추출하는 단계, 그리고 상기 게이트 라인들 각각의 순서에 따라 추출된 상기 장치 코드를 조합하는 단계를 포함한다.

Description

반도체 장치의 레이아웃 검증을 수행하는 컴퓨터 기반 시스템 및 그것의 레이아웃 검증 방법{COMPUTER BASED SYSTEM FOR VERIFYING LAYOUT OF SEMICONDUCTOR DEVICE AND LAYOUT VERIFY METHOD THEREOF}
본 발명은 반도체 장치에 관한 것으로, 좀 더 상세하게는 반도체 장치의 레이아웃 검증을 수행하는 컴퓨터 기반의 시스템 및 그것의 레이아웃 검증 방법에 관한 것이다.
최근, 스마트폰, 테이블릿 PC, 디지털 카메라, MP3 플레이어, PDA 등과 같은 모바일 기기의 이용이 폭발적으로 증가하고 있다. 이러한 모바일 기기에서도 멀티미디어의 구동 및 각종 데이터의 처리량이 증가하면서, 고속 프로세서의 채용이 확대되고 있다. 모바일 기기에는 다양한 응용 프로그램(Application program)들이 구동된다. 다양한 응용 프로그램들을 구동하기 위하여, 모바일 기기에는 워킹 메모리(예를 들면, DRAM), 비휘발성 메모리, 그리고 응용 프로세서(Application Processor: 이하, AP)와 같은 집적 회로(IC) 형태의 반도체 장치들이 사용된다.
상술한 반도체 장치를 생산하기 위해서는 스키매틱 회로(Schematic circuit)를 실리콘 웨이퍼에 구현하기 위한 레이아웃 설계 및 검증 과정이 수반된다. 레이아웃 엔지니어는 다양한 소프트웨어 툴을 구동하는 자동화된 레이아웃 설계 시스템을 통해서 스키매틱 회로의 레이아웃을 추출할 수 있다. 생성된 레이아웃의 검증을 위해서는 레이아웃에 대한 스키매틱 표현이 수반된다. 예를 들면, LVS(Layout Versus Schematic) 검증 툴은 이러한 방법을 사용한다. 하나의 소자에 대응하는 레이아웃을 표현하기 위해서는 다양한 파라미터들이 사용된다. 하지만, 이러한 파라미터들을 사용하여 소자를 표현하기 위해서는 과도하게 많은 정보가 수반된다. 따라서, 효율적인 레이아웃의 설계, 분석, 검증을 위해서는 소자, 셀, 또는 블록 단위의 레이아웃을 간략하게 표현하기 위한 파라미터 추출 방법이 절실한 실정이다.
본 발명은 상술한 기술적 문제점을 해결하기 위해 제안된 것으로, 본 발명의 목적은 소자를 표현하는 레이아웃 파라미터를 간략화할 수 있는 레이아웃 검증 방법 및 그것을 적용하는 레이아웃 검증 시스템을 제공하는데 있다.
본 발명의 실시 예에 따른 레이아웃 검증 시스템에서의 핀 기반(Fin based)의 집적회로 레이아웃을 장치 코드로 추출하는 레이아웃 검증 방법은, 특정 집적회로 단위의 레이아웃을 레이아웃 설계 시스템이 수신하는 단계, 상기 레이아웃의 활성 영역, 게이트 라인들, 그리고 실리콘 핀들의 교차점의 수를 참조하여 게이트 라인 단위로 장치 코드를 추출하는 단계, 그리고 상기 게이트 라인들 각각의 순서에 따라 추출된 상기 장치 코드를 조합하는 단계를 포함한다.
본 발명의 실시 예에 따른 레이아웃 설계 및 검증 시스템에서, 특정 집적회로 단위의 내부에 타깃 패턴과 동일한 패턴을 검출하는 패턴 매칭 방법은, 상기 타깃 패턴의 레이아웃을 수신하는 단계, 수신된 상기 타깃 패턴의 레이아웃에 포함되는 활성 영역, 게이트 라인들, 그리고 실리콘 핀들의 교차점의 수를 참조하여 타깃 패턴에 대응하는 타깃 코드를 추출하는 단계, 상기 특정 집적회로 단위에 대응하는 테스트 코드 내부에서 상기 타깃 코드를 순차적으로 시프트하면서 비교하는 단계, 그리고 상기 비교 결과에 따라 상기 타깃 코드와 동일한 코드들이 검출되는 위치 정보를 저장하는 단계를 포함한다.
본 발명의 실시 예에 따른 반도체 집적회로의 설계 및 검증을 수행하는 컴퓨터 기반 시스템은, 상기 반도체 집적회로의 레이아웃을 입력 및 출력하기 위한 입출력 장치, 상기 레이아웃의 활성 영역, 게이트 라인들, 그리고 실리콘 핀들의 교차점의 수를 참조하여 게이트 라인 단위로 장치 코드를 생성하거나, 상기 장치 코드를 상기 레이아웃으로 변환하는 레이아웃-코드 변환 알고리즘을 로드하는 워킹 메모리, 그리고 상기 입출력 장치로부터 제공되는 레이아웃 또는 장치 코드를 처리하기 위하여 상기 레이아웃-코드 변환 알고리즘을 실행하는 중앙 처리 장치를 포함한다.
본 발명의 실시 예에 따른 반도체 장치의 레이아웃 설계 시스템 및 그것의 레이아웃 설계 방법에 따르면, 복잡한 구조의 레아아웃을 간단한 코드 형태로 표현할 수 있다. 더불어, 어떠한 형태의 레이아웃이든지 파라미터와 레이아웃간의 변환이 자유롭다. 따라서, 본 발명의 레이아웃 설계 방법에 따라 생성된 코드를 사용하여 소자, 셀, 블록, 또는 칩의 설계, 분석, 검증을 효율적으로 수행할 수 있다.
도 1은 본 발명의 실시 예에 따른 레이아웃 검증 시스템(100)을 보여주는 블록도이다.
도 2는 본 발명의 레이아웃과 장치 코드간의 변환 형태를 간략히 보여주는 도면이다.
도 3은 본 발명의 실시 예에 따른 레이아웃을 장치 코드로 변환하는 방법을 보여주는 순서도이다.
도 4a, 도 4b, 그리고 도 4c는 LVC 알고리즘에 의한 장치 코드의 생성 방법을 활성 영역의 기하 구조에 따라 예시적으로 보여주는 도면들이다.
도 5는 본 발명의 실시 예에 따른 장치 코드를 레이아웃으로 변환하는 방법을 보여주는 순서도이다.
도 6은 장치 코드를 레이아웃으로 변환하는 예를 간략히 보여주는 도면이다.
도 7은 본 발명의 실시 예에 따른 확장된 레이아웃과 그것의 장치 코드 변환 방법을 보여주는 도면이다.
도 8a, 도 8b, 도 8c는 본 발명의 장치 코드의 생성 방법의 다른 예를 간략히 보여주는 도면들이다.
도 9는 본 발명의 실시 예에 따른 레이아웃 분석 방법을 간략히 보여주는 순서도이다.
도 10은 도 9의 분석 방법을 예시적으로 보여주는 도면이다.
도 11은 본 발명의 실시 예에 따른 패턴 매칭 방법을 보여주는 순서도이다.
도 12는 도 11의 패턴 매칭 방법을 시각적으로 보여주는 도면들이다.
도 13은 본 발명의 실시 예에 따른 테스트 패턴을 장치 코드로 생성하고, 생성된 테스트 패턴을 사용하여 테스트를 수행하는 방법을 보여주는 순서도이다.
도 14는 본 발명의 다른 실시 예에 따른 레이아웃 설계 시스템(800)을 보여주는 블록도이다.
도 15는 도 14의 장치 코드를 활용한 스키매틱 회로의 시뮬레이션 방법을 보여주는 순서도이다.
이하에서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 실시 예를 첨부된 도면을 참조하여 설명하기로 한다.
도 1은 본 발명의 실시 예에 따른 레이아웃 검증 시스템(100)을 보여주는 블록도이다. 도 1을 참조하면, 레이아웃 검증 시스템(100)은 CPU(110), 워킹 메모리(130), 입출력 장치(150), 저장 장치(170), 그리고 버스(190)를 포함할 수 있다. 여기서, 레이아웃 검증 시스템(100)은 본 발명의 레이아웃과 코드 파라미터간의 변환, 분석, 검증, 그리고 패턴 매칭 분석 등을 수행하기 위한 전용 장치로 제공될 수도 있지만, 다양한 시뮬레이션 툴이나 설계 툴들을 구동하기 위한 컴퓨터일 수도 있을 것이다.
CPU(110)는 레이아웃 검증 시스템(100)에서 수행될 소프트웨어(응용 프로그램, 운영 체제, 장치 드라이버들)를 실행한다. CPU(110)는 워킹 메모리(130)에 로드되는 운영 체제(OS, 미도시됨)를 실행할 것이다. CPU(110)는 운영 체제(OS) 기반에서 구동될 다양한 응용 프로그램들(Application Program)이나 설계 및 검증 툴들을 실행할 것이다. 예를 들면, CPU(110)는 워킹 메모리(130)에 로드된 LVC(Layout-to Code) 알고리즘(135)을 실행할 수 있을 것이다. LVC 알고리즘(135)을 구동함에 따라, CPU(110)는 소자나 셀 등의 레이아웃의 구조를 본 발명의 장치 코드(Device code)로 변환할 수 있을 것이다.
워킹 메모리(130)에는 운영 체제(OS)나 응용 프로그램들(Application Program)이 로드될 것이다. 레이아웃 검증 시스템(100)의 부팅시에 저장 장치(170)에 저장된 OS 이미지(미도시됨)가 부팅 시퀀스에 의거하여 워킹 메모리(130)로 로드될 것이다. 운영 체제(OS)에 의해서 레이아웃 검증 시스템(100)의 제반 입출력 동작들이 지원될 수 있다. 마찬가지로, 사용자의 의하여 선택되거나 기본적인 서비스 제공을 위해서 응용 프로그램들이 워킹 메모리(130)에 로드될 수 있다. 특히, 본 발명의 LVC 알고리즘(135)도 저장 장치(170)로부터 워킹 메모리(130)에 로드될 것이다. 도시되지 않았지만, 워킹 메모리(130)에는 스키매틱 회로를 설계 및 검증하기 위한 툴이나, 스키매틱 회로를 레이아웃으로 자동생성하는 레이아웃 설계 툴들이 더 포함될 수 있을 것이다.
워킹 메모리(130)는 SRAM(Static Random Access Memory)이나 DRAM(Dynamic Random Access Memory)과 같은 휘발성 메모리이거나, PRAM, MRAM, ReRAM, FRAM, NOR 플래시 메모리 등의 비휘발성 메모리일 수 있다.
LVC 알고리즘(135)은 스키매틱 회로의 검증후 생성된 레이아웃을 본 발명의 장치 코드(Device code)로 변환한다. 또한, LVC 알고리즘(135)은 장치 코드(Device code)를 레이아웃으로 변환할 수 있다. 장치 코드(Device code)에 기반하여 LVC 알고리즘(135)은 다양한 레이아웃 분석이나 검증, 테스트를 수행될 수 있을 것이다. 예를 들면, LVC 알고리즘(135)은 하나의 트랜지스터에 대응하는 파라미터를 단 몇비트의 코드로 변환할 수 있다. 즉, LVC 알고리즘(135)은 하나의 소자를 구성하는 액티브 형태, 핀(fin)의 수만을 사용하여 몇 비트의 코드로 변환할 수 있다. 기존의 소자를 표현하기 위한 파라미터(게이트의 폭, 게이트의 위치, 액티브의 폭이나 위치, 폭 등)와는 다르게 본 발명의 LVC 알고리즘(135)에 따르면 어떠한 형태의 소자라도 수비트의 장치 코드(Device code)로 표현될 수 있다.
더불어, 본 발명의 LVC 알고리즘(135)에 따르면 장치 코드(Device code)를 용이하게 레이아웃으로 변환할 수 있다. 소자뿐 아니라 소자들이 조합된 셀이나, 블록, 심지어 칩 단위에 이르기까지의 제반 레이아웃들이 LVC 알고리즘(135)에 의해서 장치 코드로 표현될 수 있다. LVC 알고리즘(135)의 구체적인 기능은 후술하는 도면들을 참조하여 상세히 설명될 것이다.
입출력 장치(150)는 사용자 인터페이스 장치들로부터의 사용자 입력 및 출력을 제어한다. 예를 들면, 입출력 장치(150)는 키보드, 마우스, 터치패드와 같은 입력 장치와 모니터 등의 출력 장치를 구비하여 스키매틱 검증이 완료된 레이아웃을 입력받을 수 있다. 또는, 장치 코드(Device code)가 입출력 장치(150)를 통해서 입력되어 레이아웃으로 변환될 수 있을 것이다. 그리고 입출력 장치(150)는 레이아웃 검증 시스템(100)의 레이아웃과 장치 코드 사이의 변환 과정, 소자나 셀 등의 분석 과정이나 처리 결과 등을 표시할 수 있다.
저장 장치(170)는 레이아웃 검증 시스템(100)의 저장 매체(Storage Medium)로서 제공된다. 저장 장치(170)는 응용 프로그램들(Application Program), 운영 체제 이미지(OS Image) 및 각종 데이터를 저장할 수 있다. 저장 장치(170)는 메모리 카드(MMC, eMMC, SD, MicroSD 등)나 하드디스크 드라이브(HDD)로 제공될 수도 있다. 저장 장치(170)는 대용량의 저장 능력을 가지는 낸드 플래시 메모리(NAND-type Flash memory)를 포함할 수 있다. 또는, 저장 장치(170)는 PRAM, MRAM, ReRAM, FRAM 등의 차세대 불휘발성 메모리나 NOR 플래시 메모리를 포함할 수도 있다.
시스템 버스(190)는 레이아웃 검증 시스템(100)의 내부에서 네트워크를 제공하기 위한 인터커넥터로 제공될 것이다. 시스템 버스(190)를 통해서 CPU(110), 워킹 메모리(130), 입출력 장치(150), 그리고 저장 장치(170)가 전기적으로 연결되고 상호 데이터를 교환할 수 있다. 하지만, 시스템 버스(190)의 구성은 상술한 설명에만 국한되지 않으며, 효율적인 관리를 위한 중재 수단들을 더 포함할 수 있다.
이상의 설명에 따르면, 레이아웃 검증 시스템(100)은 입력된 레이아웃을 간략화된 장치 코드(Device code)로 변환할 수 있다. 장치 코드(Device code)로 변환된 레이아웃은 집적회로를 분석하기 위한 소스로 사용되거나, 패턴 매칭을 위한 소스 등으로 사용될 수 있다. 장치 코드(Device code)는 상대적으로 적은 비트 수의 코드로 하나의 소자를 표현하기 때문에 분석이나 검증의 속도를 획기적으로 높이는데 기여할 수 있다.
도 2는 본 발명의 레이아웃과 장치 코드간의 변환 형태를 간략히 보여주는 도면이다. 도 2를 참조하면, 레이아웃(200)과 장치 코드(Device code)는 LVC 알고리즘(135, 도 1 참조)에 의해서 상호 변환될 수 있다.
레이아웃(200)은 핀(Fin) 구조를 갖는 핀펫(FinFET)을 예로 설명하기로 한다. 적어도 하나의 핀펫을 구성하기 위한 레이아웃(200)은 기본적으로 활성 영역(210, RX)과 그 상부에 형성되는 복수의 실리콘 핀들(220, 222, 224, 226), 그리고 게이트 라인들(231, 232, 233, 234, 235)을 포함할 수 있다. 기판의 상부에 도펀트의 주입을 통해서 형성되는 활성 영역(210)은 폴리 실리콘으로 형성되는 게이트 라인들(232, 233, 234)에 의해서 3개의 트랜지스터를 구성하게 될 것이다. 즉, 게이트 라인(232)과 4개의 실리콘 핀들(220, 222, 224, 226)에 의해서 하나의 4 핀 구조의 핀펫(finFET)이 형성된다. 더불어, 게이트 라인(233)과 게이트 라인(234), 그리고 2개의 실리콘 핀들(224, 226)에 의해서 두개의 2 핀 구조의 핀펫(finFET)들이 형성된다.
상술한 1개의 4핀 구조, 2개의 2핀 구조의 핀펫(finFET)에 대한 일반적인 파라미터 추출에 따르면, 핀들의 수, 활성 영역, 게이트 라인 등에 대한 기하 정보가 모두 필요하다. 하지만, 본 발명의 LVC 알고리즘(135)에 따르면, 수 비트의 간단한 장치 코드(Device code)로 표현될 수 있다. 즉, 3개의 핀펫이 정보를 포함하는 레이아웃(200)은 장치 코드(Device code) '04220h'로 표현될 수 있다. 여기서, 코드는 16진수(Hexadecimal number) 표현으로 나타내었으나, 본 발명은 여기에 국한되지 않음은 잘 이해될 것이다. 즉, 2진수, 8진수 등으로 다양한 방식의 코드로 장치 코드(Device code)의 표현이 가능하다.
좀더 자세히 설명하면, 액티브 영역(210)과 교차하지 않는 게이트 라인(231)에는 코드 '0h'을 할당할 수 있다. 그리고 액티브 영역(210)과 교차하고, 4개의 실리콘 핀들(220, 222, 224, 226)과 교차하는 게이트 라인(233)에는 코드 '4h'를 할당할 수 있다. 그리고 액티브 영역(210)과 2개의 실리콘 핀들(224, 226)과 교차하는 게이트 라인(233)에는 코드 '2h'를 할당할 수 있다. 그리고 액티브 영역(210)과 2개의 실리콘 핀들(224, 226)과 교차하는 게이트 라인(234)에도 코드 '2h'를 할당할 수 있다. 액티브 영역(210)과 교차하지 않는 우측의 게이트 라인(235)에는 코드 '0h'가 할당될 것이다.
상술한 방식으로 하나의 액티브 영역(210)에 규정되는 3개의 트랜지스터들은 장치 코드 '04220h'로 표현될 수 있다. 즉, 코드 '0'들 사이에 위치한 코드들이 실질적으로 트랜지스터들의 사이즈나 특성을 표현하는 레이아웃 정보가 된다. 이러한 표현 방식을 사용하면, 수십 가지의 파라미터를 이용해야 표현되는 레이아웃이 단 몇 비트만으로도 표현될 수 있음을 보여준다.
더불어, 장치 코드 '04220h'를 레이아웃(200)으로 용이하게 변환할 수 있다. 즉, 하나의 액티브 영역(210)은 교차점을 갖지 않는 게이트 라인들(231, 235) 사이에서, 각각 4개, 2개, 2개의 실리콘 핀들과 교차하도록 형성될 수 있다. 따라서, 장치 코드 '04220h'만 제공되면, 용이하게 레이아웃(200)이 표시될 수 있다.
도 3은 본 발명의 실시 예에 따른 레이아웃을 장치 코드로 변환하는 방법을 보여주는 순서도이다. 도 3을 참조하면, 입력된 레이아웃 정보는 본 발명의 LVC 알고리즘(135, 도 1 참조)에 의해서 장치 코드(Device code)로 변환된다.
S110 단계에서, 레이아웃 검증 시스템(100, 도 1 참조)으로는 설계 엔지니어나 레이아웃 설계 툴에 의해서 특정 단위의 레이아웃 정보가 입력될 것이다. 즉, 장치 코드로 변환하기 위한 트랜지스터와 같은 소자(Device)나 셀, 블록, 또는 칩 단위로 레이아웃 정보가 입력될 수 있다. 레이아웃 정보(Layout information)는, 예를 들면, 설계 툴에 의해서 자동 생성된 레이아웃 정보나 2차원 또는 3차원의 도면으로 제공될 수도 있다.
S120 단계에서, LVC 알고리즘(135)은 소자를 구성하는 게이트 라인들에 대해 좌측에서 우측 방향 또는 우측에서 좌측 방향으로 순차적으로 장치 코드를 할당할 것이다. LVC 알고리즘(135)에 의해서 활성 영역과 교차하지 않는 게이트 라인에는 장치 코드 '0h'가 할당될 것이다. 그리고, 활성 영역과 교차하는 게이트 라인의 경우, 게이트 라인과 실리콘 핀과의 교차 수에 따라 장치 코드가 생성될 수 있을 것이다. 이렇나 장치 코드의 생성 방법은 후술하는 도면에서 구체적으로 설명하기로 한다.
S130 단계에서, S120 단계에서 장치 코드가 할당된 게이트 라인이, 장치 코드를 할당하도록 배정받은 레이아웃의 마지막 게이트 라인인지 판단될 것이다. 예를 들면, 장치 코드를 생성할 레이아웃이 하나의 셀 단위인 경우, 장치 코드를 할당받은 게이트 라인이 순차적으로 선택될 것이다. 그리고 마지막 게이트 라인에 대한 장치 코드의 생성이 완료되면(Yes 방향), 절차는 S140 단계로 이동할 것이다. 반면, 장치 코드를 부여받지 못한 게이트 라인이 존재하는 경우(No 방향), 절차는 S150 단계로 이동할 것이다.
S140 단계에서는 수신된 레이아웃 구조에서 아직 장치 코드를 부여받지 못한 게이트 라인이 존재하기 때문에, 게이트 라인의 순서를 카운트-업(Count-up)한다. 게이트 라인의 카운트-업 순서는 좌측에서 우측으로, 또는 우측에서 좌측으로 진행할 수 있을 것이다. 게이트 라인의 카운트-업 이후, 절차는 카운트-업된 게이트 라인에 대한 장치 코드를 할당하기 위하여 S120 단계로 이동할 것이다.
S150 단계에서, 레이아웃에 대한 장치 코드들이 코드열로 조합될 것이다. 조합된 레이아웃은 예를 들면, 셀 단위, 블록 단위, 또는 칩 단위에 대응하는 코드열을 형성하게 될 것이다.
이상에서는 하나의 레이아웃 단위를 장치 코드로 변환하는 LVC 알고리즘(135)의 동작이 예시적으로 설명되었다. LVC 알고리즘(135)에 의해서 소자 단위, 셀 단위, 블록 단위, 또는 칩 단위의 레이아웃이 용이하게 장치 코드로 변환될 수 있다.
도 4a, 도 4b, 그리고 도 4c는 LVC 알고리즘(135)에 의한 장치 코드의 생성 방법을 활성 영역의 기하 구조에 따라 예시적으로 보여주는 도면들이다. 도 4a는 3개의 게이트 라인들(332, 333, 334)과 활성 영역(310)에 의해서 3개의 4-핀 구조의 트랜지스터들의 장치 코드 생성 예를 보여준다. 도 4b는 3개의 게이트 라인들(362, 363, 364)과 활성 영역(340)에 의해서 2개의 4-핀 구조의 트랜지스터들 및 2개의 2-핀 구조의 트랜지스터에 대한 장치 코드 생성 예를 보여준다. 도 4c는 3개의 게이트 라인들(392, 393, 394)과 활성 영역(370)에 의해서 2개의 1-핀 구조의 트랜지스터들과 1개의 4-핀 구조의 트랜지스터의 장치 코드 생성을 보여준다.
도 4a를 참조하면, 제공되는 레이아웃에는 활성 영역(310), 4개의 실리콘 핀들(322, 324, 326, 328), 그리고 게이트 라인들(331, 332, 333, 334, 335)이 포함된다. 게이트 라인(331)은 활성 영역(310)과 중첩되지 않으므로, 장치 코드 '0h'를 할당받을 것이다. 게이트 라인(332)은 활성 영역(310)과 중첩되고, 4개의 실리콘 핀들(322, 324, 326, 328)과 각각 교차한다. 게이트 라인(332)은 교차점(X 표시)의 수에 대응하는 장치 코드 '4h'를 할당받을 것이다. 게이트 라인(333)은 활성 영역(310)과 중첩되고, 4개의 실리콘 핀들(322, 324, 326, 328)과 각각 교차한다. 게이트 라인(333)은 교차점(X 표시)의 수에 대응하는 장치 코드 '4h'를 할당받을 것이다. 게이트 라인(334)은 활성 영역(310)과 중첩되고, 4개의 실리콘 핀들(322, 324, 326, 328)과 각각 교차한다. 게이트 라인(334)도 교차점(X 표시)의 수에 대응하는 장치 코드 '4h'를 할당받을 것이다. 게이트 라인(335)은 활성 영역(310)과 중첩되지 않으므로, 장치 코드 '0h'를 할당받을 것이다. 따라서, 게이트 라인들(331, 332, 333, 334, 335) 각각에 부여받은 장치 코드를 조합하면 레이아웃에 대한 장치 코드는 '04440h'로 결정될 것이다.
도 4b를 참조하면, 제공되는 레이아웃에는 활성 영역(340), 4개의 실리콘 핀들(352, 354, 356, 358), 그리고 게이트 라인들(361, 362, 363, 364, 365)이 포함된다. 게이트 라인(361)은 활성 영역(340)과 중첩되지 않으므로, 장치 코드 '0h'를 할당받을 것이다. 게이트 라인(362)은 활성 영역(340)과 중첩되고, 2개의 실리콘 핀들(356, 358)과 각각 교차한다. 게이트 라인(362)은 교차점(X 표시)의 수에 대응하는 장치 코드 '2h'를 할당받을 것이다. 게이트 라인(363)은 활성 영역(340)과 중첩되고, 4개의 실리콘 핀들(352, 354, 356, 358)과 각각 교차한다. 게이트 라인(363)은 교차점(X 표시)의 수에 대응하는 장치 코드 '4h'를 할당받을 것이다. 게이트 라인(364)은 활성 영역(340)과 중첩되고, 4개의 실리콘 핀들(352, 354, 356, 358)과 각각 교차한다. 게이트 라인(364)도 교차점(X 표시)의 수에 대응하는 장치 코드 '4h'를 할당받을 것이다. 게이트 라인(365)은 활성 영역(340)과 중첩되지 않으므로, 장치 코드 '0h'를 할당받을 것이다. 따라서, 게이트 라인들(361, 362, 363, 364, 365) 각각에 부여받은 장치 코드를 조합하면 레이아웃에 대한 장치 코드는 '02440h'로 생성될 수 있다.
도 4c를 참조하면, 제공되는 레이아웃에는 활성 영역(370), 4개의 실리콘 핀들(382, 384, 386, 388), 그리고 게이트 라인들(391, 392, 393, 394, 395)이 포함된다. 게이트 라인들(391)은 활성 영역(370)과 중첩되지 않으므로, 장치 코드 '0h'를 할당받을 것이다. 게이트 라인들(392, 393)은 활성 영역(370)과 중첩되고, 각각 1개의 실리콘 핀(388)과 교차한다. 게이트 라인들(392, 393) 각각은 교차점(X 표시)의 수에 대응하는 장치 코드 '1h'를 할당받을 것이다. 게이트 라인(394)은 활성 영역(370)과 중첩되고, 4개의 실리콘 핀들(382, 384, 386, 388)과 각각 교차한다. 게이트 라인(394)은 교차점(X 표시)의 수에 대응하는 장치 코드 '4h'를 할당받을 것이다. 게이트 라인(395)은 활성 영역(370)과 중첩되지 않으므로, 장치 코드 '0h'를 할당받을 것이다. 따라서, 게이트 라인들(391, 392, 393, 394, 395) 각각에 부여받은 장치 코드를 조합하면 '01140h'로 생성될 수 있다.
이상의 도 4a, 도 4b, 그리고 도 4c를 통해서 게이트 라인들과 활성 영역과의 중첩 여부, 그리고 실리콘 핀들과의 교차점 수에 따라 장치 코드를 생성하는 방법이 설명되었다. 예시적으로 도시된 레이아웃들은 장치 코드 생성 방식을 설명하기 위해서 제공된 형태일 뿐, 특정 기능과는 무관하다.
도 5는 본 발명의 실시 예에 따른 장치 코드를 레이아웃으로 변환하는 방법을 보여주는 순서도이다. 도 5를 참조하면, 장치 코드는 본 발명의 LVC 알고리즘(135, 도 1 참조)에 의해서 레이아웃으로 용이하게 변환될 수 있다.
S210 단계에서, 소자, 셀, 블록, 또는 칩 등의 특정 단위의 장치 코드(Device code)가 레이아웃으로 변환되기 위해서 본 발명의 레이아웃 검증 시스템(100, 도 1 참조)에 제공될 수 있다. 그러면, 레이아웃 검증 시스템(100)은 입력된 장치 코드(Device code)를 수신하고, LVC 알고리즘(135, 도 1 참조)을 활성화할 것이다.
S220 단계에서, 레이아웃 검증 시스템(100)은 각각의 게이트 라인 단위로 할당된 장치 코드를 참조하여 게이트 라인과 활성 영역과의 중첩 여부, 그리고 중첩 영역에서의 실리콘 핀들과의 교차 횟수를 파악할 것이다. 상술한 정보를 기초로, 하나의 게이트 라인과 관련된 실리콘 핀들, 그리고 활성 영역의 기하 구조가 표현될 수 있다. 레이아웃 검증 시스템(100)은 이러한 하나의 게이트 라인과 그에 관련된 실리콘 핀과 활성 영역에 대한 기하 구조를 도시하거나 데이터로 저장할 것이다.
S230 단계에서, 레이아웃으로 맵핑한 게이트 라인이 해당 레이아웃의 최종 게이트 라인인지 판단된다. 만일, 맵핑된 게이트 라인이 레이아웃의 최종 게이트 라인인 경우(Yes 방향), 제반 레이아웃으로의 변환 절차는 종료된다. 반면, 최종 게이트 라인이 아닌 경우(No 방향), 절차는 게이트 라인의 시퀀스를 카운트-업하기 위한 S240 단계로 이동한다.
이상에서는 LVC 알고리즘(135)에 의해서 장치 코드는 설계자에 의해서 직관적으로 형태를 식별될 수 있는 레이아웃으로 변환될 수 있음이 설명되었다. LVC 알고리즘(135)에 의해서 소자 단위, 셀 단위, 블록 단위, 또는 칩 단위의 레이아웃은 각각 대응하는 단위의 장치 코드로 상호 변환될 수 있다.
도 6은 장치 코드를 레이아웃으로 변환하는 예를 간략히 보여주는 도면이다. 도 6을 참조하면, 장치 코드 '04430h'는 2개의 4-핀 구조의 트랜지스터들과 1개의 3-핀 구조의 트랜지스터의 레이아웃으로 변환될 수 있다.
먼저, MSB에 대응하는 장치 코드 '0h'에 대응하는 게이트 라인(431)이 맵핑될 수 있다. 게이트 라인(431)은 활성 영역(410)과 중첩되지 않으며, 따라서 트랜지스터를 형성할 수 없다. 이어서, 장치 코드 '4h'에 대응하는 게이트 라인(432)이 맵핑될 수 있다. 장치 코드 '4h'에 대응하는 게이트 라인(432)은 활성 영역(410)과 중첩되고 실리콘 핀들(422, 424, 426, 428)과 각각 교차하도록 맵핑될 것이다. 그리고 이러한 실리콘 핀들(422, 424, 426, 428)과 4개의 교차점을 갖는 게이트 라인(433)이 맵핑될 수도 있다. 이어서, 장치 코드 '3h'에 대응하는 게이트 라인(434)은 활성 영역(410)과 중첩되고 3개의 실리콘 핀들(424, 426, 428)과 각각 교차하도록 맵핑될 것이다. 마지막으로, LSB에 대응하는 장치 코드 '0h'는 게이트 라인(435)로 맵핑될 것이다.
여기서, 장치 코드 '04430h'에는 레이아웃을 표현하기 위한 대부분의 정보가 포함되어 있다. 따라서, 장치 코드만으로 어떠한 형태의 레이아웃도 표현될 수 있다.
도 7은 본 발명의 실시 예에 따른 확장된 레이아웃과 그것의 장치 코드 변환 방법을 보여준다. 도 7을 참조하면, 복수의 셀들을 도시한 레이아웃(500)과 그것에 대응하는 본 발명의 장치 코드가 도시되어 있다.
레이아웃(500)은 복수의 셀들을 구성하는 활성 영역들(510, 511, 512, 513, 514, 515)을 포함할 수 있다. 레이아웃(500)은 파워 레일에 의해서 구분되는 하나의 셀 로우(Cell Row)에 포함되는 셀들을 형성할 수 있을 것이다. 예를 들면, N 타입의 도펀트를 주입한 활성 영역들(510, 511, 512)은 PMOS 트랜지스터를 형성하기 위한 P 라인을 구성한다. 그리고 P 타입의 도펀트를 주입한 활성 영역들(513, 514, 515)은 N 라인을 구성할 수 있을 것이다. 각각의 활성 영역들(510, 511, 512, 513, 514, 515)은 게이트 라인에 의해서 분리됨에 따라 트랜지스터로 형성될 것이다. 여기서, 레이아웃(500)은 게이트 라인들(PC_0~PC_8)과 각각 P 라인에 포함되는 실리콘 핀들(uF_0, uF_1, uF_2, uF_3)과 N 라인을 구성하는 실리콘 핀들(dF_0, dF_1, dF_2, dF_3)을 포함할 것이다.
먼저, P 라인에 포함되는 셀들에 대한 장치 코드는 게이트 라인(PC_0)에서부터 할당함으로써 생성될 수 있다. 즉, 활성 영역(510)에 대한 장치 코드는 '0240h'로 할당될 수 있고, 활성 영역(511)에 대한 장치 코드는 '030h', 활성 영역(512)에 대한 장치 코드는 '0230h'로 할당될 수 있다. 그러면 P 라인에 대한 장치 코드는 '024030230h'로 생성될 것이다. 이어서, N 라인에 대해서 장치 코드를 생성하기 위해 활성 영역(513)에 대한 장치 코드는 '030h'로 할당될 수 있고, 활성 영역(514)에 대한 장치 코드는 '0320h', 활성 영역(515)에 대한 장치 코드는 '0240h'로 할당될 수 있다. 그러면 N 라인에 대한 장치 코드는 '030320240h'로 생성될 것이다.
상술한 장치 코드의 생성에 의해서 레이아웃(500)의 P 라인에 대한 장치 코드는 '024030230h'로, N 라인에 대한 장치 코드는 '030320240h'로 제공되고, 이러한 코드는 하나의 레이아웃 단위를 구성하도록 관리될 수 있다.
여기서, 활성 영역의 기하 구조는 파워 라인측에서 센터 측으로 채워지는 경우를 가정한 것이다. 즉, 활성 영역(511)의 장치 코드 '3h'는 활성 영역(511)의 상측으로부터 센터 방향으로 카운트되는 실리콘 핀의 수에 대응한다. 반면, 활성 영역(513)의 장치코드 '3h'는 활성 영역(513)의 하측으로부터 센터 방향으로 카운트되는 실리콘 핀의 수에 대응한다. 이러한 실리콘 핀의 수를 카운트하는 방향은 센터 쪽에서 파워 레일방향으로 진행될 수도 있음은 잘 이해될 것이다. 본 발명의 실시 예에서는 설명의 편의를 위해서 파워 레일측에서 센터 쪽으로 카운트되는 예에 국한하여 본 발명의 이점이 설명될 것이다.
더불어, 장치 코드 'P;024030230h/N;030320240h'는 본 발명의 LVC 알고리즘에 의해서 정확하게 레이아웃(500)으로 맵핑될 수 있다. 하나의 셀 로우에 대응하는 활성 영역들(510, 511, 512, 513, 514, 515), P 라인을 구성하는 실리콘 핀들(uF_0, uF_1, uF_2, uF_3)과 N 라인을 구성하는 실리콘 핀들(dF_0, dF_1, dF_2, dF_3), 그리고 각각의 게이트 라인들(PC_0~PC_8)은 'P;024030230h/N;030320240h'에 의해서 도시될 수 있다.
도 8a, 도 8b, 도 8c는 본 발명의 장치 코드의 생성 방법의 다른 예를 간략히 보여주는 도면들이다. 하나의 장치 코드 '0h'는 활성 영역들 사이의 거리에 따라 다양한 코드들로 분화될 수 있다. 즉, 활성 영역과 중첩되지 않는 게이트 라인(PC_0)에 할당되는 장치 코드는 활성 영역들(RX0, RX1) 사이의 간격에 따라 다양한 코드값으로 변경될 수 있다.
도 8a를 참조하면, 제공되는 레이아웃(520)에는 활성 영역들(RX0, RX1), 실리콘 핀들(F_0, F_1, F_2, F_3), 그리고 게이트 라인들(PC_0, PC_1, PC_2, PC_3, PC_4)이 포함된다. 게이트 라인들(PC_1, PC_2, PC_3)은 활성 영역(RX1)과 중첩되고, 각각 1개 또는 4개의 실리콘 핀들(F_0, F_1, F_2, F_3)과 교차한다. 게이트 라인들(PC_0, PC_1, PC_2, PC_3, PC_4)은 실리콘 핀들과의 교차점(X 표시) 수에 따라 장치 코드 '01140h'를 할당받을 것이다. 게이트 라인들(PC_0, PC_4)은 활성 영역들(RX0, RX1)과 중첩되지 않는다. 따라서, 디폴트(Default)로 이들 게이트 라인들은 장치 코드 '0h'를 할당받을 것이다. 게이트 라인(PC_0)의 장치 코드가 '0h'라는 의미는, 활성 영역들(RX0, RX1) 사이의 거리가 디폴트 간격(rxb0)라는 것을 의미한다. 하지만, 레이아웃이 복잡해지는 구조에서 활성 영역들(RX0, RX1) 사이의 거리가 디폴트 간격(rxb0)보다 커지거나 작아질 수도 있을 것이다. 이 경우, 활성 영역들(RX0, RX1)과 중첩되지 않는 게이트 라인(PC_0)에 할당되는 장치 코드는 다양한 값으로 분화될 수 있다.
도 8b를 참조하면, 레이아웃(530)에 도시된 활성 영역들(RX0, RX1) 사이의 간격(rxb1)은 디폴트 간격(rxb0)보다 증가한 경우를 보여준다. 이 경우, 활성 영역들(RX0, RX1)과 중첩되지 않는 게이트 라인(PC_0)에 할당되는 장치 코드는 16진수로 'Ah'로 표현될 수 있을 것이다. 그리고 나머지 게이트 라인들(PC_1, PC_2, PC_3, PC_4)에 대한 장치 코드는 도 8a에서 할당된 값과 동일하게 유지될 것이다. 따라서, 게이트 라인(PC_0)과 중첩되지 않는 활성 영역들(RX0, RX1) 사이에 간격(rxb1)을 갖는 레이아웃(530)의 장치 코드는 'A1140h'로 표현될 수 있다.
도 8c를 참조하면, 레이아웃(540)에 도시된 활성 영역들(RX0, RX1) 사이의 간격(rxb2)은 간격(rxb1)보다 증가한 경우를 보여준다. 이 경우, 활성 영역들(RX0, RX1)과 중첩되지 않는 게이트 라인(PC_0)에 할당되는 장치 코드는 16진수로 'Bh'로 표현될 수 있을 것이다. 그리고 나머지 게이트 라인들(PC_1, PC_2, PC_3, PC_4)에 대한 장치 코드는 도 8a에서 할당된 값과 동일하게 유지될 것이다. 따라서, 게이트 라인(PC_0)과 중첩되지 않는 활성 영역들(RX0, RX1) 사이에 간격(rxb2)을 갖는 레이아웃(530)의 장치 코드는 'B1140h'로 표현될 수 있다.
이상에서는 장치 코드 '0h'를 좀더 분화된 물리량을 나타낼 수 있는 방법을 설명하였다. 여기서, '0h'가 디폴트 간격의 활성 영역들 사이에 위치하는 게이트 라인에 할당되는 것으로 설명되었으나, 본 발명은 여기에만 국한되지 않는다. 예를 들면, 'Bh'가 디폴트 간격에 대응하고, 간격이 증가할 경우와 감소할 경우에 대해서 다양한 값으로 장치 코드 '0h'를 분화시킬 수 있을 것이다. 더불어, 장치 코드 '0h'뿐 아니라 '1h', '2h', '3h', '4h' 등에 대해서도 활성 영역의 폭이나 깊이, 기하 구조, 문턱 전압 등에 의해서 다변화될 수 있을 것이다.
도 9는 본 발명의 실시 예에 따른 레이아웃 분석 방법을 간략히 보여주는 순서도이다. 도 9를 참조하면, 본 발명의 장치 코드를 사용하여 하나의 셀이나, 블록, 또는 칩에 포함되는 다양한 소자, 패턴을 형태나 특성에 따라 분석할 수 있다.
S310 단계에서, 분석 대상이 되는 셀이나, 블록, 또는 칩에 대응하는 레이아웃이 본 발명의 레이아웃 검증 시스템(100, 도 1 참조)에 제공될 수 있다. 또는, 레이아웃 설계 툴(Layout design tool)에 의해서 생성된 레이아웃이 레이아웃 검증 시스템(100)에 제공될 수도 있을 것이다. 레이아웃 검증 시스템(100)은 입력된 레이아웃 및 분석 요청에 응답하여 LVC 알고리즘(135, 도 1 참조)을 활성화할 것이다.
S320 단계에서, 레이아웃 검증 시스템(100)은 입력된 레이아웃을 각각의 게이트 라인 단위로 장치 코드를 할당하기 위하여 LVC 알고리즘(135)을 구동할 것이다. LVC 알고리즘(135)은 게이트 라인과 활성 영역과의 중첩 여부, 그리고 중첩 영역에서의 실리콘 핀들과 게이트 라인과의 교차 횟수를 파악할 것이다. 상술한 정보를 기초로, 입력된 레이아웃은 본 발명의 장치 코드로 변환될 것이다. 변환된 레이아웃의 장치 코드는 레이아웃 검증 시스템(100)의 워킹 메모리(130)나 저장 장치(170)에 저장될 것이다.
S330 단계에서, 레이아웃 검증 시스템(100)은 저장된 장치 코드를 보다 작은 단위의 패턴들로 구분할 수 있을 것이다. 즉, 레이아웃에 포함되는 셀이나 소자, 또는 하나의 활성 영역의 구조에 따라 레이아웃이 분석될 것이다. 예를 들면, 활성 영역의 형태에 따라 '0h'들 사이에 위치하는 장치 코드들이 구분되고, 구분된 장치 코드들의 수가 카운트될 수 있다. 이런 경우에, 하나의 칩이나 블록, 셀에 포함되는 패턴들의 사용 빈도 등의 통계화가 가능할 거이다. 분류된 패턴들에 대한 통계 정보는 레이아웃 설계자에 의해서 설계 과정에서 다양한 용도로 사용될 수 있을 것이다.
이상에서는 본 발명의 레이아웃에 대한 장치 코드 추출과, 그것을 이용한 레이아웃의 패턴 분석 방법이 설명되었다.
도 10은 도 9의 분석 방법을 예시적으로 보여주는 도면이다. 도 10을 참조하면, 레이아웃 설계자에 의해서 입력되거나, 레이아웃 검증 시스템(100)에 의해서 생성된 레이아웃(600)은 장치 코드로 변환되고, 패턴에 따라 분류될 수 있다.
레이아웃(600)은 복수의 셀들을 구성하는 활성 영역들(610~619)을 포함할 수 있다. 레이아웃(600)은 파워 레일에 의해서 구분되는 하나의 셀 로우(Cell Row)에 포함되는 셀들을 형성할 수 있을 것이다. 예를 들면, N 타입의 도펀트를 주입한 활성 영역들(610~614)은 PMOS 트랜지스터를 형성하기 위한 P 라인을 구성한다. 그리고 P 타입의 도펀트를 주입한 활성 영역들(615~619)은 N 라인을 구성할 수 있을 것이다. 여기서, 레이아웃(600)은 게이트 라인들(PC_0~PC_12)과 각각 P 라인에 포함되는 실리콘 핀들(uF_0, uF_1, uF_2, uF_3)과 N 라인을 구성하는 실리콘 핀들(dF_0, dF_1, dF_2, dF_3)을 포함할 수 있다.
LVC 알고리즘(135)에 의해서 P 라인에 포함되는 셀들에 대한 장치 코드는 게이트 라인(PC_0)에서부터 할당함으로써 생성될 수 있다. 즉, 활성 영역(610)에 대한 장치 코드는 '0240h'로 할당될 수 있고, 활성 영역(611)에 대한 장치 코드는 '030h', 활성 영역(612)에 대한 장치 코드는 '0230h'로, 활성 영역(613)에 대한 장치 코드는 '030h', 그리고 활성 영역(614)에 대한 장치 코드는 '040h'로 추출될 수 있다. 따라서, P 라인에 대한 장치 코드는 '0240302303040h'로 생성될 것이다. 이어서, N 라인에 대해서 장치 코드를 추출하면, 활성 영역(615)에 대한 장치 코드는 '030h'로, 활성 영역(616)에 대한 장치 코드는 '0320h', 활성 영역(617)에 대한 장치 코드는 '0240h', 활성 영역(618)에 대한 장치 코드는 '030h', 그리고 활성 영역(619)의 장치 코드는 '030h'로 추출될 것이다. 그러면 N 라인에 대한 장치 코드는 '0303202403030h'로 생성될 것이다.
상술한 장치 코드의 생성에 의해서 레이아웃(600)은 장치 코드 'P;024030230h/N;0303202403030h'로 추출된다. 그러면, 레이아웃 검증 시스템(100)은 추출된 장치 코드를 사용하여 패턴들을 분석할 것이다. 예를 들면, P 타입의 패턴들로는 '0240h'가 1개, '030h'가 2개, '0230h'가 1개, '040h'가 1개로 집계될 수 있다. 그리고 N 타입의 패턴들로는 '030h'가 3개, '0320h'가 1개, '0240h'가 1개로 집계될 수 있다. 이러한 패턴들의 형태에 따른 분류 방법을 사용하면, 레이아웃에 포함되는 모든 패턴들에 대해서 장치 코드를 사용한 디지털 패턴 분석이나 통계를 논리 연산을 통해서 용이하게 수행할 수 있을 것이다.
도 11은 본 발명의 실시 예에 따른 패턴 매칭 방법을 보여주는 순서도이다. 도 11을 참조하면, 본 발명의 장치 코드를 사용하면 레이아웃 설계 과정에서 특정 패턴의 칩상에서의 위치, 숫자 등을 검출하기 위한 패턴 매칭을 효율적으로 수행할 수 있다.
S410 단계에서, 레이아웃 검증 시스템(100, 도 1 참조)은 검출 대상이 되는 타깃 패턴을 입력받는다. 예를 들면, 레이아웃 검증 시스템(100)은 특정 소자, 셀, 블록에 대응하는 레이아웃을 타깃 패턴으로 제공받을 수 있다.
S420 단계에서, 레이아웃 검증 시스템(100)은 입력된 타깃 패턴을 장치 코드로 변환하기 위하여 LVC 알고리즘(135)을 활성화할 것이다. LVC 알고리즘(135)은 게이트 라인과 활성 영역과의 중첩 여부, 그리고 중첩 영역에서의 실리콘 핀들과 게이트 라인과의 교차 횟수를 파악할 것이다. 상술한 정보를 기초로, 입력된 타깃 패턴은 장치 코드로 변환될 것이다. 변환된 레이아웃의 장치 코드는 레이아웃 검증 시스템(100)의 워킹 메모리(130)나 저장 장치(170)에 저장될 것이다. 여기서, S410 단계와 S420 단계는 타깃 패턴에 대응하는 장치 코드를 집적 입력받는 경우 생략될 수 있음은 잘 이해될 것이다.
S430 단계에서, 레이아웃 검증 시스템(100)은 검색을 수행할 칩에 대한 장치 코드를 수신할 것이다. 만일, 패턴 매칭을 수행할 칩이나 또는 블록에 대한 장치 코드가 아닌 레이아웃 정보를 제공받는 경우, 이러한 정보를 장치 코드로 변환하는 절차가 추가되어야 함은 잘 이해될 것이다.
S440 단계에서, 레이아웃 검증 시스템(100)은 타깃 장치 코드와 칩 코드 간의 상관성 검출 연산을 수행한다. 즉, 레이아웃 검증 시스템(100)은 칩 코드의 시작 위치에서 타깃 장치 코드와 동일한 부분이 존재하는지 순차적으로 스캔을 수행할 것이다.
S450 단계에서, 레이아웃 검증 시스템(100)은 타깃 장치 코드와 매칭되는 부분이 검출되는 지 판단한다. 만일, 타깃 장치 코드와 매칭되는 부분이 존재하면, 절차는 S460으로 이동한다. 반면, 칩 내의 현재 스캔 위치에서 타깃 장치 코드와 칩의 패턴이 일치하지 않는 경우, 절차는 스캔 대상이 되는 패턴을 시프트하기 위한 S480으로 이동한다.
S460 단계에서, 레이아웃 검증 시스템(100)은 패턴이 일치하는 부분에 대한 위치 정보를 마킹한다. 예를 들면, 칩의 특정 셀 로우에서 타깃 장치 코드와 동일한 코드가 검색되면, 레이아웃 검증 시스템(100)은 해당 칩의 위치에 매칭 마크를 부가할 수 있을 것이다.
S470 단계에서, 레이아웃 검증 시스템(100)은 현재 상관 연산이 수행된 위치가 칩에서 마지막 패턴에 대응하는지 판단한다. 만일, 마지막 패턴에 대응하는 경우, 제반 패턴 매칭 연산은 종료될 것이다. 반면, 패턴 매칭을 수행할 패턴이 더 존재하는 경우, 절차는 S480으로 이동한다.
S480 단계에서, 레이아웃 검증 시스템(100)은 타깃 장치 코드와 비교할 칩의 장치 코드를 시프트시킨다. 칩에서 좌측으로 또는 우측으로 시프트하여 모든 패턴들이 타깃 장치 코드와 비교될 수 있다. 이후, 절차는 S440으로 복귀하여 타깃 패턴과 시프트된 패턴이 비교될 것이다.
이상에서는 본 발명의 실시 예에 따른 장치 코드를 활용한 패턴 매칭 방법이 설명되었다. 본 발명의 장치 코드를 사용하는 경우, 타깃 패턴과 칩의 패턴 정보가 디지털 코드로 제공되기 때문에 논리 연산을 통한 고속의 패턴 매칭 동작이 가능하다.
도 12는 도 11의 패턴 매칭 방법을 시각적으로 보여주는 도면들이다. 도 12를 참조하면, 타깃 패턴(710)은 장치 코드로의 변환 과정을 경유하여 타깃 코드(730)로 추출된다. 그리고 칩 패턴(700)은 장치 코드로의 변환 과정을 경유하면, 칩 코드(720)로 추출될 수 있다. 레이아웃 검증 시스템(100, 도 1 참조)은 패턴 매칭 연산을 위해서 타깃 코드(730)를 칩 코드(720)와 비교한다. 그리고 레이아웃 검증 시스템(100)은 동일한 패턴이 존재하는지를 검출할 수 있다.
먼저, ⓐ 단계에서 타깃 패턴(710)은 타깃 코드(730)로 추출될 수 있다. 타깃 패턴(710)은 칩상에서 동일한 패턴이 존재하는지 검출하기 원하는 셀이나 또는 블록 단위의 레이아웃이다. 타깃 패턴(710)은 활성 영역들(RX0, RX1, RX2, RX3, RX4), 게이트 라인들(점선), 그리고 실리콘 핀들(실선)의 교차점의 수를 참조하여 타깃 패턴(730)으로 추출된다. 이러한 타깃 패턴의 추출은 LVC 알고리즘(135)에 의해서 수행될 수 있을 것이다.
ⓑ 단계에서, 하나의 칩 패턴(700)이 칩 코드(720)로 추출될 수 있다. 칩 코드(720)의 추출도 LVC 알고리즘(135)에 의해서 수행될 수 있을 것이다.
그리고 ⓒ 단계에서, 타깃 코드(730)는 칩 코드(720)의 코드들과 비교된다. 그리고 타깃 코드(730)와 동일한 코드(725)가 검출되면, 동일한 코드(725)가 검출된 위치는 타깃 패턴(710)이 형성되는 위치임을 나타낸다.
상술한 패턴 매칭 연산은 코드들의 비교 또는 상관 연산만으로 수행될 수 있다. 이러한 연산은 간단한 논리 연산을 통해서 수행될 수 있으므로, 고속으로 패턴 매칭이 수행될 수 있음을 의미한다. 레이아웃만으로 동일한 패턴의 위치를 찾는 것은 많은 노력과 시간이 필요하다. 또한, 이런 패턴 매칭 방법은 원하는 만큼의 정확도를 제공할 수 없다. 반면, 코드만을 사용하여 패턴 매칭을 수행하는 경우, 높은 정확도, 속도, 효율이 제공될 수 있다.
도 13은 본 발명의 실시 예에 따른 테스트 패턴을 장치 코드로 생성하고, 생성된 테스트 패턴을 사용하여 테스트를 수행하는 방법을 보여주는 순서도이다. 도 13을 참조하면, 칩 상에 형성될 수 있는 모든 레이아웃 패턴에 대해서 본 발명의 장치 코드로의 변환을 수행할 수 있다. 그리고 이들 테스트용 장치 코드들을 결합하여 칩상에 구현 가능한 블록, 셀, 등의 패턴을 조합할 수 있다.
S510 단계에서, 레이아웃 검증 시스템(100, 도 1 참조)은 칩상에서 형성 가능한 제반 장치들에 대한 레이아웃 또는 장치 코드를 수신한다. 이러한 만일, 형성 가능한 모든 소자의 레이아웃이 입력되는 경우, LVC 알고리즘(135)을 사용한 장치 코드로의 변환 절차가 수반되어야 할 것이다. 반면, 형성 가능한 패턴의 장치 코드들이 입력되는 경우, 별도의 코드 변환 과정은 생략될 수 있다.
S520 단계에서, 레이아웃 검증 시스템(100)은 장치 코드들을 조합하여 형성 가능한 모든 패턴들 및 패턴들의 조합을 구성할 수 있다.
S530 단계에서, 레이아웃 검증 시스템(100)은 구성된 조합들 중에서 불량을 유발하는 패턴을 검출하거나, 불량의 원인이 되는 패턴을 포함하는 조합을 검출할 수 있다.
도 14는 본 발명의 다른 실시 예에 따른 레이아웃 설계 시스템(800)을 보여주는 블록도이다. 도 14를 참조하면, 레이아웃 설계 시스템(800)은 본 발명의 장치 코드를 사용하여 스키매틱 회로의 시뮬레이션을 수행할 수 있다. 레이아웃 설계 시스템(800)은 CPU(810), 워킹 메모리(830), 입출력 장치(850), 저장 장치(870), 그리고 버스(890)를 포함할 수 있다. CPU(810), 입출력 장치(850), 그리고 저장 장치(870) 등의 구성이나 기능은 도 1의 그것들과 실질적으로 동일하다. 따라서 이것들에 대한 설명은 생략하기로 한다.
워킹 메모리(830)에는 본 발명의 LVC 알고리즘(835)이 로드될 것이다. 특히, 스키매틱 회로를 시뮬레이션하기 위한 시뮬레이션 툴도 워킹 메모리(830)에 로드될 수 있을 것이다. LVC 알고리즘(835)은 스키매틱 회로의 검증후 생성된 레이아웃을 본 발명의 장치 코드(Device code)로 변환한다. 또한, LVC 알고리즘(835)은 장치 코드(Device code)를 레이아웃으로 변환할 수 있다. 더불어, LVC 알고리즘(835)은 장치 코드(Device code)를 스키매틱 회로를 표현하기 위한 파라미터로 변환할 수 있을 것이다. 예를 들면, 스키매틱 회로의 시뮬레이션을 위한 넷리스트(Netlist)가 본 발명의 장치 코드를 사용하여 구성될 수 있을 것이다. 장치 코드를 스키매틱 회로의 파라미터로 변환한 이후, 시뮬레이션 툴(837)에 의해서 레이아웃에 대한 스키매틱 회로의 시뮬레이션이 수행될 수 있을 것이다.
도 15는 도 14의 장치 코드를 활용한 스키매틱 회로의 시뮬레이션 방법을 보여주는 순서도이다. 도 15를 참조하면, 본 발명의 레이아웃 설계 시스템(800)은 레이아웃으로부터 장치 코드를 추출할 수 있고, 추출된 장치 코드를 다시 스키매틱 회로의 파라미터로 구성할 수 있다.
S610 단계에서, 레이아웃 설계 시스템(800)은 소자, 셀, 블록, 또는 칩에 대응하는 레이아웃을 수신할 수 있다. 또는, 레이아웃 설계 시스템(800)은 레이아웃 설계 툴(Layout design tool)에 의해서 생성된 레이아웃 정보를 수신할 수도 있을 것이다.
S620 단계에서, 레이아웃 검증 시스템(100)은 입력된 레이아웃 정보를 각각의 게이트 라인 단위로 장치 코드를 할당하기 위하여 LVC 알고리즘(835)을 구동할 것이다. LVC 알고리즘(835)은 게이트 라인과 활성 영역과의 중첩 여부, 그리고 중첩 영역에서의 실리콘 핀들과 게이트 라인과의 교차 횟수를 파악할 것이다. 상술한 정보를 기초로, 입력된 레이아웃 정보는 LVC 알고리즘(835)에 의해서 장치 코드로 변환될 것이다. 변환된 레이아웃의 장치 코드는 레이아웃 설계 시스템(800)의 워킹 메모리(830)나 저장 장치(870)에 저장될 것이다.
S630 단계에서, 레이아웃 설계 시스템(800)은 저장된 장치 코드를 스키매틱 파라미터로 변환할 수 있다. 예를 들면, 트랜지스터를 나타내는 패턴에 대한 장치 코드들은 각각 저항(R)이나 용량(C)의 등가 회로들로 생성될 수 있을 것이다.
S640 단계에서, 레이아웃 설계 시스템(800)은 시뮬레이션 툴(837)을 사용하여 장치 코드를 사용하여 생성된 스키매틱 파라미터를 사용하여 시뮬레이션을 수행할 수 있다. 시뮬레이션의 결과를 사용하여, 레이아웃의 패턴이나 채널 사이즈를 다시 재조정할 수 있을 것이다.
한편, 본 발명에 따른 메모리 시스템은 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 메모리 시스템은 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP) 등과 같은 패키지들을 이용하여 실장될 수 있다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 상술한 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.

Claims (10)

  1. 레이아웃 검증 시스템에서, 핀 기반(Fin based)의 집적회로 레이아웃의 검증 방법에 있어서:
    특정 집적회로 단위의 레이아웃을 수신하는 단계;
    상기 레이아웃의 활성 영역, 게이트 라인들, 그리고 실리콘 핀들의 교차점의 수를 참조하여 게이트 라인 단위로 장치 코드를 추출하는 단계; 그리고
    상기 게이트 라인들 각각의 순서에 따라 추출된 상기 장치 코드를 조합하는 단계를 포함하는 레이아웃 검증 방법.
  2. 제 1 항에 있어서,
    상기 게이트 라인들 중 상기 활성 영역과 중첩되지 않는 어느 하나의 게이트 라인은 장치 코드 '0'을 할당받는 레이아웃 검증 방법.
  3. 제 2 항에 있어서,
    상기 어느 하나의 게이트 라인에 대응하는 장치 코드 '0'은 상기 어느 하나의 게이트 라인과 인접한 활성 영역 사이의 간격에 따라 세분화된 코드로 할당되는 레이아웃 검증 방법.
  4. 제 1 항에 있어서,
    상기 게이트 라인들 중 상기 활성 영역과 중첩되는 어느 하나의 게이트 라인은 상기 실리콘 핀들과의 교차 회수에 대응하는 장치 코드를 할당받는 레이아웃 검증 방법.
  5. 제 4 항에 있어서,
    상기 실리콘 핀들과 상기 게이트 라인의 교차점에 대한 카운트는 상기 레이아웃의 상부에서 하부 방향 또는 하부에서 상부 방향으로 수행되는 레이아웃 검증 방법.
  6. 제 1 항에 있어서,
    상기 특정 집적회로 단위는 트랜지스터 소자, 셀, 블록, 그리고 칩 중 적어도 하나인 것을 특징으로 하는 레이아웃 검증 방법.
  7. 제 1 항에 있어서,
    상기 조합된 장치 코드를 동일한 코드열을 갖는 패턴 단위로 분류하는 단계를 더 포함하는 레이아웃 검증 방법.
  8. 제 1 항에 있어서,
    상기 특정 집적회로 단위는 하나의 소자에 대응하고, 상기 소자를 구성하기 위한 다양한 형태의 레이아웃에 대해서 상기 장치 코드를 추출하는 단계를 더 포함하는 레이아웃 검증 방법.
  9. 제 1 항에 있어서,
    상기 장치 코드들을 스키매틱 회로를 표현하기 위한 스키매틱 변수로 변환하는 단계를 더 포함하는 레이아웃 검증 방법.
  10. 삭제
KR1020150012154A 2014-09-18 2015-01-26 반도체 장치의 레이아웃 검증을 수행하는 컴퓨터 기반 시스템 및 그것의 레이아웃 검증 방법 KR102335243B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/843,491 US10095825B2 (en) 2014-09-18 2015-09-02 Computer based system for verifying layout of semiconductor device and layout verify method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201462052076P 2014-09-18 2014-09-18
US62/052,076 2014-09-18

Publications (2)

Publication Number Publication Date
KR20160034164A KR20160034164A (ko) 2016-03-29
KR102335243B1 true KR102335243B1 (ko) 2021-12-06

Family

ID=55661982

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020150003369A KR102423878B1 (ko) 2014-09-18 2015-01-09 다수의 소자 측정이 가능한 테스트용 반도체 장치 및 그것의 제조 방법 및 테스트 방법
KR1020150011322A KR102133377B1 (ko) 2014-09-18 2015-01-23 반도체 소자 및 이의 제조 방법
KR1020150012154A KR102335243B1 (ko) 2014-09-18 2015-01-26 반도체 장치의 레이아웃 검증을 수행하는 컴퓨터 기반 시스템 및 그것의 레이아웃 검증 방법
KR1020150030512A KR20160034167A (ko) 2014-09-18 2015-03-04 교차 연결 구조를 갖는 반도체 장치 및 그것의 레이아웃 검증 방법
KR1020150033280A KR102255450B1 (ko) 2014-09-18 2015-03-10 반도체 장치의 레이아웃 설계 방법

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020150003369A KR102423878B1 (ko) 2014-09-18 2015-01-09 다수의 소자 측정이 가능한 테스트용 반도체 장치 및 그것의 제조 방법 및 테스트 방법
KR1020150011322A KR102133377B1 (ko) 2014-09-18 2015-01-23 반도체 소자 및 이의 제조 방법

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020150030512A KR20160034167A (ko) 2014-09-18 2015-03-04 교차 연결 구조를 갖는 반도체 장치 및 그것의 레이아웃 검증 방법
KR1020150033280A KR102255450B1 (ko) 2014-09-18 2015-03-10 반도체 장치의 레이아웃 설계 방법

Country Status (2)

Country Link
KR (5) KR102423878B1 (ko)
TW (3) TWI679435B (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102678555B1 (ko) * 2016-10-05 2024-06-26 삼성전자주식회사 변형 셀을 포함하는 집적 회로 및 그 설계 방법
KR102633141B1 (ko) * 2016-12-07 2024-02-02 삼성전자주식회사 집적회로 소자
KR102358481B1 (ko) 2017-06-08 2022-02-04 삼성전자주식회사 반도체 소자 및 그의 제조 방법
DE102017127276A1 (de) 2017-08-30 2019-02-28 Taiwan Semiconductor Manufacturing Co., Ltd. Standardzellen und abwandlungen davon innerhalb einer standardzellenbibliothek
US10741539B2 (en) * 2017-08-30 2020-08-11 Taiwan Semiconductor Manufacturing Co., Ltd. Standard cells and variations thereof within a standard cell library
KR102499036B1 (ko) * 2017-09-22 2023-02-13 삼성전자주식회사 임계 치수 측정 시스템 및 임계 치수 측정 방법
KR102419646B1 (ko) 2017-12-22 2022-07-11 삼성전자주식회사 크로스 커플 구조를 구비하는 집적 회로 및 이를 포함하는 반도체 장치
US10796064B2 (en) 2018-08-14 2020-10-06 International Business Machines Corporation Autonomous placement to satisfy self-aligned double patterning constraints

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030200512A1 (en) * 2002-04-17 2003-10-23 Lam William K. Using boolean expressions to represent shapes within a layout of an integrated circuit

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5661419A (en) * 1996-05-23 1997-08-26 Sun Microsystems, Inc. Dynamic phase-frequency detector circuit
JP3233347B2 (ja) * 1997-11-17 2001-11-26 日本電気株式会社 集積回路試験装置及び集積回路試験方法
US6423558B1 (en) * 2000-02-25 2002-07-23 Advantest Corporation Method for fabricating integrated circuit (IC) dies with multi-layered interconnect structures
US6567967B2 (en) * 2000-09-06 2003-05-20 Monterey Design Systems, Inc. Method for designing large standard-cell base integrated circuits
JP2007043049A (ja) * 2004-12-20 2007-02-15 Matsushita Electric Ind Co Ltd セル、スタンダードセル、スタンダードセル配置方法、スタンダードセルライブラリ、ならびに半導体集積回路
US7337420B2 (en) * 2005-07-29 2008-02-26 International Business Machines Corporation Methodology for layout-based modulation and optimization of nitride liner stress effect in compact models
US7489151B2 (en) * 2005-10-03 2009-02-10 Pdf Solutions, Inc. Layout for DUT arrays used in semiconductor wafer testing
JP2007103862A (ja) * 2005-10-07 2007-04-19 Renesas Technology Corp 半導体装置およびその製造方法
US7956421B2 (en) * 2008-03-13 2011-06-07 Tela Innovations, Inc. Cross-coupled transistor layouts in restricted gate level layout architecture
US8631383B2 (en) * 2008-06-30 2014-01-14 Qimonda Ag Integrated circuits, standard cells, and methods for generating a layout of an integrated circuit
TWM357609U (en) * 2008-12-08 2009-05-21 Chunghwa Picture Tubes Ltd LCD panels capable of testing cell defects, line defects and layout defects
US8255837B2 (en) * 2009-02-03 2012-08-28 Taiwan Semiconductor Manufacturing Company, Ltd. Methods for cell boundary isolation in double patterning design
US8294485B2 (en) 2009-02-12 2012-10-23 International Business Machines Corporation Detecting asymmetrical transistor leakage defects
US8907441B2 (en) * 2010-02-09 2014-12-09 Taiwan Semiconductor Manufacturing Company, Ltd. Methods for double-patterning-compliant standard cell design
US8631374B2 (en) * 2011-03-30 2014-01-14 Synopsys, Inc. Cell architecture for increasing transistor size
JP5699826B2 (ja) * 2011-06-27 2015-04-15 富士通セミコンダクター株式会社 レイアウト方法及び半導体装置の製造方法
US8595661B2 (en) 2011-07-29 2013-11-26 Synopsys, Inc. N-channel and p-channel finFET cell architecture
US9355910B2 (en) * 2011-12-13 2016-05-31 GlobalFoundries, Inc. Semiconductor device with transistor local interconnects
US8581348B2 (en) * 2011-12-13 2013-11-12 GlobalFoundries, Inc. Semiconductor device with transistor local interconnects
US20130320451A1 (en) * 2012-06-01 2013-12-05 Taiwan Semiconductor Manufacturing Company, Ltd., ("Tsmc") Semiconductor device having non-orthogonal element
US8987128B2 (en) * 2012-07-30 2015-03-24 Globalfoundries Inc. Cross-coupling based design using diffusion contact structures

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030200512A1 (en) * 2002-04-17 2003-10-23 Lam William K. Using boolean expressions to represent shapes within a layout of an integrated circuit

Also Published As

Publication number Publication date
TWI679435B (zh) 2019-12-11
KR102423878B1 (ko) 2022-07-22
KR102133377B1 (ko) 2020-07-15
KR102255450B1 (ko) 2021-05-25
KR20160034161A (ko) 2016-03-29
TWI672600B (zh) 2019-09-21
TW201612535A (en) 2016-04-01
TW201618279A (zh) 2016-05-16
TW201614531A (en) 2016-04-16
KR20160034167A (ko) 2016-03-29
KR20160034169A (ko) 2016-03-29
KR20160034163A (ko) 2016-03-29
TWI677965B (zh) 2019-11-21
KR20160034164A (ko) 2016-03-29

Similar Documents

Publication Publication Date Title
KR102335243B1 (ko) 반도체 장치의 레이아웃 검증을 수행하는 컴퓨터 기반 시스템 및 그것의 레이아웃 검증 방법
US10867100B2 (en) Integrated circuit designing system
US11544437B2 (en) System for designing integrated circuit layout and method of making the integrated circuit layout
TWI716115B (zh) 積體電路設計方法、積體電路設計系統及非暫態電腦可讀取媒體
US9672611B2 (en) Pattern analysis method of a semiconductor device
US10678987B2 (en) Cell layout method and system for creating stacked 3D integrated circuit having two tiers
US10095825B2 (en) Computer based system for verifying layout of semiconductor device and layout verify method thereof
KR20170084411A (ko) 반도체 장치의 핀 간 라우팅 설계 방법 및 그것을 적용한 설계 시스템
US8863062B2 (en) Methods and apparatus for floorplanning and routing co-design
CN116227407B (zh) 形成物理版图的模块边界的方法及相关设备
US7213217B2 (en) Layout data saving method, layout data converting device and graphic verifying device
US9697315B2 (en) System and method for displaying a device using an automated tool
US10460064B1 (en) Partition-aware grid graph based hierarchical global routing
US10970452B2 (en) System for designing semiconductor circuit and operating method of the same
US20150121330A1 (en) Hierarchical electromigration analysis using intelligent connectivity
US8621412B1 (en) Micro-regions for auto place and route optimization
US11227084B2 (en) Multi-bit standard cell
Chen et al. An integrated-spreading-based macro-refining algorithm for large-scale mixed-size circuit designs
JP6326756B2 (ja) スキャンパスを構成するための情報処理装置、スキャンパス接続方法及びプログラム
TWI738336B (zh) 邊界單元的布局方法及裝置以及積體電路
US9213789B2 (en) Method of generating optimized memory instances using a memory compiler
US20160132628A1 (en) Method of designing an integrated circuit and computer program product
US10157251B2 (en) Method and system for partitioning circuit cells
JP4298783B2 (ja) 図形検証装置及びレイアウトデータ変換装置
JP2019204171A5 (ko)

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