KR20240052351A - 심층 강화 학습을 사용하는 레이아웃 설계 시스템 및 그것의 학습 방법 - Google Patents

심층 강화 학습을 사용하는 레이아웃 설계 시스템 및 그것의 학습 방법 Download PDF

Info

Publication number
KR20240052351A
KR20240052351A KR1020220132289A KR20220132289A KR20240052351A KR 20240052351 A KR20240052351 A KR 20240052351A KR 1020220132289 A KR1020220132289 A KR 1020220132289A KR 20220132289 A KR20220132289 A KR 20220132289A KR 20240052351 A KR20240052351 A KR 20240052351A
Authority
KR
South Korea
Prior art keywords
layout
action
reinforcement learning
pattern
deep reinforcement
Prior art date
Application number
KR1020220132289A
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 KR1020220132289A priority Critical patent/KR20240052351A/ko
Priority to US18/124,992 priority patent/US20240126971A1/en
Priority to CN202311328999.8A priority patent/CN117892676A/zh
Publication of KR20240052351A publication Critical patent/KR20240052351A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • 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/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2117/00Details relating to the type or aim of the circuit design
    • G06F2117/12Sizing, e.g. of transistors or gates

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Architecture (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

본 발명에 따른 반도체 공정의 타깃 레이아웃을 보정하기 위한 레이아웃 최적화 시스템은, 중앙처리장치, 상기 중앙처리장치에 의해서 실행되며, 입력되는 타깃 레이아웃을 형성하기 위한 예측 레이아웃을 생성하고, 상기 예측 레이아웃을 사용하여 패턴들의 보정을 적용하는 심층 강화 학습을 수행하여 최적 레이아웃을 생성하는 심층 강화 학습 모듈을 로드하는 램, 그리고 상기 심층 강화 학습 모듈에서 수행되는 강화 학습시에 사용되는 상기 타깃 레이아웃을 수신하여 상기 중앙처리장치로 전달하거나, 상기 심층 강화 학습 모듈에서 생성된 상기 최적 레이아웃을 출력하는 입출력 인터페이스를 포함하되, 상기 심층 강화 학습 모듈은 상기 패턴들의 보정을 액션(Action) 입력으로, 상기 타깃 레이아웃을 상태(State) 입력으로 사용하여 예측 레이아웃과 상기 타깃 레이아웃의 차이를 감소시키는 강화 학습 연산을 수행한다.

Description

심층 강화 학습을 사용하는 레이아웃 설계 시스템 및 그것의 학습 방법{LAYOUT DESIGN SYSTEM USING DEEP REINFORCEMENT LEARNING AND LEARNING METHOD THEREOF}
본 발명은 반도체 설계 시스템에 관한 것으로, 좀 더 구체적으로는 심층 강화 학습을 사용하는 레이아웃 설계(Layout design) 시스템 및 그것의 학습 방법에 관한 것이다.
반도체 제조 공정은 식각(Etching), 증착(Depositing), 평탄화(Planation), 성장(Growth), 주입(Implanting) 등과 같은 다양한 절차들의 조합으로 구현된다. 식각은 대상 위에 포토 레지스트의 패턴을 형성하고, 화학 약품, 가스, 플라스마, 이온 빔 등을 이용하여 포토 레지스트에 의해 가려지지 않은 대상의 부분들을 제거함으로써 수행될 수 있다. 식각을 수행하는 과정에서, 다양한 요인들로 인해 공정 오차가 발생할 수 있다. 공정 오차를 유발하는 다양한 요인들은 공정의 환경이나 특성에 기인할 수도 있지만, 포토 레지스트의 패턴 또는 식각에 의해 구현되는 반도체 패턴들의 특성에 기인할 수 있다. 패턴들의 특성에 기인하는 공정 오차는 공정 변화에 따른 인공 지능이나 모델들을 활용하여 예측할 수 있다. 예측된 값과의 스큐(Skew)를 사용하여 패턴들의 레이아웃을 보정할 수 있다.
하지만, 예측된 환경에서 스큐를 적용할 때, 어느 하나의 패턴을 보정하는 것은 주변에 위치하는 다른 패턴들의 환경에도 영향을 미치게 된다. 즉, 패턴의 보정이 적용될 때마다 실제로는 환경의 변화가 동반하게 된다. 따라서, 아무리 예측이 정확하다 할지라도 원하는 타깃 패턴을 형성하는 데는 한계가 있다. 이러한 문제는 반도체 장치의 집적도가 증가하고 그리고 반도체 공정이 미세화가 가속될수록 심각해지고 있다.
본 발명의 목적은 공정 근접 보정을 위해 생성된 예측 레이아웃을 패턴들 상호 간의 영향을 반영하여 조정하여 적용하는 레이아웃 최적화 시스템 및 그것의 학습 방법을 제공하는데 있다.
상기 목적을 달성하기 위한 본 발명에 따른 반도체 공정의 타깃 레이아웃을 보정하기 위한 레이아웃 최적화 시스템은, 중앙처리장치, 상기 중앙처리장치에 의해서 실행되며, 입력되는 타깃 레이아웃을 형성하기 위한 예측 레이아웃을 생성하고, 상기 예측 레이아웃을 사용하여 패턴들의 보정을 적용하는 심층 강화 학습을 수행하여 최적 레이아웃을 생성하는 심층 강화 학습 모듈을 로드하는 램, 그리고 상기 심층 강화 학습 모듈에서 수행되는 강화 학습시에 사용되는 상기 타깃 레이아웃을 수신하여 상기 중앙처리장치로 전달하거나, 상기 심층 강화 학습 모듈에서 생성된 상기 최적 레이아웃을 출력하는 입출력 인터페이스를 포함하되, 상기 심층 강화 학습 모듈은 상기 패턴들의 보정을 액션(Action) 입력으로, 상기 타깃 레이아웃을 상태(State) 입력으로 사용하여 예측 레이아웃과 상기 타깃 레이아웃의 차이를 감소시키는 강화 학습 연산을 수행한다.
상기 목적을 달성하기 위한 본 발명에 따른 컴퓨터 시스템에서 구동되며, 타깃 레이아웃을 수신하여 최적 레이아웃을 생성하는 레이아웃 최적화 시스템의 학습 방법은, 상기 타깃 레이아웃을 사용하여 예측 레이아웃을 생성하는 시뮬레이션을 수행하여 복수의 액션 가치들을 생성하는 단계, 적어도 하나의 패턴에 대한 변경을 액션 입력으로 수신하는 단계, 상기 복수의 액션 가치들 중에서 상기 액션 입력에 대응하는 어느 하나를 선택하는 단계, 그리고 상기 선택된 액션 가치와 상기 타깃 레이아웃에 대응하는 액션 가치를 비교하여 손실 함수를 계산하는 단계를 포함한다.
상기 목적을 달성하기 위한 본 발명에 따른 타깃 레이아웃을 수신하여 공정 근접 보정을 위한 레이아웃 최적화 연산을 수행하는 시스템의 학습 방법은 상기 타깃 레이아웃을 사용하여 예측 레이아웃을 생성하는 시뮬레이션을 수행하는 단계, 그리고 상기 시뮬레이션 결과로부터 생성되는 복수의 액션 가치들을 사용하여 손실 함수를 계산하고 업데이트하는 심층 강화 학습을 수행하는 단계를 포함한다.
상술한 본 발명에 따르면, 공정 근접 보상의 적용시 시계열적으로 변화하는 환경을 반영하는 심층 강화 학습을 사용하여 최적 보정값을 추출할 수 있다.
도 1은 공정 근접 보정의 적용시 환경에 따른 임계 치수(Critical Dimension: 이하, CD)의 보정 방법을 예시적으로 보여주는 도면이다.
도 2는 본 발명의 실시 예에 따른 레이아웃 최적화 시스템의 하드웨어 구조를 예시적으로 보여주는 블록도이다.
도 3은 본 발명의 실시 예에 따른 공정 근접 보정의 적용 방법을 보여주는 순서도이다.
도 4는 도 2의 심층 강화 학습 모듈에 의한 레이아웃 최적화 방법을 보여주는 도면이다.
도 5는 도 3의 심층 강화 학습이 수행되는 S130 단계를 좀더 구체적으로 보여주는 순서도이다.
도 6은 본 발명의 타깃 레이아웃과 시뮬레이션을 통해서 생성되는 예측 레이아웃의 일부 영역을 각각 보여주는 도면이다.
도 7a 내지 도 7e는 본 발명의 심층 강화 학습을 사용하여 공정 근접 보정을 적용하는 방법을 예시적으로 보여준다.
앞의 일반적인 설명 및 다음의 상세한 설명 모두 예시적이라는 것이 이해되어야 하며, 청구된 발명의 부가적인 설명이 제공되는 것으로 여겨져야 한다. 참조 부호들이 본 발명의 바람직한 실시 예들에 상세히 표시되어 있으며, 그것의 예들이 참조 도면들에 표시되어 있다. 가능한 어떤 경우에도, 동일한 참조 번호들이 동일한 또는 유사한 부분을 참조하기 위해서 설명 및 도면들에 사용된다.
도 1은 공정 근접 보정의 적용시 환경에 따른 임계 치수(Critical Dimension: 이하, CD)의 보정 방법을 예시적으로 보여주는 도면이다. 도 1을 참조하면, 반도체 식각 공정에서의 주변에 분포하는 패턴들의 수에 따라 패턴의 임계 치수(CD)를 조정하여 타깃 패턴의 형상으로 보정할 수 있다.
먼저, 패턴(12)의 주변에는 하나의 패턴(13)이 형성되는 제 1 공정 환경(19)을 가정하기로 한다. 원형의 점선으로 도시된 타깃 패턴(10)을 형성하기 위한 예측 패턴(11)이 생성될 수 있다. 예측 패턴(11)은 타깃 패턴(10)에 비해 상대적으로 적은 사이즈로 제공될 수 있다. 이 경우, 예측 패턴(11)과 타깃 패턴(10)의 차이(이하, 스큐)에 대응하는 값(예를 들면, '+15')을 사용하여 레이아웃을 보정하면, 최종적으로 형성되는 패턴(17)은 타깃 패턴(10)과 동일하거나 근접하게 된다.
더불어, 패턴(22)의 주변에 4개의 패턴들(23, 24, 25, 26)이 형성되는 제 2 공정 환경(29)을 가정하기로 한다. 원형의 점선으로 도시된 타깃 패턴(20)을 형성하기 위한 예측 패턴(21)이 생성될 수 있다. 예측 패턴(21)은 타깃 패턴(20)에 비해 상대적으로 큰 사이즈로 예측될 수 있다. 이 경우, 예측 패턴(21)과 타깃 패턴(20)의 차이값인 스큐(Skew)에 대응하는 값(예를 들면, '-2')을 사용하여 설계 레이아웃을 보정할 수 있다. 그러면, 최종적으로 형성되는 패턴(27)은 타깃 패턴(20)의 사이즈에 근접하게 된다.
상술한 바와 같이, 임계 치수(CD)의 산포를 해결하기 위해, 주변 패턴들의 개수 및/또는 주변 패턴들과의 간격 등을 고려하여 설계 패턴들의 임계 치수(CD)를 조정할 수 있다. 하지만, 임계 치수(CD)의 보정을 위한 스큐의 크기를 구한 후에, 실질적으로 레이아웃에 도출된 스큐를 적용할 때 새로운 환경의 변화가 발생한다. 본 발명에서는 이러한 스큐를 레이아웃에 적용할 때 발생하는 환경의 변화 문제까지 보상이 가능한 레이아웃 최적화 방법이 제공될 것이다.
도 2는 본 발명의 실시 예에 따른 레이아웃 최적화 시스템의 하드웨어 구조를 예시적으로 보여주는 블록도이다. 도 2를 참조하면, 레이아웃 최적화 시스템(1000)은 CPU(1100), GPU(1150), 램(1200), 입출력 인터페이스(1300), 스토리지(1400), 그리고 시스템 버스(1500)를 포함할 수 있다. 여기서, 레이아웃 최적화 시스템(1000)은 본 발명의 공정 근접 보정(PPC) 소프트웨어(1250)를 실행하기 위한 전용 장치로 구성될 수도 있다. 하지만, 레이아웃 최적화 시스템(1000)은 예시적으로 TCAD(Technology Computer-Aided Design)나 ECAD(Electronic Computer-Aided Design) 시뮬레이션 프로그램과 같은 설계 프로그램을 구동하는 컴퓨터나 워크스테이션(Work-station)일 수도 있다.
CPU(1100)는 레이아웃 최적화 시스템(1000)에서 수행될 소프트웨어(응용 프로그램, 운영 체제, 장치 드라이버들)를 실행한다. CPU(1100)는 램(1200)에 로드되는 운영 체제(OS, 미도시됨)를 실행할 것이다. CPU(1100)는 운영 체제(OS) 기반에서 구동될 다양한 응용 프로그램들(Application Program)을 실행할 것이다. 예를 들면, CPU(1100)는 램(1200)에 로드된 PPC 소프트웨어(1250)를 실행할 수 있을 것이다. 본 발명의 PPC 소프트웨어(1250)는 심층 강화 학습 모듈(1220)을 포함할 수 있다. CPU(1100)는 후술될 GPU(1150)와 함께 PPC 소프트웨어(1250)의 구동을 통해서 심층 강화 학습 모듈(1220)의 강화 학습 연산을 수행할 수 있다. 그리고 CPU(1100) 그리고/또는 GPU(1150)는 심층 강화 학습 모듈(1220)을 통해서 입력되는 타깃 레이아웃에 대응하는 최적화된 세정 후 검사(After Cleaning Inspection: 이하, ACI) 임계 치수(CD)를 생성할 수 있다.
GPU(1150)는 다양한 그래픽 연산이나 병렬 처리 연산을 수행할 수 있다. 즉, GPU(1150)는 유사한 연산을 반복해서 처리하는 병렬 처리에 유리한 연산 구조를 가진다. 따라서, 최근에는 GPU(1150)는 그래픽 연산뿐만 아니라 고속의 병렬 처리를 요구하는 다양한 연산에 사용될 수 있는 구조를 갖는다. 예를 들면, 그래픽 처리 작업 이외의 범용 작업을 하는 GPU(1150)를 GPGPU(General Purpose computing on Graphics Processing Units)라고 한다. GPGPU를 통해서 동영상 인코딩 외에도 분자 구조 분석, 암호 해독, 기상 변화 예측 등의 분야에 주로 사용할 수 있다. 특히, 본 발명의 GPU(1150)는 CPU(1100)와 함께 본 발명의 심층 강화 학습 모듈(1220)의 효율적인 학습 연산을 담당할 수 있다.
램(1200)에는 운영 체제(OS)나 응용 프로그램들(Application Program)이 로드될 것이다. 레이아웃 최적화 시스템(1000)의 부팅시에 스토리지(1400)에 저장된 OS 이미지(미도시됨)가 부팅 시퀀스에 의거하여 램(1200)으로 로드될 것이다. 운영 체제(OS)에 의해서 레이아웃 최적화 시스템(1000)의 제반 입출력 동작들이 지원될 수 있다. 마찬가지로, 사용자에 의하여 선택되거나 기본적인 서비스 제공을 위해서 응용 프로그램들이 램(1200)에 로드될 수 있다. 특히, 본 발명의 PPC 소프트웨어(1250)도 스토리지(1400)로부터 램(1200)에 로드될 것이다. 램(1200)은 SRAM(Static Random Access Memory)이나 DRAM(Dynamic Random Access Memory)과 같은 휘발성 메모리이거나, PRAM, MRAM, ReRAM, FRAM, NOR 플래시 메모리 등의 비휘발성 메모리일 수 있다.
PPC 소프트웨어(1250)는 본 발명의 실시 예에 따른 심층 강화 학습 모듈(1220)을 사용하는 공정 근접 보정 연산과 절차를 수행한다. 특히, PPC 소프트웨어(1250)에서 사용되는 심층 강화 학습 모듈(1220)은 시뮬레이션을 통해서 생성된 예측 레이아웃을 사용할 수 있다. 심층 강화 학습 모듈(1220)은 예측 레이아웃의 패턴들을 시간 종속적으로 강화하면서 보정에 따른 환경 변화를 반영한 최적 보정값을 추출할 수 있다. 예를 들면, 심층 강화 학습 모듈(1220)은 심층 강화 학습의 액션 가치 함수(이하, Q-값)를 시뮬레이션을 통해 생성한 보정값인 시뮬레이션 데이터(1420)로부터 획득할 수 있다.
시뮬레이션 데이터(1420)에는 다양한 타깃 패턴의 이미지에 대한 Q-값이 함수 형태로 제공될 수 있다. 즉, 시뮬레이션 데이터(1420)는 타깃 레이아웃의 이미지에 대한 예측 레이아웃 정보가 포함될 수 있다. 그리고 시뮬레이션 데이터(1420)를 사용하면 타깃 레이아웃에 포함되는 패턴들의 보정에 대한 액션 가치 함수가 제공될 수 있다. 시뮬레이션 데이터(1420)를 생성하기 위해, 예를 들면, 합성곱 신경망(Convolutional Neural Network: CNN)이 사용될 수 있다.
심층 강화 학습 모듈(1220)의 구동에 따른 심층 강화 학습이 완료되면, CPU(1100)는 입출력 인터페이스(1300)를 통해서 입력된 타깃 이미지인 ACI 이미지에 대응하는 최적 레이아웃(Optimal Layout)을 생성할 수 있다. 최적 레이아웃(Optimal Layout)은 각 패턴들에 대한 최적 보정값이나 이미지 형태로 제공될 수 있다. 즉, CPU(1100)는 강화 학습이 완료된 심층 강화 학습 모듈(1220)을 사용하여 타깃 레이아웃에 대응하는 공정 근접 보정(PPC) 데이터나 이미지를 생성할 수 있다. 예를 들면, 심층 강화 학습 모듈(1220)은 시뮬레이션을 통해서 제공되는 보정값을 시간 종속적으로 적용 및 강화하면서 시간적으로 변경되는 환경 변화를 반영한 최적 보정값을 생성할 수 있다.
입출력 인터페이스(1300)는 사용자 인터페이스 장치들로부터의 사용자 입력 및 출력을 제어한다. 예를 들면, 입출력 인터페이스(1300)는 키보드나 모니터를 구비하여 사용자로부터의 명령이나 데이터를 제공받을 수 있다. 본 발명의 심층 강화 학습 모듈(1220)의 심층 강화 학습을 위한 타깃 레이아웃(예를 들면, ACI 레이아웃)도 입출력 인터페이스(1300)를 통해서 제공받을 수도 있다. 그리고 입출력 인터페이스(1300)는 레이아웃 최적화 시스템(1000)의 학습이나 패턴 생성 동작에서의 경과나 처리 결과 등을 출력할 수 있다. 예를 들면, 입출력 인터페이스(1300)는 심층 강화 학습 모듈(1220)의 학습 결과로 도출되는 최적 레이아웃(Optimal Layout) 데이터를 출력할 수 있다. 여기서, 타깃 레이아웃(Target Layout)과 최적 레이아웃(Optimal Layout)은 레이아웃을 표현하는 수치 데이터이거나 또는 이미지 데이터로 제공될 수 있을 것이다.
스토리지(1400)는 레이아웃 최적화 시스템(1000)의 저장 매체(Storage Medium)로서 제공된다. 스토리지(1400)는 응용 프로그램들(Application Program), 운영 체제 이미지(OS Image), PPC 소프트웨어(1250)의 소프트웨어 이미지(1440) 및 각종 데이터를 저장할 수 있다. 더불어, 스토리지(1400)는 PPC 소프트웨어(1250)에서 다양한 액션들에 대응하는 액션 가치 함수(Q)를 제공하기 위한 시뮬레이션 데이터(1420)를 저장할 수 있다. 스토리지(1400)는 메모리 카드(MMC, eMMC, SD, MicroSD 등)나 하드디스크 드라이브(HDD)로 제공될 수도 있다. 스토리지(1400)는 대용량의 저장 능력을 가지는 낸드 플래시 메모리(NAND-type Flash memory)를 포함할 수 있다. 또는, 스토리지(1400)는 PRAM, MRAM, ReRAM, FRAM 등의 차세대 불휘발성 메모리나 NOR 플래시 메모리를 포함할 수도 있다.
시스템 버스(1500)는 레이아웃 최적화 시스템(1000)의 내부에서 네트워크를 제공하기 위한 시스템 버스(System Bus)이다. 시스템 버스(1500)를 통해서 CPU(1100), GPU(1150), 램(1200), 입출력 인터페이스(1300), 그리고 스토리지(1400)가 연결되고 상호 데이터를 교환할 수 있다. 하지만, 시스템 버스(1500)의 구성은 상술한 설명에만 국한되지 않으며, 효율적인 관리를 위한 중재 수단들을 더 포함할 수 있다.
이상의 설명에 따르면, 레이아웃 최적화 시스템(1000)은 PPC 소프트웨어(1250)의 구동에 따라 타깃 레이아웃에 대한 최적 레이아웃(Optimal Layout)을 생성하는 공정 근접 보정(PPC) 연산을 수행할 수 있다. 특히, PPC 소프트웨어(1250)는 시뮬레이션 데이터로부터 제공되는 보정값을 심층 강화 학습 모듈(1220)을 사용하여 시간 종속적으로 강화하는 방식으로 공정 근접 보정(PPC)을 적용할 수 있다. 따라서, 시간 종속적인 보정의 적용에 따라 패턴들 각각의 보정에 따라 발생하는 환경 변화를 반영하는 공정 근접 보정(PPC)이 가능하다.
도 3은 본 발명의 실시 예에 따른 공정 근접 보정의 적용 방법을 보여주는 순서도이다. 도 3을 참조하면, 본 발명의 심층 강화 학습 모듈(1220)은 합성곱 신경망을 사용하는 시뮬레이션 결과로부터 액션 가치 함수(Q)를 생성하고, 액션 가치 함수를 사용하여 심층 강화 학습을 수행할 수 있다. 심층 강화 학습을 통해서 타깃 패턴을 형성하기 위한 최적 보정 데이터를 획득할 수 있다.
S110 단계에서, 레이아웃 최적화 시스템(1000)은 공정 근접 보정을 적용할 타깃 레이아웃을 수신한다. 예를 들면, 타깃 레이아웃은 세정 후 검사(ACI) 시에 획득되기를 원하는 레이아웃 또는 임계 치수(CD)일 수 있다.
S120 단계에서, PPC 소프트웨어(1250)에 의한 예측 패턴을 생성하기 위한 시뮬레이션이 수행될 수 있다. 예를 들면, 타깃 패턴(Target pattern)을 생성하기 위한 미리 학습된 합성곱 신경망(CNN)을 사용하여 시뮬레이션을 수행할 수 있다. 시뮬레이션을 위한 합성곱 신경망(CNN)은 타깃 레이아웃(Target Layout)을 입력으로 하고, 복수의 액션들에 대응하는 복수의 액션 가치(Q-value)를 출력할 수 있다. 즉, 합성곱 신경망(CNN)은 타깃 레이아웃(Target Layout)에 대한 예측 시뮬레이션을 통해서 한꺼번에 복수의 패턴 조정에 대한 액션 가치(Q-value)를 출력할 수 있다. 즉, 합성곱 신경망(CNN)은 타깃 레이아웃에 대한 각 패턴들의 조정시 발생하는 다양한 예측 패턴들에 대한 액션 가치들을 생성할 수 있다. 여기서, 액션 가치(Q)는 특정 상태(State)에서 액션(Action)을 입력했을 때 기대되는 미래 보상들의 총합을 나타낸다.
S130 단계에서, 심층 강화 학습 모듈(1220)은 각 패턴들의 보정을 시간 종속적으로 적용하는 강화 학습을 진행한다. 예를 들면, 심층 강화 학습 모듈(1220)은 레이아웃 패턴을 상태(State)로 입력받고, 각 패턴의 사이즈 보정을 액션(Action)으로 입력받을 수 있다. 여기서, 레이아웃 패턴은 세정후 검사(ACI)시 타깃 레이아웃일 수 있다. 그리고 심층 강화 학습 모듈(1220)은 입력된 상태(State)와 액션(Action)에 대응하는 액션 가치(Q-value)를 생성할 수 있다. 이때, 액션 가치(Q-value)는 타깃 레이아웃에 대한 예측 시뮬레이션을 수행하는 합성곱 신경망(CNN)을 사용할 수 있다. 심층 강화 학습 모듈(1220)은 각 패턴들의 보정에 따른 액션 가치(Q-value)를 타깃 레이아웃의 최적 액션 가치(Q*)와 비교하여 손실 함수(Loss function) 또는 보상(Reward)을 계산할 수 있다.
S140 단계에서, 심층 강화 학습 모듈(1220)은 보상이 최대가 되는 패턴 보정 절차를 결정한다. 그러면, PPC 소프트웨어(1250)는 타깃 레이아웃을 형성하기 위한 최적 레이아웃(Optimal Layout) 또는 패턴 보상 시퀀스를 생성할 수 있다. 즉, PPC 소프트웨어(1250)는 각 패턴의 보정을 순차적으로 진행할 때 최적 패턴의 임계 치수(CD) 또는 보정 시퀀스를 출력으로 제공할 수 있다. 이때 제공되는 최적 임계 치수(CD)와 시퀀스는 패턴들 각각의 보정에 따른 간섭이나 환경 변화를 최소화할 수 있는 보정 방법이 될 수 있다.
이상에서는 본 발명의 심층 강화 학습 모듈(1220)을 사용하는 레이아웃 패턴의 보정 방법이 설명되었다. 일반적으로 타깃 레이아웃을 형성하기 위한 예측 레이아웃에서 각 패턴들의 보정이 일괄적으로 적용되는 방식으로 공정 근접 보정이 수행된다. 하지만, 일괄적인 보정은 적용과 동시에 환경의 변화가 발생하므로 공정 근접 보정에 이러한 환경 변화는 반영될 수 없다. 반면, 본 발명에서는 일괄적으로 적용되는 보정시에 발생하는 패턴들 간의 간섭을 반영하기 위한 시간 종속적인 심층 강화 학습을 적용한다. 따라서, 본 발명의 심층 강화 학습 모듈(1220)의 학습에 따라 시간 종속적인 패턴들 간의 환경 변화를 반영한 최적 보정 시퀀스나 최적 레이아웃의 추출이 가능하다. 결국, 본 발명에 따르면 시뮬레이션 결과를 사용하여 ACI 레이아웃에 근접하는 최적 레이아웃 또는 보정 방법이 제공될 수 있다.
도 4는 도 2의 심층 강화 학습 모듈에 의한 레이아웃 최적화 방법을 보여주는 도면이다. 도 4를 참조하면, 심층 강화 학습 모듈(1220)은 상태 입력부(1221), 합성곱 신경망(1222), 액션 입력부(1223), 가치 선택부(1224), 그리고 손실 함수 생성기(1225)를 포함할 수 있다.
상태 입력부(1221)는 특정 시점에서의 상태(State)를 합성곱 신경망(1222)의 입력층에 제공한다. 여기서, 상태(State)로 제공되는 입력은 특정 시점에서의 레이아웃 이미지로 제공될 수 있다. 예를 들면, 상태 입력은 세정후 검사(ACI) 단계에서 획득되기 원하는 타깃 레이아웃일 수 있다. 결국, 합성곱 신경망(1222)은 타깃 레이아웃을 생성하기 위한 예측 레이아웃을 생성해야 한다.
합성곱 신경망(1222)은 상태(State)로 제공된 타깃 레이아웃을 입력받아 복수의 액션 가치 Q(xt, aj)(1≤j≤m)를 생성할 수 있다. 즉, 합성곱 신경망(1222)은 액션의 입력없이 하나의 상태인 타깃 레이아웃 이미지를 입력받아 m개의 액션 가치 Q(xt, aj)를 생성한다. 이렇게 하면, 매 액션 또는 하나의 패턴에 대한 조정 적용시마다 액션 가치(Q-value)를 업데이트할 필요없이 한 번의 상태 입력만으로도 복수의 액션에 대응하는 액션 가치 Q(xt, aj)를 얻을 수 있다.
합성곱 신경망(1222)의 가중치들은 입력되는 타깃 레이아웃(예를 들면, ACI 레이아웃)을 생성하기 위한 예측된 레이아웃을 생성하기 위한 값들로 학습된 상태일 수 있다. 합성곱 신경망(1222)의 학습은 다양한 패턴들을 포함하는 다양한 레이아웃 이미지에 대한 공정 근접 보정(PPC)을 위한 예측을 통해서 수행될 수 있다. 즉, 레이아웃 패턴들의 특성들(Features)에 대해 심층 신경망 학습을 통해서 최적의 예측 레이아웃 또는 이미지를 생성할 수 있을 것이다. 그리고 합성곱 신경망(1222)의 이러한 각 액션들에 대해 별도의 액션 가치(Q-value)를 동시에 출력할 수 있다.
액션 입력부(1223)는 각 패턴들의 사이즈 보정을 가치 선택부(1224)에 제공한다. 예를 들면, 액션 입력부(1223)는 제 1 액션(a1)으로서 제 1 패턴의 사이즈를 조정하는 스큐 적용을 입력할 수 있다. 제 1 액션(a1)에 대한 액션 가치 Q(xt, a1)의 선택이 완료되면, 액션 입력부(1223)는 제 2 액션(a2)으로서 제 2 패턴의 사이즈를 조정하는 스큐 적용 동작을 입력할 수 있다. 이러한 방식으로 액션 입력부(1223)는 지속적으로 타깃 레이아웃에 포함되는 모든 패턴들에 대한 스큐 적용이 완료될 때까지 반복적으로 패턴 사이즈 조정값을 입력할 것이다. 여기서, 하나의 패턴에 대해 하나의 스큐 조정값이 입력되는 것으로 설명하였지만, 하나의 패턴에 대해 다양한 값의 스큐 조정을 적용하는 복수의 액션이 제공될 수도 있다.
가치 선택부(1224)는 액션 입력부(1223)에 의해서 입력된 액션(aj)에 대응하는 액션 가치 Q(xt, at)를 선택한다. 즉, 가치 선택부(1224)는 합성곱 신경망(1222)에서 생성된 복수의 액션 가치들 중에서 현재 입력된 액션에 대응하는 스큐 조정에 대응하는 액션 가치 Q(xt, at)를 선택하게 될 것이다.
손실 함수 생성기(1225)는 가치 선택부(1224)에서 선택된 액션 가치 Q(xt, at)를 사용하여 손실 함수 L(Φ)를 계산한다. 손실 함수 생성기(1225)는 현재 스테이지에서 선택된 액션 가치 Q(xt, at)와 최적 액션 가치의 참값에 대응하는 Q*(xi, ai)의 차이값으로 계산될 수 있다. 여기서, Q*(xi, ai)는 타깃 레이아웃의 임계 치수(CD)로부터 계산된다. 예를 들면, 손실 함수 L(Φ)는 아래 수학식 1로 표현될 수 있다.
강화 학습의 진행은 손실 함수 L(Φ)를 최소화하는 액션을 선택하는 방향으로 발생한다. 즉, 순차적으로 입력되는 액션(aj)은 강화 학습의 진행에 따라 손실 함수가 감소하게 된다. 그리고 강화 학습이 종료되면, 타깃 레이아웃을 생성할 수 있는 최적의 보정이 적용된 레이아웃 패턴이 결정될 수 있다.
심층 강화 학습을 통해서 시간 종속적인 패턴의 보정이 적용될 수 있고, 각 패턴들의 보정은 손실 함수를 최소화하는 방향으로 업데이트될 수 있다. 따라서, 최종적으로는 최소 손실 함수에 대응하는 예측 레이아웃 이미지가 최적 레이아웃으로 선택될 수 있다.
도 5는 도 3의 심층 강화 학습이 수행되는 S130 단계를 좀더 구체적으로 보여주는 순서도이다. 도 5를 참조하면, 심층 강화 학습은 액션의 입력과 액션 가치(Q-value)에 대한 손실 함수 L(Φ) 계산 과정을 포함한다. 이때, 액션은 레이아웃에 포함된 각 패턴들의 수치 보정에 대응한다. 결국, 패턴들의 시간 종속적인 수치 보정은 타깃 레이아웃에 접근하는 방향으로 심층 강화 학습이 발생하게 될 것이다. 이를 통해 패턴들 상호 간의 영향을 잘 반영하는 최적 레이아웃의 예측이 가능하게 된다.
S131 단계에서, 심층 강화 학습의 스테이지가 초기화(n=1) 된다. 즉, 심층 강화 학습에서 수치 보정을 적용하기 위한 패턴을 선택하기 위한 번호 'n'이 1로 초기화된다. 여기서, 강화 학습의 단계는 레이아웃에 포함되는 패턴들의 수이거나 패턴들 각각의 수치 보정의 횟수의 총합일 수 있다.
S132 단계에서, 제 1 패턴(P1)에 대한 액션(Action)이 입력된다. 즉, 액션으로서 제 1 패턴(P1)의 수치 보정값이 가치 선택부(1224, 도 4 참조)에 입력될 것이다. 수치 보정값은 제 1 패턴(P1)의 횡방향이나 종방향의 사이즈가 증가되거나 또는 감소되는 크기로 제공될 수 있다.
S133 단계에서, 가치 선택부(1224)는 입력된 액션에 대응되는 액션 가치(Q-value)를 선택하게 될 것이다. 즉, 액션 입력부(1223)에 의해서 입력된 액션(a1)에 대응하는 액션 가치 Q(xt, a1)가 선택될 수 있다. 액션 가치는 이미 합성곱 신경망(1222)에 의해서 가능한 모든 수치 보정값에 대한 액션 가치들이 시뮬레이션을 통해서 도출된 상태라 가정하기로 한다. 따라서, 제 1 패턴(P1)의 수치 보정에 대응하는 액션에 대해 가치 선택부(1224)는 계산된 액션 가치 Q(xt, a1)를 선택하여 출력한다.
S134 단계에서, 손실 함수 생성기(1225)는 액션(a1)에 대한 손실 함수 L1(Φ)를 계산한다. 손실 함수 생성기(1225)는 현재 스테이지에서 선택된 액션 가치 Q(xt, a1)와 최적 액션 가치의 참값에 대응하는 Q*(xi, ai)의 차이에 기반한 손실 함수를 계산한다. 스테이지를 진행할수록 손실 함수의 크기를 줄이는 방향으로 강화 학습이 발생하게 된다.
S135 단계에서, 심층 강화 학습 모듈(1220)은 레이아웃 내의 모든 패턴들에 대한 수치 조정이 완료되었는지 판단한다. 즉, 심층 강화 학습 모듈(1220)은 수치 조정이 적용된 패턴이 최종 스테이지(last)에 대응하는지를 판단한다. 만일, 수치 조정이 적용된 패턴이 최종 스테이지에 대응하는 경우(Yes 방향), 절차는 S137 단계로 이동한다. 반면에, 수치 조정이 적용되어야 할 스테이지가 남아있는 경우(No 방향), 절차는 S136 단계로 이동한다.
S136 단계에서, 심층 강화 학습 모듈(1220)은 심층 강화 학습 스테이지를 카운트업(n+1)한다. 그리고 절차는 카운트업된 스테이지의 심층 강화 학습을 이어가기 위한 S132 단계로 복귀한다.
S137 단계에서, 심층 강화 학습 모듈(1220)은 심층 강화 학습 절차를 통해서 학습된 최적 레이아웃을 선택한다. 즉, 심층 강화 학습 모듈(1220)은 다양한 심층 강화 학습을 통해서 조정된 다양한 레이아웃 패턴들 가운데 최대의 보상을 제공하는 패턴을 선택하여 최적 레이아웃으로 출력할 수 있다.
심층 강화 학습의 적용을 통해서 시간 종속적인 패턴의 보정이 적용될 수 있고, 각 패턴들의 보정은 손실 함수를 최소화하는 방향으로 업데이트될 수 있다. 따라서, 최종적으로는 최소 손실 함수 또는 최대 보상에 대응하는 예측 레이아웃 이미지가 최적 레이아웃으로 선택될 수 있다.
도 6은 본 발명의 타깃 레이아웃과 시뮬레이션을 통해서 생성되는 예측 레이아웃의 일부 영역을 각각 보여주는 도면이다. 도 6을 참조하면, 타깃 레이아웃과 예측 레이아웃의 차이를 사용하여 공정 근접 보상을 위한 스큐(Skew)를 계산한다.
앞서 설명한 바와 같이, 타깃 레이아웃 패턴들(100, 200, 300, 400)은 시뮬레이션을 통해서 예측 레이아웃 패턴들(100, 220, 320, 420)로 생성된다. 예측 레이아웃 패턴들(100, 220, 320, 420)과 타깃 레이아웃 패턴들(100, 200, 300, 400)의 임계 치수(CD)들의 차이만큼 레이아웃은 공정 근접 보상을 통해서 수정되어야 한다.
제 1 패턴(P1, 100)은 시뮬레이션을 통해 예측한 레이아웃의 임계 치수와 타깃 레이아웃의 임계 치수가 일치하는 경우를 보여준다. 즉, 제 1 패턴(P1, 100)은 타깃 패턴과 예측 패턴의 스큐가 없거나 허용치 이하인 경우에 대응한다. 따라서, 제 1 패턴(100)은 공정 근접 보정을 적용하지 않을 수 있다. 반면, 제 2 내지 제 4 패턴들(P2~P4) 각각은, 타깃 레이아웃 상에서의 임계 치수와 예측 레이아웃 상에서의 임계 치수가 허용 범위 이상의 차이를 갖는 경우에 각각 대응한다. 즉, 제 2 내지 제 4 패턴들(P2~P4) 각각은 스큐의 보정이 필요한 경우에 대응한다.
예를 들면, 제 2 패턴(P2)의 경우 타깃 패턴(200)보다 예측 패턴(220)이 X 방향으로는 동일하고, Y 방향으로는 더 짧게 예측되었다. 따라서, 보정을 위해서 레이아웃 상에서 제 2 패턴(P2)의 Y 방향 크기는 증가시킬 필요가 있다. 제 3 패턴(P3)은 타깃 패턴(300)보다 예측 패턴(220)이 Y 방향으로만 더 짧게 예측되었다. 따라서, 제 3 패턴(P3)의 보정을 위해서는 Y 방향으로 패턴의 사이즈를 증가시키는 조정이 필요하다. 제 4 패턴(P4)은 예측 패턴(420)이 타깃 패턴(400)보다 X 방향과 Y 방향 모두에서 짧게 예측되었다. 따라서, 제 4 패턴(P4)의 보정을 위해서는 X 방향과 Y 방향 모두를 증가시킬 필요가 있다.
도 7a 내지 도 7e는 본 발명의 심층 강화 학습을 사용하여 공정 근접 보정을 적용하는 방법을 예시적으로 보여준다. 본 발명에 따르면, 시간 종속적으로 패턴들의 보정이 적용되더라도 반복적인 심층 강화 학습을 통해서 환경 변화를 반영한 최적 레이아웃이 생성될 수 있다. 여기서, 제 1 패턴(P1)의 시뮬레이션 레이아웃 사이즈와 타깃 레이아웃 사이즈가 허용 범위 이내의 차이를 갖거나 동일한 것으로 가정하기로 한다. 따라서, 제 1 패턴(P1)의 보정은 t0 시점에서 적용된 것으로 가정하기로 한다.
도 7a를 참조하면, 심층 강화 학습의 제 1 액션(a1)으로 제 2 패턴(P2)의 사이즈 보정이 적용될 수 있다. 즉, 제 2 패턴(P2)의 보정을 위해 타깃 레이아웃 상에서 제 2 패턴(P2)의 Y 방향 사이즈를 'R1'만큼 증가시킬 수 있다. 이때, 제 2 패턴(P2)의 보정에 따른 환경 변화의 영향이 나머지 패턴들(P1, P3, P4)에게 미칠 수 있다. 즉, 제 2 패턴(P2)의 보정에 따른 나머지 패턴들(P1, P3, P4)에 공정 근접 효과(Process Proximity Effect: 이하, PPE)가 t1 시점에서 발생한다. 따라서, tO 시점에 적용된 제 1 패턴(P1)의 보정은 환경 변화에 따라 불완전하게 된다.
도 7b를 참조하면, 심층 강화 학습의 제 2 액션(a2)으로서 제 3 패턴(P3)의 사이즈 보정이 적용될 수 있다. 즉, 제 3 패턴(P3)의 보정을 위해서 타깃 레이아웃 상에서 제 3 패턴(P2)의 Y 방향 사이즈를 'R2'만큼 증가시킬 수 있다. 이때, 제 3 패턴(P3)의 보정에 따라 영향 범위 내에 분포하는 나머지 패턴들(P1, P2, P4)의 환경 변화가 발생하게 된다. 즉, 제 3 패턴(P3)의 보정에 따른 나머지 패턴들(P1, P2, P4)에 공정 근접 효과(PPE)가 발생한다. 따라서, tO 시점에 보정된 제 1 패턴(P1)과 t1 시점에 보정된 제 2 패턴(P2)의 보정은 환경 변화의 영향에 따라 불완전하게 된다.
도 7c를 참조하면, 심층 강화 학습의 제 3 액션(a3)으로서 제 4 패턴(P4)의 사이즈 보정이 적용될 수 있다. 즉, 제 4 패턴(P4)의 보정을 위해서 타깃 레이아웃 상에서 제 4 패턴(P4)의 X 방향 사이즈 및 Y 방향 사이즈를 'R3'만큼 증가시킬 수 있다. 이때, t3 시점에 적용된 제 4 패턴(P4)의 보정에 따라 영향 범위 내에 분포하는 나머지 패턴들(P1, P2, P3)의 환경 변화가 발생하게 된다. 즉, 제 4 패턴(P4)의 보정에 따른 나머지 패턴들(P1, P2, P3)에 영향이 미치게 된다. 따라서, tO 시점에 보정된 제 1 패턴(P1), t1 시점에 보정된 제 2 패턴(P2), t2 시점에 보정된 제 3 패턴(P3)의 보정은 t3 시점의 환경 변화에 영향을 받게 된다. 따라서, 이들 패턴들(P1, P2, P3)의 보정은 불완전한 것으로 간주될 수 있다.
도 7d를 참조하면, 심층 강화 학습의 제 4 액션(a4)으로서 제 1 패턴(P1)의 사이즈 보정이 적용될 수 있다. 즉, 제 1 패턴(P1)의 보정을 위해서 타깃 레이아웃 상에서 제 1 패턴(P1)의 Y 방향 사이즈를 'R4'만큼 감소시킬 수 있다. 이때, t4 시점에 적용된 제 1 패턴(P1)의 보정에 따라 영향 범위 내에 분포하는 나머지 패턴들(P2, P3, P4)의 환경 변화가 발생하게 된다. 즉, 제 1 패턴(P1)의 보정에 따른 환경 변화가 나머지 패턴들(P2, P3, P4)에 미치게 된다. 따라서, t1 시점에 보정된 제 22 패턴(P2), t2 시점에 보정된 제 3 패턴(P3), t3 시점에 보정된 제 4 패턴(P4)의 보정은 t4 시점의 환경 변화에 영향을 받게 된다. 이러한 환경 변화의 영향은 손실 함수를 최소화하는 방향으로 학습되는 심층 강화 학습을 통해서 패턴들 각각에 적용될 수 있다.
도 7e를 참조하면, 각 패턴들의 사이즈 조정을 액션으로 입력하는 심층 강화 학습의 반복 루프를 예시적으로 보여준다. 제 5 액션(a5)으로서 t5 시점에서 제 2 패턴(P2)의 사이즈 보정이 다시 적용될 수 있다. 즉, 제 2 패턴(P2)의 보정을 위해서 타깃 레이아웃 상에서 제 2 패턴(P2)의 사이즈가 조정될 수 있다. 제 2 패턴(P2)은 t1 시점에서의 보정에 이어 t5 시점에서의 보정도 발생하게 된다. 이러한 사이즈의 조정은 심층 강화 학습이 종료될 때까지 반복적으로 발생하게 될 것이다.
이어지는 제 6 액션(a6)으로서 t6 시점에서 제 3 패턴(P3)의 보정이 다시 적용될 수 있다. 즉, 제 3 패턴(P3)의 보정을 위해서 타깃 레이아웃 상에서 사이즈가 조정될 수 있다. 제 3 패턴(P3)은 t2 시점에서의 적용된 보정에 이어 t6 시점에서도 보정된다.
이어지는 제 7 액션(a7)으로서 t7 시점에서 제 4 패턴(P4)의 보정이 다시 적용될 수 있다. 즉, 제 4 패턴(P4)의 보정을 위해서 타깃 레이아웃 상에서 사이즈가 조정될 수 있다. 제 4 패턴(P4)은 t3 시점에서의 적용된 보정에 이어 t7 시점에서도 보정된다. 이러한 패턴들의 반복적인 보정은 심층 강화 학습이 종료될 때까지 연속적으로 발생하게 될 것이다.
이상에서는 심층 강화 학습에서 시간 종족적으로 입력되는 각 액션들을 중심으로 본 발명의 패턴 보정 방법이 간략히 설명되었다. 액션들 각각은 모든 패턴들이 타깃 값에 수렴된 것으로 판단될 때까지 발생할 수 있다. 그리고 심층 강화 학습의 결과값으로 패턴들 상호 간의 영향을 반영하는 최적 레이아웃 이미지가 제공될 수 있다.
이상에서와 같이 도면과 명세서에서 실시 예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허 청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허 청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (20)

  1. 반도체 공정의 타깃 레이아웃을 보정하기 위한 레이아웃 최적화 시스템에 있어서:
    중앙처리장치;
    상기 중앙처리장치에 의해서 실행되며, 입력되는 타깃 레이아웃을 형성하기 위한 예측 레이아웃을 생성하고, 상기 예측 레이아웃을 사용하여 패턴들의 보정을 적용하는 심층 강화 학습을 수행하여 최적 레이아웃을 생성하는 심층 강화 학습 모듈을 로드하는 램; 그리고
    상기 심층 강화 학습 모듈에서 수행되는 상기 심층 강화 학습에 사용되는 상기 타깃 레이아웃을 수신하여 상기 중앙처리장치로 전달하거나, 상기 심층 강화 학습 모듈에서 생성된 상기 최적 레이아웃을 출력하는 입출력 인터페이스를 포함하되,
    상기 심층 강화 학습 모듈은 상기 패턴들의 보정을 액션(Action) 입력으로, 상기 타깃 레이아웃을 상태(State) 입력으로 사용하여 예측 레이아웃과 상기 타깃 레이아웃의 차이를 감소시키는 강화 학습 연산을 수행하는 레이아웃 최적화 시스템.
  2. 제 1 항에 있어서,
    상기 심층 강화 학습 모듈은 상기 타깃 레이아웃으로부터 복수의 액션 입력에 대응하는 가치 함수들을 생성하는 심층 신경망을 포함하는 레이아웃 최적화 시스템.
  3. 제 2 항에 있어서,
    상기 복수의 액션 입력은 상기 타깃 레이아웃에 포함되는 패턴들 각각의 사이즈 조정을 포함하는 레이아웃 최적화 시스템.
  4. 제 3 항에 있어서,
    상기 복수의 액션 입력은 상기 패턴들 각각에 대해 적어도 일 회의 사이즈 조정 입력을 포함하는 레이아웃 최적화 시스템.
  5. 제 3 항에 있어서,
    상기 복수의 액션 입력들 각각은 서로 다른 시점에 적용되는 사이즈 조정에 대응하는 레이아웃 최적화 시스템.
  6. 제 2 항에 있어서,
    상기 심층 신경망은 상기 패턴들 상호 간의 영향을 반영하는 가중치로 학습된 합성곱 신경망을 포함하는 레이아웃 최적화 시스템.
  7. 제 2 항에 있어서,
    상기 심층 강화 학습 모듈은:
    상기 가치 함수들 중에서 상기 복수의 액션 입력들 중 어느 하나에 대응하는 어느 하나를 선택하는 가치 선택부; 그리고
    상기 가치 선택부에 의해서 선택된 가치 함수와 상기 타깃 레이아웃에 기반한 참값 가치 함수를 비교하여 손실 함수를 생성하는 손실 함수 생성기를 포함하는 레이아웃 최적화 시스템.
  8. 제 1 항에 있어서,
    상기 최적 레이아웃은 상기 강화 학습 연산에서 최대의 액션 가치에 대응하거나, 최대 보상을 갖는 학습 결과로부터 도출되는 레이아웃 최적화 시스템.
  9. 컴퓨터 시스템에서 구동되며, 타깃 레이아웃을 수신하여 최적 레이아웃을 생성하는 레이아웃 최적화 시스템의 학습 방법에 있어서:
    상기 타깃 레이아웃을 사용하여 예측 레이아웃을 생성하는 시뮬레이션을 수행하여 복수의 액션 가치들을 생성하는 단계;
    적어도 하나의 패턴에 대한 변경을 액션 입력으로 수신하는 단계;
    상기 복수의 액션 가치들 중에서 상기 액션 입력에 대응하는 어느 하나를 선택하는 단계; 그리고
    상기 선택된 액션 가치와 상기 타깃 레이아웃에 대응하는 액션 가치를 비교하여 손실 함수를 계산하는 단계를 포함하는 학습 방법.
  10. 제 9 항에 있어서,
    상기 복수의 액션 가치들을 생성하는 단계에서, 상기 시뮬레이션은 합성곱 신경망(Convolutional Neural Network)을 사용하는 학습 방법.
  11. 제 10 항에 있어서,
    상기 합성곱 신경망은 상기 타깃 레이아웃을 입력층으로 수신하고, 상기 복수의 액션 가치들을 출력층에서 출력하는 학습 방법.
  12. 제 11 항에 있어서,
    상기 합성곱 신경망은 상기 타깃 레이아웃에 포함된 패턴들 상호 간의 변경에 따른 영향을 반영하는 가중치로 학습된 가중치를 갖는 학습 방법.
  13. 제 9 항에 있어서,
    상기 액션 입력은 상기 타깃 레이아웃에 포함되는 패턴들 중 어느 하나의 사이즈 조정에 대응하는 학습 방법.
  14. 제 13 항에 있어서,
    상기 액션 입력은 상기 어느 하나의 패턴에 대한 서로 다른 시점에서의 복수 회 적용되는 사이즈 조정을 포함하는 학습 방법.
  15. 제 9 항에 있어서,
    상기 사이즈 조정을 액션 입력으로 수신하는 단계, 상기 액션 가치들 중 어느 하나를 선택하는 단계, 그리고 상기 손실 함수를 계산하는 단계를 동작 루프로 실행하는 단계를 더 포함하는 학습 방법.
  16. 제 15 항에 있어서,
    상기 동작 루프의 실행을 통해서 상기 손실 함수를 최소화하는 액션 가치에 대응하는 레이아웃 패턴이 상기 최적 레이아웃으로 선택되는 학습 방법.
  17. 타깃 레이아웃을 수신하여 공정 근접 보정을 위한 레이아웃 최적화 연산을 수행하는 시스템의 학습 방법에 있어서:
    상기 타깃 레이아웃을 사용하여 예측 레이아웃을 생성하는 시뮬레이션을 수행하는 단계; 그리고
    상기 시뮬레이션 결과로부터 생성되는 복수의 액션 가치들을 사용하여 손실 함수를 계산하고 업데이트하는 심층 강화 학습을 수행하는 단계를 포함하는 학습 방법.
  18. 제 17 항에 있어서,
    상기 시뮬레이션은 상기 패턴들 상호 간의 영향을 수치적으로 반영하는 가중치로 학습된 합성곱 신경망을 사용하여 수행되는 학습 방법.
  19. 제 17 항에 있어서,
    상기 심층 강화 학습을 수행하는 단계는:
    적어도 하나의 패턴에 대한 사이즈 조정을 액션 입력으로 수신하는 단계;
    상기 복수의 액션 가치들 중에서 상기 액션 입력에 대응하는 어느 하나를 선택하는 단계; 그리고
    상기 선택된 액션 가치와 상기 타깃 레이아웃에 대응하는 액션 가치를 비교하여 손실 함수를 계산하는 단계를 포함하는 학습 방법.
  20. 제 17 항에 있어서,
    상기 타깃 레이아웃은 세정 후 검사(After Cleaning Inspection: ACI) 임계 치수(Critical Dimension)에 대응하는 학습 방법.
KR1020220132289A 2022-10-14 2022-10-14 심층 강화 학습을 사용하는 레이아웃 설계 시스템 및 그것의 학습 방법 KR20240052351A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020220132289A KR20240052351A (ko) 2022-10-14 2022-10-14 심층 강화 학습을 사용하는 레이아웃 설계 시스템 및 그것의 학습 방법
US18/124,992 US20240126971A1 (en) 2022-10-14 2023-03-22 Layout design system using deep reinforcement learning and learning method thereof
CN202311328999.8A CN117892676A (zh) 2022-10-14 2023-10-13 使用深度强化学习的布局设计系统及其学习方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220132289A KR20240052351A (ko) 2022-10-14 2022-10-14 심층 강화 학습을 사용하는 레이아웃 설계 시스템 및 그것의 학습 방법

Publications (1)

Publication Number Publication Date
KR20240052351A true KR20240052351A (ko) 2024-04-23

Family

ID=90626489

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220132289A KR20240052351A (ko) 2022-10-14 2022-10-14 심층 강화 학습을 사용하는 레이아웃 설계 시스템 및 그것의 학습 방법

Country Status (3)

Country Link
US (1) US20240126971A1 (ko)
KR (1) KR20240052351A (ko)
CN (1) CN117892676A (ko)

Also Published As

Publication number Publication date
US20240126971A1 (en) 2024-04-18
CN117892676A (zh) 2024-04-16

Similar Documents

Publication Publication Date Title
US9471746B2 (en) Sub-resolution assist feature implementation with shot optimization
CN111562977B (zh) 神经网络模型拆分方法、装置、存储介质和计算机系统
KR20210133364A (ko) 반도체 장치의 제조를 위한 방법 및 컴퓨팅 장치
KR100217887B1 (ko) 패턴근접효과보정방법, 프로그램, 및 장치
WO2019199307A1 (en) Second-order optimization methods for avoiding saddle points during the training of deep neural networks
WO2022247092A1 (en) Methods and systems for congestion prediction in logic synthesis using graph neural networks
Cook et al. GPU based parallel ising computing for combinatorial optimization problems in VLSI physical design
JP2022007168A (ja) 学習プログラム、学習方法および情報処理装置
WO2021105313A1 (en) Parallelised training of machine learning models
CN115867920A (zh) 用于为技术系统配置控制代理的方法以及控制装置
CN112257848A (zh) 确定逻辑核布局的方法、模型训练方法、电子设备、介质
CN112149269A (zh) 优化设备、优化设备的控制方法和记录介质
Dann et al. Best of both worlds policy optimization
US20210103806A1 (en) Reinforcement learning pulse programming
JP7320705B2 (ja) 学習用データの評価方法、プログラム、学習用データの生成方法、学習済みモデルの生成方法、及び学習用データの評価システム
KR20240052351A (ko) 심층 강화 학습을 사용하는 레이아웃 설계 시스템 및 그것의 학습 방법
JP2021197108A (ja) 学習プログラム、学習方法および情報処理装置
US12086526B2 (en) Methods and devices of correcting layout for semiconductor processes using machine learning
CN111221248B (zh) 优化装置及优化装置的控制方法
US8549456B2 (en) System and method for circuit design floorplanning
Lin A Meta-Learning Reinforcement Training Method for Machine Learning Image-To-Image Optical Proximity Correction
CN117389108B (zh) 用于光学邻近效应修正的方法、设备和介质
US20210081772A1 (en) Reservoir computer, reservoir designing method, and non-transitory computer-readable storage medium for storing reservoir designing program
CN118363252B (zh) 用于版图处理的方法、设备和介质
US11698581B2 (en) Method and computing device for manufacturing semiconductor device