Extremum-seeking control device and method for automatic frequency tuning

The RF generator system with an extremum-seeking frequency controller optimizes power delivery to plasma chambers by dynamically adjusting frequency, addressing inefficiencies and distortion in existing systems, thereby improving plasma processing precision and efficiency.

JP2025530644APending Publication Date: 2025-09-17MKS INSTR INC
View PDF 12 Cites 0 Cited by

Patent Information

Application Number
JP2025507391
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-09-06
Filing Date
2023-06-06
Publication Date
2025-09-17

AI Technical Summary

Technical Problem

Existing RF generator systems face challenges in precisely controlling power signals for plasma generation, particularly in nonlinear and time-varying loads, leading to inefficiencies and intermodulation distortion in plasma processing systems.

Method used

An RF generator system with an extremum-seeking frequency controller that adjusts output frequency based on a slope signal, utilizing buffers to store frequency and response values, and a gradient estimator to optimize frequency control, minimizing reflected power and improving impedance matching.

Benefits of technology

Enhances the precision and efficiency of power delivery to plasma chambers by dynamically adjusting frequency to minimize reflected power and improve impedance matching, reducing intermodulation distortion and enhancing plasma processing capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025530644000001_ABST
    Figure 2025530644000001_ABST
Patent Text Reader

Abstract

The RF generator includes an RF power source configured to generate an output signal at an output frequency and an extremum-seeking frequency controller configured to generate a frequency control signal. The frequency control signal varies the output frequency of the RF power source, the frequency control signal being formed from a gradient signal. The RF generator further includes a slope estimator configured to generate the gradient signal. The frequency of the frequency control signal is adjusted based on the gradient signal. The slope estimator is configured to receive a frequency value of the frequency control signal and a corresponding output response value, and the gradient signal is generated based on the frequency value and the output response value. Other exemplary RF generators, methods for extremum-seeking frequency control of an RF generator, and control systems for controlling an RF generator are also disclosed.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit of U.S. Application No. 17 / 903,749, filed September 6, 2022. The disclosures of the above applications are incorporated herein by reference in their entireties.

[0002] The present disclosure relates to RF generator systems and the control of RF generators. [Background technology]

[0003] Plasma generation is frequently used in semiconductor fabrication. In plasma generation, ions are accelerated by an electric field to etch material from or deposit material onto the surface of a substrate. In one basic implementation, the electric field is generated based on a radio frequency (RF) or direct current (DC) power signal generated by a respective RF or DC generator in a power supply system. The power signal generated by the generator must be precisely controlled to effectively perform plasma etching.

[0004] The background art discussion provided herein is intended to generally present the context for the present disclosure. The work of the presently designated inventors, and aspects of the discussion that may not be considered prior art at the time of filing, to the extent described in this background art section, are not admitted expressly or impliedly as prior art to the present disclosure. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] U.S. Patent No. 7,602,127 [Patent Document 2] U.S. Patent No. 8,110,991 [Patent Document 3] U.S. Patent No. 8,395,322 [Patent Document 4] U.S. Patent No. 10,821,542 [Patent Document 5] U.S. Patent No. 10,546,724 [Patent Document 6] U.S. Patent No. 10,049,857 [Patent Document 7] U.S. Patent No. 10,741,363 Summary of the Invention [Means for solving the problem]

[0006] One or more computer systems may be configured to perform particular operations or actions by having installed thereon software, firmware, hardware, or a combination thereof that causes the system to perform the actions during operation. One or more computer programs may be configured to perform particular operations or actions by containing instructions that, when executed by a data processing device, cause the device to perform the actions.

[0007] According to one aspect of the present disclosure, a radio frequency (RF) generator for powering a load is disclosed. The RF generator includes an RF power source configured to generate an output signal at an output frequency and an extremum-seeking frequency controller configured to generate a frequency control signal, where the frequency control signal varies the output frequency of the RF power source, the frequency control signal being formed from a slope signal. The RF generator further includes a slope estimator configured to generate the slope signal. The frequency of the frequency control signal is adjusted based on the slope signal. The slope estimator is configured to receive a frequency value of the frequency control signal and a corresponding output response value. The slope signal is generated based on the frequency value and the output response value. Other embodiments of this aspect include corresponding computer systems, apparatuses, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the method.

[0008] Implementations may include one or more of the following features. The RF generator may include a first buffer configured to store frequency values ​​and a second buffer configured to store output response values. The first and second buffers may be configured to purge at least one of the frequency values ​​and at least one of the output response values. The first and second buffers may be configured to store a defined number of frequency values ​​and output response values. The defined number may be a number from 5 to 20. The RF generator may further include a power controller coupled to the RF power source. The power controller may be configured to generate pulses to modulate an output signal of the RF power source, where the first and second buffers may be configured to store frequency values ​​and output response values ​​for the pulses. The power controller may be configured to generate pulses to modulate an output signal of the RF power source, where the pulses include a first state and a second state, where the first and second buffers are configured to store a frequency value and an output response value for a first state of the pulse. The RF generator may include a third buffer configured to store a frequency value for a second state of the pulse and a fourth buffer configured to store an output response value for the second state of the pulse. The first and second buffers may be configured to purge at least one of the frequency values ​​and at least one of the output response values ​​for the first state of the pulse, and the first and second buffers may be configured to store the frequency value and the output response value for the second state of the pulse after purging the at least one of the frequency values ​​and at least one of the output response values ​​for the first state of the pulse. The pulse may be a first pulse, and the power controller may be configured to generate a second pulse including the first and second states, and the purged at least one of the frequency values ​​and at least one of the output response values ​​for the first state of the first pulse may be recalled to the first and second buffers for the first state of the second pulse.A gradient estimator may be configured to estimate a gradient of a cost function of the RF generator based on the frequency value and the output response value, and the gradient estimator may be configured to generate a gradient signal based on the estimated gradient. The gradient estimator may be configured to estimate a gradient based on a minimum value of the output response value, a maximum value of the output response value, one of the frequency values ​​corresponding to the minimum value of the output response value, and another of the frequency values ​​corresponding to the maximum value of the output response value. The gradient estimator may be configured to estimate a gradient based on a sum of the frequency values ​​and a sum of the output response value. The gradient estimator may be configured to set the estimated gradient to zero in response to the estimated gradient being less than or equal to a defined threshold. The gradient estimator may be configured to again estimate the gradient based on at least one of one of the output response values ​​corresponding to when the estimated gradient was set to zero, one or more defined operating parameters of the RF generator, or the perturbation signal. The gradient estimator may be configured to clamp the estimated gradient to a defined threshold in response to the estimated gradient being less than or equal to a defined threshold. A gradient estimator may be configured to estimate a gradient at startup of the RF generator based on one or more defined operating parameters of the RF generator or a perturbation signal, and the gradient estimator may be configured to generate a gradient signal based on the estimated gradient. Implementations of the described techniques may include hardware, methods or processes, or computer software on a computer-accessible medium.

[0009] According to another aspect of the present disclosure, a method for extremum-seeking frequency control of an RF generator including an RF power source is disclosed. The method includes generating a frequency control signal having an adjustable frequency, where the frequency control signal varies an output frequency of the RF power source, receiving a frequency value of the frequency control signal and a corresponding output response value, and generating a gradient signal based on the frequency value and the output response value, where the frequency of the frequency control signal is adjusted based on the gradient signal. Other embodiments of this aspect include corresponding computer systems, apparatus, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the method.

[0010] Implementations may include one or more of the following features. The method may include storing frequency values ​​in a first buffer and storing output response values ​​in a second buffer. The method may include purging at least one of the frequency values ​​in the first buffer and at least one of the output response values ​​in the second buffer. Storing frequency values ​​in the first buffer and storing output response values ​​in the second buffer may include storing a defined number of frequency values ​​in the first buffer and a defined number of output response values ​​in the second buffer. The defined number may be a number from 5 to 20. The method may include generating pulses to modulate an output signal of the RF power source, where storing frequency values ​​in the first buffer and storing output response values ​​in the second buffer may include storing frequency values ​​and output response values ​​for the pulses. The method may include generating a pulse to modulate an output signal of an RF power source, where storing frequency values ​​in a first buffer and storing output response values ​​in a second buffer may include storing a frequency value and an output response value for a first state of the pulse. The method may include storing a frequency value for a second state of the pulse in a third buffer and an output response value for the second state of the pulse in a fourth buffer. The method may include purging at least one of the frequency values ​​in the first buffer and at least one of the output response values ​​in the second buffer, and, after purging at least one of the frequency values ​​and at least one of the output response values ​​for the first state of the pulse, storing a frequency value for a second state of the pulse in the first buffer and an output response value in the second buffer. The pulse may be a first pulse, and the method may further include generating a second pulse including a first state and a second state, and recalling the purged at least one of the frequency values ​​and at least one of the output response values ​​for the first state of the first pulse into the first buffer and the second buffer for the first state of the second pulse.The method may further include estimating a gradient of a cost function of the RF generator based on a frequency value and an output response value, where generating a gradient signal includes generating a gradient signal based on the estimated gradient. Estimating the gradient may include estimating the gradient based on a minimum value of the output response value, a maximum value of the output response value, one of the frequency values ​​corresponding to the minimum value of the output response value, and another of the frequency values ​​corresponding to the maximum value of the output response value. Estimating the gradient may include estimating the gradient based on a sum of the frequency values ​​and a sum of the output response values. The method may further include setting the estimated gradient to zero in response to the estimated gradient being less than or equal to a defined threshold. The method may further include re-estimating the gradient based on at least one of one of the output response values ​​corresponding to when the estimated gradient was set to zero, one or more defined operating parameters of the RF generator, or the perturbation signal. The method may further include clamping the estimated gradient to a defined threshold in response to the estimated gradient being less than or equal to a defined threshold. The method may further include estimating a gradient at startup of the RF generator based on one or more defined operating parameters of the RF generator or the perturbation signal, where generating a gradient signal includes generating a gradient signal based on the estimated gradient. Implementations of the described techniques may include hardware, methods or processes, or computer software on a computer-accessible medium.

[0011] According to another aspect of the present disclosure, a control system for controlling an RF generator including an RF power source is disclosed. The control system includes an extremum-seeking frequency controller configured to generate a frequency control signal, where the frequency control signal varies an output frequency of the RF power source, the frequency control signal being formed from a slope signal. The control system further includes a slope estimator configured to generate the slope signal. The frequency of the frequency control signal is adjusted based on the slope signal. The slope estimator is configured to receive a frequency value of the frequency control signal and a corresponding output response value. The slope signal is generated based on the frequency value and the output response value. Other embodiments of this aspect include corresponding computer systems, apparatuses, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the method.

[0012] Implementations may include one or more of the following features. The control system may include a first buffer configured to store frequency values ​​and a second buffer configured to store output response values. The first and second buffers may be configured to purge at least one of the frequency values ​​and at least one of the output response values. The first and second buffers may be configured to store a defined number of frequency values ​​and output response values. The defined number may be a number from 5 to 20. The control system may include a power controller configured to generate pulses to modulate the output signal of the RF power source, where the first and second buffers may be configured to store frequency values ​​and output response values ​​for the pulses. The control system may include a power controller configured to generate pulses to modulate the output signal of the RF power source, where the pulses include a first state and a second state, where the first and second buffers may be configured to store a frequency value and an output response value for a first state of the pulses. The control system may include a third buffer configured to store a frequency value for a second state of the pulse and a fourth buffer configured to store an output response value for the second state of the pulse. The first and second buffers may be configured to purge at least one of the frequency values ​​and at least one of the output response values ​​for the first state of the pulse, and the first and second buffers may be configured to store the frequency value and the output response value for the second state of the pulse after purging the at least one of the frequency values ​​and at least one of the output response values ​​for the first state of the pulse. The pulse may be a first pulse, and the power controller may be configured to generate a second pulse including the first state and the second state, and the purged at least one of the frequency values ​​and at least one of the output response values ​​for the first state of the first pulse may be recalled to the first and second buffers for the first state of the second pulse.A gradient estimator may be configured to estimate a gradient of a cost function of the RF generator based on the frequency value and the output response value, and the gradient estimator may be configured to generate a gradient signal based on the estimated gradient. The gradient estimator may be configured to estimate a gradient based on a minimum value of the output response value, a maximum value of the output response value, one of the frequency values ​​corresponding to the minimum value of the output response value, and another of the frequency values ​​corresponding to the maximum value of the output response value. The gradient estimator may be configured to estimate a gradient based on a sum of the frequency values ​​and a sum of the output response value. The gradient estimator may be configured to set the estimated gradient to zero in response to the estimated gradient being less than or equal to a defined threshold. The gradient estimator may be configured to again estimate the gradient based on at least one of one of the output response values ​​corresponding to when the estimated gradient was set to zero, one or more defined operating parameters of the RF generator, or the perturbation signal. The gradient estimator may be configured to clamp the estimated gradient to a defined threshold in response to the estimated gradient being less than or equal to a defined threshold. A gradient estimator may be configured to estimate a gradient at startup of the RF generator based on one or more defined operating parameters of the RF generator or a perturbation signal, and the gradient estimator may be configured to generate a gradient signal based on the estimated gradient. Implementations of the described techniques may include hardware, methods or processes, or computer software on a computer-accessible medium.

[0013] Further areas of applicability of the present disclosure will become apparent from the detailed description, the claims, and the drawings. The detailed description and specific examples are intended for purposes of illustration only and are not intended to limit the scope of the present disclosure.

[0014] The present disclosure will become more fully understood from the detailed description and accompanying drawings. [Brief explanation of the drawings]

[0015] [Figure 1]FIG. 1 is a schematic block diagram of a power supply system having multiple power sources arranged in accordance with various configurations of the present disclosure. [Figure 2] FIG. 2 is a diagram illustrating the waveform of an RF signal and pulses modulating the RF signal to explain a pulse operation mode. [Figure 3A] FIG. 10 shows a plot of a quadratic cost function as a function of cost and actuator frequency. [Figure 3B] FIG. 10 shows a plot of a quadratic cost function as a function of cost and actuator frequency. [Figure 4] FIG. 1 is a block diagram of an RF power delivery system implementing an extremum-seeking control (ESC)-based approach arranged in accordance with the principles of the present disclosure. [Figure 5A] FIG. 10 illustrates a plot of a quadratic cost function with local estimated gradients arranged in accordance with the principles of the present disclosure. [Figure 5B] FIG. 10 illustrates a plot of a quadratic cost function with local estimated gradients arranged in accordance with the principles of the present disclosure. [Figure 6] 10A-10C illustrate plots of various waveforms associated with an ESC-based approach arranged in accordance with the principles of the present disclosure. [Figure 7] FIG. 10 illustrates a plot of a frequency waveform associated with an ESC-based approach arranged in accordance with the principles of the present disclosure. [Figure 8] FIG. 1 is a block diagram of an RF power delivery system implementing an ESC-based approach arranged in accordance with the principles of the present disclosure. [Figure 9] FIG. 10 illustrates plots of an ESC-based approach arranged in accordance with the principles of the present disclosure compared to a typical ESC-based approach. [Figure 10] 1A-1C are functional block diagrams of exemplary control modules arranged according to various configurations. [Figure 11] 1 is a flowchart of the operation of a control system for gradient estimation arranged in accordance with the principles of the present disclosure. [Figure 12]1 is a flowchart of the operation of a control system for gradient estimation arranged in accordance with the principles of the present disclosure. [Figure 13] 1 is a flowchart of the operation of a control system for gradient estimation arranged in accordance with the principles of the present disclosure. [Figure 14] 1 is a flowchart of the operation of a control system for gradient estimation arranged in accordance with the principles of the present disclosure. [Figure 15] 1 is a flowchart of the operation of a control system for gradient estimation arranged in accordance with the principles of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION

[0016] In the drawings, reference numbers may be reused to identify similar and / or identical elements.

[0017] A power system may include a DC or RF power generator or generator, a matching network, and a load (such as a process chamber, plasma chamber, or reactor with fixed or variable impedance). The power generator generates a DC or RF power signal, which is received by a matching network or an impedance optimization controller or circuit. The matching network or impedance optimization controller or circuit matches the input impedance of the matching network to the characteristic impedance of the transmission line between the power generator and the matching network. Impedance matching helps maximize the amount of power transferred to the matching network ("forward power") and minimize the amount of power reflected from the matching network back to the power generator ("reverse power" or "reflected power"). Power delivered to the load can be maximized by minimizing reflected power when the input impedance of the matching network matches the characteristic impedance of the transmission line and the generator.

[0018] In the field of power sources or power supplies, there are typically two approaches to applying a power signal to a load. The first, more traditional approach is to apply a continuous power signal to the load. In continuous mode or continuous wave mode, the continuous power signal is typically a constant DC or sinusoidal RF power signal that is continuously output by the power source to the load. In the continuous mode approach, the power signal assumes a constant DC or sinusoidal output, and the amplitude and / or frequency (of an RF power signal) of the power signal can be varied to vary the output power applied to the load.

[0019] A second approach to applying a power signal to a load involves pulsing the RF signal rather than applying a continuous RF signal to the load. In a pulsed or pulsed mode of operation, the RF signal is modulated by a modulation signal to define an envelope for the modulated power signal. The RF signal can be, for example, a sinusoidal RF signal or other time-varying signal. The power delivered to the load is typically varied by varying the modulation signal.

[0020] In a typical power supply configuration, the output power applied to a load is determined using sensors that measure the forward and reflected power, or the voltage and current, of an RF signal applied to the load. Any set of these signals is analyzed in a control loop. The analysis typically determines a power value that is used to adjust the output of the power supply to vary the power applied to the load. In a power supply system where the load is a process chamber or other nonlinear or time-varying load, varying impedance of the load causes a corresponding variation in the power applied to the load, since the power applied is in part a function of the impedance of the load.

[0021] In systems where the fabrication of various devices relies on the introduction of power to a load to control the fabrication process, power is typically supplied in one of two configurations. In the first configuration, power is capacitively coupled to the load. Such systems are called capacitively coupled plasma (CCP) systems. In the second configuration, power is inductively coupled to the load. Such systems are typically called inductively coupled plasma (ICP) systems. Power coupling to the plasma can also be achieved via wave coupling at microwave frequencies. Such approaches typically use electron cyclotron resonance (ECR) or microwave sources. Helicon sources are another form of wave-coupled source and typically operate at RF frequencies similar to those of conventional ICP and CCP systems. The power supply system can include at least one bias power and / or source power applied to one or more electrodes of the load. The source power typically generates the plasma and controls the plasma density, while the bias power modulates ions in the buildup of the sheath. The bias and source may share the same electrode or use separate electrodes, depending on various design considerations.

[0022] When a power supply system drives a time-varying or nonlinear load, such as a process chamber or plasma chamber, the power absorbed by the bulk plasma and plasma sheath produces a density of ions with various ion energies. One characteristic measure of ion energy is the ion energy distribution function (IEDF). The IEDF can be controlled using bias power. One method of controlling the IEDF for a system in which multiple RF power signals are applied to a load is by varying the multiple RF signals, which are related by amplitude, frequency, and phase. The relative amplitude, frequency, and phase of the multiple RF power signals can also be related by Fourier series and associated coefficients. The frequencies between the multiple RF power signals can be locked, and the relative phases between the multiple RF signals can also be locked. Examples of such systems can be found in U.S. Pat. Nos. 7,602,127, 8,110,991, and 8,395,322, all of which are assigned to the assignee of the present application and incorporated herein by reference.

[0023] Time-varying or nonlinear loads may exist in various applications. In one application, a plasma processing system may also include components for plasma generation and control. One such component is a nonlinear load implemented as a process chamber, such as a plasma chamber or reactor. As an example, a typical plasma chamber or reactor utilized in a plasma processing system for thin film manufacturing or the like may utilize a dual power system. One power generator (source) controls plasma generation, and another power generator (bias) controls ion energy. Examples of dual power systems include those described in the above-referenced U.S. Pat. Nos. 7,602,127, 8,110,991, and 8,395,322. The dual power systems described in the above-referenced patents employ a closed-loop control system to adapt power supply operation for the purpose of controlling ion density and its corresponding ion energy distribution function (IEDF).

[0024] There are several approaches to controlling a process chamber, such as that used to generate a plasma. For example, in an RF power supply system, the phase and frequency of multiple driving RF signals operating at the same or nearly the same frequency can be used to control plasma generation. In RF-driven plasma sources, periodic waveforms that affect plasma sheath dynamics and corresponding ion energy are generally known and controlled by the frequency and associated phase interactions of the periodic waveforms. Another approach in RF power supply systems involves dual-frequency control. That is, two RF frequency sources operating at different frequencies are used to power the plasma chamber to provide substantially independent control of ion and electron densities.

[0025] Another approach utilizes a broadband RF power source to drive the plasma chamber. This broadband approach presents several challenges. One challenge is coupling power to the electrodes. A second challenge is that the transfer function of the generated waveform to the actual sheath voltage for the desired IEDF must be formulated for a wide process space to support material-surface interactions. One approach that is sensitive to inductively coupled plasma systems involves controlling the plasma density by controlling the power applied to the source electrode and modulating the ions to control the IEDF by controlling the power applied to the bias electrode, providing etch rate control. Using source and bias electrode control, the etch rate is controlled via ion density and energy.

[0026] As integrated circuit and device fabrication continues to evolve, so do the power requirements for controlling the fabrication process. For example, in memory device fabrication, the requirement for bias power continues to increase. Increasing power generates more energetic ions due to faster surface interactions, thereby increasing the etch rate and ion directionality. In RF systems, increasing bias power can be accompanied by a lower bias frequency requirement, along with an increase in the number of bias power sources coupled to the plasma sheath created in the plasma chamber. Increasing power at lower bias frequencies and an increase in the number of bias power sources can result in intermodulation distortion (IMD) emissions from sheath modulation. IMD emissions can significantly reduce the power supplied by the source where plasma generation occurs. U.S. Patent No. 10,821,542, entitled "Pulse Synchronization by Monitoring Power in Another Frequency Band," issued November 3, 2020, and assigned to the assignee of the present application and incorporated herein by reference, describes a method for pulse synchronization by monitoring power in another frequency band. In the referenced US patent, the pulsing of the second RF generator is controlled in accordance with detecting the pulsing of the first RF generator at the second RF generator, thereby synchronizing the pulsing between the two RF generators.

[0027] FIG. 1 illustrates an RF generator or power supply system 10. The power supply system 10 includes a pair of radio frequency (RF) generators or power supplies 12a, 12b, matching networks 18a, 18b, and a load 32, such as a nonlinear load, which may be a plasma chamber, a plasma reactor, a process chamber, or the like. In various configurations, the RF generator 12a is referred to as a source RF generator or power supply, and the matching network 18a is referred to as a source matching network. Also, in various configurations, the RF generator 12b is referred to as a bias RF generator or power supply, and the matching network 18b is referred to as a bias matching network. It will be understood that components may be referred to individually or collectively using reference numbers with and without letters, subscripts, or primes.

[0028] In various configurations, the source RF generator 12a receives a control signal 30 from the matching network 18b and / or a control signal 30' from the bias RF generator 12b. The control signal 30 or 30' represents an input signal to the source RF generator 12a that indicates one or more operating characteristics or parameters of the bias RF generator 12b. In various configurations, a synchronization bias detector 34 detects the RF signal output from the matching network 18b to the load 32 and outputs a synchronization or trigger signal 30 to the source RF generator 12a. In various configurations, a synchronization or trigger signal 30', rather than the trigger signal 30, may be output from the bias RF generator 12b to the source RF generator 12a. One difference between the trigger or synchronization signals 30, 30' may result from the effect of the matching network 18b, which can vary the phase between the input signal to the matching network and the output signal from the matching network. Signals 30, 30' contain information about the operation of bias RF generator 12b that, in various configurations, enables predictable responsiveness to address periodic variations in the impedance of load 32 caused by bias RF generator 12b. In the absence of control signals 30 or 30', RF generators 12a, 12b operate autonomously.

[0029] The RF generators 12a, 12b include respective RF power sources or amplifiers 14a, 14b, sensors 16a, 16b, and processors, controllers, or control modules 20a, 20b. The RF power sources 14a, 14b generate respective RF power signals 22a, 22b, which are output to the respective sensors 16a, 16b. The RF power signals 22a, 22b pass through the sensors 16a, 16b and are provided to matching networks 18a, 18b as respective RF power signals f1 and f2. While the sensors 16a, 16b are shown within the respective RF generators 12a, 12b, the sensors 16a, 16b can be located external to the RF power generators 12a, 12b. Such external sensing can occur at the output of the RF generators, at the input of an impedance matching device located between the RF generators and the load, or between the output of the impedance matching device (including within the impedance matching device) and the load.

[0030] The sensors 16a, 16b detect various operating parameters and output signals X and Y. The sensors 16a, 16b may include voltage, current, and / or directional coupler sensors. The sensors 16a, 16b detect (i) the voltage V and current I, and / or (ii) the forward power P output from the respective power amplifiers 14a, 14b and / or RF generators 12a, 12b. FWD and the reverse or reflected power P received from the respective matching network 18a, 18b or load 32 connected to the respective sensor 16a, 16b. REV It can detect voltage V, current I, forward power P FWD , and reverse power P REVmay be scaled, filtered, or scaled and filtered versions of the actual voltage, current, forward power, and reverse power associated with each power source 14a, 14b. Sensors 16a, 16b may be analog or digital sensors, or a combination thereof. In a digital implementation, sensors 16a, 16b may include an analog-to-digital (A / D) converter and a signal sampling component with a corresponding sampling rate. Signals X and Y may represent the voltage V and current I, or the forward (or source) power P FWD , reverse (or reflected) power P REV It can represent any of the following:

[0031] The sensors 16a, 16b generate sensor signals X, Y, which are received by respective power controllers or control modules 20a, 20b. The control modules 20a, 20b process the respective X and Y signals 24a, 26a and 24b, 26b and generate one or more feedforward or feedback control signals 28a, 28b to the respective power sources 14a, 14b. The power sources 14a, 14b adjust the RF power signals 22a, 22b based on the received one or more feedback or feedforward control signals. In various configurations, the control modules 20a, 20b may control the matching networks 18a, 18b, respectively, via respective control signals 29a, 29b, for example, based on the X and Y signals 24a, 26a and 24b, 26b. In some configurations, the control signals 29a, 29b may be the same as, similar to, or different from the control signals 28a, 28b. The control modules 20a, 20b may include at least a proportional-integral (PI), proportional-integral-derivative (PID) controller, a linear quadratic regulator (LQR), or a subset thereof, and / or a direct digital synthesis (DDS) component, and / or any of the various components described below with respect to the modules.

[0032] In various configurations, the control modules 20a, 20b may include functions, processes, processors, or sub-modules. The control signals 28a, 28b may be control or drive signals and may communicate DC offset or rail voltage, voltage or current magnitude, frequency, and phase components, etc. In various configurations, the feedback control signals 28a, 28b may be used as inputs to one or more control loops. In various configurations, the multiple control loops may include a control loop for RF drive and a control loop for rail voltage. In various configurations, the control signals 28a, 28b may be used in a single-input, single-output (SISO) or multiple-input, multiple-output (MIMO) control scheme. An example of a MIMO control scheme may be found in U.S. Patent No. 10,546,724, entitled "Pulsed Bidirectional Radio Frequency Source / Load," issued January 28, 2020, which is assigned to the assignee of the present application and incorporated herein by reference. In other configurations, signals 28a, 28b may provide feedforward control as described in US Pat. No. 10,049,857, which is assigned to the assignee of the present application and is incorporated herein by reference.

[0033] In various configurations, the power supply system 10 may include a controller 20′. The controller 20′ may be disposed external to either or both of the RF generators 12a, 12b and may be referred to as an external or common controller 20′. In various configurations, the controller 20′ may implement one or more functions, processes, or algorithms described herein with respect to either or both of the controllers 20a, 20b. Accordingly, the controller 20′ communicates with each of the RF generators 12a, 12b via a pair of respective links 36, 38, which enable the exchange of data and control signals between the controller 20′ and the RF generators 12a, 12b, as appropriate. In various configurations, the controllers 20a, 20b, 20′ may provide analysis and control of the RF generators 12a, 12b in a distributed and collaborative manner. In various other configurations, the controller 20′ may provide control of the RF generators 12a, 12b, eliminating the need for respective local controllers 20a, 20b.

[0034] In various configurations, the RF power source 14a, the sensor 16a, the controller 20a, and the matching network 18a may be referred to as the source RF power source 14a, the source sensor 16a, the source controller 20a, and the source matching network 18a. Similarly, in various configurations, the RF power source 14b, the sensor 16b, the controller 20b, and the matching network 18b may be referred to as the bias RF power source 14b, the bias sensor 16b, the bias controller 20b, and the bias matching network 18b. In various configurations, as explained above, the term source refers to the RF generator that generates the plasma, and the term bias refers to the RF generator that adjusts the ion potential or IEDF of the plasma. In various configurations, the source and bias RF power sources operate at different frequencies. In various configurations, the source RF power source operates at a higher frequency than the bias RF power source. In various other configurations, the source and bias RF power sources operate at the same frequency or substantially the same frequency.

[0035] According to various configurations, the source RF generator 12a and the bias RF generator 12b include multiple ports for communicating with the outside world. The source RF generator 12a includes a pulse synchronization output port 40, a digital communication port 42, an RF output port 44, and a control signal port 60. The bias RF generator 12b includes an RF input port 48, a digital communication port 50, and a pulse synchronization input port 52. The pulse synchronization output port 40 outputs a pulse synchronization signal 56 to the pulse synchronization input port 52 of the bias RF generator 12b. The digital communication port 42 of the source RF generator 12a and the digital communication port 50 of the bias RF generator 12b communicate via a digital communication link 57. The control signal port 60 of the source RF generator 12a receives the control signals 30 and / or 30′. The RF output port 44 generates an RF control signal 58 that is input to the RF input port 48. In various configurations, the RF control signal 58 is substantially the same as the RF control signal that controls the source RF generator 12a. In various other configurations, RF control signal 58 is the same as the RF control signal controlling source RF generator 12a, but is phase shifted within source RF generator 12a according to the desired phase shift generated by bias RF generator 12b. Thus, in various configurations, source RF generator 12a and bias RF generator 12b are driven by substantially equal RF control signals or by substantially equal RF control signals that are phase shifted by a predetermined amount.

[0036] FIG. 2 shows a voltage versus time plot illustrating a pulsed or pulsed mode of operation for powering a load, such as load 32 of FIG. 1. More specifically, FIG. 2 shows two multi-state pulses P1, P2 of pulse signal 70, each having a plurality of states S1-S4 and S1-S3. In FIG. 2, an RF signal 80 is modulated by pulses P1 and P2. When the pulses are ON, as shown in state S1 of P1 and state S1 of P2, RF generator 12 outputs RF signal 80 with an amplitude defined by the magnitude of the pulse in each state. Conversely, during state S4 of P1 and state S3 of P2, the pulses are OFF, and RF generator 12 does not output RF signal 80. Pulses P1, P2 can repeat at a constant duty cycle or a variable duty cycle, and states S1-S4, S1-S3 of each pulse P1, P2 can have the same or varying amplitude and width. Furthermore, pulse signal 70 need not be a square wave as shown in FIG. 2. By way of non-limiting example, pulse signal 70 may be trapezoidal, triangular, Gaussian, or other shape. Furthermore, pulses P1, P2 may have multiple states S1, ..., Sn of varying amplitude, duration, and shape. States S1, ..., Sn may repeat within a fixed or variable period. Also, as shown in FIG. 2, RF signal 80 operates at a frequency that varies between or within states.

[0037] In a typical RF power delivery system, a matching network (e.g., matching network 18a in FIG. 1) is adjusted to achieve maximum power delivery to a load via tunable mechanical components. Maximum power delivery indicates minimum reflected power. Because the response time of the electromechanical tuning elements in the matching network is relatively slow, adjusting the matching network may require a relatively extended period to complete the power adjustment. To improve impedance matching, the RF frequency output by a power amplifier (e.g., power amplifier 14a in FIG. 1) may also be adjusted. Frequency-based tuning improves performance and provides orders of magnitude faster response than adjusting the electromechanical components of the matching network.

[0038] When employing frequency-based impedance matching, it is desirable to find the optimum frequency that provides the minimum reflected power. The minimum reflected power can be indicated through the minimum absolute value |Γ| of the measured complex reflection coefficient gamma. There are several existing methods for adjusting the RF frequency.

[0039] For example, automated frequency tuning is a standard technique for fast impedance matching. By adjusting the RF carrier frequency, the RF generator steers toward lower reflected power and compensates for transients in the load, even at pulse state change boundaries. Examples of automated frequency tuning methods include extremum-seeking control (ESC) techniques and closed-form model-based (e.g., transfer function) techniques. An example of an ESC-based technique for performing automatic or automated frequency tuning can be found in U.S. Pat. No. 10,741,363, which is assigned to the assignee of the present application and is incorporated herein by reference.

[0040] The ESC technique minimizes reflected power without requiring extensive knowledge of the process. The ESC technique implements a dynamic adjustment mechanism for automatically tuning the frequency along the direction of the gradient of a cost function without requiring an explicit model of the system or process. The cost function may generally be referred to as a functional equation that maps a set of points to a single scalar value. The scalar value resulting from the evaluation of the cost function may be referred to as the cost. In frequency tuning applications, this cost may be expressed as the magnitude of gamma squared or gamma mag squared (|Γ| 2 ), or output response values ​​such as delivered power. Generally, it is desirable to minimize or maximize cost.

[0041] For example, Figure 3A shows the cost function J (or gamma magnitude squared (|Γ| 23 shows a plot 300A of a quadratic cost function 302 as a function of the input voltage, J, and the actuator frequency, U. As shown, the plot 300A includes a maximum 304 and locations 306, 308 along the cost function 302, with each location 306, 308 on a different side of the maximum 304. Thus, all points to the left of the maximum 304 have a positive slope (or gradient), and all points to the right of the maximum 304 have a negative slope. If it is desired to maximize the cost, J, and the actuator frequency is at location 306, the actuator frequency may be increased, thereby causing an increase in the cost, J, or the output response value. In other embodiments, if it is desired to maximize the cost, J, and the actuator frequency is at location 308, the actuator frequency may be decreased, thereby causing an increase in the cost, J.

[0042] A similar relationship exists for quadratic cost functions that have a minimum. For example, FIG. 3B shows that the cost function J (or gamma magnitude squared (|Γ| 2 3 shows a plot 300B of a quadratic cost function 310 as a function of J and actuator frequency U. As shown, plot 300B includes a minimum 312 and locations 314, 316 along the cost function 310, with each location 314, 316 on a different side of minimum 312. Thus, in this example, all points to the left of minimum 312 have a negative slope, and all points to the right of minimum 312 have a positive slope. If it is desired to minimize cost J and the actuator frequency is at location 314, the actuator frequency may be increased, thereby causing a decrease in cost J or the output response value. In other embodiments, if it is desired to minimize cost J and the actuator frequency is at location 316, the actuator frequency may be decreased, thereby causing a decrease in cost J.

[0043] To maximize or minimize cost J in FIGS. 3A-3B, it is desirable to understand the directionality of the actuator frequency U required to move the cost function toward a minimum or maximum. In a typical ESC approach, this can be achieved by injecting a sinusoidal perturbation signal over multiple cycles on the actuator to probe the system's response (e.g., change in the cost function) to varying actuator frequencies. For example, based on the sinusoidal perturbation signal, the output response value (or cost) changes in magnitude and direction depending on where its current position is (e.g., positions 306, 308, 314, 316 in FIGS. 3A-3B) relative to the minimum or maximum point (e.g., maximum 304, minimum 312). The output response value can be processed to estimate the local slope (or gradient) of the cost function (e.g., cost functions 302, 310), which indicates the direction of the actuator frequency adjustment required to move toward the minimum or maximum point. An example of an ESC technique employing a sinusoidal perturbation signal can be found by reference to US Pat. No. 10,741,363.

[0044] While ESC techniques employing sinusoidal perturbation signals offer advantages over other conventional automated frequency tuning methods, such as transfer function methods, the inventors have recognized that such techniques can be improved. For example, as recognized by the inventors, a sinusoidal perturbation signal can induce sinusoidal patterns on the frequency actuator and on the resulting measured gamma magnitude-squared signal in steady-state conditions near the ideal tuning point (minimum or maximum cost function point). Such movement in the load can also cause unwanted fluctuations in the forward and delivered power output from the generator. Additionally, the transient tuning time of the frequency controller can be limited by the injected sinusoidal perturbation signal. For example, to accurately estimate the slope, the output response is typically measured over multiple cycles of the perturbation signal. Therefore, the transient tuning speed is limited by the frequency of the sinusoidal perturbation signal. Furthermore, the slope estimate can be corrupted by other signals in the system, for example, if the frequency of the sinusoidal perturbation signal is close to or at the frequency of other signals. One such interference signal may be, for example, from an "apparent" pulse frequency that moves around based on the pulsed setup, and may arise when frequency tuners are layered (e.g., each tuner receives data relating to one state of one or more pulses).

[0045] Uniquely, the ESC techniques disclosed herein enable estimation of the slope of a cost function (e.g., cost functions 302, 310 in FIGS. 3A-3B ) based on historical frequency values ​​of a frequency actuator / controller and corresponding output response values. Thus, when using ESC techniques for frequency-tuning-based impedance matching, the need for sinusoidal perturbation signals is eliminated. As a result, compared to ESC techniques implementing injected sinusoidal perturbation signals, transient tuning times may be improved, sinusoidal variations in actuator and output responses may be reduced (and may be eliminated), and tuner sensitivity to other frequencies in the system (e.g., harmonics, aliases, pulse-related frequency artifacts, etc.) may be reduced (and may be eliminated).

[0046] 4 shows an example of a power supply system 400 implementing an ESC-based approach in which an actuator frequency is adjusted based on historical frequency values ​​and corresponding output response values. The power supply system 400 includes a frequency controller 402 and a process dynamics block 404, which includes, for example, at least one RF generator, at least one matching network, and a load such as a plasma chamber. The frequency controller 402 includes a frequency optimizer module or extremum-seeking frequency module or controller 410 and a slope estimator module 412. The frequency controller 402 generates and outputs a frequency actuator signal having a frequency 406 to the block 404, and receives from the block 404 a feedback signal having an output response (e.g., gamma magnitude squared) 408.

[0047] In various embodiments, the output response 408 from the process dynamics block 404 represents the system 400 response to the frequency 406. For example, the output response 408 may be an output measurement (or a derivative thereof) associated with a load variable (e.g., a post-match power measurement), an output measurement (or a derivative thereof) associated with an RF generator, etc.

[0048] 4, the frequency 406 is adjusted based on historical frequency values ​​and corresponding output response values. For example, a rolling buffer of historical data for both the frequency actuator output and the corresponding output response may be maintained. Thus, in various embodiments, the frequency controller 402 may include a buffer 414 for maintaining a value for the frequency 406 and a buffer 416 for maintaining a corresponding value for the output response 408. In various embodiments, the buffers 414, 416 may be portions of a computer-readable medium, such as memory hardware, used herein. While the frequency controller 402 is shown as including the buffers 414, 416, it should be appreciated that the buffers 414, 416 may be external to the frequency controller 402.

[0049] In various embodiments, the power supply system 400 may include a configurable delay module 420 between the frequency controller 402 and the buffer 414. In such embodiments, the frequency actuator signal having the frequency 406 passes through the configurable delay module 420 before reaching the buffer 414. In this manner, the configurable delay module 420 may apply an appropriate delay (if necessary) to the frequency actuator signal to account for possible delays associated with the process dynamics block 404 (e.g., the actuators in block 404) and their output responses. In various embodiments, the delay may be zero. In other words, the frequency 406 may pass through the configurable delay module 420 without any delay applied. In other embodiments, the delay may be set to a defined value. In such embodiments, the set delay may be determined experimentally or analytically based on known or determined delays associated with the process dynamics block 404 and its output response.

[0050] The gradient estimator module 412 retrieves the frequency 406 and output response 408 values ​​from the buffers 414, 416 and then estimates the local gradient 418 of the cost function (e.g., cost functions 302, 310 of FIGS. 3A-3B) based on those values. For example, as described further herein, the buffered information may be used to fit a linear model, which effectively calculates an estimate of the local gradient. The gradient estimator module 412 outputs a gradient signal containing the estimated gradient 418 to the frequency optimizer module 410, which then determines a new frequency 406 for the frequency actuator signal based on the gradient 418 that moves the output response (or cost) toward a minimum or maximum point. Thus, for the ESC approach of FIG. 4, information along the natural tune trajectory is leveraged to estimate the local gradient without requiring the injection of sinusoidal perturbation signals into the system.

[0051] 5A-5B show plots 500A, 500B of a quadratic cost function 502 as a function of output response 408 (gamma modulus squared) and frequency 406 (actuator frequency) of FIG. 4. In FIGS. 5A-5B, function 502 can be represented by a frequency response curve.

[0052] 5A , points 504, 506, 508, and 510 along function 502 are determined based on the corresponding values ​​of frequency 406 and output response 408 in buffers 414 and 416. For example, point 504 (e.g., the first point) represents a frequency value of approximately 61.75 MHz and a corresponding output response of approximately 0.775, point 506 (e.g., the second point) represents a frequency value of approximately 61.5 MHz and a corresponding output response of approximately 0.75, point 508 (e.g., the third point) represents a frequency value of approximately 61 MHz and a corresponding output response of approximately 0.725, and point 510 (e.g., the fourth point) represents a frequency value of approximately 60.75 MHz and a corresponding output response of approximately 0.7. A line 512 is fitted according to points 504, 506, 508, and 510 and represents the local slope of function 502.

[0053] 5A-5B, it is desired to move the output response or gamma magnitude squared toward a minimum. Thus, after the local gradient is estimated, the frequency optimizer module 410 may adjust the frequency in steps on the opposite side of the gradient toward the minimum of gamma magnitude squared (represented by arrow 514), as shown in FIG.

[0054] 5B, points 516, 518, 520, 522 along function 502 are determined based on new values ​​of frequency 406 and output response 408 in buffers 414, 416 collected as the frequency and output response change. New local slopes of function 502 along points 516, 518, 520, 522 can be (again) determined based on a line 524 fitted according to points 516, 518, 520, 522.

[0055] In various embodiments, the frequency optimizer module 410 may adjust the frequency in the wrong direction, such as away from the gamma magnitude-squared minimum, as represented by dashed arrow 530. This can occur for a variety of reasons, which are further described herein. In such an example, the frequency controller 402 quickly adjusts and corrects direction by estimating the local slope based on newly collected values ​​of the frequency 406 and the output response 408 along the path indicated by dashed arrow 530 and adjusting the frequency 406 accordingly.

[0056] In other embodiments, a disturbance may trigger the frequency optimizer module 410 to adjust the frequency in the wrong direction, such as away from the gamma magnitude squared minimum, and / or possibly cause the frequency to move in the wrong direction. For example, Figure 6 shows various waveforms from such a scenario. In particular, Figure 6 shows waveforms 602, 604, and 606, which represent, respectively, the frequency 406 of the frequency actuator signal generated by the frequency controller 402, the output response (gamma magnitude squared) 408 of the system based on that frequency, and pulses.

[0057] As shown, the waveforms 602, 604 are optimal prior to the state transition. In other words, the frequency optimizer module 410 determines the optimal frequency of the frequency actuator signal, driving the output response to a minimum point. The state transition acts as a disturbance in the system, causing the output response waveform 604 to move away from its optimal position. At this point, the frequency waveform 602 remains unchanged because the system is in a defined hold-off period (e.g., the time period during which the frequency controller is held idle at the state transition of the pulse). After the hold-off period, the frequency waveform 602 begins to move, causing the output response waveform 604 to initially move in the wrong direction (e.g., away from the minimum point). However, as can be seen in FIG. 6 , only after several iterations to the pulse can the frequency controller 402 again find the optimal frequency of the frequency actuator signal to drive the output response to a minimum point.

[0058] 4, buffers 414, 416 of FIG. 4 and / or other buffers disclosed herein may be implemented in various ways. For example, buffers 414, 416 of FIG. 4 may be implemented for an entire pulse (e.g., pulse P1, pulse P2 of FIG. 2), a state of a pulse (e.g., state S1 of pulse P1 of FIG. 2), each state of multiple pulses (e.g., state S1 of each pulse P1, P2 of FIG. 2), etc.

[0059] For example, if a non-stratified approach is desired, the buffers 414, 416 may be implemented for an entire pulse that includes multiple states. In other words, buffering of the frequency values ​​406 and output response values ​​408 is with each pulse. This may be desirable in scenarios where the pulse includes a large number of states (e.g., six or more).

[0060] In other embodiments, a layered approach may be desired. In such an example, a buffer 414, 416 may be implemented for each state of one or more pulses. In other words, buffering of the frequency value 406 and the output response value 408 is by state. Thus, the buffers 414, 416 may store data from only one state (at a time). This may be desirable in scenarios where the pulse includes a smaller number of states (e.g., five or fewer).

[0061] In various embodiments, one or more other sets of buffers may be implemented. For example, buffers 414, 416 may be implemented for one state (S1) of one or more pulses, and another set of buffers may be implemented for another state (S2) of one or more pulses. Furthermore, if one or more pulses include another state (S3), another set of buffers may be implemented for that state. Additionally, in some embodiments, buffers 414, 416 and / or other sets of buffers may be implemented for other pulse conditions. For example, buffers 414, 416 may be used for periods within the states of a pulse, and another set of buffers may be used for transition periods between states.

[0062] In various embodiments, buffers 414, 416 and / or other buffers disclosed herein may be sized as desired. For example, each buffer may store a fixed (e.g., defined) number of samples, or a variable / dynamic number of samples ranging between 5 and 20. In some embodiments, each buffer may store 5 data samples, 10 data samples, 15 data samples, 20 data samples, and / or another suitable number therebetween.

[0063] The fixed number of samples stored in each buffer may be selected as desired. For example, the selection may result in a trade-off between parameters such as the buffer's noise tolerance and agility. For example, if the buffer stores a large number of samples (e.g., 20), a larger amount of data is available for slope estimation, and the effects of noise become less of a factor due to this larger amount of data. However, with a larger number of samples, each buffer takes longer to adjust to changing operating conditions (e.g., the actual slope of the cost function 502), making the buffer less agile. Conversely, if the buffer stores a smaller number of samples (e.g., 5), the buffer becomes more agile because each buffer takes less time to adjust to new operating conditions. However, in such a scenario, a smaller amount of data is available for slope estimation, and the effects of noise become more of a factor.

[0064] Additionally, the manner in which the buffers are implemented may be a factor in setting the fixed number of samples stored in each buffer. For example, if buffers 414, 416 are used for periods within a pulse state, a longer state, the entire pulse, etc., it may be desirable for the buffers to store a large number of samples (e.g., 20). This will provide robust data for slope estimation that is less susceptible to noise. However, if buffers 414, 416 are used for transition periods between states, a shorter state, etc., it may be desirable for the buffers to store a smaller number of samples (e.g., 5). This will provide a more agile buffer that can quickly adjust to changing operating conditions during such rapid transition periods.

[0065] In various embodiments, buffers 414, 416 and / or other buffers herein may be purged of data. In other words, some or all of the values ​​of frequency 406 and output response 408 in buffers 414, 416 may be erased, moved to another storage location, etc. For example, buffers 414, 416 may be implemented as FIFOs (first in, first out), where one sample (e.g., the oldest sample) is removed each time a new sample is added. In other embodiments, an entire set of samples (or a portion thereof) may be moved to a storage location and then later recalled.

[0066] The purging of values ​​may be based on various parameters. For example, the buffers 414, 416 may purge their stored values ​​in response to the number of stored values ​​reaching a defined number (e.g., 5 samples, 10 samples, 15 samples, 20 samples, etc.). In other examples, the buffers 414, 416 may purge their stored values ​​according to a pulse condition, for example, when a new state starts, when a new pulse starts, during a transition, during a state, etc.

[0067] For example, in one example, buffers 414, 416 are implemented for state S1 of one or more two-state pulses, and another set of buffers is implemented for state S2 of those one or more pulses. In this example, buffers 414, 416 may be purged during state S2, and the other buffer may be purged during state S1. In another example, buffers 414, 416 may be implemented for both state S1 and state S2 of a two-state pulse train. In such an example, values ​​associated with state S1 of a first pulse may be purged (e.g., erased, moved to a storage location, etc.) before buffers 414, 416 store new values ​​associated with state S2 of the first pulse. Then, in state S1 of the next pulse, values ​​associated with state S2 of the first pulse may be purged, and if those values ​​were moved, values ​​associated with state S1 of the first pulse may be recalled to buffers 414, 416.

[0068] In various embodiments, the gradient estimator module 412 may estimate the local gradient in a variety of different ways. For example, the gradient estimator module 412 may estimate the gradient based on various sums of stored frequency 406 and / or output response 408 values. In such examples, the gradient may be estimated according to equations (1)-(6).

[0069]

number

[0070]

number

[0071]

number

[0072]

number

[0073] Δ=N*Sxx-Sx 2 (5)

[0074]

number

[0075] however, x i represents the stored frequency value, y i represents the stored output response value, N is the total number of samples (e.g., 5, 20, etc.), M is the estimated gradient (or slope).

[0076] In other embodiments, the gradient estimator module 412 may estimate the gradient based on the minimum and maximum output response values ​​stored in buffer 416 and the corresponding frequency values ​​stored in buffer 414. This may help to reduce the number of multipliers and accumulators required to calculate the estimated gradient, for example, as compared to equations (1)-(6). Such a reduction may be desirable (and may be necessary) in FPGA-based applications. In such an example, the estimated gradient (or slope), M, may be estimated according to equation (7).

[0077]

number

[0078] however, max(y) is the largest (or maximum) output response value stored in buffer 416; min(y) is the smallest (or minimum) output response value stored in buffer 416; X max(y) is the frequency value stored in buffer 414 corresponding to max(y), X min(y) is the frequency value stored in buffer 414 that corresponds to min(y). In such instances, the actual minimum and maximum output response values ​​in buffer 416 may need to be selected from other stored values ​​or possibly calculated.

[0079] In various embodiments, the slope estimator module 412 may estimate or calculate only the sign of the local slope, but not its amplitude. In other words, the slope estimator module 412 may estimate whether the stored frequency 406 values ​​and output response 408 values ​​exhibit a positive or negative slope along the cost function. In such an example, the frequency optimizer module 410 may generate and output a frequency actuator signal having a new frequency 406 based on the sign of the local slope, thereby moving the output response (or cost) toward a minimum or maximum point.

[0080] In various embodiments, the buffered data may be subsampled and / or filtered before the gradient estimator module 412 estimates the local gradients. For example, the gradient estimator module 412 and / or the frequency controller 402 may include one or more boxcar and / or median filters for such implementations.

[0081] In various embodiments, buffers 414, 416 and / or other buffers herein may be empty. This may occur, for example, upon startup of system 400, such as a cold start where no power is supplied to the load. In other examples, when defined pulse conditions change (e.g., a recipe change that causes the pulse state to change, the pulse period to change, the duty cycle to change, the pulse repetition rate to change, etc.), such as when transitioning from a continuous wave mode to a pulsed mode, the buffers may be empty after purging data. If buffers 414, 416 and / or other buffers herein are empty, the slope estimator module 412 cannot estimate the slope based on the stored values. Several options are available for dealing with this scenario.

[0082] For example, according to various embodiments, the slope estimator module 412 can estimate the slope based on one or more defined operating parameters. For example, the slope estimator module 412 can assume initial conditions for the slope at the initial movement of the frequency and corresponding output response. Then, when the buffers 414, 416 are filled with new frequency 406 and output response 408 values, the slope estimator module 412 can estimate the slope using available operating parameters, such as a preset starting frequency, an initial gamma magnitude-squared measurement, specific pulse conditions, etc. As described herein, any inaccuracies in this initial assumption can be quickly overcome, as the buffered tune trajectory data can provide accurate slope measurements. In various embodiments, a lookup table based on the preset starting frequency, initial gamma magnitude-squared measurement, specific pulse conditions, or other factors for selecting the initial starting slope can be employed.

[0083] In other embodiments, a series of perturbations may be injected around the start frequency to prefill the buffers 414, 416 with data. The perturbations may include, for example, a ramp signal, a pseudo-random binary sequence, white noise, etc. The slope estimator module 412 can first estimate the slope based on the perturbations and then rapidly step toward the optimal tuning frequency as described herein.

[0084] In various embodiments, the frequency controller 402 may have difficulty frequency tuning when reaching or approaching an optimal tuning point (e.g., when the output response reaches or approaches a minimum or maximum point). For example, as the optimal tuning point or target frequency gets closer, the slope of the response curve or cost function approaches zero. As a result, there is less and less movement in the actuator frequency, which can create problems with slope estimates using buffered data. Several options are available to address this scenario.

[0085] For example, according to various embodiments, the slope estimator module 412 can force or possibly set the estimated slope to zero, which effectively stops the frequency optimizer module 410 from moving the actuator. When the absolute value of the estimated slope falls below or meets a defined threshold, the estimated slope may be set to zero. In various embodiments, the value of the threshold may be selected, determined, etc., depending on, for example, the RF generator and the operating conditions of the system 400. For example, the threshold may be a value of 0.015 gamma modulus squared per kHz (e.g., a slope of 1.5e-5), 0.015 gamma modulus squared per MHz (e.g., a slope of 1.5e-8), or another suitable value based on the RF generator and operating conditions.

[0086] If a disturbance occurs that causes the output response 408 to move away from its optimal position, the frequency optimizer module 410 may be restarted. For example, if the change in the output response value (gamma magnitude squared) exceeds a defined threshold from which this stop condition was exceeded, the frequency optimizer module 410 may be restarted. Examples of thresholds include 1%, 5%, 10%, or another suitable percentage (e.g., 1 percent difference from the stop condition) of the output response value when the actuator was stopped. In such a scenario, some form of initialization scheme may be required to seed the initial movement from the off condition. For example, the last slope value estimated before the estimated slope was set to zero may be used. Alternatively, one of the exemplary options described above for filling an empty buffer may be employed. In yet other embodiments, a separate defined restart slope other than that used at startup (e.g., cold start) may be used.

[0087] In other embodiments, the slope estimator module 412 may impose a lower limit on the absolute value of the estimated slope. In other words, the slope estimator module 412 may clamp the estimated slope to a defined clamping threshold in response to the estimated slope reaching or falling below that value. For example, the clamping threshold may be 0.015 gamma magnitude squared (e.g., a slope of 1.5e-5) per kHz, 0.015 gamma magnitude squared (e.g., a slope of 1.5e-8) per MHz, or another suitable value based on the RF generator and operating conditions. Clamping the estimated slope causes the frequency controller 402 to effectively “dither” around the target frequency (corresponding to the minimum or maximum point of the output response). However, such dithering may not be noticeable (or minimally noticeable) in the content of the output response (gamma magnitude squared) 408 value and the frequency 406 value if the clamping threshold is small enough.

[0088] In various embodiments, the clamping threshold may be based on various operating conditions. For example, the clamping threshold may be based on power level, pulsing configuration, operating frequency, etc. This may allow, for example, to adjust the amount of allowable dither in the actuators and outputs based on one or more operating conditions rather than having a single value.

[0089] 7 shows a plot 700 of a frequency waveform 702 in which the estimated slope is clamped to a defined threshold (e.g., a slope of 1.5e-8) as described above. As shown, the tuning frequency experiences minimal steady-state dither around the target frequency.

[0090] In another embodiment, when the output of frequency controller 402 reaches or approaches an optimal tuning point (e.g., when the output response reaches or approaches a minimum or maximum point), a random signal, such as a pseudo-random binary sequence, white noise, or the like, may be added to the output of frequency controller 402. This causes frequency 406 to dither near the target frequency, ensuring that the estimated slope does not become degraded near the target frequency. While this approach requires a persistent signal to be injected into frequency 406, the signal is random and not sinusoidal. Therefore, the random signal will have a much smaller impact (e.g., less noticeable) on steady-state performance compared to a monotonic sinusoidal signal.

[0091] 8 illustrates an example of a power supply system 800 including an RF generator 810 that implements the ESC-based approach described herein. As shown, the power supply system 800 provides an output to a match network 812, which provides an output to a load 814, such as a nonlinear load or a plasma chamber.

[0092] The RF generator 810 includes a power controller 816, a power amplifier 818, and a sensor 820. The sensor 820 may be implemented as one of a voltage / current sensor (VI sensor) or a directional coupler, as described above. The power controller 816 generates an operating signal that is input to the power amplifier 818.

[0093]

number

[0094] Output.

[0095]

number

[0096] The signal represents a power control signal responsive to the feedback signal.

[0097]

number

[0098] , which generates an output RF signal to a sensor 820 as commanded by the match network 812. The sensor 820 outputs the RF signal to a match network 812 for application to a load 814. The sensor 820 outputs feedback signals X, Y to a block 822. In various embodiments, the block 822 may be a scaling or calibration module that scales X and Y to output predetermined electrical parameters. The block 822 may also include a forward power value

[0099]

number

[0100] to the summer 824. The summer 824 also receives a power set point input and outputs the power set point input and the forward power value

[0101]

number

[0102] The difference between (for example, the error e fb ) is determined. fb is input to the power controller 816, and the signal

[0103]

number

[0104] Block 822 is also used to determine the desired adjustment to gamma magnitude squared (|Γ| 2) (e.g., output response). In various embodiments, block 822 may instead output gamma magnitude (gamma mag) (e.g., the magnitude of the reflection coefficient |Γ|), and another module, such as a squaring module, receives the gamma magnitude and calculates the gamma magnitude squared (|Γ| 2 ) can be output.

[0105] 8, RF generator 810 further includes one or more buffers 826, one or more buffers 828, a slope estimator 830, and a control block or controller 832. Buffers 826, 828, slope estimator 830, and control block 832 of FIG. 8 are similar to buffers 414, 416, slope estimator module 412, and controller 410 of FIG. 4 and may function in a similar manner. In particular, in FIG. 8, control block 832 (e.g., integrator D esc (z)) is the frequency control or frequency differential signal input to the power amplifier 818

[0106]

number

[0107] The gradient estimator 830 estimates the local gradient of the cost function and generates a gradient signal u input to a control block 832. grad The buffer 826 generates the frequency control signal

[0108]

number

[0109] , and buffer 828 receives and stores the output response (gamma magnitude squared) values.

[0110] In operation, the control block 832 calculates the slope signal u provided by the slope estimator 830. grad Based on the estimated local gradient at

[0111]

number

[0112] For example, the local gradient (or slope) of a cost function (e.g., cost functions 302, 310 of FIGS. 3A-3B, cost function 502 of FIGS. 5A-5B, etc.) may indicate the direction of actuator frequency adjustment needed to move toward a desired minimum or maximum point of the cost function. Thus, based on the estimated local gradient, control block 832 generates a control signal (

[0113]

number

[0114] Then, the buffers 826 and 828 adjust the frequency of the control signal

[0115]

number

[0116] Buffers 826, 828 receive and store the new frequency (u) value of , and the system response (in the form of gamma magnitude squared) to the new frequency.

[0117]

number

[0118] Each new frequency (u) value of and each response (in the form of gamma magnitude squared) to that frequency may be received and stored.

[0119] A gradient estimator 830 estimates the local gradient of the cost function based on the stored frequency (u) and output response (gamma magnitude squared) values ​​in buffers 826, 828. This estimate may be calculated in any suitable manner, such as by any one of the example methods disclosed herein.

[0120] Control Signal

[0121]

number

[0122] can be a complete frequency control signal (center frequency and AFT offset) or just an automatic frequency tuning (AFT) offset from the center frequency. In various non-limiting embodiments, if the system center frequency is 13.56 MHz, then the signal

[0123]

number

[0124] may represent an offset from 13.56 MHz to allow for automatic frequency tuning, or may be the desired output frequency, for example 13.58 MHz.

[0125] In various other embodiments, a control signal 834 may be output to the match network 812. In such an example, the control signal 834 may control an impedance tuning actuator, such as a reactive component embodied as a capacitor or inductor, to vary the reactance of the match network 812. In various embodiments, the control block 832 may output the control signal 834 as shown in FIG. 8. In other examples, the control signal may be output from another suitable control module in the RF generator 810, from an external control module, etc.

[0126] The buffers 826, 828 may be implemented in any suitable manner, including any one of the examples provided herein. For example, each buffer 826, 828 may store a fixed (e.g., defined) number of samples, as described above. Furthermore, buffers 826, 828 may be implemented for an entire pulse (e.g., pulse P1, pulse P2 in FIG. 2), a state of a pulse (e.g., state S1 of pulse P1 in FIG. 2), each state of multiple pulses (e.g., state S1 of each pulse P1, P2 in FIG. 2), etc. In various embodiments, additional buffers may be implemented as described above.

[0127] Additionally, in some embodiments, other parameters may be stored in buffers 826, 828 and / or other buffers associated with RF generator 810. For example, data from match network 812 may be received and stored in a buffer. Such data may include, for example, a value of an impedance tuning actuator associated with match network 812. In such an example, control block 832 may generate a control signal 834 if it is determined that match network 812 can effectively make adjustments to improve impedance matching.

[0128]

number

[0129] If not, the control block 832 may subsequently adjust the control signal as described herein.

[0130]

number

[0131] The frequency of the signal can be adjusted.

[0132] In various embodiments, the output response may be driven toward a desired minimum or maximum point based on different slopes. For example, the slope estimator 830 may be configured to use a control signal, as described herein.

[0133]

number

[0134] and the corresponding output response values. Additionally, slope estimator 830, or another suitable control module within or external to RF generator 810, may estimate another slope based on the impedance tuning actuator values ​​(e.g., reactive component positions, varying reactive component setpoints, etc.) and the corresponding output response values. Control block 832 (and / or another suitable control module) may then receive both estimated slopes and determine which of the slopes is the steepest (or largest). Control Signal

[0135]

number

[0136] If the slope based on the frequency value of is greater, the control block 832 controls the control signal

[0137]

number

[0138] However, if the slope based on the impedance tuning actuator value is larger, control block 832 may rely on that slope to adjust the control signal 834 (provided to matching network 812). By relying on the maximum slope, the output response may be moved more quickly toward the desired minimum or maximum point.

[0139] According to various embodiments, various portions of RF generator 810 may be considered to cooperate to define a frequency controller, such as an extremum-seeking frequency controller. For example, in various embodiments, the frequency controller may include all or a portion of control block 832. In other embodiments, the frequency controller may include all or a portion of, for example, control block 832, slope estimator 830, buffers 826, 828, etc. Additionally, according to various embodiments, various or all of the control elements of FIG. 8 may be implemented using controllers such as controllers 20a, 20b, 20′ of FIG. 1. For example, in FIG. 8, portions or all of power controller 816, control block 822, control block 832, buffers 826, 828, and / or slope estimator 830 may be implemented as controllers 20a, 20b, 20′ of FIG. 1.

[0140] 9 shows a plot 1100 comparing output responses for two different ESC techniques over time. Specifically, plot 1100 includes an output response (gamma magnitude squared) 1102 using an ESC technique disclosed herein (e.g., estimating local slopes based on previous frequency and output response values), an output response 1104 using a typical ESC technique (e.g., estimating local slopes based on a sinusoidal perturbation signal), and a pulse train 1106. As shown, pulse train 1106 consists of two-state pulses, each with a first state S1 (shorter state) having a duty cycle of approximately 10-20% and a second state S2 (longer state) having a duty cycle of approximately 80-90%.

[0141] As shown in FIG. 9 , output response 1102 has several advantages over output response 1104. For example, the time for output response 1102 to reach or converge to an optimal value (e.g., a minimum point) is much shorter compared to output response 1104. Specifically, output response 1102 reaches its optimal value in approximately one pulse in state S2 and approximately three pulses in state S1. Output response 1102 converges to its optimal value faster in state S2 compared to state S1 because, for example, more data (e.g., more frequency values ​​and output response values) are collected during the wider state S2. This allows more opportunity to make corrections to the collected data. In contrast, output response 1104 reaches its optimal value in approximately 15 pulses in both states S1 and S2.

[0142] Additionally, output response 1102 experiences less dither (e.g., wiggle or ripple) at its optimum value than output response 1104. For example, output response 1104 experiences more dither than output response 1102 due to an injected sinusoidal perturbation signal used in typical ESC techniques. The ESC technique used to obtain output response 1102 does not include this sinusoidal perturbation signal.

[0143] In various embodiments, the systems and methods herein may implement various control processes after estimating the slope, such as with the slope estimator module 412 of Figure 4, the estimator controller 830 of Figure 8, etc. For example, after estimating the slope, the systems and methods herein may implement any one of the control processes / systems described with respect to Figures 18-22 in U.S. Patent No. 10,741,363.

[0144] FIG. 10 illustrates a control module 1200. The control module 1200 incorporates various components of FIGS. 1, 4, and 8. The control module 1200 may include an amplitude control module 1202, a frequency control module 1204, a match network control module 1206, a slope estimator module 1208, a frequency tuning module 1210, and a cost determination module 1212. In various embodiments, the control module 1200 includes one or more processors that execute code associated with modules 1202, 1204, 1206, 1208, 1210, and 1212. The operation of one or more of modules 1202, 1204, 1206, 1208, 1210, and 1212 is described below with respect to the methods of FIGS. 11-15. Additionally, in various embodiments, the operation of one or more of modules 1202, 1204, 1206, 1210, and 1212 is as described with respect to the methods of FIGS. 18-22 in US Pat. No. 10,741,363.

[0145] For a further defined structure of controllers 20a, 20b, and 20′ in FIG. 1 and / or the various control elements in FIGS. 4 and 8, see the flowcharts in FIGS. 11-15 provided below, the flowcharts in FIGS. 18-22 of U.S. Pat. No. 10,741,363, and the definition for the term “module” provided below. The systems disclosed herein can be operated using numerous methods, examples, and various control system methods, some of which are illustrated in FIGS. 11-15. The following operations are primarily described with respect to the implementations of FIGS. 1, 4, and 8, but the operations can be readily modified to apply to other implementations of the present disclosure. The operations can be performed iteratively. While the following operations are shown and primarily described as being performed sequentially, one or more of the following operations can be performed while one or more of the other operations are being performed.

[0146] 11 shows a flowchart of a control process 1300 for slope estimation in an RF generator, such as RF generator 810 of FIG. 8. In control process 1300, a slope is estimated based on minimum and maximum output response values ​​and corresponding frequency values. Control begins at block 1302, where initialization occurs. Control proceeds to blocks 1304 and 1306, where one or more frequency values ​​and one or more output response values ​​are received in a buffer, such as buffers 826 and 828. Control then proceeds to blocks 1308-1312.

[0147] At block 1308, control selects a set of output response values ​​from buffer 828. At blocks 1310 and 1312, control then sets the maximum output response value to max[y] and the minimum output response value to min[y]. Control then passes to blocks 1314-1318.

[0148] At block 1314, control selects a set of frequency response values ​​from buffer 826. At blocks 1316 and 1318, control sets Xmax[y] to the frequency response value corresponding to the maximum output response value and Xmin[y] to the frequency response value corresponding to the minimum output response value. Control then passes to block 1320.

[0149] At block 1320, control calculates an estimated gradient (or slope) of the cost function based on max[y], min[y], Xmax[y], and Xmin[y] according to equation (7) above. Control then proceeds to block 1322. At block 1322, control optionally purges some or all of the data in the buffers 826, 828. For example, some or all of the frequency and output response values ​​stored in the buffers 826, 828 may be erased, moved to another storage location, etc. In various embodiments, the buffers 826, 828 may be implemented as FIFOs (first in, first out), where one sample (e.g., the oldest sample) is removed each time a new sample is added. Control then proceeds to block 1324.

[0150] In block 1324, control determines whether any new frequency values ​​and output response values ​​are received, stored, etc., in buffers 826, 828. If so, control returns to block 1308, where new output response values ​​are selected. If not, control may proceed to block 1326, thereby ending process 1300 (as shown in FIG. 11 ), or may return to block 1324 (e.g., after waiting a period of time).

[0151] 12 shows a flowchart of another exemplary control process 1400 for slope estimation in an RF generator, such as RF generator 810 of FIG. 8. In control process 1400, a slope is estimated based on various sums of stored frequency values ​​and / or output response values. Control begins at block 1402, where initialization occurs. Control proceeds to block 1404, where one or more frequency values ​​and one or more output response values ​​are received in first and second buffers, such as buffers 826 and 828. Control then proceeds to block 1406. In block 1406, control determines (e.g., counts, etc.) the total number (N) of frequency values ​​in a first buffer, such as buffer 826, or output response values ​​in a second buffer, such as buffer 828. Each buffer contains the same number of values.

[0152] Control then proceeds to blocks 1408-1426. In block 1408, control selects a frequency value from buffer 826. In block 1410, control sums the frequency values ​​according to equation (1) above and sets the summed value to Sx. In block 1412, control selects an output response value from buffer 828. In block 1414, control sums the output response values ​​according to equation (2) above and sets the summed value to Sy.

[0153] The control squares each frequency value in buffer 826 in block 1416 according to equation (3) above, and then sums the squared values ​​in block 1418. The control then sets the sum of the squared values ​​to Sxx. In block 1420, the control multiplies each frequency value by its corresponding output response value. The control sums the multiplied values ​​in block 1422 according to equation (4) above. The control then sets the sum of the multiplied values ​​to Sxy. In block 1424, the control calculates delta (Δ) according to equation (5) above. In block 1426, the control calculates the estimated gradient (or slope) of the cost function according to equation (6) above.

[0154] Control then passes to block 1428, where the data in buffers 826, 828 is optionally purged, for example, as described above with reference to block 1322 of Figure 11. Control then passes to block 1430.

[0155] In block 1430, control determines whether any new frequency and output response values ​​are received, stored, etc. in buffers 826, 828. If so, control returns to block 1406. If not, control may proceed to block 1432, thereby terminating process 1400 (as shown in FIG. 12 ), or may return to block 1430 (e.g., after waiting a period of time).

[0156] 13 shows a flowchart of a control process 1500 for gradient estimation in an RF generator, such as RF generator 810 of FIG. 8, for example, when buffers 826, 828 are empty. Control begins at block 1502, where initialization occurs. Control proceeds to block 1504.

[0157] In block 1504, control determines whether the buffers 826, 828 contain any frequency and power response values. For example, as described above, the buffers 826, 828 may be empty (e.g., no frequency or power response values) upon start-up of the RF generator 810, after a data purge, after a pulse condition change, after a transition from continuous wave mode to pulsed mode, etc. If the buffers 826, 828 contain values, control proceeds to block 1506.

[0158] At block 1506, control estimates the gradient of the cost function based on the stored frequency values ​​and output response values. This may be done according to any one of the gradient estimation examples described herein. Control then returns to block 1504.

[0159] At block 1504, if the buffers 826, 828 do not contain values, control proceeds to block 1508. At block 1508, control estimates the gradient of the cost function according to another suitable method. For example, the gradient may be estimated based on one or more defined operating parameters, a set of perturbations (e.g., white noise, etc.), etc., as described herein. Control then proceeds to block 1510.

[0160] At block 1510, control receives the new frequency and output response values ​​in buffers 826, 828. Control then returns to block 1506, where control estimates a new gradient of the cost function based on the newly stored frequency and output response values.

[0161] 14 shows a flowchart of a control process 1600 for gradient estimation in an RF generator, such as RF generator 810 of FIG. 8, for example, when the output response reaches or approaches an optimum point (e.g., a minimum or maximum point of a cost function). Control begins at block 1602, where initialization occurs. Control proceeds to block 1604, where the gradient of the cost function is estimated based on stored frequency values ​​and output response values, as described herein. Control then proceeds to block 1606.

[0162] In block 1606, control determines whether the estimated slope is less than or equal to a defined threshold. If not, control proceeds to block 1614. Otherwise, control proceeds to block 1608, where the value of the slope is set to 0. Control then proceeds to block 1610.

[0163] In block 1610, the control detects whether a disturbance has occurred in the system. For example, the control may determine whether the output response has moved away from its optimal point. In various embodiments, the control may make this determination based on whether the output response has moved away from its optimal point by a defined threshold, as described herein. If not, control returns to block 1610. Otherwise, control proceeds to block 1612.

[0164] At block 1612, control again estimates the slope. For example, at block 1612, control may estimate the slope based on the last slope value estimated before the slope was set to 0 at block 1608. In other embodiments, at block 1612, the slope may be estimated based on one or more defined operating parameters, a series of perturbations (e.g., white noise, etc.), as described herein.

[0165] Control then proceeds to block 1614. In block 1614, control receives the new frequency and output response values ​​in buffers 826, 828. Control then returns to block 1604, where control estimates a new gradient of the cost function based on the newly stored frequency and output response values.

[0166] 15 shows a flowchart of a control process 1700 for another gradient estimation in an RF generator, such as RF generator 810 of FIG. 8, for example, when the output response reaches or approaches an optimum point (e.g., a minimum or maximum point of the cost function). Control begins at block 1702, where initialization occurs. Control proceeds to block 1704, where the gradient of the cost function is estimated based on stored frequency values ​​and output response values, as described herein. Control then proceeds to block 1706.

[0167] In block 1706, control determines whether the estimated slope is less than or equal to a defined threshold. If not, control proceeds to block 1710. Otherwise, control proceeds to block 1708, where the absolute value of the estimated slope is clamped to the threshold. This effectively clamps the control signal

[0168]

number

[0169] This causes the frequency of the output signal to dither around the target frequency (corresponding to the minimum or maximum point of the output response). Control then passes to block 1710.

[0170] At block 1710, control receives the new frequency and output response values ​​in buffers 826, 828. Control then returns to block 1704, where control estimates a new gradient of the cost function based on the newly stored frequency and output response values.

[0171] The systems and methods described herein, in various configurations, may provide one or more of the following advantages. For example, the systems and methods described herein may enable estimation of a slope for ESC-based frequency tuning control through the use of stored frequency and output response values, rather than using a continuous sinusoidal perturbation signal as in typical approaches. As a result, the systems and methods improve transient tuning time for ESC-based frequency tuning compared to typical approaches. This improved transient tuning time applies to all pulsing conditions, including low-duty-cycle pulsing. Additionally, the systems and methods improve (and may eliminate) steady-state dither (or oscillation) of the frequency actuator and output response (gamma magnitude squared) compared to typical approaches. Furthermore, the systems and methods reduce the sensitivity of the ESC frequency tuner to other frequency components in the system while also not dispersing the power control loop compared to typical approaches. The systems and methods also simplify the implementation and tuning of ESC-based approaches by eliminating the need for sinusoidal perturbation signals and associated demodulation methods in the feedback signal chain associated with the sinusoidal perturbation signals (e.g., demodulators with appropriate phase delays, high-pass filters, etc.).

[0172] The above description is merely exemplary in nature and is in no way intended to limit the disclosure, its application, or uses. The broad teachings of the present disclosure may be embodied in a variety of forms. Thus, while the present disclosure includes specific examples, the true scope of the present disclosure should not be so limited, as other variations will become apparent upon review of the drawings, the specification, and the following claims. In the specification and claims, one or more steps within a method may be executed in a different order (or in parallel) without altering the principles of the present disclosure. Similarly, one or more instructions stored on a non-transitory computer-readable medium may be executed in a different order (or in parallel) without altering the principles of the present disclosure. Unless otherwise specified, numbering or other labeling of instructions or method steps is done for convenient reference, and not to indicate a fixed order.

[0173] Furthermore, while each of the embodiments is described above as having certain features, any one or more of those features described with respect to any embodiment of the present disclosure may be implemented in and / or combined with any feature of any other embodiment, even if that combination is not explicitly described. In other words, the described embodiments are not mutually exclusive, and one or more of the embodiments permuted with one another remain within the scope of the present disclosure.

[0174] Spatial and functional relationships between elements (e.g., between modules, circuit elements, semiconductor layers, etc.) are described using a variety of terms, including "connected," "engaged," "coupled," "adjacent," "next to," "on top of," "above," "below," and "disposed." Unless expressly described as "direct," when a relationship between a first element and a second element is described in the above disclosure, the relationship may be a direct relationship where no other intervening elements exist between the first and second elements, but may also be an indirect relationship where one or more intervening elements (either spatially or functionally) exist between the first and second elements.

[0175] The phrase "at least one of A, B, and C" should be interpreted to mean a logical (A OR B OR C) using a non-exclusive logical OR, and not to mean "at least one of A, at least one of B, and at least one of C." The term "set" does not necessarily exclude empty sets—in other words, in some situations, a "set" may have zero elements. The term "non-empty set" may be used to indicate the exclusion of empty sets—in other words, a non-empty set will always have one or more elements. The term "subset" does not necessarily require a proper subset. In other words, a "subset" of a first set may be coextensive (equal) with the first set. Furthermore, the term "subset" does not necessarily exclude empty sets—in some situations, a "subset" may have zero elements.

[0176] In the diagrams, the direction of the arrow, indicated by the arrowhead, generally indicates the flow of information (such as data or instructions) relevant to the example. For example, element A and element B exchange various information, and when information sent from element A to element B is relevant to the example, the arrow may point from element A to element B. This unidirectional arrow does not imply that there is no other information sent from element B to element A. Furthermore, in response to information sent from element A to element B, element B may send a request for the information or an acknowledgment of receipt of the information to element A.

[0177] In this application, including the definitions below, the term "module" may be replaced with the term "controller" or the term "circuitry." In this application, the term "controller" may be replaced with the term "module." The term "module" may refer to, be a part of, or include an application specific integrated circuit (ASIC), digital, analog, or mixed analog / digital discrete circuitry, digital, analog, or mixed analog / digital integrated circuitry, combinational logic circuitry, field programmable gate array (FPGA), processor hardware (shared, dedicated, or group) that executes code, memory hardware (shared, dedicated, or group) that stores code to be executed by the processor hardware, other suitable hardware components that provide the described functionality, or a combination of some or all of the above, such as in a system-on-chip.

[0178] The module may include one or more interface circuits. In some examples, the interface circuit may implement a wired or wireless interface that connects to a local area network (LAN) or a wireless personal area network (WPAN). Examples of LANs are the Institute of Electrical and Electronics Engineers (IEEE) Standard 802.11-2020 (also known as the WIFI wireless networking standard) and IEEE Standard 802.3-2018 (also known as the ETHERNET wired networking standard). Examples of WPANs are IEEE Standard 802.15.4 (including the ZIGBEE standard from the ZigBee Alliance) and the BLUETOOTH wireless networking standard from the Bluetooth Special Interest Group (SIG) (including Core Specification versions 3.0, 4.0, 4.1, 4.2, 5.0, and 5.1 from the Bluetooth SIG).

[0179] Modules may communicate with other modules using interface circuits. Although modules may be shown in this disclosure to logically communicate directly with other modules, in various implementations, modules may actually communicate via a communication system. A communication system includes physical and / or virtual networking equipment such as hubs, switches, routers, and gateways. In some implementations, a communication system connects to or traverses a wide area network (WAN) such as the Internet. For example, a communication system may include multiple LANs connected to each other over the Internet or over point-to-point dedicated lines using technologies including multiprotocol label switching (MPLS) and virtual private networks (VPNs).

[0180] In various implementations, the functionality of a module may be distributed among multiple modules connected via a communication system. For example, multiple modules may implement the same function distributed by a load balancing system. In a further example, the functionality of a module may be divided between a server (also known as remote or cloud) module and a client (or user) module. For example, a client module may include a native or web application that runs on a client device and in network communication with a server module.

[0181] Some or all of the hardware features of a module may be defined using a language for hardware description, such as IEEE Standard 1364-2005 (commonly referred to as "Verilog") and IEEE Standard 1076-2008 (commonly referred to as "VHDL"). The hardware description language may be used to fabricate and / or program the hardware circuit. In some implementations, some or all of the features of a module may be defined by a language such as IEEE 1666-2005 (commonly referred to as "SystemC"), which encompasses both code and hardware description, as described below.

[0182] The term code, as used above, may include software, firmware, and / or microcode and may refer to programs, routines, functions, classes, data structures, and / or objects. Shared processor hardware encompasses a single microprocessor that executes some or all code from multiple modules. Group processor hardware encompasses a microprocessor that executes some or all code from one or more modules in combination with additional microprocessors. References to multiple microprocessors encompass multiple microprocessors on discrete dies, multiple microprocessors on a single die, multiple cores of a single microprocessor, multiple threads of a single microprocessor, or combinations of the above.

[0183] Memory hardware may also store data, either along with the code or separately from the code. Shared memory hardware encompasses a single memory device that stores some or all code from multiple modules. An example of shared memory hardware may be a level 1 cache on or near a microprocessor die, which may store code from multiple modules. Another example of shared memory hardware may be persistent storage, such as a solid-state drive (SSD), which may store code from multiple modules. Group memory hardware encompasses a memory device that, in combination with other memory devices, stores some or all code from one or more modules. An example of group memory hardware is a storage area network (SAN), which may store code for a particular module across multiple physical devices. Another example of group memory hardware is the random access memory of each of a set of servers, which, in combination, store code for a particular module.

[0184] The term memory hardware is a subset of the term computer-readable medium. As used herein, the term computer-readable medium does not encompass transient electrical or electromagnetic signals propagating through a medium (such as on a carrier wave), and therefore the term computer-readable medium is considered tangible and non-transitory. Non-limiting examples of non-transitory computer-readable media are non-volatile memory devices (such as flash memory devices, erasable programmable read-only memory devices, or mask read-only memory devices), volatile memory devices (such as static random access memory devices or dynamic random access memory devices), magnetic storage media (such as analog or digital magnetic tape or hard disk drives), and optical storage media (such as CDs, DVDs, or Blu-ray discs).

[0185] The apparatus and methods described in this application may be implemented in part or in whole by a special-purpose computer created by configuring a general-purpose computer to perform one or more specific functions embodied in a computer program. Such apparatus and methods may be described as computerized apparatuses and computerized methods. The functional blocks and flowchart elements described above act as software specifications that can be converted into a computer program by the routine work of a skilled engineer or programmer.

[0186] A computer program includes processor-executable instructions stored on at least one non-transitory computer-readable medium. A computer program may also include or rely on stored data. A computer program may encompass a basic input / output system (BIOS) that interacts with the hardware of a special-purpose computer, device drivers that interact with specific devices of a special-purpose computer, one or more operating systems, user applications, background services, background applications, etc.

[0187] A computer program may include (i) a descriptive statement to be parsed, such as HTML (Hypertext Markup Language), XML (Extensible Markup Language), or JSON (JavaScript Object Notation), (ii) assembly code, (iii) object code generated from source code by a compiler, (iv) source code for execution by an interpreter, (v) source code for compilation and execution by a just-in-time compiler, etc. By way of example only, the source code may be written using syntax from languages ​​including C, C++, C#, Objective C, Swift, Haskell, Go, SQL, R, Lisp, Java®, Fortran, Perl, Pascal, Curl, OCaml, JavaScript®, HTML5 (Hypertext Markup Language Fifth Revision), Ada, ASP (Active Server Pages), PHP (PHP: Hypertext Preprocessor), Scala, Eiffel, Smalltalk, Erlang, Ruby, Flash®, Visual Basic®, Lua, MATLAB®, SIMULINK®, and Python®. [Explanation of symbols]

[0188] 10 RF generator or power supply system, power supply system 12 RF generator 12a Radio Frequency (RF) Generator or Power Supply, RF Generator, Source RF Generator, RF Power Generator 12b Radio Frequency (RF) Generators or Power Supplies, RF Generators, Bias RF Generators, RF Power Generators 14a RF power source or amplifier, RF power source, power amplifier, power source, source RF power source 14b RF power source or amplifier, RF power source, power amplifier, power source, bias RF power source 16a Sensor, Source Sensor 16b sensor, bias sensor 18a Matching network, source matching network 18b Matching network, bias matching network 20a Processor, controller, or control module, power controller or control module, control module, local controller, source controller 20b Processor, controller, or control module, power controller or control module, control module, local controller, bias controller 20' Controller, External or Common Controller 22a, 22b RF power signal 24a, 24b X signal 26a, 26b Y signal 28a, 28b Feedforward or feedback control signal, control signal, feedback control signal, signal 29a, 29b Control signal 30 Control signal, synchronization or trigger signal, trigger signal, trigger or synchronization signal, signal 30' control signal, synchronization or trigger signal, trigger or synchronization signal, signal 32 Load 34 Synchronous Bias Detector 36, 38 Links 40 Pulse synchronous output port 42, 50 digital communication ports 44 RF output ports 48 RF input ports 52 Pulse sync input port 56 Pulse Sync Signal 57 Digital Communication Link 58 RF Control Signals 60 control signal port 70 Pulse Signal 80 RF signals 300A, 300B plot 302, 310 Quadratic cost function, cost function 304 maximum 306, 308, 314, 316 positions 312 min 400 Power Supply System, System 402 Frequency Controller 404 Process Dynamics Block, Block 406 Frequency, New Frequency, Frequency Value 408 Output response (e.g., gamma magnitude squared), output response, output response (gamma magnitude squared), output response value 410 Frequency optimizer module or extremum-seeking frequency module or controller, frequency optimizer module, controller 412 Gradient Estimator Module 414, 416, 826, 828 buffers 418 Local gradient, gradient 420 Configurable Delay Module 500A, 500B, 700, 1100 plots 502 Quadratic Cost Function, Function, Cost Function 504, 506, 508, 510, 516, 518, 520, 522 points 512, 524 line 514 Arrow 530 dashed arrow 602 waveform, frequency waveform 604 waveform, output response waveform 606 Waveform 702 Frequency Waveform 812 Match Network 816 Power Controller 818 Power Amplifier 820 Sensor 822 blocks 824 Adder 832 control blocks 1102 Output response (gamma absolute value squared), output response 1104 Output Response 1106 Pulse train 1200 Control Module 1202 Amplitude control module, module 1204 Frequency Control Module, Module 1206 Match Network Control Module, Module 1208 Gradient Estimator Module, Module 1210 Frequency Tuning Module, Module 1212 Cost Determination Module, Module

Claims

1. 1. A radio frequency (RF) generator for powering a load, comprising: an RF power source configured to generate an output signal at an output frequency; an extremum-seeking frequency controller configured to generate a frequency control signal, the frequency control signal varying the output frequency of the RF power source, the frequency control signal being formed from a slope signal; a gradient estimator configured to generate the gradient signal; Equipped with The frequency of the frequency control signal is adjusted based on the gradient signal; the slope estimator is configured to receive a frequency value of the frequency control signal and a corresponding output response value; The gradient signal is generated based on the frequency value and the output response value.

2. 10. The RF generator of claim 1, further comprising: a first buffer configured to store the frequency value; and a second buffer configured to store the output response value.

3. 3. The RF generator of claim 2, wherein the first buffer and the second buffer are configured to purge at least one of the frequency values ​​and at least one of the output response values.

4. 3. The RF generator of claim 2, wherein the first buffer and the second buffer are configured to store a defined number of the frequency values ​​and the output response values.

5. 5. The RF generator of claim 4, wherein the defined number is a number between 5 and 20.

6. 3. The RF generator of claim 2, further comprising a power controller coupled to the RF power source, the power controller configured to generate pulses to modulate the output signal of the RF power source, and the first buffer and the second buffer configured to store the frequency value and the output response value for the pulses.

7. the RF generator further comprising a power controller coupled to the RF power source, the power controller configured to generate pulses to modulate the output signal of the RF power source; the pulse includes a first state and a second state; 3. The RF generator of claim 2, wherein the first buffer and the second buffer are configured to store the frequency value and the output response value for the first state of the pulse.

8. 8. The RF generator of claim 7, further comprising: a third buffer configured to store the frequency value for the second state of the pulse; and a fourth buffer configured to store the output response value for the second state of the pulse.

9. the first buffer and the second buffer are configured to purge at least one of the frequency values ​​and at least one of the output response values ​​for the first state of the pulse; 8. The RF generator of claim 7, wherein the first buffer and the second buffer are configured to store the frequency value and the output response value for the second state of the pulse after purging the at least one of the frequency values ​​and the at least one of the output response values ​​for the first state of the pulse.

10. the pulse is a first pulse, the power controller is configured to generate a second pulse that includes the first state and the second state; 10. The RF generator of claim 9, wherein the at least one of the frequency values ​​and the at least one of the output response values ​​purged for the first state of the first pulse are recalled to the first buffer and the second buffer for the first state of the second pulse.

11. the gradient estimator is configured to estimate a gradient of a cost function of the RF generator based on the frequency values ​​and the output response values; The RF generator of claim 1 , wherein the gradient estimator is configured to generate the gradient signal based on the estimated gradient.

12. 12. The RF generator of claim 11, wherein the slope estimator is configured to estimate the slope based on a minimum of the output response values, a maximum of the output response values, one of the frequency values ​​corresponding to the minimum of the output response values, and another of the frequency values ​​corresponding to the maximum of the output response values.

13. 12. The RF generator of claim 11, wherein the slope estimator is configured to estimate the slope based on the sum of the frequency values ​​and the sum of the output response values.

14. 12. The RF generator of claim 11, wherein the slope estimator is configured to set the estimated slope to zero in response to the estimated slope being less than or equal to a defined threshold.

15. 15. The RF generator of claim 14, wherein the slope estimator is configured to re-estimate the slope based on at least one of one of the output response values ​​corresponding to when the estimated slope is set to zero, one or more defined operating parameters of the RF generator, or a perturbation signal.

16. 12. The RF generator of claim 11, wherein the slope estimator is configured to, in response to the estimated slope being less than or equal to a defined threshold, clamp the estimated slope to the defined threshold.

17. the slope estimator is configured to estimate a slope at startup of the RF generator based on one or more defined operating parameters of the RF generator or a perturbation signal; The RF generator of claim 1 , wherein the gradient estimator is configured to generate the gradient signal based on the estimated gradient.

18. 1. A method for extremum-seeking frequency control of a radio frequency (RF) generator including an RF power source, comprising: generating a frequency control signal having an adjustable frequency, the frequency control signal varying an output frequency of the RF power source; receiving a frequency value of the frequency control signal and a corresponding output response value; generating a gradient signal based on the frequency value and the output response value, wherein a frequency of the frequency control signal is adjusted based on the gradient signal; A method comprising:

19. 20. The method of claim 18, further comprising storing the frequency values ​​in a first buffer and storing the output response values ​​in a second buffer.

20. 20. The method of claim 19, further comprising purging at least one of the frequency values ​​in the first buffer and at least one of the output response values ​​in the second buffer.

21. 20. The method of claim 19, wherein storing the frequency values ​​in a first buffer and the output response values ​​in a second buffer comprises storing a defined number of the frequency values ​​in the first buffer and a defined number of the output response values ​​in the second buffer.

22. 22. The method of claim 21, wherein the defined number is a number between 5 and 20.

23. 20. The method of claim 19, further comprising generating a pulse to modulate an output signal of the RF power source, and wherein storing the frequency value in the first buffer and the output response value in the second buffer comprises storing the frequency value and the output response value for the pulse.

24. 20. The method of claim 19, further comprising generating a pulse to modulate an output signal of the RF power source, the pulse including a first state and a second state, and wherein storing the frequency value in the first buffer and the output response value in the second buffer comprises storing the frequency value and the output response value for the first state of the pulse.

25. 25. The method of claim 24, further comprising storing the frequency value for the second state of the pulse in a third buffer and storing the output response value for the second state of the pulse in a fourth buffer.

26. 25. The method of claim 24, further comprising: purging at least one of the frequency values ​​in the first buffer and at least one of the output response values ​​in the second buffer; and, after purging the at least one of the frequency values ​​and the at least one of the output response values ​​for the first state of the pulse, storing the frequency value in the first buffer and the output response value in the second buffer for the second state of the pulse.

27. the pulse is a first pulse, 27. The method of claim 26, further comprising generating a second pulse including the first state and the second state; and recalling the purged at least one of the frequency values ​​and the at least one of the output response values ​​for the first state of the first pulse into the first buffer and the second buffer for the first state of the second pulse.

28. 20. The method of claim 18, further comprising estimating a gradient of a cost function of the RF generator based on the frequency value and the output response value, and wherein generating the gradient signal comprises generating the gradient signal based on the estimated gradient.

29. 29. The method of claim 28, wherein estimating the slope comprises estimating the slope based on a minimum of the output response values, a maximum of the output response values, one of the frequency values ​​corresponding to the minimum of the output response values, and another of the frequency values ​​corresponding to the maximum of the output response values.

30. 30. The method of claim 28, wherein estimating the slope comprises estimating the slope based on the sum of the frequency values ​​and the sum of the output response values.

31. 29. The method of claim 28, further comprising the step of setting the estimated gradient to zero in response to the estimated gradient being less than or equal to a defined threshold.

32. 32. The method of claim 31 , further comprising re-estimating the slope based on at least one of one of the output response values ​​corresponding to when the estimated slope is set to zero, one or more defined operating parameters of the RF generator, or a perturbation signal.

33. 29. The method of claim 28, further comprising the step of, in response to the estimated gradient being less than or equal to a defined threshold, clamping the estimated gradient to the defined threshold.

34. 20. The method of claim 18, further comprising estimating a gradient at startup of the RF generator based on one or more defined operating parameters of the RF generator or a perturbation signal, and wherein generating the gradient signal comprises generating the gradient signal based on the estimated gradient.

35. 1. A control system for controlling a radio frequency (RF) generator including an RF power source, comprising: an extremum-seeking frequency controller configured to generate a frequency control signal, the frequency control signal varying an output frequency of the RF power source, the frequency control signal being formed from a slope signal; a gradient estimator configured to generate the gradient signal; Equipped with The frequency of the frequency control signal is adjusted based on the gradient signal; the slope estimator is configured to receive a frequency value of the frequency control signal and a corresponding output response value; The gradient signal is generated based on the frequency value and the output response value.

36. 36. The control system of claim 35, further comprising a first buffer configured to store the frequency value and a second buffer configured to store the output response value.

37. 37. The control system of claim 36, wherein the first buffer and the second buffer are configured to purge at least one of the frequency values ​​and at least one of the output response values.

38. 37. The control system of claim 36, wherein the first buffer and the second buffer are configured to store a defined number of the frequency values ​​and the output response values.

39. 39. The control system of claim 38, wherein the defined number is a number between 5 and 20.

40. 37. The control system of claim 36, wherein the control system further comprises a power controller configured to generate pulses to modulate an output signal of the RF power source, and wherein the first buffer and the second buffer are configured to store the frequency value and the output response value for the pulses.

41. the control system further comprising a power controller configured to generate pulses to modulate an output signal of the RF power source; the pulse includes a first state and a second state; 37. The control system of claim 36, wherein the first buffer and the second buffer are configured to store the frequency value and the output response value for the first state of the pulse.

42. 42. The control system of claim 41, further comprising: a third buffer configured to store the frequency value for the second state of the pulse; and a fourth buffer configured to store the output response value for the second state of the pulse.

43. the first buffer and the second buffer are configured to purge at least one of the frequency values ​​and at least one of the output response values ​​for the first state of the pulse; 42. The control system of claim 41, wherein the first buffer and the second buffer are configured to store the frequency value and the output response value for the second state of the pulse after purging the at least one of the frequency values ​​and the at least one of the output response values ​​for the first state of the pulse.

44. the pulse is a first pulse, the power controller is configured to generate a second pulse that includes the first state and the second state; 44. The control system of claim 43, wherein the at least one of the frequency values ​​and the at least one of the output response values ​​purged for the first state of the first pulse are recalled to the first buffer and the second buffer for the first state of the second pulse.

45. the gradient estimator is configured to estimate a gradient of a cost function of the RF generator based on the frequency values ​​and the output response values; 36. The control system of claim 35, wherein the slope estimator is configured to generate the slope signal based on the estimated slope.

46. 46. ​​The control system of claim 45, wherein the slope estimator is configured to estimate the slope based on a minimum of the output response values, a maximum of the output response values, one of the frequency values ​​corresponding to the minimum of the output response values, and another of the frequency values ​​corresponding to the maximum of the output response values.

47. 46. ​​The control system of claim 45, wherein the slope estimator is configured to estimate the slope based on the sum of the frequency values ​​and the sum of the output response values.

48. 46. ​​The control system of claim 45, wherein the slope estimator is configured to set the estimated slope to zero in response to the estimated slope being less than or equal to a defined threshold.

49. 49. The control system of claim 48, wherein the slope estimator is configured to re-estimate the slope based on at least one of one of the output response values ​​corresponding to when the estimated slope is set to zero, one or more defined operating parameters of the RF generator, or a perturbation signal.

50. 46. ​​The control system of claim 45, wherein the slope estimator is configured to, in response to the estimated slope being less than or equal to a defined threshold, clamp the estimated slope to the defined threshold.

51. the slope estimator is configured to estimate a slope at startup of the RF generator based on one or more defined operating parameters of the RF generator or a perturbation signal; 36. The control system of claim 35, wherein the slope estimator is configured to generate the slope signal based on the estimated slope.

Citation Information

Patent Citations

  • Plasma processing apparatus, plasma processing method, and computer readable storage medium

    JP2009246091A

  • Control method for high-frequency power supply device and high-frequency power supply device

    JP2021132260A

  • Plasma generation device, method for adjusting phase difference, and apparatus for processing substrate employing the same

    KR1020170052062A

  • Impedance matching system and method of operating the same

    US10269540B1

  • Extremum seeking control apparatus and method for automatic frequency tuning for RF impedance matching

    US10741363B1