Configuration method of production system, electronic equipment and storage medium

CN119234242APending Publication Date: 2024-12-31BOE TECHNOLOGY GROUP CO LTD +2
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202380008924.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-04-28
Publication Date
2024-12-31

AI Technical Summary

Technical Problem

In the semiconductor manufacturing industry, manual configuration of production process recipes is prone to errors and inefficient, resulting in inaccurate equipment configuration and affecting production quality.

Method used

Provides a production system configuration method that automatically creates and selects suitable recipes through user input data, and uses preset recipe selection rules to automatically match and configure production equipment to reduce manual intervention.

Benefits of technology

It improves the accuracy and efficiency of production equipment configuration, reduces the occurrence of configuration errors, and improves work efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119234242A_ABST
    Figure CN119234242A_ABST
Patent Text Reader

Abstract

The invention provides a configuration method of a production system, electronic equipment and a storage medium, and relates to the technical field of semiconductor sealing and testing systems. The production system includes a plurality of production devices, the method including: creating a recipe for the plurality of production devices according to user input data, each production device being associated with one or more recipes; in response to a configuration request for at least one production device in the plurality of production devices, determining a formula selection rule suitable for the configuration request in a plurality of preset formula selection rules; selecting a formula matched with the configuration request from the plurality of created formulas according to the determined formula selection rule; and configuring production equipment associated with each formula by using the selected formula.
Need to check novelty before this filing date? Find Prior Art

Description

Production system configuration method, electronic device and storage medium Technical Field

[0001] The present disclosure relates to the technical field of semiconductor packaging and testing systems, and in particular to a configuration method, electronic equipment, storage medium, and computer program product for a production system. Background Art

[0002] A production process recipe is a file that stores production process information. Its contents can include multiple steps in the process, along with various process parameter values ​​and durations for each step. In the semiconductor manufacturing industry, when processing products, manual configuration of recipes is often used to ensure that the equipment can complete the product processing according to the recipe contents. However, due to the differences in product specifications and functions, the corresponding recipe types also vary, resulting in a large number of recipes. Therefore, manual configuration of recipes for equipment is prone to configuration errors. In addition, manual configuration leads to low work efficiency.

[0003] Summary of the Invention

[0004] The present disclosure provides a configuration method for a production system, an electronic device, a storage medium, and a computer program product.

[0005] According to one aspect of the present disclosure, a configuration method for a production system is provided, wherein the production system includes a plurality of production devices, and the method includes:

[0006] Creating recipes for a plurality of production equipment based on user input data, wherein each production equipment is associated with one or more recipes;

[0007] In response to a configuration request for at least one production device among a plurality of production devices, determining a recipe selection rule applicable to the configuration request from a plurality of preset recipe selection rules;

[0008] Selecting a recipe that matches the configuration request from the multiple created recipes according to the determined recipe selection rule;

[0009] The selected recipes are used to configure the production equipment associated with each recipe.

[0010] According to an embodiment of the present disclosure, each recipe selection rule has a priority, and determining a recipe selection rule applicable to a configuration request from among a plurality of preset recipe selection rules includes:

[0011] extracting recipe query information for at least one production device from the configuration request;

[0012] Among the multiple recipe selection rules, a recipe selection rule with the highest priority that matches the recipe query information is determined as the recipe selection rule applicable to the recipe matching request.

[0013] According to an embodiment of the present disclosure, each recipe selection rule specifies at least one data item to be compared, and the priority of each recipe selection rule is determined according to the number of data items specified by the recipe selection rule. The greater the number of data items, the higher the priority.

[0014] According to an embodiment of the present disclosure, among multiple recipe selection rules, determining a recipe selection rule with the highest priority that matches the recipe query information as the recipe selection rule applicable to the recipe matching request includes:

[0015] In descending order of priority, determining whether the data items specified by each recipe selection rule are a subset or a complete set of the data items involved in the recipe query information;

[0016] If the data item specified by the current recipe selection rule is a subset or a complete set of the data items involved in the recipe query information, it is determined that the current recipe selection rule matches the recipe query information; otherwise, it is determined that the current recipe selection rule does not match the recipe query information.

[0017] According to an embodiment of the present disclosure, multiple recipe selection rules include product-level selection rules, process-level selection rules and work-step-level selection rules. The priority of product-level selection rules is higher than that of process-level selection rules, and the priority of process-level selection rules is higher than that of work-step-level selection rules.

[0018] According to an embodiment of the present disclosure, the data items specified by the product-level selection rule include: data items about the product, data items about the main process and sub-process, data items about the process steps, and data items about the recipe.

[0019] The data items specified by the process-level selection rules include: data items on the process main process and sub-process, data items on the process steps, and data items on the recipe;

[0020] The data items specified by the process step selection rules include: data items about process sub-flows, data items about process steps, and data items about recipes.

[0021] According to an embodiment of the present disclosure, each recipe selection rule specifies at least one data item to be compared, and selecting a recipe that matches the configuration request from multiple created recipes according to the determined recipe selection rule includes:

[0022] For each recipe, determine whether the value of each recipe data item defined by the determined recipe selection rule in the recipe is consistent with the value in the configuration request. If yes, determine the recipe as one of the recipes matching the configuration request.

[0023] According to an embodiment of the present disclosure, creating a recipe for a plurality of production equipment according to user input data includes:

[0024] Creating at least one recipe group based on recipe grouping information input by a user, wherein the recipe grouping includes grouping logic, the grouping logic indicating the production equipment and recipe path corresponding to each recipe group, wherein the recipe path is used to search for recipes in the recipe group;

[0025] Adding at least one recipe to the recipe group based on recipe information input by the user for the recipe group;

[0026] The production equipment and logical recipe corresponding to each recipe in the recipe group are determined according to the grouping logic of the recipe group, and the data model of the recipe is associated with the production equipment and logical recipe corresponding to the recipe.

[0027] According to an embodiment of the present disclosure, at least one of the recipe group and the recipe has an activation state, and the activation state is used to indicate whether the corresponding recipe group or recipe is available.

[0028] According to an embodiment of the present disclosure, the method further includes: before adding at least one recipe to the recipe group, determining whether each recipe to be added is available according to the activation state of the recipe;

[0029] The adding of at least one recipe to the recipe group includes: adding an available recipe from the at least one recipe to the recipe group.

[0030] According to an embodiment of the present disclosure, the method further includes: editing at least one of the recipe group and the recipe according to a user operation, where editing includes modification, deletion, and version upgrade.

[0031] According to an embodiment of the present disclosure, at least one of the recipe group and the recipe has a frozen state, and the frozen state is used to indicate whether the corresponding recipe group or recipe is editable.

[0032] According to an embodiment of the present disclosure, the method further includes: establishing data models for each of the plurality of candidate recipes, wherein, based on recipe information input by a user for the recipe group, adding at least one recipe to the recipe group includes:

[0033] From the plurality of candidate recipes, a data model of a candidate recipe having a recipe name consistent with the recipe name in the recipe information is selected as the data model of the recipe in the recipe group.

[0034] According to an embodiment of the present disclosure, establishing a data model for a plurality of candidate recipes includes: for each candidate recipe,

[0035] Import or create a new data model of candidate recipes from the database;

[0036] The frozen state of the candidate recipe's data model is set to uneditable based on the user's freeze operation.

[0037] The activation state of the data model of the candidate recipe is set to be available according to an activation operation of the user.

[0038] According to an embodiment of the present disclosure, the above method further includes: after importing or creating a data model of a candidate recipe from a database,

[0039] In response to receiving a start editing instruction for the data model of the candidate recipe, start editing the data model of the candidate recipe according to an editing operation of a user;

[0040] In response to receiving an end editing instruction for the data model of the candidate recipe, ending editing of the data model of the candidate recipe according to the user's editing operation,

[0041] In the time period after receiving the start editing instruction and before receiving the end editing instruction, users other than the user are prohibited from editing the data model of the candidate recipe.

[0042] According to an embodiment of the present disclosure, the above method further includes:

[0043] In response to a user operation event on a recipe, the operation event is associated with the recipe and stored, wherein the operation event on the recipe includes at least one of creation, editing, cloning, freezing, unfreezing, activation, deactivation, upgrading, and use of the recipe; and

[0044] In response to a query request for a recipe in which a specified operation event occurs, a recipe associated with the specified operation event is determined among a plurality of stored recipes.

[0045] According to another aspect of the present disclosure, an electronic device is provided, including a memory and a processor, wherein the memory stores instructions executable by the processor, and when the instructions are executed by the processor, the processor executes the method described above.

[0046] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable the computer to execute and implement the method described above.

[0047] According to another aspect of the present disclosure, a computer program product is provided, comprising a computer program, which implements the method described above when executed by a processor.

[0048] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] The accompanying drawings are provided to facilitate a better understanding of the present invention and do not constitute a limitation of the present disclosure.

[0050] FIG1 is a flowchart of a configuration method of a production system according to an embodiment of the present disclosure;

[0051] FIG2 is a flow chart of a method for creating a recipe for production equipment according to an embodiment of the present disclosure;

[0052] FIG3 is a schematic diagram of an interface for creating a recipe group according to an embodiment of the present disclosure;

[0053] FIG4 is a flow chart of a method for grouping or modifying recipes according to an embodiment of the present disclosure;

[0054] FIG5 is a flow chart of a recipe activation method according to an embodiment of the present disclosure;

[0055] FIG6 is a flow chart of a recipe modeling method according to an embodiment of the present disclosure;

[0056] FIG7 is a schematic diagram of a recipe grouping creation method according to an embodiment of the present disclosure;

[0057] FIG8 is a flowchart of a method for determining a recipe selection rule according to an embodiment of the present disclosure;

[0058] FIG9 is a schematic diagram of a configuration of a recipe selection rule according to an embodiment of the present disclosure;

[0059] FIG10 is a schematic diagram of the relationship between priority and parameter factors according to an embodiment of the present disclosure;

[0060] FIG11 is a schematic diagram of recipe full life cycle management according to an embodiment of the present disclosure;

[0061] FIG12 is an architecture diagram of a modeling tool for recipe modeling according to an embodiment of the present disclosure;

[0062] FIG13 is an architectural diagram of a user operation platform according to an embodiment of the present disclosure;

[0063] FIG14 is a diagram of a business function architecture of a production system according to an embodiment of the present disclosure;

[0064] FIG15 is a system technical architecture diagram of a production system according to an embodiment of the present disclosure;

[0065] 16A and 16B are application architecture diagrams of a production system according to an embodiment of the present disclosure; and

[0066] FIG17 is a block diagram of an electronic device suitable for implementing a configuration method for a production system according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0067] In order to make the purpose, technical solutions and advantages of the embodiments of the present disclosure clearer, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, not all of them. Based on the described embodiments of the present disclosure, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present disclosure. It should be noted that throughout the drawings, the same elements are represented by the same or similar figure marks. In the following description, some specific embodiments are only for descriptive purposes and should not be understood as any limitation to the present disclosure, but are only examples of the embodiments of the present disclosure. Conventional structures or configurations will be omitted when they may cause confusion in the understanding of the present disclosure. It should be noted that the shapes and sizes of the components in the figures do not reflect the actual size and proportion, but only illustrate the contents of the embodiments of the present disclosure.

[0068] Unless otherwise defined, technical or scientific terms used in the embodiments of the present disclosure shall have the ordinary meanings understood by those skilled in the art. The terms "first," "second," and similar terms used in the embodiments of the present disclosure do not indicate any order, quantity, or importance, but are merely used to distinguish different components.

[0069] FIG1 is a flowchart of a configuration method of a production system according to an embodiment of the present disclosure.

[0070] According to an embodiment of the present disclosure, a production system includes a plurality of production devices. The configuration method of the production system may include operations S110 to S140 as shown in FIG1 .

[0071] In operation S110 , recipes are created for a plurality of production equipment according to user input data, wherein each production equipment is associated with one or more recipes.

[0072] According to embodiments of the present disclosure, a recipe may include parameter information related to the product being produced. For example, a recipe may include parameter information about the product and parameter information about the production equipment used to produce the product. For example, a recipe may include product type information, product specification information, product production condition information, processing type information about the production equipment, and operating parameter information about the production equipment.

[0073] In some embodiments, each production device corresponds to a recipe when producing a batch of products. For example, when production device A produces a batch of product a, it corresponds to recipe 1. For another example, when production device B produces a batch of product b, it corresponds to recipe 2. However, it should be noted that since the same production device can produce different types of products, the same production device can correspond to multiple recipes, that is, each production device is associated with one or more recipes. For example, production device C can produce product c and product d. When production device C produces product c, it corresponds to recipe 3, and when producing product d, it corresponds to recipe 4. Therefore, recipe 3 and recipe 4 are both associated with production device C.

[0074] In operation S120 , in response to a configuration request for at least one production device among a plurality of production devices, a recipe selection rule applicable to the configuration request is determined from a plurality of preset recipe selection rules.

[0075] According to embodiments of the present disclosure, a configuration request is used to determine which production devices to configure a recipe for. For example, a configuration request may include relevant information, such as the device names, for production devices A, B, and C. In some embodiments, a configuration request may also include recipe query information, such as the main process information, sub-process information, product name, and so on, corresponding to the recipe.

[0076] In some embodiments, the plurality of preset recipe selection rules may include recipe selection rule 1, recipe selection rule 2, recipe selection rule 3, and recipe selection rule 4. Based on relevant information in the configuration request of the production equipment, recipe selection rule 2 is selected from recipe selection rule 1, recipe selection rule 2, recipe selection rule 3, and recipe selection rule 4 as the recipe selection rule applicable to the recipe request.

[0077] In operation S130 , a recipe matching the configuration request is selected from the created plurality of recipes according to the determined recipe selection rule.

[0078] According to an embodiment of the present disclosure, a recipe selection rule is used to select a recipe suitable for a configuration request from multiple recipes. Specifically, a recipe selection rule may include which parameter information is used as a comparison object to select a suitable recipe. For example, recipe selection rule A includes parameter 1 and parameter 2, indicating that recipe selection rule A uses parameter 1 and parameter 2 as comparison objects to select a recipe suitable for the configuration request from multiple recipes.

[0079] In some embodiments, the plurality of preset recipes may include recipe 1, recipe 2, recipe 3, and recipe 4; the recipe selection rule determined above may be recipe selection rule 2, wherein recipe selection rule 2 includes parameter 1. Selecting a recipe that matches the configuration request from the plurality of created recipes may include using parameter 1 as a comparison object and selecting a recipe that includes parameter 1, such as recipe 3, from recipes 1, 2, 3, and 4 as the recipe that meets the configuration request.

[0080] It should be noted that each recipe selection rule may include one or more parameter information. The number of parameter information is used to indicate the dimensions from which recipes are screened.

[0081] In operation S140 , the production equipment associated with each recipe is configured using the selected recipe.

[0082] According to an embodiment of the present disclosure, a recipe is associated with a production device during the creation process. After selecting a recipe that matches the configuration request, the production device associated with each recipe can be obtained. For example, in some embodiments, the configuration request includes configurations for production device 1, production device 2, and production device 3, and the recipes selected to match the configuration request include recipe 1, recipe 2, and recipe 3, wherein recipe 1 is associated with production device 1, recipe 2 is associated with production device 2, and recipe 3 is associated with production device 3. Then, recipe 1, recipe 2, and recipe 3 are used to configure production device 1, production device 2, and production device 3, respectively. In other embodiments, the configuration request includes configurations for production device 1, production device 2, and production device 3, and the recipes selected to match the configuration request include recipe 1, recipe 2, and recipe 3, wherein recipe 1 is associated with production device 1 and production device 4, recipe 2 is associated with production device 2, and recipe 3 is associated with production device 3. Then, recipe 1, recipe 2, and recipe 3 are used to configure production device 1, production device 2, and production device 3, respectively. Since the configuration request does not include production equipment 4, whether to configure production equipment 4 using recipe 1 can be determined based on actual needs. For example, the user can manually configure production equipment 4 on the operating platform.

[0083] According to the embodiments of the present disclosure, by pre-creating recipes for production equipment, when the production equipment needs to be configured, an appropriate recipe selection rule is automatically selected from multiple recipe selection rules based on the configuration request input by the user. The desired recipe is then selected from the multiple created recipes based on the determined recipe selection rule, and the production equipment is configured according to the selected recipe. This approach enables automatic recipe selection and configuration, eliminating the need for users to manually configure recipes for each production device and reducing configuration errors caused by manual operations. Furthermore, automatic recipe selection and configuration can improve work efficiency.

[0084] FIG2 is a flow chart of a method for creating a recipe for production equipment according to an embodiment of the present disclosure.

[0085] As shown in FIG. 2 , the method for creating a recipe for production equipment in this embodiment includes operations S201 to S206 .

[0086] In operation S201 , at least one recipe group is created based on recipe grouping information input by a user. The recipe group includes grouping logic, which indicates the production equipment and recipe path corresponding to each recipe group. The recipe path is used to search for recipes in the recipe group.

[0087] According to an embodiment of the present disclosure, the recipe grouping information input by the user may include the name information of the recipe group. For example, creating at least one recipe group based on the recipe grouping information input by the user may include creating a recipe group based on the name of the recipe group input by the user. In this case, the recipe group is equivalent to a blank file, and recipes and production equipment need to be added to the recipe group.

[0088] According to embodiments of the present disclosure, recipe grouping can associate production equipment and recipes of the same type into the same recipe group. For example, if production equipment A and production equipment B are used to cut products of different specifications, i.e., both are cutting equipment, production equipment A and production equipment B can be associated into the same recipe group.

[0089] According to an embodiment of the present disclosure, grouping logic is used to indicate the production equipment and recipe path corresponding to each recipe group. Specifically, the grouping logic is used to indicate which equipment the recipe group corresponds to, such as cutting equipment. The recipe path may include an addressing path set for the recipe corresponding to the recipe group, facilitating recipe search.

[0090] FIG3 is a schematic diagram of an interface for creating a recipe group according to an embodiment of the present disclosure.

[0091] As shown in Figure 3, the operation interface for creating recipe groups includes a recipe group list, a logical recipe list, and a production equipment list on the left, a recipe list in the middle area, and a recipe group on the right. When creating a recipe group, after entering the operation interface, click the "Create" button at the recipe group in the right area. At this time, the recipe group information that needs to be filled in, such as the recipe group name, group owner, version, etc., will be displayed on the operation interface. After filling in, click the "OK" button to complete the creation. It should be noted that after the recipe group is created, a corresponding recipe group data will be stored in the background, which can be stored in the recipe group table.

[0092] In operation S202 , a recipe to be added is determined based on recipe information input by a user for a recipe group.

[0093] According to an embodiment of the present disclosure, recipe information may include any information that can be used to find a recipe. For example, recipe information may include attribute information of the recipe. More specifically, recipe information may include information such as the recipe name and recipe number.

[0094] According to an embodiment of the present disclosure, the recipe information may be information directly input by a user, or may be recipe information displayed in a recipe list displayed on a display interface.

[0095] According to an embodiment of the present disclosure, before creating a recipe group, it is necessary to establish data models for multiple candidate recipes. Based on recipe information input by a user for the recipe group, determining the recipe to be added may include: selecting, from the multiple candidate recipes, the data model of the candidate recipe that has the same recipe name as that in the recipe information as the data model of the recipe in the recipe group.

[0096] According to an embodiment of the present disclosure, establishing a data model for a candidate recipe includes: importing or creating a new data model for the candidate recipe from a database; setting a frozen state of the candidate recipe data model to uneditable based on a user's freeze operation; and setting an activated state of the candidate recipe data model to available based on a user's activation operation.

[0097] According to an embodiment of the present disclosure, the above method also includes: after importing or creating a data model of a candidate recipe from a database, in response to receiving a start editing instruction for the data model of the candidate recipe, starting to edit the data model of the candidate recipe according to the user's editing operation; in response to receiving an end editing instruction for the data model of the candidate recipe, ending editing the data model of the candidate recipe according to the user's editing operation, wherein during the time period after receiving the start editing instruction and before receiving the end editing instruction, users other than the user are prohibited from editing the data model of the candidate recipe.

[0098] In operation S203, it is determined whether each recipe to be added is available according to the activation state of the recipe. If it is determined that the recipe to be added is not available, operation S204 is performed; if it is determined that the recipe to be added is available, operation S205 is performed.

[0099] According to an embodiment of the present disclosure, at least one of the recipe group and the recipe has an activation state, and the activation state is used to indicate whether the corresponding recipe group or recipe is available.

[0100] According to an embodiment of the present disclosure, only recipes in an activated state can be added to a recipe group.

[0101] According to an embodiment of the present disclosure, at least one of the recipe group and the recipe has a frozen state, and the frozen state is used to indicate whether the corresponding recipe group or recipe is editable.

[0102] According to an embodiment of the present disclosure, after recipe grouping and recipe editing are completed, the information can be frozen. The frozen state of recipe grouping and recipe information indicates that the recipe grouping information and recipe information are frozen and cannot be edited or deleted. This freezing operation can prevent the published recipe information from being tampered with.

[0103] According to an embodiment of the present disclosure, after the recipe information is frozen, it can be activated through an activation operation, so that an operator can create and use the recipe in the production system.

[0104] In operation S204 , the unavailable recipe is activated using an activation operation, and then operation S205 is performed.

[0105] In operation S205 , an available recipe among the at least one recipe is added to the recipe group.

[0106] In operation S206 , the production equipment and logical recipe corresponding to each recipe in the recipe group are determined according to the grouping logic of the recipe group, and the data model of the recipe is associated with the production equipment and logical recipe corresponding to the recipe.

[0107] According to an embodiment of the present disclosure, a logical recipe can be used to address a recipe, that is, the data model of the recipe can be found according to the logical recipe. It should be noted that before creating a recipe group, a data model needs to be established for each recipe.

[0108] According to an embodiment of the present disclosure, by creating recipe groups, it is convenient to associate similar production equipment and recipes into the same recipe group, which can further improve the recipe screening efficiency when configuring production equipment.

[0109] According to an embodiment of the present disclosure, the method further includes: editing at least one of the recipe group and the recipe according to a user operation, where editing includes modification, deletion, and version upgrade.

[0110] According to an embodiment of the present disclosure, editing may further include a freeze operation, a cancel freeze operation, and an activate operation.

[0111] According to an embodiment of the present disclosure, as shown in FIG3 , when modifying a recipe group or a recipe, when the recipe group is in an editable state, the information can be modified by clicking a “Modify” button.

[0112] FIG4 is a flowchart of a method for grouping or modifying recipes according to an embodiment of the present disclosure.

[0113] As shown in FIG. 4 , the modification method of this embodiment includes operations S401 to S408 .

[0114] In operation S401 , in response to a modification request of a recipe group or a recipe by a first user, an activation state, a freezing state, and an editing state of the recipe group or recipe are acquired.

[0115] In operation S402, it is determined whether the activation state is the inactive state. If it is determined that the activation state is the inactive state, operation S403 is performed; if it is determined that the activation state is the active state, operation S407 is performed.

[0116] In operation S403, it is determined whether the freeze state is not frozen. If the freeze state is determined to be frozen, operation S404 is performed; if the freeze state is determined to be not frozen, operation S405 is performed.

[0117] In operation S404, the frozen state is switched to an unfrozen state, and then operation S405 is performed.

[0118] In operation S405, it is determined whether the editing state is in editing. If the editing state is in editing, operation S406 is performed; if the editing state is not in editing, operation S408 is performed.

[0119] In operation S406, it is determined whether the first user is the current user. If the first user is the current user, operation S408 is performed; if it is determined that the first user is not the current user, operation S407 is performed.

[0120] In operation S407 , the first user is not allowed to modify the recipe group or the recipe.

[0121] In operation S408 , the first user is allowed to modify the recipe group or the recipe.

[0122] According to the embodiments of the present disclosure, the "Frozen Status" and "Edit Status" fields are used to manage the editing status of a recipe group or recipe. When the editing status is "Editing," it indicates that a user is actively editing the recipe. If the editor's account and the current operator's account are inconsistent, the current information cannot be edited. This prevents multiple users from editing a recipe group or recipe simultaneously, and avoids production safety issues caused by tampering with published recipe groups or recipes.

[0123] According to an embodiment of the present disclosure, when a recipe group or recipe is deleted, in response to clicking the "Remove" button, the activation status and frozen status of the recipe group data are checked. If it is in a frozen state, deletion is not allowed; if it is in a non-frozen state, deletion is allowed, and the deletion operation is executed in the background.

[0124] According to an embodiment of the present disclosure, when upgrading a recipe group or recipe, a pop-up window appears in response to a right-click. Selecting "Upgrade" in the window and clicking "Yes" in the prompt completes the upgrade. It should be noted that before upgrading, the system checks the data's activation status; if it is not, the upgrade is not permitted.

[0125] According to an embodiment of the present disclosure, when a recipe group or recipe is frozen, a display box pops up in response to a right-click operation; in response to selecting "Freeze" in the display box and clicking "Yes" in the prompt information, the recipe group is frozen. It should be noted that after the user clicks the freeze operation, the system first checks the freezing status of the data. If it is not in a non-frozen state, freezing is not allowed at this time; if it is in a non-frozen state, the editing status is checked. The recipe can only be frozen if the editing status is unedited; if the editing status is editing, it is also necessary to check whether the user is the current user. If the user is the current user, freezing is allowed; if not, freezing is not allowed.

[0126] According to an embodiment of the present disclosure, when unfreezing a recipe group or recipe, a pop-up display box appears in response to a right-click operation; in response to selecting "Unfreeze" in the display box and clicking "Yes" in the prompt message, the recipe group is unfrozen. It should be noted that after the user clicks the Unfreeze operation, the system first checks the frozen state of the data. If it is not frozen, unfreezing is not allowed at this time. If it is frozen, the user can click Unfreeze to complete the unfreeze operation, at which point the recipe group or recipe becomes unfrozen.

[0127] According to an embodiment of the present disclosure, when activating a recipe group or recipe, a pop-up window appears in response to a right-click. Selecting "Activate" in the window and clicking "Yes" in the prompt completes activation of the recipe group. It should be noted that after clicking "Activate," the system first checks the frozen state of the data. If it is not frozen, activation is not permitted. If it is, the user can click "Activate" to complete the activation.

[0128] FIG5 is a flowchart of a recipe activation method according to an embodiment of the present disclosure.

[0129] As shown in FIG. 5 , the activation method of this embodiment includes operations S501 to S506 .

[0130] In operation S501 , a user may model recipe information in a modeling tool by batch importing or manually.

[0131] In operation S502, the created recipe information is set to a frozen state.

[0132] In operation S503 , in response to the user's activation operation on the recipe information, an activation application is acquired.

[0133] In operation S504 , the reviewer signs and approves the activation application through the production operation platform.

[0134] In operation S505 , the activation application is approved.

[0135] In operation S506 , the recipe information is activated to allow the user to use the recipe information.

[0136] According to the embodiments of the present disclosure, by introducing a sign-off mechanism, confirmation by designated personnel is required for activation to be successful, ensuring that the recipe information released to the production system is approved and the approval information is recorded, making online data more secure and reliable.

[0137] According to an embodiment of the present disclosure, when a published recipe needs to be modified, the recipe information can be edited by recipe upgrading and recipe cloning according to business needs.

[0138] According to an embodiment of the present disclosure, one of the recipe editing methods adopts a recipe upgrade method. Specifically, it may include: after editing the recipe information, updating the recipe version in the recipe information, storing the recipe information after the updated recipe version as the new version of the recipe information, and storing the recipe information before editing as the old version of the recipe information; in response to the new version of the recipe information being activated, setting the old version of the recipe information to be inactivated. This editing method requires upgrading the original recipe information, and the upgraded recipe information is consistent with the original recipe information except for the version number. At this time, the new version of the recipe information can be edited, and after the editing is completed, the new version of the recipe information is frozen and then activated.

[0139] According to an embodiment of the present disclosure, another specification editing method adopts a version cloning method. Specifically, it may include: before editing the recipe information, generating a copy of the recipe information, and modifying the recipe name in the copy to be different from the recipe name in the recipe information; wherein the recipe information is edited by editing the copy, thereby obtaining new recipe information. This editing method is to create a new recipe information based on the recipe information, that is, to clone the recipe information, and the contents of the cloned recipe information except the name are consistent with the original content. The user can edit, freeze and activate the cloned recipe information, and manage the cloned recipe information as a new recipe after activation.

[0140] It should be noted that editing recipe information by using recipe upgrade and recipe cloning will not affect the recipes currently in use online.

[0141] FIG6 is a flow chart of a recipe modeling method according to an embodiment of the present disclosure.

[0142] According to an embodiment of the present disclosure, recipe modeling can be performed by importing or creating a new recipe. The importing method allows editing, modifying, freezing, activating, and other operations on the imported recipe, and the creating method allows editing, modifying, and freezing the newly created recipe.

[0143] As shown in FIG6 , the recipe modeling method of this embodiment includes operations S610 to S670 .

[0144] In operation S610 , in response to a recipe creation operation by a first user, a recipe basic data modeling process is started.

[0145] In operation S620, a recipe modeling is performed in a new creation mode. When the user performs recipe modeling in a new creation mode, an editing or modifying operation S640 and a freezing operation S650 may be performed.

[0146] In operation S630, the recipe modeling is performed in an importing manner. When the user performs recipe modeling in an importing manner, an editing or modifying operation S640, a freezing operation S650, and an activating operation S660 may be performed.

[0147] In operation S670 , the creation is ended.

[0148] The editing or modifying operation S640 includes operations S641 to S646 .

[0149] In operation S641 , an editing or modifying operation is entered.

[0150] In operation S642, it is determined whether the frozen state is a non-frozen state. If it is determined that the frozen state is a non-frozen state, operation S643 is performed; if it is determined that the frozen state is frozen, operation S670 is performed.

[0151] In operation S643, it is determined whether the editing state is in editing. If it is determined that the editing state is in editing, operation S644 is performed; if it is determined that the editing state is not in editing, operation S670 is performed.

[0152] In operation S644, it is determined whether the first user is the current user. If it is determined that the first user is the current user, operation S645 is performed; if it is determined that the first user is not the current user, operation S646 is performed.

[0153] In operation S645 , the recipe information is edited or modified, and then a freezing operation S650 is performed.

[0154] In operation S646 , editing or modification of the recipe information is not allowed.

[0155] The freezing operation S650 includes operations S651 to S653.

[0156] In operation S651 , a freezing operation is entered.

[0157] In operation S652, it is determined whether the frozen state is a non-frozen state. If it is determined that the frozen state is a non-frozen state, operation S653 is performed; if it is determined that the frozen state is frozen, operation S670 is performed.

[0158] In operation S653 , the freezing state of the recipe is changed to frozen.

[0159] The frozen recipe may be activated through an activation operation S660 , which includes operations S661 to S663 .

[0160] In operation S661, an activation operation is entered.

[0161] In operation S662, it is determined whether the freeze state is frozen. If it is determined that the freeze state is frozen, operation S663 is performed; if it is determined that the freeze state is not frozen, operation S670 is performed.

[0162] In operation S663, the recipe is changed to an active state.

[0163] According to embodiments of the present disclosure, after a recipe has been edited or modified, the recipe information can be frozen, preventing further editing or deletion. This prevents tampering with the published recipe information. Furthermore, the frozen recipe information can be activated and published, allowing operators to use it in the production system.

[0164] According to an embodiment of the present disclosure, the above-mentioned editing operations also include editing of logical recipes and editing of grouping logic. Editing of logical recipes and editing of grouping logic are similar to editing of recipe grouping and recipes, and also include operations such as modification, deletion, version upgrade, freezing, unfreezing, and activation. Editing of logical recipes and editing of grouping logic differ from recipe grouping and recipes in that the relevant information of logical recipes is stored in the logical recipe table, while the relevant information of grouping logic is stored in the storage logic table.

[0165] FIG7 is a schematic diagram of a recipe grouping creation method according to an embodiment of the present disclosure.

[0166] As shown in Figure 7, when creating a recipe group, the recipe module modeling is first entered, allowing the system to model and maintain the recipe; then the recipe group basic data modeling, recipe group basic data maintenance and recipe group data basic data management are carried out in sequence, where the recipe group basic data modeling includes the recipe group name, group owner and group version; then the production equipment needs to be associated with the created recipe group. At this time, the system determines whether the equipment data is in the activated state. If not, the configuration is terminated; if so, the equipment-recipe group association basic data management is carried out to associate the production equipment with the recipe group, where the equipment-recipe group association basic data includes the recipe group name, equipment name and version; then the logical recipe-data group modeling, logical recipe-data group maintenance and logical recipe-data group management are carried out in sequence, where the logical recipe-data group modeling includes the recipe group name, logical recipe name and version; then the system associates the recipe with the recipe group. At this time, the system determines whether the recipe is in the activated state. If not, the configuration is terminated; if so, the recipe basic data modeling, recipe basic data maintenance and recipe basic data management are carried out in sequence, where the recipe basic data modeling includes the recipe name, equipment name, recipe group name, logical recipe name and version.

[0167] It should be noted that a recipe group may include one recipe or multiple recipes.

[0168] According to an embodiment of the present disclosure, each recipe selection rule has a priority. Each recipe selection rule specifies at least one data item to be compared. The priority of each recipe selection rule is determined based on the number of data items specified by the recipe selection rule. The greater the number of data items, the higher the priority.

[0169] According to an embodiment of the present disclosure, the data items may be factory parameters, product parameters, process parameters, etc. For example, the data items may be factory name, product name, product version, main process, main process version, sub-process, process version, work step, etc.

[0170] In one embodiment, if the data items included in recipe selection rule A include data item 1, and the data items included in recipe selection rule B include data item 1 and data item 2, then recipe selection rule B can be considered to have a higher priority than recipe selection rule A. It is understood that the greater the number of data items, the more screening conditions are included, and thus the higher the accuracy of the recipe obtained by screening.

[0171] According to an embodiment of the present disclosure, by using the number of data items as a priority setting standard, as many data items as possible can be compared during the recipe screening process, thereby improving the screening accuracy.

[0172] FIG8 is a flowchart of a method for determining a recipe selection rule according to an embodiment of the present disclosure.

[0173] As shown in FIG8 , the method for determining a recipe selection rule in this embodiment includes operations S801 to S805 .

[0174] In operation S801 , recipe query information for at least one production device is extracted from a configuration request.

[0175] According to an embodiment of the present disclosure, the recipe query information may include, for example, main process information, sub-process information, product name, product version, work steps, etc. corresponding to the recipe.

[0176] In operation S802, a determination is made, in descending order of priority, as to whether the data items specified by the current recipe selection rule are a subset or the entire set of data items involved in the recipe query information. If it is determined that the data items specified by the current recipe selection rule are not a subset or the entire set of data items involved in the recipe query information, operation S803 is executed; if it is determined that the data items specified by the current recipe selection rule are a subset or the entire set of data items involved in the recipe query information, operation S804 is executed.

[0177] According to the embodiments of the present disclosure, each recipe selection rule is matched sequentially in descending order of priority. For example, recipe selection rule A includes data items 1, 2, and 3; recipe selection rule B includes data items 1 and 2. Because recipe selection rule A has a higher priority than recipe selection rule B, recipe selection rule A is matched first. It should be noted that if recipe matching rule A successfully matches the recipe query information, there is no need to match recipe matching rule B.

[0178] By setting priorities and matching recipe selection rules in descending order of priority, no subsequent matching is required after a recipe selection rule with a high priority is successfully matched, thereby further improving screening efficiency.

[0179] According to an embodiment of the present disclosure, determining whether the data items specified by the current recipe selection rule are a subset or the full set of data items involved in the recipe query information may include, for example, determining whether all of the data items specified by the current recipe selection rule belong to the data items involved in the recipe query information. For example, the recipe query information includes data items 1, 2, and 3; recipe selection rule A includes data items 1 and 2; recipe selection rule B includes data items 1, 2, and 3; and recipe selection rule C includes data items 2, 3, and 4. Since data items 1 and 2 specified in recipe selection rule A belong to the subset of data items 1, 2, and 3 involved in the recipe query information, recipe selection rule A matches the recipe query information. Since data items 1, 2, and 3 specified in recipe selection rule B belong to the full set of data items 1, 2, and 3 involved in the recipe query information, recipe selection rule B matches the recipe query information. Since data item 1, data item 2, and data item 3 involved in the recipe query information do not include data item 4 specified in recipe selection rule C, recipe selection rule C matches the recipe query information.

[0180] In operation S803 , it is determined that the current recipe selection rule does not match the recipe query information.

[0181] In operation S804 , it is determined whether the current recipe selection rule matches the recipe query information.

[0182] In operation S805 , a recipe selection rule with the highest priority that matches the recipe query information is determined as a recipe selection rule applicable to the recipe matching request.

[0183] According to an embodiment of the present disclosure, as described above, both recipe selection rule A and recipe selection rule B match the recipe query information. Since recipe selection rule B contains more data items, that is, its priority is higher than that of recipe selection rule A, recipe selection rule B is used as the recipe selection rule applicable to the recipe matching request.

[0184] According to an embodiment of the present disclosure, by setting priorities and selecting the recipe selection rule with the highest priority, recipes can be screened with the highest possible accuracy, thereby further optimizing recipe screening.

[0185] According to an embodiment of the present disclosure, each recipe selection rule specifies at least one data item to be compared, and selecting a recipe that matches the configuration request from multiple created recipes according to the determined recipe selection rule includes: for each recipe, determining whether the value of each recipe data item defined by the determined recipe selection rule in the recipe is consistent with the value in the configuration request; if so, determining the recipe as one of the recipes that matches the configuration request.

[0186] According to an embodiment of the present disclosure, after determining a recipe selection rule that matches a configuration request, the determined recipe selection rule is used to filter a recipe that matches the configuration request from multiple recipes.

[0187] In some embodiments, the recipe selection rule that matches the configuration request is recipe selection rule A, and recipe selection rule A specifies data item 1, such as a product name, and data item 2, such as a main process name; the product name and the main process name are input in the configuration request. Determining whether the values ​​of each recipe data item defined by the determined recipe selection rule in the recipe are consistent with the values ​​in the configuration request may include determining whether data item 1, such as the product name, and data item 2, such as the main process name, specified by recipe selection rule A are consistent with the product name and the main process name included in the configuration request.

[0188] According to an embodiment of the present disclosure, multiple recipe selection rules include product-level selection rules, process-level selection rules and work-step-level selection rules. The priority of product-level selection rules is higher than that of process-level selection rules, and the priority of process-level selection rules is higher than that of work-step-level selection rules.

[0189] According to the embodiments of the present disclosure, the recipe selection rules adopt three methods: product-level selection rules, process-level selection rules, and step-level selection rules to configure production and recipes. During the production process of the product, appropriate recipe information is recommended based on the first priority of production to carry out production control, improve production efficiency, and increase product yield.

[0190] According to an embodiment of the present disclosure, the data items specified by the product-level selection rules include: data items about the product, data items about the main process and sub-processes of the process, data items about the work steps, and data items about the recipe; the data items specified by the process-level selection rules include: data items about the main process and sub-processes of the process, data items about the work steps, and data items about the recipe; the data items specified by the work-step-level selection rules include: data items about the process sub-processes, data items about the work steps, and data items about the recipe.

[0191] According to an embodiment of the present disclosure, data items about a product may include, for example, the product name and product version; data items about the main process and sub-process of a process may include, for example, the main process, the main process version, the sub-process and the sub-process version; data items about work steps may include, for example, the work steps; data items about a recipe may include, for example, the recipe, the recipe group and the logical recipe.

[0192] FIG9 is a schematic diagram of a configuration of a recipe selection rule according to an embodiment of the present disclosure.

[0193] As shown in Figure 9, configuration selection rules include product-level selection rules, process-level selection rules, and work-step-level selection rules. Product-level selection rules can include factory, product, product version, main process, main process version, sub-process, sub-process version, and work step; process-level selection rules can include factory, main process, main process version, sub-process, sub-process version, and work step; and work-step-level selection rules can include factory sub-process, sub-process version, and work step.

[0194] According to embodiments of the present disclosure, the basic information for creating product-level recipe selection rules includes product name, product version, main process name, main process version, sub-process name, sub-process version, factory, factory version, recipe name, and recipe version. The process for creating and editing product-level recipe selection rules is similar to that for recipes and will not be further described in this embodiment.

[0195] According to the embodiments of the present disclosure, during actual production, if the product, process, and work step all meet the requirements, the corresponding recipe selection rules will be entered to recommend the corresponding equipment, recipe group, and recipe. At this point, the user can manually select the appropriate recipe based on the actual situation, thereby improving the efficiency of production recipe selection. If only a single recipe is found under the recipe selection rule, the equipment will use the corresponding recipe.

[0196] According to the embodiment of the present disclosure, when the production and manufacturing is entering the station, the system will optimize the parameters according to the parameters provided by the current production. The current recipe selection rules support the configuration of 16 parameters, corresponding to invalid parameters. When making a selection, the system first performs a filter, then filters the obtained parameters, and then divides the parameters into main parameters and auxiliary parameters, giving priority to matching the main parameters. If the main parameters can be matched, the system continues to match the auxiliary parameters until a recipe selection rule that the system satisfies is found. If the main parameters cannot be matched, the system will directly match the auxiliary parameters until a recipe selection rule that the system satisfies is found.

[0197] FIG10 is a schematic diagram of the relationship between priority and parameter factors according to an embodiment of the present disclosure.

[0198] As shown in Figure 10, the relationship between the priority of the recipe selection rule and the number of relative process step information, product process and other parameter factors can be described by the linear relationship of the following formula (1): y=kx+bx≤16 y=cx>16;(1)

[0199] Where k is the slope of the linear relationship, x represents the number of parameter factors in the recipe selection rule, and y represents the priority level. It can be understood that for a given slope k, the smaller x and y are, the lower the priority level. For example, if (x < 16), and y1 < y2, the priority of a rule that satisfies kx1 + b = y1 is lower than the priority of a rule that satisfies kx2 + b = y2. When x > 16, the priority level remains unchanged.

[0200] According to an embodiment of the present disclosure, the above method also includes: in response to a user's operation event on a recipe, the operation event is associated with the recipe and stored, wherein the operation event on the recipe includes at least one of creation, editing, cloning, freezing, unfreezing, activation, deactivation, upgrading, and use of the recipe; and in response to a query request for the recipe where a specified operation event occurs, determining the recipe associated with the specified operation event among the multiple stored recipes.

[0201] According to the embodiments of the present disclosure, by recording the operation events of a recipe throughout its entire life cycle, the corresponding recipe information can be filtered as needed, thereby facilitating the tracking and management of the recipe.

[0202] According to an embodiment of the present disclosure, the production system is a production system for semiconductor packaging and testing. The generation system can adopt an MES manufacturing execution system. MES is the abbreviation of Manufacturing Execution System. MES is a production information management system for the execution layer of the workshop of a manufacturing enterprise. Recipe management can adopt a recipe management system (RMS, Recipe Management System). RMS is a system for managing recipes in the semiconductor industry and is used to guide production and prevent misuse or omission during the production process.

[0203] According to an embodiment of the present disclosure, the above-mentioned recipe management system can also realize the full life cycle management of recipe information data, which consists of four stages: analysis, design, system use and system maintenance.

[0204] 1. Analysis

[0205] Analysis, also known as business needs investigation and analysis, is the first critical stage in the recipe lifecycle and also the most important link. Tasks during the analysis phase include determining the recipe's functional type, specifying the corresponding overall objectives that must be achieved, and determining the feasibility of subsequent production and manufacturing. This phase is not reflected in the system's functionality. The analysis phase is typically further divided into three parts: analysis and confirmation of the recipe's category, function, and definition. The primary tasks of this phase are to determine whether the designed recipe meets production and manufacturing needs, whether it is duplicative, and whether it is scalable for future development. Attempting to design a recipe and develop an information management system without understanding its purpose is foolproof and will only result in a waste of time and money. Therefore, the needs analysis phase is an essential part of the recipe lifecycle.

[0206] 2. Design and maintenance

[0207] Design is another crucial phase in the recipe lifecycle. Its primary purpose is to establish the data foundation for the next phase of system application. Design encompasses two key aspects: first, recipe design, which aims to provide reliable recipe integration data for manufacturing. This includes categorization by type, function, and definition. Second, detailed system design, which concretizes recipe data management. Functional modules for managing basic recipe data are designed. This phase is closely tied to information system development, encompassing the design of recipes, recipe grouping, and logical recipe management modules. The relationships between these modules are detailed in the recipe creation and activation process described above.

[0208] 3. Application

[0209] System application is the most critical phase for a new system. All work is centered on production. Only when a system meets production requirements can the analysis and design phase be considered complete. Application involves implementing the results of the system design phase on a computer to achieve production control, improve productivity, and increase product yield. This phase requires detailed documentation of recipe usage.

[0210] 4. Maintenance and Deprecation

[0211] Maintenance is a long and arduous task after a recipe is operational. The primary task during this period is to ensure that the recipe continues to meet user needs. Specifically, recipe maintenance tasks include correcting errors discovered during system operation; modifying recipe versions to accommodate new production conditions when the environment changes; and promptly updating recipe-related data to meet production needs as new product and process requirements arise. Each maintenance activity is essentially a compressed and simplified process from recipe definition to application, which involves maintaining and updating recipe records.

[0212] The life cycle of a recipe is cyclical. After a recipe is designed, it is constantly updated to address application issues. After a certain level of use, it needs to be re-analyzed to determine whether the recipe still meets current business needs. If it still cannot meet system production needs after frequent maintenance and updates, the recipe is considered abandoned and a new recipe is re-analyzed and designed to start a new life cycle.

[0213] According to the embodiments of the present disclosure, the records of analysis, design, verification, and review of the formula may include: filling in the formula market demand on the demand interface, then clicking Analyze, filling in the analysis results, designing the corresponding formula according to the analysis results, and then clicking Verify to verify the formula design version. When the verification result passes, click the Review button to enter the formula review status. When the review result passes, the formula can be truly maintained in the system.

[0214] FIG11 is a schematic diagram of recipe life cycle management according to an embodiment of the present disclosure.

[0215] As shown in Figure 11, the recipe lifecycle can include the following key nodes: analysis, recipe design, recipe verification, recipe modeling, recipe configuration, recipe application, recipe maintenance, and recipe deprecation. Throughout the recipe lifecycle, it can be applied to the review and approval system, modification and activation control system, and production control system. Records of all events throughout the recipe lifecycle can include recipe requirement analysis event records, recipe requirement review event records, recipe requirement design event records, recipe solution verification event records, recipe modeling event records, recipe creation event records, recipe modification event records, recipe cloning event records, recipe freezing event records, recipe unfreezing event records, recipe activation event records, recipe deactivation event records, recipe upgrade event records, recipe upgrade audit event records, recipe usage event records, and recipe deprecation audit event records.

[0216] The recipe demand analysis event record includes the data written in the background when the system analyzes the demand data, eventtype is recipe, typename is none, eventname is analyze, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID which is empty.

[0217] The recipe requirement review event record includes the data written in the background when the system reviews the data: eventtype is recipe, typename is recipename, eventname is create, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0218] The recipe demand design event record includes the data written in the background when the system demands design data: eventtype is recipe, typename is recipename, eventname is design, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0219] The recipe scheme verification event record includes the data written in the background when the system verifies the scheme data: eventtype is recipe, typename is recipename, eventname is verify, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0220] The recipe modeling event record includes the data written in the background when the system is modeling data. The eventtype is recipe, typename is recipename, eventname is modeling, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0221] The recipe creation event record includes the system writing data in the background when adding new data: eventtype is recipe, typename is recipename, eventname is create, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0222] The recipe modification event record includes the data written by the system in the background when modifying the data: eventtype is recipe, typename is recipename, eventname is modify, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0223] The recipe cloning event record includes the data written in the background when the system clones data. The eventtype is recipe, typename is recipename, eventname is copy, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0224] The recipe freeze event record includes the data written in the background when the system freezes the data. The eventtype is recipe, the typename is recipename, the eventname is forzen, the eventdate is the current time, the createuser is the currently logged-in user, the createdate is the current time, and the eventID system automatically generates the LasteventID as the previous event ID.

[0225] The recipe unfreeze event record includes the data written in the background when the system unfreezes the data, eventtype is recipe, typename is recipename, eventname is unforzen, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0226] The recipe activation event record includes the data written in the background when the system activates the data. The eventtype is recipe, typename is recipename, eventname is active, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0227] The recipe upgrade event record includes the data written in the background when the system upgrades the data. The eventtype is recipe, typename is recipename, eventname is additionversion, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0228] The recipe upgrade audit event record includes the data written in the background when the system audits the data during the upgrade. The eventtype is recipe, the typename is recipename, the eventname is additionversionapporve, the eventdate is the current time, the createuser is the currently logged-in user, the createdate is the current time, and the eventID system automatically generates the LasteventID as the previous event ID.

[0229] Recipe discard audit event records include: When the system discards audit data, the background writes data with eventtype=recipe, typename=recipename, eventname=deleteapporve, eventdate=current time, createuser=currently logged in user, createdate=current time, and eventID=lasteventID automatically generated by the system as the previous event ID. When the system discards data, the background writes data with eventtype=recipe, typename=recipename, eventname=delete, eventdate=current time, createuser=currently logged in user, createdate=current time, and eventID=lasteventID automatically generated by the system as the previous event ID.

[0230] The recipe usage event record includes the data written in the background when the system is using the data. The eventtype is recipe, typename is recipename, eventname is using, useID is the production batch operation history data ID when using (which can be associated with the production data at that time), eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0231] According to an embodiment of the present disclosure, configuration data event records and cancellation data event records may also be included.

[0232] Configuration data event records include the data written in the background when the system is configuring data. Eventtype is recipe, typename is recipename, eventname is policysetup, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0233] The cancellation data configuration event record includes the data written in the background when the system cancels the configuration data. The eventtype is recipe, typename is recipename, eventname is deletepolicysetup, eventdate is the current time, createuser is the currently logged-in user, createdate is the current time, and the eventID system automatically generates LasteventID as the previous event ID.

[0234] According to an embodiment of the present disclosure, recipe information and recipe operation event records are both persistently stored in an Oracle database.

[0235] FIG12 is an architecture diagram of a modeling tool for recipe modeling according to an embodiment of the present disclosure.

[0236] According to an embodiment of the present disclosure, recipe modeling is performed within a modeling tool. As shown in Figure 12, the modeling tool includes recipe modeling, version control, freeze activation, modification rights control, recipe selection rule configuration, and recipe lifecycle management. Recipe modeling is used for recipe grouping modeling, logical recipe modeling, and recipe modeling. Furthermore, after recipe-related data is maintained within the modeling tool, it is sent to a database via the TCP / IP protocol for persistent storage. The database can store recipe information, recipe grouping information, and recipe operation history information. The database may be, for example, but not limited to, an Oracle database.

[0237] FIG13 is an architectural diagram of a user operation platform according to an embodiment of the present disclosure.

[0238] As shown in Figure 13, the user operation platform consists of a client interface, a server, and a database. The client interface is used for manufacturing processes, recipe recommendation and selection control, and recipe lifecycle management. It is developed based on WinForms and the Infragistics framework. The server includes a unified query service (QRY service), a unified scheduling service (CNM service), and OIC (Operator Interface Client) and EAP (Equipment Automation Programming) processing services (CNX services). The unified query service distributes client and other system interface messages through the CNM service. Client query messages are uniformly distributed to the QRY service for processing. The unified scheduling service distributes client and other system interface messages through the CNM service to the corresponding service for processing. In addition to message distribution load balancing, it also performs exception message processing, interception, and message data statistics, similar to gateway functions. The OIC and EAP processing services primarily perform Lot-related operations on client and EAP messages. The system also includes numerous services, such as TIMESrv, which handles scheduled tasks, and ERPSrv, which handles ERP (Enterprise Resource Planning) system messages, all of which are uniformly distributed by the CNM.

[0239] The server is developed based on the Spring Boot and Spring MVC frameworks, and the business execution process uses BPEL, an XML-based programming language used to describe business processes. Production information input and query operations performed by users on the client are sent to the backend server via the TIBCO Rendezvous middleware. After the backend server performs relevant logical processing, the results are persisted in the Oracle database.

[0240] The above configuration method can be applied to a production system, which can be a Manufacturing Execution System, or ziSEMI MES for short. The MES system is a system for full-process manufacturing management in semiconductor packaging and testing factories. It optimizes the management of the entire production process by tracking the real-time status of production orders, product completion, and equipment resources, from execution to completion. When real-time events occur in the factory, the MES can respond and report them in a timely manner, and guide and process them with current accurate data. By sharing information and implementing process automation in the factory, production efficiency and yield can be maximized, thereby achieving the goal of reducing production costs and improving production management. The MES system adopts a modular design to meet the production needs of different packaging and testing process technologies, thereby achieving the maximum input-output ratio and achieving the high flexibility and personalized production model required by Industry 4.0.

[0241] FIG14 is a diagram of a business functional architecture of a production system according to an embodiment of the present disclosure.

[0242] As shown in Figure 14, the production system 1400 according to an embodiment of the present disclosure includes a basic data module 1401, a process flow management module 1402, a production plan module 1403, a work-in-progress management module 1404, a batch management module 1405, an engineering management module 1406, a process recipe management module 1407, an equipment management module 1408, a machine limit management module 1409, a carrier management module 1410, a material management module 1411, a fixture management module 1412, and a packaging management module 1413.

[0243] The Basic Data Module 1401 provides basic system data modeling for the MES system, including plant modeling, equipment modeling, system status modeling, package modeling, user permission modeling, recipe basic data modeling, material basic data modeling, process flow modeling, strategy modeling, data collection basic data modeling, and alarm basic data modeling. Basic Data Module 1401 is a unified basic data model platform. As a standard framework, Basic Data Module 1401 provides the basic common functions required by customers and offers a series of customizable extensions, such as unified naming conventions, unified data enumeration types, and unified business management, facilitating the rapid development of applications. Furthermore, Basic Data Module 1401 standardizes object definitions across multiple applications, supporting multiple languages ​​and units. With many elements customized, the system becomes more flexible and scalable. Specifically, Plant Modeling supports the maintenance of plant basic data, multi-plant models, and the creation of factory zones. Equipment Modeling supports the creation of equipment master data and the maintenance of equipment port data. System Status Modeling supports the maintenance of batch status, equipment status, material status, carrier status, and fixture status. Package modeling is used to maintain package-related attribute data and centrally manage different package types. User permission modeling supports the creation and maintenance of users, user groups, and user roles, as well as password verification for user menus and user interface interfaces. Recipe basic data modeling supports the creation and maintenance of process recipe data and the maintenance of recipe-equipment data relationships. Material basic data modeling supports the creation and maintenance of material basic data. Process step flow modeling supports the creation and maintenance of basic data for steps, processes, sections, and procedures, supports visual interface editing of processes, the creation and maintenance of branch processes, and the creation and maintenance of rework processes. Strategy modeling supports product-level, process-level, and step-level flow modeling. Based on different policy configurations, the system selects different equipment and recipes for business operations during actual production. Data collection basic data modeling supports the creation and maintenance of data collection details and the maintenance of data collection rules. Alarm basic data modeling supports the maintenance of alarm system information, the management and maintenance of alarm trigger conditions, and the management and maintenance of subsequent actions triggered by alarms.

[0244] The process management module 1402 is a new set of process management specifications provided by the MES system. The process management module 1402 allows users to define products and their corresponding process flows, including each step type and related process control strategies.

[0245] In terms of version control, the MES system provides a complete version control mechanism. All active in-progress processes within the MES system must strictly adhere to this version control system to prevent production accidents caused by errors in production process data. Regarding process definition, the process flow management module 1402 supports multiple path selection and can automatically select a path based on pre-set conditions during on-site operations. The process flow management module 1402 also supports the control of various product process rules, enabling different process controls based on different product and process conditions. Conditions can be broken down into various levels, such as work step, process, process, product, and batch.

[0246] Process step flow modeling supports the creation and maintenance of basic data of work steps, processes, sections, and flows, supports visual interface editing of flows, supports the creation and maintenance of branch flows, and supports the creation and maintenance of rework flows.

[0247] Product process configuration can configure different process flows according to different products. Different recipes and equipment can be selected according to different strategies for the same product and process.

[0248] The production planning management module 1403 manages the production plan orders and work orders of the MES system. Users can create new production plan orders in the MES system and then create new work orders based on the planned orders. Users can also set the priority of corresponding planned orders and work orders in the MES system, as well as related information such as the planned time for the corresponding planned orders and work orders, to facilitate tracking of order completion during the production process. Planned orders can create and maintain planned orders for different factories, and can control priority and final delivery time. Work orders can create different work orders based on different planned orders, and can specify special attributes such as priority, owner, and process notes on the work orders.

[0249] The product management module 1404 is used for product processing management, guiding operators to process products according to pre-set process requirements, and tracking and recording processing information in detail. Among them, the most important operation management function of the product management module 1404 is to allow multiple batches to be processed simultaneously and provide historical traceability of batches. In addition to the commonly used batch creation, entry and exit, other functions of the product management module 1404 include: batching, batch combination, pause, release, skipping, future actions, rework within the station, rework outside the station, batch scrapping, batch cancellation and scrapping, batch-specified carriers, special business batch exit, batch exit, multi-core bonding entry, integrated editing and testing entry and exit, etc.

[0250] The main functions of the batch management module 1405 include batch division, batch merging, batch scrapping, batch cancellation and scrapping, carrier assignment, batch suspension, batch cancellation and suspension, etc.

[0251] The engineering management module 1406 manages engineering-related businesses within the MES system. The functions of this module include work permit management, QTime management, BOM management, process card management, and batch reservation. Among them, work permit management provides users with information to configure work permit related information and set the expiration time. It is used to control whether the system user has the corresponding authority when operating the OIC (Operator Interface Client) system. QTime management is used to set QTime rules and perform rule control when the batch passes the station. BOM management supports BOM maintenance and is used to control the material verification of equipment materials. Process card management supports the creation and maintenance of process cards within the system. Production can generate corresponding process card information based on different process cards for production circulation paper vouchers. Batch reservation supports batch reservation production function.

[0252] The process recipe management module 1407 contains process recipe information for all process flows and supports the creation and updating of process recipes. The setup and use of process recipes are version-controlled, including functions such as creation, activation, freezing, and cancellation. The process recipe management module 1407 supports the configuration of both logical and actual process recipes, such as processing parameters. It can also automatically select process recipes based on process conditions and previous-layer measurement results. The process recipe management module 1407 also supports the maintenance of relationships between equipment and process recipes.

[0253] The equipment management module 1408 defines basic equipment information, provides the creation and tracking management of equipment status models, and supports equipment permission management, equipment inspection, maintenance, repair reporting, and repair process management. Equipment basic data maintenance is used to maintain basic equipment data. Equipment inspection supports the maintenance of equipment inspection items and supports regular equipment inspection control. Equipment maintenance supports the setting of equipment maintenance and maintenance cycles and controls equipment maintenance. Equipment repair reporting supports equipment repair reporting. Equipment maintenance supports tracking of equipment maintenance processes. The equipment ledger supports querying equipment-related archival data.

[0254] The machine limit management module 1409 provides the control function of the MES machine limit. The machine limit management module 1409 supports setting limit conditions in different scenarios to control whether the batch can support production.

[0255] According to the equipment settings: You can set the rules for a certain scenario according to the specific situation of the equipment. When a batch encounters this rule during production, it cannot be produced through the machine limit.

[0256] According to product settings: You can set rules for a certain scenario based on the specific situation of the product. When a batch encounters this rule during production, it cannot be produced through this machine limit.

[0257] Set according to the process flow: You can set rules for a certain scenario based on the specific circumstances of the process flow. When a batch encounters this rule during production, it cannot be produced through this machine limit.

[0258] Positive and negative item settings: You can set positive rules, for example, production is allowed only under this rule; negative rules, production is not allowed under this condition.

[0259] The vehicle management module 1410 supports the management of vehicle-related services, including vehicle creation, vehicle cleaning, vehicle binding, vehicle unbinding, vehicle pausing, and vehicle release. The vehicle management module 1410 also supports vehicle lifespan management, vehicle usage count management, and vehicle type management. Vehicle creation is used to create vehicle data. Vehicle cleaning is used to clean new vehicles and used vehicles. Vehicle binding supports the binding of vehicle data and batches. Vehicle unbinding supports the unbinding of vehicle and batch data. Vehicle pausing controls the vehicle. Vehicle releasing resumes a paused vehicle.

[0260] The Materials Management Module 1411 manages raw materials, semi-finished products, and product data, as well as warehouse, storage, and shelf management. This module can be used independently or as an extension of the Warehouse Management Module within ERP, implementing interface functions or providing independent management and control. The Materials Management Module 1411 supports common warehouse management functions: material maintenance, material receipt, material loading and unloading, finished product warehousing, finished product shipment, returns, and transfers.

[0261] The fixture management module 1412 supports the management of fixture-related operations, including fixture creation, fixture cleaning, fixture loading, fixture unloading, fixture suspension, fixture release, fixture storage, fixture removal, fixture transfer, fixture scrapping, fixture cancellation, and fixture withdrawal from the production line. The fixture management module 1412 also supports fixture lifespan management and usage count management, as well as fixture type management. Among them, fixture creation is used to create fixture data. Fixture cleaning supports fixture cleaning operations. Fixture loading supports binding fixtures to equipment. Fixture unloading supports unbinding fixtures from equipment. Fixture suspension supports fixture suspension operations. Fixture release supports fixture release operations. Fixture storage supports fixture storage operations. Fixture removal supports fixture removal operations. Fixture transfer supports fixture replacement operations. Fixture scrapping supports fixture scrapping. Fixture cancellation supports the restoration of scrapped fixtures. The fixture return line and side warehouse support the fixture return line and side warehouse operation.

[0262] The packaging management module 1413 supports the management of packaging-related operations, including packaging warehousing, packaging outbound, box code generation and printing, packaging unpacking, packaging scrapping, and packaging cancellation and scrapping. Packaging warehousing is used for warehousing operations after batch packaging. Packaging outbound is used for shipping operations after batch packaging. Box code generation and printing supports box code generation and printing. Packaging unpacking is used to separate and pack already packaged batches. Packaging scrapping is used to scrap already packaged batches. Packaging cancellation and scrapping supports the restoration of scrapped packaging batches.

[0263] FIG15 is a system technical architecture diagram of a production system according to an embodiment of the present disclosure.

[0264] The technical architecture of the production system according to the embodiments of the present disclosure is based on a Client-Server (C / S) architecture. The server is responsible for data management, while the client is responsible for user interaction. The client module is divided into two parts: one for basic data modeling, named FactoryModeler (Modeler), and the other for the user interface, named Operator Interface Client (OIC).

[0265] As shown in Figure 15, the technical architecture of the production system according to an embodiment of the present disclosure includes a presentation layer, an access layer, an application layer, a CICD (continuous integration / continuous deployment) layer, and a resource layer. The presentation layer is based on WinForms and the Infragistics ziOIC development framework, developed in C#. The access layer's message middleware uses Tibco Rendezvous / RabbitMQ. The application layer includes communication, data, technical components, and languages / frameworks. Communication serialization uses XML / JSON, and protocols use REST API, TRDP / RVCM (Tibrv), and AMQP (RabbitMQ). Data connections use HikariCP / DBCP2, mapping uses Mybatis / ziORM, logging uses Log4j2, and relational uses Oracle / Gauss. Technical components use Tibrv / RabbitMQ for message queuing, and ziFlow Designer & Engine for business processes. The language / framework uses Spring Boot 2 for development, Java 8 for development, and Spring Scheduler / Quartz for timers. The CICD layer includes compilation, packaging, and release, monitoring, and application containers. Maven / Jenkins is used for compilation, packaging, and release; Zabbix is ​​used for monitoring; and the built-in Tomcat is used for application containers. The resource layer includes compute, storage, and operating systems. Compute uses physical machines or cloud virtual machines (VMs) such as RDS; storage uses physical disks or cloud VM storage; and the operating system uses HPUX, Linux, or Windows.

[0266] 16A and 16B are application architecture diagrams of a production system according to an embodiment of the present disclosure.

[0267] As shown in Figures 16A and 16B, the CS architecture selected for the application architecture of the production system according to the embodiment of the present disclosure is used. The OIC client engineering page is developed using the C# language, which mainly implements the operation of user interaction page data and the display of query page data. The main business interface code is under mes-be-oic\MES.Module\Views, and the common components are under the mes-be-oic\MES.Common file; the server-side project encapsulates the unified development framework ziFrame, which includes ORM, ESB (TibcoRV), BPEL Engine, Exception mechanism, log log, internationalization, Common-Utils, transaction, JDBC pool, Message (xml parsing), etc., and supports xml message format with the front-end message communication. Due to the production process characteristics of the semiconductor industry, the server-side mes-core layer implements the core business logic processing, and the mes-solution layer provides business entry and customer customization function implementation. The Sever-side core layer function code module is: zisemi-mes-be-boot (main system framework, SpringBoot), zisemi-mes-be-query (all query modules for directly obtaining data in the OIC system, unified request XML format for the front end, unified data response XML format for the back end, the only difference: different businesses have different request data), zisemi-mes-be-policy (module code for production strategies in the basic data configuration module of the system), zisemi-mes-be-schedule (timer function in the system), the server-side solution code module is: zisemi-mes-code (OIC business core code area, so all businesses need to enter this module for processing business processing), zisemi-mes-data (all data models and javabean objects in the OIC system), zisemi-mes-be-solution (the entry point of the OIC business code, so the XML requested by the front end is classified and processed according to the TibcoRV message middleware mechanism, and then corresponds to different sub-files under the module code, and enters the entry point of the corresponding business code in the back end), the mes-framework code modules are: zidm-dependencies (java project file corresponding to the dependency package configuration), zidm-flow (corresponding to the process flow module code in the basic data module of the system), zidm-frame, zidm-parent.

[0268] FIG17 is a block diagram of an electronic device suitable for implementing a configuration method for a production system according to an embodiment of the present disclosure.

[0269] As shown in Figure 17, the electronic device 1700 according to an embodiment of the present disclosure includes a processor 1701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1702 or a program loaded from a storage portion 1708 into a random access memory (RAM) 1703. The processor 1701 may, for example, include a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or a related chipset and / or a dedicated microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 1701 may also include an onboard memory for caching purposes. The processor 1701 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.

[0270] Various programs and data required for the operation of the electronic device 1700 are stored in the RAM 1703. The processor 1701, the ROM 1702, and the RAM 1703 are connected to each other via a bus 1704. The processor 1701 executes the various operations of the method flow according to the embodiment of the present disclosure by executing the programs in the ROM 1702 and / or the RAM 1703. It should be noted that the programs may also be stored in one or more memories other than the ROM 1702 and the RAM 1703. The processor 1701 may also execute the various operations of the method flow according to the embodiment of the present disclosure by executing the programs stored in the one or more memories.

[0271] According to an embodiment of the present disclosure, electronic device 1700 may further include an input / output (I / O) interface 1705, which is also connected to bus 1704. Electronic device 1700 may further include one or more of the following components connected to I / O interface 1705: an input portion 1706 including a keyboard, mouse, etc.; an output portion 1707 including devices such as a cathode ray tube (CRT), a liquid crystal display (LCD), and speakers; a storage portion 1708 including a hard disk; and a communication portion 1709 including a network interface card such as a LAN card or a modem. Communication portion 1709 performs communication processing via a network such as the Internet. A drive 1710 is also connected to I / O interface 1705 as needed. Removable media 1711, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed in drive 1710 as needed, so that computer programs read from the removable media can be installed into storage portion 1708 as needed.

[0272] The present disclosure also provides a non-transitory computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments, or may exist independently and not be incorporated into the device / apparatus / system. The computer-readable storage medium carries one or more programs, and when executed, implements the method according to the embodiments of the present disclosure.

[0273] According to an embodiment of the present disclosure, a computer-readable storage medium may be a non-volatile computer-readable storage medium, for example, it may include but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, apparatus, or device. For example, according to an embodiment of the present disclosure, a computer-readable storage medium may include the ROM 1702 and / or RAM 1703 described above and / or one or more memories other than ROM 1702 and RAM 1703.

[0274] Embodiments of the present disclosure also include a computer program product comprising a computer program containing program code for executing the method shown in the flowchart. When the computer program product is executed in a computer system, the program code is used to cause the computer system to implement the method for verifying process data of a product provided by the embodiments of the present disclosure.

[0275] The computer program executes the above functions defined in the system / device of the embodiment of the present disclosure when the computer program is executed by the processor 1701. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.

[0276] In one embodiment, the computer program may be stored on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may be transmitted and distributed in the form of a signal over a network medium, downloaded and installed via the communication portion 1709, and / or installed from removable media 1711. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to wireless, wired, or any suitable combination thereof.

[0277] In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 1709 and / or installed from the removable medium 1711. When the computer program is executed by the processor 1701, the above-described functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the systems, devices, means, modules, units, etc. described above can be implemented by computer program modules.

[0278] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computer programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, languages ​​such as Java, C++, python, "C" or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect via the Internet).

[0279] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, program segment, or a part of code, and the above-mentioned module, program segment, or a part of code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0280] Those skilled in the art will appreciate that the features described in the various embodiments and / or claims of this disclosure may be combined and / or coupled in various ways, even if such combinations and / or couplings are not explicitly described in this disclosure. In particular, the features described in the various embodiments and / or claims of this disclosure may be combined and / or coupled in various ways without departing from the spirit and teachings of this disclosure. All such combinations and / or couplings are intended to fall within the scope of this disclosure.

[0281] The embodiments of the present disclosure are described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of the present disclosure. Although each embodiment has been described separately above, this does not mean that the measures in each embodiment cannot be used in combination to advantage. The scope of the present disclosure is defined by the appended claims and their equivalents. Without departing from the scope of the present disclosure, those skilled in the art may make various substitutions and modifications, which should all fall within the scope of the present disclosure.

Claims

1. A method for configuring a production system, the production system comprising a plurality of production equipment, the method include: creating recipes for the plurality of production equipment according to user input data, wherein each production equipment is associated with one or more recipes; In response to a configuration request for at least one of the plurality of production devices, determining a recipe selection rule applicable to the configuration request from a plurality of preset recipe selection rules; According to the determined recipe selection rule, selecting a recipe matching the configuration request from the created multiple recipes; The selected recipes are used to configure the production equipment associated with each recipe.

2. The method according to claim 1, in, Each recipe selection rule has a priority, and determining a recipe selection rule applicable to the configuration request from among the preset multiple recipe selection rules includes: extracting recipe query information for the at least one production device from the configuration request; Among the multiple recipe selection rules, a recipe selection rule with the highest priority that matches the recipe query information is determined as the recipe selection rule applicable to the recipe matching request.

3. The method according to claim 2, in, Each recipe selection rule specifies at least one data item to be compared, and the priority of each recipe selection rule is determined according to the number of data items specified by the recipe selection rule. The greater the number of data items, the higher the priority.

4. The method according to claim 3, wherein among the multiple recipe selection rules, a recipe selection rule with the highest priority that matches the recipe query information is determined as the recipe selection rule applicable to the recipe matching request include: In descending order of priority, determining in sequence whether the data items specified by each recipe selection rule are a subset or a complete set of the data items involved in the recipe query information; If the data item specified by the current recipe selection rule is a subset or a full set of the data items involved in the recipe query information, it is determined that the current recipe selection rule matches the recipe query information; otherwise, it is determined that the current recipe selection rule does not match the recipe query information.

5. The method according to claim 3 or 4, in, The multiple recipe selection rules include product-level selection rules, process-level selection rules and step-level selection rules. The priority of the product-level selection rules is higher than that of the process-level selection rules, and the priority of the process-level selection rules is higher than that of the step-level selection rules.

6. The method according to claim 5, in, The data items specified by the product-level selection rule include: data items about the product, data items about the main process and sub-process of the process, data items about the process steps and data items about the recipe. The data items specified by the process level selection rule include: data items about the process main flow and sub-flow, data items about the process steps and data items about the recipe; The data items specified by the process-step selection rule include: data items about process sub-flows, data items about process steps, and data items about recipes.

7. The method according to any one of claims 1 to 6, wherein each recipe selection rule specifies at least one data item to be compared, and the recipe matching the configuration request is selected from the multiple recipes created according to the determined recipe selection rule. include: For each recipe, determine whether the value of each recipe data item defined by the determined recipe selection rule in the recipe is consistent with the value in the configuration request. If yes, determine the recipe as one of the recipes matching the configuration request.

8. The method according to any one of claims 1 to 7, in, The step of creating a recipe for the plurality of production equipment according to the user input data comprises: Creating at least one recipe group based on recipe grouping information input by a user, wherein the recipe group includes a grouping logic, wherein the grouping logic indicates a production device and a recipe path corresponding to each recipe group, wherein the recipe path is used to search for a recipe in the recipe group; Adding at least one recipe to the recipe group based on recipe information input by a user for the recipe group; The production equipment and the logical formula corresponding to each recipe in the recipe group are determined according to the grouping logic of the recipe group, and the data model of the recipe is associated with the production equipment and the logical formula corresponding to the recipe.

9. The method according to claim 8, in, At least one of the recipe group and the recipe has an activation state, and the activation state is used to indicate whether the corresponding recipe group or recipe is available.

10. The method according to claim 9, further comprising: include: Before adding at least one recipe to the recipe group, determining whether each recipe to be added is available according to the activation state of the recipe; The adding of at least one recipe to the recipe group includes: adding an available recipe among the at least one recipe to the recipe group.

11. The method according to any one of claims 8 to 10, further comprising: include: At least one of the recipe group and the recipe is edited according to a user operation, and the editing includes modification, deletion and upgrading.

12. The method according to claim 11, in, At least one of the recipe group and the recipe has a frozen state, and the frozen state is used to indicate whether the corresponding recipe group or recipe is editable.

13. The method according to any one of claims 8 to 12, further comprising: include: Establishing data models for multiple candidate recipes respectively, wherein adding at least one recipe to the recipe group based on recipe information input by a user for the recipe group comprises: From the multiple candidate recipes, a data model of a candidate recipe that is consistent with the recipe name in the recipe information is selected as the data model of the recipe in the recipe group.

14. The method according to claim 13, in, Establishing data models for multiple candidate recipes includes: for each candidate recipe, Importing or creating a data model of the candidate recipe from a database; The freezing state of the data model of the candidate recipe is set to be uneditable according to a freezing operation of the user. The activation state of the data model of the candidate recipe is set to be available according to an activation operation of the user.

15. The method according to claim 14, further comprising: include: After the data model of the candidate recipe is imported from the database or created, In response to receiving a start editing instruction for the data model of the candidate recipe, starting to edit the data model of the candidate recipe according to the editing operation of the user; In response to receiving an end editing instruction for the data model of the candidate recipe, the editing of the data model of the candidate recipe according to the editing operation of the user is ended, In the time period after receiving the start editing instruction and before receiving the end editing instruction, other users except the user are prohibited from editing the data model of the candidate recipe.

16. The method according to any one of claims 1 to 15, further comprising: include: In response to an operation event of a user on a recipe, the operation event is associated with the recipe and stored, wherein the operation event on the recipe includes at least one of creation, editing, cloning, freezing, unfreezing, activation, deactivation, upgrading, and use of the recipe; as well as In response to a query request for a recipe in which a specified operation event occurs, a recipe associated with the specified operation event is determined from among a plurality of stored recipes. 17 . An electronic device comprising a memory and a processor, wherein the memory stores instructions executable by the processor, and when the instructions are executed by the processor, the processor executes the method according to claim 1 .

18. A non-transitory computer-readable storage medium storing computer instructions, in, The computer instructions are used to cause the computer to execute the method according to any one of claims 1 to 16.

19. A computer program product comprising a computer program, which, when executed by a processor, implements the method according to any one of claims 1 to 16.

Citation Information

Cited By

  • Communication protocol adaptation method and system

    CN122554551A