Wafer distribution method, device, equipment, medium and program product

By constructing the objective function and solving under constraints, the problem of low wafer distribution efficiency in the prior art is solved, and a fast and efficient wafer distribution solution is achieved.

CN119905427AActive Publication Date: 2025-04-29UNIV OF SCI & TECH OF CHINA
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411990466.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-31
Publication Date
2025-04-29
Estimated Expiration
2044-12-31

AI Technical Summary

Technical Problem

In large-scale data processing, the prior art uses brute force search methods to distribute wafers, resulting in a long time consumption and low allocation efficiency.

Method used

By determining the allocation relationship between the wafer storage container and the processing area, the objective function is constructed to characterize the gap between the actual allocation result and the expected allocation result, and solve the objective function under constraints to obtain the optimal wafer allocation scheme.

Benefits of technology

When multiple constraints are met, a better wafer distribution scheme is quickly obtained, which improves distribution efficiency and reduces time consumption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119905427A_ABST
    Figure CN119905427A_ABST
Patent Text Reader

Abstract

The invention provides a wafer allocation method, device and equipment, a medium and a program product, which can be applied to the field of cloud computing. The method comprises the following steps: determining a constraint condition for distributing wafers in a wafer storage container to a wafer processing area according to a distribution relation between the wafer storage container and the wafer processing area in a distribution task; defining the distribution state of the wafers in the wafer storage container so as to construct a target function for representing the difference between the actual distribution result and the expected distribution result according to the definition result; under the constraint condition, based on the storage information of the wafer storage container in the allocation task and the area number of the wafer processing areas, solving the target function to obtain a solving result; and under the condition of determining that the solving result meets a preset condition, determining a wafer allocation scheme according to the solving result, the preset condition being that the difference between the actual allocation result and the expected allocation result is minimum.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of cloud computing, and more specifically, to a wafer allocation method, device, equipment, medium and program product. Background Art

[0002] Wafers are key materials for semiconductor manufacturing. During wafer processing, wafers are taken out of storage containers and allocated to the processing area of ​​the machine for centralized processing. Currently, wafer allocation technology mainly uses a brute force search method, that is, to determine the best wafer allocation strategy by trying all possible allocation schemes.

[0003] In the process of realizing the concept of the present disclosure, the inventors found that there are at least the following problems in the related technology: when faced with large-scale data processing, the brute force search method is used to traverse the wafer allocation plan, which takes a long time and results in low wafer allocation efficiency. Summary of the invention

[0004] In view of this, the present disclosure provides a wafer allocation method, apparatus, device, medium and program product.

[0005] One aspect of the present disclosure provides a wafer allocation method, comprising: determining the constraint conditions for allocating the wafers in the wafer storage container to the wafer processing area according to the allocation relationship between the wafer storage container and the wafer processing area in the allocation task; defining the allocation status of the wafers in the wafer storage container to construct an objective function for characterizing the gap between the actual allocation result and the expected allocation result according to the definition result, wherein the expected allocation result is to evenly allocate the wafers in a plurality of the wafer storage containers to the plurality of the wafer processing areas; solving the objective function under the constraint conditions based on the storage information of the wafer storage container and the number of wafer processing areas in the allocation task to obtain a solution result; determining a wafer allocation plan according to the solution result when it is determined that the solution result satisfies a preset condition, wherein the preset condition is that the gap between the actual allocation result and the expected allocation result is minimized.

[0006] According to an embodiment of the present disclosure, the allocation status of the wafers in the above-mentioned wafer storage container is defined, including: when it is determined that all the wafers in the above-mentioned wafer storage container are allocated to the same wafer processing area, the allocation status of the wafers in the above-mentioned wafer storage container is defined as a value representing a positive direction in the binary decision variable; when it is determined that all the wafers in the above-mentioned wafer storage container are not allocated to the same wafer processing area, the allocation status of the wafers in the above-mentioned wafer storage container is defined as a value representing a negative direction in the binary decision variable.

[0007] According to an embodiment of the present disclosure, the objective function for characterizing the gap between the actual allocation result and the expected allocation result is constructed according to the definition result, including: constructing factors for calculating the actual allocation result according to the definition result and the variables for characterizing the number of wafers in the wafer storage container; constructing factors for calculating the expected allocation result according to the number of wafers in each of the wafer storage containers and the number of areas in the plurality of wafer processing areas; and subtracting the factor corresponding to the actual allocation result and the factor corresponding to the expected allocation result to construct the objective function.

[0008] According to an embodiment of the present disclosure, the above-mentioned constraints include allocation constraints and capacity constraints. The above-mentioned constraints for allocating wafers in the above-mentioned wafer storage containers to the above-mentioned wafer processing areas are determined based on the allocation relationship between the wafer storage containers and the wafer processing areas in the allocation task, including: determining, from the multiple wafer processing areas, a target processing area corresponding to each of the above-mentioned wafer storage containers and capable of wafer allocation; generating the above-mentioned allocation constraints based on the allocation relationship between the above-mentioned target processing area and the above-mentioned wafer storage containers; generating the above-mentioned capacity constraints based on the maximum capacity of wafers for each of the above-mentioned wafer processing areas.

[0009] According to an embodiment of the present disclosure, under the above-mentioned constraints, based on the storage information of the above-mentioned wafer storage container and the number of areas in the above-mentioned wafer processing area in the above-mentioned allocation task, the above-mentioned objective function is solved to obtain a solution result, including: generating a constraint expression corresponding to the above-mentioned binary decision variable according to the above-mentioned constraints; inputting the number of wafers stored in each of the above-mentioned wafer storage containers in the above-mentioned storage information and the above-mentioned number of areas into the above-mentioned objective function, so as to solve the above-mentioned objective function under the limitation of the above-mentioned constraint expression, and output the above-mentioned solution result.

[0010] According to an embodiment of the present disclosure, the method further includes: comparing the multiple solution results output by the objective function to determine a minimum value from the multiple solution results, wherein the minimum value is a solution result that satisfies the preset conditions.

[0011] According to an embodiment of the present disclosure, the wafer allocation scheme is determined according to the solution results, including: determining the values ​​of multiple binary decision variables corresponding to the solution results; determining a variable set corresponding to each of the wafer processing areas from the values ​​of the multiple binary decision variables, wherein the multiple values ​​in the variable set respectively correspond to the multiple wafer storage containers; for each of the wafer processing areas, extracting the positive values ​​in the variable set to determine the multiple wafer storage containers that allocate wafers to the wafer processing areas, and obtaining an allocation sub-scheme corresponding to the wafer processing areas; combining the multiple allocation sub-schemes of the wafer processing areas to obtain a wafer allocation scheme corresponding to the allocation task.

[0012] Another aspect of the present disclosure provides a wafer allocation device, including: a constraint determination module, used to determine the constraint conditions for allocating the wafers in the above-mentioned wafer storage container to the above-mentioned wafer processing area according to the allocation relationship between the wafer storage container and the wafer processing area in the allocation task; a function construction module, used to define the allocation status of the wafers in the above-mentioned wafer storage container, so as to construct an objective function for characterizing the gap between the actual allocation result and the expected allocation result according to the definition result, wherein the above-mentioned expected allocation result is to evenly allocate the wafers in the multiple wafer storage containers to the multiple wafer processing areas; a function solving module, used to solve the above-mentioned objective function under the above-mentioned constraint conditions based on the storage information of the above-mentioned wafer storage container and the number of areas of the above-mentioned wafer processing area in the above-mentioned allocation task to obtain a solution result; a scheme determination module, used to determine the wafer allocation scheme according to the above-mentioned solution result when it is determined that the above-mentioned solution result meets the preset condition, wherein the above-mentioned preset condition is that the gap between the above-mentioned actual allocation result and the above-mentioned expected allocation result is minimized.

[0013] Another aspect of the present disclosure provides an electronic device, including: one or more processors; and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the method described above.

[0014] Another aspect of the present disclosure provides a computer-readable storage medium storing computer-executable instructions, which are used to implement the above method when executed.

[0015] Another aspect of the present disclosure provides a computer program product, the computer program product comprising computer executable instructions, and the instructions are used to implement the above method when executed.

[0016] According to an embodiment of the present disclosure, constraints are established based on the allocation relationship between wafer storage containers and wafer processing areas, and the allocation status of wafers in wafer storage containers is defined. An objective function is constructed to characterize the gap between actual allocation results and expected allocation results. In the process of allocating wafers, a better wafer allocation plan can be quickly obtained while satisfying multiple constraints, thereby effectively improving the wafer allocation efficiency and reducing the time consumed. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] The above and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:

[0018] Figure 1 An exemplary system architecture to which the wafer allocation method and apparatus of the present disclosure can be applied is schematically shown;

[0019] Figure 2 A flowchart of a wafer allocation method according to an embodiment of the present disclosure is schematically shown;

[0020] Figure 3 A schematic diagram of wafer allocation in a wafer allocation method according to an embodiment of the present disclosure is schematically shown;

[0021] Figure 4 A schematic diagram schematically shows a wafer allocation scheme determination in a wafer allocation method according to an embodiment of the present disclosure;

[0022] Figure 5 A block diagram of a wafer allocation device according to an embodiment of the present disclosure is schematically shown;

[0023] Figure 6 A block diagram of an electronic device suitable for implementing a wafer allocation method according to an embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION

[0024] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.

[0025] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of the features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.

[0026] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.

[0027] When using expressions such as "at least one of A, B, and C, etc.", they should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).

[0028] In the embodiments of the present disclosure, the collection, updating, analysis, processing, use, transmission, provision, disclosure, storage, etc. of the data involved (for example, including but not limited to user personal information) are in compliance with the provisions of relevant laws and regulations, are used for legitimate purposes, and do not violate public order and good morals. In particular, necessary measures are taken for user personal information to prevent illegal access to user personal information data and maintain the security of user personal information and network security.

[0029] In the embodiments of the present disclosure, the user's authorization or consent is obtained before obtaining or collecting the user's personal information.

[0030] The embodiments of the present disclosure provide a wafer allocation method, device, equipment, medium and program product. The method includes: determining the constraint conditions for allocating wafers in a wafer storage container to a wafer processing area according to the allocation relationship between wafer storage containers and wafer processing areas in the allocation task; defining the allocation state of the wafers in the wafer storage container, and constructing an objective function for characterizing the gap between the actual allocation result and the expected allocation result according to the definition result, wherein the expected allocation result is to evenly allocate the wafers in multiple wafer storage containers to multiple wafer processing areas; under the constraint condition, based on the storage information of the wafer storage container and the number of wafer processing areas in the allocation task, solving the objective function to obtain a solution result; when it is determined that the solution result meets the preset condition, determining the wafer allocation plan according to the solution result, wherein the preset condition is that the gap between the actual allocation result and the expected allocation result is minimized.

[0031] Figure 1The following schematically shows an exemplary system architecture to which the wafer allocation method and apparatus disclosed herein can be applied. It should be noted that: Figure 1 What is shown is merely an example of a system architecture to which the embodiments of the present disclosure can be applied, in order to help those skilled in the art understand the technical content of the present disclosure, but it does not mean that the embodiments of the present disclosure cannot be used in other devices, systems, environments or scenarios.

[0032] like Figure 1 As shown, the system architecture 100 according to this embodiment may include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104, and a server 105. The network 104 is used to provide a medium for a communication link between the first terminal device 101, the second terminal device 102, the third terminal device 103, and the server 105. The network 104 may include various connection types, such as wired and / or wireless communication links, etc.

[0033] The user may use the first terminal device 101, the second terminal device 102, and the third terminal device 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various communication client applications may be installed on the first terminal device 101, the second terminal device 102, and the third terminal device 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, and / or social platform software, etc. (only for example).

[0034] The first terminal device 101, the second terminal device 102, and the third terminal device 103 may be various electronic devices having display screens and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, and the like.

[0035] The server 105 may be a server that provides various services, such as a background management server (only as an example) that provides support for websites browsed by users using the first terminal device 101, the second terminal device 102, and the third terminal device 103. The background management server may analyze and process the received data such as user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal device.

[0036] It should be noted that the wafer allocation method provided in the embodiment of the present disclosure can generally be executed by the server 105. Accordingly, the wafer allocation device provided in the embodiment of the present disclosure can generally be set in the server 105. The wafer allocation method provided in the embodiment of the present disclosure can also be executed by a server or server cluster that is different from the server 105 and can communicate with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105. Correspondingly, the wafer allocation device provided in the embodiment of the present disclosure can also be set in a server or server cluster that is different from the server 105 and can communicate with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105. Alternatively, the wafer allocation method provided in the embodiment of the present disclosure can also be performed by the first terminal device 101, the second terminal device 102 or the third terminal device 103, or by other terminal devices that are different from the first terminal device 101, the second terminal device 102 or the third terminal device 103. Accordingly, the wafer distribution device provided in the embodiment of the present disclosure may also be arranged in the first terminal device 101, the second terminal device 102 or the third terminal device 103, or in other terminal devices different from the first terminal device 101, the second terminal device 102 or the third terminal device 103.

[0037] It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration. Any number of terminal devices, networks and servers may be provided according to implementation requirements.

[0038] Figure 2 The flowchart of the wafer allocation method according to the embodiment of the present disclosure is schematically shown.

[0039] like Figure 2 As shown, the method includes operations S210 to S240.

[0040] In operation S210 , a constraint condition for allocating wafers in a wafer storage container to a wafer processing area is determined according to an allocation relationship between wafer storage containers and wafer processing areas in an allocation task.

[0041] In operation S220, the allocation status of wafers in wafer storage containers is defined to construct an objective function for characterizing the gap between actual allocation results and expected allocation results based on the definition results, wherein the expected allocation result is to evenly allocate wafers in multiple wafer storage containers to multiple wafer processing areas.

[0042] In operation S230 , under the constraint condition, based on the storage information of the wafer storage container and the number of regions of the wafer processing region in the allocation task, the objective function is solved to obtain a solution result.

[0043] In operation S240 , when it is determined that the solution result meets a preset condition, a wafer allocation scheme is determined according to the solution result, wherein the preset condition is that the gap between the actual allocation result and the expected allocation result is minimized.

[0044] According to the embodiments of the present disclosure, a wafer is a basic material in semiconductor manufacturing. It is a round silicon wafer that is used to manufacture integrated circuits and various semiconductor devices after highly precise processing. In semiconductor production scenarios, wafer storage containers are used to protect, transport and store wafers. When processing wafers, it is necessary to allocate wafers in wafer storage containers to the wafer processing area of ​​the machine so that the machine can centrally process the wafers in a certain order and steps.

[0045] According to the embodiments of the present disclosure, the wafer allocation process is abstracted into mathematical calculations, and the optimal wafer allocation plan can be quickly determined. After the allocation task is acquired, the allocation relationship between the wafer storage container and the wafer processing area is determined, and multiple constraints used in the mathematical calculation are determined based on the allocation relationship. There may be a unique corresponding allocation relationship or a one-to-many allocation relationship between the wafer storage container and the wafer processing area. For example, the wafers in the wafer storage container A can only be allocated to one of the wafer processing area A and the wafer processing area B.

[0046] According to an embodiment of the present disclosure, after determining the constraint conditions, the decision variables used in the mathematical calculation are defined. Among them, the decision variable is the allocation status of the wafers in the wafer storage container, and the allocation status is used to characterize whether all the wafers in the wafer storage container are allocated to a wafer processing area. In the process of defining the decision variables, different identifiers can be defined for the decision variables according to different allocation states to facilitate mathematical calculations.

[0047] According to an embodiment of the present disclosure, based on the definition of decision variables, an objective function is constructed to characterize the gap between the actual allocation result and the expected allocation result. The expected allocation result is to evenly allocate the wafers in multiple wafer storage containers to the wafer processing areas. For example, there are two wafer storage containers, container A and container B, the number of wafers in container A is 4, the number of wafers in container B is 8, and there are 3 wafer processing areas. Then the expected allocation result is to allocate 3 wafers to each wafer processing area.

[0048] According to the embodiments of the present disclosure, under the constraint condition, based on the storage information of the wafer storage container and the number of wafer processing areas in the allocation task, the objective function is solved, and the specific solution process can be calculated using a heuristic algorithm. A result with the smallest difference from the expected allocation result is selected from the multiple solution results obtained, so as to generate a corresponding wafer allocation plan according to the result.

[0049] According to an embodiment of the present disclosure, constraints are established based on the allocation relationship between wafer storage containers and wafer processing areas, and the allocation status of wafers in wafer storage containers is defined. An objective function is constructed to characterize the gap between actual allocation results and expected allocation results. In the process of allocating wafers, a better wafer allocation plan can be quickly obtained while satisfying multiple constraints, thereby effectively improving the wafer allocation efficiency and reducing the time consumed.

[0050] According to an embodiment of the present disclosure, the allocation status of wafers in a wafer storage container is defined, including: when it is determined that all wafers in the wafer storage container are allocated to the same wafer processing area, the allocation status of the wafers in the wafer storage container is defined as a value representing a positive direction in the binary decision variable; when it is determined that all wafers in the wafer storage container are not allocated to the same wafer processing area, the allocation status of the wafers in the wafer storage container is defined as a value representing a negative direction in the binary decision variable.

[0051] According to an embodiment of the present disclosure, the allocation status of wafers in the wafer storage container is defined as a binary decision variable x ij , i represents the i-th wafer storage area, and j represents the j-th wafer processing area. If all the wafers in the i-th wafer storage area are allocated to the j-th wafer processing area, then x ij = 1. On the contrary, if not all wafers in the i-th wafer storage area are allocated to the j-th wafer processing area, then x ij =0. The specific expression is as follows:

[0052]

[0053] According to the embodiment of the present disclosure, since the wafers in a wafer storage container are a batch, multiple wafers cannot be allocated to different wafer processing areas. By defining the allocation state, the allocation method of the wafers is further limited, and the scheme without uniform allocation of all wafers is rejected.

[0054] According to an embodiment of the present disclosure, an objective function for characterizing the gap between an actual allocation result and an expected allocation result is constructed according to the definition result, including: constructing factors for calculating the actual allocation result according to the definition result and the variables for characterizing the number of wafers in the wafer storage container; constructing factors for calculating the expected allocation result according to the number of wafers in each wafer storage container and the number of areas in multiple wafer processing areas; and subtracting the factor corresponding to the actual allocation result from the factor corresponding to the expected allocation result to construct the objective function.

[0055] According to an embodiment of the present disclosure, based on the definition results of the decision variables and the variables used to characterize the number of wafers in the wafer storage container, a factor for calculating the actual allocation result of the wafer processing area is constructed. The specific factors are as follows:

[0056]

[0057] Among them, total j represents the number of wafers assigned to the jth wafer processing area, W i Indicates the number of wafers in the wafer storage container.

[0058] According to an embodiment of the present disclosure, factors for calculating the expected allocation result are constructed based on the number of wafers in each wafer storage container and the number of regions in multiple wafer processing regions. The specific factors are as follows:

[0059]

[0060] in, It represents the number of wafers in each wafer processing area after the wafers in the multiple wafer storage containers are evenly distributed to the multiple wafer processing areas, and Z represents the number of the wafer processing areas.

[0061] According to an embodiment of the present disclosure, the factor corresponding to the actual allocation result is subtracted from the factor corresponding to the expected allocation result to construct an objective function. The objective function is used to solve the minimum difference between the actual allocation result and the expected allocation result. The specific factors are as follows:

[0062]

[0063] Among them, total z It represents the number of wafers in the Zth wafer processing area, Z≥j, and the value range of Z changes with the change of machine model.

[0064] According to the embodiments of the present disclosure, by constructing an objective function for characterizing the gap between the actual allocation result and the expected allocation result, balanced allocation can be performed when allocating wafers. Balanced allocation can extend the service life of the machine and reduce the overuse of a single machine.

[0065] According to an embodiment of the present disclosure, the constraints include allocation constraints and capacity constraints. According to the allocation relationship between the wafer storage container and the wafer processing area in the allocation task, the constraints for allocating the wafers in the wafer storage container to the wafer processing area are determined, including: from multiple wafer processing areas, determining a target processing area corresponding to each wafer storage container and capable of wafer allocation; generating allocation constraints according to the allocation relationship between the target processing area and the wafer storage container; and generating capacity constraints based on the maximum capacity of each wafer processing area for wafers.

[0066] According to an embodiment of the present disclosure, since the multiple wafers in each wafer storage container are from the same batch, and each batch can only be allocated to one wafer processing area. Therefore, it is necessary to define constraints in the allocation process. Specifically, a target processing area corresponding to each wafer storage container that can be used for wafer allocation is determined from multiple wafer processing areas. Among them, the target processing area can be one or more. In the process of wafer allocation, a batch of wafers can only be allocated to one of the multiple target processing areas, thereby establishing corresponding allocation constraints.

[0067] According to the embodiments of the present disclosure, each wafer processing area has a maximum capacity for wafers, so the number of wafers allocated to the wafer processing area needs to be less than or equal to the maximum capacity. Among them, the maximum capacity of the machine is usually 25 wafers. By setting constraints, the generated wafer allocation plan is feasible in the process of allocating wafers, and can meet the feasible configuration of the allocation process, so that the allocation result is more in line with user needs.

[0068] According to an embodiment of the present disclosure, under constraint conditions, based on the storage information of the wafer storage container and the number of areas in the wafer processing area in the assigned task, the objective function is solved to obtain a solution result, including: generating a constraint expression corresponding to the binary decision variable according to the constraint conditions; inputting the number of wafers stored in each wafer storage container in the storage information, and the number of areas into the objective function, so as to solve the objective function under the limitation of the constraint expression and output the solution result.

[0069] According to an embodiment of the present disclosure, a constraint expression corresponding to a binary decision variable is generated according to a constraint condition, wherein the constraint expression of the allocation constraint condition is as follows:

[0070]

[0071] Among them, possible_Zone iThe decision variable represents the target processing area to which wafers can be allocated corresponding to the wafer storage area. When all wafers in the wafer storage area are allocated to the corresponding target processing area, the decision variable takes the positive value 1.

[0072] According to an embodiment of the present disclosure, the constraint expression that accommodates the constraint condition is as follows:

[0073]

[0074] Among them, M j Indicates the maximum wafer capacity of the wafer processing area.

[0075] Figure 3 A schematic diagram of wafer allocation in a wafer allocation method according to an embodiment of the present disclosure is schematically shown.

[0076] According to an embodiment of the present disclosure, the number of wafers stored in each wafer storage container and the number of regions in the storage information are input into the objective function, so as to solve the objective function under the limitation of the constraint expression and output the solution result.

[0077] like Figure 3 As shown, there are 9 wafer storage containers 310 and 5 wafer processing areas 320. The number in each wafer storage container represents the number of wafers stored. It can be seen that the number of wafers in each wafer processing area in the expected allocation result can be calculated as (5+24+5+13+9+18+16+9+18+16+2+11) / 9≈16.

[0078] When allocating wafers to the wafer processing area for production, the wafers in the wafer storage container need to be combined, placed in a new wafer storage container, and then loaded into the wafer processing area of ​​the machine for production. In the allocation process, the objective function and constraints need to be used to solve an actual allocation result with the smallest difference from the expected allocation result. That is, the number of wafers in each wafer allocation area is as close to 16 as possible.

[0079] According to the embodiments of the present disclosure, by utilizing the objective function to solve the wafer allocation plan, in the process of allocating wafers, it is possible to quickly obtain the optimal wafer allocation plan while satisfying multiple constraints, thereby effectively improving the wafer allocation efficiency and at the same time improving the utilization rate of the machine.

[0080] According to an embodiment of the present disclosure, the wafer allocation method further includes: comparing multiple solution results output by the objective function to determine a minimum value from the multiple solution results, wherein the minimum value is a solution result that meets a preset condition.

[0081] According to an embodiment of the present disclosure, in the process of determining a solution result that satisfies a preset condition, a heuristic algorithm can be used to analyze and compare multiple solution results to determine a minimum value from multiple solution results. Since the objective function is a nonlinear function, a gradient descent method can also be used to compare and analyze multiple solution results. By determining the minimum value as the solution result that satisfies the preset condition, a wafer allocation scheme that is closest to the desired allocation result is obtained.

[0082] Figure 4 A schematic diagram of determining a wafer allocation scheme in a wafer allocation method according to an embodiment of the present disclosure is schematically shown.

[0083] According to an embodiment of the present disclosure, a wafer allocation scheme is determined according to a solution result, including: determining values ​​of multiple binary decision variables corresponding to the solution results; determining a variable set corresponding to each wafer processing area from the values ​​of the multiple binary decision variables, wherein multiple values ​​in the variable set correspond to multiple wafer storage containers, respectively; for each wafer processing area, extracting the positive value in the variable set to determine multiple wafer storage containers for allocating wafers to the wafer processing area, and obtaining an allocation sub-scheme corresponding to the wafer processing area; and combining the allocation sub-schemes of multiple wafer processing areas to obtain a wafer allocation scheme corresponding to the allocation task.

[0084] According to the embodiments of the present disclosure, since the allocation of wafers in each wafer storage container is defined by using binary decision variables, the allocation state of each wafer storage container can be determined directly according to the values ​​of multiple binary decision variables corresponding to the solution results. Specifically, a variable set corresponding to each wafer processing area is determined from the values ​​of multiple binary decision variables, and the variable set can be in the form of a matrix, and multiple values ​​in the variable set correspond to multiple wafer storage containers respectively.

[0085] According to an embodiment of the present disclosure, for each wafer processing area, a positive value in a variable set is extracted to determine multiple wafer storage containers for allocating wafers to the wafer processing area, thereby obtaining an allocation sub-scheme corresponding to the wafer processing area.

[0086] like Figure 4 As shown, the variable set corresponding to the wafer processing area A in the machine 410 is , it can be determined that the wafers in wafer storage container a and wafer storage container b are allocated to wafer processing area A.

[0087] According to the embodiments of the present disclosure, multiple allocation sub-schemes of wafer processing areas are combined to obtain a wafer allocation scheme corresponding to the allocation task. The wafer allocation scheme is determined by analyzing the variable set, making the determination process of the wafer allocation scheme more intuitive and efficient.

[0088] Figure 5 A block diagram of a wafer allocating device according to an embodiment of the present disclosure is schematically shown.

[0089] like Figure 5 As shown, the wafer allocation apparatus 500 includes a constraint determination module 510 , a function construction module 520 , a function solving module 530 , and a solution determination module 540 .

[0090] The constraint determination module 510 is used to determine the constraint conditions for allocating wafers in the wafer storage container to the wafer processing area according to the allocation relationship between the wafer storage container and the wafer processing area in the allocation task.

[0091] The function construction module 520 is used to define the allocation status of wafers in wafer storage containers, so as to construct an objective function for characterizing the gap between the actual allocation result and the expected allocation result according to the definition result, wherein the expected allocation result is to evenly distribute the wafers in multiple wafer storage containers to multiple wafer processing areas.

[0092] The function solving module 530 is used to solve the objective function under constraint conditions based on the storage information of the wafer storage container and the number of wafer processing areas in the assigned task to obtain a solution result.

[0093] The solution determination module 540 is used to determine the wafer allocation solution according to the solution result when it is determined that the solution result meets the preset condition, wherein the preset condition is that the gap between the actual allocation result and the expected allocation result is minimized.

[0094] According to an embodiment of the present disclosure, the function construction module 520 includes a first definition submodule and a second definition submodule.

[0095] The first definition submodule is used to define the allocation status of the wafers in the wafer storage container as a positive value in the binary decision variable when it is determined that all wafers in the wafer storage container are allocated to the same wafer processing area.

[0096] The second definition submodule is used to define the allocation status of the wafers in the wafer storage container as a negative value in the binary decision variable when it is determined that all the wafers in the wafer storage container are not allocated to the same wafer processing area.

[0097] According to an embodiment of the present disclosure, the function construction module 520 further includes an actual construction submodule, an expected construction submodule and a function construction submodule.

[0098] The actual construction submodule is used to construct factors for calculating the actual allocation result based on the definition result and the variables used to characterize the number of wafers in the wafer storage container.

[0099] The expected construction submodule is used to construct a factor for calculating the expected allocation result according to the number of wafers in each wafer storage container and the number of areas in the plurality of wafer processing areas.

[0100] The function construction submodule is used to construct the target function by subtracting the factor corresponding to the actual allocation result from the factor corresponding to the expected allocation result.

[0101] According to an embodiment of the present disclosure, the constraint determination module 510 includes an area determination submodule, an allocation determination submodule, and a capacity determination submodule.

[0102] The area determination submodule is used to determine, from a plurality of wafer processing areas, a target processing area corresponding to each wafer storage container and capable of performing wafer allocation.

[0103] The allocation determination submodule is used to generate allocation constraint conditions according to the allocation relationship between the target processing area and the wafer storage container.

[0104] The capacity determination submodule is used to generate capacity constraints based on the maximum capacity of wafers in each wafer processing area.

[0105] According to an embodiment of the present disclosure, the function solving module 530 includes a constraint generating submodule and a function solving submodule.

[0106] The constraint generation submodule is used to generate constraint expressions corresponding to binary decision variables according to constraint conditions.

[0107] The function solving submodule is used to input the number of wafers stored in each wafer storage container and the number of regions in the storage information into the objective function, so as to solve the objective function under the limitation of the constraint expression and output the solution result.

[0108] According to an embodiment of the present disclosure, the wafer allocating device 500 further includes a result comparing module.

[0109] The result comparison module is used to compare multiple solution results output by the objective function to determine a minimum value from the multiple solution results, wherein the minimum value is a solution result that meets preset conditions.

[0110] According to an embodiment of the present disclosure, the solution determination module 540 includes a variable value determination submodule, a set determination submodule, a sub-solution determination submodule, and a solution combination submodule.

[0111] The variable value determination submodule is used to determine the values ​​of multiple binary decision variables corresponding to the solution results.

[0112] The set determination submodule is used to determine a variable set corresponding to each wafer processing area from the values ​​of multiple binary decision variables, wherein multiple values ​​in the variable set correspond to multiple wafer storage containers respectively.

[0113] The sub-scheme determination sub-module is used to extract the positive value in the variable set for each wafer processing area to determine the multiple wafer storage containers for allocating wafers to the wafer processing area, and obtain the allocation sub-scheme corresponding to the wafer processing area.

[0114] The scheme combination submodule is used to combine the allocation sub-schemes of multiple wafer processing areas to obtain a wafer allocation scheme corresponding to the allocation task.

[0115] According to the embodiments of the present invention, any one or more of the modules, submodules, units, and subunits, or at least part of the functions of any one of them can be implemented in one module. According to the embodiments of the present invention, any one or more of the modules, submodules, units, and subunits can be split into multiple modules for implementation. According to the embodiments of the present invention, any one or more of the modules, submodules, units, and subunits can be at least partially implemented as hardware circuits, such as field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), systems on chips, systems on substrates, systems on packages, application specific integrated circuits (ASICs), or can be implemented by hardware or firmware in any other reasonable way of integrating or packaging circuits, or can be implemented in any one of the three implementation methods of software, hardware, and firmware, or in any appropriate combination of any of them. Alternatively, according to the embodiments of the present invention, one or more of the modules, submodules, units, and subunits can be at least partially implemented as computer program modules, and when the computer program modules are run, the corresponding functions can be performed.

[0116] For example, any multiple of the constraint determination module 510, the function construction module 520, the function solution module 530, and the solution determination module 540 can be combined in one module / unit / sub-unit for implementation, or any one of the modules / units / sub-units can be split into multiple modules / units / sub-units. Alternatively, at least part of the functions of one or more of these modules / units / sub-units can be combined with at least part of the functions of other modules / units / sub-units and implemented in one module / unit / sub-unit. According to an embodiment of the present disclosure, at least one of the constraint determination module 510, the function construction module 520, the function solution module 530, and the solution determination module 540 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation methods of software, hardware, and firmware or in a suitable combination of any of them. Alternatively, at least one of the constraint determination module 510 , the function construction module 520 , the function solving module 530 , and the solution determination module 540 may be at least partially implemented as a computer program module, which may perform corresponding functions when executed.

[0117] It should be noted that the wafer allocation device part in the embodiment of the present disclosure corresponds to the wafer allocation method part in the embodiment of the present disclosure. The description of the wafer allocation device part specifically refers to the wafer allocation method part, which will not be repeated here.

[0118] Figure 6 A block diagram of an electronic device suitable for implementing a wafer allocation method according to an embodiment of the present disclosure is schematically shown. Figure 6 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0119] like Figure 6 As shown, the electronic device 600 according to an embodiment of the present disclosure includes a processor 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage part 608 to a random access memory (RAM) 603. The processor 601 may include, for example, a general-purpose microprocessor (such as a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (for example, an application-specific integrated circuit (ASIC)), etc. The processor 601 may also include an onboard memory for caching purposes. The processor 601 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.

[0120] In RAM 603, various programs and data required for the operation of electronic device 600 are stored. Processor 601, ROM 602 and RAM 603 are connected to each other via bus 604. Processor 601 performs various operations of the method flow according to the embodiment of the present disclosure by executing the program in ROM 602 and / or RAM 603. It should be noted that the program can also be stored in one or more memories other than ROM 602 and RAM 603. Processor 601 can also perform various operations of the method flow according to the embodiment of the present disclosure by executing the program stored in the one or more memories.

[0121] According to an embodiment of the present disclosure, the electronic device 600 may further include an input / output (I / O) interface 605, which is also connected to the bus 604. The electronic device 600 may further include one or more of the following components connected to the input / output (I / O) interface 605: an input portion 606 including a keyboard, a mouse, etc.; an output portion 607 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 608 including a hard disk, etc.; and a communication portion 609 including a network interface card such as a LAN card, a modem, etc. The communication portion 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to the input / output (I / O) interface 605 as needed. A removable medium 611, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 610 as needed, so that a computer program read therefrom is installed into the storage portion 608 as needed.

[0122] According to an embodiment of the present disclosure, the method flow according to an embodiment of the present disclosure can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable storage medium, and the computer program contains a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 609, and / or installed from the removable medium 611. When the computer program is executed by the processor 601, the above-mentioned functions defined in the system of the embodiment of the present disclosure are executed. According to an embodiment of the present disclosure, the system, equipment, device, module, unit, etc. described above can be implemented by a computer program module.

[0123] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.

[0124] According to an embodiment of the present disclosure, the 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 may be used by or in combination with an instruction execution system, apparatus, or device.

[0125] For example, according to an embodiment of the present disclosure, the computer-readable storage medium may include the ROM 602 and / or the RAM 603 described above and / or one or more memories other than the ROM 602 and the RAM 603 .

[0126] An embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program contains program code for executing the method provided by the embodiment of the present disclosure. When the computer program product runs on an electronic device, the program code is used to enable the electronic device to implement the wafer allocation method provided by the embodiment of the present disclosure.

[0127] When the computer program is executed by the processor 601, the above functions defined in the system / device of the embodiment of the present disclosure are executed. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.

[0128] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 609, and / or installed from a removable medium 611. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0129] 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 computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of 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 through the Internet).

[0130] 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 may represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of the 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 may 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 a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions. It can be understood by those skilled in the art that the features recorded in the various embodiments of the present disclosure can be combined and / or combined in a variety of ways, even if such a combination or combination is not explicitly recorded in the present disclosure. In particular, without departing from the spirit and teaching of the present disclosure, the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways. All of these combinations and / or combinations fall within the scope of the present disclosure.

[0131] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.

Claims

1. A wafer allocation method, comprising: Determining, according to an allocation relationship between a wafer storage container and a wafer processing area in an allocation task, a constraint condition for allocating wafers in the wafer storage container to the wafer processing area; Defining the allocation state of the wafers in the wafer storage container, so as to construct an objective function for characterizing the gap between the actual allocation result and the expected allocation result according to the definition result, wherein the expected allocation result is to evenly allocate the wafers in the plurality of wafer storage containers to the plurality of wafer processing areas; Under the constraint conditions, based on the storage information of the wafer storage container in the assigned task and the number of regions of the wafer processing area, the objective function is solved to obtain a solution result; When it is determined that the solution result satisfies a preset condition, a wafer allocation plan is determined according to the solution result, wherein the preset condition is that the gap between the actual allocation result and the expected allocation result is minimized.

2. The method according to claim 1, wherein: Defining the allocation status of the wafers in the wafer storage container includes: In the case where it is determined that all wafers in the wafer storage container are allocated to the same wafer processing area, defining the allocation state of the wafers in the wafer storage container as a value representing a positive direction in a binary decision variable; When it is determined that all wafers in the wafer storage container are not allocated to the same wafer processing area, the allocation status of the wafers in the wafer storage container is defined as a negative value in the binary decision variable.

3. The method according to claim 1, wherein: The objective function for characterizing the gap between the actual allocation result and the expected allocation result is constructed according to the definition result, including: Constructing a factor for calculating the actual allocation result according to the definition result and the variable used to characterize the number of wafers in the wafer storage container; Constructing a factor for calculating the expected allocation result according to the number of wafers in each of the wafer storage containers and the number of areas in the plurality of wafer processing areas; The objective function is constructed by subtracting the factor corresponding to the actual allocation result from the factor corresponding to the expected allocation result.

4. The method according to claim 1, wherein: The constraint conditions include allocation constraint conditions and capacity constraint conditions. The constraint conditions for allocating the wafers in the wafer storage container to the wafer processing area according to the allocation relationship between the wafer storage container and the wafer processing area in the allocation task include: Determine, from the plurality of wafer processing areas, a target processing area corresponding to each wafer storage container and capable of wafer allocation; generating the allocation constraint condition according to the allocation relationship between the target processing area and the wafer storage container; The capacity constraint condition is generated based on the maximum capacity of wafers in each of the wafer processing areas.

5. The method according to claim 2, wherein: Under the constraint conditions, based on the storage information of the wafer storage container in the assigned task and the number of regions of the wafer processing area, the objective function is solved to obtain a solution result, including: generating a constraint expression corresponding to the binary decision variable according to the constraint condition; The number of wafers stored in each wafer storage container in the storage information and the number of regions are input into the objective function, so as to solve the objective function under the limitation of the constraint expression and output the solution result.

6. The method according to claim 1, further comprising: The multiple solution results output by the objective function are compared to determine a minimum value from the multiple solution results, wherein the minimum value is a solution result that meets the preset condition.

7. The method according to claim 2, wherein: Determining a wafer allocation plan according to the solution result includes: Determining values ​​of a plurality of binary decision variables corresponding to the solution results; Determining a variable set corresponding to each of the wafer processing areas from the values ​​of the plurality of binary decision variables, wherein the plurality of values ​​in the variable set correspond to the plurality of wafer storage containers, respectively; For each of the wafer processing areas, extracting a positive value in the variable set to determine a plurality of wafer storage containers for allocating wafers to the wafer processing area, and obtaining an allocation sub-scheme corresponding to the wafer processing area; A plurality of allocation sub-plans for the wafer processing areas are combined to obtain a wafer allocation plan corresponding to the allocation task.

8. A wafer dispensing device, comprising: A constraint determination module, used for determining the constraint conditions for allocating the wafers in the wafer storage container to the wafer processing area according to the allocation relationship between the wafer storage container and the wafer processing area in the allocation task; A function construction module, used for defining the allocation state of the wafers in the wafer storage container, so as to construct an objective function for characterizing the gap between the actual allocation result and the expected allocation result according to the definition result, wherein the expected allocation result is to evenly allocate the wafers in the plurality of wafer storage containers to the plurality of wafer processing areas; A function solving module, used for solving the objective function under the constraint conditions and based on the storage information of the wafer storage container and the number of regions of the wafer processing region in the assigned task to obtain a solution result; A solution determination module is used to determine a wafer allocation solution according to the solution result when it is determined that the solution result meets a preset condition, wherein the preset condition is that the gap between the actual allocation result and the expected allocation result is minimized.

9. An electronic device, comprising: one or more processors; a memory for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 7.

10. A computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, enables the processor to implement the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Processing scheduling method, device and system of semiconductor device

    CN115576282A

  • Production scheduling method of multi-cavity etching equipment and related equipment

    CN119133037A

  • Product assortment method, product assortment processing device, computer program and recording medium

    JP2002304426A

  • Method and system for scheduling semiconductor fabrication

    US20210263505A1