Cooling flow in substrate processing as function of predicted cooling parameters
Through digital twins and machine learning models, the cooling parameters are predicted and the coolant flow rate and temperature are dynamically adjusted, which solves the energy waste and component damage caused by the constant flow rate of coolant in traditional substrate processing systems, and achieves more efficient cooling and processing.
Patent Information
- Application Number
- CN202380090593.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-01-05
- Filing Date
- 2023-12-27
- Publication Date
- 2025-08-08
AI Technical Summary
In traditional substrate processing systems, the coolant flows at a constant flow rate, resulting in excessive energy consumption and improper heat removal, which may damage the treatment chamber components and it is difficult to accurately adjust the coolant flow rate according to the process formulation.
Predict cooling parameters through digital twins and machine learning models, dynamically adjust coolant flow and temperature, and optimize coolant flow in the cooling circuit according to process formulation requirements.
Reduces energy consumption, protects processing chamber components, improves processing efficiency and yield, and achieves more precise temperature control.
Smart Images

Figure CN120457241A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to regulating coolant flow in a cooling circuit of a processing chamber. More specifically, the present disclosure relates to predicting values of cooling parameters based on a process recipe and flowing coolant through the cooling circuit based on the predicted values of the cooling parameters. Background Art
[0002] Substrate processing can utilize operations that output significant amounts of heat, which can damage components within the processing chamber. The processing chamber includes a cooling circuit for coolant flow to remove heat. By removing heat from the processing chamber, damage caused by heat can be mitigated. Summary of the Invention
[0003] The following is a simplified summary of the present disclosure to provide a basic understanding of some aspects of the present disclosure. This summary is not an extensive overview of the present disclosure. It is not intended to delineate any scope of the specific embodiments of the present disclosure or any scope of the claims. Its sole purpose is to present some concepts of the present disclosure in a simplified form as a prelude to the more detailed description presented later.
[0004] Techniques are described that involve cooling flow based on predicted cooling parameters for substrate processing. In some embodiments, a method includes receiving first data indicative of a process recipe for processing a substrate in a processing chamber of a substrate processing system. The method further includes inputting the first data into a model. The model includes a digital twin configured to represent thermal characteristics of the processing chamber. The method further includes receiving, via the model, a predicted value of a parameter associated with a flow rate of a coolant through a cooling circuit of the processing chamber. The method further includes flowing a coolant through the cooling circuit based on the predicted value of the parameter during execution of the process recipe in the processing chamber.
[0005] In some embodiments, a system includes a processing chamber configured to process a substrate. The processing chamber includes a cooling circuit configured to flow a coolant to cool at least a portion of the processing chamber. The system further includes a coupled processing device. The processing device is configured to receive first data, the first data indicating a process recipe for processing the substrate in the processing chamber. The processing device is further configured to input the first data into a model. The model includes a digital twin configured to represent thermal characteristics of the processing chamber. The processing device is further configured to receive, via the model, a predicted value of a parameter associated with a flow rate of a coolant through the cooling circuit of the processing chamber. The processing device is further configured to flow a coolant through the cooling circuit based on the predicted value of the parameter during execution of the process recipe in the processing chamber.
[0006] In some embodiments, a non-transitory machine-readable storage medium includes instructions that, when executed by a processing device, cause the processing device to: receive first data indicating a process recipe for processing a substrate in a processing chamber of a substrate processing system; further input the first data into a trained machine learning model; receive, via the trained machine learning model, a predicted value of a parameter associated with a flow rate of a coolant through a cooling circuit of the processing chamber; and cause the coolant to flow through the cooling circuit based on the predicted value of the parameter during execution of the process recipe in the processing chamber. BRIEF DESCRIPTION OF THE DRAWINGS
[0007] Aspects and embodiments of the present disclosure will become more fully understood from the detailed description given below and from the accompanying drawings, which are intended to illustrate aspects and embodiments by way of example and not limitation.
[0008] Figure 1 is a schematic top view of an example manufacturing system according to aspects of the present disclosure.
[0009] Figure 2 is a block diagram illustrating a simplified flow chart of a method of updating coolant flow according to aspects of the present disclosure.
[0010] Figure 3 is a block diagram illustrating an exemplary system architecture in which embodiments of the present disclosure may operate.
[0011] Figure 4 A model training workflow and a model application workflow for cooling parameter value determination according to aspects of the present disclosure are shown.
[0012] Figure 5 is a flowchart of a method for generating a training dataset for training a machine learning model according to aspects of the present disclosure.
[0013] Figure 6 A flow chart illustrating a method of training a machine learning model to determine predicted cooling parameter values in accordance with various aspects of the present disclosure is shown.
[0014] Figure 7 is a flow chart of a method of determining a predicted value of a cooling parameter in accordance with aspects of the present disclosure.
[0015] Figure 8 A block diagram is depicted of an example computing device that operates in accordance with one or more aspects of the present disclosure. DETAILED DESCRIPTION
[0016] Embodiments of the present disclosure relate to systems and methods for predicting cooling parameters in a substrate processing system and directing coolant flow within the system based on the predicted parameters. Substrate processing operations typically generate heat that can damage manufacturing components, such as process chamber parts (e.g., seals). When certain components within the processing chamber reach critical temperatures, they can fail completely, resulting in downtime for repair or replacement.
[0017] Conventional substrate processing systems include cooling circuits through which a coolant can flow to remove heat from the system. A processing chamber may include multiple cooling circuits that remove heat from different parts of the processing chamber. The coolant can typically be water or an engineered coolant (e.g., one engineered for enhanced cooling properties). A coolant pump can pump the coolant through the cooling circuits and to a cooling tower, where the heat energy transferred from the processing chamber to the coolant is removed from the coolant. The coolant can then flow through the cooling circuits again.
[0018] Traditionally, coolant flows through cooling circuits in an unregulated manner, meaning it flows at a predetermined, constant flow rate. Because the coolant flows at a constant flow rate, the coolant pump may consume excessive energy to provide more coolant flow than is required. Furthermore, because the coolant flows at a constant flow rate, more heat may be removed from the system than is necessary, resulting in more energy being consumed to heat the process chamber to the target temperature for processing. Flowing the coolant at a variable rate, based on the cooling requirements of the process recipe, can reduce the system's overall energy consumption.
[0019] Aspects and embodiments of the present disclosure address the above-mentioned and other shortcomings of conventional systems by causing a coolant to flow through a cooling circuit based on predicted or estimated values of cooling parameters. In some embodiments, a processing chamber includes at least one cooling circuit configured to cause a coolant to flow to cool at least a portion of the processing chamber. The cooling circuit may include a valve configured to regulate the flow of coolant through the cooling circuit. When the valve is open, more coolant can flow through the cooling circuit, and when the valve is closed or partially closed, less coolant can flow. In some embodiments, an actuator is coupled to the valve to open and / or close the valve based on commands received by the actuator. The processing chamber may include multiple sensors, such as temperature sensors, flow rate sensors, etc. In some embodiments, the cooling circuit includes a temperature sensor for sensing an inlet temperature of the coolant flowing at the inlet of the coolant circuit, a temperature sensor for sensing an outlet temperature of the coolant flowing at the outlet of the coolant circuit, and / or a flow rate sensor for sensing the flow rate of the coolant through the coolant circuit.
[0020] In some embodiments, a processing device receives process recipe data corresponding to one or more process recipe operations that can be executed within a processing chamber to process a substrate. The processing device may receive the process recipe data before the process recipe is executed within the processing chamber (e.g., during process recipe development, etc.). The process recipe data may include process "knob" settings based on set points (e.g., temperature set points, pressure set points, radio frequency (RF) energy set points, etc.) used to process a substrate according to the process recipe. In some embodiments, the process recipe data is input into a model. The model may be comprised of or include a digital twin that represents the thermal characteristics of the processing chamber. In some examples, the digital twin is or includes a physics-based representation of the processing chamber to model heat transfer within the processing chamber (e.g., heat transfer through a showerhead, susceptor, seals, chamber walls, cooling circuits, etc.). In other examples, the digital twin is or includes a data-based representation of the processing chamber to model heat transfer within the processing chamber. In some embodiments, the process recipe data is input into a trained machine learning model.
[0021] In some embodiments, output data is received from the model. The output data may include predicted or estimated values of one or more cooling parameters that will be achieved during execution of the recipe in the processing chamber. The predicted values of the cooling parameters may exceed the target temperature of one or more areas or components of the processing chamber. Therefore, the predicted values of the cooling parameters may indicate that more cooling or less cooling is recommended for a particular process recipe operation. In some embodiments, the cooling parameters include coolant flow parameters and / or coolant temperature parameters. For example, the predicted or estimated values of the cooling parameters may be a predicted / estimated coolant flow rate or a predicted / estimated coolant input temperature (e.g., a predicted temperature of the coolant flowing into the cooling circuit through the cooling circuit inlet), or a combination thereof. The predicted / estimated coolant flow rate may be a recommended coolant flow rate that is an optimal coolant flow rate determined by the model.
[0022] In some embodiments, after receiving the predicted / estimated value of a cooling parameter, the processing device adjusts one or more settings of the cooling parameter to be used during execution of the recipe in the process chamber, such that coolant flows through the cooling circuit based on the predicted / estimated value of the cooling parameter. In some examples, the processing device actuates a valve disposed along a flow path of the cooling circuit to a specific position during execution of one or more phases of the recipe in the process chamber. The valve can be actuated open or closed (e.g., partially open or partially closed), causing coolant to flow through the cooling circuit substantially at the predicted / estimated flow rate indicated by the predicted / estimated value of the cooling parameter. In some examples, the processing device causes the coolant inlet temperature (e.g., the temperature of the coolant at the inlet of the cooling circuit) to change to the predicted / estimated inlet temperature indicated by the predicted / estimated value of the cooling parameter. The processing device can induce the temperature change by adjusting the temperature of a cooling tower and / or by mixing a coolant flow with a warm coolant flow (e.g., one that is cool and the other warm relative to each other). In some embodiments, the predicted / estimated value of the cooling parameter is stored in a memory coupled to the processing device for later use. For example, the predicted / estimated value can be appended to or included in a stored recipe. In some embodiments, the coolant flow rate and / or coolant temperature can be associated with the recipe, and the coolant flow rate and / or coolant temperature can be adjusted during execution of the recipe based on the determined coolant flow rate and / or coolant temperature. Different coolant flow rates can be associated with different operations or steps of the recipe. Similarly, different coolant temperatures can be associated with different operations or steps of the recipe.
[0023] Compared to the conventional systems described above, embodiments of the present disclosure offer advantages. In particular, some embodiments described herein can predict / estimate the optimal flow rate and / or temperature of a coolant flowing through one or more cooling circuits within a substrate processing chamber. These predictions / estimations can be performed prior to executing a corresponding process recipe. Thus, the coolant flow rate and / or temperature for the cooling circuits within the process chamber can be determined for the recipe during process recipe development. Flowing the coolant according to the predicted / estimated optimal flow rate and / or temperature during the execution of the process recipe can save energy. Coolant pumps can also save energy when the flow rate is reduced. Furthermore, energy used to increase the temperature of the processing chamber and / or processing chamber components during substrate processing is not wasted due to excessive coolant flow. Similarly, the coolant flow rate (e.g., flow rate and / or inlet flow temperature) can be adjusted to maintain an ideal or target temperature within the processing chamber and / or processing chamber components, thereby enabling more accurate and / or efficient processing of substrates within the processing chamber. Furthermore, when the coolant flow rate is adjusted based on the predicted / estimated cooling parameters based on the process recipe, the temperature of the process chamber and / or process chamber components can be changed more quickly. Therefore, the systems and methods of the present disclosure can improve the throughput of a manufacturing system.
[0024] Figure 1 1 is a schematic top view of an example processing system 100 (also referred to herein as a manufacturing system) according to aspects of the present disclosure. In some embodiments, the processing system 100 can be an electronic processing system configured to perform one or more processes on a substrate 102. In some embodiments, the processing system 100 can be an electronic device manufacturing system. The substrate 102 can be any suitably rigid, fixed-size, planar article, such as a disk or wafer containing silicon, a patterned wafer, a glass sheet, or the like, suitable for manufacturing an electronic device or circuit component thereon. In some embodiments, the processing system 100 is a semiconductor processing system. Alternatively, the processing system 100 can be configured to process other types of devices, such as a display device.
[0025] The processing system 100 includes a process tool 104 (e.g., a mainframe) and a factory interface 106 coupled to the process tool 104. The process tool 104 includes a housing 108 having a transfer chamber 110 therein. The transfer chamber 110 includes one or more process chambers (also referred to as process chambers) 114, 116, and 118 disposed around and coupled to the transfer chamber. The process chambers 114, 116, and 118 can be coupled to the transfer chamber 110 via corresponding ports (e.g., slit valves or the like).
[0026] The processing chambers 114, 116, 118 can be adapted to perform any number of processes on the substrate 102. The same or different substrate processes can be performed in each of the processing chambers 114, 116, 118. Examples of substrate processes include atomic layer deposition (ALD), physical vapor deposition (PVD), chemical vapor deposition (CVD), etching, annealing, curing, pre-cleaning, metal or metal oxide removal, or the like. In one example, a PVD process is performed in one or both of the processing chambers 114, an etching process is performed in one or both of the processing chambers 116, and an annealing process is performed in one or both of the processing chambers 118. Other processes can be performed on the substrate therein. The processing chambers 114, 116, 118 can each include a substrate support assembly. The substrate support assembly can be configured to hold the substrate in place while the substrate process is performed. The processing chambers 114 , 116 , 118 may each include one or more cooling circuits through which a coolant (eg, water, etc.) may flow to cool the processing chambers.
[0027] The transfer chamber 110 also includes a transfer chamber robot 112. The transfer chamber robot 112 may include one or more arms, each of which includes one or more end effectors at the end of the arm. The end effectors may be configured to transport specific objects, such as wafers. In some embodiments, the transfer chamber robot 112 is a Selective Compliant Assembly Robot Arm (SCARA) robot, such as a 2-link SCARA robot, a 3-link SCARA robot, a 4-link SCARA robot, or the like.
[0028] A load lock 120 may also be coupled to the housing 108 and the transfer chamber 110. The load lock 120 may be configured to interface and couple with the transfer chamber 110 on one side and with the factory interface 106 on the other side. In some embodiments, the load lock 120 has an environmentally controlled atmosphere that can be changed from a vacuum environment (in which substrates are transferred to and from the transfer chamber 110) to an atmospheric pressure or near-atmospheric pressure inert gas environment (in which substrates are transferred to and from the factory interface 106). In some embodiments, the load lock 120 is a stacked load lock having a pair of upper and lower internal chambers located at different vertical levels (e.g., one higher than the other). In some embodiments, the pair of upper internal chambers are configured to receive processed substrates from the transfer chamber 110 for removal from the process tool 104, while the pair of lower internal chambers are configured to receive substrates from the factory interface 106 for processing in the process tool 104. In some embodiments, the load lock 120 is configured to perform a substrate process (eg, etching or pre-cleaning) on one or more substrates 102 received therein.
[0029] The factory interface 106 can be any suitable housing, such as an equipment front end module (EFEM). The factory interface 106 can be configured to receive substrates 102 from substrate carriers 122 (e.g., front opening unified pods (FOUPs)) docked at various load ports 124 of the factory interface 106. A factory interface robot 126 (shown in phantom) can be configured to transfer substrates 102 between the substrate carriers 122 (also referred to as containers) and the load lock 120. In other and / or similar embodiments, the factory interface 106 is configured to receive replacement parts from a replacement part storage container 123. The factory interface robot 126 can include one or more robotic arms and can be or include a SCARA robot. In some embodiments, the factory interface robot 126 has more linkages and / or more degrees of freedom than the transfer chamber robot 112. The factory interface robot 126 can include an end effector at one end of each robotic arm. The end effector can be configured to pick up and transfer specific objects, such as wafers. Alternatively or additionally, the end effector may be configured to transport objects such as process kit rings.
[0030] Any conventional robot type can be used for the factory interface robot 126. The transfer can be performed in any order or direction. In some embodiments, the factory interface 106 can be maintained in a non-reactive gas environment (using, for example, nitrogen as the non-reactive gas), for example, at a slightly positive pressure.
[0031] The processing system 100 may also include a system controller 128. The system controller 128 may be and / or include a computing device such as a personal computer, a server computer, a programmable logic controller (PLC), a microcontroller, or the like. The system controller 128 may include one or more processing devices, which may be general-purpose processing devices such as a microprocessor, a central processing unit, or the like. More specifically, the processing devices may be complex instruction set computing (CISC) microprocessors, reduced instruction set computing (RISC) microprocessors, very long instruction word (VLIW) microprocessors, or processors implementing other instruction sets or a combination of instruction sets. The processing devices may also be one or more special-purpose processing devices such as application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), digital signal processors (DSPs), network processors, or the like. The system controller 128 may include data storage devices (e.g., one or more disk drives and / or solid-state drives), main memory, static memory, network interfaces, and / or other components. The system controller 128 may execute instructions to implement any one or more of the methodologies and / or embodiments described herein. The instructions may be stored on a computer-readable storage medium, which may include main memory, static memory, secondary storage, and / or a processing device (during execution of the instructions). In one embodiment, execution of the instructions by the system controller 128 causes the system controller to execute Figure 7 The system controller 128 may also be configured to allow a human operator to input and display data, operating commands, and the like.
[0032] In some embodiments, the system controller 128 includes a cooling module 129, which can be a local server (e.g., hosted on a local server) executing on the system controller 128 of the processing system 100. The cooling module 129 can be responsible for processing first sensor data generated by sensors of one or more processing chambers 114, 116, 118, and second sensor data from additional sensors 140, 142, 144 external to the processing chambers 114, 116, 118. The first sensor data can be generated by sensors integrated with the processing chambers 114, 116, 118. Such sensors can include, for example, temperature sensors, power sensors, current sensors, pressure sensors, concentration sensors, and the like. The first sensor data output by the integrated sensors of the processing chambers 114, 116, and 118 may include measurements of current, voltage, power, flow (e.g., flow of one or more gases, CDA, water, etc.), pressure, concentration (e.g., concentration of one or more gases), velocity (e.g., velocity of one or more moving parts, gases, etc.), acceleration (e.g., acceleration of one or more moving parts, gases, etc.), or temperature (e.g., temperature of a substrate being processed, at various locations within the processing chamber, etc.). In one embodiment, each chamber includes between about 20 and about 100 sensors. Although the cooling module 129 is described herein as being associated with the processing system 100, in some embodiments, the cooling module 129 is associated with multiple processing systems (e.g., one or more processing systems within a substrate processing facility).
[0033] To capture additional data not typically accessible by the integrated sensors of the process chambers 114, 116, 118, one or more external sensors 140, 142, 144, 152 may be attached to the process chambers 114, 116, 118 and / or to the inlets and / or outlets of the process chambers 114, 116, 118, and / or to subcomponents (e.g., pumps and / or abatement systems) that operate for the benefit of the process chambers 114, 116, 118. In one embodiment, each process chamber includes approximately 3-6 external sensors attached to the process chamber, subsystems associated with the process chamber, and / or inputs / outputs of the process chamber. Secondary sensor data output by the external sensors 140, 142, 144, 152 may include, for example, current, flow rate, temperature, eddy current, concentration, vibration, voltage, or power factor. Examples of external sensors 140 , 142 , 144 , and 152 that can be used include clip-on sensors (also known as current clamps) for measuring AC or DC current, clip-on sensors for measuring voltage, and clip-on sensors for measuring leakage current. Other examples of external sensors include vibration sensors, temperature sensors, ultrasonic sensors (such as ultrasonic flow sensors), acceleration sensors (i.e., accelerometers), and the like.
[0034] In the illustrated example, the abatement system 130, gas delivery system 134, water system 132, and / or CDA system 136 can provide environmental resources to the process chambers 114, 116, 118 and / or other components of the processing system 100 (e.g., to the transfer chamber, factory interface, load lock, etc.). In embodiments, the abatement system 130 abates residual gases, reactants, and / or outputs associated with processes performed in the process chambers 114, 116, 118. For example, the abatement system 130 can combust residual gases and / or reactants to ensure they do not pose a hazard to the environment. Additionally, in some embodiments, one or more pumps can be attached to and / or operate on behalf of one or more of the process chambers 114, 116, 118. For clarity, the external sensors 140, 142, 144, 152 are shown for a single process chamber 116 as a simplification. However, it should be understood that similar external sensors may be attached to additional processing chambers and / or to conduits to and / or from such additional processing chambers and / or to subsystems associated with such additional processing chambers.
[0035] In some embodiments, external sensors 140, 142, 144, and 152 may be IoT sensors. In some embodiments, the external sensors include a power source, such as a battery. In some embodiments, the external sensors are wired sensors that plug into a power source (e.g., an AC outlet). In some embodiments, the external sensors do not include a power source, but instead receive sufficient power to operate based on environmental conditions. For example, sensors that detect voltage, power, and / or current can be wirelessly powered by such power or current (e.g., by harvesting energy from current flowing through a wire to which the sensor is clipped).
[0036] In one embodiment, external sensors 140, 142, 144, and 152 are sensors included in an embedded system. An embedded system is a computing device embedded within another device as a component of that device. External sensors 140, 142, 144, and 152 typically also include other hardware, electrical, and / or mechanical components that can interface with the embedded system. Embedded systems are typically configured to handle a specific task or set of tasks for which they may be optimized (e.g., generating and / or transmitting measurements). As a result, embedded systems can be minimal in cost and size compared to conventional computing devices.
[0037] The embedded systems may each include a communication module (not shown) that enables the embedded system (and thus the external sensors 140 , 142 , 144 , 152 ) to connect to a LAN, a hub 150 , and / or a wireless carrier network (e.g., implemented using various data processing equipment, communication towers, etc.). The communication module may be configured to manage security, manage communication sessions, manage access control, manage communications with external devices, etc.
[0038] In one embodiment, the communication modules of the external sensors 140, 142, 144, and 152 are configured to communicate using Wi-Fi®. Alternatively, the communication modules can be configured to communicate using Bluetooth®, Zigbee®, Internet Protocol Version 6 over a Low Power Wireless Area Network (6LowPAN), Power Line Communication (PLC), Ethernet (e.g., 10 Megabyte (Mb), 100 Mb, and / or 1 Gb Ethernet), or other communication protocols. If the communication modules are configured to communicate with a wireless carrier network, the communication modules can communicate using Global System for Mobile Communications (GSM), Code Division Multiple Access (CDMA), Universal Mobile Telecommunications System (UMTS), 3GPP Long Term Evaluation (LTE), Worldwide Interoperability for Microwave Access (WiMAX), or any other second generation (2G), third generation (3G), fourth generation (4G), or other wireless telephony technologies.
[0039] In one embodiment, the communication module is configured to communicate with a hub 150, which can be, for example, a Wi-Fi router or other type of router, switch, or hub. The hub 150 can be configured to communicate with the communication module of each of the external sensors 140, 142, 144, 152 and send measurements received from the external sensors 140, 142, 144, 152 to the system controller 128. In one embodiment, the hub 150 has a wired connection (e.g., an Ethernet connection, a parallel connection, a serial connection, a Modbus connection, etc.) to the system controller 128 and sends the measurements to the system controller 128 via the wired connection. In one embodiment, the hub 150 is connected to one or more external sensors via a wired connection.
[0040] In some embodiments, the hub 150 is connected to a network device that is connected to a local area network (LAN). The system controller 128 and the network device can each be connected to the LAN via a wireless connection and can be wirelessly connected to each other via the LAN. The external sensors 140, 142, 144, 152 may not support all communication types supported by the network device. For example, the external sensor 140 may support Zigbee and the external sensor 142 may support Bluetooth. To enable such devices to connect to the LAN, the hub 150 can act as a gateway device that connects to the network device (not shown) via one of the connection types supported by the network device (e.g., via Ethernet or Wi-Fi). In addition, the gateway device can also support other communication protocols, such as Zigbee, PLC and / or Bluetooth, and can convert between supported communication protocols.
[0041] The system controller 128 can be connected to a wide area network (WAN). The WAN can be a private WAN (e.g., an intranet) or a public WAN (e.g., the Internet), or a combination of private and public networks. In some embodiments, the system controller 128 can be connected to a LAN, which can include a router and / or a modem (e.g., a cable modem, a direct serial link (DSL) modem, a Worldwide Interoperability for Microwave Access (WiMAX®) modem, a Long Term Evolution (LTE®) modem, etc.) that provides connectivity to the WAN.
[0042] The WAN may include or be connected to one or more server computing devices (not shown). The server computing devices may include physical machines and / or virtual machines hosted by the physical machines. The physical machines may be rack-mounted servers, desktop computers, or other computing devices. In one embodiment, the server computing devices include virtual machines managed and provided by a cloud provider system. Each virtual machine provided by the cloud service provider may be hosted on a physical machine configured as part of the cloud. These physical devices are typically located in a data center. The cloud provider system and the cloud may be provided as an Infrastructure as a Service (IaaS) layer. An example of such a cloud is Amazon®'s Elastic Compute Cloud (EC2®).
[0043] The server computing device may host one or more services, which may be web-based services and / or cloud-based services (e.g., web-based services hosted on a cloud computing platform). The services may maintain a communication session (e.g., via continuous or intermittent connections) with the system controller 128 and / or system controllers of other manufacturing systems at the same location (e.g., at the same location in a manufacturing facility or factory) and / or at different locations. Alternatively, the services may periodically establish communication sessions with the system controllers. Through communication sessions with the system controller 128, the services may receive status updates from the cooling modules 129 running on the system controller 128. The services may aggregate data and provide a graphical user interface (GUI) that is accessible via any device connected to the WAN (e.g., a mobile phone, tablet computer, laptop computer, desktop computer, etc.).
[0044] A cooling module 129 executing on the system controller 128 can process first sensor data from sensors integral to one or more process chambers 114, 116, 118 and / or second sensor data from external sensors 140, 142, 144, 152 to determine a coolant flow rate and / or a coolant temperature of a coolant to be supplied to a coolant circuit of the process chambers 114, 116, 118. The cooling module 129 can receive and / or process data associated with one or more process recipes comprising recipe operations for implementation in the process chambers 114, 116, 118. In some embodiments, the cooling module 129 receives and / or processes the process recipe data to determine a predicted / estimated coolant flow rate and / or temperature independent of the execution of the process recipe in one of the process chambers 114, 116, 118. In some embodiments, the cooling module 129 uses one or more models representing the thermal characteristics of the process chambers 114, 116, 118 to predict values of cooling parameters. In some embodiments, the cooling module 129 uses a thermal model of the processing chamber (e.g., a model for predicting thermal behavior) and / or sensor data collected by one or more sensors integral to and / or external to the processing chamber to determine the coolant flow rate and / or temperature based on a process recipe having operations performed in the processing chamber.
[0045] The cooling module 129 may utilize physics-based models and / or machine learning models (e.g., data-based models) as described herein. In some embodiments, the cooling module 129 uses a digital twin (e.g., a digital representation) of the process chamber to determine the amount of thermal energy to be removed from the process chamber during the execution of substrate processing operations. The digital twin may utilize principles and / or equations related to heat conduction, energy balance, and / or fluid dynamics to model the behavior of the process chamber during the execution of the process recipe. If the digital twin cannot reliably predict / estimate the amount of thermal energy to be removed, the cooling module 129 may utilize a machine learning model. The machine learning model may be a physics-informed machine learning model informed by the digital twin. Based on the output of the model, the cooling module 129 may predict and / or determine parameter values associated with a cooling circuit through which coolant flows through the process chamber. For example, for a given type of coolant (e.g., water), the cooling module 129 may predict / estimate the flow rate of coolant required to flow through the cooling circuit to remove the thermal energy indicated by the output of the model. In another example, the cooling module 129 can predict / estimate the inlet temperature of the coolant supplied to the inlet of the cooling circuit to remove the thermal energy indicated by the output of the model. The cooling module 129 can cause the coolant to flow into the cooling circuit at a determined flow rate and / or at a determined inlet temperature to remove the predicted / estimated amount of heat from the processing chamber. In some embodiments, the cooling module 129 can actuate an actuator (e.g., an actuator coupled to a valve) to cause the coolant to flow through the cooling circuit at the determined flow rate. Similarly, the cooling module 129 can change the temperature of a cooling tower to provide coolant at the predicted / estimated temperature and / or can combine a cold coolant flow with a warm coolant flow to achieve the predicted / estimated temperature.
[0046] In some embodiments, the cooling module 129 can make predictions / estimates that incorporate user input. In some examples, a user (e.g., an engineer, technician, etc.) can provide input to the cooling module 129 to influence the adjustment of cooling parameters. Specifically, user input can indicate that cooling parameters should be adjusted after each process recipe step and / or after all operations associated with a particular process recipe have completed. In some examples, the cooling module 129 predicts / estimates cooling parameter values for each operation of the process recipe. The cooling module 129 can then modify the coolant flow rate (e.g., via one or more flow controllers) for each operation of the process recipe. In some examples, the cooling module 129 predicts / estimates cooling parameter values for a first process recipe (e.g., a set of operations of a first process recipe) and a second process recipe. The cooling module 129 can then modify the coolant flow rate between the execution of the first process recipe and the execution of the second process recipe. In some embodiments, user input can indicate that the coolant flow rate should be adjusted for process recipe operations that last longer than a threshold duration. Similarly, user input can indicate that the coolant flow rate should be adjusted for process recipe operations related to deposition or etching, or for operations unrelated to deposition or etching, and so on. In some embodiments, user input may indicate that the coolant flow rate should be adjusted for different operating states of the process chamber or manufacturing equipment. For example, the user input may indicate that the coolant flow rate should be updated when the process chamber (and / or manufacturing system) is in an idle state, a service state, and / or a substrate handoff state. In some embodiments, the cooling module 129 predicts / estimates a cooling parameter value (e.g., based on the user input) for each instance in which the cooling flow rate should be adjusted.
[0047] Figure 2 is a block diagram illustrating a simplified flow chart of a method 200 for updating coolant flow according to aspects of the present disclosure. In some embodiments, the method 200 may be executed by a controller (e.g., Figure 1 In some embodiments, aspects of method 200 may be performed by one or more models, such as physics-based models and / or data-based models (eg, machine learning models).
[0048] In some embodiments, the process recipe data 222 is provided to a data processor 230. The data processor 230 may be a processing device (e.g., a processing device of the cooling module 129). The process recipe data 222 may include data corresponding to one or more process recipe operations. Process recipe operations may include operations related to substrate processing (e.g., etching operations, deposition operations, etc.), cleaning operations (e.g., chamber cleaning operations), maintenance operations (e.g., leak check operations, etc.), substrate handoff operations (e.g., placing a substrate in a processing chamber, removing a substrate from a processing chamber, etc.), purge operations, pump-down operations, pre-preventive maintenance operations (e.g., operations in preparation for preventive maintenance), and / or post-preventive maintenance operations (e.g., operations in preparation for substrate processing after preventive maintenance). In some examples, the process recipe data 222 may include recipe setpoint data, recipe threshold data, recipe target data, etc. In other examples, the process recipe data 222 may indicate process variables, such as pressure, temperature, etc., to be performed for one or more process operations to process a substrate. In other examples, the process recipe data 222 may include flow rate data for process gases to be introduced into the processing chamber during substrate processing operations. In another example, the process recipe data 222 may include data indicating the RF frequency and / or RF energy specified by the recipe to process the substrate.
[0049] In some embodiments, operating conditions 232 of a process chamber operated in accordance with a process recipe (e.g., a process recipe corresponding to the process recipe data 222) are input into a process chamber model 234. In some examples, one or more temperatures, pressures, energy inputs, etc. are input into the process chamber model 234. The operating conditions 232 can include data reflecting operating conditions collected over time during the execution of the process recipe operations. For example, the operating conditions 232 can include sensor data corresponding to conditions (e.g., pressure, temperature, RF power, etc.) sensed during the execution of the process recipe operations performed in accordance with the process recipe (e.g., a process recipe corresponding to the process recipe data 222). The operating conditions 232 can be input into the process chamber model 234.
[0050] In some embodiments, the process chamber model 234 is a physics-based and / or data-based representation of the process chamber. For example, the process chamber model 234 may be a digital representation of the physical dimensions, geometry, and / or properties of the process chamber. Specifically, the process chamber model 234 may digitally represent the physical thermal characteristics of the process chamber. For example, using the physics-based process chamber model 234, a finite element analysis may be performed to determine heat conduction through the process chamber (e.g., from an energy source to a cooling circuit). Similarly, the physics-based process chamber model 234 may utilize heat conduction equations, energy balance equations, and / or fluid dynamics equations to model heat conduction through the process chamber. Furthermore, the process chamber model may utilize finite difference, finite element, and / or finite volume methods to model heat conduction. By modeling heat conduction in this manner, the process chamber model 234 is capable of predicting the temperatures of various components of the process chamber. For example, the process chamber model 234 is capable of predicting showerhead temperature, susceptor temperature, and / or wall temperature using one or more of the aforementioned modeling techniques. In some embodiments, the process chamber model 234 can represent the process chamber using data that maps input conditions to output conditions. This data can be collected over time during operation of the process chamber. In some embodiments, the process chamber model 234 is a digital twin of the process chamber and / or a trained machine learning model.
[0051] In some embodiments, the process chamber model 234 outputs predicted / estimated cooling parameter values 236 corresponding to the operating conditions 232 input into the process chamber model 234. The process chamber model 234 can be used to determine heat transfer within the process chamber based on the operating conditions 232 (e.g., through finite element analysis, etc., and / or by mapping input data to output data) and / or based on a process recipe. Based on heat transfer, the predicted / estimated cooling parameter values 236 can be output to a set of flow controllers to control coolant flow. The flow controllers can use the predicted / estimated cooling parameter values 236 to update the flow rate and / or temperature of the coolant supplied to one or more cooling circuits within the process chamber. In some examples, the flow controllers are associated with specific cooling circuits, specific process chambers, and / or a manufacturing system having multiple process chambers. In some examples, the predicted / estimated cooling parameter values 236 are predicted / estimated coolant flow rate values and / or predicted / estimated coolant input temperature values. In some embodiments, data processor 230 outputs predicted / estimated cooling parameter values 236. Predicted / estimated cooling parameter values 236 may be used to adjust and / or update cooling parameters to form adjusted cooling parameters 242.
[0052] Adjusted cooling parameters 242 may be determined for a process recipe to be executed in the processing chamber. In some examples, the adjusted cooling parameters 242 are determined during development of the process recipe. The adjusted cooling parameters 242 may be used during the first execution of the process recipe in the processing chamber. Different process recipes and / or different process recipe operations may have different cooling requirements, and thus the predicted / estimated cooling parameter values 236 may vary between corresponding process recipes and / or process recipe operations. In some embodiments, a coolant flow rate through one or more cooling circuits of the processing chamber is adjusted based on the predicted / estimated cooling parameter values and / or based on the adjusted cooling parameters 242. In some examples, flowing coolant through the processing chamber according to the predicted flow rate values through the cooling circuits may sufficiently cool at least a portion of the processing chamber without excessively wasting energy (e.g., energy input to the processing chamber and / or energy used to pump the coolant). In some examples, introducing coolant into the inlet of the cooling circuit at a predicted coolant input temperature may sufficiently cool at least a portion of the processing chamber without excessively wasting energy. In some embodiments, flowing the coolant through the cooling loop according to the predicted cooling parameter values removes heat from the processing chamber such that the processing chamber can operate at an optimal temperature for the process recipe.
[0053] Figure 3 is a block diagram illustrating an exemplary system architecture 300 in which embodiments of the present disclosure may operate. Figure 3 As shown, system architecture 300 includes a manufacturing system 302, a data store 312, a server 320, a client device 350, and / or a machine learning system 370. Machine learning system 370 can be part of server 320. In some embodiments, one or more components of machine learning system 370 can be fully or partially integrated into client device 350. Manufacturing system 302, data store 312, server 320, client device 350, and machine learning system 370 can each be hosted by one or more computing devices, including a server computer, a desktop computer, a portable computer, a tablet computer, a notebook computer, a personal digital assistant (PDA), a mobile communication device, a cell phone, a handheld computer, an augmented reality (AR) display and / or head-mounted device, a virtual reality (VR) display and / or head-mounted device, a mixed reality (MR) display and / or head-mounted device, or similar computing devices. As used herein, a server may refer to a server, but may also include edge computing devices, on-premises servers, the cloud, and the like.
[0054] Manufacturing system 302, data storage 312, server 320, client device 350, and machine learning system 370 can be coupled to each other via a network (e.g., for performing the methodology described herein). In some embodiments, network 360 is a private network that enables each element of system architecture 300 to access each other and other privately available computing devices. Network 360 can include one or more wide area networks (WANs), local area networks (LANs), wired networks (e.g., Ethernet networks), wireless networks (e.g., 802.11 networks or Wi-Fi networks), cellular networks (e.g., Long Term Evolution (LTE) networks), cloud networks, cloud services, routers, hubs, switches, server computers, and / or combinations thereof. Alternatively or additionally, any element of system architecture 300 can be integrated or otherwise coupled without the use of network 360.
[0055] Client device 350 can be or include any personal computer (PC), laptop, mobile phone, tablet, network computer, network-connected television ("Smart TV"), network-connected media player (e.g., Blu-ray player), set-top box, over-the-top (OOT) streaming device, operator box, etc. Client device 350 can include browser 352, application 354, and / or other tools described and executed by other systems of system architecture 300. In some embodiments, as described herein, client device 350 can access manufacturing system 302, data storage 312, server 320, and / or machine learning system 370 and communicate (e.g., transmit and / or receive) data associated with cooling of manufacturing equipment 304 (e.g., process chambers, etc.) and / or inputs and outputs of various process tools (e.g., cooling tool 322, modeling tool 324, etc.) at various processing stages of system architecture 300.
[0056] like Figure 3As shown, manufacturing system 302 includes manufacturing equipment 304, system controller 306, process recipe 308, and sensor 310. Manufacturing equipment 304 can be any combination of an ion implanter, an etch reactor (e.g., a processing chamber), photolithography equipment, deposition equipment (e.g., for performing chemical vapor deposition (CVD), physical vapor deposition (PVD), ion-assisted deposition (IAD), etc.), or any other combination of manufacturing equipment. In some embodiments, components of manufacturing equipment 304 have threshold component temperatures. For example, when the threshold component temperature is exceeded, individual components (e.g., seals in the processing chamber) may fail. One or more (and sometimes multiple) cooling circuits in manufacturing equipment 304 can cool manufacturing equipment 304 so that component temperatures do not exceed their corresponding threshold component temperatures. For example, a processing chamber can include multiple cooling circuits through which coolant flows to remove heat from the processing chamber.
[0057] The process recipe 308, also known as a manufacturing recipe or manufacturing process instructions, includes a sequence of machine operations and process implementations that, when applied in a specified order, will produce a manufactured sample (e.g., a substrate or wafer having predetermined properties or meeting predetermined specifications). In some embodiments, the process recipe is stored in a data store or, alternatively or additionally, in a data table that generates the operations of the manufacturing process. Each operation can be associated with known cooling data. Alternatively or additionally, each process operation can be associated with parameters that indicate the physical conditions of the process operation (e.g., target pressure, temperature, exhaust volume, energy throughput, and the like).
[0058] Equipment controller 306 may include software and / or hardware components that enable the operation of process recipe 308. Equipment controller 306 may monitor the manufacturing process via sensors 310. Sensors 310 may measure process parameters to determine whether process criteria are being met. Process criteria may be associated with process parameter value windows. Sensors 310 may include various sensors that can be used to measure consumption (e.g., power, current, etc.) (either explicitly or as a measure of consumption). Sensors 310 may include physical sensors, sensors integrated into the processing chamber, external sensors, Internet of Things (IoT), and / or virtual sensors (e.g., sensors that are not physical sensors but rather perform virtual measurements based on a model based on estimated parameter values).
[0059] In some embodiments, the equipment controller 306 may include a main memory (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM), static random access memory (SRAM), etc.) and / or a secondary memory (e.g., a data storage device such as a disk drive (e.g., data storage 312 or cloud data)). The main memory and / or the secondary memory may store instructions for executing various types of manufacturing processes (e.g., process recipe 308).
[0060] In some embodiments, the equipment controller 306 can control the flow of coolant to and / or from the manufacturing equipment 304 based on the predicted / estimated value of the cooling parameter. For example, the equipment controller 306 can control the actuation of one or more actuators coupled to valves of the manufacturing equipment 304 to regulate (e.g., modulate) the flow of coolant through one or more cooling circuits of the manufacturing equipment 304. In some embodiments, the actuators controllable by the equipment controller 306 are configured to cause the coolant flow rate through the cooling circuit to be regulated by a flow valve. In another example, the equipment controller 306 can control the temperature of the coolant supplied to the inlet of the cooling circuit of the manufacturing equipment 304. The equipment controller 306 can receive commands from the cooling tool 322 (e.g., via the network 340). In some embodiments, the equipment controller 306 controls the flow rate (e.g., flow rate, flow temperature, etc.) of the coolant to optimize heat removal from the manufacturing equipment 304.
[0061] In some embodiments, the equipment controller 306 can control the flow of coolant to the manufacturing equipment 304 based on data collected from the sensors 310 and / or based on the process recipe. For example, the equipment controller 306 can cause more coolant to flow through the cooling circuit based on temperature sensor data indicating a condition in which the temperature in the processing chamber is too high and / or based on the fact that the current temperature is satisfactory but the estimated or predicted future temperature exceeds a threshold temperature. In another example, the equipment controller 306 can cause coolant at a lower temperature to be provided to the inlet of the cooling circuit based on temperature sensor data indicating a condition in which the temperature in the processing chamber is too high and / or based on the estimated or predicted future temperature exceeding a threshold temperature. In some embodiments, the equipment controller 306 can use data from the sensors 310 to implement feedback control. For example, based on the sensor and process recipe data 316, the equipment controller 306 can adjust the coolant flow (e.g., flow rate and / or temperature) to meet a target value (e.g., a target value for a cooling parameter predicted by the machine learning system 370 and / or the cooling tool 322).
[0062] Data storage 312 can be memory (e.g., random access memory), a drive (e.g., a hard drive, a flash drive), a database system, or another type of component or device capable of storing data, such as memory provided by a cloud server and / or processor. Data storage 312 can store one or more historical sensor data. Data storage 312 can also store one or more cooling data 314 (e.g., including historical cooling data and / or current cooling data), sensor and process recipe data 316 (e.g., including historical sensor and process recipe data 316 and / or current sensor and process recipe data 316), and model data 319. Sensor and process recipe data 316 can include various process operations, process parameter windows, alternative process operations, process queue instructions, and the like for executing multiple processes on overlapping manufacturing equipment. Sensor and process recipe data 316 can be linked or otherwise associated with cooling data 314 to track cooling for various process operations, recipes, and the like.
[0063] Cooling data 314 may include a representation of the cooling of manufacturing equipment over time. For example, cooling data 314 may include coolant flow rate data and coolant temperature data (e.g., data at the inlet and / or outlet of a cooling circuit). Cooling data 314 may further include data indicating heat conduction through the cooling circuit. Cooling data 314 may include historical data collected by sensors 310 over time and / or current sensor data associated with the cooling of manufacturing equipment.
[0064] Model data 319 may include data associated with a model of a physical asset (e.g., a model of a processing chamber). In some embodiments, model data 319 includes data used to construct a physics-based model and / or data used to construct a data-based model (e.g., a machine learning model). Model data 319 may include data that replicates the thermal properties of a physical asset (e.g., a processing chamber). Model data 319 may be associated with a digital replica (e.g., a digital twin). As used herein, a digital twin may include a digital replica of a physical asset (e.g., manufacturing equipment 304). A digital twin includes properties of the physical asset at each stage of the manufacturing process, including but not limited to coordinate axis dimensions, weight properties, material properties (e.g., density, surface roughness), electrical properties (e.g., conductivity), optical properties (e.g., reflectivity), thermal properties, etc.
[0065] As previously discussed, the digital replica may include a physics-based model of one or more physical assets of a substrate manufacturing system. Model data 319 may encapsulate relationships, parameters, specifications, and the like associated with one or more aspects of the physics-based model. For example, the physics-based model may indicate the relationship between the dimensions and geometry of a substrate processing chamber and heat transfer within the processing chamber. The physics-based model may indicate the relationship between the type of purge gas used within the substrate manufacturing system and heat transfer. Predicted cooling parameter values may be associated with how heat transfer within the processing chamber is altered by modifying the type and amount of gas used to purge the system. The physics-based model may indicate the relationship between at least one of the processes for extracting heat from the substrate manufacturing system (e.g., cooling via one or more cooling loops) and energy input to the system (e.g., in the form of heat and / or RF energy). The predicted cooling parameter values may be associated with modifications to at least one of heat removal equipment, gas abatement equipment, water cooling equipment, or exhaust structures. In some embodiments, the physics-based model may be a reduced-order model (e.g., a reduced / simplified version of a full-order model).
[0066] Server 320 may include a cooling tool 322 and / or a modeling tool 324. As described herein, the various tools of server 320 may communicate data between each other to implement each corresponding function. Cooling tool 322 may determine adjustments to cooling parameters based on predicted values of cooling parameters. For example, cooling tool 322 may determine adjustments to the coolant flow rate through a cooling circuit of a processing chamber based on predicted cooling parameter values (e.g., predicted coolant flow rate values). In another example, cooling tool 322 may determine adjustments to the inlet temperature of the coolant supplied to the inlet of the cooling circuit of the processing chamber based on predicted cooling parameter values (e.g., predicted coolant input temperature). In some embodiments, cooling tool 322 calculates a target flow rate for the coolant to flow through the cooling circuit based on a predicted amount of energy to be removed from the processing chamber by the cooling circuit. Similarly, in some embodiments, cooling tool 322 calculates a target coolant inlet temperature for the coolant flowing into the inlet of the cooling circuit. In some embodiments, the cooling tool determines one or more actuation values corresponding to the calculated and / or predicted flow rates. The cooling tool 322 may cause the coolant flow rate to be modulated (eg, by the equipment controller 306 ) based on the actuation value.
[0067] Modeling tool 324 receives model data 319 and / or manufacturing data from manufacturing system 302 and / or client device 350 and generates a model associated with the manufacturing data and / or model data. The manufacturing data may include a selection of process operations of manufacturing equipment 304 and process recipe 308. Modeling tool 324 generates a model of the physical system architecture of the manufacturing system, or a virtual input system (e.g., generated by a user on client device 350).
[0068] The model generated by modeling tool 324 may include a physics model, a data model, a statistical model, a machine learning model, and / or a hybrid model. The physics model may include physics-based constraints and control algorithms designed to estimate the physical conditions of the input manufacturing data and / or model data 319 (e.g., exhaust temperature, power delivery requirements, coolant temperature, coolant flow rate, and / or other conditions indicative of the physical environment associated with environmental resource consumption). For example, a user may create a process recipe on client device 350. A process recipe may include process or recipe parameters and instructions for using machine equipment in a certain manner. Modeling tool 324 will ingest this manufacturing data and determine the physical constraints of the system (e.g., operating temperature, pressure, exhaust parameters, coolant temperature, and / or flow rate, etc.). For example, the physics model may identify the physical conditions of the system based on the chamber's hardware configuration (e.g., using type A equipment material versus type B equipment material) and / or recipe parameters. In another example, the physical conditions may be determined based on relevant machine equipment parts that affect heat loss to water, air, and / or heating, ventilation, and air conditioning (HVAC) equipment. Modeling tool 324 can work with other tools (e.g., cooling tool 322) to predict cooling parameters corresponding to received manufacturing data and / or model data 319. It should be noted that modeling tool 324 can predict cooling flow rates and / or coolant input temperatures for a manufacturing process and a selection of manufacturing equipment without receiving empirical data from manufacturing equipment 304 executing a process recipe. Thus, a model (e.g., a digital replica) of the manufacturing equipment can be used to predict coolant flow rates for a specific equipment design and / or process recipe without actually building the specific equipment design or running a specific process recipe.
[0069] In some embodiments, modeling tool 324 can operate with a digital twin. As used herein, a digital twin is a digital replica of a physical asset (e.g., a manufactured part or process chamber). A digital twin includes the physical asset's characteristics at every stage of the manufacturing process, including, but not limited to, coordinate axis dimensions, weight characteristics, material properties (e.g., density, surface roughness), electrical properties (e.g., conductivity), optical properties (e.g., reflectivity), thermal properties, and the like.
[0070] In some embodiments, the physics-based models used by the modeling tool 324 may include fluid flow modeling, gas flow and / or consumption modeling, chemistry-based modeling, heat transfer modeling, cooling modeling, electrical energy consumption modeling, plasma modeling, and the like.
[0071] In some embodiments, modeling tool 324 may employ statistical modeling to predict cooling parameters corresponding to manufacturing data. In embodiments, the predicted or estimated cooling parameters may include heat removed from the process chamber or process chamber region. Statistical models may be used to process manufacturing data using statistical operations based on previously processed historical cooling data (e.g., cooling data 314) to validate, predict, and / or transform the manufacturing data. In some embodiments, statistical models are generated using statistical process control (SPC) analysis to determine control limits for the data and identify the data as more or less reliable based on those control limits. In some embodiments, statistical models are associated with univariate and / or multivariate data analysis. For example, statistical models may be used to analyze various parameters to determine patterns and correlations (e.g., range, minimum, maximum, quartiles, variance, standard deviation, etc.) through statistical procedures. In another example, regression analysis, path analysis, factor analysis, multivariate statistical process control (MCSPC), and / or multivariate analysis of variance (MANOVA) may be used to determine relationships between multiple variables.
[0072] In some embodiments, machine learning system 370 includes server machine 372, server machine 380, and / or server machine 392. Server machine 372 includes a dataset generator 374 that can generate a dataset (e.g., a set of data inputs and a set of target outputs) to train, validate, and / or test machine learning model 390.
[0073] Server machine 380 includes a training engine 382, a verification engine 384, and / or a test engine 386. An engine (e.g., training engine 382, verification engine 384, and / or test engine 386) can refer to hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, a processing device, etc.), software (e.g., instructions running on a processing device, a general-purpose computer system, or a dedicated machine), firmware, microcode, or a combination thereof. Training engine 382 can be capable of training a machine learning model 390 using one or more sets of features associated with a training set from dataset generator 374. Training engine 382 can generate one or more trained machine learning models 390, each of which can be trained based on a different set of features and / or a different set of labels in the training set. For example, a first trained machine learning model can be trained using resource consumption data output by modeling tool 324, a second trained machine learning model can be trained using historical cooling data (e.g., cooling data 314), and so on.
[0074] The validation engine 384 can validate the trained machine learning model 390 using the validation set from the dataset generator 374. The testing engine 386 can test the trained machine learning model 390 using the test set from the dataset generator 374.
[0075] The machine learning model 390 may refer to the one or more trained machine learning models created by the training engine 382 using a training set that includes data inputs and, in some embodiments, corresponding target outputs (e.g., correct answers for the corresponding training inputs). Patterns in the data set that cluster the data inputs and / or map the data inputs to the target outputs (correct answers) may be found, and the machine learning model 390 is provided with mappings that capture these patterns and / or learn these mappings. The machine learning model 390 may include an artificial neural network, a deep neural network, a convolutional neural network, a recurrent neural network (e.g., a long short-term memory (LSTM) network, a convLSTM network, etc.), and / or other types of neural networks. The machine learning model 390 may additionally or alternatively include other types of machine learning models, such as a machine learning model that uses one or more of linear regression, Gaussian regression, random forests, support vector machines, and the like.
[0076] Prediction component 394 can provide current data to a trained machine learning model 390 and can run the trained machine learning model 390 on inputs to obtain one or more outputs. Prediction component 394 can make determinations and / or perform actions based on the outputs of the trained machine learning model 390. The machine learning (ML) model outputs can include confidence data indicating a confidence level that the ML model outputs (e.g., predicted cooling parameters, such as the amount of heat to be removed, coolant flow parameters, etc.) correspond to cooling parameters that, when applied, will improve cooling of a selected set of manufacturing processes and / or manufacturing equipment (e.g., cooling via a cooling loop). In some embodiments, prediction component 394 can perform process recipe modifications based on the ML model outputs, which can control the amount of heat removed from a process chamber or process chamber region to maintain the temperature within the process chamber within a target temperature range. Prediction component 394 can provide the ML model outputs to one or more tools of server 320.
[0077] The confidence data may include or indicate a confidence level that the ML model output is correct (e.g., that the ML model output corresponds to a known label associated with the training data item). In one example, the confidence level is a real number between 0 and 1, including 0 and 1, where 0 indicates no confidence that the ML model output is correct and 1 indicates absolute confidence that the ML model output is correct. In response to the confidence data indicating that the confidence level is below a threshold level for a predetermined number of instances (e.g., a percentage of instances, a frequency of instances, a total number of instances, etc.), the server 320 may cause the trained machine learning model 390 to be retrained.
[0078] For purposes of illustration and not limitation, aspects of the present disclosure describe using process recipe data to train a machine learning model, and inputting a current selection of manufacturing processes and / or manufacturing equipment into the trained machine learning model to determine ML model outputs (process modifications and optimization parameters, such as target eco-efficiency for specific resource consumption). In other embodiments, heuristic or rule-based models are used to determine the outputs (e.g., without using a trained machine learning model).
[0079] In some embodiments, the functionality of manufacturing system 302, client device 350, machine learning system 370, data storage 312, and / or server 320 can be provided by a smaller number of machines. For example, in some embodiments, server machines 372 and 380 can be consolidated into a single machine, while in some other embodiments, server machine 372, server machine 380, and server machine 392 can be consolidated into a single machine. In some embodiments, server 320, manufacturing system 302, and client device 350 can be consolidated into a single machine.
[0080] In general, functions described in one embodiment as being performed by manufacturing system 302, client device 350, and / or machine learning system 370 may also be performed on server 320, as appropriate, in other embodiments. Furthermore, functionality attributed to a particular component may also be performed by a different component or components operating together. For example, in some embodiments, server 320 may receive manufacturing data and perform machine learning operations. In another example, client device 350 may perform manufacturing data processing based on output from a trained machine learning model.
[0081] Additionally, the functionality of a particular component may be performed by a different component or multiple components operating together. One or more of server 320, manufacturing system 302, or machine learning system 370 may be accessed as a service provided to other systems or devices through an appropriate application programming interface (API).
[0082] In embodiments, a "user" may be represented as a single individual. However, other embodiments of the present disclosure include a "user" that is an entity controlled by multiple users and / or automated sources. For example, a group of individual users united as an administrator group may be considered a "user."
[0083] Figure 4 A model training workflow 405 and a model application workflow 417 for substrate placement determination according to aspects of the present disclosure are shown. The model training workflow 405 and the model application workflow 417 can be performed by processing logic executed by a processor of a computing device. One or more of these workflows 405, 417 can be implemented by, for example, one or more machine learning models implemented on the processing device and / or other software and / or firmware executed on the processing device.
[0084] The model training workflow 405 is used to train one or more machine learning models (e.g., deep learning models) to determine cooling parameter values for one or more cooling circuits that flow a coolant through a processing chamber. The model application workflow 417 is used to apply the one or more trained machine learning models to perform cooling parameter evaluation. Each process recipe 412 can be associated with a processing operation for processing a substrate. For example, each process recipe 412 can reflect one or more process recipe set points (e.g., pressure set points, temperature set points, RF energy set points, etc.) corresponding to the process recipe. In some embodiments, the process recipes 412 include substrate processing recipes, process chamber cleaning recipes, process chamber service recipes, substrate handoff recipes, process chamber purge recipes, pre-preventive maintenance recipes, and / or post-preventive maintenance recipes.
[0085] Various machine learning outputs are described herein. A specific number and arrangement of machine learning models are described and shown. However, it should be understood that the number and type of machine learning models used, as well as the arrangement of such machine learning models, can be modified to achieve the same or similar end results. Therefore, the described and shown arrangements of machine learning models are merely examples and should not be construed as limiting.
[0086] In some embodiments, one or more machine learning models are trained to perform one or more cooling parameter value estimation tasks. In some embodiments, the one or more machine learning models are trained to estimate the energy to which one or more regions (e.g., parts or components) of a process chamber or other system will be exposed based on inputs such as current sensor values and / or a process recipe. Each task can be performed by a separate machine learning model. Alternatively, a single machine learning model can perform each task or a subset of tasks. For example, a first machine learning model can be trained to determine the predicted / estimated energy at one or more regions or components of a process chamber during execution of a process recipe (e.g., during one or more run times of the process recipe). The first machine learning model can also or alternatively be trained to determine the predicted / estimated amount of heat to be removed from the processing chamber via a cooling circuit during execution of a process operation according to the process recipe to maintain the temperature of the one or more components of the process chamber within a target temperature range. The first machine learning model and / or the second machine learning model can also be trained to determine parameter values (e.g., predicted flow rates, predicted coolant input temperatures, etc.) that will maintain the temperature of one or more components of the process chamber within the target temperature range. Additionally or alternatively, different machine learning models can be trained to perform different combinations of tasks. In one example, one or more machine learning models can be trained, where the trained machine learning (ML) model is a single shared neural network having multiple shared layers and multiple higher-level distinct output layers, where each output layer outputs a different prediction, classification, recognition, etc. For example, a first higher-level output layer can determine a predicted heat amount, and a second higher-level output layer can determine a predicted coolant flow (flow and / or temperature). In some embodiments, one or more physics-based models can be used to improve the accuracy of the machine learning model. In some examples, if data for training does not exist (e.g., under extreme operating conditions corresponding to the processing chamber), a physics model can be used to map inputs to outputs. The machine learning model can be further trained based on the inputs and outputs of the physics-based model. By incorporating data from the physics-based model, the machine learning model can be a physics-informed machine learning model (PIML) or a physics-informed neural network (PINN).
[0087] One type of machine learning model that can be used to perform some or all of the tasks listed above is an artificial neural network, such as a deep neural network. An artificial neural network typically consists of a feature representation component with a classifier or regression layer that maps features to a target output space. For example, a convolutional neural network (CNN) consists of multiple layers of convolutional filters. At the lower layers, pooling is performed and nonlinearities are resolved. These lower layers are typically topped with multilayer perceptrons to map the top-level features extracted by the convolutional layers to a decision (e.g., a classification output). Deep learning is a class of machine learning algorithms that uses a cascade of multiple layers of nonlinear processing units to extract and transform features. Each successive layer uses the output from the previous layer as input. Deep neural networks can learn in a supervised (e.g., classification) and / or unsupervised (e.g., pattern analysis) manner. Deep neural networks consist of a hierarchy of layers, with different layers learning different representations corresponding to different levels of abstraction. In deep learning, each layer learns to transform its input data into a slightly more abstract and comprehensive representation. Notably, the deep learning process can autonomously learn which features are best placed at which layer. The "depth" in "deep learning" refers to the number of layers through which the data is transformed. More specifically, deep learning systems have a significant credit assignment path (CAP) depth. CAP is the chain of transformations from input to output. CAP describes the underlying causal relationship between input and output. For feedforward neural networks, the CAP depth can be the depth of the network plus the number of hidden layers plus one. For recurrent neural networks, where signals can propagate through a layer more than once, the CAP depth can be infinite.
[0088] Training a neural network can be accomplished in a supervised learning fashion, which involves feeding a training dataset consisting of labeled inputs through the network, observing its output, defining an error (defined by measuring the difference between the output and the label value), and using techniques such as deep gradient descent and backpropagation to adjust the network's weights across all layers and nodes of the network to minimize the error. In many applications, repeating this process across many labeled inputs in the training dataset results in a network that can produce the correct output when presented with inputs that differ from those present in the training dataset.
[0089] For the model training workflow 405, a training dataset containing hundreds, thousands, tens, or even hundreds of thousands of process recipes 412 is used to form a training dataset. For example, the data may include process recipe setpoints (e.g., control knob setpoints), each associated with a specific target temperature, coolant flow rate, heat removal, etc. This data may be processed to generate one or more training datasets 436, which are used to train one or more machine learning models. Training data items in the training dataset 436 may include process recipes 412, coolant flow data (e.g., coolant flow rate data, coolant temperature data, etc.), and / or sensor data collected during processing of substrates according to the process recipes.
[0090] To implement training, processing logic inputs a training dataset 436 into one or more untrained machine learning models. Prior to inputting the first input into the machine learning model, the machine learning model may be initialized. Processing logic trains the untrained machine learning model based on the training dataset to generate one or more trained machine learning models that perform the various operations described above. Training can be performed by inputting input data, such as one or more process recipes 412 (e.g., process recipe set points), component images, and / or age information, into the machine learning model.
[0091] Machine learning models process inputs to produce outputs. An artificial neural network consists of an input layer, which consists of the values from the data points. The next layer, called a hidden layer, has nodes that each receive one or more input values. Each node contains parameters (such as weights) that are applied to the input values. Therefore, each node essentially applies the input values to a multivariate function (for example, a nonlinear mathematical transformation) to produce an output value. The next layer may be another hidden layer, or an output layer. In both cases, the nodes in the next layer receive output values from the nodes in the previous layer, each node applies weights to those values, and then produces its own output value. This is performed at each layer. The final layer is the output layer, which has a node for each category, prediction, and / or output that the machine learning model can produce.
[0092] Thus, the output may include one or more predictions or inferences (e.g., estimates of cooling parameter values, such as coolant flow rate and / or temperature). The processing logic may compare the output estimated cooling parameter values with historical parameter values. The processing logic determines an error (i.e., a classification error) based on the difference between the estimated parameter value and the target parameter value. The processing logic adjusts the weights of one or more nodes in the machine learning model based on the error. An error term or delta may be determined for each node in the artificial neural network. Based on this error, the artificial neural network adjusts one or more parameters of one or more of its nodes (the weights of one or more inputs to the node). The parameters may be updated in a backpropagation manner, such that nodes at the highest layer are updated first, followed by nodes at the next layer, and so on. The artificial neural network comprises multiple layers of "neurons," wherein each layer receives as input values from neurons in the previous layer. The parameters of each neuron include weights associated with the values received from each neuron in the previous layer. Thus, adjusting the parameters may include adjusting the weights assigned to each input of one or more neurons in one or more layers of the artificial neural network.
[0093] Once the model parameters are optimized, model validation can be performed to determine whether the model has improved and to determine the current accuracy of the deep learning model. After one or more rounds of training, processing logic can determine whether stopping criteria have been met. The stopping criteria can include a target level of accuracy, a target number of processed recipes from the training dataset, a target amount of change in a parameter relative to one or more previous data points, a combination thereof, and / or other criteria. In one embodiment, the stopping criteria are met when at least a minimum number of data points have been processed and at least a threshold accuracy has been achieved. The threshold accuracy can be, for example, 70%, 40%, or 90% accuracy. In one embodiment, the stopping criteria are met if the accuracy of the machine learning model has stopped improving. If the stopping criteria are not met, further training is performed. If the stopping criteria are met, training may be complete. Once the machine learning model is trained, a retained portion of the training dataset can be used to test the model. Once one or more trained machine learning models 438 are generated, they can be stored in the model memory 445 and added to the cooling parameter engine 330.
[0094] For the model application workflow 417, according to one embodiment, input data 462 may be input into one or more cooling parameter determiners 467, each of which may include a trained neural network or other model. Additionally or alternatively, the one or more cooling parameter determiners 467 may apply a finite element analysis algorithm to determine predicted heat transfer within the processing chamber. The input data may include a process recipe (e.g., process recipe setpoint data, process control knob data, etc.). Furthermore, the input data may optionally include sensor data associated with coolant flow and / or component temperatures within the processing chamber executing the process recipe. Based on the input data 462, the cooling parameter determiner 467 may output an estimated / predicted thermal state of one or more regions or components of the processing chamber or other system. The cooling parameter determiner 467 may additionally or alternatively output the amount of heat removed from the one or more regions or components and / or one or more estimated cooling parameter values 469. The estimated cooling parameter values 469 may include a predicted coolant flow rate through the cooling circuit and / or a predicted coolant input temperature of the coolant introduced to the cooling circuit at an inlet of the cooling circuit that, when applied, will achieve an estimated heat energy removal from the one or more regions and / or components of the process chamber.
[0095] An action determiner 472 may determine one or more actions 470 to perform based on the cooling parameter value 469. In one embodiment, the action determiner 472 compares the estimated cooling parameter value to one or more cooling parameter thresholds (e.g., a coolant flow rate threshold, a coolant temperature threshold, etc.). If one or more of the estimated cooling parameter values meet or exceed the cooling parameter thresholds, the action determiner 472 may determine that an update to the cooling parameters (e.g., the coolant flow rate through the cooling circuit) for future substrate processing is recommended, and may output a recommendation or notification to update the cooling parameters. In some embodiments, the action determiner 472 automatically updates the cooling parameter metrics based on the cooling parameter value 469 meeting one or more criteria. In some examples, the cooling parameter value 469 may include an estimated flow rate of coolant through the process chamber coolant circuit and / or an estimated coolant temperature of the coolant introduced at the inlet of the cooling circuit. In some embodiments, the action determiner 472 determines to open or close (e.g., partially open or partially close) a valve that adjusts the coolant flow rate to the cooling circuit based on the cooling parameter value 469. For example, in response to the cooling parameter value indicating that more heat should be removed from the processing chamber, the action determiner 472 may determine that the coolant valve should be opened (at least partially opened). Similarly, the action determiner 472 may determine that the coolant supplied to the cooling circuit (e.g., from a cooling tower, from a chiller, etc.) should have a lower temperature, and the action determiner 472 may determine the action 470 to achieve this goal (e.g., providing more cool coolant to the coolant flow, reducing the temperature of the chiller, etc.).
[0096] Figure 5 is a flow chart of a method 500 for generating a training data set for training a machine learning model to perform cooling parameter estimation according to aspects of the present disclosure. The method 500 is performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (e.g., running on a general-purpose computer system or a dedicated machine), firmware, or some combination thereof. In one embodiment, the method 500 may be performed by a computer system (e.g., Figure 3 In other or similar embodiments, one or more operations of method 500 may be performed by one or more other machines not depicted in the figures. In some aspects, one or more operations of method 500 may be performed by Figure 3 The training set generator 374 of the described machine learning system 370 is performed.
[0097] At block 510, processing logic initializes a training set T to an empty set (e.g., {}). At block 512, processing logic obtains substrate process recipe data (e.g., process recipe setpoint data, process knob setpoint data, process pressure setpoint data, process temperature setpoint data, etc.) associated with processing a substrate at a processing chamber of a manufacturing system. The process recipe data may include and / or constitute historical process recipe data (e.g., recipe data collected over time). In some embodiments, processing logic further obtains sensor data (e.g., temperature sensor data, pressure sensor data, energy sensor data, etc.) associated with processing a substrate at the processing chamber according to the process recipe. In some embodiments, processing logic further obtains threshold component temperature data corresponding to a maximum threshold temperature of a processing chamber component, which, when exceeded, may indicate a component failure.
[0098] At block 514, processing logic obtains cooling parameter information corresponding to the substrate process recipe. As previously described, the cooling parameter information may include information associated with coolant flow through the cooling circuit, such as coolant flow rate and / or coolant temperature (e.g., coolant flow rate and / or coolant temperature at the inlet and / or outlet of the cooling circuit). The cooling parameter information may include and / or constitute historical parameter values (e.g., historical cooling parameter values).
[0099] At block 516, processing logic generates training inputs based on the process recipe data and / or sensor data obtained at block 512. In some implementations, the training inputs may include a set of normalized recipe data.
[0100] At block 518, processing logic may generate a target output based on the cooling parameter information obtained at block 514. The target output may correspond to a cooling parameter metric (data indicative of coolant flow through a cooling circuit of the processing chamber) for the process recipe executed in the processing chamber.
[0101] At block 520, processing logic generates an input / output map. The input / output map refers to a training input that includes or is based on the process recipe data and a target output for the training input, where the target output identifies a value for a cooling parameter, and where the training input is associated with (or mapped to) the target output. At block 522, processing logic adds the input / output map to the training set T.
[0102] At block 524, processing logic determines whether the training set T includes a sufficient amount of training data to train the machine learning model. Note that in some embodiments, the sufficiency of the training set T can be determined solely based on the number of input / output mappings in the training set, while in other embodiments, the sufficiency of the training set T can be determined based on one or more other criteria (e.g., a measure of the diversity of training examples, etc.) in addition to or instead of the number of input / output mappings. In response to determining that the training set T includes a sufficient amount of training data to train the machine learning model, processing logic provides the training set T to train the machine learning model. In response to determining that the training set does not include a sufficient amount of training data to train the machine learning model, method 500 returns to block 512.
[0103] At block 526, processing logic provides a training set T to train the machine learning model. In some embodiments, the training set T is provided to the machine learning system 370 and / or the training engine 382 of the server machine 392 to perform the training. In the case of a neural network, for example, input values (e.g., recipe data and / or cooling parameter data) for a given input / output mapping are input to the neural network, and the output values of the input / output mapping are stored in the output nodes of the neural network. The connection weights in the neural network are then adjusted according to a learning algorithm (e.g., backpropagation, etc.), and this process is repeated for the remaining input / output mappings in the training set T. After block 526, the machine learning model 390 can be used to provide predicted cooling parameter values for the process recipe operations performed in the processing chamber.
[0104] Figure 6 is a flow chart illustrating an embodiment of a method 600 for training a machine learning model to estimate a cooling parameter value for a process recipe executed in a processing chamber according to aspects of the present disclosure. The method 600 is performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (e.g., running on a general-purpose computer system or a dedicated machine), firmware, or some combination thereof. In one embodiment, the method 600 may be executed by a computer system (e.g., Figure 3 In other or similar embodiments, one or more operations of method 600 may be performed by one or more other machines not depicted in the figures. In some aspects, one or more operations of method 600 may be performed by Figure 3 Executed by the training engine 382 of the described machine learning system 370.
[0105] At block 602 of method 600, processing logic collects a training dataset that may include data from a plurality of substrate process recipes (e.g., process recipe setpoints, process control knob setpoints, etc.). The training dataset may further include sensor data associated with the execution of the substrate process recipes. Each data item in the training dataset may include one or more labels. Data items in the training dataset may include input-level labels indicating cooling parameter values associated with the substrate process recipes. For example, some data items may include a label for the coolant flow rate through a processing chamber cooling circuit associated with the process recipe. In another example, a data item may include a label for the amount of heat generated by the process recipe.
[0106] At block 604, data items from the training dataset are input into an untrained machine learning model. At block 606, the machine learning model is trained based on the training dataset to produce a trained machine learning model that classifies or estimates one or more cooling parameters for processing a substrate in a processing chamber according to a process recipe. The machine learning model can also be trained to output one or more other types of predictions, classifications, decisions, and the like.
[0107] In one embodiment, at block 610, input of training data items is input into a machine learning model. The input may include substrate process recipe data (e.g., a substrate process recipe) indicating one or more process recipe setpoints. In some embodiments, the data may be input as a feature vector. At block 612, the machine learning model processes the input to generate an output. The output may include one or more cooling parameter values (e.g., coolant flow rate, coolant temperature, etc.). The cooling parameter values may be recommended cooling parameter values (e.g., coolant flow rate and / or inlet temperature) for processing substrates according to the process recipe. The output may additionally or alternatively include a predicted amount of heat generated when executing the process recipe. For example, the predicted amount of heat may indicate an amount of excess heat to be removed from the processing chamber during execution of the process recipe operations to prevent thermal damage to the processing chamber and / or components. A target coolant flow rate and / or a target coolant inlet temperature for the cooling circuit of the processing chamber may be determined based on the amount of heat to be removed.
[0108] At block 614, processing logic compares the output probability and / or value of the cooling parameter metric to a known optimal cooling parameter value associated with the input. At block 616, processing logic determines an error based on the difference between the output and the known cooling parameter value. At block 618, processing logic adjusts the weights of one or more nodes in the machine learning model based on the error.
[0109] At block 620, processing logic determines whether the stopping criteria are met. If the stopping criteria have not been met, the method returns to block 610 and another training data item is input into the machine learning model. If the stopping criteria are met, the method proceeds to block 625 and training of the machine learning model is complete.
[0110] In one embodiment, one or more ML models are trained for application across multiple process chambers, which may be process chambers of the same type or model. The trained ML model may then be further tuned for use with a specific instance of a process chamber. Further tuning may be performed using additional training data items comprising substrate process recipes that may be performed in the process chamber in question. Such tuning may account for chamber mismatches between chambers and / or specific hardware process kits for some of the process chambers. Additionally, in some embodiments, further training is performed to tune the ML model for a process chamber after maintenance is performed on the process chamber and / or additional changes are made to the hardware of the process chamber.
[0111] Figure 7 is a flow chart of a method 700 for determining a predicted value of a cooling parameter according to aspects of the present disclosure. The method 700 is performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (e.g., running on a general-purpose computer system or a dedicated machine), firmware, or some combination thereof. In one embodiment, the method 700 may be performed by a computer system (e.g., Figure 3 In other or similar embodiments, one or more operations of method 700 may be performed by one or more other machines not depicted in the figures. In some aspects, one or more operations of method 700 may be performed by Figure 3 The cooling tool 322 of the server machine 320 is described.
[0112] For ease of explanation, method 700 is depicted and described as a series of operations. However, operations according to the present disclosure may occur in various orders and / or in parallel, and with other operations not presented and described herein. Furthermore, method 700 according to the disclosed subject matter may be implemented without performing all illustrated operations. Furthermore, those skilled in the art will appreciate that method 700 may alternatively be represented as a series of interrelated states via a state diagram or events.
[0113] At block 702, processing logic (e.g., processing logic of a processing device) receives first data indicating a process recipe for processing a substrate in a processing chamber of a substrate processing system. The first data may include process recipe setpoint data, process recipe control knob data, process recipe target temperature data, and / or the like. For example, the first data may include process knob settings, process temperature settings, and / or process pressure settings for processing a substrate in the processing chamber.
[0114] At block 704, processing logic configures a first data input into a model representing thermal characteristics of the processing chamber. In some examples, processing logic inputs the first data into a physics-based model, a data-based model, and / or a hybrid model. In some embodiments, the model is a trained machine learning model as described herein. In some examples, the model is trained using training input data comprising historical process recipe data, historical process condition data, and / or historical threshold chamber component temperature data. The trained machine learning model is further trained using training target output data comprising historical parameter values. In some embodiments, the training input data is labeled with corresponding target output data (e.g., labeled with corresponding training output data). In some embodiments, the trained machine learning model is supplemented with a physics-based model. In some examples, the model may use physics-based modeling for edge conditions (e.g., conditions for which little historical data has been collected, such as under extreme operating conditions), while the model may use machine learning to model behavior for core conditions (e.g., conditions for which extensive historical data has been collected). The model may represent the thermal conductivity characteristics of the processing chamber based on input energy and / or coolant flowing through a cooling circuit of the processing chamber. In some embodiments, the model may represent thermal characteristics based on a finite element analysis of a physics-based model of the processing chamber.
[0115] At block 706, processing logic optionally receives second data indicating one or more process conditions associated with processing a substrate in a processing chamber according to a process recipe. For example, the processing equipment may receive sensor data from sensors in the processing chamber during or after a process is performed in the processing chamber. The sensor data may include temperature data, pressure data, energy data (e.g., RF energy data), and / or the like. In some examples, the sensor data includes an input coolant temperature measured by a temperature sensor at the inlet of a cooling circuit and / or an outlet coolant temperature measured by a temperature sensor at the outlet of the cooling circuit. The sensor data may include data indicating a difference (e.g., a differential) between the cooling circuit inlet temperature and the cooling circuit outlet temperature. In some embodiments, the second data further includes threshold component temperature data (e.g., a maximum allowable component temperature). For example, the second data may include temperature data indicating a maximum temperature that a component of the processing chamber can withstand before failure. At block 708, the second data is input into the model.
[0116] In some embodiments, the processing logic further receives user input associated with the cooling parameters. In some examples, the user can provide input indicating a target coolant flow rate and / or a desired coolant temperature. In some examples, the user can enter a default temperature for the coolant supplied to the cooling circuit, and / or the user can enter a default coolant flow rate for the coolant supplied to the cooling circuit. In some embodiments, the processing logic receives user input indicating a range within which the coolant can flow (e.g., the coolant flowing through the cooling circuit can flow within a user-specified flow rate range and / or a user-specified temperature range, etc.). In some embodiments, the user input can include an indication of how often the cooling parameters should be updated with new predicted values. For example, the user input can indicate that the cooling parameters should be updated with new predicted cooling parameter values after each process recipe operation, only after the entire process recipe is executed, and so on. Data indicating the user input can be input into the model.
[0117] At block 710, processing logic receives, via a model, a predicted value for a parameter associated with the flow rate of coolant through a cooling circuit of a process chamber. In some embodiments, the predicted value for the parameter is a predicted flow rate value or a predicted inlet coolant temperature value. In some embodiments, the predicted value for the parameter is a recommended flow rate value or a recommended inlet coolant temperature value for cooling one or more components of the process chamber. In some embodiments, the predicted value for the parameter is a predicted temperature of one or more components of the process chamber and / or a predicted amount of heat within the process chamber. In some embodiments, processing logic receives the predicted values for the parameters, each parameter associated with a different cooling circuit within the process chamber. In some embodiments, processing logic receives, via a model, predicted chamber conditions (e.g., predicted temperature, predicted pressure, etc.) associated with the execution of a process recipe operation. The predicted value may be based on one or more estimated / predicted temperatures of one or more components and / or regions of the process chamber and / or an estimated / predicted amount of heat to be removed from the process chamber during the execution of one or more process recipe operations.
[0118] In some embodiments, based on the predicted values of the parameters, processing logic determines one or more target coolant temperatures. In some examples, processing logic may determine a target coolant output temperature corresponding to the temperature of the coolant output from a cooling circuit of the processing chamber (e.g., the coolant output from the cooling circuit has removed heat from the processing chamber while flowing along the flow path of the cooling circuit). The target coolant output temperature may be determined using thermodynamic properties of the coolant. For example, based on the heat capacity of the coolant, the inlet temperature of the coolant, and / or the predicted amount of heat to be extracted from the processing chamber by the cooling circuit, processing logic may determine a target coolant output temperature corresponding to the temperature of the coolant output from the cooling circuit.
[0119] At block 712, during execution of the process recipe in the processing chamber, processing logic causes coolant to flow through the cooling circuit based on the predicted value. In some embodiments, processing logic actuates an actuator coupled to a flow control valve that regulates coolant flow through the cooling circuit. In some examples, the actuator is caused to open or close the valve to cause coolant to flow through the cooling circuit at the predicted flow rate. In some embodiments, processing logic causes coolant to flow into the cooling circuit (e.g., through an inlet of the cooling circuit) at a predicted coolant temperature. In some examples, warm coolant flow and cold coolant flow (e.g., warm and cold relative to each other) are combined in a determined ratio to cause coolant to flow into the cooling circuit at the predicted temperature. In some embodiments, coolant is flowed through the cooling circuit to maintain a coolant output temperature at a target coolant output temperature, which may have been determined at block 710.
[0120] At block 714, processing logic optionally determines a miss condition for the processing chamber. The miss condition may be, for example, degradation of the processing chamber (e.g., a processing chamber component) and / or a blockage in a cooling circuit. In some embodiments, the miss condition is determined based on a predicted condition output from the model. The miss condition may be further determined based on the second data received at block 706. In some embodiments, the miss condition corresponds to a mismatch between sensor data received during processing of a substrate according to the process recipe and the predicted condition output from the model. In some embodiments, a notification of the miss condition is prepared for display on a GUI. Similarly, corrective action (e.g., stopping operation of the process recipe) may be performed in response to the determination of the miss condition.
[0121] Figure 8 A block diagram of an example computing device operating in accordance with one or more aspects of the present disclosure is depicted. In various illustrative examples, various components of computing device 800 may represent various components of system controller 128, cooling tool 322, client device 350, etc.
[0122] The example computing device 800 can be connected to other computer devices in a LAN, an intranet, an extranet, and / or the Internet (e.g., using a cloud environment, cloud technology, and / or edge computing connections). The computing device 800 can operate as a server in a client-server network environment. The computing device 800 can be a personal computer (PC), a set-top box (STB), a server, a network router, a switch, or a bridge, or any device capable of executing a set of instructions (sequentially or otherwise) that specify actions to be taken by the device. Further, although only a single example computing device is described, the term "computer" should also be considered to include the collection of any computers that individually or collectively execute a set (or multiple sets) of instructions to perform any one or more of the methods discussed herein.
[0123] The example computing device 800 may include a processing device 802 (also referred to as a processor or CPU), a main memory 804 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous dynamic random access memory (SDRAM), etc.), a static memory 806 (e.g., flash memory, static random access memory (SRAM), etc.), and a secondary memory (e.g., a data storage device 818), which may communicate with each other via a bus 830.
[0124] The processing device 802 represents one or more general-purpose processing devices, such as a microprocessor, a central processing unit, or the like. In more detail, the processing device 802 may be a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, a processor that implements other instruction sets, or a processor that implements a combination of instruction sets. The processing device 802 may also be one or more special-purpose processing devices, such as an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a digital signal processor (DSP), a network processor, or the like. In accordance with one or more aspects of the present disclosure, the processing device 802 may be configured to execute an implementation. Figure 7 Instructions of method 700 are shown.
[0125] The example computing device 800 may further include a network interface device 808, which may be communicatively coupled to a network 820. The example computing device 800 may further include a video display 810 (e.g., a liquid crystal display (LCD), a touch screen, or a cathode ray tube (CRT)), an alphanumeric input device 812 (e.g., a keyboard), a cursor control device 814 (e.g., a mouse), and an acoustic signal generating device 816 (e.g., a speaker).
[0126] The data storage device 818 may include a machine-readable storage medium (or more specifically, a non-transitory machine-readable storage medium) 828 on which one or more sets of executable instructions 822 are stored. For example, the data storage may be a local (on-premise) physical storage, or a remote, such as cloud storage environment. According to one or more aspects of the present disclosure, the executable instructions 822 may include a computer program that is used to execute the program. Figure 7 Executable instructions associated with the method 700 shown. In one embodiment, the instructions 822 include instructions for Figure 1 Instructions for cooling module 129.
[0127] The executable instructions 822 may also reside completely or at least partially within the main memory 804 and / or within the processing device 802 during execution of such instructions by the example computing device 800, the main memory 804 and the processing device 802 also constituting computer-readable storage media. The executable instructions 822 may further be transmitted or received over a network via the network interface device 808.
[0128] Although Figure 8While computer-readable storage medium 828 is shown as a single medium, the term "computer-readable storage medium" should also be considered to include a single medium or multiple media (e.g., a centralized or distributed database and / or associated caches and servers) that store the one or more sets of operating instructions. The term "computer-readable storage medium" should also be considered to include any medium capable of storing or encoding a set of instructions for execution by a machine, causing the machine to perform any one or more of the methods described herein. Thus, the term "computer-readable storage medium" should be considered to include (but not be limited to) solid-state memory, as well as optical and magnetic media.
[0129] Some portions of the foregoing detailed descriptions are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, considered to be a self-consistent sequence of operations leading to a desired result. These operations are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It proves convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
[0130] It should be remembered, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise, it will be understood from the following discussion that discussions throughout the description utilizing terms such as "providing," "determining," "storing," "adjusting," "causing," "receiving," "comparing," "creating," "stopping," "loading," "copying," "throwing," "replacing," "executing," "inputting," or similar terms refer to actions and processes of a computer system or similar electronic computing device that manipulate and transform data represented as physical (electronic) quantities within the computer system's buffers and memory into other data similarly represented as physical quantities within the computer system's memory or buffers or other such information storage, transmission, or display devices.
[0131] Examples of the present disclosure also relate to an apparatus for performing the methods described herein. This apparatus can be specially constructed for this purpose, or it can be a general-purpose computer system selectively programmed by a computer program stored in the computer system. This computer program can be stored in a computer-readable storage medium, such as, but not limited to, any type of disk (including optical disks, compact disk read-only memory (CD-ROM), and magneto-optical disks), read-only memory (ROM), random access memory (RAM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic disk storage media, optical storage media, flash memory devices, other types of machine-accessible storage media, or any type of medium suitable for storing electronic instructions, each of which is coupled to a computer system bus.
[0132] The methods and displays presented herein are not inherently related to any particular computer or other device. Various general-purpose systems may be used with the programs taught herein, or it may prove convenient to construct a more specialized device to perform the method operations. The structures of various such systems will appear in the following description. Furthermore, the scope of this disclosure is not limited to any particular programming language. It will be understood that various programming languages may be used to implement the teachings of this disclosure.
[0133] It is to be understood that the above description is intended to be illustrative and not restrictive. Many other examples of implementations will be apparent to those skilled in the art upon reading and understanding the above description. Although this disclosure describes specific examples, it will be appreciated that the systems and methods of the present disclosure are not limited to the examples described herein, but may be practiced with modification within the scope of the appended claims. Accordingly, the specification and drawings should be viewed in an illustrative and not a restrictive sense. The scope of the present disclosure should, therefore, be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.
Claims
1. A method comprising: receiving first data indicating a process recipe for processing a substrate in a processing chamber of a substrate processing system; inputting the first data into a model, wherein the model includes a digital twin configured to represent thermal characteristics of the processing chamber; receiving, via the model, a predicted value of a parameter associated with a flow rate of a coolant through a cooling circuit of the processing chamber; as well as During execution of the process recipe in the processing chamber, a coolant is flowed through the cooling circuit based on the predicted value of the parameter. 2 . The method of claim 1 , wherein the parameter comprises one of a flow rate of the coolant through the cooling circuit or an inlet temperature of the coolant flowing through the cooling circuit at an inlet of the cooling circuit.
3. The method of claim 1 , wherein the predicted value of the parameter comprises a predicted flow rate of coolant through the cooling circuit, the method further comprising: An actuator associated with the cooling circuit is actuated based on the predicted flow rate to cause coolant to flow through the cooling circuit substantially at the predicted flow rate.
4. The method of claim 1, further comprising: A target coolant output temperature is determined based on the predicted value of the parameter, wherein the coolant is flowed through the cooling circuit to substantially maintain the coolant output from the cooling circuit at the target coolant output temperature.
5. The method of claim 1, wherein the model comprises at least one of a physics-based model or a trained machine learning model.
6. The method of claim 1 , wherein the model comprises a trained machine learning model, the method further comprising: A machine learning model is trained to produce the trained machine learning model, wherein the machine learning model is trained with training input data comprising historical process recipe data and training target output data comprising historical parameter values associated with the flow rate of the coolant through the cooling circuit of the processing chamber.
7. The method of claim 1, further comprising: receiving second data indicating one or more process conditions associated with processing the substrate in the processing chamber according to the process recipe; as well as The second data is input into the model, wherein the predicted value of the parameter is based on the first data and the second data.
8. The method of claim 7, wherein the one or more process conditions include: a first coolant temperature measured by a first temperature sensor at an inlet of the first cooling circuit; as well as A second coolant temperature is measured by a second temperature sensor at an outlet of the first cooling circuit.
9. The method of claim 7, further comprising: A miss condition for the processing chamber is determined based on the predicted condition output from the model and further based on the second data.
10. The method of claim 1 , wherein the predicted value of the parameter comprises a predicted coolant input temperature of coolant input to the cooling circuit, the method further comprising: Coolant introduced at an inlet of the cooling circuit is caused to have a temperature substantially matching the predicted coolant input temperature.
11. The method of claim 1, wherein the first data comprises one or more of a process temperature for processing the substrate inside the processing chamber or a process pressure for processing the substrate inside the processing chamber.
12. The method of claim 1, further comprising: receiving user input associated with the parameter; as well as Coolant is caused to flow through the cooling circuit based further on the user input.
13. The method of claim 1, further comprising: A threshold component temperature associated with a component of the processing chamber is input into the model, wherein the predicted value of the parameter is based on the first data and the threshold component temperature.
14. A system comprising: a processing chamber configured to process a substrate, the processing chamber comprising a cooling circuit configured to flow a coolant to cool at least a portion of the processing chamber; A processing device, the processing device being configured to: receiving first data indicating a process recipe for processing the substrate in the processing chamber; inputting the first data into a model, wherein the model includes a digital twin configured to represent thermal characteristics of the processing chamber; receiving, via the model, a predicted value of a parameter associated with a flow rate of a coolant through the cooling circuit of the processing chamber; as well as During execution of the process recipe in the processing chamber, a coolant is flowed through the cooling circuit based on the predicted value of the parameter.
15. The system of claim 14, wherein the predicted value of the parameter comprises a predicted flow rate of the coolant through the cooling circuit, wherein the system further comprises an actuator configured to cause an adjustment of the flow rate of the coolant through the cooling circuit, and wherein the processing device is further configured to: The actuator is actuated based on the predicted flow rate so that coolant flows through the cooling circuit substantially at the predicted flow rate.
16. The system of claim 14, wherein the model comprises a trained machine learning model, wherein the processing device is further configured to: A machine learning model is trained to produce the trained machine learning model, wherein the machine learning model is trained with training input data comprising historical process recipe data and training target output data comprising historical parameter values associated with the flow rate of the coolant through the cooling circuit of the processing chamber.
17. The system of claim 14 , further comprising a plurality of sensors configured to sense one or more process conditions associated with processing the substrate according to the process recipe in the processing chamber, wherein the processing equipment is further configured to: receiving second data indicative of the one or more process conditions from the plurality of sensors; and The second data is input into the model, wherein the predicted value of the parameter is based on the first data and the second data.
18. A non-transitory machine-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to: receiving first data indicating a process recipe for processing a substrate in a processing chamber of a substrate processing system; inputting the first data into a trained machine learning model; receiving, via the trained machine learning model, a predicted value of a parameter associated with a flow rate of a coolant through a cooling circuit of the processing chamber; as well as During execution of the process recipe in the processing chamber, a coolant is flowed through the cooling circuit based on the predicted value of the parameter.
19. The non-transitory machine-readable storage medium of claim 18, wherein the trained machine learning model is trained with training input data comprising one or more of historical process recipe data, historical process condition data, or historical threshold chamber component temperatures, wherein the training input data is labeled with corresponding target output data, the target output data comprising historical parameter values associated with the flow rate of the coolant through the cooling circuit of the processing chamber.
20. The non-transitory machine-readable storage medium of claim 18, wherein the predicted value of the parameter comprises a predicted flow rate of coolant through the cooling circuit, and wherein the processing device is further configured to: An actuator associated with the cooling circuit is actuated based on the predicted flow rate to cause coolant to flow through the cooling circuit substantially at the predicted flow rate.
Citation Information
Cited By
Atomic layer deposition process management method and system based on digital twinning
CN121279082A
Atomic layer deposition process management method and system based on digital twinning
CN121279082B