CN118056164A - 制造系统处的时间约束管理 - Google Patents

制造系统处的时间约束管理 Download PDF

Info

Publication number
CN118056164A
CN118056164A CN202280067485.9A CN202280067485A CN118056164A CN 118056164 A CN118056164 A CN 118056164A CN 202280067485 A CN202280067485 A CN 202280067485A CN 118056164 A CN118056164 A CN 118056164A
Authority
CN
China
Prior art keywords
operations
data
state data
machine learning
simulation
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202280067485.9A
Other languages
English (en)
Inventor
大卫·E·诺曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Applied Materials Inc
Original Assignee
Applied Materials Inc
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 Applied Materials Inc filed Critical Applied Materials Inc
Publication of CN118056164A publication Critical patent/CN118056164A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • 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
    • G06N3/092Reinforcement learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31372Mes manufacturing execution system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32252Scheduling production, machining, job shop
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45031Manufacturing semiconductor wafers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • 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/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • 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]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Automation & Control Theory (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Robotics (AREA)
  • General Factory Administration (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

提供了一种用于制造系统处的时间约束管理的方法。该方法包括:接收启动要在制造系统处运行的操作集合的请求,其中该操作集合包括一个或多个操作,每个操作具有一个或多个时间约束。该方法进一步包括:获得与该制造系统的当前状态有关的当前数据。该方法进一步包括:将机器学习模型应用于该当前数据,以确定要在该操作集合期间处理的候选基板集合。该方法进一步包括:基于该机器学习模型的输出,在该候选基板集合上启动该操作集合。

Description

制造系统处的时间约束管理
技术领域
本公开内容与电气部件有关,特别是与用于制造系统处的时间约束(timeconstraint)管理的方法和机构有关。
背景技术
在基板成为成品(如晶片、电子器件等)之前,基板可以依据操作集合进行处理,其中每个操作都在制造系统的一个工具处执行。在某些情况下,一个或多个操作可以经受时间约束。时间约束指的是在完成操作后,要完成后续操作的特定时间量。例如,可以依据第一操作和第二操作来处理基板,在第一操作中,将第一材料沉积在基板的表面上,在第二操作中,将第二材料沉积在第一材料上。第一操作和第二操作可以经受时间约束,其中第二材料要在特定的时间量内沉积在第一材料上,否则第一材料可能开始降解,基板不能用于生产成品(即变得不可用)。时间约束窗口指的是完成引起时间约束的操作(称为启动操作)的特定时间量,以及启动操作完成后要完成后续操作(称为完成操作)的时间量。在一些情况下,可以在启动操作与完成操作之间执行一个或多个操作。
在大多数情况下,当基板到达工具时,不能对基板开始操作,因为工具可能正在处理其他基板。因此,制造系统的操作员(例如,工业工程师、工艺工程师、系统工程师等)将操作排定在特定时间运行,以满足与操作相关联的时间约束。例如,操作员可以推迟对基板进行的操作,直到每个被设定为执行与时间约束相关联的操作的工具有容量(capacity)以在时间约束窗口内执行操作。
在某些情况下,第一时间约束窗口的完成操作也可以是第二时间约束窗口的启动操作。在这种情况下,制造系统的操作员可以排定第一时间约束窗口的启动操作在特定的时间开始,以满足第一时间约束窗口的第一时间约束和第二时间约束窗口的第二时间约束。在其他情况下,操作可以是第一时间约束窗口和第二时间约束窗口两者的完成操作。在这种情况下,操作员可以排定第一时间约束窗口和第二时间约束窗口的启动操作在特定的时间开始,以满足第一时间约束窗口的第一时间约束和第二时间约束窗口的第二时间约束。
随着制造系统变得越来越复杂,经受时间约束的操作也越来越多。为了排定基板在启动操作开始,操作员(例如使用计算系统)要考虑所有可能由启动操作引起的时间约束。为了考虑到所有可能由启动操作引起的时间约束,操作员要考虑到可以执行启动操作、完成操作以及两者之间的每个操作的每个工具的容量。在某些情况下,包括启动操作的时间约束窗口可以对应于相当长的时间(例如,6小时、8小时、12小时、24小时等)。操作员可能难以考虑到未来相当长一段时间内的每个时间约束和制造系统的每个工具的容量。对于一些计算系统来说,这种考虑可以被归类为NP-hard(非确定性多项式时间困难(non-deterministic polynomial-time hard))问题。因此,操作员可能无法成功地排定基板在操作集合的每个启动操作开始使得每个时间约束都得到满足。因此,基板可能违反操作集合的时间约束,变得不可用。每一个变得不可用的基板都可能会降低整体系统产量,并导致整体系统延迟的增加。
发明内容
以下是本公开内容的简化概要,以提供对本公开内容的一些方面的基本理解。这个概要并不是对本公开内容的广泛概述。它并不旨在识别本公开内容的关键或重要元素,也不旨在划定本公开内容的特定实施方式的任何范围或权利要求的任何范围。它的唯一目的是以简化的形式呈现本公开内容的一些概念以作为后面呈现的更详细描述的前奏。
在本公开内容的方面中,提供了一种用于制造系统处的时间约束管理的方法。该方法包括:接收启动要在制造系统处运行的操作集合的请求,其中该操作集合包括一个或多个操作,每个操作具有一个或多个时间约束。该方法进一步包括:获得与该制造系统的当前状态有关的当前数据。该方法进一步包括:将机器学习模型应用于该当前数据,以确定要在该操作集合期间处理的候选基板集合。该方法进一步包括:基于该机器学习模型的输出,在该候选基板集合上启动该操作集合。
在本公开内容的另一个方面中,提供了一种系统,该系统包括存储器和可操作地与该存储器耦合的处理器件。该处理器件执行包括以下步骤的指令:接收启动要在制造系统处运行的操作集合的请求,其中该操作集合包括一个或多个操作,每个操作具有一个或多个时间约束。该处理器件执行包括以下步骤的进一步指令:获得与该制造系统的当前状态有关的当前数据。该处理器件执行包括以下步骤的进一步指令:将机器学习模型应用于该当前数据,以确定要在该操作集合期间处理的候选基板集合。该处理器件执行包括以下步骤的进一步指令:基于该机器学习模型的输出,在该候选基板集合上启动该操作集合。
在本公开内容的另一个方面中,提供了一种用于训练机器学习模型的方法。该方法包括:获得与跟基板的制造有关的操作相关联的状态数据。该方法进一步包括:确定要在训练操作集合期间处理的训练基板集合。该方法进一步包括:在时间段内为该训练基板集合运行该训练操作集合的与该状态数据相关联的仿真。该方法进一步包括:基于该仿真的输出,训练机器学习模型。
附图说明
通过示例的方式而非限制的方式在附图的图中示出本公开内容。
图1是一个方块图,说明依据某些实施例的示例性系统架构。
图2是依据某些实施例,用于训练机器学习模型的方法的流程图。
图3是依据某些实施例,示例制造系统的俯视示意图。
图4说明了依据本公开内容的实施例,经受一个或多个时间约束的操作集合。
图5是一张流程图,示出依据某些实施例,基于使用机器学习模型产生的调度决策来启动操作集合的方法。
图6是另一张流程图,示出依据某些实施例,基于使用机器学习模型产生的调度决策来启动操作集合的方法。
图7是依据某些实施例,说明计算机系统的方块图。
具体实施方式
本文描述的是涉及制造系统处的时间约束管理的技术。在一些工艺中,可以在制造系统的各种阶段执行一系列操作。例如,可以执行一系列操作,以将涂层(或多个涂层)沉积在基板的表面上,并将三维图案蚀刻到涂层中。在某些情况下,一系列操作中的一个或多个可以经受时间约束。时间约束可以指一种限制或协议,其中在制造系统处执行一个操作后,后续的操作要在特定的时间量内完成。例如,制造系统可以经受时间约束,其中蚀刻工艺要在涂层沉积在基板的表面上之后的特定小时数(例如12小时)内对基板执行蚀刻。如果时间约束没有得到满足(例如,如果蚀刻工艺没有在特定的小时数内执行),基板就会变得有缺陷和不可用。
本公开内容的实施例涉及管理制造系统处的时间约束。处理器件(例如运行时间约束窗口管理器(例如图1的时间约束窗口管理器110)的处理器件)可以接收启动要在制造系统处运行的操作的请求,其中一个或多个操作经受时间约束。处理器件可以根据时间约束,确定可以在特定时间段内在制造系统处成功处理的基板数量。例如,处理器件可以识别制造系统处要在操作集合期间处理的候选基板集合。在一些实施例中,处理器件可以基于要在制造系统处处理的基板队列,确定候选基板集合。
为了识别候选基板集合,处理器件可以获得与制造设备的当前状态有关的数据。这些数据可以包括当前状态数据、传感器数据、上下文数据、任务数据等。例如,当前数据可以与以下项目有关:正在被处理的一个或多个基板上执行的一个或多个操作,在特定的时刻正在制造设备处处理的基板数量,制造设备队列中的基板数量,当前的服务寿命,设置数据,包括在生产环境的一个或多个制造设施处执行的各个工艺的操作集合,传感器数据,等等。然后,处理器件可以将机器学习模型(例如使用强化学习来训练的模型)应用于与制造设备的当前状态有关的数据。机器学习模型可以使用与跟半导体基板的制造有关的操作相关联的状态数据来训练。在一些实施例中,状态数据与跟半导体基板的制造有关的操作相关联,包括当前状态数据、历史状态数据或扰动状态数据。当前状态数据可以包括与制造设备的当前状态有关的数据。历史状态数据可以包括与制造设备的过去状态有关的数据。扰动状态数据可以包括经修改的状态数据(例如当前或历史状态数据,所述当前或历史状态数据具有被修改或歪曲的一个或多个参数)。
机器学习模型可以用于产生预测数据。在一些实施例中,预测数据可以包括一个或多个调度决策。调度决策可以确定在生产环境中的给定时间应该执行什么动作。在一些实施例中,调度决策可以表明在哪个时间处理候选基板集合。在其他的实施例中,调度可以涉及一些决策,例如是否开始处理具有少于允许数量的基板的批次,或等待直到有额外的基板可用,使得可以启动完整的批次,才启动批次。调度决策的例子可以包括且不限于,下一步应该在生产环境中的哪里处理基板,应该为生产环境中一件闲置的设备挑选哪个基板,等等。基于预测数据,处理器件可以在特定的时间在候选基板集合上启动操作集合。
在一些实施例中,处理器件可以对预测数据运行仿真。仿真可以对调度决策执行,并且基于以下项目来执行:制造系统的调度规则(例如用于确定应该在给定的时间在制造系统处执行哪个动作的规则),与制造系统相关联的状态数据,和/或由制造系统的用户(例如操作、工业工程师、工艺工程师、系统工程师等)所提供的用户数据。仿真可以产生输出,表明在仿真的操作集合中的每个操作期间都被成功处理而到达仿真时间段的结束的候选基板数量。仿真可以用于验证,预测数据不会导致时间约束误差。处理器件可以在制造系统处启动操作集合,基于预测数据和/或仿真输出来在该时间段内处理该数量的候选基板。
本公开内容的方面和实施方式通过提供用于预测将依据具有一个或多个时间约束的操作集合被成功处理的基板数量的技术,解决了现有技术的缺点。处理器件可以将经训练的机器学习模型应用于操作集合,以确定用于在当前或未来时间段期间处理的候选基板集合。通过应用经训练的机器学习模型,处理器件可以获得调度决策,表明在该时间段内可能依据该操作集合而被成功处理的基板数量。通过获得在该时间段内可能被成功处理的基板数量,处理器件可以排定适当数量的基板在该时间段内在该操作集合中启动,使得很少基板或没有基板违反该操作集合的时间约束。因此,违反该操作集合的时间约束的基板数量很少或几乎为零,导致制造系统处处理的大量基板不含缺陷或缺陷很少。因此,整体系统产量增加,整体系统延迟减少,因为有更多在制造系统处处理的基板变成可用的最终产品。
图1是一张方块图,说明了依据本公开内容的方面的生产环境100。生产环境100可以包括多个系统,例如且不限于生产调度器系统103、仿真系统105、时间约束窗口管理器110、制造设备112(例如制造工具、自动化器件等)、客户端器件114、预测系统116(预测系统116例如用于产生预测数据、提供模型调适、使用知识库等)和一个或多个计算机整合制造(CIM)系统101。生产环境100的例子可以包括且不限于制造厂、履行中心等。为了简单扼要起见,在本描述的任何部分,都使用制造系统作为生产环境100的例子。
在一些实施例中,生产环境100可以是半导体制造环境。在这种实施例中,制造设备112可以执行与半导体基板的制造有关的多个不同操作。例如,制造设备112可以执行切割操作、清洁操作、沉积操作、蚀刻操作、测试操作等。本公开内容的方面是关于在半导体制造环境中制造半导体基板的描述。然而,应该指出的是,本公开内容的实施方式可以应用于配置为制造或以其他方式处理与半导体基板不同的批(lot)的其他生产环境100。
制造设备112可以包括传感器126,这些传感器被配置为捕捉在制造设备112中正在处理的基板的数据。在一些实施例中,制造设备112和传感器126可以是传感器系统的一部分,所述传感器系统包括传感器服务器(例如,制造设施处的现场服务服务器(FSS))和传感器标识符读取器(例如,传感器系统的前开式标准舱(FOUP)射频识别(RFID)读取器)。在一些实施例中,制造设备112可以包括计量设备或可操作地与计量设备耦合,该计量设备包括计量服务器(例如,计量数据库、计量文件夹等)和计量标识符读取器(例如,计量系统的FOUP RFID读取器)。
制造设备112可以按照配方或在一段时间内执行作业来生产诸如电子器件这样的产品。制造设备112可以包括处理腔室。制造设备112可以在处理腔室处对基板(例如晶片等等)执行工艺。基板工艺的例子包括在基板的表面上沉积膜的一个或多个层的沉积工艺,在基板的表面上形成图案的蚀刻工艺,等等。制造设备122可以依据工艺配方来执行每个工艺。工艺配方定义了要在工艺期间对基板执行的特定操作集合,并且可以包括与每个操作相关联的一个或多个设定。例如,沉积工艺配方可以包括处理腔室的温度设定、处理腔室的压力设定、用于沉积在基板表面上的膜中所包括的材料的前驱物的流速设定等。
在一些实施例中,传感器126提供与制造设备112相关联(例如与通过制造设备112生产对应产品(如晶片)相关联)的传感器数据(例如,传感器值、特征、跟踪数据)。制造设备112可以按照配方或通过在一段时间内执行作业来生产产品。在一段时间内收到的传感器数据(例如对应于配方或作业的至少一部分)可以称为随时间推移从不同的传感器126收到的跟踪数据(例如,历史跟踪数据、当前跟踪数据等)。传感器数据可以包括以下项目中的一个或多个的值:温度(例如加热器温度)、间隔(SP)、压力、高频射频(HFRF)、静电卡盘(ESC)的电压、电流、材料流量、功率、电压等。传感器数据可以与制造参数相关联或指示制造参数,例如硬件参数,例如制造设备124的设定或部件(例如尺寸、类型等),或制造设备112的工艺参数。传感器数据可以在制造设备112正在执行制造工艺时提供(例如处理产品时的设备读数)。每个基板的传感器数据可以不同。
CIM 101、生产调度器系统103、仿真系统105、时间约束仿真模块107、时间约束窗口管理器110、制造设备112、客户端器件114、预测系统116和数据储存器140、150、160可以经由网络120相互耦合。网络120可以包括一个或多个广域网(WAN)、局域网络(LAN)、有线网络(例如以太网络)、无线网络(例如802.11网络或Wi-Fi网络)、蜂巢式网络(例如长期演进(LTE)网络)、路由器、集线器、交换器、服务器计算机、云端计算网络和/或上述项目的组合。CIM系统101、生产调度器系统103、仿真系统105、时间约束仿真模块107、时间约束窗口管理器110和预测系统116可以被单独托管,或以任何组合由任何类型的机器一起托管,这些机器包括服务器计算机、网关计算机、桌面计算机、膝上型计算机、平板计算机、笔记本电脑、PDA(个人数字助理)、移动通讯器件、手机、智能型手机、手持计算机或类似计算器件。在一些实施例中,仿真模块107是在机器上托管的服务器的一部分。在一些实施例中,预测系统116是在机器上托管的服务器的一部分。
数据储存器140、150和160可以是存储器(例如随机存取存储器)、驱动器(例如硬盘驱动器、闪存驱动器)、数据库系统,或能够储存数据的另一种类型的部件或器件。数据储存器140、150和160可以包括可以跨越多个计算器件(例如多个服务器计算机)的多个储存部件(例如多个驱动器或多个数据库)。
数据储存器140可以储存与在制造设备112处处理基板相关联的数据。例如,数据储存器140可以储存由制造设备112处的传感器126在基板工艺之前、期间或之后收集的数据(称为工艺数据)。工艺数据可以指历史工艺数据(例如,为在制造系统处处理的先前基板产生的工艺数据)和/或当前工艺数据(例如,为在制造系统处处理的当前基板产生的工艺数据)。数据储存器还可以储存与在制造设备112处处理的基板的一部分相关联的光谱数据或非光谱数据。光谱数据可以包括历史光谱数据和/或当前光谱数据。
数据储存器140还可以储存与在制造系统处处理的一个或多个基板相关联的上下文数据。上下文数据可以包括配方名称、配方步骤编号、预防性维护指示符、操作员等。上下文数据可以指历史上下文数据(例如,与为先前基板执行的先前工艺相关联的上下文数据)和/或当前工艺数据(例如,与当前工艺或要为先前基板执行的未来工艺相关联的上下文数据)。上下文数据可以进一步包括与处理腔室的特定子系统相关联的识别传感器。
数据储存器140也可以储存任务数据。任务数据可以包括在沉积工艺期间对基板执行的一个或多个操作集合,并可以包括与每个操作相关联的一个或多个设定。例如,沉积工艺的任务数据可以包括处理腔室的温度设定、处理腔室的压力设定、沉积在基板上的膜材料的前驱物的流速设定等。在另一个例子中,任务数据可以包括将压力控制在为流量值限定的压力点下。任务数据可以指历史任务数据(例如,与为先前基板执行的先前工艺相关联的任务数据)和/或当前任务数据(例如,与当前工艺或要为基板执行的未来工艺相关联的任务数据)。
在一些实施例中,数据储存器140可以被配置为储存制造系统的用户不可存取的数据。例如,制造系统的用户(例如,操作员)无法存取为正在制造系统处处理的基板获得的工艺数据、光谱数据、上下文数据等。在一些实施例中,储存在数据储存器140处的所有数据都可以是制造系统的用户无法存取的。在其他或类似的实施例中,储存在数据储存器140处的数据的一部分可以是用户不可存取的,而储存在数据储存器140处的数据的另一个部分可以是用户可存取的。在一些实施例中,储存在数据储存器140处的数据的一个或多个部分可以使用用户未知的加密机制来加密(例如数据是使用私用加密密钥来加密的)。在其他或类似的实施例中,数据储存器140可以包括多个数据储存器,其中用户不可存取的数据储存在一个或多个第一数据储存器中,而用户可存取的数据储存在一个或多个第二数据储存器中。
数据储存器150调度规则151、状态数据153和用户数据155。调度规则151可以是可以由生产调度器系统103执行的逻辑。在一些实施例中,调度规则151可以由用户(例如,工业工程师、工艺工程师、系统工程师等)定义。调度规则151的例子可以包括且不限于,选择最高优先级的基板进行下一步工作,选择基板,该基板使用的设置与当前配置工具所针对的设置相同,在采购订单完成时包装物品,在包装完成时运输物品,等等。单独的调度规则151可以与用于实施对应调度规则151的大量数据处理相关联。数据处理的例子可以包括且不限于导入数据、压缩数据、为数据加索引、过滤数据、对数据执行数学函数等。
状态数据153可以包括制造设备112的状态,例如操作温度、操作压力、正在制造设备处处理的基板数量、在给定时刻的制造设备队列中的基板数量、当前服务寿命、设置数据、包括在生产环境的一个或多个制造设施处执行的各个工艺的操作集合等。状态数据153可以在生产环境100的操作期间由制造设备112所产生,并储存在数据储存器150处。状态数据153可以包括当前状态数据、历史状态数据和扰动状态数据中的一个或多个。当前状态数据可以包括与制造设备112的当前状态(例如当前操作温度、当前操作压力、当前正在制造设备处处理的基板数量等)有关的数据。历史状态数据可以包括与制造设备112的过去状态(例如在特定时刻的过去操作温度、在特定时刻的过去操作压力、在特定时刻在制造设备处处理的过去基板数量等)有关的数据。扰动状态数据可以包括经修改的状态数据。特别是,扰动状态数据可以包括当前或历史状态数据,上述当前或历史状态数据具有被修改或歪曲的一个或多个参数。该一个或多个参数可以基于用户输入、某个百分比、某个值来修改、随机修改等。例如,扰动状态数据的在特定时刻在制造设备处正在处理的过去基板数量可以减少或增加两个基板的预定值。在另一个例子中,扰动状态数据的在特定时刻在制造设备处正在处理的过去基板集合数量可以减少或增加介于例如一与十之间的随机集合数量。在一些实施例中,状态数据153可以包括储存在数据储存器140中的数据或由数据储存器140中的数据产生。例如,状态数据153可以包括传感器数据、上下文数据、任务数据等或由传感器数据、上下文数据、任务数据等产生。
用户数据155可以包括由生产环境100的用户(例如操作员、工艺工程师、工业工程师、系统工程师等)所提供的数据。在一些实施例中,用户数据155可以经由客户端器件114提供。
用户器件114可以包括计算器件,如个人计算机(PC)、膝上型计算机、移动电话、智能型手机、平板计算机、随身型易网机计算机、网络连接的电视等。在一些实施例中,用户器件114可以经由一个或多个图形用户界面(GUI)向生产环境100的用户(例如操作员、工业工程师、工艺工程师、系统工程师等)提供信息。
CIM系统101的例子可以包括且不限于制造执行系统(MES)、企业资源规划(ERP)、生产规划和控制(PPC)、计算机辅助系统(例如,设计、工程、制造、处理规划、质量保证)、计算机数控机具、直接数控机具、控制器等。
在一些实施例中,预测系统114包括预测服务器112、服务器机器170和服务器机器180。预测服务器118、服务器机器170和服务器机器180可以各自包括一个或多个计算器件,例如机架式服务器、路由器计算机、服务器计算机、个人计算机、大型计算机、膝上型计算机、平板计算机、桌面计算机、图形处理单元(GPU)、加速器专用集成电路(ASIC)(例如张量处理单元(TPU))等。
服务器机器170包括训练集产生器172,所述训练集产生器172能够产生训练数据集(例如数据输入集合和目标输出集合)以训练、验证和/或测试机器学习模型190。机器学习模型190可以是任何能够根据数据进行学习的算法模型。下面就图2详细描述了数据集产生器172的一些操作。在一些实施例中,数据集产生器172可以将训练数据划分成训练集、验证集和测试集。在一些实施例中,预测系统116产生多个训练数据集合。
服务器机器180可以包括训练引擎182、验证引擎184、选择引擎185及/或测试引擎186。引擎可以指硬件(例如电路系统、专用逻辑、可编程逻辑、微代码、处理器件等)、软件(例如运行于处理器件、通用计算机系统或专用机器上的指令)、固件、微代码,或上述项目的组合。训练引擎182可以能够训练一个或多个机器学习模型190。机器学习模型190可以指由训练引擎182使用训练数据(在本文也称为训练集)所产生的模型工件,该训练数据包括数据输入和对应的目标输出(相应的训练输入的正确答案)。训练引擎182可以寻找训练数据中的将训练输入映射到目标输出(要预测的答案)的模式,并且提供捕捉这些模式的机器学习模型190。机器学习模型190可以使用统计建模、支持向量机(SVM)、放射状基底函数(RBF)、聚类、强化学习、监督式机器学习、半监督式机器学习、非监督式机器学习、k最近邻域算法(k-NN)、线性回归、随机森林、神经网络(例如人工神经网络)等中的一个或多个。
可以用于执行上述任务中的一些或全部的一种机器学习模型是人工神经网络,如深度神经网络。人工神经网络通常包括具有将特征映射到期望的输出空间的分类器或回归层的特征表示部件。例如,卷积神经网络(CNN)包含多层卷积过滤器。在较低层处,池化被执行,并且非线性问题可以被解决,在这些较低层上通常附加有多层感知器,将由卷积层所抽取的顶层特征映射到决策(例如分类输出)。深度学习是一类机器学习算法,它使用多层非线性处理单元的级联进行特征抽取和变换。每个连续的层使用来自前一层的输出作为输入。深度神经网络可以以监督(如分类)和/或无监督(如模式分析)的方式学习。深度神经网络包括层的分层结构,不同的层学习与不同的抽象层次对应的不同的表示层次。在深度学习中,每个层次都会学习将每个层次的输入数据变换成略微更加抽象和综合的表示。例如,在等离子体工艺调整中,原始输入可以是工艺结果分布(例如,指示整个基板表面上的一个或多个厚度值的厚度分布);第二层可以组成与等离子体工艺系统的控制元件的一个或多个区的状态相关联的特征数据(例如,区的定向、等离子体暴露持续时间等);第三层可以包括起始配方(例如,用作用于确定更新的工艺配方的起点的配方,该更新的工艺配方用于处理基板以产生满足阀值准则的工艺结果)。值得注意的是,深度学习过程可以自行学习哪些特征要最佳地放置在哪个层次。“深度学习”中的“深度”指的是变换数据所通过的层数。更确切地说,深度学习系统有相当大的信用分配路径(CAP)深度。CAP是从输入到输出的变换链。CAP描述了输入与输出之间潜在的因果关系。对于前馈神经网络,CAP的深度可以是网络的深度,并且可以是隐藏层的数量加1。对于信号可以通过一个层传播超过一次的递归神经网络来说,CAP深度可能是无限的。
在一个实施例中,一个或多个机器学习模型是递归神经网络(RNN)。RNN是一种神经网络,它包括存储器,使神经网络能够捕捉到时间上的相依性。RNN能够学习取决于当前输入和过去输入两者的输入-输出映射。RNN将处理过去和未来的流速测量,并基于这种连续的计量信息作出预测。RNN可以使用训练数据集进行训练,以产生固定数量的输出(例如,确定一组基板处理率,确定对基板工艺配方的修改)。可以使用的一种RNN是长短期记忆(LSTM)神经网络。
神经网络的训练可以以监督式学习的方式实现,这涉及通过网络馈送由有卷标的输入组成的训练数据集,观察网络的输出,限定误差(通过测量输出与标签值之间的差异来限定),并使用诸如深度梯度下降和反向传播之类的技术来调整网络所有层和节点的权重,使误差最小化。在许多应用中,对训练数据集中的许多有标签的输入重复这一过程会产生网络,当出现与存在于训练数据集中的输入不同的输入时,该网络可以产生正确的输出。在一些实施例中,神经网络的训练可以使用强化学习来实现。强化学习与监督式学习的不同之处在于,不需要呈现标记的输入/输出对,也不需要明确改正次优的动作。强化学习的重点可以是在探索未知领域和利用现有知识之间找到平衡。部分监督的强化算法可以结合监督式算法和RL算法的优点。
包含数百、数千、数万、数十万或更多传感器数据、工艺结果数据(例如,计量数据,如与传感器数据相关联的一个或多个厚度分布)和/或状态数据153的训练数据集可以用于形成训练数据集。
为了实现训练,处理逻辑可以将训练数据集输入一个或多个未训练的机器学习模型。在将第一输入输入机器学习模型之前,机器学习模型可以被初始化。处理逻辑基于训练数据集来训练未训练的机器学习模型,以产生执行上面阐述的各种操作的一个或多个经训练的机器学习模型。训练可以通过一次一个地将一个或多个传感器数据输入机器学习模型来执行。
机器学习模型处理输入以产生输出。人工神经网络包括输入层,该输入层由数据点中的值组成。下一层称为隐藏层,隐藏层处的节点各自接收一个或多个输入值。每个节点都包含应用于输入值的参数(例如权重)。因此,每个节点基本上都将输入值输入多变量函数(例如,非线性数学变换),以产生输出值。下一层可能是另一个隐藏层,或输出层。在这两种情况下,下一层处的节点从上一层处的节点接收输出值,每个节点对那些值应用权重,然后产生自己的输出值。这可以在每一层处执行。最后一层是输出层,在那里,机器学习模型所能产生的每个类别、预测和/或输出都有一个节点。
因此,输出可以包括一个或多个预测或推断。例如,输出预测或推断可以包括某个候选基板集合是否能在预定的时间量(例如,未来15分钟)内启动时间敏感的约束。处理逻辑基于机器学习模型的输出(例如,预测或推断)与关联于输入训练数据的目标卷标之间的差异来确定误差(即分类误差)。处理逻辑基于误差来调整机器学习模型中一个或多个节点的权重。可以为人工神经网络中的每个节点确定误差项或差量(delta)。基于这个误差,人工神经网络调整人工神经网络的一个或多个节点的一个或多个参数(节点的一个或多个输入的权重)。参数可以以反向传播的方式进行更新,使得最高层处的节点先被更新,然后是下一层处的节点,以此类推。人工神经网络包含多层“神经元”,其中每一层都从上一层处的神经元接收作为输入值。每个神经元的参数包括与从上一层处的每个神经元收到的值相关联的权重。因此,调整参数可以包括调整分配给人工神经网络中一个或多个层的一个或多个神经元的每个输入的权重。
在一轮或多轮训练之后,处理逻辑可以确定停止准则是否已被满足。停止准则可以是准确度的目标水平、来自训练数据集的经处理的图像的目标数量、参数相对于一个或多个先前数据点的变化的目标量、上述的组合和/或其他准则。在一个实施例中,当至少处理了最低数量的数据点,并且至少达到了阈值准确度,就满足了停止准则。阈值准确度可以是例如70%、80%或90%的准确度。在一个实施例中,如果机器学习模型的准确度已经停止提高,那么停止准则被满足。如果没有满足停止准则,那么就执行进一步的训练。如果满足了停止准则,那么训练就可能完成了。一旦机器学习模型被训练,训练数据集的保留部分就可以用来测试模型。
一旦产生一个或多个经训练的机器学习模型190,它们就可以作为预测部件119或预测部件119的部件储存在预测服务器118中。
验证引擎184可以能够使用来自训练集产生器172的验证集的对应的特征集合来验证机器学习模型190。一旦模型参数被优化,就可以执行模型验证,以确定模型是否得到了改进,并确定深度学习模型的当前准确度。验证引擎184可以基于验证集的对应的特征集合来确定机器学习模型190的准确度。验证引擎184可以丢弃准确度不满足阈值准确度的经训练的机器学习模型190。在一些实施例中,选择引擎185可以能够选择准确度满足阈值准确度的经训练的机器学习模型190。在一些实施例中,选择引擎185可以能够选择具有经训练的机器学习模型190中最高的准确度的经训练的机器学习模型190。
测试引擎186能够使用来自数据集产生器172的测试集的对应的特征集合来测试经训练的机器学习模型190。例如,使用训练集的第一特征集合来训练的第一经训练的机器学习模型190可以使用训练集的第一特征集合来测试。测试引擎186可以基于测试集来确定具有所有经训练的机器学习模型中最高的准确度的经训练的机器学习模型190。
如下面详细描述的,预测服务器118包括预测部件119,该预测部件能够对当前状态数据运行经训练的机器学习模型190,并提供表明制造系统处可以依据具有一个或多个时间约束的操作集合成功处理的基板数量的预测数据。这一点将在下文中进一步详细解释。
应注意,在一些其他的实施方式中,服务器机器170和180以及预测服务器112的功能可以由更少数量的机器来提供。例如,在一些实施例中,服务器机器170和180可以被集成成单个机器,而在一些其他或类似的实施例中,服务器机器170和180以及预测服务器112可以被集成为单个机器。
一般而言,在一个实施方式中被描述为由服务器机器170、服务器机器180和/或预测服务器118所执行的功能也可以在客户端器件114上执行。此外,归因于特定部件的功能性还可以由一起操作的不同部件或多个部件所执行。
在实施例中,“用户”可以被表示为单个个人。然而,本公开内容的其他实施例包含是由多个用户和/或自动来源所控制的实体的“用户”。例如,联合作为管理员群组的个人用户集合可以被视为“用户”。
生产调度器系统103可以为生产环境100作出调度决策。调度决策决定在生产环境100中的给定时间应该执行什么动作。调度通常涉及一些决策,例如是否开始处理基板少于允许数量的批次,或等待直到有额外的基板可用,使得可以启动完整的批次,才启动批次。调度决策的例子可以包括且不限于,下一步应该在生产环境中的哪里处理基板,应该为生产环境中的闲置的设备挑选哪个基板,等等。在一些实施例中,生产调度器系统103可以使用由预测部件119所产生的预测数据来作出调度决策。在一些实施例中,生产调度器系统103可以使用储存在数据储存器150中的一个或多个调度规则151来作出调度决策。
在一些情况下,制造过程可以包括由生产环境100内的制造设备112(例如工具或自动化器件)所执行的数百个操作。在许多情况下,一个或多个操作可以经受时间约束。如先前的讨论,时间约束指的是在完成操作后,要完成后续操作的特定时间量。例如,在第一材料沉积在基板的表面上之后,第二材料要在第一材料的沉积之后的特定时间量内沉积在第一材料上。如果第二涂层没有在特定的时间量内沉积在第一材料上,那么第一材料可能开始退化(degrade),使基板不可用。时间约束窗口指的是完成第一操作(称为启动操作)的时间量和要完成第二操作(称为完成操作)的特定时间量。在一些实施例中,在启动操作与完成操作之间执行的一个或多个操作也与时间约束窗口相关联。依据先前的例子,时间约束窗口可以指将第一材料沉积在基板表面上的第一时间量和要将第二材料沉积在第一材料上的特定时间量。多个操作可以经受一个或多个时间约束。在一些实施例中,第一时间约束窗口的完成操作也可以是第二时间约束窗口的启动操作。
时间约束窗口管理器110可以确定在特定时间段内在时间约束窗口的启动操作中启动的基板数量。在一些实施例中,时间约束窗口管理器110可以响应于请求(例如来自生产调度器系统103、来自操作员等),确定要在启动操作中启动的基板数量。确定的基板数量称为基板极限111。生产调度器系统103可以通过保持基板计数器值,监测在启动操作中启动的基板数量是否满足基板极限111。生产调度器系统103可以为每个在启动操作中启动的基板更新基板计数器值(例如将基板计数器值减一)。在一些实施例中,生产调度器系统103可以响应于确定基板计数器值为零,防止基板在启动操作中启动。时间约束窗口管理器110可以向生产调度器系统103提供基板计数器值(例如作为在仿真系统105处运行仿真的结果)。
仿真系统105可以运行一般比生产环境100的实时操作快的仿真。例如,仿真系统105可以在几秒钟内运行一个星期的仿真时间的仿真,以测试生产环境100操作的良好程度。在一些实施例中,仿真系统105包括仿真模块107,以仿真应用于生产环境100处的工艺的一个或多个操作的调度规则151。在另一个实施例中,仿真系统105与外部仿真模块107通讯,以仿真调度规则151。
仿真模块107可以执行仿真模型163,以仿真在生产环境100处执行的一个或多个操作。仿真模型163是配置为产生关于制造设备112和/或在制造设备112处处理的基板的未来状态的预测的模型。在一些实施例中,仿真模块107可以通过处理由预测部件119所产生的预测数据(例如仿真生产环境是否能够成功处理由预测数据表明的基板数量)来产生预测。在一些实施例中,仿真模型163可以通过基于调度规则151、状态数据153和/或用户数据155执行一个或多个操作来产生预测。在一些实施例中,仿真模型163可以通过进行计算、预报、统计预测、趋势分析等来产生预测。在一些实施例中,仿真模型163可以是试探法仿真模型。在其他或类似的实施例中,仿真模型163可以是机器学习模型。
在一些实施例中,仿真模块107可以将一个或多个仿真条件165应用于仿真模型163所仿真的该一个或多个操作。例如,仿真模块107可以执行仿真模型163,以仿真特定的操作集合、仿真特定时间段内的一个或多个操作、仿真特定的基板数量、仿真具有特定标识符的基板,等等。在一些实施例中,仿真条件165可以是在生产环境110的初始化期间由生产环境100的部件(例如CIM系统101、时间约束管理器110、生产调度器系统103)所设定的预设条件。在其他或类似的实施例中,仿真条件165可以由生产环境100的部件或生产环境100的用户(例如经由客户端器件114)在生产环境100的操作期间提供给仿真模块107。
在仿真模型163的执行期间,操作可以调用调度决策。例如,操作可以触发(例如呼叫)仿真制造设备112为仿真基板执行仿真操作的决策。仿真模块107可以识别与调度决策相关联的调度规则151(例如来自数据储存器150),并使用仿真模型163依据识别的调度规则151作出调度决策。
在一些实施例中,一个或多个输入参数可以提供给调度规则151供仿真模型163作出调度决策。该一个或多个输入参数可以包括与一个或多个仿真制造设备112相关联的状态数据153。在其他或类似的实施例中,该一个或多个输入参数可以包括用户数据155。仿真模块107可以从数据储存器150识别参数值(例如状态数据153、用户数据155等),并向仿真模型163提供该参数值以用于为调度规则151提供的该一个或多个输入参数。
仿真模块107可以运行仿真模型163以代表生产环境100处的延长时间量。例如,仿真模块107可以运行仿真模型163以仿真生产环境100的一个小时、几个小时、几天、一个星期等的操作。在仿真期间,仿真模型163可以作出大量的调度决策。仿真模块107可以产生与仿真和/或由仿真模型163作出的调度决策相关联的报告。在一些实施例中,报告可以包括与例如生产循环时间、生产产量、设备利用率等对应的数据。仿真模块107可以向生产环境100的一个或多个部件(例如时间约束管理器110、生产调度器系统103、CIM系统101等)和/或向生产环境100的用户(例如经由客户端设备114)提供报告。
在一些实施例中,时间约束窗口管理器110可以基于生产环境100的仿真,确定要在制造系统的特定时间段内为操作集合启动的基板数量。时间约束窗口管理器110可以确定一个或多个仿真条件175,以应用于由仿真模型173所执行的仿真。该一个或多个仿真条件可以包括,要仿真的特定操作集合,要仿真的特定时间段,要仿真的基板数量,要仿真的特定基板的标识,等等。在一些实施例中,时间约束窗口管理器110基于从生产调度器系统103或生产环境100的用户(例如经由客户端器件114)接收的通知,确定该一个或多个仿真条件175。在一些实施例中,时间约束窗口管理器110基于由模型190产生并从预测部件119接收的预测数据,确定该一个或多个仿真条件175。在其他或类似的实施例中,时间约束窗口管理器110基于与制造设备112相关联的状态数据153,确定该一个或多个仿真条件175。例如,时间约束窗口管理器110可以基于状态数据153,确定在12小时的时间段内,依据具有时间约束的第一操作集合成功处理了100个基板。因此,时间约束窗口管理器110可以确定要仿真的操作集合是第一操作集合,要仿真的特定时间段是12小时的时间段,要仿真的基板数量是100。依据先前所述的实施例,时间约束窗口管理器可以向仿真模块107提供仿真条件,仿真模块107可以基于这些仿真条件来执行仿真模型173。
仿真模块107可以产生与制造系统的特定时间段内的操作集合的仿真相关联的报告。在一些实施例中,报告可以包括与例如由仿真模型163所仿真的特定数量的基板的生产产量对应的数据。例如,报告可以包括以下指示:对于100个仿真基板,90个仿真基板在仿真的操作集合中的每个操作期间,都在没有违反任何时间约束的情况下,被成功处理而到达特定时间段的结束。仿真模块107可以向时间约束管理器110传输报告。在一些实施例中,仿真模块107或时间约束窗口管理器110可以向用户器件114传输报告。客户端器件114可以经由图形用户界面(GUI)向制造系统的用户提供来自报告的数据,该图形用户界面是经由用户器件114显示的。
响应于从仿真模块107接收报告,时间约束管理器110可以确定要在特定时间段内在时间约束窗口的启动操作(即要在制造设备112处执行的操作集合中的启动操作)中启动的基板数量。如先前的讨论,确定的基板数量称为基板极限111。时间约束窗口管理器110可以向生产调度器系统103提供基板极限111。如先前所述,生产调度器系统103可以使用基板极限111来确定是否在特定时间段期间在启动操作中启动对一个或多个基板的处理。
图2是依据本公开内容的方面,用于训练机器学习模型的方法200的流程图。方法200是由处理逻辑所执行的,该处理逻辑可以包括硬件(电路系统、专用逻辑等)、软件(例如运行于通用计算机系统或专用机器上)、固件或上述项目的某种组合。在一个实施方式中,方法200可以由计算机系统(例如图1的计算机系统架构100)所执行。在其他或类似的实施方式中,方法200的一个或多个操作可以由图式中未描绘的一个或多个其他机器所执行。在一些方面中,方法200的一个或多个操作可以由服务器机器170、服务器机器180和/或预测服务器118执行。
为便于解释,这些方法被描绘和描述成一系列的动作。然而,依据本公开内容的动作可以以各种顺序和/或并行地发生,并且与本文未提出和描述的其他动作一起发生。此外,不执行所有示出的动作也能实施依据所公开的主题的方法。此外,本领域中的技术人员将了解并理解,这些方法可以替代性地经由状态图或事件被表示为一系列的相互关联的状态。此外,应理解,本说明书中所公开的方法能够被储存在制造品上,以促进将这种方法运输和转移到计算器件。本文所使用的术语制造品旨在包含从任何计算机可读取器件或储存媒体可存取的计算机程序。
在操作210中,处理逻辑将训练集T初始化为空集合(例如{})。
在操作212中,处理逻辑获得与跟半导体基板的制造有关的操作相关联的状态数据。在一些实施例中,与跟半导体基板的制造有关的操作相关联的状态数据是历史状态数据。历史状态数据可以包括与制造设备112的过去状态(例如在特定时刻的过去操作温度、在特定时刻的过去操作压力、在特定时刻在制造设备处处理的过去基板数量等)有关的数据。在一些实施例中,第一状态数据是当前状态数据。当前状态数据可以包括与制造设备112的当前状态(例如当前操作温度、当前操作压力、当前正在制造设备处处理的基板数量等)有关的数据。在一些实施例中,状态数据是扰动状态数据。扰动状态数据可以包括经修改的状态数据。在一些实施例中,除了状态数据以外,处理逻辑也可以获得传感器数据、上下文数据、任务数据等。这个数据也可以用于下文所讨论的操作。
在操作214中,处理逻辑确定要在训练操作集合期间处理的训练基板集合。训练候选基板集合和训练操作集合是使用状态数据、操作员输入、预定规则集合(例如一个或多个预定基板集合、一个或多个预定操作集合等)、随机输入或上述的任何组合来确定的。训练基板集合可以是仿真条件,如就图1的描述。
在一些实施例中,训练操作集合可以是图4所示的操作集合。图4说明了依据本公开内容的实施例,经受一个或多个时间约束的操作集合400。训练操作集合的每个操作410可以与在生产环境的一个或多个制造设施(例如生产环境100的制造设备112(例如工具或自动化器件))处执行的单独工艺对应。在一些实施例中,操作集合400中的每个操作可以是连续的操作(例如每个操作410都依据特定的顺序执行)。在一些实施例中,每个操作410可以与在前端制造设施处执行的单独工艺对应,包括但不限于光刻、沉积、蚀刻、清洁、离子注入、化学和机械抛光等。在其他或类似的实施例中,每个操作可以与在后端制造设施处执行的单独工艺对应,包括但不限于将完成的晶片切割成单独的半导体裸晶、测试、组装、包装等。
如先前所述,一个或多个操作410可以经受时间约束。例如,操作2可以是用于将第一材料沉积在基板的表面上的第一沉积操作,操作3可以是用于将第二材料沉积在第一材料上的第二沉积操作。操作2和3可以经受第一时间约束,其中第二材料要在第一材料被沉积在基板的表面上之后,在特定的时间量(例如6小时)内沉积在第一材料上。供制造设备112执行操作2和3的时间量可以对应于时间约束窗口412。时间约束窗口412可以包括完成启动操作(即启动时间约束窗口412的操作410)的第一时间量,以及特定时间量,制造设备112要在该特定时间量内完成完成操作(即完成时间约束窗口412的操作410)。依据先前的例子,操作2要在制造设备112处对基板启动,使得操作2和3将在第一时间约束窗口412A内对基板完成。
在一些实施例中,时间约束窗口412的完成操作可以是另一个时间约束窗口412的启动操作。例如,操作3可以是第二沉积操作,操作6可以是蚀刻操作。操作3、4、5和6可以经受时间约束,其中第二材料要在第二材料在操作3中被沉积之后,在特定的时间量(例如12小时)内在操作6中被蚀刻。第二时间约束窗口412B可以包括在操作3中沉积第二材料的时间量,以及完成操作6的特定时间量。操作3要在制造设备112处启动,使得操作3、4、5和6将在第二时间约束窗口412B内完成。依据先前的例子,操作3可以经受操作2的时间约束。因此,操作2要对基板启动,使得操作2和3将在第一时间约束窗口412A内对基板完成,并且操作3、4、5和6将在第二时间约束窗口412B内完成。第一时间约束窗口412A和第二时间约束窗口412B一起称为级联时间约束窗口。
在一些实施例中,操作410可以经受超过一个时间约束。例如,操作6、7、8、9和10可以经受第一时间的约束,其中操作10要在操作6完成之后的特定时间量内完成。第三时间约束窗口412C可以包括执行操作6的时间量和完成操作10的特定时间量。操作9和10也可以经受第二时间约束,其中操作10要在操作9完成之后的特定时间量内完成。第四时间约束窗口412D可以包括完成操作9的时间量和完成操作10的特定时间量。因此,操作6要启动,使得操作6、7、8、9和10将在第三时间约束窗口412D内完成,并且操作9和10将在第四时间约束窗口内完成。第三时间约束窗口412C和第四时间约束窗口412一起称为嵌套时间约束窗口。
回到图2,在操作216中,处理逻辑使用状态数据,在一时间段内为训练基板集合运行训练操作集合的仿真。在一些实施例中,处理逻辑可以确定训练操作集合要在制造系统处运行的特定时间段。依据先前所述的实施例,特定时间段可以是仿真条件。在一些实施例中,处理逻辑使用仿真系统105运行仿真。
在操作218中,处理逻辑接收仿真的输出,该输出表明在仿真的操作集合中的每个操作期间都被成功处理而到达该时间段的结束的候选基板数量。在一些实施例中,依据先前所述的实施例,仿真模块107可以产生与仿真相关联的数据。报告可以表明训练基板集合中在仿真的训练操作集合中的每个操作期间都被成功处理而到达该时间段的结束的候选基板数量。
在操作220中,处理逻辑基于与跟半导体基板的制造有关的操作相关联的状态数据、训练基板集合、训练操作集合和仿真输出,来产生训练数据。在一些实施例中,训练数据可以包括涉及状态数据、训练基板集合、训练操作集合和仿真输出中的一者或多者的映射,其中状态数据、训练基板集合、训练操作集合和仿真输出中的一者或多者关联于(或映射到)状态数据、训练基板集合、训练操作集合和仿真输出中的一者或多者。在操作222中,处理逻辑将训练数据添加到训练集T。
在操作224中,处理逻辑确定训练集T是否包括足以训练机器学习模型的训练数据量。应注意,在一些实施方式中,训练集T的充分性可以单纯基于训练集中的训练数据量或映射数量来确定,而在一些其他的实施方式中,训练集T的充分性可以附加于或替代于输入/输出映射的数量基于一个或多个其他的准则(例如训练例的多样性的度量等等)来确定。响应于确定训练集不包括足以训练集机器学习模型的训练数据量,方法200返回操作212。响应于确定训练集T包括足以训练集机器学习模型的训练数据量,方法200继续进行到操作228。
在操作226中,处理逻辑提供训练集T以训练机器学习模型。在一个实施方式中,训练集T被提供给服务器机器180的训练引擎182以执行训练。
在一些实施例中,处理逻辑可以执行离群值检测方法,以便在训练机器学习模型之前从训练集T移除异常值。离群值检测方法可以包括识别与大多数训练数据有显著差异的值的技术。这些值可以由误差、噪声等产生。
在操作226之后,机器学习模型可以用于基于当前状态数据产生预测数据。在一些实施例中,预测数据可以包括一个或多个调度决策。例如,机器学习模型可以接收当前状态数据作为输入,并输出调度决策。如上面的讨论,调度决策决定在生产环境100中的给定时间应该执行什么动作。调度可能涉及一些决策,例如是否开始处理一个基板少于允许数量的批次,或等待直到有额外的基板可用,使得可以启动完整的批次,才启动批次。调度决策的例子可以包括且不限于,下一步应该在生产环境中的哪里处理基板,应该为生产环境中一件闲置的设备挑选哪个基板,等等。
在一些实施例中,制造系统可以包括超过一个的处理腔室。例如,图3的示例制造系统300说明了多个处理腔室314、316、318。应该注意的是,在一些实施例中,为训练机器学习模型而获得的数据和为提供作为对机器学习模型的输入而收集的数据可以与制造系统的同一处理腔室相关联。在其他或类似的实施例中,为训练机器学习模型而获得的数据和为提供作为对机器学习模型的输入而收集的数据可以与制造系统的不同处理腔室相关联。在其他或类似的实施例中,为训练机器学习模型而获得的数据可以与第一制造系统的处理腔室相关联,为提供作为对机器学习模型的输入而收集的数据可以与第二制造系统的处理腔室相关联。
图3是依据本公开内容的方面的示例制造系统300的俯视示意图。制造系统300可以在基板302上执行一个或多个工艺。基板302可以是任何具适合刚性的、固定尺寸的、平面的制品,例如含硅的圆盘或晶片、图案化的晶片、玻璃板等等,适于在上面制造电子设备或电路部件。
制造系统300可以包括处理工具304和与处理工具304耦合的工厂接口306。处理工具304可以包括壳体308,其中具有传送腔室310。传送腔室310可以包括一个或多个处理腔室(也称为处理腔室)314、316、318,它们围绕该传送腔室设置并且与传送腔室耦合。处理腔室314、316、318可以通过相应的端口(例如狭缝阀等等)与传送腔室310耦合。传送腔室310也可以包括传送腔室机器人312,它被配置为在处理腔室314、316、318、装载锁定320等等之间传送基板302。传送腔室机器人312可以包括一个或多个臂,其中每个臂在每个臂的端部处包括一个或多个终端受动器。终端受动器可以被配置为搬运特定的物体,如晶片、传感器圆盘、传感器工具等。
处理腔室314、316、318可以被调适为在基板302上实现任何数量的工艺。可以在每个处理腔室314、316、318中进行相同或不同的基板工艺。基板工艺可以包括原子层沉积(ALD)、物理气相沉积(PVD)、化学气相沉积(CVD)、蚀刻、退火、固化、预清洁、金属或金属氧化物移除等。可以在其中在基板上实现其他的工艺。处理腔室314、316、318可以各自包括一个或多个传感器,这些传感器被配置为在基板工艺之前、之后或期间捕捉基板302的数据。例如,该一个或多个传感器可以被配置为在基板工艺期间捕捉基板302的一部分的光谱数据和/或非光谱数据。在其他或类似的实施例中,该一个或多个传感器可以被配置为在基板工艺之前、之后或期间捕捉与处理腔室314、316、318内的环境相关联的数据。例如,该一个或多个传感器可以被配置为在基板工艺期间捕捉与处理腔室314、316、318内环境的温度、压力、气体浓度等相关联的数据。
装载锁定320也可以与壳体308和传送腔室310耦合。装载锁定320可以被配置为一侧与传送腔室310界面相接和耦合,并且与工厂接口306界面相接和耦合。在一些实施例中,装载锁定320可以具有环境受控的大气,它可以从真空环境(其中基板可以被传送到传送腔室310或从传送腔室310传送)改变为大气压力或接近大气压力的惰性气体环境(其中基板可以被传送到工厂接口306和从工厂接口306传送)。工厂接口306可以是任何合适的外壳,例如设备前端模块(EFEM)。工厂接口306可以被配置为从在工厂接口306的各种装载端口324处对接的基板载体322(例如前开式标准舱(FOUP))接收基板302。工厂接口机器人326(以虚线示出)可以被配置为在载体(也称为容器)322与装载锁定320之间传送基板302。载体322可以是基板储存载体或替换零件储存载体。
制造系统300也可以与客户端器件(未示出)连接,它被配置为向用户(例如操作员)提供关于制造系统300的信息。在一些实施例中,客户端器件可以经由一个或多个图形用户界面(GUI)向制造系统300的用户提供信息。例如,客户端器件可以经由GUI提供关于在处理腔室314、316、318处执行的沉积工艺期间要沉积在基板302的表面上的膜的目标厚度分布的信息。依据本文所述的实施例,客户端器件还可以提供关于鉴于被预测为与目标分布对应的相应沉积设定集合而对工艺配方进行的修改的信息。
制造系统300还可以包括系统控制器328。系统控制器328可以是和/或可以包括诸如个人计算机、服务器计算机、可编程逻辑控制器(PLC)、微控制器等之类的计算器件。系统控制器328可以包括一个或多个处理器件,它可以是诸如微处理器、中央处理单元等之类的通用处理器件。更详细而言,处理器件可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器或实施其他指令集的处理器或实施指令集的组合的处理器。处理器件也可以是诸如特定应用集成电路(ASIC)、现场可编程逻辑门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等之类的一个或多个特殊用途处理器件。系统控制器328可以包括数据储存器件(例如一个或多个磁盘驱动器和/或固态硬盘)、主存储器、静态存储器、网络接口和/或其他部件。系统控制器328可以执行指令以执行本文所述的方法学及/或实施例中的任一个或多个。在一些实施例中,系统控制器328可以执行指令以依据工艺配方在制造系统300处执行一个或多个操作。指令可以储存在计算机可读取储存媒体上,该计算机可读取储存媒体可以包括主存储器、静态存储器、辅助储存器和/或处理器件(在指令的执行期间)。
系统控制器328可以从包括在制造系统300的各种部分(例如,处理腔室314、316、318、传送腔室310、装载锁定320等)上或内的传感器接收数据。在一些实施例中,由系统控制器328所接收的数据可以包括基板302的一部分的光谱数据和/或非光谱数据。在其他或类似的实施例中,由系统控制器328接收的数据可以包括与在处理腔室314、316、318处处理基板302相关联的数据,如前所述。出于本描述的目的,系统控制器328被描述为从包括在处理腔室314、316、318内的传感器接收数据。然而,系统控制器328可以从制造系统300的任何部分接收数据,并且可以依据本文所述的实施例使用从该部分所接收的数据。在一个说明性的例子中,系统控制器328可以在处理腔室314、316、318处的基板工艺之前、之后或期间从处理腔室314、316、318的一个或多个传感器接收数据。从制造系统300的各种部分的传感器收到的数据可以储存在数据储存器350中。数据储存器350可以被包括作为系统控制器328内的部件,或可以是与系统控制器328分开的部件。在一些实施例中,数据储存器350可以是就图1所描述的数据储存器140、150、160。
图5是依据本公开内容的方面,用于基于使用机器学习模型产生的调度决策来启动操作集合的方法500的流程图。方法500是由处理逻辑所执行的,该处理逻辑可以包括硬件(电路系统、专用逻辑等)、软件(例如运行于通用计算机系统或专用机器上)、固件或上述项目的某种组合。在一个实施方式中,方法500可以由计算机系统(例如图1的计算机系统架构100)所执行。在其他或类似的实施方式中,方法500的一个或多个操作可以由图中未描绘的一个或多个其他机器所执行。在一些方面中,方法500的一个或多个操作可以由服务器机器170、服务器机器180、预测服务器118、CIM系统101、生产调度器系统103、时间约束管理器110和/或仿真系统105所执行。
在操作510中,处理逻辑接收启动要在制造系统处运行的操作集合的请求。在一些实施例中,制造系统可以是图1的生产环境100。在一些实施例中,请求可以是启动要在特定时刻在制造系统处运行的操作集合的请求。例如,请求可以是在晚上8点启动操作集合的请求。在一些实施例中,请求可以是在候选基板集合上启动操作集合的请求。在一些实施例中,请求可以是对与候选基板集合有关的调度决策的请求。例如,请求可以请求下一个可用的时间,以在不会发生时间约束问题的情况下在候选基板集合上启动操作集合。
在操作512中,处理逻辑获得与制造设备的当前状态有关的当前数据。在一些实施例中,当前数据可以包括当前状态数据、传感器数据、上下文数据、任务数据等。在一些实施例中,当前数据可以包括在特定的时刻正在制造设备处处理的基板数量,制造设备队列中的基板数量,当前的服务寿命,设置数据,包括在生产环境的一个或多个制造设施处执行的各个工艺的操作集合,等等。在一些实施例中,当前数据可以与正在被处理的一个或多个基板上执行的一个或多个操作有关。例如,该操作可以包括在处理腔室中执行以在基板的表面上沉积膜的一个或多个层的沉积工艺,在基板的表面上的膜的该一个或多个层上执行的蚀刻工艺,等等。该操作可以依据配方来执行。传感器数据可以包括以下项目中的一个或多个的值:温度(例如加热器温度)、间隔、压力、高频射频、静电卡盘的电压、电流、材料流量、功率、电压等。传感器数据可以与制造参数相关联或指示制造参数,例如硬件参数,例如制造设备112的设定或部件(例如尺寸、类型等),或制造设备112的工艺参数。
在操作514中,处理逻辑将经训练的机器学习模型(例如模型190)应用于获得的当前数据。机器学习模型可以用于产生包括一个或多个调度决策的预测数据。
在操作516中,处理逻辑经由机器学习模型基于当前数据来产生输出。在一些实施例中,输出可以是包括一个或多个调度决策的预测数据。调度决策决定在生产环境100中的给定时间应该执行什么动作。在一些实施例中,调度决策可以包括候选基板集合和指定的时间段。
在操作518中,处理逻辑根据输出数据,在制造系统处启动操作集合,以在指定的时间段内处理候选基板集合。在一些实施例中,处理器件通过为操作集合中的第一操作设定基板极限111以与候选基板数量对应,来在制造系统处启动操作集合。如先前所述,时间约束窗口管理器110可以通过向生产调度器系统103提供候选基板数量,为第一操作设定基板极限111。生产调度器系统103可以使用基板计数器值来监测在启动操作中启动的基板数量是否满足该时间段内的基板极限111。例如,对于在操作集合400中的启动操作中启动的每个基板,生产调度器系统103可以通过将基板计数器值减1来更新基板计数器值。更新的基板计数器值可以向生产调度器系统103表明基板队列中可以在该时间段内在启动操作中启动的基板数量。
图6是依据本公开内容的方面,用于基于使用机器学习模型产生的调度决策来启动操作集合的方法600的流程图。方法600是由处理逻辑所执行的,该处理逻辑可以包括硬件(电路系统、专用逻辑等)、软件(例如运行于通用计算机系统或专用机器上)、固件或上述项目的某种组合。在一个实施方式中,方法600可以由计算机系统(例如图1的计算机系统架构100)所执行。在其他或类似的实施方式中,方法600的一个或多个操作可以由图中未描绘的一个或多个其他机器所执行。在一些方面中,方法600的一个或多个操作可以由服务器机器170、服务器机器180、预测服务器118、CIM系统101、生产调度器系统103、时间约束管理器110和/或仿真系统105所执行。
在操作610中,处理器件可以经由机器学习模型接收基于当前数据的输出。输出可以是包括一个或多个调度决策的预测数据。为了接收输出,处理逻辑可以执行图5的操作510-516。
在操作612处,处理逻辑可以基于预测数据运行操作集合的仿真。在一些实施例中,仿真可以使用由调度决策所表明的候选基板集合和时间段来执行。仿真可以进一步基于制造系统的调度规则、与制造系统相关联的状态数据和/或由制造系统的用户(例如操作、工业工程师、工艺工程师、系统工程师等)所提供的用户数据。仿真可以产生输出,表明在仿真的操作集合中的每个操作期间都被成功处理而到达仿真时间段的结束的候选基板数量。仿真可以用于验证,预测数据不会导致时间约束误差,或导致的时间约束误差很少。在一些实施例中,处理逻辑或用户输入可以基于仿真的输出来修改预测数据(例如调整候选基板集合和/或时间段)。例如,响应于仿真输出表明在仿真时间段期间未被成功处理(例如在没有违反任何时间约束的情况下被处理)的候选基板数量,处理逻辑可以基于预定的或随机的值来调整启动时间段和/或候选基板数量。然后,处理逻辑可以基于经修改的预测数据来运行操作集合的仿真,以产生新的仿真输出。
在操作614中,处理逻辑可以在制造系统处启动操作集合,以基于仿真输出(或新的仿真输出)在该时间段内处理该数量的候选基板。
图7是依据某些实施例,说明计算机系统700的方块图。在一些实施例中,计算机系统700可以与其他的计算机系统连接(例如经由网络连接,例如局域网络(LAN)、内部网络、外部网络或互联网)。计算机系统700可以以客户端-服务器环境中的服务器或客户端计算机的身份操作,或作为同级间或分布式网络环境中的同级计算机操作。计算机系统700可以由个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂巢式电话、网页用具(webappliance)、服务器、网络路由器、交换机或网桥,或能够执行指令集(依序执行或以其他方式执行)的任何器件所提供,所述指令指定要由该器件所采取的动作。进一步地,术语“计算机”应包括单独地或联合地执行一个或多个指令集以执行本文所述的方法中的任一个或多个的计算机的任何集合。
在另一个方面中,计算机系统700可以包括处理器件702、易失性存储器704(例如随机存取存储器(RAM))、非易失性存储器706(例如只读存储器(ROM)或可电擦除可编程ROM(EEPROM))和数据储存器件716,上述器件可以经由总线708彼此通讯。
处理器件702可以由诸如通用处理器(举例而言,例如复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器、实施其他类型指令集的微处理器或实施多种类型指令集的组合的微处理器)或特殊处理器(举例而言,例如特定应用集成电路(ASIC)、现场可编程逻辑门阵列(FPGA)、数字信号处理器(DSP)或网络处理器)之类的一个或多个处理器所提供。
计算机系统700可以进一步包括网络接口器件722(例如与网络774耦合)。计算机系统700也可以包括视频显示单元710(例如LCD)、文数字输入器件712(例如键盘)、光标控制器件714(例如鼠标)和信号产生器件720。
在一些实施方式中,数据储存器件716可以包括非暂时性计算机可读取储存媒体724,非暂时性计算机可读取储存媒体724上可以储存指令726,这些指令对本文所述的方法或功能中的任一个或多个进行编码,包括对图1的部件(例如预测部件119、时间约束仿真模块107等)进行编码和用于实施本文所述的方法的指令。
指令726也可以在指令726被计算机系统700执行的期间完全地或部分地驻留在易失性存储器704和/或处理器件702内,因此易失性存储器704和处理器件702也可以构成机器可读取储存媒体。
虽然在说明性例子中将计算机可读取储存媒体724示为单个媒体,但术语“计算机可读取储存媒体”也应包括储存该一个或多个可执行指令集的单个媒体或多个媒体(例如集中式或分布式数据库和/或相关联的高速缓存和服务器)。术语“计算机可读取储存媒体”也应包括能够对指令集进行储存或编码的任何媒体,该指令集用于由计算机执行,使该计算机执行本文所述的方法中的任一个或多个。术语“计算机可读取储存媒体”应包括但不限于固态存储器、光学媒体和磁性媒体。
本文所述的方法、部件和特征可以由离散的硬件部件所实施,或者可以集成在诸如ASICS、FPGA、DSP或类似器件之类的其他硬件部件的功能性中。此外,方法、部件和特征还可以由硬件器件内的固件模块或功能电路系统所实施。进一步地,方法、部件和特征可以以硬件器件与计算机程序部件的任何组合或以计算机程序来实施。
除非另有具体陈述,否则诸如“接收”、“执行”、“提供”、“获得”、“引起”、“存取”、“确定”、“添加”、“使用”、“训练”等之类的术语指的是由计算机系统执行或实施的动作和过程,所述动作和过程将在计算机系统缓存器和存储器内表示为物理(电子)量的数据操控并变换成在计算机系统存储器或缓存器或者其他这样的信息储存、传送或显示器件内类似地表示为物理量的其他数据。并且,本文所使用的术语“第一”、“第二”、“第三”、“第四”等是作为区分不同元素的卷标,并且可以不具有依据它们数字标记的顺序意义。
本文所述的例子也与一种用于执行本文所述的方法的装置相关。这个装置可以被专门建构为用于执行本文所述的方法,或它可以包括选择性地由储存在计算机系统中的计算机程序来编程的通用计算机系统。可以将这种计算机程序储存在计算机可读取有形储存媒体中。
本文所述的方法和说明性例子与任何特定的计算机或其他的装置没有固有的关联性。可以依据本文所述的教示来使用各种通用系统,或者可以证明建构更专门的装置来执行本文所述的方法和/或所述方法的单独功能、例程、子例程或操作中的每一个是合宜的。上面的说明中阐述了用于各种这些系统的结构的例子。
以上描述旨在是说明性的,而非限制性的。虽然已经参考具体的说明性例子和实施方式来描述本公开内容,但将认识到,本公开内容不限于所述的例子和实施方式。将参考以下权利要求以及这些权利要求所赋予的等效物的全部范围来确定本公开内容的范围。

Claims (20)

1.一种方法,包括:
接收启动要在制造系统处运行的操作集合的请求,其中所述操作集合包括一个或多个操作,每个操作具有一个或多个时间约束;
获得与所述制造系统的当前状态有关的当前数据;
将机器学习模型应用于所述当前数据,以确定要在所述操作集合期间处理的候选基板集合;以及
基于所述机器学习模型的输出,在所述候选基板集合上启动所述操作集合。
2.如权利要求1所述的方法,所述方法进一步包括:
在时间段内为所述候选基板集合运行所述操作集合的仿真,其中所述仿真产生仿真输出,所述仿真输出表明在仿真的所述操作集合中的每个操作期间都被成功处理而到达所述时间段的结束的第一候选基板数量;以及
根据所述仿真输出,在所述制造系统处启动所述操作集合以在所述时间段内处理所述候选基板集合。
3.如权利要求1所述的方法,其中所述机器学习模型是使用强化学习来训练的。
4.如权利要求1所述的方法,其中所述操作集合中的操作的所述一个或多个时间约束各自包括完成所述操作后的时间量,所述多个操作中的一个或多个后续操作要在所述时间量期间完成。
5.如权利要求1所述的方法,其中所述机器学习模型是基于历史状态数据、当前状态数据或扰动状态数据中的至少一个来训练的。
6.如权利要求5所述的方法,其中所述扰动状态数据包括当前状态数据或历史状态数据中的至少一个,当前状态数据或历史状态数据中的所述至少一个具有被修改或歪曲的一个或多个参数。
7.如权利要求1所述的方法,其中输出进一步表明在所述候选基板集合上启动所述操作集合的时间段。
8.一种系统,包括:
存储器;以及
处理器件,可操作地与所述存储器耦合,以执行包括以下步骤的操作:
接收启动要在制造系统处运行的操作集合的请求,其中所述操作集合包括一个或多个操作,每个操作具有一个或多个时间约束;
获得与所述制造系统的当前状态有关的当前数据;
将机器学习模型应用于所述当前数据,以确定要在所述操作集合期间处理的候选基板集合;以及
基于所述机器学习模型的输出,在所述候选基板集合上启动所述操作集合。
9.如权利要求8所述的系统,所述系统进一步包括:
在时间段内为所述候选基板集合运行所述操作集合的仿真,其中所述仿真产生仿真输出,所述仿真输出表明在仿真的所述操作集合中的每个操作期间都被成功处理而到达所述时间段的结束的第一候选基板数量;以及
根据所述仿真输出,在所述制造系统处启动所述操作集合以在所述时间段内处理所述候选基板集合。
10.如权利要求8所述的系统,其中所述机器学习模型是使用强化学习来训练的。
11.如权利要求8所述的系统,其中所述操作集合中的操作的所述一个或多个时间约束各自包括完成所述操作后的时间量,所述多个操作中的一个或多个后续操作要在所述时间量期间完成。
12.如权利要求8所述的系统,其中所述机器学习模型是基于历史状态数据、当前状态数据或扰动状态数据中的至少一个来训练的。
13.如权利要求12所述的系统,其中所述扰动状态数据包括当前状态数据或历史状态数据中的至少一个,当前状态数据或历史状态数据中的所述至少一个具有被修改或歪曲的一个或多个参数。
14.如权利要求8所述的系统,其中输出进一步表明在所述候选基板集合上启动所述操作集合的时间段。
15.一种方法,包括:
获得与跟基板的制造有关的操作相关联的状态数据;
确定要在训练操作集合期间处理的训练基板集合;
在时间段内为所述训练基板集合运行所述训练操作集合的与所述状态数据相关联的仿真;以及
基于所述仿真的输出,训练机器学习模型。
16.如权利要求15所述的方法,其中所述仿真的所述输出表明在仿真的所述操作集合中的每个操作期间都被成功处理而到达所述时间段的结束的候选基板数量。
17.如权利要求15所述的方法,其中所述机器学习模型是使用强化学习来训练的。
18.如权利要求15所述的方法,其中所述机器学习模型是基于历史状态数据、当前状态数据或扰动状态数据中的至少一个来训练的。
19.如权利要求15所述的方法,其中所述扰动状态数据包括当前状态数据或历史状态数据中的至少一个,所述当前状态数据或历史状态数据中的所述至少一个具有被修改或歪曲的一个或多个参数。
20.如权利要求15所述的方法,所述方法进一步包括:
将所述机器学习模型应用于当前数据,以确定要在所述操作集合期间处理的候选基板集合;
获得所述机器学习模型的输出,其中所述机器学习模型的所述输出表明所述候选基板集合;以及
在所述候选基板集合上启动所述操作集合。
CN202280067485.9A 2021-10-06 2022-10-05 制造系统处的时间约束管理 Pending CN118056164A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/495,140 US20230107813A1 (en) 2021-10-06 2021-10-06 Time constraint management at a manufacturing system
US17/495,140 2021-10-06
PCT/US2022/045811 WO2023059740A1 (en) 2021-10-06 2022-10-05 Time constraint management at a manufacturing system

Publications (1)

Publication Number Publication Date
CN118056164A true CN118056164A (zh) 2024-05-17

Family

ID=85773849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280067485.9A Pending CN118056164A (zh) 2021-10-06 2022-10-05 制造系统处的时间约束管理

Country Status (4)

Country Link
US (1) US20230107813A1 (zh)
CN (1) CN118056164A (zh)
TW (1) TW202333013A (zh)
WO (1) WO2023059740A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10162340B2 (en) * 2015-09-30 2018-12-25 Taiwan Semiconductor Manufacturing Co., Ltd. Method and system for lot-tool assignment
CN118071336B (zh) * 2024-04-25 2024-07-02 杭州电缆股份有限公司 一种电缆生产设备的设备运行管理方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100375559B1 (ko) * 2001-07-03 2003-03-10 삼성전자주식회사 공정장치의 제어방법
AU2015100138A4 (en) * 2015-01-12 2015-03-05 Macau University Of Science And Technology Method for Scheduling Single-arm Cluster Tools with Wafer Revisiting and Residency Time Constraints
US20210278825A1 (en) * 2018-08-23 2021-09-09 Siemens Aktiengesellschaft Real-Time Production Scheduling with Deep Reinforcement Learning and Monte Carlo Tree Research
US11556117B2 (en) * 2019-10-21 2023-01-17 Applied Materials, Inc. Real-time anomaly detection and classification during semiconductor processing
CN112884321A (zh) * 2021-02-19 2021-06-01 同济大学 一种基于调度环境和任务的半导体生产线调度方法

Also Published As

Publication number Publication date
US20230107813A1 (en) 2023-04-06
TW202333013A (zh) 2023-08-16
WO2023059740A1 (en) 2023-04-13

Similar Documents

Publication Publication Date Title
CN118056164A (zh) 制造系统处的时间约束管理
US20230195071A1 (en) Methods and mechanisms for generating a data collection plan for a semiconductor manufacturing system
Tin et al. A realizable overlay virtual metrology system in semiconductor manufacturing: Proposal, challenges and future perspective
TW202245091A (zh) 用於使用虛擬模型進行處理腔室健康監測和診斷的系統和方法
TW202345235A (zh) 在基板製造期間用於調整處理腔室參數的方法及機制
TW202314410A (zh) 用於基板處理的機器學習平台
US20230315953A1 (en) Using deep reinforcement learning for time constraint management at a manufacturing system
US20230384777A1 (en) Methods and mechanisms for preventing fluctuation in machine-learning model performance
US20230342016A1 (en) Methods and mechanisms for generating virtual knobs for model performance tuning
US20230306300A1 (en) Methods and mechanisms for measuring patterned substrate properties during substrate manufacturing
US20230135102A1 (en) Methods and mechanisms for process recipe optimization
US20230260767A1 (en) Process control knob estimation
US20240184858A1 (en) Methods and mechanisms for automatic sensor grouping to improve anomaly detection
US20230297072A1 (en) Communication node to interface between evaluation systems and a manufacturing system
US20230359179A1 (en) Methods and mechanisms for adjusting film deposition parameters during substrate manufacturing
US20240062097A1 (en) Equipment parameter management at a manufacturing system using machine learning
KR20240100395A (ko) 프로세스 레시피 최적화를 위한 방법들 및 메커니즘들
TW202340884A (zh) 預防保養後的腔室條件監控及模擬
TW202424831A (zh) 在使用機器學習的製造系統處的裝備參數管理
CN117836922A (zh) 用于无接触处理腔室表征的方法及机制
WO2023039094A1 (en) Methods and mechanisms for coupling sensors to transfer chamber robot
KR20230043950A (ko) 제조 시스템의 시간 제약 관리
CN117916871A (zh) 用于将传感器耦合至传输腔室机器人的方法和机构

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination