Recipe generation method, control method, and related apparatus
By using operation identifiers to represent the parameters of the target operation in the recipe editing page, the process of editing and generating process recipes is simplified, solving the problem of complexity and time consumption in the prior art, and realizing efficient process recipe editing and execution.
Patent Information
- Application Number
- PCT/CN2025/094219
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-21
- Filing Date
- 2025-05-12
- Publication Date
- 2025-11-27
AI Technical Summary
Existing technologies have complex and time-consuming methods for generating process formulas, resulting in low editing and execution efficiency, and the time spent on redundant steps affects the process results.
A recipe editing page is provided, which uses operation identifiers to represent the parameter type, start time and duration of the target operation, simplifying the editing and generation process of process recipes. The process recipe records the recipe content in units of target operations, avoiding redundant steps and time.
It simplifies the editing and generation process of process formulas, improves the efficiency of editing and executing process formulas, enhances the user experience, and avoids the adverse effects of redundant steps on process results.
Smart Images

Figure CN2025094219_27112025_PF_FP_ABST
Abstract
Description
A recipe generation method, a control method and related devices TECHNICAL FIELD
[0001] The present application relates to the technical field of semiconductor technology, in particular to the device control technology in the technical field of semiconductor technology, and more particularly to a recipe generation method, a control method and related devices. BACKGROUND
[0002] A recipe is generally used to describe the process steps of a process chamber of a semiconductor process device when processing a process object (such as a wafer), and the design and optimization of a recipe is an important part of semiconductor manufacturing. A good recipe can not only improve the performance and reliability of products, but also improve production efficiency and yield, and reduce costs.
[0003] At present, the recipe generation method in the related art is relatively complex and time-consuming. SUMMARY
[0004] Embodiments of the present application provide a recipe generation method, a control method and related devices to simplify the recipe generation method and improve the efficiency of recipe generation.
[0005] To achieve the above technical purpose, the embodiments of the present application provide the following technical solutions:
[0006] In a first aspect, one embodiment of the present application provides a recipe generation method, comprising:
[0007] In response to a recipe editing operation for a target operation, displaying an operation identifier corresponding to the target operation at a target position of a recipe editing page; the target position is a position targeted by the recipe editing operation, and the target position is used to represent a parameter type, a start time and a duration of the target operation; the operation identifier includes a recipe parameter value corresponding to the parameter type;
[0008] In response to a recipe completion operation, generating a process recipe according to the operation identifier in the recipe editing page.
[0009] In a second aspect, one embodiment of the present application provides a control method applied to a semiconductor process device, comprising:
[0010] Providing a process recipe, which is generated according to the recipe generation method of any one of the above;
[0011] Analyzing the process recipe, and controlling a process chamber of the semiconductor process device to perform a target process according to the analysis result.
[0012] In a third aspect, one embodiment of the present application provides a recipe generation apparatus, comprising:
[0013] an operation response module configured to, in response to a recipe editing operation on a target operation, display an operation identifier corresponding to the target operation at a target position of a recipe editing page; the target position being a position targeted by the recipe editing operation, the target position being used to represent a parameter type, a start time and a duration of the target operation; the operation identifier comprising a recipe parameter value corresponding to the parameter type;
[0014] a recipe generation module configured to, in response to a recipe completion operation, generate a process recipe according to the operation identifier in the recipe editing page.
[0015] In a fourth aspect, one example embodiment of the present application further provides a control apparatus applied to a semiconductor process equipment, the control apparatus comprising:
[0016] a recipe providing module configured to provide a process recipe, the process recipe being generated according to the recipe generation method of any of the above embodiments;
[0017] a recipe analysis module configured to analyze the process recipe, and control a process chamber of the semiconductor process equipment to perform a target process according to an analysis result.
[0018] In a fifth aspect, one embodiment of the present application further provides a semiconductor process equipment, comprising: a process chamber and a controller; wherein,
[0019] the controller is configured to control the process chamber to perform a target process according to the control method of any of the above embodiments.
[0020] In a sixth aspect, one embodiment of the present application further provides a computing device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, the processor implementing the recipe generation method or the control method as described above when executing the computer program.
[0021] In a seventh aspect, one embodiment of the present application further provides a computer readable storage medium, the computer readable storage medium storing a computer program, the computer program being executable on a processor to implement the recipe generation method or the control method as described above.
[0022] In an eighth aspect, an embodiment of the present application provides a computer program product or computer program. The computer program product comprises a computer program stored in a computer readable storage medium. A processor of the computer device reads the computer program from the computer readable storage medium, and the processor implements the steps of the recipe generation method or the control method when executing the computer program.
[0023] As can be seen from the above technical solution, the recipe generation method provided by the embodiment of the present application comprises: in response to a recipe editing operation for a target operation, displaying an operation identifier corresponding to the target operation at a target position of a recipe editing page; the target position is a position to which the recipe editing operation is directed, and the target position is used to represent a parameter type, a start time and a duration of the target operation; the operation identifier comprises a recipe parameter value corresponding to the parameter type; and in response to a recipe completion operation, generating a process recipe according to the operation identifiers in the recipe editing page. That is, the present application provides a recipe editing page, supports recipe editing for a target operation in the recipe editing page, that is, displays an operation identifier corresponding to a target operation at a target position of a recipe editing page in units of target operations, the target position is used to represent the parameter type, the start time and the duration of the target operation; the operation identifier comprises a recipe parameter value corresponding to the parameter type; and after each target operation is displayed in the form of an operation identifier in the recipe editing page, a process recipe can be generated according to the operation identifiers in the recipe editing page. In this way, the method realizes visual editing of the process recipe in units of target operations, without the need for the user to divide the steps in the process recipe, simplifies the editing and generation method of the process recipe, and improves the generation efficiency of the process recipe.
[0024] In addition, generating a process recipe according to the operation identifiers in the recipe editing page can record the recipe content in the process recipe in units of target operations, and there is no need to repeatedly traverse the hardware state in units of process steps when the process recipe is parsed, which is beneficial to improving the parsing and execution efficiency of the process recipe. BRIEF DESCRIPTION OF DRAWINGS
[0025] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the drawings needed to be used in the embodiments or prior art description will be briefly introduced as follows. Obviously, the drawings in the following description are only embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative effort on the basis of the provided drawings.
[0026] FIG. 1 is a configuration table schematic diagram of a process recipe in the related art;
[0027] FIG. 2 is a process recipe schematic diagram in the related art;
[0028] Fig. 3 is a flow diagram of a recipe generation method according to an embodiment of the present application;
[0029] Fig. 4 is a schematic diagram of a recipe editing page according to an embodiment of the present application;
[0030] Fig. 5 is a schematic diagram of another recipe editing interface according to an embodiment of the present application;
[0031] Fig. 6 is a schematic diagram of a process recipe according to an embodiment of the present application;
[0032] Fig. 7 is a flow diagram of a control method according to an embodiment of the present application;
[0033] Fig. 8 is a schematic diagram of a computing device according to an embodiment of the present application. DETAILED DESCRIPTION
[0034] Unless otherwise defined, technical terms or scientific terms used in the embodiments of the present application shall have the ordinary meanings as understood by one of ordinary skill in the art to which the present application pertains. The terms “first”, “second”, and similar terms used in the embodiments of the present application do not denote any order, quantity, or importance, but are merely used to distinguish one element from another.
[0035] Unless otherwise required by context, “plurality” in the present application means “at least two”. “Include”, “includes” or “including” is to be construed as open, inclusive, meaning “including, but not limited to”. In the description of the application, the terms “one embodiment”, “some embodiments”, “exemplary embodiments”, “example”, “specific example” or “some examples” are intended to indicate that the particular feature(s) described in connection therewith include in at least one embodiment or example of the application. The use of such terms in the description are not necessarily intended to denote the same embodiment or example, nor is it intended to exclude other embodiments or examples.
[0036] The technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative work fall within the scope of protection of the present application.
[0037] SUMMARY
[0038] In the related art, a process recipe is edited in the form of a table. Referring to FIG. 1, FIG. 1 shows a table for editing a process recipe. In FIG. 1, the rows represent parameters (Parameter), and the columns represent steps (1-6). In each parameter, Step Name represents a step name, Step End Type represents a step end time, Time represents a step duration, XGasFlowType represents an X gas flow type, XGas represents a flow rate of gas X, and X=A, B, C, D, E, F, G. In each step, DVT represents a gas flow to a dry pump, LC represents a gas in a pipeline, and Dose represents a gas flow to a process chamber. When a user edits a process recipe, the user needs to plan the sequence of operations in advance and needs to clarify how to divide the operations into different steps. That is, when a user edits a process recipe, the user needs to plan the sequence of operations in advance, and then divide the different operations into different steps according to the sequence of operations. For example, in the parameter AGasFlowType (A gas flow type) in FIG. 1, the process recipe can include multiple operations related to the parameter: flowing A gas to a dry pump (DVT) for 1.5 seconds, leaving A gas in a pipeline (LC) for 1 second, and flowing A gas to a process chamber (Dose) for 4 seconds. The user needs to divide the above three operations into different steps in combination with other operations, for example, divide the operation of flowing A gas to a dry pump for 1.5 seconds into two sub-operations (flowing A gas to a dry pump for 1 second and flowing A gas to a dry pump for 0.5 second) and place them in step 1 and step 2, respectively. Such a process recipe editing step is tedious, the editing efficiency is low, and the visibility of the edited process recipe is poor, and the user cannot visually see the relationship between the operations from FIG. 1.
[0039] In addition, the work recipe generated in the above manner is also recorded in units of steps (Step). For example, referring to FIG. 2, FIG. 2 shows a schematic diagram of a process recipe generated in the above manner. In FIG. 2, the rows represent parameters (Parameter), and the columns represent steps (1-2). In each parameter, Step End Cond represents a step end condition, Flow To Chamber represents a gas flow to a process chamber, Purge To Chamber represents a gas flow to a process chamber, but changes an inert gas, that is, purges the process chamber, and RPS Power represents a remote plasma source power. In this process recipe, two steps, step 1 and step 2, are recorded. The process of analyzing the process recipe can include:
[0040] The values of all parameters in step 1 are obtained, and then all the parameters are traversed once, because step 1 is the first step of the process recipe, all the parameters can be determined to be changed, that is, the change of each parameter is recorded as changed; then all the parameters are traversed again, and the parameters that have changed are controlled according to the values of the parameters. The hardware corresponding to the parameters in the recipe, such as RPS (Remote Plasma Source), N2 (nitrogen), Ar1 (argon 1), NF3 (nitrogen fluoride), WF6 (tungsten hexafluoride), Ar2 (argon 2), SiH4 (silane), B2H6 (diborane), H2 (hydrogen) gas path, etc. are executed once. After all the hardware actions are executed, wait for 5 seconds, then obtain all the parameter values of step 2, traverse all the parameters, compare each parameter with the parameters of step 1, Ar1FlowType (argon 1 flow type), Ar1, Ar2FlowType (argon 2 flow type), Ar2, etc. Four parameters have changed, and other parameters are recorded as unchanged, and also marked, then all the parameters are traversed again, Ar1FlowType, Ar1 parameter change corresponds to operating hardware gas path Ar1; Ar2FlowType, Ar2 parameter change corresponds to operating hardware gas path Ar2, other parameters have no change, so no corresponding hardware is operated. After the hardware operation is finished, wait for 5 seconds. Then end the execution of the process recipe. Through the above recipe execution process, it can be found that each step needs to traverse the parameters of each step twice before execution, in order to compare the differences between the two steps, and execute the corresponding hardware operation according to the parameters that have changed in the current step compared with the previous step. This time is called "redundant step time". According to actual observation, this redundant step time may last for 5-10 ms, which not only increases the execution time of the process recipe and reduces the execution efficiency of the process recipe, but also for the steps with short execution time, the ratio of redundant step time to execution time is too large, which may cause the problem that the actual process result deviates too much from the expected process result. For example, the execution time of a step may be 50 ms, and the redundant step time before the step is 10 ms, so the redundant step time accounts for 20% of the execution time of the step, and the influence of the redundant step time on the actual process effect of the step cannot be ignored, which may bring unexpected process results.
[0041] To solve the above problems, the inventors have found that a recipe editing page can be provided, and each target operation can be represented by an operation identifier in the recipe editing page. The target position of the operation identifier represents the parameter type, start time and duration of the target operation, and the recipe parameter value corresponding to the parameter type can be marked in the operation identifier. In this way, in the recipe editing page, the user can edit the process recipe in units of target operations without the need to divide the target operations into different steps, which is beneficial to simplify the complexity of the user editing the process recipe, improve the editing efficiency of the process recipe, and improve the editing and generation efficiency of the process recipe.
[0042] In addition, in the recipe editing page, the target position of the operation identifier represents the parameter type, start time and duration, etc., which can enable the user to intuitively obtain the relationship between the target operations from the recipe editing page, and facilitate the user to check the process recipe through the position relationship between the operation identifiers in the recipe editing page, which is beneficial to improve the user experience.
[0043] Further, the process recipe is generated according to the operation identifier in the recipe editing page, which can record the recipe content in the process recipe in units of target operations, and there is no need to repeatedly traverse the hardware state in units of process steps when the process recipe is parsed, which is beneficial to improve the parsing and execution efficiency of the process recipe, and avoid the adverse effects of redundant step time between steps on the process effect.
[0044] Based on the above concept, the recipe generation method provided by some embodiments of the present application will be described exemplarily below with reference to the accompanying drawings.
[0045] Exemplary method
[0046] Taking the application to the computing device in FIG. 3 as an example, some embodiments of the present application exemplarily illustrate the recipe generation method. The computing device can be a host computer or a slave computer of a semiconductor process device, or a computer independent of the semiconductor process device, etc., which is not limited by the present application. The recipe generation method comprises:
[0047] S301: In response to a recipe editing operation for a target operation, displaying an operation identifier corresponding to the target operation at a target position of a recipe editing page; the target position is a position to which the recipe editing operation is directed, and the target position is used to represent the parameter type, start time and duration of the target operation; the operation identifier includes a recipe parameter value corresponding to the parameter type;
[0048] The target operation can be a component of a semiconductor process (e.g., an etching process, a chemical vapor deposition process, etc.), and specifically, the target operation can include an operation on certain hardware (e.g., a gas path, a radio frequency power source, etc.) of a semiconductor process device, such as changing a gas flow direction / flow rate in the gas path, turning on / off the radio frequency power source, changing a radio frequency power of the radio frequency power source, etc.
[0049] The recipe editing operation can refer to an operation on the recipe editing page, and specifically, can include at least one of a click operation, an operation identifier creation operation, and an information input operation on the recipe editing page.
[0050] The target position can refer to a position in the recipe editing page selected by the recipe editing operation. The target position where the operation identifier of the target operation is located can represent the parameter type, the start time, and the duration of the target operation, so that the user can intuitively and visually understand the relationship between the target operations through the target position of the operation identifier in the recipe editing page, and check the relationship between the target operations in the edited process recipe.
[0051] S302: In response to the recipe completion operation, generating a process recipe according to the operation identifiers in the recipe editing page.
[0052] The recipe completion operation can be a save operation of the user after editing the target operations in the process recipe in the recipe editing page, and the recipe completion operation includes but is not limited to a trigger operation on a save button, a trigger operation on a save shortcut key, etc. After detecting the recipe completion operation of the user, the process recipe can be generated according to the operation identifiers currently configured in the recipe editing page. Since the process recipe is generated based on the operation identifiers of the target operations, the recipe can be recorded in the process recipe in units of target operations.
[0053] As described above, the recipe generation method provided by the embodiments of the present application provides a recipe editing page, and represents the target operations in the recipe editing page by operation identifiers. The target position where the operation identifier is located represents the parameter type, the start time, and the duration of the target operation, and the recipe parameter value corresponding to the parameter type can be marked in the operation identifier. In this way, in the recipe editing page, the user can edit the process recipe in units of target operations without dividing the target operations into different steps, which is beneficial to simplify the complexity of editing the process recipe, improve the editing efficiency of the process recipe, and improve the editing and generation efficiency of the process recipe.
[0054] In addition, in the recipe editing page, the parameters such as the parameter type, the start time and the duration time are represented by the target position where the operation identifier is located, so that the user can intuitively obtain the relationship between the target operations from the recipe editing page, and the user can check the process recipe through the position relationship between the operation identifiers in the recipe editing page, and the user experience is improved.
[0055] Further, the process recipe is generated according to the operation identifier in the recipe editing page, so that the recipe content is recorded in the process recipe in the unit of target operation, and when the process recipe is parsed, the hardware state does not need to be repeatedly traversed in the unit of process step, and the parsing and execution efficiency of the process recipe is improved, and the adverse effects of the redundant step time between steps on the process effect are avoided.
[0056] In order to more intuitively and visually represent each target operation through the operation identifier, in an embodiment of the present application, the recipe editing page includes a plurality of grids arranged in a preset coordinate system, a first coordinate axis of the preset coordinate system represents time, a second coordinate axis of the preset coordinate system represents the parameter type, and the grid is used to represent the unit time.
[0057] The operation identifier includes a control with a non-zero length, the control is marked with a recipe parameter value, and the target position includes a first coordinate, a second coordinate and a third coordinate of the control in the preset coordinate system;
[0058] The first coordinate is a starting position coordinate of the control in the first direction of the preset coordinate system, the first coordinate is used to represent the start time of the target operation corresponding to the control, the second coordinate is a terminal position coordinate of the control in the first direction of the preset coordinate system, and the number of grids between the first coordinate and the second coordinate is used to represent the duration time of the target operation; and the first direction is the extension direction of the first coordinate axis.
[0059] The third coordinate is a coordinate of the control in the second direction of the preset coordinate system, and the third coordinate is used to represent the parameter type; and the second direction is the extension direction of the second coordinate axis.
[0060] Referring to FIG. 4, FIG. 4 shows a schematic diagram of a feasible recipe editing page. In FIG. 4, the first coordinate axis of the preset coordinate system can be a horizontal coordinate axis, and the second coordinate axis can be a vertical coordinate axis. The intersection of the first coordinate axis and the second coordinate axis is the origin. In order to facilitate observation of the relationship between each target operation, the editing of the process recipe can be performed in the same quadrant (for example, the first quadrant) of the preset coordinate system. In FIG. 4, the grid in the preset coordinate system can be used to represent a unit time, which can be configured according to user needs, for example, can be configured as 1s, 10ms, etc. The present application does not make any limitation on this, and the specific configuration is determined according to the actual situation. In an embodiment, the recipe editing operation for the target operation can include at least one of clicking, dragging operation for the control, clicking operation for the target position, information input operation for the control, etc. The control can refer to an element in the recipe editing page. Through the configuration of the properties and position of the control, the control can be used as an operation identifier to represent the target operation in the process recipe, which has the characteristics of being simple and easy to implement.
[0061] In an embodiment, if a control is to be added, the control on the right side of FIG. 4 can be copied / dragged, and the control can be pasted / placed at the target position. The vertical coordinate (i.e., the third coordinate) corresponding to the control can represent the parameter type (for example, AGas parameter, etc.) of the target operation corresponding to the control. The first coordinate and the second coordinate corresponding to the control can represent the start time and the end time of the target operation, respectively. The number of grids occupied by the control can be determined by the first coordinate and the second coordinate, and the number of grids can represent the duration of the target operation. The parameter types corresponding to the first coordinate, the second coordinate, the third coordinate, and the number of grids occupied by the control can all be used as properties of the control. These properties can be automatically generated according to the target position of the control in the preset coordinate system and the length of the control, etc. In addition to these properties, in some embodiments, the control can further include the following properties: control number, which is used to uniquely identify the control. The control number property can be obtained by user editing, or can be automatically generated based on the generation order of the control in the preset coordinate system. The present application does not make any limitation on this.
[0062] By the above manner, the user can directly edit the target operations to be performed in the preset coordinate system according to the requirements in a time sequence and the like without considering how to divide the target operations. The recipe editing page after editing the multiple target operations can refer to FIG. 5. In FIG. 5, XGas Flow Type represents the X gas flow direction type, Xgas represents the flow of gas X, and X=A, B, C, D, E, F, G. In each step, DVT represents the gas flow direction to the dry pump, LC represents the gas in the pipeline, Dose represents the gas flow direction to the process chamber, and Purge represents the gas flow direction to the process chamber but the inert gas is replaced. The numbers on the controls can be used to represent the gas flow. It can be found from FIG. 5 that by editing each target operation in the process recipe in this way, the user can intuitively and visually know the relationship between the target operations through the position relationship between the controls and the properties of the controls in the edited recipe editing page, which not only simplifies the process recipe editing method but also facilitates the user to check the edited process recipe and optimizes the user experience.
[0063] In some embodiments, a feasible way of generating a process recipe is provided. Specifically, in response to a recipe completion operation, a process recipe is generated according to the operation identifiers in the recipe editing page, including:
[0064] traversing the operation identifiers in the recipe editing page to generate a sequence including multiple target operations;
[0065] generating a process recipe based on the sequence including multiple target operations.
[0066] When traversing the operation identifiers in the recipe editing page, the start time of the target operation corresponding to the operation identifier can be traversed. For example, assuming that the target operation with a start time of 0 seconds includes operation A and operation B, and the target operation with a start time of 1 second includes operation C, when generating the sequence including multiple target operations by the traversal method, operation A and operation B with a start time of 0 seconds are traversed first, and then operation C with a start time of 1 second is traversed, and operation C is added to the sequence. In this way, the operation identifiers are traversed according to the start time, and the sequence including multiple target operations can be quickly generated, which is beneficial to simplify the recipe generation method and improve the execution efficiency.
[0067] Specifically, in some embodiments, traversing the operation identifiers in the recipe editing page to generate a sequence including multiple target operations includes:
[0068] traversing the operation identifiers in the recipe editing page, sorting the multiple operation identifiers according to the start time of the target position where the operation identifier is located to obtain a first identifier sequence;
[0069] According to the target operation identifier, a termination operation corresponding to the target operation identifier is inserted in the first identifier sequence to obtain a target identifier sequence; the target operation identifier is an operation identifier whose termination time of a corresponding target operation is not adjacent to a start time of a target operation corresponding to another operation identifier.
[0070] Taking the operation identifier as an example, the generation process of the target identifier sequence is described in combination with FIG. 5. The controls in FIG. 5 are numbered in the order from left to right and from top to bottom, starting from 1, to obtain control 1, control 2, …, control 52. For example, the control in the upper left corner of FIG. 5 is control 1, the control immediately to the right of control 1 is control 2, the control below control 1 is control 5, and so on. The controls are sorted for the first time according to the grid start address of the control in the formula editing page (i.e., the address corresponding to the start time of the control) to obtain a first identifier sequence. In order to clearly display the first identifier sequence, the first identifier sequence is displayed in the form of a table as shown in Table 1 below:
[0071] Table 1: First identifier sequence
[0072] After obtaining the first identifier sequence, according to the target operation identifier, a termination operation corresponding to the target operation identifier is inserted in the first identifier sequence to obtain a target identifier sequence. If one operation identifier (control) is immediately adjacent to another operation identifier (control) on the right, it means that the end time of the operation identifier is the same as the start time of the operation identifier immediately adjacent to it on the right. At this time, no termination operation corresponding to the operation identifier needs to be added. When the hardware is operated, only the action corresponding to the operation identifier needs to be switched to the action corresponding to the operation identifier immediately adjacent to it on the right. For the target operation identifier, since there is no other operation identifier on the right, it means that after the hardware action corresponding to the target operation identifier is completed, there is no next action corresponding to the hardware to be executed. At this time, an end action needs to be inserted for the hardware corresponding to the target operation identifier.
[0073] Still taking FIG. 5 as an example, the grid 18 corresponds to the control set of two records: control 4 and control 8 (i.e., the control 4 and control 8 are target operation identifiers, and the control 4 and control 8 corresponding termination operations need to be inserted), and the end grid of the control 4 and control 8 is 18 (i.e., the end time of the control 4 and control 8 corresponds to the grid 18). The control 10 and control 14 also end at the grid 18, but do not need to add the termination operation corresponding to the control 10 and control 14 (i.e., the control 10 and control 14 are non-target operation identifiers, and the termination operation corresponding to the control 10 and control 14 does not need to be inserted). Because the control 11 and control 15 belong to the same parameter as the control 10 and control 14 (i.e., BGas Flow Type and BGas), and the start of the control 11 and control 15 is the grid 18, which means that when the grid 18, the BGas Flow Type needs to be switched from the action state of the control 10 to the action state of the control 11, so only the action corresponding to the control 11 is executed, and the termination operation corresponding to the control 10 is not executed, so the control 10 does not need to be added to the target identifier sequence, and the control 14 is the same reason.
[0074] The target identifier sequence obtained after inserting the termination operation corresponding to the target operation identifier is shown in Table 2.
[0075] Table 2 target identifier sequence
[0076] Compared with Table 1, at the grid 18, the termination operation corresponding to the control 4 and control 8 is added. In order to show clearly, the grid in Table 2 can be converted into time according to the unit time of the grid representation. If the starting grid (corresponding to the start time) of the control is consistent with the grid in Table 2, the recipe parameter value and parameter type of the control are directly obtained; if it is the termination grid (corresponding to the start time of the termination operation) of the control, the parameter name corresponding to the control is obtained, and the termination operation (or end state description) corresponding to the parameter name is obtained. As shown in Table 3, the termination operation of the control 4 and control 8 at the 18th grid can be "Close Line (close pipeline)" and "0 (flow is 0)", respectively. The final target identifier sequence corresponding to FIG. 5 can be shown in Table 3:
[0077] Table 3 final target identifier sequence
[0078] The target operation sequence obtained by the above method can be obtained by simple traversal method, and the termination operation corresponding to the target operation identifier is inserted, so that the control of the whole process recipe forms a closed loop. After obtaining the above target operation and termination operation sorted by start time, the process recipe can be generated based on the sequence. In an optional embodiment, based on the sequence including a plurality of target operations, the process recipe is generated, including:
[0079] generate the process recipe according to the starting time of the target operation and the termination operation.
[0080] The obtained process recipe can refer to FIG. 6, which shows a structural schematic diagram of a feasible process recipe. In FIG. 6, only the contents to be controlled (the target operation and the termination operation) are recorded, and the process recipe does not need to be recorded in a step-by-step manner. When the process recipe is parsed and executed, each operation can be executed in sequence according to the starting time, and the hardware does not need to be repeatedly traversed, thereby avoiding the adverse effects of the time-consuming hardware traversal on the process results.
[0081] Correspondingly, the application also provides a control method, as shown in FIG. 7, applied to a semiconductor process equipment, the control method comprising:
[0082] S701: providing a process recipe, the process recipe being generated according to the recipe generation method of any of the above embodiments;
[0083] S702: parsing the process recipe, and controlling the process chamber of the semiconductor process equipment to perform a target process according to the parsing result.
[0084] The generation process of the process recipe can refer to the related description in the above, and in this embodiment, the process chamber is controlled to perform a target process based on the process recipe generated in the operation unit, and each operation can be executed in sequence according to the starting time, and the hardware does not need to be repeatedly traversed, thereby avoiding the adverse effects of the time-consuming hardware traversal on the process results.
[0085] In one embodiment, a method for feasibly parsing a process recipe is provided, and specifically, the process recipe comprises target operations and termination operations sorted according to starting times;
[0086] The parsing of the process recipe comprises:
[0087] generating a first set according to the starting times of the target operations and the termination operations in the process recipe;
[0088] generating a key-value pair corresponding to each starting time by taking the parameter type of the target operation and the termination operation in the process recipe as the key and taking the duration of the target operation and the termination operation in the process recipe as the value, and putting the key-value pair into a second set corresponding to the starting time;
[0089] putting the second set corresponding to each starting time into a third set.
[0090] Taking the process recipe shown in FIG. 6 as an example, when parsing, a first set can be generated according to the starting times of the target operations and the termination operations in the process recipe. In one embodiment, the first set can be referred to as set Times <time>The set can be used to save the time difference between the start time of each operation (target operation and termination operation) and the start time of the earliest operation. Thus, only the start time of the earliest operation and the time difference between other operations and the earliest operation need to be recorded to ensure the correct execution of the process recipe, without recording the absolute time. Assuming that there are operations 1, 2 and 3 to be executed in sequence, the start time of operation 1 is recorded as 0 seconds, the start time of operation 2 can be recorded as 1 second from the start time of operation 1, and the start time of operation 3 can be recorded as 2 seconds from the start time of operation 1. Then, during execution, operation 2 can be executed 1 second after operation 1 starts, and operation 3 can be executed 2 seconds after operation 1 starts, without recording the absolute time of the start time of each operation, which is beneficial to simplify the execution process.
[0091] The second set, which can be referred to as set Actions<Device, Action>, contains all hardware actions (target operations and termination operations) at a certain time point (corresponding to a certain start time). The hardware actions in the second set include hardware names and hardware action descriptions (key-value pairs). The hardware names and hardware action descriptions can be agreed in advance.
[0092] The third set, which can be referred to as set RecipeActions<Actions<Device, Action>>>, saves all time point sets Acitons in the recipe.
[0093] After obtaining the above sets, during execution of the recipe, the process chamber of the semiconductor process equipment is controlled to perform the target process according to the analysis result. Specifically, according to the order of the start times in the first set, the target process is performed according to the key-value pairs in the second set corresponding to each start time in the third set. Thus, it is not necessary to repeatedly traverse the hardware for each step as in the related art, which is beneficial to simplify the execution steps of the process recipe, improve the execution efficiency, and avoid the problem that the process effect does not match the expected effect due to the traversal of the hardware.
[0094] Still taking the process recipe shown in FIG. 6 as an example, one embodiment of the present application provides a feasible recipe analysis and execution method, which can include the following steps:
[0095] Before execution of the process recipe, the contents in the process recipe are read out and then analyzed. The analysis process includes the following steps:
[0096] Get the value of each row in the process recipe, after checking the first data time of each row, store it in the set Time in turn, take the second data parameter name corresponding to the Device (the parameter type of the target operation and the termination operation) as the Key, and the third parameter corresponding to the value (the duration of the target operation and the termination operation) as the Action, to form an element and store it in the set Actions, the Action of the same Device is stored in the same data in the set Actions, the data obtained by different rows is separated by ",", the rows at the same time point are parsed to obtain the combination of Device and Action, and are stored in the same Action, if the first data "time" of the obtained row is different from that of the previous row, the Actions of the previous time point are stored in the set RecipeActions<Actions<Device, Action>>. Then store the Device and Action information of this row in a new Actions set. In turn, store all the Actions in RecipeActions.
[0097] In this way, the first set, the second set and the third set obtained are as follows:
[0098] Set Times <time>the time difference between the time when each hardware action (which includes the target operation and the termination operation) is executed and the earliest hardware action.
[0099] The set Actions<Device, Action> (i.e. the second set) contains all hardware actions at a certain time point. The hardware actions in Actions contain the hardware name and the hardware action description. Both the hardware name and the hardware action description are pre-agreed.
[0100] The set RecipeActions<Actions<Device, Action>> (i.e. the third set) contains all the set Actions at all time points in this recipe.
[0101] In the recipe shown in Fig. 6, the above process can be described as:
[0102] The first data in the first row of the recipe is stored in the set Times <time>Then, through the second data parameter name of the first row, the corresponding Devcie—AGasLine is obtained, and the AGasLine and the third parameter of the first row are stored in the collection Actions<Device, Action>.
[0103] Then, the second row data in the process recipe is obtained again, and since the first data time of the second row is the same as that of the first row, the second row is not stored in the collection Times <time>In.
[0104] The Device corresponding to the second data "AGas" in the second row of the recipe is also AGasLine. This Device already exists in the set Actions1<Device, Action>, so the third data in the second row of the recipe is stored in the Action corresponding to AGasLine, that is, the Action corresponding to AGasLine is "DVT, 100". The first data in the third row of the recipe is 1, which is different from 0 in the second row, so Actions1 is first stored in the set RecipeActions, and then the first data in the third row of the recipe is stored in the set Times <time>The second and third data of the third row are stored in Actions2 according to the method of the first row. By analogy, the contents of the two sets are as follows:
[0105] The set Times contains three data 0, 1, 1.5, …, 9, …
[0106] The set RecipeActions contains two action sequences:
[0107] When the recipe is executed, the current time T0 is obtained, the first Action in the first RecipeAction is obtained, and all actions in the first Action1 are executed. Then when (current time-T0) is greater than or equal to the second time recorded in RecipeActions, the action sequence of the second Action is executed. By analogy, until the action sequence in RecipeActions is executed, the execution of the process recipe is completed.
[0108] Exemplary device
[0109] In an exemplary embodiment of the present application, a recipe generation device is also provided, comprising:
[0110] An operation response module is configured to, in response to a recipe editing operation on a target operation, display an operation identifier corresponding to the target operation at a target position of a recipe editing page; the target position is a position to which the recipe editing operation is directed, and the target position is used to represent a parameter type, a start time and a duration of the target operation; and the operation identifier includes a recipe parameter value corresponding to the parameter type.
[0111] A recipe generation module is configured to, in response to a recipe completion operation, generate a process recipe according to the operation identifier in the recipe editing page.
[0112] In an exemplary embodiment of the present application, a control device is also provided, which is applied to a semiconductor process equipment, and the control device comprises:
[0113] A recipe providing module is configured to provide a process recipe, and the process recipe is generated according to the recipe generation method of any of the above embodiments.
[0114] A recipe analysis module is configured to analyze the process recipe, and according to the analysis result, a process chamber of the semiconductor process equipment is controlled to execute a target process.
[0115] The specific definitions of the recipe generation apparatus and the control apparatus can refer to the definitions of the recipe generation method or the control method described above, which will not be repeated here. Each module in the recipe generation apparatus and the control apparatus described above can be implemented by software, hardware, or a combination thereof, in whole or in part. The above-mentioned modules can be embedded in or independent of the processor in the computer device in hardware form, or can be stored in the memory in the computer device in software form, so as to be called and executed by the processor to perform the operations corresponding to each module.
[0116] Exemplary device
[0117] One embodiment of the present application further provides a semiconductor process equipment, comprising a process chamber and a controller, wherein,
[0118] The controller is configured to control the process chamber to perform a target process according to the control method of any of the above embodiments.
[0119] The controller can be a host computer or a slave computer of the semiconductor process equipment, and the semiconductor process equipment can be an etching equipment such as an ICP (Inductively Coupled Plasma) equipment, a CCP (Capacitively Coupled Plasma) equipment, or a vapor deposition equipment such as a CVD (Chemical Vapor Deposition) equipment, a PVD (Physical Vapor Deposition) equipment, etc. The type of the semiconductor process equipment is not limited in the present application, and can be determined according to actual conditions.
[0120] Another embodiment of the present application further provides a computing device, as shown in FIG. 8, and one exemplary embodiment of the present application further provides a computing device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the steps of the recipe generation method or the control method according to various embodiments of the present application described in the above embodiments of the present application.
[0121] The internal structure of the computing device can be as shown in FIG. 8, which includes a processor, a memory, a network interface and an input device connected by a system bus. Among them, the processor of the computing device is used to provide computing and control capabilities. The memory of the computing device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operating system and the computer program in the non-volatile storage medium to run. The network interface of the computing device is used to communicate with the external terminal through the network connection. The computer program is executed by the processor to perform the steps of the recipe generation method or the control method according to various embodiments of the present application described in the above embodiments of the present application.
[0122] The processor can include a main processor, and can also include a baseband chip, a modem, etc.
[0123] The memory stores programs for executing the technical solutions of the present application, and can also store an operating system and other key services. Specifically, the program can include program code, and the program code includes computer operation instructions. More specifically, the memory can include a read-only memory (ROM), other types of static storage devices that can store static information and instructions, a random access memory (RAM), other types of dynamic storage devices that can store information and instructions, a disk memory, a flash, etc.
[0124] The processor can be a general-purpose processor, such as a general-purpose central processing unit (CPU), a microprocessor, etc., or an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of programs of the present application. It can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a ready-to-use programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component.
[0125] The input device can include devices that receive data and information input by the user, such as a keyboard, a mouse, a camera, a scanner, a light pen, a voice input device, a touch screen, a pedometer or a gravity sensor, etc.
[0126] The output device can include devices that allow information to be output to the user, such as a display screen, a printer, a speaker, etc.
[0127] The communication interface can include devices such as transceivers to communicate with other devices or communication networks, such as Ethernet, radio access network (RAN), wireless local area network (WLAN), etc.
[0128] The processor executes programs stored in the memory and calls other devices, which can be used to implement each step of any one of the recipe generation methods or control methods provided by the embodiments of the present application.
[0129] The computing device can also include a display component, which can be a liquid crystal display or an electronic ink display, and a voice component. The input device of the computing device can be a touch layer overlaid on the display component, or a key, trackball or touchpad arranged on the housing of the computing device, or an external keyboard, touchpad or mouse.
[0130] Those skilled in the art can understand that the structure shown in FIG. 8 is only a block diagram of part of the structure related to the scheme of the present application, and does not constitute a limitation on the computing device to which the scheme of the present application is applied. The specific computing device can include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0131] Exemplary computer program product and storage medium
[0132] In addition to the above method and device, the recipe generation method or control method provided by the embodiments of the present application can also be a computer program product, which includes computer program instructions that, when executed by a processor, cause the processor to perform the steps of the recipe generation method or control method according to various embodiments of the present application described in the "Exemplary Method" section above.
[0133] The computer program product can be written in any combination of one or more programming languages, including object-oriented programming languages, such as Java, C++, and conventional procedural programming languages, such as "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0134] In addition, the embodiments of the present application also provide a computer readable storage medium having a computer program stored thereon, the computer program being executed by a processor to perform the steps of the recipe generation method or control method according to various embodiments of the present application described in the "Exemplary Method" section above.
[0135] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by a computer program instructing relevant hardware, and the computer program can be stored in a non-volatile computer readable storage medium. When the computer program is executed, the processes of the above-mentioned embodiment methods can be included. Any reference to memory, storage, database or other medium used in the embodiments provided in the present application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration but not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
[0136] Any combination of the technical features of the above embodiments can be made. In order to make the description simple, all possible combinations of the technical features in the above embodiments are not described, however, as long as the combination of the technical features does not exist, it should be considered as the scope of the present application.
[0137] The above embodiments only express several implementation manners of the present application, and the description is more specific and detailed, but it should not be understood as a limitation on the scope of the solutions provided by the embodiments of the present application. It should be pointed out that for those skilled in the art, without departing from the concept of the present application, a number of modifications and improvements can be made, which are all within the protection scope of the present application. Therefore, the protection scope of the present patent should be subject to the appended claims.< / time> < / time> < / time> < / time> < / time>
Claims
1. A recipe generation method characterized by, The method comprises: in response to a recipe editing operation for a target operation, displaying an operation identifier corresponding to the target operation at a target position of a recipe editing page; the target position is a position to which the recipe editing operation is directed, and the target position is used to represent a parameter type, a start time and a duration of the target operation; the operation identifier includes a recipe parameter value corresponding to the parameter type; in response to a recipe completion operation, generating a process recipe according to the operation identifier in the recipe editing page.
2. The method of claim 1, wherein, The recipe editing page includes a plurality of grids arranged in a preset coordinate system, a first coordinate axis of the preset coordinate system represents time, a second coordinate axis of the preset coordinate system represents the parameter type, and the grid is used to represent unit time; the operation identifier includes a control with a non-zero length, the control is labeled with the recipe parameter value, and the target position includes a first coordinate, a second coordinate and a third coordinate of the control in the preset coordinate system; the first coordinate is a starting position coordinate of the control in a first direction of the preset coordinate system, the first coordinate is used to represent the start time of the target operation corresponding to the control, the second coordinate is a terminal position coordinate of the control in the first direction of the preset coordinate system, and the number of grids between the first coordinate and the second coordinate is used to represent the duration of the target operation; the first direction is the extension direction of the first coordinate axis; the third coordinate is a coordinate of the control in a second direction of the preset coordinate system, and the third coordinate is used to represent the parameter type; the second direction is the extension direction of the second coordinate axis.
3. The method of claim 1, wherein, The method comprises: traversing the operation identifier in the recipe editing page to generate a sequence including a plurality of target operations; generating the process recipe based on the sequence including a plurality of target operations.
4. The method of claim 3, wherein, The method comprises: traversing the operation identifier in the recipe editing page to generate a sequence including a plurality of target operations; traversing the operation identifier in the recipe editing page, sorting a plurality of operation identifiers according to the start time of the target position where the operation identifier is located to obtain a first identifier sequence; 5. The method of claim 4, wherein, according to the target operation identifier, inserting a termination operation corresponding to the target operation identifier in the first identifier sequence to obtain a target identifier sequence; the target operation identifier is an operation identifier corresponding to a termination time of a target operation and a start time of a target operation corresponding to other operation identifiers are not adjacent. The method comprises:
6. A control method characterized by, generating the process recipe according to the start time of the target operation and the termination operation based on the target identifier sequence. The control method is applied to a semiconductor process equipment, and the control method comprises: providing a process recipe, the process recipe is generated according to the recipe generation method of any one of claims 1-5; analyzing the process recipe, and controlling a process chamber of the semiconductor process equipment to perform a target process according to the analysis result.
7. The method of claim 6, wherein, The process recipe includes target operations and a termination operation sorted according to start times; The parsing the process recipe includes: generating a first set according to start times of the target operations and the termination operation in the process recipe; generating a key-value pair corresponding to each start time with a parameter type of the target operations and the termination operation in the process recipe as a key and a duration of the target operations and the termination operation in the process recipe as a value, and putting the key-value pair into a second set corresponding to the start time; putting the second set corresponding to each start time into a third set; The controlling the process chamber of the semiconductor process equipment to perform a target process according to the parsing result includes: performing the target process according to the key-value pairs in the second set corresponding to each start time in the third set according to the order of the start times in the first set.
8. A semiconductor process apparatus characterized by comprising: including: a process chamber and a controller; wherein the controller is configured to control the process chamber to perform a target process according to the control method of claim 6 or 7.
9. A computing device, comprising: a memory, a processor, and a computer program stored on the memory and executable on the processor, and the processor implements the recipe generation method of any one of claims 1-5 or the control method of claim 6 or 7 when executing the computer program.
10. A computer-readable storage medium, characterized in that, The computer program is stored on the computer readable storage medium, and the computer program is executed by the processor to implement the recipe generation method of any one of claims 1-5 or the control method of claim 6 or 7.
Citation Information
Patent Citations
Method and system for generating semiconductor process formula
CN102243670A
Visual element processing method and device, computer equipment and storage medium
CN116962783A
Process formula preparation method
CN117763639A
Formula generation method, control method and related device
CN118445871A
Operation composition device
JP1996006629A
Cited By
Editing constraint configuration and editing method of process formula and process equipment
CN121832469A