KR20230063688A - 3차원 모델링을 위한 방법 및 시스템 - Google Patents

3차원 모델링을 위한 방법 및 시스템 Download PDF

Info

Publication number
KR20230063688A
KR20230063688A KR1020210149022A KR20210149022A KR20230063688A KR 20230063688 A KR20230063688 A KR 20230063688A KR 1020210149022 A KR1020210149022 A KR 1020210149022A KR 20210149022 A KR20210149022 A KR 20210149022A KR 20230063688 A KR20230063688 A KR 20230063688A
Authority
KR
South Korea
Prior art keywords
data
generating
grid
lattice
sampling
Prior art date
Application number
KR1020210149022A
Other languages
English (en)
Inventor
명상훈
장원익
정창욱
최재명
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020210149022A priority Critical patent/KR20230063688A/ko
Priority to US17/972,809 priority patent/US20230136021A1/en
Priority to EP22203552.9A priority patent/EP4174713A1/en
Priority to TW111141112A priority patent/TW202329042A/zh
Priority to CN202211357538.9A priority patent/CN116071516A/zh
Publication of KR20230063688A publication Critical patent/KR20230063688A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/17Mechanical parametric or variational design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/97Determining parameters from multiple pictures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Graphics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Image Processing (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

3차원 모델링 방법은, 3차원 구조를 나타내는 기하(geometric) 데이터 및 3차원 구조의 속성을 결정하는 인자들을 포함하는 입력 파라미터들을 획득하는 단계, 기하 데이터로부터 격자(grid) 데이터를 생성하는 단계, 격자 데이터로부터 다운-샘플링된(down-sampled) 격자 데이터를 순차적으로 생성하는 단계, 입력 파라미터들을 전처리함으로써 3차원 피처 맵(feature map)을 생성하는 단계, 및 적어도 하나의 스테이지에 각각 대응하는 적어도 하나의 기계 학습 모델에 기초하여, 적어도 하나의 다운-샘플링된 격자 데이터 및 3차원 피처 맵으로부터 3차원 구조에서 속성의 프로파일을 나타내는 속성 프로파일 데이터를 생성하는 단계를 포함할 수 있다.

Description

3차원 모델링을 위한 방법 및 시스템{METHOD AND SYSTEM FOR THREE-DIMENSIONAL MODELING}
본 개시의 기술적 사상은 3차원 모델링에 관한 것으로서, 자세하게는 3차원 구조를 모델링하기 위한 방법 및 시스템에 관한 것이다.
3차원 구조의 시뮬레이션은 높은 비용을 요구할 수 있다. 예를 들면, 반도체 공정에서 조건에 따라 형성된 소자의 속성이나 주어진 환경에서 소자의 상태를 시뮬레이션하는 것은, 다양한 물리적 해석을 수행하기 위한 높은 컴퓨팅 자원을 요구할 수 있고, 시뮬레이션을 완료하는데 오랜 시간이 소요될 수 있다. 또한, 시뮬레이터의 성능이나 다양한 인자들에 기인하여, 시뮬레이션 결과의 정확도가 감소할 수도 있다.
본 개시의 기술적 사상은, 낮은 비용 및 높은 정확도로 3차원 구조를 모델링하기 위한 방법 및 시스템을 제공한다.
본 개시의 기술적 사상의 일측면에 따른 3차원 모델링 방법은, 3차원 구조를 나타내는 기하(geometric) 데이터 및 3차원 구조의 속성을 결정하는 인자들을 포함하는 입력 파라미터들을 획득하는 단계, 기하 데이터로부터 격자(grid) 데이터를 생성하는 단계, 격자 데이터로부터 다운-샘플링된(down-sampled) 격자 데이터를 순차적으로 생성하는 단계, 입력 파라미터들을 전처리함으로써 3차원 피처 맵(feature map)을 생성하는 단계, 및 적어도 하나의 스테이지에 각각 대응하는 적어도 하나의 기계 학습 모델에 기초하여, 적어도 하나의 다운-샘플링된 격자 데이터 및 3차원 피처 맵으로부터 3차원 구조에서 속성의 프로파일을 나타내는 속성 프로파일 데이터를 생성하는 단계를 포함할 수 있다.
본 개시의 기술적 사상의 일측면에 따른 3차원 모델링 방법은, 3차원 구조의 속성의 프로파일을 나타내는 속성 프로파일 데이터 및 3차원 구조의 환경을 나타내는 입력 파라미터들을 획득하는 단계, 속성 프로파일 데이터로부터 격자(grid) 데이터를 생성하는 단계, 격자 데이터로부터 적어도 하나의 다운-샘플링된(down-sampled) 격자 데이터를 순차적으로 생성하는 단계, 적어도 하나의 제1 스테이지에 각각 대응하는 적어도 하나의 제1 기계 학습 모델에 기초하여, 격자 데이터, 적어도 하나의 다운-샘플링된 격자 데이터 및 입력 파라미터들로부터 3차원 피처 맵(feature map)을 생성하는 단계, 및 3차원 피처 맵을 후처리함으로써, 환경에서 3차원 구조의 상태를 나타내는 상태 데이터를 생성하는 단계를 포함할 수 있다.
본 개시의 기술적 사상의 일측면에 따른 시스템은, 적어도 하나의 프로세서, 및 적어도 하나의 프로세서에 의해서 실행시, 적어도 하나의 프로세서로 하여금 3차원 모델링 방법을 수행하도록 명령어들을 저장하는 비일시적 저장매체를 포함할 수 있다.
본 개시의 기술적 사상의 일측면에 따른 비일시적 컴퓨터 판독가능 저장 매체는 명령어들을 포함할 수 있고, 명령어들은, 적어도 하나의 프로세서에 의해서 실행시 적어도 하나의 프로세서로 하여금 3차원 모델링 방법을 수행하도록 할 수 있다.
본 개시의 예시적 실시예에 따른 방법 및 시스템에 의하면, 3차원 구조를 고려한 딥 러닝(deep learning)에 기인하여, 낮은 비용 및 높은 정확도로 3차원 구조가 모델링될 수 있다.
또한, 본 개시의 예시적 실시예에 따른 방법 및 시스템에 의하면, 3차원 구조의 모델링에 소요된 적은 자원들 및 시간들에 기인하여, 3차원 구조의 검증이 조기에 완료될 수 있다.
또한, 본 개시의 예시적 실시예에 따른 방법 및 시스템에 의하면, 3차원 모델링은 3차원 시뮬레이터와 호환가능한 결과를 제공할 수 있고, 이에 따라 높은 유용성을 가질 수 있다.
본 개시의 예시적 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 아니하며, 언급되지 아니한 다른 효과들은 이하의 설명으로부터 본 개시의 예시적 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 도출되고 이해될 수 있다. 즉, 본 개시의 예시적 실시예들을 실시함에 따른 의도하지 아니한 효과들 역시 본 개시의 예시적 실시예들로부터 당해 기술분야의 통상의 지식을 가진 자에 의해 도출될 수 있다.
도 1은 본 개시의 예시적 실시예에 따른 3차원 모델링을 나타내는 도면이다.
도 2a 및 도 2b는 본 개시의 예시적 실시예들에 따른 격자 데이터의 예시들을 나타내는 도면들이다.
도 3은 본 개시의 예시적 실시예에 따른 전처리를 나타내는 도면이다.
도 4는 본 개시의 예시적 실시예에 따른 업-샘플링 기반 모델을 나타내는 도면이다.
도 5는 본 개시의 예시적 실시예에 따른 업-샘플링 기반 모델을 나타내는 도면이다.
도 6은 본 개시의 예시적 실시예에 따른 잔차 블록을 나타내는 도면이다.
도 7은 본 개시의 예시적 실시예에 따른 3차원 모델링을 나타내는 도면이다.
도 8은 본 개시의 예시적 실시예에 따른 3차원 모델링을 나타내는 도면이다.
도 9는 본 개시의 예시적 실시예에 따른 다운-샘플링 기반 모델을 나타내는 도면이다.
도 10은 본 개시의 예시적 실시예에 따른 다운-샘플링 기반 모델을 나타내는 도면이다.
도 11은 본 개시의 예시적 실시예에 따른 후처리를 나타내는 도면이다.
도 12a 내지 도 12c는 본 개시의 예시적 실시예들에 따른 3차원 모델링의 예시들을 나타내는 순서도들이다.
도 13은 본 개시의 예시적 실시예에 따른 3차원 모델링을 위한 방법을 나타내는 순서도이다.
도 14는 본 개시의 예시적 실시예에 따른 3차원 모델링을 위한 방법을 나타내는 순서도이다.
도 15는 본 개시의 예시적 실시예에 따른 3차원 모델링을 위한 방법을 나타내는 순서도이다.
도 16은 본 개시의 예시적 실시예에 따른 컴퓨터 시스템을 나타내는 블록도이다.
도 17은 본 개시의 예시적 실시예에 따른 시스템을 나타내는 블록도이다.
도 1은 본 개시의 예시적 실시예에 따른 3차원 모델링(10)을 나타내는 도면이다. 3차원 모델링(10)은 3차원 구조를 나타내는 기하 데이터(D11) 및 3차원 구조의 속성을 결정하는 인자들을 포함하는 입력 파라미터들(D15)을 처리함으로써, 3차원 구조의 속성의 프로파일을 나타내는 속성 프로파일 데이터(D17)를 생성할 수 있다. 본 명세서에서, 반도체 공정을 통해서 형성되는 소자 및 도핑 농도가 3차원 구조 및 속성의 예시들로서 설명될 것이나, 본 개시의 예시적 실시예들이 이에 제한되지 아니하는 점이 유의된다. 도 1에 도시된 바와 같이, 3차원 모델링(10)은 보간(12), 다운-샘플링(14), 전처리(16) 및 적어도 하나의 업-샘플링 기반 모델(18)을 포함할 수 있다.
일부 실시예들에서, 도 1의 3차원 모델링(10)은, 도 16 및 도 17을 참조하여 후술되는 바와 같이 컴퓨팅 시스템에 의해서 수행될 수 있다. 예를 들면, 도 1에 도시된 블록들 각각은 컴퓨팅 시스템에 포함된 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어의 조합에 대응할 수 있다. 하드웨어는, CPU(central processing unit), DSP(digital signal processor), GPU(graphics processing unit)와 같은 프로그램가능(programmable) 컴포넌트, FPGA(field programmable gate array)와 같은 재구성가능(reconfigurable) 컴포넌트 및 IP(intellectual property) 블록과 같은 고정된 기능을 제공하는 컴포넌트 중 적어도 하나를 포함할 수 있다. 소프트웨어는, 프로그램가능 컴포넌트에 의해서 실행가능한 일련의 명령어들 및 컴파일러 등에 의해서 일련의 명령어들로 변환가능한 코드 중 적어도 하나를 포함할 수 있고, 비일시적(non-transitory) 저장 매체에 저장될 수 있다.
기하(geometric) 데이터(D11)는 모델링(또는 시뮬레이션) 대상인 3차원 구조를 나타낼 수 있다. 예를 들면, 기하 데이터(D11)는 시뮬레이터가 3차원 구조의 속성을 시뮬레이션하기 위하여 3차원 구조를 나타내는 데이터일 수 있다. 도 1에 도시된 바와 같이, 기하 데이터(D11)는 불균일한 격자에 따라 3차원 구조를 나타낼 수 있다.
보간(12)은 기하 데이터(D11)로부터 격자 데이터(D12)를 생성할 수 있다. 기계 학습 모델, 즉 후술되는 적어도 하나의 업-샘플링 기반 모델(18)에 의해서 학습되거나 추론가능하도록, 적어도 하나의 업-샘플링 기반 모델(18)에 제공되는 격자 데이터(D12)는 균일한 격자, 즉 동일한 간격을 가지는 격자에 기초할 수 있다. 전술된 바와 같이, 기하 데이터(D11)는 불균일한 격자에 기초할 수 있으므로, 기하 데이터(D11)의 격자가 보간될 수 있고, 이에 따라 균일한 격자를 가지는 격자 데이터(D12)가 생성될 수 있다. 일부 실시예들에서, 격자 데이터(D1)의 격자에서 간격은, 기하 데이터(D11)의 격자에서 최소 간격에 대응할 수 있다. 또한, 일부 실시예들에서, 격자 데이터(D12)는 데카르트 좌표계(Cartesian coordinate system)에 기초할 수 있고, X, Y 및 Z에 각각 대응하는 값들을 포함할 수 있다. 격자 데이터(D12)의 예시들이 도 2a 및 도 2b를 참조하여 후술될 것이다.
다운-샘플링(14)에서, 격자 데이터(D12)가 다운-샘플링될 수 있다. 후술되는 바와 같이, 입력 파라미터들(D15)로부터 생성된 3차원 피처 맵(D16)은 낮은 해상도를 가질 수 있고, 이에 따라 격자 데이터(D12)로부터 다운-샘플링된 격자 데이터(D13, D14)가 적어도 하나의 업-샘플링 기반 모델(18)에 제공될 수 있다. 일부 실시예들에서, 격자 데이터(D12)가 네트워크를(예컨대, 합성곱 신경망)을 통과함으로써 다운-샘플링된 격자 데이터(D13, D14)이 생성될 수 있다. 또한, 일부 실시예들에서, 다운-샘플링(14)은, 맥스 풀링(max pooling), 평균 풀링(average pooling) 등에 기초할 수 있다.
입력 파라미터들(D15)은 3차원 구조의 속성을 결정할 수 있는 인자들을 포함할 수 있다. 예를 들면, 입력 파라미터들(D15)은 반도체 소자의 도핑 프로파일을 결정할 수 있는 공정 파라미터들, 예컨대 도펀트(dopant), 주입량(dose), 주입 기울기(tilt), 주입 에너지, 온도 등을 포함할 수 있다. 일부 실시예들에서, 입력 파라미터들(D15)은 시뮬레이터에 제공되는 것과 동일할 수 있다.
전처리(16)는 입력 파라미터들(D15)로부터 3차원 피처 맵(feature map)을 생성할 수 있다. 입력 파라미터들(D15)은 일련의 값들로서 1차원 데이터에 대응할 수 있다. 3차원 구조의 기하학적 정보를 포함하는 전술된 격자 데이터(D12) 및 격자 데이터(D12)로부터 다운-샘플링된 격자 데이터(D13, D14)와 함께 업-샘플링 기반 모델에 제공되기 위하여, 입력 파라미터들(D15)로부터 3차원 피처 맵(D16)이 생성될 수 있다. 전처리(16)의 예시가 도 3을 참조하여 후술될 것이다.
적어도 하나의 업-샘플링 기반 모델(18)은 격자 데이터(D12), 다운-샘플링된 격자 데이터(D13, D14) 및 3차원 피처 맵(D16)을 수신할 수 있고, 속성 프로파일 데이터(D17)를 출력할 수 있다. 적어도 하나의 업-샘플링 기반 모델(18) 각각은, 기계 학습 모델로서 격자 데이터 및 3차원 피처 맵으로부터 3차원 피처 맵을 출력하도록 트레이닝될 수 있다. 도 4를 참조하여 후술되는 바와 같이, 적어도 하나의 업-샘플링 기반 모델(18)은 일련의 스테이지들을 포함할 수 있고, 일련의 스테이지들 각각은 동일한 구조의 업-샘플링 기반 모델을 포함할 수 있다. 3차원 피처 맵의 해상도는 스테이지를 통과할수록 증가할 수 있다. 예를 들면, 도 1의 예시에서, 3차원 피처 맵(D16)을 수신하는 스테이지(또는 업-샘플링 기반 모델)는 다운-샘플링(14)이 제공하는 가장 낮은 해상도의 격자 데이터를 수신할 수 있고, 최종 스테이지는 이전 스테이지의 출력(즉, 3차원 피처 맵)과 함께 가장 높은 해상도를 가지는 격자 데이터(D12)를 수신할 수 있다. 적어도 하나의 업-샘플링 기반 모델(18)의 예시가 도 4를 참조하여 후술될 것이다.
본 명세서에서, 기계 학습 모델은 트레이닝 가능한 임의의 구조를 가질 수 있다. 예를 들면, 기계 학습 모델은, 인공 신경망(artificial neural network), 결정 트리(decision tree), 서포트 벡터 머신(support vector machine), 베이즈 네트워크(Bayesian network) 및/또는 유전 알고리즘(genetic algorithm) 등을 포함할 수 있다. 이하에서, 기계 학습 모델은 인공 신경망을 주로 참조하여 설명될 것이나, 본 개시의 예시적 실시예들이 이에 제한되지 아니하는 점이 유의된다. 인공 신경망은, 비제한적인 예시로서, CNN(Convolution Neural Network), R-CNN(Region with Convolution Neural Network), RPN(Region Proposal Network), RNN(Recurrent Neural Network), S-DNN(Stacking-based Deep Neural Network), S-SDNN(State-Space Dynamic Neural Network), Deconvolution Network, DBN(Deep Belief Network), RBM(Restricted Boltzmann Machine), Fully Convolutional Network, LSTM(Long Short-Term Memory) Network, Classification Network 등을 포함할 수 있다. 본 명세서에서, 기계 학습 모델은 단순하게 모델로 지칭될 수 있다.
실험 결과에 따르면, 도 1의 3차원 모델링(10)은 시뮬레이터와 거의 유사한 결과, 즉 속성 프로파일 데이터(D17)를 생성할 수 있는 반면, 3차원 모델링(10)에 소요되는 시간은 시뮬레이터의 수행 시간의 약 10만분의 1에 대응할 수 있다. 이에 따라, 3차원 구조는 적은 자원들을 사용하여 빠른 속도로 정확하게 모델링될 수 있고, 또한, 도 7을 참조하여 후술되는 바와 같이, 속성 프로파일 데이터(D17)는 시뮬레이터와 호환가능한 포맷으로 변환될 수 있고, 이에 따라 속성 프로파일 데이터(D17)에 기초한 모델링 및/또는 시뮬레이션이 조기에 완료될 수 있다. 결과적으로, 3차원 구조의 검증이 용이하게 완료될 수 있고, 3차원 구조를 포함하는 제품의 TTM(time-to-market)이 현저하게 단축될 수 있다.
도 2a 및 도 2b는 본 개시의 예시적 실시예들에 따른 격자 데이터의 예시들을 나타내는 도면들이다. 구체적으로, 도 2a 및 도 2b는 3차원 구조의 예시로서 반도체 공정에 의해서 형성된 트랜지스터들 및 트랜지스터의 구조를 정의하기 위한 격자를 함께 나타낸다. 도 1을 참조하여 전술된 바와 같이, 도 2a의 격자 데이터(20a) 및 도 2b의 격자 데이터(20b)는 3차원 구조를 나타내는 기하 데이터(D11)를 보간함으로써 생성될 수 있다. 이하에서, 도 2a 및 도 2b는 도 1을 참조하여 설명될 것이다.
도 2a의 격자 데이터(20a) 및 도 2b의 격자 데이터(20b) 각각은 균일한 간격의 격자에 대응하는 값들을 포함할 수 있다. 예를 들면, 도 2a의 격자 데이터(20a)에서 격자는 제1 간격(S1)을 가질 수 있고, 도 2b의 격자 데이터(20b)에서 격자는 제2 간격(S2)을 가질 수 있다. 도 2a의 격자 데이터(20a)는 제1 길이(L1)를 가지는 트랜지스터를 나타낼 수 있고, 도 2b의 격자 데이터(20b)는 제1 길이(L1)보다 긴 제2 길이(L2)를 가지는 트랜지스터를 나타낼 수 있다(L2>L1).
도 1을 참조하여 전술된 전처리(16) 및 전처리(16)에 의해서 생성된 3차원 피처 맵(D16)이 일정한 크기를 가질 수 있으므로, 적어도 하나의 업-샘플링 기반 모델(18)에 제공되는 격자 데이터(D12) 역시 일정한 크기를 가지도록, 보간(12)은 기하 데이터(D11)가 나타내는 3차원 구조의 크기에 독립적으로 일정한 개수의 격자를 가지는 격자 데이터(D12)를 생성할 수 있다. 이에 따라, 도 2b의 제2 간격(S2)은 도 2a의 제1 간격(S1)보다 클 수 있다(S2>S1).
일부 실시예들에서, 3차원 구조의 일부에 대한 속성이 고려될 수 있다. 예를 들면, 도 2a 및 도 2b에 도시된 바와 같이, 트랜지스터의 기판(substrate)(SUB)에서 도핑 농도가 고려될 수 있다. 본 명세서에서, 도 2a 및 도 2b의 기판(SUN)과 같이, 3차원 구조 중 속성이 고려되는 부분은 관심 영역(region of interest; ROI)로 지칭될 수 있다. 일부 실시예들에서, 보간(12)은 3차원 구조의 관심 영역을 제외한 영역에 대응하는 값들을 일정한 값으로 마스킹할 수 있다. 예를 들면, 격자 데이터(D12)에서 3차원 구조의 관심 영역을 제외한 영역에 대응하는 값들은 보간(12)에서 영(zero)으로 설정될 수 있다.
도 3은 본 개시의 예시적 실시예에 따른 전처리(30)를 나타내는 도면이다. 도 1을 참조하여 전술된 바와 같이, 3차원 구조의 속성을 결정할 수 있는 인자들을 포함하는 입력 파라미터들(D31)은 전처리될 수 있고, 3차원 피처 맵(D32)이 생성될 수 있다.
일부 실시예들에서, 전처리(30)는 네트워크를 포함할 수 있고, 적어도 하나의 레이어를 포함할 수 있다. 예를 들면, 도 3에 도시된 바와 같이, 전처리(30)는 제1 내지 제m 레이어(L1 내지 Lm)를 포함할 수 있고(m는 1보다 큰 정수), 제1 내지 제m 레이어(L1 내지 Lm)는 입력 파라미터들(D31) 또는 이전 레이어의 출력을 처리할 수 있다. 일부 실시예들에서, 제1 내지 제m 레이어(L1 내지 Lm) 각각은 완전 연결된(fully connected) 레이어 또는 덴스(dense) 레이어일 수 있다. 전처리(30)는 도 1의 적어도 하나의 업-샘플링 기반 모델(18)과 함께 트레이닝될 수 있다. 도 1을 참조하여 전술된 바와 같이, 입력 파라미터들(D31)을 전처리함으로써 생성된 3차원 피처 맵(D32)은 낮은 해상도를 가질 수 있다.
도 4는 본 개시의 예시적 실시예에 따른 업-샘플링 기반 모델을 나타내는 도면이다. 구체적으로, 도 4는 도 1의 적어도 하나의 업-샘플링 기반 모델(18)의 예시를 나타낸다. 도 1을 참조하여 전술된 바와 같이, 도 4의 적어도 하나의 업-샘플링 기반 모델(40)에 3차원 피처 맵(D41), 격자 데이터(D42) 및 다운-샘플링된 격자 데이터(D43, D44, D45)가 제공될 수 있고, 속성 프로파일 데이터(D46)가 적어도 하나의 업-샘플링 기반 모델(40)로부터 생성될 수 있다.
도 4를 참조하면, 적어도 하나의 업-샘플링 기반 모델(40)은 일련의 업-샘플링 기반 모델들(41, 42, 43)을 포함할 수 있고, 일련의 업-샘플링 기반 모델들(41, 42, 43) 각각은 동일한 구조를 가질 수 있다. 예를 들면, 첫번째 스테이지의 업-샘플링 기반 모델(41)은 3차원 피처 맵(D41) 및 격자 데이터(D43)를 수신할 수 있고, 격자 데이터(D43)로부터 다운-샘플링된 격자 데이터(D42)를 수신할 수 있다. 두번째 스테이지의 업-샘플링 기반 모델(42)은 첫번째 스테이지의 업-샘플링 기반 모델(41)이 출력한 3차원 피처 맵 및 격자 데이터(D44)를 수신할 수 있고, 격자 데이터(D44)로부터 다운-샘플링된 격자 데이터(D43)를 수신할 수 있다. 최종 스테이지의 업-샘플링 기반 모델(43)은 이전 스테이지의 업-샘플링 기반 모델이 출력한 3차원 피처 맵 및 격자 데이터(D45)를 수신할 수 있고, 격자 데이터(D45)로부터 다운-샘플링된 격자 데이터를 수신할 수 있다. 최종 스테이지의 업-샘플링 기반 모델(43)이 수신하는 격자 데이터(D45)는 가장 높은 해상도를 가질 수 있고, 도 1에서 보간(12)에 의해서 기하 데이터(D11)로부터 생성된 격자 데이터(D12)에 대응할 수 있다.
각 스테이지에서 업-샘플링 기반 모델(예컨대, 41)은, 보다 낮은 해상도의 격자 데이터(D42) 및 보다 높은 해상도의 격자 데이터(D43)에 기초하여, 입력된 3차원 피처 맵(예컨대, D41)보다 높은 해상도의 3차원 피처 맵을 출력할 수 있다. 이에 따라, 도 1의 입력 파라미터들(D15)을 전처리함으로써 생성된 3차원 피처 맵(D41)으로부터 3차원 구조의 속성 프로파일을 나타내는 속성 프로파일 데이터(D46)가 일련의 업-샘플링 기반 모델들에 의해서 생성될 수 있다. 도 5를 참조하여 후술되는 바와 같이, 업-샘플링 기반 모델은 적어도 하나의 잔차 블록(residual block; RB)을 포함할 수 있고, 이에 따라 업-샘플링 기반 잔차 블록(RB)으로 지칭될 수도 있다.
도 5는 본 개시의 예시적 실시예에 따른 업-샘플링 기반 모델(50)을 나타내는 도면이다. 구체적으로, 도 5는 도 4의 적어도 하나의 업-샘플링 기반 모델(40)에 포함된 스테이지들 중 제i 스테이지에 포함된 업-샘플링 기반 모델(50)을 나타낸다(i는 0보다 큰 정수). 도 4를 참조하여 전술된 바와 같이, 업-샘플링 기반 모델(50)은, 보다 낮은 해상도의 3차원 피처 맵(Xi), 보다 낮은 해상도의 격자 데이터(D52) 및 보다 높은 해상도의 격자 데이터(D51)를 수신할 수 있고, 보다 높은 해상도의 3차원 피처 맵(Xi+1)을 출력할 수 있다.
이하에서, 보다 낮은 해상도의 3차원 피처 맵(Xi)은 입력 피처 맵(Xi)으로 지칭될 수 있고, 보다 높은 해상도의 3차원 피처 맵(Xi+1)은 출력 피처 맵(Xi+1)으로 지칭될 수 있다. 또한, 보다 높은 해상도의 격자 데이터(D51)는 제1 격자 데이터(D51)로 지칭될 수 있고, 보다 낮은 해상도의 격자 데이터(D52)는 제2 격자 데이터(D52)로 지칭될 수 있다. 입력 피처 맵(Xi)은, 입력 파라미터들(D15)을 전처리함으로써 생성된 3차원 피처 맵(예컨대, 도 4의 D41) 또는 이전 스테이지에서 출력된 피처 맵일 수 있다. 또한, 출력 피처 맵(Xi+1)은 다음 스테이지에 제공되는 피처 맵 또는 속성 프로파일 데이터(예컨대, 도 4의 D46)일 수 있다.
도 5를 참조하면, 업-샘플링 기반 모델(50)은, 연접(51), 합성곱(53), 업-샘플링(55) 및 일련의 잔차 블록들(57, 59)을 포함할 수 있다. 연접(51)에서, 입력 피처 맵(Xi)의 값들 및 제2 격자 데이터(D52)의 값들이 연접될 수 있다. 도 1 및 도 4를 참조하여 전술된 바와 같이, 제2 격자 데이터(D52)는 입력 피처 맵(Xi)과 동일한 해상도를 가지도록, 제1 격자 데이터(D51)로부터 다운-샘플링될 수 있고, 이에 따라 제2 격자 데이터(D52) 및 입력 피처 맵(Xi)이 연접될 수 있다.
연접(51)의 결과는 합성곱(또는 합성곱 레이어)(53)에 제공될 수 있고, 합성곱(53)의 결과는 업-샘플링(또는 업-샘플링 레이어)(55)에 제공될 수 있다. 업-샘플링(55)은 임의의 방식으로 가능할 수 있고, 예컨대 추가되는 격자들에 값이 복사될 수 있다. 이에 따라, 업-샘플링(55)의 결과는 입력 피처 맵(Xi) 및 제2 격자 데이터(D52)보다 높은 해상도를 가질 수 있다.
업-샘플링(55)의 결과는 일련의 잔차 블록들(57, 59)에 제공될 수 있다. 딥 러닝에서 깊은 네트워크에 기인한 높은 복잡도는 많은 자원들을 요구할 수 있고, 네트워크의 깊이와 네트워크의 성능이 반드시 비례하지 아니할 수 있다. 이러한 문제를 해소하기 위하여, 잔차 학습(residual learning)이 사용될 수 있다. 잔차 학습은 저해상도의 데이터를 고해상도의 데이터에 가산하고, 양 데이터 사이 차이값을 학습하는 것을 지칭할 수 있다. 예를 들면, 논문 "Deep Residual Learning for Image Recognition"에서 제안된 ResNet은 깊은 네트워크를 보다 안정적으로 학습시키기 위하여 네트워크는 복수의 잔차 블록들로 분할될 수 있고, 복수의 잔차 블록들 각각을 스킵 커넥션(skip connection)을 통해 연결함으로써 필터 파라미터들이 보다 용이하게 최적화될 수 있다. 도 5에 도시된 바와 같이, 일련의 잔차 블록들(57, 59) 각각은 이전 잔차 블록의 출력뿐만 아니라 제1 격자 데이터(D51)를 수신할 수 있다. 일련의 잔차 블록들(57, 59) 각각의 예시가 도 6을 참조하여 후술될 것이다.
도 6은 본 개시의 예시적 실시예에 따른 잔차 블록(60)을 나타내는 도면이다. 도 5를 참조하여 전술된 바와 같이, 업-샘플링 기반 모델은 일련의 잔차 블록들을 포함할 수 있고, 일부 실시예들에서 일련의 잔차 블록들 각각은 도 6의 잔차 블록(60)과 동일한 구조를 가질 수 있다. 이하에서, 도 6은 도 5를 참조하여 설명될 것이다.
도 6을 참조하면, 잔차 블록(60)은 입력(Yj) 및 격자 데이터(D60)를 수신할 수 있고, 출력(Yj+1)을 생성할 수 있다. 입력(Yj)은 이전 잔차 블록의 출력 또는 도 5의 업-샘플링(55)의 출력일 수 있다. 출력(Yj+1)은 다음 잔차 블록에 제공되거나 잔차 블록(60)을 포함하는 업-샘플링 기반 모델(50)의 출력(Xi+1)일 수 있다. 도 6에 도시된 바와 같이, 잔차 블록(60)은, 제1 내지 제3 연접들(61, 62, 65), 제1 내지 제3 합성곱들(62, 64, 66) 및 가산기(67)를 포함할 수 있다.
제1 연접(61)에서, 입력(Yj)의 값들 및 격자 데이터(D60)의 값들이 연접될 수 있고, 제1 연접(61)의 결과는 제1 합성곱(62)에 제공될 수 있다. 일부 실시예들에서, 제1 합성곱(62)에서 필터는 1x1의 크기를 가질 수 있고, 제1 합성곱(62)은 제3 합성곱(66)에 포함된 필터들의 개수의 1/4에 해당하는 필터들을 포함할 수 있다. 일부 실시예들에서, 도 6에 도시된 바와 같이, 제1 합성곱(62)의 결과는 정규화(normalization) 및 활성화(activation)될 수 있고, 정규화 및 활성화된 결과가 제2 연접(63)에 제공될 수 있다.
제2 연접(63)에서, 제1 합성곱(62)의 결과 및 격자 데이터(D60)의 값들이 연접될 수 있고, 제2 연접(63)의 결과는 제2 합성곱(64)에 제공될 수 있다. 일부 실시예들에서, 제2 합성곱(64)에서 필터는 3x3의 크기를 가질 수 있고, 제2 합성곱(64)은 제3 합성곱(66)에 포함된 필터들의 개수의 1/4에 해당해는 필터들을 포함할 수 있다. 일부 실시예들에서, 도 6에 도시된 바와 같이, 제2 합성곱(64)의 결과는 정규화 및 활성화될 수 있고, 정규화 및 활성화된 결과가 제3 연접(65)에 제공될 수 있다.
제3 연접(65)에서, 제2 합성곱(64)의 결과 및 격자 데이터(D60)의 값들이 연접될 수 있고, 제3 연접(65)의 결과는 제3 합성곱(66)에 제공될 수 있다. 일부 실시예들에서, 제3 합성곱(66)은 복수의 필터들을 포함할 수 있고, 필터는 1x1의 크기를 가질 수 있다. 일부 실시예들에서, 도 6에 도시된 바와 같이, 제3 합성곱(66)의 결과는 정규화 및 활성화될 수 있고, 정규화 및 활성화된 결과가 가산기(67)에 제공될 수 있다.
가산기(67)는 입력(Yj) 및 제3 합성곱(66)의 출력을 합산할 수 있다. 일부 실시예들에서, 도 6에 도시된 바와 같이, 가산기(67)의 결과는 정규화 및 활성화될 수 있고, 정규화 및 활성화된 결과가 출력(Yj+1)으로서 생성될 수 있다.
도 7은 본 개시의 예시적 실시예에 따른 3차원 모델링을 나타내는 도면이다. 구체적으로, 도 7은 도 1의 3차원 모델링(10)에 의해서 생성된 속성 프로파일 데이터(D71)를 처리함으로써 시뮬레이터에 호환가능한 속성 프로파일 데이터(D73)를 생성하는 동작을 나타낸다. 이하에서, 3차원 모델링에 의해서 생성된 속성 프로파일 데이터(D71)는 제1 프로파일 데이터(D71)로서 지칭될 수 있고, 시뮬레이터에 호환가능한 속성 프로파일 데이터(D73)는 제2 프로파일 데이터(D73)로 지칭될 수 있다.
도 1을 참조하여 전술된 바와 같이, 3차원 구조를 나타내는 기하 데이터(D72)로부터 균일한 격자를 가지는 격자 데이터(D12)가 생성될 수 있다. 3차원 구조의 속성을 나타내는 프로파일 데이터는 조건들에 따른 3차원 구조의 상태를 시뮬레이션(또는 모델링)하는데 사용될 수 있다. 이를 위하여, 프로파일 데이터는 시뮬레이터에 요구되는 포맷을 가질 것이 요구될 수 있고, 예컨대 기하 데이터(D72)와 동일한 격자를 가질 것이 요구될 수 있다. 이에 따라, 기하 데이터(D72)에 기초하여, 보간(70)에서 균일한 격자를 가지는 제1 프로파일 데이터(D71)는 기하 데이터(D72)와 동일한 격자를 가지는 제2 프로파일 데이터(D73)로 변환될 수 있다. 일부 실시예들에서, 제1 프로파일 데이터(D71)의 격자가 기하 데이터(D72)의 최소 격자에 대응하는 경우, 보간(70)에서 다운-샘플링이 수행될 수 있다. 결과적으로, 도 1의 3차원 모델링은 3차원 구조의 속성을 시뮬레이션하는 시뮬레이터를 온전히 대체할 수 있고, 이에 따라 3차원 구조의 속성뿐만 아니라 상태를 검증하는데 소요되는 비용이 현저하게 감소할 수 있다.
도 8은 본 개시의 예시적 실시예에 따른 3차원 모델링(80)을 나타내는 도면이다. 3차원 모델링(10)은 3차원 구조의 속성을 나타내는 속성 프로파일 데이터(D81) 및 3차원 구조의 상태를 결정하는 인자들을 포함하는 입력 파라미터들(D85)을 처리함으로써, 3차원 구조의 상태를 나타내는 상태 데이터(D87) 및 상태 프로파일 데이터(D88)를 생성할 수 있다. 도 8에 도시된 바와 같이, 3차원 모델링(80)은 보간(81), 다운-샘플링(83), 적어도 하나의 다운-샘플링 기반 모델(85), 후처리(87) 및 적어도 하나의 업-샘플링 기반 모델(89)을 포함할 수 있다. 이하에서, 도 8에 대한 설명 중 도 1에 대한 설명과 중복되는 내용은 생략될 것이다.
일부 실시예들에서, 도 8의 3차원 모델링(80)은, 도 16 및 도 17을 참조하여 후술되는 바와 같이, 컴퓨팅 시스템에 의해서 수행될 수 있다. 예를 들면, 도 8에 도시된 블록들 각각은 컴퓨팅 시스템에 포함된 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어의 조합에 대응할 수 있다. 하드웨어는, CPU, DSP, GPU와 같은 프로그램가능 컴포넌트, FPGA와 같은 재구성가능 컴포넌트 및 IP 블록과 같은 고정된 기능을 제공하는 컴포넌트 중 적어도 하나를 포함할 수 있다. 소프트웨어는, 프로그램가능 컴포넌트에 의해서 실행가능한 일련의 명령어들 및 컴파일러 등에 의해서 일련의 명령어들로 변환가능한 코드 중 적어도 하나를 포함할 수 있고, 비일시적 저장 매체에 저장될 수 있다.
속성 프로파일 데이터(D81)는 3차원 구조의 속성을 3차원적에서 나타낼 수 있다. 예를 들면, 속성 프로파일 데이터(D81)는, 도 7을 참조하여 전술된 바와 같이 도 1의 3차원 모델링(10) 및 보간(70)에 의해서 생성되거나, 3차원 구조의 속성을 시뮬레이션하는 시뮬레이터에 의해서 생성될 수 있다. 도 1에 도시된 바와 같이, 속성 프로파일 데이터(D81)는 불균일한 격자에 따라 속성을 3차원에서 나타낼 수 있다.
보간(81)은 속성 프로파일 데이터(D81)로부터 격자 데이터(D82)를 생성할 수 있다. 후술되는 적어도 하나의 다운-샘플링 기반 모델(85)에 의해서 학습되거나 추론가능하도록, 적어도 하나의 다운-샘플링 기반 모델(85)에 제공되는 격자 데이터(D82)는 균일한 격자에 기초할 수 있다. 전술된 바와 같이, 속성 프로파일 데이터(D81)는 불균일한 격자에 기초할 수 있으므로, 속성 프로파일 데이터(D81)의 격자가 보간될 수 있고, 이에 따라 균일한 격자를 가지는 격자 데이터(D82)가 생성될 수 있다. 도 1의 격자 데이터(D12)가 좌표에 대응하는 값들만을 가지는 것과 상이하게, 도 8의 격자 데이터(D82)는 좌표에 대응하는 값들뿐만 아니라 해당 좌표에서의 속성을 나타내는 값을 포함할 수 있다.
다운-샘플링(83)에서, 격자 데이터(D82)가 다운-샘플링될 수 있다. 후술되는 바와 같이, 적어도 하나의 다운-샘플링 기반 모델(85)에서 생성되는 3차원 피처 맵(D86)은 낮은 해상도를 가질 수 있고, 이에 따라 격자 데이터(D82)로부터 다운-샘플링된 격자 데이터(D83, D84)가 적어도 하나의 다운-샘플링 기반 모델(85)에 제공될 수 있다. 일부 실시예들에서, 격자 데이터(D82)가 네트워크(예컨대, 합성곱 신경망)를 통과함으로써 다운-샘플링된 격자 데이터(D83, D84)이 생성될 수 있다. 또한, 일부 실시예들에서, 다운-샘플링(83)은, 맥스 풀링, 평균 풀링 등에 기초하여 수행될 수 있다.
입력 파라미터들(D85)은 3차원 구조의 상태를 결정할 수 있는 인자들을 포함할 수 있다. 예를 들면, 입력 파라미터들(D85)은 반도체 소자에 제공된 전압, 온도 등과 같이 3차원 구조의 환경을 나타내는 파라미터들을 포함할 수 있다. 일부 실시예들에서, 입력 파라미터들(D85)은 시뮬레이터에 제공되는 것과 동일할 수 있다. 속성 프로파일 데이터(D81)가 트랜지스터의 도핑 프로파일을 나타내고, 입력 파라미터들(D85)이 트랜지스터에 인가된 전압들을 나타내는 경우, 상태 데이터(D87)는 트랜지스터의 전류 특성(예컨대, 전압 대 전류 그래프)을 나타낼 수 있고, 상태 프로파일 데이터(D88)는 트랜지스터에서 전자(electron) 및/또는 정공(hole)의 밀도를 나타낼 수 있다.
적어도 하나의 다운-샘플링 기반 모델(85)은 격자 데이터(D82), 다운-샘플링된 격자 데이터(D83, D84) 및 입력 파라미터들(D85)을 수신할 수 있고, 3차원 피처 맵(D86)을 출력할 수 있다. 적어도 하나의 다운-샘플링 기반 모델(85) 각각은, 기계 학습 모델로서 격자 데이터 및 3차원 피처 맵으로부터 3차원 피처 맵을 출력하도록 트레이닝될 수 있다. 도 9를 참조하여 후술되는 바와 같이, 적어도 하나의 다운-샘플링 기반 모델(85)은 일련의 스테이지들을 포함할 수 있고, 일련의 스테이지들 각각은 동일한 구조의 다운-샘플링 기반 모델을 포함할 수 있다. 3차원 피처 맵의 해상도는 스테이지를 통과할수록 감소할 수 있다. 적어도 하나의 다운-샘플링 기반 모델(85)의 예시가 도 9를 참조하여 후술될 것이다.
후처리(87)에 의해서, 3차원 피처 맵(D86)으로부터 상태 데이터(D87)가 생성될 수 있다. 상태 데이터(D87)는 입력 파라미터들(D85)에 대응하는 조건에서 속성 프로파일 데이터(D81)의 속성을 가지는 3차원 구조의 상태를 나타낼 수 있다. 후처리(87)의 예시가 도 11을 참조하여 후술될 것이다.
적어도 하나의 업-샘플링 기반 모델(89)은 3차원 피처 맵(D86)으로부터 상태 프로파일 데이터(D88)를 출력할 수 있다. 예를 들면, 적어도 하나의 업-샘플링 기반 모델(89)은, 도 4의 적어도 하나의 업-샘플링 기반 모델(40)과 동일한 구조를 가질 수 있고, 3차원 피처 맵(D86)뿐만 아니라, 격자 데이터(D82) 및 다운-샘플링된 격자 데이터(D83, D84)를 수신할 수 있다. 3차원 피처 맵(D86)은 주어진 조건에서 3차원 구조의 상태를 나타내는 정보를 포함할 수 있고, 적어도 하나의 업-샘플링 기반 모델(89)은 격자 데이터를 사용하여 3차원 피처 맵(D86)의 해상도를 점진적으로 증가시킴으로써 상태 프로파일 데이터(D88)를 생성할 수 있다.
도 1의 3차원 모델링(10) 및 도 8의 3차원 모델링(80)은 시뮬레이터와 비교할 때 다양한 이점들을 제공할 수 있다. 예를 들면, 3차원 모델링들(10, 80)은 시뮬레이터 보다 낮은 비용(예컨대, 자원들 및 시간)을 소비할 수 있다. 3차원 모델링들(10, 80)은 낮은 비용에 기인하여, 코너(corner) 조건에서 3차원 구조를 용이하게 검증할 수 있고, 이에 따라 3차원 구조에 기인하는 불량이 용이하게 검출할 수 있다. 또한, 시뮬레이터는 결과의 도출에 실패할 수 있는 반면, 3차원 모델링들(10, 80)은 항상 결과를 출력할 수 있다. 또한, 3차원 모델링들(10, 80)은 시뮬레이터와 호환가능한 입력 및 출력을 활용할 수 있고, 정확한 결과를 제공할 수 있다.
도 9는 본 개시의 예시적 실시예에 따른 다운-샘플링 기반 모델을 나타내는 도면이다. 구체적으로, 도 9는 도 8의 적어도 하나의 다운-샘플링 기반 모델(85)의 예시를 나타낸다. 도 8을 참조하여 전술된 바와 같이, 도 9의 적어도 하나의 다운-샘플링 기반 모델(90)에 입력 파라미터들(D91), 격자 데이터(D92) 및 다운-샘플링된 격자 데이터(D93, D94, D95)가 제공될 수 있고, 3차원 피처 맵(D96)이 적어도 하나의 다운-샘플링 기반 모델(90)로부터 생성될 수 있다.
도 9를 참조하면, 적어도 하나의 다운-샘플링 기반 모델(90)은 일련의 다운-샘플링 기반 모델들(91, 92, 93)을 포함할 수 있고, 일련의 업-샘플링 기반 모델들(41, 42, 43) 각각은 동일한 구조를 가질 수 있다. 예를 들면, 첫번째 스테이지의 업-샘플링 기반 모델(91)은 입력 파라미터들(D91) 및 격자 데이터(D92)를 수신할 수 있고, 격자 데이터(D92)로부터 다운-샘플링된 격자 데이터(D93)를 수신할 수 있다. 첫번째 스테이지에서 수신되는 격자 데이터(D92)는 가장 높은 해상도를 가질 수 있고, 도 8에서 보간(81)에 의해서 속성 프로파일 데이터(D81)로부터 생성된 격자 데이터(D82)에 대응할 수 있다. 두번째 스테이지의 업-샘플링 기반 모델(92)은 첫번째 스테이지의 업-샘플링 기반 모델(91)이 출력한 3차원 피처 맵 및 격자 데이터(D93)를 수신할 수 있고, 격자 데이터(D93)로부터 다운-샘플링된 격자 데이터(D94)를 수신할 수 있다. 최종 스테이지의 업-샘플링 기반 모델(93)은 이전 스테이지의 업-샘플링 기반 모델이 출력한 3차원 피처 맵 및 격자 데이터(D95)를 수신할 수 있다.
각 스테이지에서 다운-샘플링 기반 모델(예컨대, 91)은, 보다 높은 해상도의 격자 데이터(D92) 및 보다 낮은 해상도의 격자 데이터(D93)에 기초하여, 입력된 데이터(예컨대, D91)보다 높은 해상도의 3차원 피처 맵을 출력할 수 있다. 이에 따라, 입력 파라미터들(D91)로부터 3차원 구조의 상태를 나타내는 3차원 피처 맵(D96)이 일련의 다운-샘플링 기반 모델들에 의해서 생성될 수 있다. 도 10을 참조하여 후술되는 바와 같이, 다운-샘플링 기반 모델은 적어도 하나의 잔차 블록(RB)을 포함할 수 있고, 이에 따라 다운-샘플링 기반 잔차 블록(RB)으로 지칭될 수도 있다.
도 10은 본 개시의 예시적 실시예에 따른 다운-샘플링 기반 모델(100)을 나타내는 도면이다. 구체적으로, 도 10은 도 9의 적어도 하나의 다운-샘플링 기반 모델(90)에 포함된 스테이지들 중 제k 스테이지에 포함된 다운-샘플링 기반 모델(100)을 나타낸다(k는 0보다 큰 정수). 도 9를 참조하여 전술된 바와 같이, 다운-샘플링 기반 모델(100)은, 보다 높은 해상도의 3차원 피처 맵(Zk), 보다 높은 해상도의 격자 데이터(D101) 및 보다 낮은 해상도의 격자 데이터(D102)를 수신할 수 있고, 보다 낮은 해상도의 3차원 피처 맵(Zk+1)을 출력할 수 있다.
이하에서, 보다 높은 해상도의 3차원 피처 맵(Zk)은 입력 피처 맵(Zk)으로 지칭될 수 있고, 보다 낮은 해상도의 3차원 피처 맵(Zk+1)은 출력 피처 맵(Zk+1)으로 지칭될 수 있다. 또한, 보다 높은 해상도의 격자 데이터(D101)는 제1 격자 데이터(D101)로 지칭될 수 있고, 보다 낮은 해상도의 격자 데이터(D102)는 제2 격자 데이터(D102)로 지칭될 수 있다. 도 10을 참조하면, 다운-샘플링 기반 모델(100)은, 연접(101), 합성곱(103), 다운-샘플링(105) 및 일련의 잔차 블록들(107, 109)을 포함할 수 있다.
연접(101)에서, 입력 피처 맵(Zk)의 값들 및 제1 격자 데이터(D101)의 값들이 연접될 수 있다. 다운-샘플링 기반 모델(100)이 첫번째 스테이지에 포함되는 경우, 입력 피처 맵(Zk)은 1차원의 입력 파라미터들(D91)일 수 있고, 입력 파라미터들(D91)의 값들이 제1 격자 데이터(D101)의 값들 각각에 연접될 수 있다.
연접(101)의 결과는 합성곱(또는 합성곱 레이어)(103)에 제공될 수 있고, 합성곱(103)의 결과는 다운-샘플링(또는 다운-샘플링 레이어)(105)에 제공될 수 있다. 다운-샘플링(105)은 임의의 방식으로 가능할 수 있고, 예컨대 맥스 풀링, 평균 풀링, (합성곱) 신경망 등에 기초할 수 있다. 이에 따라, 다운-샘플링(105)의 결과는 입력 피처 맵(Zk) 및 제1 격자 데이터(D101)보다 낮은 해상도를 가질 수 있다.
업-샘플링(55)의 결과는 일련의 잔차 블록들(107, 109)에 제공될 수 있다. 도 10에 도시된 바와 같이, 일련의 잔차 블록들(107, 109) 각각은 이전 잔차 블록의 출력뿐만 아니라 제2 격자 데이터(D102)를 수신할 수 있다. 일부 실시예들에서, 일련의 잔차 블록들(107, 109) 각각은 도 6을 참조하여 전술된 잔차 블록(60)과 동일한 구조를 가질 수 있다.
도 11은 본 개시의 예시적 실시예에 따른 후처리를 나타내는 도면이다. 도 8을 참조하여 전술된 바와 같이, 후처리(110)에 의해서 3차원 피처 맵(D111)으로부터 상태 데이터(D112)가 생성될 수 있다. 도 11에 도시된 바와 같이, 후처리(110)는 플래트닝(111) 및 네트워크(112)를 포함할 수 있다.
3차원 피처 맵(D111)은 3차원 구조의 상태에 대한 정보를 포함할 수 있고, 네트워크(112)에 제공하기 위하여 플래트닝(111)에서 1차원 데이터로 변환될 수 있다. 네트워크(112)는 제1 내지 제n 레이어(L1 내지 Ln)를 포함할 수 있고(n은 1보다 큰 정수), 제1 내지 제n 레이어(L1 내지 Ln)는 플래트닝된 데이터 또는 이전 레이어의 출력을 처리할 수 있다. 일부 실시예들에서, 제1 내지 제n 레이어(L1 내지 Ln) 각각은 완전 연결된 레이어 또는 덴스 레이어일 수 있다. 네트워크(112)는 도 8의 적어도 하나의 다운-샘플링 기반 모델(85)과 함께 트레이닝될 수 있다. 도 8을 참조하여 전술된 바와 같이, 상태 데이터(D112)는 주어진 조건에서 3차원 구조의 상태(예컨대, 전류 특성)를 나타낼 수 있다.
도 12a 내지 도 12c는 본 개시의 예시적 실시예들에 따른 3차원 모델링의 예시들을 나타내는 순서도들이다. 구체적으로, 도 12a 내지 도 12c의 순서도들은 3차원 모델링의 예시들로서 반도체 소자를 모델링하는 방법의 예시들을 각각 나타낸다.
일부 실시예들에서, 3차원 모델링은 반도체 소자를 시뮬레이션하기 위한 시뮬레이터를 대체할 수 있다. 예를 들면, 도 1의 3차원 모델링(10)은 반도체 공정 조건들로부터 반도체 소자의 도핑 프로파일을 시뮬레이션하기 위한 공정 시뮬레이터를 대체할 수 있고, 도 8의 3차원 모델링(80)은 반도체 소자에 주어진 조건 및 도핑 프로파일로부터 반도체 소자의 상태를 시뮬레이션하기 위한 소자 시뮬레이터를 대체할 수 있다. 이 경우, 도 1의 3차원 모델링(10)은 공정 모델링으로 지칭될 수 있고, 도 8의 3차원 모델링(80)은 소자 모델링으로 지칭될 수 있다.
도 12a를 참조하면, 공정 시뮬레이터 및 소자 시뮬레이터가 모두 3차원 모델링들로 대체될 수 있다. 예를 들면, 공정 조건(D121a)이 공정 모델링(121a)에 제공될 수 있고, 공정 모델링(121a)은 반도체 소자를 나타내는 기하 데이터에 기초하여 도핑 프로파일(D122a)을 생성할 수 있다. 도핑 프로파일(D122a)은 소자 모델링(S1122a)에 제공될 수 있고, 소자 모델링(122a)은 반도체 소자에 주어진 전압들에 기초하여 전압-전류 곡선(D123a) 및 전자/정공 농도 프로파일(D124a)을 생성할 수 있다.
도 12b를 참조하면, 공정 시뮬레이터가 3차원 모델링으로 대체될 수 있다. 예를 들면, 공정 조건(D121b)이 공정 모델링(121b)에 제공될 수 있고, 공정 모델링(121b)은 반도체 소자를 나타내는 기하 데이터에 기초하여 도핑 프로파일(D122b)을 생성할 수 있다. 도핑 프로파일(D122b)은 소자 시뮬레이션(S122b)에 제공될 수 있고, 소자 시뮬레이션(122b)은 반도체 소자에 주어진 전압들에 기초하여 전압-전류 곡선(D123b) 및 전자/정공 농도 프로파일(D124b)을 생성할 수 있다.
도 12c를 참조하면, 소자 시뮬레이터가 3차원 모델링으로 대체될 수 있다. 예를 들면, 공정 조건(D121c)이 공정 시뮬레이션(121c)에 제공될 수 있고, 공정 시뮬레이션(121c)은 반도체 소자를 나타내는 기하 데이터에 기초하여 도핑 프로파일(D122c)을 생성할 수 있다. 도핑 프로파일(D122c)은 소자 모델링(S122c)에 제공될 수 있고, 소자 모델링(122c)은 반도체 소자에 주어진 전압들에 기초하여 전압-전류 곡선(D123c) 및 전자/정공 농도 프로파일(D124c)을 생성할 수 있다.
도 13은 본 개시의 예시적 실시예에 따른 3차원 모델링을 위한 방법을 나타내는 순서도이다. 구체적으로, 도 13의 순서도는 3차원 구조의 속성 프로파일을 도출하는 3차원 모델링을 위한 방법을 나타낸다. 도 13에 도시된 바와 같이, 3차원 모델링을 위한 방법은 복수의 단계들(S110 내지 S150)을 포함할 수 있다. 이하에서, 도 13은 도 1을 참조하여 설명될 것이다.
도 13을 참조하면, 단계 S110에서 기하 데이터(D11) 및 입력 파라미터들(D15)이 획득될 수 있다. 기하 데이터(D11)는 3차원 구조를 나타낼 수 있고, 입력 파라미터들(D15)은 3차원 구조의 속성을 결정하는 인자들을 포함할 수 있다. 일부 실시예들에서, 기하 데이터(D11) 및 입력 파라미터들(D15)은 시뮬레이터에 의해서 생성되거나 시뮬레이터의 입력과 동일할 수 있다.
단계 S120에서, 격자 데이터(D12)가 생성될 수 있다. 딥 러닝에 기초하여 3차원 모델링을 수행하기 위하여, 균일한 격자를 가지는 격자 데이터(D12)가 기하 데이터(D11)로부터 생성될 수 있다. 일부 실시예들에서, 격자 데이터(D12)는 기하 데이터(D11)의 격자의 최소 간격에 대응하는 격자를 가질 수 있고, 기하 데이터(D11)의 격자를 보간함으로써 생성될 수 있다.
단계 S130에서, 격자 데이터(D12)가 다운-샘플링될 수 있다. 입력 파라미터들(D15)로부터 생성된, 후술되는 3차원 피처 맵(D16)은 낮은 해상도를 가질 수 있으므로, 높은 해상도를 가지는 격자 데이터(D12)는 점진적으로 다운-샘플링될 수 있고, 이에 따라 다수의 다운-샘플링된 격자 데이터가 생성될 수 있다.
단계 S140에서, 3차원 피처 맵(D16)이 생성될 수 있다. 3차원의 격자 데이터와 함께 기계 학습 모델에 제공되도록, 1차원의 입력 파라미터들(D15)이 전처리됨으로써 3차원 피처 맵(D16)이 생성될 수 있다.
단계 S150에서, 속성 프로파일 데이터(D17)가 생성될 수 있다. 예를 들면, 단계 S120에서 생성된 격자 데이터(D12), 단계 S130에서 생성된 다운-샘플링된 격자 데이터 및 단계 S140에서 생성된 3차원 피처 맵(D16)은, 적어도 하나의 업-샘플링 기반 모델(18)에 제공될 수 있다. 적어도 하나의 업-샘플링 기반 모델(18)은 격자 데이터 및 3차원 피처 맵에 대응하는 속성 프로파일 데이터를 출력하도록 트레이닝된 상태일 수 있고, 3차원 구조의 속성을 나타내는 속성 프로파일 데이터(D17)를 출력할 수 있다.
단계 S160에서, 속성 프로파일 데이터(D17)가 보간될 수 있다. 단계 S150에서 생성된 속성 프로파일 데이터(D17)는 단계 S120에서 생성된 격자 데이터(D12)와 동일한 격자를 가질 수 있다. 시뮬레이터에 호환가능한 속성 프로파일을 위하여, 속성 프로파일 데이터(D17)는 기하 데이터(D11)에 기초하여, 기하 데이터(D11)와 동일한 격자를 가지도록 보간될 수 있다.
도 14는 본 개시의 예시적 실시예에 따른 3차원 모델링을 위한 방법을 나타내는 순서도이다. 구체적으로, 도 14의 순서도는 주어진 조건에서 3차원 구조의 상태를 도출하는 3차원 모델링을 위한 방법을 나타낸다. 도 14에 도시된 바와 같이, 3차원 모델링을 위한 방법은 복수의 단계들(S210 내지 S260)을 포함할 수 있다. 이하에서, 도 14는 도 8을 참조하여 설명될 것이다.
도 14를 참조하면, 단계 S210에서 속성 프로파일 데이터(D81) 및 입력 파라미터들(D85)이 획득될 수 있다. 속성 프로파일 데이터(D81)는 3차원 구조의 속성을 나타낼 수 있고, 입력 파라미터들(D85)은 3차원 구조의 환경을 나타낼 수 있다. 일부 실시예들에서, 속성 프로파일 데이터(D81)는 도 13의 3차원 모델링 방법 또는 시뮬레이터에 의해서 생성될 수 있다.
단계 S220에서, 격자 데이터(D82)가 생성될 수 있다. 딥 러닝에 기초하여 3차원 모델링을 수행하기 위하여, 균일한 격자를 가지는 격자 데이터(D82)가 속성 프로파일 데이터(D81)로부터 생성될 수 있다. 일부 실시예들에서, 격자 데이터(D82)는 속성 프로파일 데이터(D81)의 격자의 최소 간격에 대응하는 격자를 가질 수 있고, 속성 프로파일 데이터(D81)의 격자를 보간함으로서 생성될 수 있다.
단계 S230에서, 격자 데이터(D82)가 다운-샘플링될 수 있다. 낮은 해상도를 가지는, 후술되는 3차원 피처 맵(D86)을 생성하기 위하여, 높은 해상도를 가지는 격자 데이터(D82)는 다운-샘플링될 수 있고, 이에 따라 다수의 다운-샘플링된 격자 데이터가 생성될 수 있다.
단계 S240에서, 3차원 피처 맵(D86)이 생성될 수 있다. 예를 들면, 입력 파라미터들(D85), 단계 S220에서 생성된 격자 데이터(D82) 및 단계 S230에서 생성된 다운-샘플링된 격자 데이터는, 적어도 하나의 다운-샘플링 기반 모델(85)에 제공될 수 있다. 적어도 하나의 다운-샘플링 기반 모델(85)은 격자 데이터 및 입력 파라미터들(D85)에 대응하는 3차원 피처 맵(D86)을 출력하도록 트레이닝된 상태일 수 있고, 3차원 구조의 상태를 나타내는 3차원 피처 맵(D86)을 출력할 수 있다.
단계 S250에서, 상태 데이터(D87)가 생성될 수 있다. 예를 들면, 단계 S240에서 생성된 3차원 피처 맵(D86)이 후처리됨으로써 상태 데이터(D87)가 생성될 수 있다. 일부 실시예들에서, 3차원 피처 맵(D86)은 1차원 데이터로 플래트닝될 수 있고, 플래트닝된 데이터가 일련의 완전 연결된 레이어들을 통과함으로써 상태 데이터(D87)가 생성될 수 있다.
단계 S260에서, 상태 프로파일 데이터(D88)가 생성될 수 있다. 상태 프로파일 데이터(D88)는 3차원 구조의 상태를 3차원에서 나타낼 수 있고, 이에 따라 단계 S240에서 생성된 3차원 피처 맵(D86)은 적어도 하나의 다운-샘플링 기반 모델(85)에 제공될 수 있다. 적어도 하나의 다운-샘플링 기반 모델(85)은 3차원 피처 맵(D86) 및 격자 데이터에 기초하여 높은 해상도를 가지는 상태 프로파일 데이터(D88)를 생성할 수 있다. 일부 실시예들에서, 상태 프로파일 데이터(D88)는 불균일한 격자를 가지는 속성 프로파일 데이터(D210)에 기초하여, 불균일한 격자를 가지도록 보간될 수 있고, 이에 따라 시뮬레이터에 호환가능한 상태 프로파일 데이터가 생성될 수 있다.
도 15는 본 개시의 예시적 실시예에 따른 3차원 모델링을 위한 방법을 나타내는 순서도이다. 구체적으로, 도 15의 순서도는 3차원 모델링에 사용된 기계 학습 모델을 트레이닝하는 방법을 나타낸다. 일부 실시예들에서, 도 15의 방법은, 도면들을 참조하여 전술된 임의의 기계 학습 모델을 트레이닝하는데 사용될 수 있다. 도 15에 도시된 바와 같이, 3차원 모델링을 위한 방법은 단계 S320 및 단계 S340을 포함할 수 있다.
도 15를 참조하면, 단계 S15에서 평균 및 분산에 기초하여 손실 함수(loss function)이 계산될 수 있다. 일부 실시예들에서, 3차원 모델링에 사용된 모델들은 특정 분포를 따르도록 트레이닝될 수 있다. 예를 들면, MC(Monte Carlo)에 기초한 시뮬레이터의 출력은 가우시안(Gaussian) 분포를 따를 수 있고, 모델의 트레이닝에 사용되는 손실 함수(loss function) f(x)는 아래 [수학식 1]과 같이 정의될 수 있다.
Figure pat00001
[수학식 1]에서, x는 3차원 모델링의 출력이고, u(x)는 3차원 모델링의 출력들의 평균이고, σ2(x)는 3차원 모델링의 출력들의 분산이고, y는 트레이닝 데이터(예컨대, 시뮬레이터의 출력)이다. 이에 따라, [수학식 1]과 같이 정의되는 손실 함수를 사용하여 트레이닝된 기계 학습 모델들을 포함하는 3차원 모델링의 출력은 가우시안 분포를 따를 수 있다.
단계 S340에서, 관심 영역을 제외한 영역에 대응하는 손실 함수는 영(zero)으로 설정될 수 있다. 예를 들면, 도 2a 및 도 2b를 참조하여 전술된 바와 같이, 3차원 구조에서 속성이나 상태가 고려되는 부분, 즉 관심 영역이 있을 수 있고, 관심 영역을 제외한 영역이 트레이닝에 영향을 미치지 아니하도록, 관심 영역을 제외한 영역에 대응하는 손실 함수의 값이 영(zero)으로 설정될 수 있다. 예를 들면, 도 2a 및 도 2b를 참조하여 전술된 바와 같이, 관심 영역을 제외한 영역에 대응하는 값이 영(zero)으로 마스킹된 경우, [수학식 1]에서 y가 영(zero)이면, 손실 함수 f(x)는 x에 무관하게 영(zero)으로 설정될 수 있다.
도 16은 본 개시의 예시적 실시예에 따른 컴퓨터 시스템(160)을 나타내는 블록도이다. 일부 실시예들에서, 도 16의 컴퓨터 시스템(160)은 도면들을 참조하여 전술된 3차원 모델링에 사용된 기계 학습 모델들의 트레이닝을 수행할 수 있고, 3차원 모델링 시스템 또는 트레이닝 시스템 등으로 지칭될 수 있다.
컴퓨터 시스템(160)은 범용 또는 특수 목적 컴퓨팅 시스템을 포함하는 임의의 시스템을 지칭할 수 있다. 예를 들면, 컴퓨터 시스템(160)은 퍼스널 컴퓨터, 서버 컴퓨터, 랩탑 컴퓨터, 가전 제품 등을 포함할 수 있다. 도 16에 도시된 바와 같이, 컴퓨터 시스템(160)은, 적어도 하나의 프로세서(161), 메모리(162), 스토리지 시스템(163), 네트워크 어댑터(164), 입출력 인터페이스(165) 및 디스플레이(166)를 포함할 수 있다.
적어도 하나의 프로세서(161)는, 컴퓨터 시스템 실행가능 명령어를 포함하는 프로그램 모듈을 실행할 수 있다. 프로그램 모듈은 특정 작업을 수행하거나 특정 추상 데이터 유형을 구현하는, 루틴들, 프로그램들, 객체들, 컴포넌트들, 로직, 데이터 구조 등을 포함할 수 있다. 메모리(162)는 RAM(random access memory)와 같은 휘발성 메모리 형태의 컴퓨터 시스템 판독 가능 매체를 포함할 수 있다. 적어도 하나의 프로세서(161)는 메모리(162)에 액세스할 수 있고, 메모리(162)에 로딩된 명령어들을 실행할 수 있다. 저장 시스템(163)은 비휘발적으로 정보를 저장할 수 있고, 일부 실시예들에서 도면들을 참조하여 전술된 3차원 모델링을 위한 기계 학습 모델들의 트레이닝을 수행하도록 구성된 프로그램 모듈을 포함하는 적어도 하나의 프로그램 제품을 포함할 수 있다. 프로그램은 비제한적인 예시로서, 운영 체제(operating system), 적어도 하나의 어플리케이션, 기타 프로그램 모듈들 및 프로그램 데이터를 포함할 수 있다.
네트워크 어댑터(164)는, LAN(local area network), WAN(wide area network) 및/또는 공용 네트워크(예컨대, 인터넷) 등에 대한 접속을 제공할 수 있다. 입출력 인터페이스(165)는, 키보드, 포인팅 장치, 오디오 시스템 등과 같은 주변장치와의 통신 채널을 제공할 수 있다. 디스플레이(166)는 사용자가 확인할 수 있도록 다양한 정보를 출력할 수 있다.
일부 실시예들에서, 도면들을 참조하여 전술된 3차원 모델링을 위한 기계 학습 모델들의 트레이닝은 컴퓨터 프로그램 제품으로 구현될 수 있다. 컴퓨터 프로그램 제품은 적어도 하나의 프로세서(161)가 이미지 처리 및/또는 모델들의 트레이닝을 수행하게하기 위한 컴퓨터 판독가능 프로그램 명령어들을 포함하는 비일시적 컴퓨터 판독가능 매체(또는 저장 매체)를 포함할 수 있다. 컴퓨터 판독가능 명령어는 비제한적인 예시로서, 어셈블러 명령어, ISA(instruction set architecture) 명령어, 기계 명령어, 기계 종속 명령어, 마이크로 코드, 펌웨어 명령어, 상태 설정 데이터, 또는 적어도 하나의 프로그래밍 언어로 작성된 소스 코드 또는 객체 코드일 수 있다.
컴퓨터 판독가능 매체는, 적어도 하나의 프로세서(161) 또는 임의의 명령어 실행가능 장치에 의해서 실행되는 명령어들을 비일시적으로 보유하고 저장할 수 있는 임의의 유형의 매체일 수 있다. 컴퓨터 판독가능 매체는, 전자 저장 장치, 자기 저장 장치, 광학 저장 장치, 전자기 저장 장치, 반도체 저장 장치, 또는 이들의 임의의 조합일 수 있으나, 이에 제한되지 아니한다. 예를 들면, 컴퓨터 판독가능 매체는, 휴대용 컴퓨터 디스켓, 하드 디스크, RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable read only memory), 플래시 메모리, SRAM(static random access memory), CD, DVD, 메모리 스틱, 플로피 디스크, 펀치 카드와 같이 기계적으로 인코딩된 장치 또는 이들의 임의의 조합일 수 있다.
도 17은 본 개시의 예시적 실시예에 따른 시스템(170)을 나타내는 블록도이다. 일부 실시예들에서, 본 개시의 예시적 실시예에 따른 3차원 모델링은 시스템(170)에서 실행될 수 있다. 이에 따라, 시스템(170)은 낮은 복잡도를 가질 수 있고, 정확한 결과를 신속하게 생성할 수 있다.
도 17을 참조하면, 시스템(170)은 적어도 하나의 프로세서(171), 메모리(173), AI(Artificial Intelligence) 가속기(175) 및 하드웨어 가속기(177)를 포함할 수 있고, 적어도 하나의 프로세서(171), 메모리(173), AI 가속기(175) 및 하드웨어 가속기(177)는 버스(179)를 통해서 상호 통신할 수 있다. 일부 실시예들에서, 적어도 하나의 프로세서(171), 메모리(173), AI 가속기(175) 및 하드웨어 가속기(177)는 하나의 반도체 칩에 포함될 수도 있다. 또한, 일부 실시예들에서, 적어도 하나의 프로세서(171), 메모리(173), AI 가속기(175) 및 하드웨어 가속기(177) 중 적어도 2개는 기판(board)에 장착된 2이상의 반도체 칩들에 각각 포함될 수도 있다.
적어도 하나의 프로세서(171)는 명령어들을 실행할 수 있다. 예를 들면, 적어도 하나의 프로세서(171)는 메모리(173)에 저장된 명령어들을 실행함으로써 운영 체제(operating system)를 실행할 수도 있고, 운영 체제 상에서 실행되는 어플리케이션들을 실행할 수도 있다. 일부 실시예들에서, 적어도 하나의 프로세서(171)는 명령어들을 실행함으로써, AI 가속기(175) 및/또는 하드웨어 가속기(177)에 작업을 지시할 수 있고, AI 가속기(175) 및/또는 하드웨어 가속기(177)로부터 작업의 수행 결과를 획득할 수도 있다. 일부 실시예들에서, 적어도 하나의 프로세서(171)는 특정한 용도를 위하여 커스텀화된 ASIP(Application Specific Instruction set Processor)일 수 있고, 전용의 명령어 세트(instruction set)를 지원할 수도 있다.
메모리(173)는 데이터를 저장하는 임의의 구조를 가질 수 있다. 예를 들면, 메모리(173)는, DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory) 등과 같은 휘발성 메모리 장치를 포함할 수도 있고, 플래시 메모리, RRAM(Resistive Random Access Memory) 등과 같은 비휘발성 메모리 장치를 포함할 수도 있다. 적어도 하나의 프로세서(171), AI 가속기(175) 및 하드웨어 가속기(177)는 버스(179)를 통해서 메모리(173)에 데이터(예컨대, 도 2의 IN, IMG_I, IMG_O, OUT)를 저장하거나 메모리(173)로부터 데이터(예컨대, 도 2의 IN, IMG_I, IMG_O, OUT)를 독출할 수 있다.
AI 가속기(175)는 AI 어플리케이션들을 위해 설계된 하드웨어를 지칭할 수 있다. 일부 실시예들에서, AI 가속기(175)는 뉴로모픽(neuromorphic) 구조를 구현하기 위한 NPU(Neural Processing Unit)를 포함할 수 있고, 적어도 하나의 프로세서(171) 및/또는 하드웨어 가속기(177)로부터 제공된 입력 데이터를 처리함으로써 출력 데이터를 생성할 수 있고, 적어도 하나의 프로세서(171) 및/또는 하드웨어 가속기(177)에 출력 데이터를 제공할 수 있다. 일부 실시예들에서, AI 가속기(175)는 프로그램가능할 수 있고, 적어도 하나의 프로세서(171) 및/또는 하드웨어 가속기(177)에 의해서 프로그램될 수 있다.
하드웨어 가속기(177)는 특정 작업을 고속으로 수행하기 위하여 설계된 하드웨어를 지칭할 수 있다. 예를 들면, 하드웨어 가속기(177)는 복조, 변조, 부호화, 복호화 등과 같은 데이터 변환을 고속으로 수행하도록 설계될 수 있다. 하드웨어 가속기(177)는 프로그램가능할 수 있고, 적어도 하나의 프로세서(171) 및/또는 하드웨어 가속기(177)에 의해서 프로그램될 수 있다.
일부 실시예들에서, AI 가속기(175)는 도면들을 참조하여 전술된 기계 학습 모델들을 실행할 수 있다. 예를 들면, AI 가속기(175)는 전술된 레이어들 각각을 실행할 수 있다. AI 가속기(175)는 입력 파라미터, 피처 맵 등을 처리함으로써 유용한 정보를 포함하는 출력을 생성할 수 있다. 또한, 일부 실시예들에서 AI 가속기(175)가 실행하는 모델들 중 적어도 일부는, 적어도 하나의 프로세서(171) 및/또는 하드웨어 가속기(177)에 의해서 실행될 수도 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다.

Claims (20)

  1. 3차원 구조를 나타내는 기하(geometric) 데이터 및 상기 3차원 구조의 속성을 결정하는 인자들을 포함하는 입력 파라미터들을 획득하는 단계;
    상기 기하 데이터로부터 격자(grid) 데이터를 생성하는 단계;
    상기 격자 데이터로부터 다운-샘플링된(down-sampled) 격자 데이터를 순차적으로 생성하는 단계;
    상기 입력 파라미터들을 전처리함으로써 3차원 피처 맵(feature map)을 생성하는 단계; 및
    적어도 하나의 스테이지에 각각 대응하는 적어도 하나의 기계 학습 모델에 기초하여, 상기 적어도 하나의 다운-샘플링된 격자 데이터 및 상기 3차원 피처 맵으로부터 상기 3차원 구조에서 상기 속성의 프로파일을 나타내는 속성 프로파일 데이터를 생성하는 단계를 포함하는 3차원 모델링 방법.
  2. 청구항 1에 있어서,
    상기 격자 데이터를 생성하는 단계는, 동일한 간격을 가지도록 상기 기하 데이터의 격자를 보간(interpolation)하는 단계를 포함하는 것을 특징으로 하는 3차원 모델링 방법.
  3. 상기 간격은, 상기 기하 데이터의 격자에서 최소 간격에 대응하는 것을 특징으로 하는 3차원 모델링 방법.
  4. 청구항 1에 있어서,
    상기 격자 데이터를 생성하는 단계는, 상기 3차원 구조의 관심 영역을 제외한 영역에 대응하는 값들을 영(zero)으로 설정하는 단계를 포함하는 3차원 모델링 방법.
  5. 청구항 1에 있어서,
    상기 적어도 하나의 다운-샘플링된 격자 데이터를 순차적으로 생성하는 단계는, 제1 격자 데이터를 다운 샘플링함으로써 제2 격자 데이터를 생성하는 단계를 포함하고,
    상기 속성 프로파일 데이터를 생성하는 단계는,
    이전 스테이지의 출력 데이터, 상기 제1 격자 데이터 및 상기 제2 격자 데이터에 기초하여, 제1 기계 학습 모델을 실행하는 단계; 및
    상기 제1 기계 학습 모델의 출력 데이터를 다음 스테이지에 제공하는 단계를 포함하는 것을 특징으로 하는 3차원 모델링 방법.
  6. 청구항 5에 있어서,
    상기 제1 기계 학습 모델을 실행하는 단계는,
    상기 이전 스테이지의 출력 데이터 및 상기 제2 격자 데이터를 연접(concatenation)하는 단계;
    연접된 데이터에 기초하여 합성곱(convolution) 레이어를 실행하는 단계;
    상기 합성곱 레이어의 출력 데이터를 업-샘플링(up-sampling)하는 단계; 및
    업-샘플링된 데이터 및 상기 제1 격자 데이터에 기초하여, 일련의 잔차(residual) 블록들을 실행하는 단계를 포함하는 것을 특징으로 하는 3차원 모델링 방법.
  7. 청구항 6에 있어서,
    상기 일련의 잔차 블록들을 실행하는 단계는, 제1 잔차 블록을 실행하는 단계를 포함하고,
    상기 제1 잔차 블록을 실행하는 단계는,
    상기 이전 스테이지의 출력 데이터 및 상기 제1 격자 데이터를 연접함으로써 제1 데이터를 생성하는 단계;
    상기 제1 데이터에 기초하여 제1 합성곱 레이어를 실행하는 단계;
    상기 제1 합성곱 레이어의 출력 데이터 및 상기 제1 격자 데이터를 연접함으로써 제2 데이터를 생성하는 단계;
    상기 제2 데이터에 기초하여 제2 합성곱 레이어를 실행하는 단계;
    상기 제2 합성곱 레이어의 출력 데이터 및 상기 제1 격자 데이터를 연접함으로써 제3 데이터를 생성하는 단계;
    상기 제3 데이터에 기초하여 제3 합성곱 레이어를 실행하는 단계; 및
    상기 이전 스테이지의 출력 데이터 및 상기 제3 합성곱 레이어의 출력 데이터를 가산하는 단계를 포함하는 것을 특징으로 하는 3차원 모델링 방법.
  8. 청구항 1에 있어서,
    손실 함수에 기초하여, 상기 적어도 하나의 기계 학습 모델을 트레이닝하는 단계를 더 포함하고,
    상기 손실 함수는, 상기 속성 프로파일 데이터의 평균 및 분산에 기초한 것을 특징으로 하는 3차원 모델링 방법.
  9. 청구항 8에 있어서,
    상기 적어도 하나의 기계 학습 모델을 트레이닝하는 단계는, 상기 3차원 구조의 관심 영역을 제외한 영역에 대응하는 데이터에 대하여 손실 함수를 영(zero)으로 설정하는 단계를 포함하는 것을 특징으로 하는 3차원 모델링 방법.
  10. 청구항 1에 있어서,
    상기 3차원 구조는, 집적 회로의 소자에 대응하고,
    상기 입력 파라미터들은, 상기 집적 회로의 제조시 사용되는 공정 파라미터들이고,
    상기 속성 프로파일 데이터는, 상기 소자에서 도핑 프로파일을 나타내는 것을 특징으로 하는 3차원 모델링 방법.
  11. 청구항 1에 있어서,
    상기 속성 프로파일 데이터의 격자를 보간함으로써 상기 기하 데이터의 격자에 대응하는 프로파일 데이터를 생성하는 단계를 더 포함하는 3차원 모델링 방법.
  12. 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 의해서 실행시, 상기 적어도 하나의 프로세서로 하여금 청구항 1의 3차원 모델링 방법을 수행하도록 명령어들을 저장하는 비일시적 저장매체를 포함하는 시스템.
  13. 명령어들을 포함하는 비일시적 컴퓨터 판독가능 저장 매체로서,
    상기 명령어들은, 적어도 하나의 프로세서에 의해서 실행시 상기 적어도 하나의 프로세서로 하여금 청구항 1의 3차원 모델링 방법을 수행하도록 하는 것을 특징으로 하는 비일시적 컴퓨터 판독가능 저장 매체.
  14. 3차원 구조의 속성의 프로파일을 나타내는 속성 프로파일 데이터 및 상기 3차원 구조의 환경을 나타내는 입력 파라미터들을 획득하는 단계;
    상기 속성 프로파일 데이터로부터 격자(grid) 데이터를 생성하는 단계;
    상기 격자 데이터로부터 적어도 하나의 다운-샘플링된(down-sampled) 격자 데이터를 순차적으로 생성하는 단계;
    적어도 하나의 제1 스테이지에 각각 대응하는 적어도 하나의 제1 기계 학습 모델에 기초하여, 상기 격자 데이터, 상기 적어도 하나의 다운-샘플링된 격자 데이터 및 상기 입력 파라미터들로부터 3차원 피처 맵(feature map)을 생성하는 단계; 및
    상기 3차원 피처 맵을 후처리함으로써, 상기 환경에서 상기 3차원 구조의 상태를 나타내는 상태 데이터를 생성하는 단계를 포함하는 3차원 모델링 방법.
  15. 청구항 14에 있어서,
    상기 적어도 하나의 다운-샘플링된 격자 데이터를 순차적으로 생성하는 단계는, 제1 격자 데이터를 다운 샘플링함으로써 제2 격자 데이터를 생성하는 단계를 포함하고,
    상기 속성 프로파일 데이터를 생성하는 단계는,
    이전 제1 스테이지의 출력 데이터, 상기 제1 격자 데이터 및 상기 제2 격자 데이터에 기초하여, 제1 기계 학습 모델을 실행하는 단계; 및
    상기 제1 기계 학습 모델의 출력 데이터를 다음 제1 스테이지에 제공하는 단계를 포함하는 것을 특징으로 하는 3차원 모델링 방법.
  16. 청구항 15에 있어서,
    상기 제1 기계 학습 모델을 실행하는 단계는,
    상기 이전 제1 스테이지의 출력 데이터 및 상기 제1 격자 데이터를 연접(concatenation)하는 단계;
    연접된 데이터에 기초하여 합성곱(convolution) 레이어를 실행하는 단계;
    상기 합성곱 레이어의 출력 데이터를 다운-샘플링(down-sampling)하는 단계; 및
    다운-샘플링된 데이터 및 상기 제2 격자 데이터에 기초하여, 일련의 잔차(residual) 블록들을 실행하는 단계를 포함하는 것을 특징으로 하는 3차원 모델링 방법.
  17. 청구항 14에 있어서,
    상기 3차원 구조는, 집적 회로의 소자에 대응하고,
    상기 속성 프로파일 데이터는, 상기 소자에서 도핑 프로파일을 나타내고,
    상기 입력 파라미터들은, 상기 소자에 인가된 전압들을 나타내고,
    상기 상태 데이터는, 상기 소자의 전압 및 전류 특성을 나타내는 것을 특징으로 하는 3차원 모델링 방법.
  18. 청구항 14에 있어서,
    적어도 하나의 제2 스테이지에 각각 대응하는 적어도 하나의 제2 기계 학습 모델에 기초하여, 상기 적어도 하나의 다운-샘플링된 격자 데이터 및 상기 3차원 피처 맵 및 로부터 상기 3차원 구조의 상태의 프로파일을 나타내는 상태 프로파일 데이터를 생성하는 단계를 더 포함하는 3차원 모델링 방법.
  19. 청구항 18에 있어서,
    상기 적어도 하나의 다운-샘플링된 격자 데이터를 순차적으로 생성하는 단계는, 제1 격자 데이터를 다운 샘플링함으로써 제2 격자 데이터를 생성하는 단계를 포함하고,
    상기 상태 프로파일 데이터를 생성하는 단계는,
    이전 제2 스테이지의 출력 데이터, 상기 제1 격자 데이터 및 상기 제2 격자 데이터에 기초하여, 제2 기계 학습 모델을 실행하는 단계; 및
    상기 제2 기계 학습 모델의 출력 데이터를 다음 제2 스테이지에 제공하는 단계를 포함하는 것을 특징으로 하는 3차원 모델링 방법.
  20. 청구항 18에 있어서,
    상기 3차원 구조는, 집적 회로의 소자에 대응하고,
    상기 속성 프로파일 데이터는, 상기 소자에서 도핑 프로파일을 나타내고,
    상기 입력 파라미터들은, 상기 소자에 인가된 전압들을 나타내고,
    상기 상태 프로파일 데이터는, 상기 소자에서 정공 및/또는 전자 프로파일을 나타내는 것을 특징으로 하는 3차원 모델링 방법.
KR1020210149022A 2021-11-02 2021-11-02 3차원 모델링을 위한 방법 및 시스템 KR20230063688A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020210149022A KR20230063688A (ko) 2021-11-02 2021-11-02 3차원 모델링을 위한 방법 및 시스템
US17/972,809 US20230136021A1 (en) 2021-11-02 2022-10-25 Method and system for three-dimensional modeling
EP22203552.9A EP4174713A1 (en) 2021-11-02 2022-10-25 Method and system for three-dimensional modeling
TW111141112A TW202329042A (zh) 2021-11-02 2022-10-28 三維建模方法、三維建模系統和非暫態電腦可讀取儲存媒體
CN202211357538.9A CN116071516A (zh) 2021-11-02 2022-11-01 用于三维建模的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210149022A KR20230063688A (ko) 2021-11-02 2021-11-02 3차원 모델링을 위한 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR20230063688A true KR20230063688A (ko) 2023-05-09

Family

ID=83996799

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210149022A KR20230063688A (ko) 2021-11-02 2021-11-02 3차원 모델링을 위한 방법 및 시스템

Country Status (5)

Country Link
US (1) US20230136021A1 (ko)
EP (1) EP4174713A1 (ko)
KR (1) KR20230063688A (ko)
CN (1) CN116071516A (ko)
TW (1) TW202329042A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI819989B (zh) * 2023-05-17 2023-10-21 台達電子工業股份有限公司 三維物件的建模裝置及建模方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3441819A1 (en) * 2017-08-07 2019-02-13 ASML Netherlands B.V. Computational metrology
US11693386B2 (en) * 2019-08-27 2023-07-04 Samsung Eleotronics Co., Ltd. Method and electronic device for guiding semiconductor manufacturing process
CN113536661B (zh) * 2021-06-15 2022-12-13 西安电子科技大学 基于神经网络的tfet器件结构优化和性能预测方法

Also Published As

Publication number Publication date
TW202329042A (zh) 2023-07-16
EP4174713A1 (en) 2023-05-03
CN116071516A (zh) 2023-05-05
US20230136021A1 (en) 2023-05-04

Similar Documents

Publication Publication Date Title
JP7246392B2 (ja) ニューラルネットワークの関数サブネットワークの同時トレーニング
JP6657137B2 (ja) 情報処理装置、情報処理方法、及びプログラム
CN111428457B (zh) 数据表的自动格式化
CN112508186A (zh) 训练用于图像识别的神经网络的方法和神经网络设备
CN112640037A (zh) 学习装置、推理装置、学习模型的生成方法及推理方法
EP4174713A1 (en) Method and system for three-dimensional modeling
US11853661B2 (en) Systems and methods for machine learning based fast static thermal solver
CN113239646A (zh) 一种基于等效粗糙度风电场建模方法、介质和设备
US10127333B2 (en) Embedded frequency based search and 3D graphical data processing
US11900514B2 (en) Digital content editing using a procedural model
US7933449B2 (en) Pattern recognition method
JP2016066378A (ja) 半導体装置および情報処理方法
KR102441442B1 (ko) 그래프 컨볼루션 네트워크 학습 방법 및 장치
JP2023088603A (ja) 機械学習プログラム、機械学習方法および情報処理装置
KR20220096966A (ko) 학생 친화적 교사 모델 및 학생 모델의 학습을 위한 시스템 및 방법
JP2022106186A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
KR20230112437A (ko) 산포 기반 레이아웃 시뮬레이션 및 검증을 위한 방법 및 시스템
US9223927B2 (en) Modeling system, method of modeling semiconductor device, computer-readable recording medium comprising program for performing the method
TW202405688A (zh) 半導體裝置模擬系統、模擬半導體裝置的方法以及電腦系統
KR20230112438A (ko) 패턴 클러스터링을 위한 방법 및 시스템
JP2015184775A (ja) 次元削減装置、方法及びプログラム
KR20220085642A (ko) 변형가능 컨벌루션 네트워크를 정적 계산 기법을 사용하여 최적화한 BSDCN(Bounded Static Deformable Convolution Network)의 학습 방법 및 학습 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치
KR20240073332A (ko) 화학구조식의 객체 다변화에 의한 학습데이터 생성 장치 및 방법
CN118133574A (zh) 一种sram生成系统
KR20230052450A (ko) 딥 러닝 기반의 반도체 소자의 특성 예측 방법 및 이를 수행하는 컴퓨팅 장치