Communication node for interfacing evaluation system with manufacturing system

The communication node facilitates efficient data collection by interfacing evaluation systems with manufacturing systems, addressing integration challenges and enhancing data processing speed and quality, thereby reducing downtime and improving product consistency.

JP2025138624APending Publication Date: 2025-09-25APPLIED MATERIALS INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2025074517
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-03-15
Filing Date
2025-04-28
Publication Date
2025-09-25

AI Technical Summary

Technical Problem

Deploying or integrating different algorithms and machine learning models into a manufacturing system for data collection is a difficult and time-consuming process, requiring custom software deployment and consuming computing resources, leading to production delays and inefficiencies.

Method used

A communication node is introduced to interface evaluation systems with a manufacturing system, allowing for the configuration of monitoring devices to collect specific system data without custom software deployment, by querying for attributes and registering monitoring devices with the manufacturing system's front-end server, enabling real-time data transmission to evaluation systems.

Benefits of technology

This solution significantly reduces the time to acquire and process specific data, improves parameter optimization, detects manufacturing issues with low latency, and prevents inconsistent products, reducing downtime and improving energy efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025138624000001_ABST
    Figure 2025138624000001_ABST
Patent Text Reader

Abstract

To provide a communication node for interfacing one or more evaluation systems with a manufacturing system.SOLUTION: In an electronic device manufacturing system including a process tool 204, and a tool server 227 coupled to the process tool and including a communication node 232 and an evaluation system 234, the communication node obtains one or more attributes from the evaluation system, provides a monitoring device including a data collection plan based on the one or more attributes, registers the monitoring device with the process tool, receives data from the process tool based on the data collection plan, and transmits the received data to the evaluation system.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to electrical components, and more particularly to a communication node for interfacing one or more evaluation systems with a manufacturing system. [Background technology]

[0002] Products can be produced by performing one or more manufacturing processes using manufacturing equipment. For example, semiconductor manufacturing equipment (e.g., process tools) can be used to produce semiconductor devices (e.g., substrates, wafers, etc.) through a semiconductor manufacturing process. The process tool can deposit a film on the surface of the substrate and perform an etching process to form intricate patterns in the deposited film. For example, the process tool can perform a chemical vapor deposition (CVD) process to deposit a film on the substrate. Sensors can be used to determine manufacturing parameters of the process tool during the manufacturing process, a system controller can use a control device to adjust these parameters to affect the process results, and metrology devices can be used to determine characteristic data of the products produced by the process tool.

[0003] Tool data can be collected through a data collection plan (DCP). In current systems, multiple different algorithms and machine learning models may require different types of tool data for specific purposes, and each algorithm and machine learning model may have a custom DCP. However, deploying or integrating different algorithms and machine learning models into a manufacturing system to execute a DCP can be a difficult and time-consuming process. Therefore, a system that can interface machine learning models with the manufacturing system is desirable. Summary of the Invention

[0004] The following is a simplified summary of the disclosure to provide a basic understanding of some aspects of the disclosure. This summary is not an extensive overview of the disclosure. It is not intended to identify key or critical elements of the disclosure, nor is it intended to delineate the scope or claims of particular embodiments of the disclosure. Its sole purpose is to present some concepts of the disclosure in a simplified form as a prelude to the more detailed description that is presented later.

[0005] In one aspect of the present disclosure, an electronic device manufacturing system includes a process tool and a tool server coupled to the process tool and including a communication node and an evaluation system. The communication node is configured to obtain one or more attributes from the evaluation system and provide a monitoring device including a data collection plan based on the one or more attributes. The communication node is further configured to register the monitoring device with the process tool. The communication node is further configured to receive data from the process tool based on the data collection plan and transmit the received data to the evaluation system.

[0006] Further aspects of the present disclosure include methods according to any aspect or embodiment described herein.

[0007] A further aspect of the present disclosure includes a non-transitory computer-readable storage medium comprising instructions that, when executed by a processing unit operably coupled to a memory, perform operations according to any aspect or embodiment described herein.

[0008] A further aspect of the present disclosure includes an electronic device manufacturing system having a process tool and a tool server coupled to the process tool, the tool server including a communication node and an evaluation system. The communication node is configured to receive data from monitoring devices registered with the process tool based on a data collection plan and transmit the received data to the evaluation system. The communication node is further configured to receive feedback data from the evaluation system based on the received data and to cause the process tool to perform corrective action based on the feedback data.

[0009] The present disclosure is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings. [Brief explanation of the drawings]

[0010] [Figure 1] FIG. 1 is a block diagram illustrating an exemplary system architecture, according to certain embodiments. [Figure 2] FIG. 1 is a schematic top view of an exemplary manufacturing system, in accordance with certain embodiments. [Figure 3] FIG. 1 illustrates an exemplary tool server in accordance with aspects of the present disclosure, in accordance with certain embodiments. [Figure 4] FIG. 10 is an interaction diagram illustrating processing data received from a monitoring device to generate and send feedback to a process tool according to certain embodiments. [Figure 5] FIG. 10 is an interaction diagram illustrating processing data received from a monitoring device to generate and send feedback to a client device according to certain embodiments. [Figure 6] 1 is a flow diagram of a method for generating a monitoring device, according to certain embodiments. [Figure 7] FIG. 1 depicts an exemplary forecasting system, according to certain embodiments. [Figure 8] FIG. 1 is a block diagram illustrating a computer system, in accordance with certain embodiments. DETAILED DESCRIPTION OF THE INVENTION

[0011] Described herein is technology directed to a configurable data collection interface for an evaluation system. A data collection plan (DCP) is a procedure for collecting system data, such as sensor data, event data, constant data, and configuration data, from a manufacturing system using a combination of pre-configured settings, configuration files generated by analysis tools, and information collected through communications with the manufacturing system.

[0012] A manufacturing system may include multiple process chambers. A process chamber may have multiple subsystems that operate during each substrate manufacturing process (e.g., deposition process, etching process, polishing process, etc.). A subsystem may be characterized as a set of sensors and controllers associated with an operating parameter of the process chamber. The operating parameter may be temperature, flow rate, pressure, etc. In one example, a pressure subsystem may be characterized by one or more sensors that measure gas flow, chamber pressure, control valve angle, foreline (vacuum line between pumps) pressure, pump speed, etc. Thus, a process chamber may include a pressure subsystem, a flow rate subsystem, a temperature subsystem, etc.

[0013] A manufacturing system may collect system data for maintenance, analysis, and predictive techniques performed by one or more evaluation systems (e.g., machine learning models, inference engines, heuristic models, algorithms, physics-based engines, etc.). For example, each subsystem may experience degradation and deviation from optimal performance conditions; for example, a pressure subsystem may experience a pressure drop due to one or more of a pump issue, a control valve issue, etc. If these degradation conditions are not missed and repaired, defects may occur in the substrate, leading to inferior products, reduced manufacturing yields, and significant downtime and increased repair times.

[0014] In the current environment, many different evaluation systems may need to be deployed to collect data from a single manufacturing system. Each evaluation system may have different required attributes (e.g., the type of system data desired by the evaluation system) and different design parameters (e.g., written in a different programming language, using a different communication interface, etc.). In addition, some evaluation systems may require the deployment of custom software to and / or integration with the manufacturing system, which may result in the evaluation system dedicating computing resources to the evaluation system. Therefore, deploying or integrating an evaluation system into a manufacturing system can be a difficult and time-consuming process, consuming computing resources of the manufacturing system and thus causing production delays and problems.

[0015] Aspects and embodiments of the present disclosure address these and other shortcomings of existing technology by implementing a communication node for interfacing one or more evaluation systems with a manufacturing system. In particular, the communication node can query one or more evaluation systems for one or more attributes that each evaluation system needs to obtain from the manufacturing system. Attributes can include any recordable data stored in or generated by the manufacturing system. For example, attributes can include inputs used by process tools of the manufacturing system, outputs generated from the process tools (e.g., metrology data, sensor data, metadata, time data, etc.), control modes, monitored recipe setpoints (e.g., one or more processes in a recipe that trigger a process of data acquisition or recording by a tool server), monitored equipment constants, observable data about other tool subsystems being monitored, etc.

[0016] The communications node can then provide (e.g., create, define, etc.) the monitoring device. The monitoring device can be any software program capable of obtaining or intercepting data from the manufacturing system. In some embodiments, the monitoring device can include a device driver, an application programming interface (API), a software application, a virtual device (e.g., a virtual peripheral device), an image file, firmware, etc. Based on the received attributes, the communications node can configure the monitoring device using DCP to collect specific system data from the manufacturing system, such as sensor data, event data, constant data, and configuration data.

[0017] The communication node can then register the monitoring device with the manufacturing system. In some embodiments, the communication tool can register the monitoring device with the manufacturing system's front-end server software (FES) rather than with the manufacturing system's real-time control system (e.g., back-end server). The FES can be an extension of the manufacturing system's back-end server and can be used to communicate requests received from other clients (e.g., communication nodes). The monitoring device can be registered to collect only system data intended for the evaluation system, as indicated by the DCP. Using the monitoring device, the communication node can obtain or receive desired system data directly from the process tool. Furthermore, by registering the monitoring device with the FES, the communication node can connect to the process tool without requiring software changes to the process tool. The communication node can receive the collected data in real time or near real time and transmit the collected data to the appropriate evaluation system. The evaluation system can process the collected data and generate feedback that is transmitted to the process tool and / or an external system (e.g., client device, external server, etc.). The feedback data can include meaningful findings resulting from analyzing the data. For example, feedback data may include predictive data, diagnostic data (e.g., data indicative of problems associated with manufacturing equipment), corrective actions (recommended or actionable actions for adjusting recipe parameters, adjusting process chamber parameters, etc.), optimization data (data indicative of how to optimize one or more parameters or components of manufacturing equipment), efficiency data (e.g., how efficient a component of manufacturing equipment is), health data indicative of the health of a process chamber subsystem, warnings, etc.

[0018] In some embodiments, the communication nodes may communicate with the evaluation system and the manufacturing system using remote procedure calls (RPC), a communications protocol that can be used by one computer program (e.g., software) in one system to request services from another computer program in another system on a network without understanding the details of the network or the other computer programs.

[0019] The use of the monitoring device and DCP allows the communication node to receive targeted data from the manufacturing system. By receiving only the targeted data, the communication node can transmit only the desired data to the evaluation system and / or external system, rather than the entire collection of raw data generated by the manufacturing system. This allows the evaluation system and / or external system to immediately process the received data rather than first performing an extraction function to obtain the desired data from the collection of data. Furthermore, the DCP used by the monitoring device can be modified or updated by the communication node, allowing the communication node to dynamically change the type of data it obtains from the manufacturing system.

[0020] Accordingly, aspects of the present disclosure provide the technical advantage of enabling various evaluation systems to easily interface with manufacturing systems without requiring custom software deployment and / or back-end integration. Additionally, aspects of the present disclosure provide the technical advantage of significantly reducing the time it takes to acquire and process specific data and perform parameter optimization of a process recipe. The disclosed configuration allows the manufacturing system to receive corrective actions with relatively low latency. Aspects of the present disclosure further provide technical advantages, such as significantly reducing the time to detect problems or failures experienced by substrates during the manufacturing process, as well as improving energy consumption. The present disclosure also enables diagnostic data to be generated and corrective actions to be implemented, avoiding inconsistent, abnormal products, and unplanned user time or downtime.

[0021] FIG. 1 illustrates an exemplary computer system architecture 100 according to aspects of the present disclosure. In some embodiments, the computer system architecture 100 may be included as part of a manufacturing system for processing substrates, such as the manufacturing system 200 of FIG. 2 . The computer system architecture 100 includes a client device 120, a manufacturing tool 124, a metrology tool 128, and a data store 140. The manufacturing tool 124 may include a sensor 126 configured to capture data on substrates being processed in the manufacturing system. In some embodiments, the manufacturing tool 124 and the sensor 126 may be part of a sensor system including a sensor server (e.g., a field service server (FSS) at the manufacturing facility) and a sensor identifier reader (e.g., a front-opening unified pod (FOUP) radio frequency identification (RFID) reader for the sensor system). In some embodiments, the metrology tool 128 may be part of a metrology system including a metrology server (e.g., a metrology database, metrology folder, etc.) and a metrology identifier reader (e.g., a FOUP RFID reader for the metrology system).

[0022] The manufacturing tool 124 may operate according to a recipe or over a period of time to produce products such as electronic devices. The manufacturing tool 124 may include a process chamber. The manufacturing tool 124 may perform a process on a substrate (e.g., a wafer) in the process chamber. Examples of substrate processes include a deposition process that deposits one or more layers on a surface of the substrate and an etching process that forms a pattern on the surface of the substrate. The manufacturing tool 124 may perform each process according to a process recipe. A process recipe defines a specific series of operations to be performed on the substrate during the process and may include one or more settings associated with each operation. For example, a deposition process recipe may include a temperature setting for the process chamber, a pressure setting for the process chamber, flow rates for precursors of materials included in a film to be deposited on the substrate surface, etc.

[0023] In some embodiments, the manufacturing tools 124 include sensors 126 configured to generate data associated with substrates processed in the manufacturing system 100. For example, a process chamber may include one or more sensors configured to generate spectral or non-spectral data associated with a substrate before, during, and / or after a process (e.g., a deposition process) is performed on the substrate. In some embodiments, the spectral data generated by the sensors 126 may indicate the concentration of one or more materials deposited on the surface of the substrate. The sensors 126 configured to generate spectral data associated with the substrate may include reflectance sensors, ellipsometry sensors, thermal spectral sensors, capacitive sensors, etc. The sensors 126 configured to generate non-spectral data associated with the substrate may include temperature sensors, pressure sensors, flow sensors, voltage sensors, etc. Further details regarding the manufacturing tools 124 are provided with respect to FIG. 2.

[0024] In some embodiments, the sensors 126 provide sensor data (e.g., sensor values, characteristics, trace data) associated with the manufacturing equipment 124 (e.g., associated with the manufacturing equipment 124 producing a corresponding product, such as a wafer). The manufacturing equipment 124 can produce a product according to a recipe or by performing an operation over a period of time. Sensor data received over a period of time (e.g., corresponding to at least a portion of a recipe or operation) can be referred to as trace data (e.g., historical trace data, current trace data, etc.) received from different sensors 126 over time. The sensor data can include one or more values ​​of temperature (e.g., heater temperature), spacing (SP), pressure, high frequency radio frequency (HFRF), electrostatic chuck (ESC) voltage, current, material flow, power, voltage, etc. The sensor data can be associated with or indicative of hardware parameters, such as settings or components (e.g., size, type, etc.) of the manufacturing equipment 124, or manufacturing parameters, such as process parameters of the manufacturing equipment 124. The sensor data can be provided while the manufacturing equipment 124 is performing a manufacturing process (e.g., equipment readings as the product is processed). The sensor data may vary from board to board.

[0025] In some embodiments, the manufacturing tool 124 may include a controller 125. The controller 125 may include one or more components or subsystems configured to enable and / or control one or more processes of the manufacturing tool 124. For example, the subsystems may include a pressure subsystem, a flow subsystem, a temperature subsystem, etc., with each subsystem having one or more components. The components may include, for example, pressure pumps, vacuum, gas supply lines, plasma etchers, actuators, etc. In some embodiments, the controller 125 may be managed based on data from sensors 126, input from the control device 120, etc.

[0026] In some embodiments, manufacturing equipment 124 may include a tool server 127. Tool server 127 may include communication nodes 132 configured to interface with sensors 126 and controllers 125, and one or more evaluation systems 134. Evaluation system 134 may include any system capable of receiving input data and generating prediction data. For example, evaluation system 134 may include machine learning models, inference engines, heuristic models, algorithms, physics-based engines, etc. Further details regarding tool server 127 are provided with respect to FIG. 2.

[0027] The metrology tool 128 can provide metrology data associated with substrates processed by the fabrication tool 124. The metrology data can include values ​​of film property data (e.g., wafer-space film properties), dimensions (e.g., thickness, height, etc.), dielectric constant, dopant concentration, density, defects, etc. In some embodiments, the metrology data can further include values ​​of one or more surface profile property data (e.g., etch rate, etch rate uniformity, critical dimensions of one or more features included in the surface of the substrate, critical dimension uniformity across the surface of the substrate, edge placement error, etc.). The metrology data can be of finished or semi-finished products. The metrology data can vary from substrate to substrate. The metrology data can be generated using, for example, reflectometry techniques, ellipsometry techniques, TEM techniques, etc.

[0028] The metrology tool 128 may be included as part of the fabrication tool 124. For example, the metrology tool 128 may be included within or coupled to a process chamber and configured to generate metrology data for the substrate before, during, and / or after a process (e.g., a deposition process, an etch process, etc.) while the substrate remains in the process chamber. In some examples, the metrology tool 128 may be referred to as an in-situ metrology tool. In other examples, the metrology tool 128 may be coupled to another station of the fabrication tool 124. For example, the metrology tool may be coupled to a transfer chamber, such as the transfer chamber 210 in FIG. 2 , a load lock, such as the load lock 220, or a factory interface, such as the factory interface 206.

[0029] The client device 120 may include a computing device such as a personal computer (PC), a laptop, a mobile phone, a smartphone, a tablet computer, a netbook computer, a network-connected television ("smart TV"), a network-connected media player (e.g., a Blu-ray player), a set-top box, an over-the-top (OTT) streaming device, an operator box, etc. In some embodiments, metrology data may be received from the client device 120. The client device 120 may display a graphical user interface (GUI) through which a user may provide as input metrology measurements of substrates processed in the manufacturing system. The client device 120 may include a corrective action component 122. The corrective action component 122 may receive user input of instructions associated with the manufacturing equipment 124 (e.g., via a graphical user interface (GUI) displayed via the client device 120). In some embodiments, the corrective action component 122 sends instructions to a prediction system 710 (as seen in FIG. 7 ), receives output (e.g., prediction data) from the prediction system 710, determines corrective actions based on the output, and causes the corrective actions to be implemented. In some embodiments, the corrective action component 122 receives corrective action instructions from the predictive system 710 and causes the corrective action to be implemented. Each client device 120 may include an operating system that enables a user to one or more of create, view, or edit data (e.g., instructions associated with a manufacturing equipment 124, corrective actions associated with a manufacturing equipment 124, etc.).

[0030] The data store 140 can be a 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. The data store 140 can include multiple storage components (e.g., multiple drives or multiple databases) that can span multiple computing devices (e.g., multiple server computers). The data store 140 can store data associated with the processing of substrates on the manufacturing tool 124. For example, the data store 140 can store data (referred to as process data) collected by the sensors 126 of the manufacturing tool 124 before, during, or after the substrate process. The process data can refer to historical process data (e.g., process data generated for a previous substrate processed on the manufacturing system) and / or current process data (e.g., process data generated for a current substrate processed on the manufacturing system). The data store can also store spectral or non-spectral data associated with some of the substrates processed on the manufacturing tool 124. The spectral data can include historical spectral data and / or current spectral data.

[0031] The data store 140 may also store context data associated with one or more substrates processed in the manufacturing system. The context data may include a recipe name, a recipe step number, a preventative maintenance indicator, an operator, etc. The context data may refer to historical context data (e.g., context data associated with a previous process performed on a previous substrate) and / or current process data (e.g., context data associated with a current or future process performed on a previous substrate). The context data may further include identifying sensors associated with a particular subsystem of a process chamber.

[0032] The data store 140 can also store task data. The task data can include one or more sets of operations to be performed on a substrate during a deposition process and can include one or more settings associated with each operation. For example, task data for a deposition process can include a temperature setting for a process chamber, a pressure setting for the process chamber, a flow rate setting for a precursor of a material of a film to be deposited on the substrate, etc. In another example, the task data can include controlling pressure at a pressure point defined relative to a flow rate value. The task data can refer to past task data (e.g., task data associated with a previous process performed on a previous substrate) and / or current task data (e.g., task data associated with a current or future process to be performed on a substrate).

[0033] In some embodiments, the data store 140 can store an expected profile, a thickness profile, and a correction profile. The expected profile can include one or more data points associated with a desired film profile expected to be produced by a particular process recipe. In some embodiments, the expected profile can include a desired thickness of the film. The thickness profile can include one or more data points associated with a current film profile produced by the fabrication tool 124. The thickness profile can be measured using the metrology tool 128. The correction profile can include one or more adjustments or offsets applied to parameters of the process chamber or process recipe. For example, the correction profile can include adjustments to the temperature setting of the process chamber, the pressure setting of the process chamber, the flow rate setting of a precursor of a material included in the film deposited on the substrate surface, the power supplied to the process chamber, the ratio of two or more settings, etc. The correction profile can be generated by comparing the expected profile (e.g., the thickness profile expected to be produced by the process recipe) and using a library of known fault patterns and / or algorithms to determine adjustments to apply to parameters of the process recipe to achieve the expected profile. The correction profile can be generated as output from the characterization system 134. The correction profile can be applied to steps associated with a deposition process, an etch process, etc.

[0034] In some embodiments, data store 140 can be configured to store data that is inaccessible to users of the manufacturing system. For example, process data, spectral data, contextual data, etc. acquired for substrates being processed in the manufacturing system are inaccessible to users (e.g., operators) of the manufacturing system. In some embodiments, all data stored in data store 140 can be inaccessible to users of the manufacturing system. In other or similar embodiments, some of the data stored in data store 140 can be inaccessible to users, while other portions of the data stored in data store 140 can be accessible to users. In some embodiments, one or more portions of the data stored in data store 140 can be encrypted using an encryption mechanism unknown to the users (e.g., the data is encrypted using a private encryption key). In other or similar embodiments, data store 140 can include multiple data stores, where data that is inaccessible to users is stored in one or more first data stores and data that is accessible to users is stored in one or more second data stores.

[0035] In some embodiments, the data store 140 may be configured to store data associated with known failure patterns. A failure pattern may be one or more values ​​(e.g., a vector, a scalar, etc.) associated with one or more problems or faults associated with a process chamber subsystem. In some embodiments, a failure pattern may be associated with a corrective action. For example, a failure pattern may include a parameter adjustment step to correct the problem or fault indicated by the failure pattern. For example, a predictive system may compare a determined failure pattern to a library of known failure patterns to determine the type of failure that occurred in the subsystem, the cause of the failure, a recommended corrective action to correct the failure, etc.

[0036] The client devices 120, the manufacturing equipment 124, the sensors 126, the metrology equipment 128, the tool server 127, and the data store 140 can be coupled to one another via a network 130. In some embodiments, the network 130 is a public network that provides the client devices 120 with access to the manufacturing equipment 124, the data store 140, and other publicly available computing devices. In some embodiments, the network 130 is a private network that provides the client devices 120 with access to the manufacturing equipment 124, the metrology equipment 128, the data store 140, and other privately available computing devices. The network 130 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), routers, hubs, switches, server computers, cloud computing networks, and / or combinations thereof.

[0037] In embodiments, a "user" may be represented as a single individual. However, other embodiments of the present disclosure encompass a "user" being an entity controlled by multiple users and / or automated sources. For example, a collection of individual users federated as a group of administrators may be considered a "user."

[0038] 2 is a top schematic view of an exemplary manufacturing system 200 according to an embodiment of the present disclosure. The manufacturing system 200 is capable of performing one or more processes on a substrate 202. The substrate 202 can be any suitably rigid, planar article of fixed dimensions, such as, for example, a silicon-containing disk or wafer, a patterned wafer, a glass plate, or the like, suitable for manufacturing electronic devices or circuit components.

[0039] The manufacturing system 200 may include a process tool 204 and a factory interface 206 coupled to the process tool 204. The process tool 204 may include a housing 208 having a transfer chamber 210 therein. The transfer chamber 210 may include one or more process chambers (also referred to as processing chambers) 214, 216, and 218 arranged around and coupled to the transfer chamber 210. The process chambers 214, 216, and 218 may be coupled to the transfer chamber 210 through respective ports, such as slit valves. The transfer chamber 210 may also include a transfer chamber robot 212 configured to transfer substrates 202 between the process chambers 214, 216, and 218, load locks 220, and the like. The transfer chamber robot 212 may include one or more arms, each including one or more end effectors at the end of each arm. The end effectors may be configured to handle specific objects, such as wafers, sensor disks, and sensor tools.

[0040] The process chambers 214, 216, 218 can be adapted to perform any number of processes on the substrate 202. The same or different substrate processes can be performed in each processing chamber 214, 216, 218. The substrate processes can include atomic layer deposition (ALD), physical vapor deposition (PVD), chemical vapor deposition (CVD), etching, annealing, curing, pre-cleaning, metal or metal oxide removal, etc. Other processes can be performed on the substrate in the processing chamber. The process chambers 214, 216, 218 can each include one or more sensors configured to capture data on the substrate 202 before, after, or during substrate processing. For example, the one or more sensors can be configured to capture spectral and / or non-spectral data about a portion of the substrate 202 during substrate processing. In other or similar embodiments, the one or more sensors can be configured to capture data associated with the environment within the process chambers 214, 216, 218 before, after, or during substrate processing. For example, the one or more sensors may be configured to capture data associated with the temperature, pressure, gas concentrations, etc. of the environment within the process chambers 214, 216, 218 during substrate processing. In some embodiments, the process chambers 214, 216, 218 may include a metrology device 240.

[0041] A load lock 220 may also be coupled to the housing 208 and the transfer chamber 210. The load lock 220 may be configured to interface with and be coupled to the transfer chamber 210 on one side and to the factory interface 206. The load lock 220 may have an environmentally controlled atmosphere that may be varied from a vacuum environment (where substrates may be transferred to and from the transfer chamber 210) to an inert gas environment at or near atmospheric pressure (where substrates may be transferred to and from the factory interface 206). The factory interface 206 may be any suitable enclosure, such as, for example, a front-end equipment module (EFEM). The factory interface 206 may be configured to receive substrates 202 from substrate carriers 222 (e.g., front-opening unified pods (FOUPs)) docked to various load ports 224 of the factory interface 206. A factory interface robot 226 (shown in dotted lines) may be configured to transfer substrates 202 between the carriers (also called containers) 222 and the load lock 220. Carrier 222 may be a substrate storage carrier or a replacement part storage carrier.

[0042] Fabrication system 200 may also be connected to client devices (not shown) configured to provide information about fabrication system 200 to a user (e.g., an operator). In some embodiments, the client devices may provide information to a user of fabrication system 200 via one or more graphical user interfaces (GUIs). For example, the client devices may provide information via the GUIs regarding a target thickness profile of a film to be deposited on the surface of substrate 202 during a deposition process performed in process chambers 214, 216, 218. The client devices may also provide information regarding modifications to the process recipe given respective sets of deposition settings that are predicted to correspond to the target profile, according to embodiments described herein.

[0043] The manufacturing system 200 may also include a system controller 228. The system controller 228 may be and / or include a computing device such as a personal computer, a server computer, a programmable logic controller (PLC), a microcontroller, etc. The system controller 228 may include one or more processing devices, which may be a general-purpose processing device such as a microprocessor, a central processing unit, etc. More specifically, the processing device may be a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, or a processor implementing other instruction sets or combinations of instruction sets. The processing device 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, etc. The system controller 228 may include a data storage device (e.g., one or more disk drives and / or solid-state drives), a main memory, a static memory, a network interface, and / or other components. The system controller 228 may execute instructions to perform any one or more of the methods and / or embodiments described herein. In some embodiments, the system controller 228 may execute instructions to perform one or more operations in the manufacturing system 200 according to a process recipe. The instructions may be stored in a computer-readable storage medium, which may include (during execution of the instructions) a main memory, a static memory, a secondary storage device, and / or a processor.

[0044] The system controller 228 may receive data from sensors contained on or within various portions of the manufacturing system 200 (e.g., processing chambers 214, 216, 218, transfer chamber 210, load lock 220, etc.). The system controller 228 may interface with controllers contained on or within various portions of the manufacturing system 200 (e.g., processing chambers 214, 216, 218, transfer chamber 210, load lock 220, etc.). In some embodiments, the data received by the system controller 228 may include spectral and / or non-spectral data about a portion of the substrate 202. In other or similar embodiments, the data received by the system controller 228 may include data associated with processing the substrate 202 in the processing chambers 214, 216, 218, as previously described. For purposes of this description, the system controller 228 will be described as receiving data from sensors contained within the process chambers 214, 216, 218. However, the system controller 228 can receive data from any portion of the manufacturing system 200 and use the data received from that portion in accordance with embodiments described herein. In an illustrative example, the system controller 228 can receive data from one or more sensors in the process chambers 214, 216, 218 before, after, or during substrate processing in the process chambers 214, 216, 218. The data received from sensors in various portions of the manufacturing system 200 can be stored in a data store 250. The data store 250 can be included as a component within the system controller 228 or can be a component separate from the system controller 228. In some embodiments, the data store 250 can be the data store 140 described with respect to FIG. 1 .

[0045] Manufacturing system 200 may also include a tool server 227. Tool server 227 may include one or more computing devices, such as a rack-mount server, a router computer, a server computer, a personal computer, a mainframe computer, a laptop computer, a tablet computer, a desktop computer, a GPU, an ASIC, etc. Tool server 227 may include a data storage device (e.g., one or more disk drives and / or solid-state drives), a main memory, a static memory, a network interface, and / or other components. Tool server 227 may execute instructions to perform any one or more of the methods and / or embodiments described herein. In some embodiments, tool server 227 may execute instructions to perform one or more data collection operations in manufacturing system 200 pursuant to a request from the evaluation system. The instructions may be stored in a computer-readable storage medium, which may include a main memory, a static memory, a secondary storage device, and / or a processing device (during execution of the instructions). In some embodiments, tool server 227 may be similar to or the same as tool server 127.

[0046] In some embodiments, tool server 227 can store one or more rating systems. The rating systems can include machine learning models (e.g., model 790 and / or prediction server 712 in FIG. 7), inference engines, heuristic models, algorithms, physics-based models, etc. In some embodiments, one or more rating systems can be trained and / or stored on tool server 227. In some embodiments, one or more rating systems can be trained and / or stored on an external server (not shown) in communication with server 227.

[0047] The tool server 227 may include a communication node 232 configured to interface one or more evaluation systems 234 with the process tools 204. In particular, the communication node 232 may be configured to bridge data from the process tools 204 (e.g., from a tool data bus) to the evaluation systems 234 with low latency (e.g., on the order of 1 millisecond). In some embodiments, the communication node 232 may communicate with the evaluation systems 234 and the process tools 204 using remote procedure calls (RPCs).

[0048] RPC is a communications protocol that one program can use to request services from a program on another computer on a network, without understanding the details of the network or the other computer programs. In particular, RPC is used to invoke other processes on remote systems as if they were on a local system. In some embodiments, RPC can include GRPC (Google® Remote Procedure Call), JSON-RPC (JavaScript Object Notation RPC), XML-RPC (Extensible Markup Language RPC), etc. In some embodiments, communication node 232 can communicate with reputation system 234 using other software communications protocols (e.g., remote method invocation (RMI), inter-process communication (IPC), etc.).

[0049] In some embodiments, the communication node 232 may receive from the evaluation system 234 one or more desired attributes that the evaluation system desires for the process tool 204. The attributes may include any recordable data desired by the evaluation system, such as, but not limited to, inputs used by the process tool, outputs generated from the process tool (e.g., metrology data, sensor data, metadata, time data, etc.), control modes, monitored recipe set points (e.g., one or more processes in the recipe that trigger a process of data acquisition or recording by the communication node 232), monitored equipment constants, observable data about other tool subsystems that are monitored, etc.

[0050] The communications node 232 can generate a monitoring device, which is any software program capable of acquiring data from the process tool 204. In some embodiments, the monitoring device can include a device driver, an application programming interface (API), a software application, a virtual device (e.g., a virtual peripheral device), an image file, firmware, etc. The communications node 232 can configure the monitoring device to acquire data from the process tool 204 based on the received attributes. In some embodiments, the monitoring device can be configured to acquire external sensor data from one or more sensors interfaced with the process tool. The external sensors can be operated by an evaluation system, by the monitoring device, or by any other system independent of the system controller 228.

[0051] In some embodiments, the communication node 232 can register the monitoring device with the front-end server software (FES) of the process tool rather than with the process tool's real-time control system (e.g., back-end). The monitoring device can be registered to collect only data intended for the characterization system, as indicated by the DCP. Using the monitoring device, the communication node can obtain or receive desired data directly from the process tool. Furthermore, by registering the monitoring device with the FES, the communication node can connect to the process tool without modifying the process tool's software.

[0052] In some embodiments, the communication node 232 may include multiple components for bridging data between the process tool 204 and the characterization system. In one such embodiment, the tool server 227 may include an edge node and a gateway node. The edge node may perform query functions, data collection functions, and monitoring device-related functions, as described above. The gateway node may perform multiplexing functions between the edge node and multiple characterization systems. In particular, the gateway node may facilitate managing the complexity of multiple process chambers running different characterization algorithms. Multiplexing may be a method in which multiple signals are combined into one signal over a shared medium (e.g., a communication channel).

[0053] FIG. 3 is a block diagram 300 illustrating an example tool server 305 according to aspects of the present disclosure. The tool server 305 may include an edge node 310, a gateway node 315, and one or more rating systems, such as one or more machine learning models 320, one or more inference engines 325, and one or more physics-based engines 330. The tool server 305 may communicate with the process tool 204, for example, via a process tool bus 340. In some embodiments, the edge node 310 may request the gateway node 315 to query each rating system (e.g., the machine learning models 320, the inference engines 325, the physics-based engines 330, etc.) for attributes. The gateway node 315 may receive attributes from each rating system and transmit the attributes to the edge node 310. In some embodiments, each set of attributes for each rating system may include one or more tags (e.g., metadata, headers, etc.) indicating the corresponding rating system. The tags may be used to identify which rating system data from the process tool should be sent to. The edge node 310 can then generate a monitoring device for each evaluation system based on the corresponding received attribute set and register each monitoring device with the process tool bus 340. Each monitoring device can include a DCP (Data Collection Plan) according to the respective attributes. Each monitoring device can be maintained by and / or reside on the edge node.

[0054] The process tool bus 340 may be a system bus connecting components of a process tool and / or a manufacturing system. In some embodiments, the process tool bus 340 may communicate with one or more sensors (e.g., sensors 126), data systems, control systems (e.g., system controller 228), system controllers, etc. During execution of a strategy by a process tool, each monitoring device may acquire data indicated by a respective DCP from the process tool 204, and the edge node 310 may then transmit the data to the gateway node 315. The gateway node 315 may then sort the data and transmit the corresponding data to the respective evaluation systems. For example, according to a DCP generated for the machine learning model 320, the monitoring devices may receive corresponding data (e.g., system data) from the process tool bus 340, and the edge node 310 may transmit the corresponding data to the gateway node 315. The gateway node 315 may determine, for example, using tags, which evaluation system should receive the data and forward the data to the appropriate evaluation system (e.g., machine learning model 320).

[0055] In some embodiments, the evaluation system can process the received system data and generate feedback data. The feedback data can include meaningful findings resulting from analyzing the data. For example, the feedback data can include predictive data, diagnostic data (e.g., data indicating problems associated with manufacturing equipment), corrective actions, optimization data (e.g., data indicating how to optimize one or more parameters or components of manufacturing equipment), efficiency data (e.g., how efficient a component of manufacturing equipment is), health data indicating the health of a subsystem of the process chamber, etc. The health of a subsystem can be characterized as the current behavior (current sensor value) of the subsystem compared to the expected behavior (expected sensor value) of the subsystem. A subsystem can be characterized as a set of attributes related to the operating parameters of the process chamber, such as temperature, flow rate, pressure, etc.

[0056] The feedback data may then be transmitted to the process tool via the gateway node 315 and / or the edge node 310. In some embodiments, the process tool 204 may perform one or more actions based on the feedback data. For example, the process tool 204 may adjust recipe parameters, adjust process chamber parameters, generate an alert, etc. based on the feedback. In some embodiments, the tool server 305 may transmit the feedback data to an external system. In some embodiments, the external system includes the client device 120, an external server, an external computer system, etc.

[0057] In some embodiments, each component of the block diagram 300 can communicate with other components using RPC messages. For example, the evaluation system can communicate with the gateway node 315 (e.g., send attribute data, send feedback data, receive sensor data, etc.) using RPC messages. In another example, the gateway node 315 can communicate with the edge node 310 using RPC messages. In yet another example, the processing tool 204 can communicate with the edge node 310 using RPC messages. In other embodiments, the evaluation system can send feedback data using wireless communication or other means of wired communication.

[0058] 4 is an interaction diagram 400 illustrating processing data received from a monitoring device to generate and send feedback to a process tool according to an embodiment of the present disclosure. Interaction diagram 400 includes blocks that may be understood to be similar to blocks of a flow chart of a method. Thus, when performed as a method, the blocks (blocks that perform operations) illustrated in interaction diagram 400, the method, and each of its individual functions, routines, subroutines, or operations may be executed by one or more processors of a computing device that executes the method.

[0059] The blocks illustrated in diagram 400 may be performed by processing logic, which may include hardware (circuitry, dedicated logic, etc.), software (such as running on a general-purpose computer system or a dedicated machine), firmware, or some combination thereof. In one implementation, the blocks illustrated in diagram 400 may be performed by a computer system, such as computer system architecture 100 of FIG. 1 or manufacturing system 200 of FIG. 2. In other or similar implementations, one or more operations of the blocks illustrated in diagram 400 may be performed by one or more other machines not shown in the diagram. In some aspects, one or more operations of the blocks illustrated in diagram 400 may be performed by system controller 228, communication node 232, and evaluation system 234 of FIG. 2.

[0060] In operation 410, the communication node 232 may query the rating system 234 for one or more attributes. In one example, the communication node 232 may send a request to one or more rating systems (e.g., rating system 234) for a list of attributes that each rating system desires for the process tool (or manufacturing system).

[0061] In operation 415, the evaluation system 234 may send a list of attributes to the communication node 232. The attributes may include inputs used by the process tool, outputs generated from the process tool (e.g., metrology data, sensor data, metadata, time data, etc.), control modes, monitored recipe set points, monitored equipment constants, observable data about other tool subsystems monitored, etc.

[0062] In operation 420, the communications node 220 can create or otherwise provide a monitoring device. The monitoring device can be any software program capable of acquiring or intercepting data from a process tool. The communications node can then configure the monitoring device using the DCP to collect specific sensor data, event data, constant data, and settings data from the process tool based on the received attributes. The monitoring device can be executed from and maintained by the communications node 232.

[0063] In operation 425, the communications node 232 may register the monitoring device with the system controller 228. For example, the communications node 232 may register the monitoring device with the FES of the system controller 228. In some embodiments, once registered, the monitoring device first transmits pre-execution data to the communications node. The pre-execution data may include configuration parameters, tool data, or any other data required by the DCP that may be transmitted before execution of the strategy.

[0064] In operation 430, the system controller 228 may execute a process recipe. The process recipe defines a specific set of operations to be performed on the substrate during processing and may include one or more settings associated with each operation. For example, a deposition process recipe may include a process chamber temperature setting, a process chamber pressure setting, a flow rate setting for a precursor of a material included in a film deposited on the substrate surface, etc. In some embodiments, in response to executing the process recipe, the communication node 232 may send an indication to the evaluation system 234 that execution has begun. The evaluation system 234 may then execute one or more sensor drivers to receive data from the monitoring devices.

[0065] In operation 435, a monitoring device (registered with system controller 228) can acquire and collect manufacturing data as indicated by the DCP. Because the manufacturing data is generated by the process tool, the monitoring device can acquire the manufacturing data from, for example, a process tool bus. The monitoring device can monitor a particular type of data based on the DCP. In some embodiments, the data can be transmitted in response to a trigger. For example, the monitoring device can monitor the process tool bus for one or more steps of a specified process recipe, starting with a specified process chamber. When one or more steps are detected, the monitoring device (via communication node 232) can use a signal to trigger evaluation system 234 to transmit the data defined by the DCP. The trigger can be defined by a list of attributes and / or the DCP. The trigger can include a trigger function, such as a special type of stored procedure that is automatically executed when an event occurs. In another example, a trigger can be assigned to a process recipe (e.g., installed or set up in system controller 228), and the trigger indicates one or more process recipe steps for initiating the monitoring device. In response to a trigger being activated (e.g., a process recipe set being initiated by the system controller 228) or in response to receiving an instruction associated with the output of a trigger, a signal may be sent from the system controller 228 to the communications node 232 instructing the monitoring device to activate and / or initiate a data collection operation. In some embodiments, multiple triggers may be generated by the monitoring device.

[0066] In operation 440, the communication node 232 may transmit the received data to the rating system 234. Note that only one rating system is discussed with respect to diagram 400. However, one or more of the operations of the blocks shown in diagram 400 may be performed using multiple rating systems, as described with respect to FIG.

[0067] In operation 445, the evaluation system 234 can process the received data to generate feedback data (e.g., prediction data, corrective actions, etc.). For example, the processing logic can apply a machine learning model to the input data. The machine learning model can then generate output data (e.g., one or more output values) indicating the prediction data and / or the type of corrective action to be taken to correct the suspected problem or fault indicated by the prediction data. The corrective action can modify and / or update one or more parameters of the process recipe or process chamber. For example, the correction profile can include adjustments to a temperature setting of the process chamber, a pressure setting of the process chamber, a flow rate setting for a precursor of a material included in a film deposited on the substrate surface, power supplied to the process chamber, a ratio of two or more settings, etc.

[0068] In operation 450, the evaluation system 234 may transmit the feedback data to the communication node 232. In operation 455, the evaluation system 234 may transmit the feedback data to the system controller 228. In some embodiments, the system controller 228 may implement (or suggest) a corrective action referenced by the feedback data. In some embodiments, the corrective action may be determined based on data obtained from a fault library. In some embodiments, the corrective action may include generating a warning or indication of the determined problem. In some embodiments, the corrective action may include processing logic adjusting one or more parameters of the deposition process recipe, the etch process recipe, or any other process recipe (e.g., a temperature setting of a process chamber, a pressure setting of a process chamber, a flow rate setting of a precursor of a material included in the film deposited on the substrate surface, etc.) based on the desired characteristics of the film. In some embodiments, the process recipe may be adjusted before, during (e.g., in real time), or after completion of the process recipe.

[0069] 5 is an interaction diagram 500 illustrating processing data received from a monitoring device to generate and transmit feedback to a client device according to an embodiment of the present disclosure. Interaction diagram 500 includes blocks that may be understood to be similar to blocks of a flow chart of a method. Thus, when performed as a method, the blocks (blocks that perform operations) illustrated in interaction diagram 500, the method, and each of its individual functions, routines, subroutines, or operations may be executed by one or more processors of a computing device that executes the method.

[0070] The blocks illustrated in diagram 500 may be performed by processing logic, which may include hardware (circuitry, dedicated logic, etc.), software (such as running on a general-purpose computer system or a dedicated machine), firmware, or some combination thereof. In one implementation, the blocks illustrated in diagram 500 may be performed by a computer system, such as computer system architecture 100 of FIG. 1 or manufacturing system 200 of FIG. 2. In other or similar implementations, one or more operations of the blocks illustrated in diagram 500 may be performed by one or more other machines not shown in the diagram. In some aspects, one or more operations of the blocks illustrated in diagram 500 may be performed by system controller 228, communication node 232, and evaluation system 234 of FIG. 2. In some embodiments, operations 510-540 of FIG. 5 may be similar to operations 410-440 of FIG. 4.

[0071] In operation 510, the communication node 232 may query the rating system 234 for one or more attributes. In one example, the communication node 232 may send a request to one or more rating systems (e.g., rating system 234) for a list of attributes that each rating system desires for the process tool (or manufacturing system).

[0072] In block 515, the evaluation system 234 may send a list of attributes to the communication node 232. The attributes may include inputs used by the process tool, outputs generated from the process tool (e.g., metrology data, sensor data, metadata, time data, etc.), control modes, monitored recipe set points, monitored equipment constants, observable data about other tool subsystems monitored, etc.

[0073] In block 520, the communications node 220 can create or otherwise provide a monitoring device. The monitoring device can be any software program that can acquire or intercept data from a process tool. The communications node can then configure the monitoring device using the DCP to collect specific sensor data, event data, constant data, and configuration data from the process tool based on the received attributes.

[0074] At block 525, the communications node 232 may register the monitoring device with the system controller 228. For example, the communications node 232 may register the monitoring device with the FES of the system controller 228. In some embodiments, once registered, the monitoring device first transmits pre-execution data to the communications node. The pre-execution data may include configuration parameters, tool data, or any other data required by the DCP that may be transmitted prior to execution of the strategy.

[0075] At block 530, the system controller 228 may execute a process recipe. The process recipe defines a specific set of operations to be performed on the substrate during processing and may include one or more settings associated with each operation. For example, a deposition process recipe may include a process chamber temperature setting, a process chamber pressure setting, a flow rate setting for a precursor of a material included in a film deposited on the substrate surface, etc. In some embodiments, in response to executing the process recipe, the communication node 232 may send an indication to the evaluation system 234 that execution has begun. The evaluation system 234 may then execute one or more sensor drivers to receive data from the monitoring devices.

[0076] In block 535, the monitoring device (registered with the system controller 228) may transmit data to the communication node 232 associated with the DCP. As data is generated by the process tool, the monitoring device may retrieve the data, for example, from the process tool bus. The monitoring device may listen for specific types of data based on the DCP. In some embodiments, the data may be transmitted in response to a trigger. For example, the monitoring device may monitor the process tool bus for one or more steps of a specified process recipe starting from a specified process chamber. Once one or more steps are detected, the monitoring device (via the communication node 232) may use a signal to trigger the evaluation system 234 to transmit data defined by the DCP. The trigger may be defined by a list of attributes and / or the DCP.

[0077] In block 540, the communication node 232 may transmit the received data to the rating system 234. Note that only one rating system is discussed with respect to diagram 400. However, one or more of the operations of the blocks shown in diagram 400 may be performed using multiple rating systems, as described with respect to FIG.

[0078] At block 545, the evaluation system 234 may process the received data to generate feedback data. For example, the processing logic may apply a machine learning model or a physics-based engine to the input data. The machine learning model or physics-based engine may then generate output data (e.g., one or more output values) indicative of predictive, diagnostic, optimization, efficiency, and / or health data associated with the manufacturing equipment (e.g., manufacturing equipment 126). In another embodiment, the feedback data may include recommended corrective actions indicating actions to be taken to correct a suspected problem or failure.

[0079] At block 550, the evaluation system 234 may send the feedback to the client device 120. At block 555, the client device 120 may perform a function using and / or based on the feedback data. For example, the client device 120 may display the feedback data (e.g., display diagnostic data, display recommended corrective actions, etc.), execute the feedback data (e.g., execute corrective actions, update process strategies, etc.), or perform any other function associated with the feedback data. In some embodiments, the client device may perform the function using the corrective action component 122.

[0080] 6 is a flow diagram of a method 600 for producing a monitoring device according to an embodiment of the present disclosure. Method 600 is performed by processing logic, which may include hardware (circuitry, dedicated logic, etc.), software (such as running on a general-purpose computer system or a dedicated machine), firmware, or some combination thereof. In one embodiment, method 600 may be performed by a computer system, such as computer system architecture 100 of FIG. 1. In other or similar embodiments, one or more operations of method 600 may be performed by one or more other machines not shown in the figure. In some embodiments, one or more operations of method 600 may be performed by manufacturing equipment 124 and / or tool server 227.

[0081] At operation 610, processing logic queries one or more rating systems for one or more attributes. For example, processing logic may send a request to one or more rating systems for a list of attributes that each rating system desires for the process tool. Each set of attributes for each rating system may include one or more tags (e.g., metadata, headers, etc.) that indicate the corresponding rating system.

[0082] In operation 620, processing logic provides a monitoring device based on one or more attributes. The monitoring device may be any software program capable of acquiring or intercepting data from the process tool. The processing logic may configure the monitoring device with the DCP to collect specific sensor data, event data, alert data, and configuration data from the process tool. The DCP may be based on the received attributes.

[0083] In operation 630, processing logic registers the monitoring device with the system controller of the process tool. For example, processing logic may install the monitoring device in the FES of the manufacturing system and / or the process tool. The monitoring device may listen for specific types of data based on the DCP.

[0084] In operation 640, processing logic may receive data from a monitoring device. For example, the monitoring device may monitor process tool bus-specific types of data associated with a DCP, such as for a particular trigger (e.g., the start of a process recipe step). Data corresponding to the trigger and / or the DCP may be received by processing logic.

[0085] At operation 650, processing logic may transmit the received data to a rating system, which may then process the received data to generate feedback data, such as predictive data and / or corrective actions.

[0086] 7 illustrates an exemplary prediction system 700 according to aspects of the present disclosure. Prediction system 700 may be used to generate predictive data, provide model adaptation, use a knowledge base, etc. Prediction server 712 may be part of prediction system 710 and may be an embodiment of a rating system (e.g., rating system 234). Prediction system 710 may further include server machines 770 and 780.

[0087] Prediction server 712, server machine 770, and server machine 780 may each include one or more computing devices such as a rack-mounted server, a router computer, a server computer, a personal computer, a mainframe computer, a laptop computer, a tablet computer, a desktop computer, a graphics processing unit (GPU), an accelerator application-specific integrated circuit (ASIC) (e.g., a tensor processing unit (TPU)), etc.

[0088] The server machine 770 includes a training set generator 772 that can generate training datasets (e.g., a set of data inputs and a set of target outputs) for training, validating, and / or testing the machine learning model 790. The machine learning model 790 can be any algorithmic model capable of learning from data. In some embodiments, the dataset generator 772 can divide the training data into a training set, a validation set, and a test set. In some embodiments, the prediction system 710 generates multiple training datasets.

[0089] The server machine 780 may include a training engine 782, a validation engine 784, a selection engine 785, and / or a test engine 786. An engine may refer to hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, a processing unit, etc.), software (e.g., instructions executing on a processing unit, a general-purpose computer system, or a dedicated machine), firmware, microcode, or a combination thereof. The training engine 782 may train one or more machine learning models 790. A machine learning model 790 may refer to a model artifact created by the training engine 782 using training data (also referred to herein as a training set) that includes training inputs and corresponding target outputs (correct answers for each training input). The training engine 782 may find patterns in the training data that map the training inputs to the target outputs (predicted answers) and provide a machine learning model 790 that captures these patterns. The machine learning model 790 may use one or more of statistical modeling, support vector machines (SVM), radial basis functions (RBF), clustering, supervised machine learning, semi-supervised machine learning, unsupervised machine learning, k-nearest neighbor algorithms (k-NN), linear regression, random forests, neural networks (e.g., artificial neural networks), and the like.

[0090] One type of machine learning model that can be used to perform some or all of the above tasks is an artificial neural network, such as a deep neural network. Artificial neural networks generally include a feature representation component with a classifier or recurrent layer that maps features to a desired output space. Convolutional neural networks (CNNs), for example, host multiple layers of convolutional filters. Pooling may be performed and nonlinearities may be addressed in lower layers, on top of which a multilayer perceptron is typically added to map the top-layer features extracted by the convolutional layers to a decision (e.g., classification output). Deep learning is a class of machine learning algorithms that uses a cascade of multiple layers of nonlinear processing units for feature extraction and transformation. Each successive layer uses the output from the previous layer as input. Deep neural networks can be trained in a supervised (e.g., classification) and / or unsupervised (e.g., pattern analysis) manner. Deep neural networks include a hierarchy of layers, with different layers learning different levels of representation corresponding to different levels of abstraction. In deep learning, each level learns to transform its input data into a slightly more abstract and complex representation. In plasma process tuning, for example, the raw input can be a process result profile (e.g., a thickness profile showing one or more thickness values ​​across the surface of a substrate), a second layer can comprise feature data associated with the state of one or more zones of a plasma processing system's control elements (e.g., zone orientation, plasma exposure time, etc.), and a third layer can include an initiation strategy (e.g., a strategy used as a starting point to determine an updated process strategy for processing the substrate to produce a process result that meets a threshold criterion). Notably, the deep learning process can teach itself which features to optimally place at which level. The "deep" in "deep learning" refers to the number of layers through which data is transformed. More precisely, deep learning systems have a significant confidence assignment path (CAP) depth. A CAP is a chain of transformations from input to output.CAP describes the potential causal relationships between inputs and outputs. For feedforward neural networks, the depth of the CAP can be the depth of the network, which can be the number of hidden layers + 1. For recurrent neural networks, where signals can propagate through layers more than once, the depth of the CAP is potentially unlimited.

[0091] In one embodiment, the one or more machine learning models are recurrent neural networks (RNNs). RNNs are a type of neural network that includes memory, allowing the neural network to capture temporal dependencies. RNNs can learn input-output mappings that depend on both current and past inputs. RNNs account for past and future flow measurements and make predictions based on this continuous measurement information. RNNs can be trained using a training data set and generate a fixed number of outputs (e.g., determining a set of substrate processing rates, determining modifications to a substrate process recipe). One type of RNN that can be used is a long short-term memory (LSTM) neural network.

[0092] Training a neural network can be accomplished in a supervised learning fashion, which involves feeding a training data set made up of labeled inputs through the network, observing its outputs, defining an error (by measuring the difference between the output and the label values), and using techniques such as deep gradient descent and backpropagation to adjust the network weights across all layers and nodes of the network so that the error is minimized. In many applications, repeating this process across many labeled inputs in the training data set results in a network that can generate correct outputs even when presented with inputs that differ from those present in the training data set.

[0093] A training data set including hundreds, thousands, tens of thousands, hundreds of thousands, or more sensor data and / or process result data (e.g., metrology data such as one or more thickness profiles associated with the sensor data) can be used to form the training data set.

[0094] To accomplish the training, the processing logic may input the training dataset to one or more untrained machine learning models. Before inputting the first input to the machine learning models, the machine learning models may be initialized. The processing logic may train the untrained machine learning models based on the training dataset to generate one or more trained machine learning models that perform various operations as described above. The training may be performed by inputting one or more of the sensor data to the machine learning models one at a time.

[0095] A machine learning model processes inputs to generate outputs. An artificial neural network includes an input layer made up of data point values. The next layer is called the hidden layer, and each node in the hidden layer receives one or more input values. Each node includes parameters (e.g., weights) that it applies to the input values. Thus, each node essentially inputs the input values ​​into a multivariate function (e.g., a nonlinear mathematical transformation) to generate an output value. The next layer can be another hidden layer or an output layer. In either case, the nodes in the next layer receive output values ​​from the nodes in the previous layer, and each node applies weights to these values ​​and then generates its own output value. This can occur at each layer. The final layer is the output layer, with one node for each class, prediction, and / or output that the machine learning model can generate.

[0096] Thus, the output may include one or more predictions or inferences. For example, the output prediction or inference may include one or more predictions of film buildup on a chamber component, corrosion of a chamber component, predicted failure of a chamber component, etc. Processing logic determines an error (i.e., classification error) based on the difference between the output (e.g., prediction or inference) of the machine learning model and a target label associated with the input training data. Processing logic adjusts the weights of one or more nodes of the machine learning model based on the error. An error term or delta may be determined for each node of the artificial neural network. Based on this error, the artificial neural network adjusts one or more of its parameters (weights of one or more inputs of the node) of one or more of its nodes. Parameters may be updated in a back-propagation fashion, with nodes in the top layer updated first, followed by nodes in the next layer, and so on. An artificial neural network includes multiple layers of "neurons," each layer receiving values ​​from neurons in the previous layer as inputs. The parameters of each neuron include weights associated with values ​​received from each of the neurons in the previous layer. Thus, adjusting the parameters may include adjusting weights assigned to each of the inputs of one or more neurons in one or more layers within the artificial neural network.

[0097] After one or more training rounds, the processing logic can determine whether a stopping criterion has been met. The stopping criterion can be a target level of accuracy, a target number of processed images from the training dataset, a target amount of change to a parameter over one or more previous data points, combinations thereof, and / or other criteria. In one embodiment, the stopping criterion is 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%, 80%, or 90% accuracy. In one embodiment, the stopping criterion is met when the accuracy of the machine learning model stops improving. If the stopping criterion is not met, further training is performed. If the stopping criterion is met, training can be completed. Once the machine learning model is trained, the model can be tested using a reserved portion of the training dataset.

[0098] Once one or more trained machine learning models 790 are generated, these models may be stored in the prediction server 712 as a prediction component 714 or as a component of the prediction component 714.

[0099] The validation engine 784 may be capable of validating the machine learning model 790 using the corresponding set of features of the validation set from the training set generator 772. Once the model parameters are optimized, model validation may be performed to determine whether the model has been improved and to determine the current accuracy of the deep learning model. The validation engine 784 may determine the accuracy of the machine learning model 790 based on the corresponding set of features of the validation set. The validation engine 784 may discard trained machine learning models 790 that have an accuracy that does not meet a threshold accuracy. In some embodiments, the selection engine 785 may be capable of selecting a trained machine learning model 790 that has an accuracy that meets the threshold accuracy. In some embodiments, the selection engine 785 may be capable of selecting the trained machine learning model 790 with the highest accuracy among the trained machine learning models 790.

[0100] The testing engine 786 may be able to test the trained machine learning model 790 using a corresponding set of features of the test set from the dataset generator 772. For example, a first trained machine learning model 790 trained using a first set of features of the training set may be tested using a first set of features of the test set. The testing engine 786 may determine the trained machine learning model 790 with the highest accuracy of all the trained machine learning models based on the test set.

[0101] As described in more detail below, the prediction server 712 provides data indicative of the expected behavior of each subsystem of the process chamber and includes a prediction component 714 that can run the trained machine learning model 790 against current sensor data inputs to obtain one or more outputs. The prediction server 712 can further provide data indicative of the health and diagnostics of the process chamber subsystems, as described in more detail below.

[0102] Prediction server 112, server machine 170, and server machine 180 can be coupled to each other (or to client device 120, manufacturing equipment 124, metrology equipment 128, and / or data store 140) via a network (e.g., network 130). In some embodiments, network 130 provides client device 120 and / or tool server 127 with access to prediction server 112.

[0103] It should be noted that in some other implementations, the functionality of server machines 770 and 780 and prediction server 712 may be provided by fewer machines. For example, in some embodiments, server machines 770 and 780 may be combined into a single machine, while in some other or similar embodiments, server machines 770 and 780 and prediction server 712 may be combined into a single machine.

[0104] In general, functionality described in one embodiment as being performed by server machine 770, server machine 780, and / or prediction server 712 may also be performed on client device 120. Additionally, functionality attributed to a particular component may be performed by a different component or multiple components working together.

[0105] 8 is a block diagram illustrating a computer system 800 according to certain embodiments. In some embodiments, computer system 800 may be connected to other computer systems (e.g., via a network such as a local area network (LAN), an intranet, an extranet, or the Internet). Computer system 800 may operate in the capacity of a server or a client computer in a client-server environment, or as a peer computer in a peer-to-peer or distributed network environment. Computer system 800 may be provided by a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a mobile phone, a web appliance, a server, a network router, switch, or bridge, or any device capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that device. Furthermore, the term "computer" is intended to include any collection of computers that individually or jointly execute a set (or sets) of instructions to perform any one or more of the methodologies described herein.

[0106] In a further aspect, computer system 800 may include a processing unit 802, a volatile memory 804 (e.g., random access memory (RAM)), a non-volatile memory 806 (e.g., read-only memory (ROM) or electrically erasable programmable ROM (EEPROM)), and a data storage device 816, which may communicate with each other via a bus 808.

[0107] The processing unit 802 may be provided by one or more processors, such as a general-purpose processor (e.g., a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, a microprocessor implementing other types of instruction sets, or a microprocessor implementing a combination of multiple types of instruction sets) or a special-purpose processor (e.g., an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a digital signal processor (DSP), or a network processor).

[0108] Computer system 800 may further include a network interface device 822 (e.g., coupled to network 884). Computer system 800 may also include a video display unit 810 (e.g., LCD), an alphanumeric input device 812 (e.g., keyboard), a cursor control device 814 (e.g., mouse), and a signal generating device 820.

[0109] In some implementations, the data storage device 816 may include a non-transitory computer-readable storage medium 824 capable of storing instructions 826 encoding any one or more of the methods or functions described herein, including instructions for encoding components of FIG. 1 (e.g., communication node 232, etc.) and implementing the methods described herein.

[0110] The instructions 826 may also reside, completely or partially, within the volatile memory 804 and / or within the processing unit 802 during execution thereof by the computer system 800; thus, the volatile memory 804 and the processing unit 802 may also constitute machine-readable storage media.

[0111] Although the computer-readable storage medium 824 is shown as a single medium in the illustrative example, the term "computer-readable storage medium" is intended to include a single medium or multiple media (e.g., centralized or distributed databases, and / or associated caches and servers) that store one or more sets of executable instructions. The term "computer-readable storage medium" is also intended to include any tangible medium that is capable of storing or encoding a set of instructions for execution by a computer that cause the computer to perform any one or more of the methodologies described herein. The term "computer-readable storage medium" is intended to include, but is not limited to, solid-state memory, optical media, and magnetic media.

[0112] The methods, components, and features described herein may be implemented by discrete hardware components or integrated into the functionality of other hardware components, such as ASICs, FPGAs, DSPs, or similar devices. Furthermore, the methods, components, and features may be implemented by firmware modules or functional circuits within a hardware device. Furthermore, the methods, components, and features may be implemented in any combination of hardware devices and computer program components, or in a computer program.

[0113] Unless otherwise specified, terms such as "receive," "execute," "provide," "obtain," "cause," "access," "determine," "add," "use," "train," and the like refer to computer system-performed or implemented actions and processes that manipulate and transform data represented as physical (electronic) quantities in the computer system's registers and memory into other data similarly represented as physical quantities in the computer system's memory or registers, or other such information storage, transmission, or display devices. Also, as used herein, terms such as "first," "second," "third," "fourth," and the like are intended as labels for distinguishing different elements and cannot have an ordinal meaning due to their numerical designations.

[0114] The examples described herein also relate to apparatus for performing the methods described herein. The apparatus may be specially constructed to perform the methods described herein, or may comprise a general-purpose computer system selectively programmed by a computer program stored on the computer system. Such a computer program may be stored on a computer-readable tangible storage medium.

[0115] The methods and illustrative embodiments described herein are not inherently related to any particular computer or other apparatus. Various general-purpose systems may be used in accordance with the teachings described herein, or it may prove convenient to construct more specialized apparatus to perform the methods described herein and / or each of their individual functions, routines, subroutines, or operations. Examples of configurations for a variety of these systems are set forth in the description above.

[0116] The above description is intended to be illustrative, not limiting. While the present disclosure has been described with reference to certain exemplary examples and embodiments, it will be recognized that the disclosure is not limited to the described examples and embodiments. The scope of the present disclosure should be determined with reference to the following claims, along with the full scope of equivalents to which such claims are entitled.

Claims

1. Process tools and a tool server coupled to the process tool and comprising a communication node and an evaluation system, the communication node comprising: obtaining one or more attributes from the rating system; providing a monitoring device including a data collection plan based on said one or more attributes; registering the monitoring device with the process tool; receiving data from the process tool based on the data collection plan; transmitting the received data to the evaluation system; It is configured as follows: Electronic device manufacturing system.

2. The electronic device manufacturing system of claim 1 , wherein the communication node communicates with the evaluation system and the process tool using remote procedure calls.

3. The communication node receiving, from the evaluation system, feedback data generated based on the received data; causing the process tool to take corrective action based on the feedback data; further configured as follows: The electronic device manufacturing system of claim 1 .

4. The electronic device manufacturing system of claim 3 , wherein the feedback data comprises at least one of prediction data, diagnostic data, correction data, optimization data, efficiency data, or health data.

5. The communication node receiving, from the evaluation system, feedback data generated based on the received data; transmitting the feedback data to a client device; further configured as follows: The electronic device manufacturing system of claim 1 .

6. The electronic device manufacturing system of claim 1 , wherein the monitoring device comprises at least one of a device driver, an application programming interface (API), a software application, a virtual device, an image file, or firmware.

7. 10. The electronic device manufacturing system of claim 1, wherein the one or more attributes include at least one of an input used by the process tool, an output produced from the process tool, a control mode, a monitored recipe set point, or a monitored equipment constant.

8. The electronic device manufacturing system of claim 1 , wherein the evaluation system comprises at least one of a machine learning model, an inference engine, a heuristic model, a physics-based engine, or an algorithm.

9. The electronic device manufacturing system of claim 1 , wherein the monitoring device is registered with a front-end server of the process tool.

10. The electronic device manufacturing system of claim 1 , wherein the monitoring device is configured to obtain the received data from a system bus of the process tool.

11. The electronic device manufacturing system of claim 1 , wherein the communication nodes comprise a gateway node configured to generate the monitoring device and a gateway node configured to communicate with a plurality of evaluation systems.

12. The communication node registering the monitoring device with the process tool without causing software changes to the process tool; 10. The electronic device manufacturing system of claim 1, further configured to:

13. The communication node assigning a trigger function to a process strategy step of a process strategy; initiating a data collection operation via the monitoring device in response to receiving an indication associated with an output of the trigger function.

10. The electronic device manufacturing system of claim 1, further configured to:

14. obtaining, by a processing device, one or more attributes from a rating system; providing a monitoring device including a data collection plan based on the one or more attributes; registering the monitoring device with a process tool; receiving data from the process tool based on the data collection plan; transmitting the received data to the evaluation system; A method comprising:

15. receiving, from the evaluation system, feedback data generated based on the received data; causing the process tool to take corrective action based on the feedback data; 15. The method of claim 14, further comprising:

16. receiving, from the evaluation system, feedback data generated based on the received data; transmitting the feedback data to a client device; 15. The method of claim 14, further comprising:

17. The method of claim 14 , wherein the monitoring device comprises at least one of a device driver, an application programming interface (API), a software application, a virtual device, an image file, or firmware.

18. The method of claim 14 , wherein the monitoring device is registered with a front-end server of the process tool.

19. The method of claim 14 , wherein the monitoring device is configured to obtain the received data from a system bus of the process tool.

20. Process tools and a tool server coupled to the process tool and comprising a communication node and an evaluation system, the communication node comprising: receiving data from monitoring devices registered with the process tool according to a data collection plan; transmitting the received data to the evaluation system; receiving feedback data from the evaluation system based on the received data; causing the process tool to take corrective action based on the feedback data; It is configured as follows: Electronic device manufacturing system.

21. The electronic device manufacturing system of claim 20 , wherein the tool server is configured to transmit the feedback data to a client device.

Citation Information

Patent Citations

  • Automated process monitor and analysis system for semiconductor processing

    JP2003531491A

  • Method and apparatus for monitoring and controlling semiconductor fabrication processes

    JP2006501680A

  • Integrated tuner apparatus, systems, and methods

    JP2008104157A

  • Device and method for communicating data in a process control system

    US20030083754A1

  • Detecting and correcting substrate process drift using machine learning

    WO2022047235A1