Scheduling method and related apparatus

By traversing the action priority list and current state of the action module in semiconductor process equipment, the target scheduling action is determined, which solves the problems of long scheduling time and poor applicability of scheduling algorithms, realizes an efficient and applicable scheduling method, and improves the production efficiency and state matching degree of the equipment.

WO2026040858A1PCT designated stage Publication Date: 2026-02-26BEIJING NAURA MICROELECTRONICS EQUIP CO LTD

Patent Information

Application Number
PCT/CN2025/114080
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-08-23
Filing Date
2025-08-12
Publication Date
2026-02-26

AI Technical Summary

Technical Problem

In existing semiconductor process equipment, scheduling algorithms are time-consuming, resulting in poor matching between scheduling instructions and actual states. Furthermore, they are not applicable to special types of equipment, such as spraying mechanisms, and have poor applicability.

Method used

Based on the action priority list and current state of the action modules, multiple action modules are traversed to determine the target scheduling action and generate scheduling instructions. The traversal is performed on a unit basis, reducing the search depth and traversal amount. It is suitable for scheduling action modules such as robotic arms and spraying mechanisms.

Benefits of technology

It reduces the time spent determining scheduling actions, improves the timeliness and applicability of scheduling methods, enhances the matching degree between scheduling instructions and actual conditions, and improves production efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025114080_26022026_PF_FP_ABST
    Figure CN2025114080_26022026_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the present application is a scheduling method. In the method, during the determination of a target scheduling action, action modules are traversed one by one on the basis of the current states and an action priority list corresponding to the action modules, an output is provided with a target scheduling action as the granularity, and it is not necessary to traverse all possible scheduling sequences, compare the scheduling sequences, and then output an optimal scheduling sequence, thereby greatly reducing the depth of traversal and search, and thus facilitating a reduction in time consumed for determining the target scheduling action and an improvement in the timeliness of the scheduling method, and ameliorating the problem of the degree of matching between a scheduling instruction, which is output by means of the scheduling method, and the actual state of a semiconductor process device being relatively low due to a relatively long period of time being consumed. Moreover, in the scheduling method, traversing action modules one by one to determine a target scheduling action can not only be applied to the scheduling of action modules for transport, e.g., robots, but can also be applied to the scheduling of action modules, e.g., spraying mechanisms, thereby facilitating an improvement in the applicability of the scheduling method.
Need to check novelty before this filing date? Find Prior Art

Description

A scheduling method and related device TECHNICAL FIELD

[0001] The present application relates to the technical field of semiconductor technology, in particular to the scheduling technology in the technical field of semiconductor technology, and more particularly to a scheduling method and related device. BACKGROUND

[0002] A semiconductor process equipment is an equipment used for manufacturing semiconductor wafers. Taking a cleaning equipment as an example, the cleaning equipment can include a robot, a load port, and a plurality of process chambers, and the like. The cleaning equipment can be used to automatically clean and transfer the wafers.

[0003] In order to improve the work efficiency of the semiconductor process equipment such as the cleaning equipment, the semiconductor process equipment can be used to process a plurality of wafers in parallel. However, in the current scheduling technology for the wafers in the semiconductor process equipment, there is a problem of long time consumption of the scheduling algorithm. SUMMARY

[0004] Embodiments of the present application provide a scheduling method and related device to reduce the time consumption of the scheduling method.

[0005] To achieve the above technical purpose, the embodiments of the present application provide the following technical solutions:

[0006] In a first aspect, one embodiment of the present application provides a scheduling method applied to a host computer, the scheduling method being used to schedule a plurality of equipment modules of a semiconductor process equipment, the plurality of equipment modules including a plurality of action modules, and the scheduling method comprising:

[0007] traversing the plurality of action modules based on a current state of the action module and an action priority list corresponding to the action module to obtain a target scheduling action corresponding to the action module; the action priority list corresponding to the action module including a corresponding relationship between a scheduling action and a priority that can be executed by the action module; the target scheduling action including a highest priority scheduling action that can be executed by the action module in the current state; and the current state being used to describe a position state and a process state of the wafer in the equipment module;

[0008] generating a scheduling instruction based on a to-be-executed scheduling action, the scheduling instruction being used to instruct the semiconductor process equipment to control the equipment module to execute the to-be-executed scheduling action, and the to-be-executed scheduling action including the target scheduling action.

[0009] In a second aspect, one embodiment of the present application provides a scheduling method applied to a lower machine, the lower machine being configured to receive a scheduling instruction from an upper machine and schedule a plurality of device modules in a semiconductor process equipment, the plurality of device modules comprising a plurality of action modules, the scheduling method comprising:

[0010] in response to the scheduling instruction, controlling the device modules to perform a to-be-executed scheduling action, the to-be-executed scheduling action comprising a target scheduling action;

[0011] the scheduling instruction being generated by the upper machine based on a current state and an action priority list corresponding to the action modules, the action priority list comprising a correspondence between a scheduling action and a priority that can be performed by the action modules, the target scheduling action comprising a highest-priority scheduling action that can be performed by the action modules in the current state, the current state being configured to describe a position state and a process state of a wafer in the device modules.

[0012] In a third aspect, one embodiment of the present application further provides a scheduling system, comprising: an upper machine, a lower machine, and a plurality of device modules, the plurality of device modules comprising a plurality of action modules; wherein,

[0013] the upper machine is configured to: based on a current state and an action priority list corresponding to the action modules, traverse the plurality of action modules to obtain a target scheduling action corresponding to the action modules; the action priority list comprising a correspondence between a scheduling action and a priority that can be performed by the action modules; the target scheduling action comprising a highest-priority scheduling action that can be performed by the action modules in the current state; the current state being configured to describe a position state and a process state of a wafer in the device modules;

[0014] based on a to-be-executed scheduling action, generating a scheduling instruction, the to-be-executed scheduling action comprising the target scheduling action;

[0015] the lower machine is configured to: in response to the scheduling instruction, control the device modules to perform the to-be-executed scheduling action.

[0016] In a fourth aspect, one embodiment of the present application further provides a computing device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, the processor implementing the scheduling method as described above when executing the computer program.

[0017] In a fifth aspect, an embodiment of the present application further provides a computer readable storage medium, wherein a computer program is stored on the computer readable storage medium, and the computer program is executed by a processor to implement the scheduling method.

[0018] In a sixth aspect, an embodiment of the present application provides a computer program product or a computer program, wherein the computer program product comprises a computer program, and the computer program is stored in a computer readable storage medium; a processor of a computer device reads the computer program from the computer readable storage medium, and the processor implements the steps of the scheduling method when executing the computer program.

[0019] As can be seen from the above technical solution, the embodiment of the present application provides a scheduling method and related apparatus, wherein the scheduling method iterates a plurality of action modules based on an action priority list corresponding to the action modules and a current state to obtain a target scheduling action corresponding to the action modules, and generates a scheduling instruction for instructing a lower machine control device module to execute a to-be-executed scheduling action including the target scheduling action. In this way, in the determination process of the target scheduling action, the action modules are iterated based on the current state and the action priority list corresponding to the action modules, and the highest priority scheduling action that can be executed by the action modules under the current state is output as a granularity, instead of outputting as a granularity of an overall scheduling sequence, which reduces the granularity of the output, and does not need to output the optimal scheduling sequence after iterating and comparing all possible scheduling sequences, greatly reducing the iteration and search depth, which is conducive to reducing the time consumption of the determination process of the target scheduling action, improving the timeliness of the scheduling method, and improving the problem that the matching degree between the scheduling instruction output by the scheduling method and the actual state of the semiconductor process equipment is poor due to the long time consumption of the scheduling method. In addition, in the scheduling method, the target scheduling action is determined by iterating the action modules as a unit, which is not only applicable to the scheduling of action modules such as mechanical hands for transmission, but also applicable to the scheduling of action modules such as spraying mechanisms, which is conducive to improving the applicability of the scheduling method. BRIEF DESCRIPTION OF DRAWINGS

[0020] In order to more clearly illustrate the technical solutions of the embodiments of the present application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiments or prior art description. Obviously, the drawings in the following description are only embodiments of the present application, and for those skilled in the art, other drawings can also be obtained without creative labor based on the provided drawings.

[0021] FIG. 1 is a structural schematic diagram of a semiconductor process equipment;

[0022] FIG. 2 is a search process schematic diagram of a depth search algorithm;

[0023] FIG. 3 is a comparison diagram of a deep search algorithm searching for a branch;

[0024] FIG. 4 is a flow diagram of a scheduling method according to an embodiment of the present application;

[0025] FIG. 5 is a diagram of a path of a wafer in a semiconductor processing device according to an embodiment of the present application;

[0026] FIG. 6 is a diagram of a process of traversing based on a target thread according to an embodiment of the present application;

[0027] FIG. 7 is a diagram of a list of action priorities according to an embodiment of the present application;

[0028] FIG. 8 is a diagram of a pick rule according to an embodiment of the present application;

[0029] FIG. 9 is a diagram of a move generation condition rule according to an embodiment of the present application;

[0030] FIG. 10 is a diagram of a structure of a computing device according to an embodiment of the present application. DETAILED DESCRIPTION

[0031] Unless otherwise defined, technical terms or scientific terms used in the embodiments of the present application shall have the ordinary meaning used in the art to which the present application belongs. The terms “first”, “second”, and similar terms used in the embodiments of the present application do not denote any order, quantity, or importance, but are used to avoid confusion between the components.

[0032] Unless otherwise required by context, “plurality” means “at least two” throughout the specification. “Include” is to be interpreted as open, inclusive, meaning that “include, but are not limited to.” In the description of the specification, the terms “one embodiment”, “some embodiments”, “exemplary embodiments”, “example”, “specific example” or “some examples” are intended to indicate a feature, structure, material, or characteristic that is included in at least one embodiment or example of the present application. The illustrative representations of the above terms do not necessarily refer to the same embodiment or example.

[0033] The technical solutions in the embodiments of the present application will be described below with reference to the accompanying drawings. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative labor fall within the scope of protection of the present application.

[0034] Referring to FIG. 1, a cleaning apparatus is taken as an example, FIG. 1 shows a structural diagram of a semiconductor processing apparatus, which can include a back handler 10, a front handler 20, wafer loading and unloading stations 21, wafer placing stations 31, and a plurality of processing chambers 11; wherein,

[0035] Each wafer loading and unloading station 21 can place one wafer cassette, and each wafer cassette can place a plurality of wafers.

[0036] Each processing chamber 11 (PM or Chamber) can have one slot to place one wafer for processing. In the cleaning apparatus, the processing chambers can perform cleaning processes on the wafers. In some embodiments, the processing chambers of the cleaning apparatus can be provided with spraying mechanisms.

[0037] The front handler 20 (or front hand) can be responsible for transporting wafers between the wafer loading and unloading stations 21 and the wafer placing stations 31; the front handler 20 can also be a double-arm handler, and the front handler 20 can have two slots, each of which can place one wafer.

[0038] The back handler 10 (or back hand) can be a double-arm handler, and the two arms of the double-arm handler can be 180° and fixed, each arm having one slot to place one wafer; the back handler 10 is responsible for transporting wafers between the wafer placing stations 31 and the plurality of processing chambers 11.

[0039] It can be understood that FIG. 1 takes the cleaning apparatus as an example to show a structural diagram of a semiconductor processing apparatus, and the scheduling method provided by the embodiments of the present application can be applicable to other types of semiconductor processing apparatuses in addition to the cleaning apparatus shown in FIG. 1.

[0040] In some types of semiconductor processing equipment, for example, in a cleaning equipment, the semiconductor processing equipment can also include a spraying mechanism (Nozzle) located in the process chamber, which can be used to spray liquid or gas (which can be collectively referred to as chemical liquid), to achieve cleaning of the wafer or process chamber, etc. The spraying mechanism sprays liquid or gas, which can be referred to as a flushing action. According to the timing of the implementation of the flushing action, it can be divided into: idle flush action, change flush action and chuck flush action. The idle flush action refers to the chemical liquid spraying action performed by the process chamber at intervals without performing the process. The change flush action can refer to a chemical liquid spraying action performed after the chemical liquid performs the change action. The chuck flush action can refer to a chemical liquid spraying action performed by the process chamber at intervals without performing the process to clean the wafer carrier / Chuck. When the semiconductor processing equipment performs a wafer scheduling task, the process of taking the wafer out of the process chamber to complete the process and returning to the wafer loading and unloading position is called a task.

[0041] In this application, the modules shown in Figures 1 and 2 that constitute the semiconductor processing equipment are referred to as equipment modules, the system composed of the host computer, the lower computer and the above-mentioned equipment modules is referred to as the scheduling system, and the equipment modules used to perform the scheduling action in the equipment modules are referred to as action modules, for example, the rear robot, the front robot and the spraying mechanism can be referred to as action modules.

[0042] In the scheduling work, in order to improve the production efficiency of the semiconductor process equipment, while reducing the probability of deadlock, in the related technology, the host computer of the scheduling system can generate a scheduling sequence based on the current state of each device module in the semiconductor process equipment by using a scheduling algorithm, and generate scheduling instructions based on each scheduling action in the scheduling sequence in turn and send them to the slave computer, and the slave computer controls each device module to execute the scheduling action based on the scheduling instructions, when an abnormal error occurs in a device, the host computer will recalculate the scheduling sequence based on the current state at the time of the error, and perform scheduling work based on the new scheduling sequence. Referring to FIGS. 2 and 3, the currently used scheduling algorithm is mostly a deep search algorithm, FIG. 2 shows the deep search process, in the search process, the current state of the device (which can include material (Material) information, such as material position information, material corresponding process path information and scheduling action moving time, etc.) is taken as the calculation starting point, if a material (such as Material1) is allowed to move next (the next moving position of the process path of the material is not occupied), a scheduling action (Move) will be calculated, the material moves to a new position through the scheduling action, in this way, a branch is calculated in the first step, the calculation result of the branch is defined as a simulation state (ToolState), in the first step calculation, other materials (such as Material2) can also be selected as the calculation initial point, and a scheduling action that the material can move is defined as a branch, and so on, the calculation with a depth of 1 can define all the materials as an initial branch; when entering the next depth calculation, the calculation result of the previous branch needs to be taken as the initial state (because the information of the module occupied by the wafer has changed due to the movement of a Material), the next depth calculation is consistent with the depth 1 calculation, theoretically, n new branches can be generated from n materials, and so on, finally, the branches calculated will form a tree-like structure, the number of starting nodes of the tree is n, and the total number of branches is n1+n2+…+nn, so the final theoretical branch number is determined by the number of materials and the search depth, each branch corresponds to a theoretically feasible scheduling sequence; in the actual search process, due to the occupation of the position by other materials, some branches cannot be calculated next, so these branches will not participate in the subsequent search process; some branches are irrelevant to the machine movement demand and will be deleted, so the actual number of branches calculated is less than the theoretical value, and the time value generated by the Move in each calculation step is added. After all the theoretical branches are calculated, referring to FIG. 3, all the theoretical branches are traversed, the branch with the smallest time cost is selected as the optimal branch, and the scheduling sequence corresponding to the optimal branch is taken as the calculation result for device scheduling.

[0043] In the above process, as the number of wafers to be scheduled and the number of equipment modules in the semiconductor process equipment increase, the increase in search depth leads to an exponential increase in the number of branches calculated, resulting in a long calculation time. The increase in calculation time affects the system transmission coordination, causing a time difference between the scheduling output result and the actual machine operation, resulting in poor matching between the scheduling sequence and the actual state of the semiconductor process equipment (for example, at the beginning of the algorithm, a robot is performing an action of placing a grabbed wafer into a process chamber, at this time, in the initial state input to the algorithm, the wafer is in the robot, when the algorithm outputs the result, the wafer may have been placed into the process chamber, resulting in a phenomenon that the actual state of the wafer does not match the wafer state based on which the scheduling algorithm is calculated).

[0044] In addition, the deep search algorithm can only generate transmission type scheduling actions performed by the robot, and cannot output special spraying type scheduling actions for the spraying mechanism, resulting in the algorithm being unable to be applied to semiconductor process equipment containing special types such as the spraying mechanism, so that the applicability of the algorithm is poor.

[0045] To solve this problem, the inventors have found through research that a plurality of action modules can be traversed based on the action priority list corresponding to the action module and the current state to obtain a target scheduling action corresponding to the action module, and based on the to-be-executed scheduling action including the target scheduling action, a scheduling instruction for instructing the lower machine control equipment module to execute the to-be-executed scheduling action is generated. In this way, in the determination process of the target scheduling action, the current state and the action priority list corresponding to the action module are used to traverse the action module as a unit, and the target scheduling action is output as a granularity, without traversing all possible scheduling sequences and comparing to output the optimal scheduling sequence, greatly reducing the traversal and search depth, which is conducive to reducing the time consumption of the determination process of the target scheduling action, improving the timeliness of the scheduling method, and improving the problem that the matching between the scheduling instruction output by the scheduling method and the actual state of the semiconductor process equipment is poor due to the long time consumption of the scheduling method. In addition, in the scheduling method, the target scheduling action is determined by traversing the action module as a unit, which can be applied not only to the scheduling of action modules such as robots for transmission, but also to the scheduling of action modules such as spraying mechanisms, which is conducive to improving the applicability of the scheduling method.

[0046] Based on the above idea, according to a first aspect of the present application, a scheduling method is disclosed, and the scheduling method provided by the embodiments of the present application will be described exemplarily below with reference to the accompanying drawings.

[0047] Taking the host computer applied to the scheduling system in FIG. 4 as an example, the embodiment of the present application provides a scheduling method, the scheduling system further comprises a lower computer and a semiconductor process equipment, the semiconductor process equipment comprises a plurality of equipment modules, the plurality of equipment modules comprise a plurality of action modules, and the scheduling method comprises the following steps:

[0048] S401: based on the current state and the action priority list corresponding to the action module, the plurality of action modules are traversed to obtain a target scheduling action corresponding to the action module; the action priority list corresponding to the action module comprises a corresponding relationship between a scheduling action and a priority that can be executed by the action module; the target scheduling action comprises a highest priority scheduling action that can be executed by the action module under the current state; the current state is used to describe the position state and the process state of the wafer in the equipment module;

[0049] In the embodiment, the action module can comprise an equipment module for carrying the wafer in the semiconductor process equipment, and the equipment module for carrying the wafer comprises but is not limited to a robot. In the equipment structure shown in FIG. 2, the equipment module for carrying the wafer can comprise a rear robot and a front robot. In some embodiments, the action module can further comprise an equipment module for spraying, wafer flipping and the like in the semiconductor process equipment, and these equipment modules comprise but are not limited to a spraying mechanism and a flipping mechanism (Fliper).

[0050] In the embodiment, the action priority list corresponding to the action module can be set, and the plurality of action modules are traversed in turn according to the action priority list to obtain the target scheduling action corresponding to the action module under the current state. In the traversal process, since the corresponding relationship between the scheduling action and the priority that can be executed by the action module is defined in the action priority list in advance, the target scheduling action determined is the highest priority scheduling action that can be executed by the action module under the current state, so that it is not necessary to search all feasible branches from the current state to complete the task for each wafer, which is beneficial to greatly reducing the calculation amount of the traversal process and reducing the time required by the traversal process.

[0051] The current state can comprise relevant information of the wafer, which describes the position state and the process state of the wafer in the equipment module. For example, the position state can comprise which equipment module the wafer is in at the current time, the process state can comprise which node in the process path the wafer is in at the current time, the total process time and the remaining process time of the wafer in the process chamber and the like.

[0052] In the current state, when the action module corresponding to the action priority list is traversed, the scheduling actions that can be executed by the action module can be sequentially judged in order from high to low according to the priority of the scheduling actions, whether the scheduling actions meet the action generation condition in the current state, if the action generation condition is met, the target scheduling action corresponding to the action module can be output, and the next action module is traversed, until the plurality of action modules is traversed.

[0053] S402: based on the to-be-executed scheduling action, generating a scheduling instruction, the scheduling instruction is used to instruct the device module to execute the to-be-executed scheduling action, and the to-be-executed scheduling action includes the target scheduling action.

[0054] After obtaining the target scheduling action, the target scheduling action can be taken as the to-be-executed scheduling action, and a scheduling instruction corresponding to the to-be-executed scheduling action is generated, and the automatic scheduling of the wafer is realized based on the scheduling instruction.

[0055] It can be understood that the to-be-executed scheduling action can include one target scheduling action, or can include a plurality of target scheduling actions, because in most cases, a plurality of action modules of the semiconductor process equipment can execute respective scheduling actions in parallel without interfering with each other, so when there are a plurality of action modules each corresponding to a respective target scheduling action, these target scheduling actions can be put into the to-be-executed scheduling action to realize parallel control of the plurality of action modules, thereby improving the production efficiency of the semiconductor process equipment.

[0056] In some embodiments, steps S401 and S402 are steps that are executed in a loop, that is, after step S402 is executed, step S401 is returned to perform the next round of traversal, and after the previously obtained scheduling instruction is executed, the current state is updated, so that when step S401 is executed again, the traversal process is performed based on the new current state to obtain the to-be-executed scheduling action in the new current state, ensuring the continuous advancement of the scheduling process and completing the scheduling task of the wafer. In some embodiments, in order to avoid repeatedly generating the target scheduling task generated in the previous round of traversal when traversing step S401, a corresponding restriction condition can be added to the action generation condition, for example, a target module that can include a device module to which the target scheduling action is directed can be added to the action generation condition. The target module is not occupied by other scheduling actions that have not been executed, so that the target scheduling action generated in the previous round of traversal is avoided from being repeatedly generated.

[0057] In summary, the scheduling method traverses the plurality of action modules based on the action priority list corresponding to the action module and the current state to obtain the target scheduling action corresponding to the action module, and generates a scheduling instruction for instructing the lower machine control device module to execute the to-be-executed scheduling action based on the to-be-executed scheduling action including the target scheduling action. In this way, in the determination process of the target scheduling action, the plurality of action modules are traversed based on the current state and the action priority list corresponding to the action module, the target scheduling action is output in the granularity of the action module, and it is not necessary to traverse all possible scheduling sequences and compare to output the optimal scheduling sequence, which greatly reduces the traversal and search depth, is beneficial to reducing the time consumption of the determination process of the target scheduling action, improves the timeliness of the scheduling method, and improves the problem that the matching degree between the scheduling instruction output by the scheduling method and the actual state of the semiconductor process equipment is poor due to the long time consumption of the scheduling method. In addition, in the scheduling method, the target scheduling action is determined by traversing the plurality of action modules in the unit of the action module, which is applicable not only to the scheduling of the action module such as a manipulator for transmission, but also to the scheduling of the action module such as a spraying mechanism, and is beneficial to improving the applicability of the scheduling method.

[0058] In one embodiment, in order to guarantee the real-time performance of the traversal process, the traversing the plurality of action modules based on the current state and the action priority list corresponding to the action module to obtain the target scheduling action corresponding to the action module comprises:

[0059] The target thread is called to traverse the plurality of action modules based on the current state and the action priority list corresponding to the action module to obtain the target scheduling action corresponding to the action module.

[0060] That is, in the present embodiment, a separate target thread is allocated for the traversal process, which is dedicated to the traversal process, avoiding the problem of poor real-time performance of the traversal process caused by thread polling to execute a plurality of tasks, so that the separate target thread can be used to execute the traversal process, avoiding the delay caused by waiting for thread allocation, and being beneficial to guaranteeing the real-time performance of the traversal process.

[0061] In some embodiments, in order to improve the execution efficiency of the scheduling method, the action priority list corresponding to the action module further comprises: a corresponding relationship between the scheduling action and the cooperative action that can be executed by the action module;

[0062] After obtaining the target scheduling action corresponding to the action module, the following steps are further included:

[0063] The action priority list is queried based on the target scheduling action, and if the target scheduling action corresponds to a cooperative action, the cooperative action corresponding to the target scheduling action is added to the to-be-executed scheduling action.

[0064] In the embodiment, the action priority list can include a correspondence between a scheduled action and a cooperative action that can be performed by the action module, the cooperative action can refer to an action that can have a correlation with the scheduled action, and needs to be accompanied by the scheduled action to be generated and executed cooperatively. The cooperative action can be determined according to factors such as production efficiency requirements or time constraint restrictions. For example, in some embodiments, a certain device module sets a Q-time constraint (the Q-time constraint refers to the maximum process interval time length of a wafer between two device modules, and specifically refers to the maximum time length from the completion of the process in the previous device module to the start of the process in the next device module, and the Q-time constraint is to avoid quality problems that can be caused by the wafer being exposed to the process chamber for a long time or being clamped by a robot for a long time). After the wafer is grabbed in the device module, the wafer needs to be placed in the next device module as soon as possible to avoid violating the Q-time constraint. For another example, in some embodiments, in order to improve the utilization rate of the process chamber, the wafer placement action of placing the wafer into the process chamber can correspond to the action of starting the process in the process chamber. In this way, the situation that the wafer is placed into the process chamber and then waits in the process chamber due to the execution of other actions, thereby increasing the idle time of the process chamber, is avoided, and the utilization rate of the process chamber is improved.

[0065] In general, in the embodiment, after the target scheduled action is generated, the cooperative action corresponding to the target scheduled action can be added to the scheduled action to be executed. In this way, the target scheduled action and the cooperative action corresponding thereto can be obtained in the traversal process. On the one hand, multiple actions can be obtained in the traversal process for one action module, thereby improving the execution efficiency of the method. On the other hand, as described above, the design of the cooperative action is beneficial to improving the utilization rate of the device, thereby improving the production efficiency of the device.

[0066] In a specific embodiment, the device module is a front robot, a rear robot, a buffer module, a turnover mechanism, or a process chamber.

[0067] The scheduled action includes a first grabbing action, a first placing action, a second placing action, and a third placing action. The first grabbing action includes an action of grabbing a wafer processed in the process chamber. The first placing action includes an action of placing the wafer in the process chamber. The second placing action includes an action of placing the wafer in the buffer module by the front robot. The third placing action includes an action of placing the wafer in the buffer module by the rear robot.

[0068] If the rear robot grabs a wafer to be processed and placed into the process chamber, the cooperative action corresponding to the first grabbing action includes placing the wafer to be processed into the process chamber.

[0069] The cooperative action corresponding to the first placing action includes starting the process in the process chamber.

[0070] The cooperative action corresponding to the second placing action includes an overturning action of overturning the wafer placed on the buffer module by the overturning mechanism.

[0071] The cooperative action corresponding to the third placing action includes an overturning action of overturning the wafer placed on the buffer module by the overturning mechanism.

[0072] As described above, the cooperative action corresponding to the first placing action includes starting the process in the process chamber, so that the wafer can be processed in the process chamber as soon as it is placed in the process chamber, avoiding long idle time of the process chamber.

[0073] In some embodiments, for example, when the semiconductor process equipment is a cleaning equipment and there is a wafer overturning requirement, when the wafer is placed on the buffer module, if the back surface of the wafer needs to be cleaned, the wafer needs to be overturned by the overturning mechanism before the wafer is taken out by the back robot, and the wafer changes from the front surface to the back surface. Therefore, after the wafer is placed on the buffer module by the second placing action, an overturning action (Overturn Move) of overturning the wafer placed on the buffer module by the overturning mechanism is automatically generated. Similarly, after the wafer is placed on the buffer module after cleaning, since the wafer is in a back surface up state at this time, the wafer needs to be switched to a front surface up state before it is collected into the wafer box. Therefore, the cooperative action corresponding to the third placing action can also include the overturning action of overturning the wafer placed on the buffer module by the overturning mechanism.

[0074] After the back robot performs the first grabbing action, one slot of the back robot grabs one wafer. If the other slot of the back robot grabs a wafer to be processed in the process chamber, the cooperative action of placing the wafer to be processed in the process chamber is generated in priority, which is beneficial to improve the utilization rate of the process chamber and improve the production efficiency. Specifically, if the cooperative action of placing the wafer to be processed in the process chamber is not performed after the first grabbing action is performed, but other actions (for example, placing the wafer grabbed in the first grabbing action into other equipment modules) are performed, the process chamber corresponding to the wafer to be processed is in an idle state during the time of performing the other actions, which reduces the utilization efficiency of the process chamber. Therefore, the swap place move (i.e., the action of placing the wafer to be processed grabbed by the other slot of the back robot into the process chamber after taking the wafer out of the process chamber) can improve the continuity of equipment actions more than other actions, thereby improving the production efficiency.

[0075] In one embodiment, in order to make the determined target scheduling action a scheduling action executable in the current state, in some embodiments, the scheduling action executable by the action module corresponds to a generation condition rule.

[0076] The target scheduling action includes a scheduling action with the highest priority in the first scheduling action, and the generation condition rule corresponding to the first scheduling action matches the current state.

[0077] In the embodiment, by setting the corresponding generation condition rule for the scheduling action, the judgment basis in determining the target scheduling action is realized, so that the determined target scheduling action includes a scheduling action with the highest priority in the first scheduling action, and the generation condition rule corresponding to the first scheduling action matches the current state, the determination rule of the target scheduling action is limited, and it is ensured that the determined target scheduling action is the highest priority scheduling action executable in the current state.

[0078] In some embodiments, the generation condition rule corresponding to the scheduling action includes a general rule;

[0079] The general rule includes that the state of the target module is normal and the target module is not occupied by other scheduling actions that have not been executed;

[0080] The target module includes a source module and a destination module; the source module includes a starting device module for executing the scheduling action, and the destination module includes a destination device module for executing the scheduling action;

[0081] When the scheduling action includes a wafer grabbing action, the general rule further includes that there is a wafer in the source module and there is no wafer in the destination module;

[0082] When the scheduling action includes a wafer placing action, the general rule further includes that there is a wafer in the source module and there is no wafer in the destination module.

[0083] The target module can include a device module to which the scheduling action is directed, or in other words, the target module can include a device module that needs to be operated by the scheduling action. For example, the target module can be the source module and the destination module in the case of a grabbing action, where the source module is a device module where the wafer to be grabbed is located, and the destination module is a robot. For example, in the case of a placing action, the source module can be a robot that grabs a wafer, and the destination module is a device module where the wafer grabbed by the robot needs to be placed.

[0084] The normal state of the target module can include that the device module has a wafer picking or placing condition, the hardware state and the communication state are normal, and the interlock alarm is not triggered.

[0085] The target module is not occupied by other uncompleted scheduling actions, which means that the target module is not occupied by uncompleted scheduling actions generated in the current round or historical rounds. For example, in an embodiment, if a wafer placing action of a front robot to a buffer module 1 has been generated and the action is not completed, the buffer module 1 is considered to be occupied by the action. At this time, the action of a rear robot to grab a wafer from the buffer module 1 cannot be generated. Only after the wafer placing action of the front robot to the buffer module 1 is completed, the buffer module 1 is considered to be released.

[0086] In some embodiments, in addition to the general rules, the scheduling action can also have specific detection conditions corresponding to the action type, which can be determined based on business characteristics and other factors.

[0087] For example, in some cases, for a cleaning device, the action module includes a spraying mechanism located in a process chamber. When the scheduling action includes a flushing action of the spraying mechanism, the generation condition rule corresponding to the scheduling action further includes:

[0088] The flushing condition of the spraying mechanism is triggered, and the process chamber corresponding to the spraying mechanism is not occupied by other scheduling actions.

[0089] Correspondingly, in some embodiments, the action module includes a spraying mechanism located in a process chamber, and the scheduling action includes a flushing action of the spraying mechanism. The flushing action includes an idle flushing action, an acid replacement flushing action, and a chuck flushing action. In different application scenarios, different types of flushing actions can be prioritized as needed, which is not limited here.

[0090] In some cases, multiple wafers may exist in a device module at the same time (for example, multiple wafers may exist in a wafer loading and unloading site waiting for wafer out), in order to ensure that the wafers are scheduled in the semiconductor process equipment according to the priority, in an embodiment, the target scheduling action includes a wafer grabbing action, and when multiple wafers exist in the source module of the wafer grabbing action;

[0091] Based on the current state and the action priority list corresponding to the action module, the plurality of action modules are traversed to obtain the target scheduling action corresponding to the action module, which includes:

[0092] Based on the current state and the action priority list corresponding to the action module, the plurality of action modules are traversed to obtain the target scheduling action corresponding to the action module for the target wafer, and the target wafer includes the wafer with the highest priority in the multiple wafers in the source module.

[0093] The priority of the wafer can correspond to the number (Slot ID) of the wafer, for example, the smaller the number of the wafer is, the higher the priority of the wafer can be. In this way, wafer scheduling is performed based on this principle, which can ensure that the wafer is scheduled in each device module according to the first-in first-out principle, and the orderly scheduling of each wafer is realized.

[0094] The scheduling method provided by the embodiment of the application is exemplarily described below in a specific embodiment. As shown in FIG. 5, FIG. 5 shows a schematic diagram of a transmission path of a wafer in a cleaning device (the structure of the cleaning device can refer to FIG. 1), and Table 1 below shows the number of each type of device module and slot.

[0095] In FIG. 5, LoadPort represents a wafer loading and unloading position, ITR represents a front robot, Buffer1 and Buffer2 represent two buffer modules, PTR represents a rear robot, PM1-PM8 represent eight process chambers, and Fliper1 and Fliper2 represent two flipping mechanisms.

[0096] Table 1: Device module list

[0097] Referring to FIG. 5, it is assumed that the process path (or transmission path) of the wafer is: LoadPort-ITR-Buffer1-PTR-PM-PTR-Buffer2-ITR-LoadPort in sequence. When there is a need to clean the back of the wafer, the device module can further include a flipping mechanism.

[0098] It is assumed that the scheduling requirements are as follows:

[0099] 1. The wafer that completes the process is preferentially returned to the Foup (Front Opening Unified Pod);

[0100] 2. The wafer is allowed to be transmitted to the front robot, the buffer module, and the rear robot in advance (i.e., the wafer is allowed to stay in these device modules);

[0101] 3. The lower hand Hand1 of the robot is only allowed to pick or place the unprocessed wafer (Unprocessed Wafer);

[0102] 4. The upper hand Hand1 of the robot is only allowed to pick or place the processed wafer (Processed Wafer);

[0103] 5. Buffer1 is only allowed to place the unprocessed wafer;

[0104] 6. Buffer2 is only allowed to place the processed wafer;

[0105] 7. Support exchange wafer placement action: for example, Hand2 takes out wafer 1 from process chamber, and Hand1 directly places wafer 2;

[0106] 8. Support control strategy of multiple task parallel computation.

[0107] In the scheduling method provided by the embodiments of the present application, the core strategy can include two contents: scheduling action priority planning and scheduling action generation condition detection. According to the action priority list set in advance, the scheduling actions of each action module in the action priority list are detected in sequence according to the priority order of the scheduling actions, and when the current state meets the generation condition rule of the scheduling action, the scheduling action is output as the target scheduling action. In addition, in the embodiments, reference is made to FIG. 6, and the traversal and condition judgment are performed by a dedicated target thread (MoveCalculateThread, action calculation thread), which is beneficial to improve the real-time performance of the method.

[0108] In FIG. 6, taking the action modules including the front robot (FrontRobot), the rear robot (RearRobot) and the spraying mechanism (Nozzle) as examples, Move1-N represents the scheduling actions corresponding to the front robot and the rear robot in the action priority list, FlushMove1-N represents the scheduling actions corresponding to the spraying mechanism in the action priority list, and BestMove represents the target scheduling action of the highest priority meeting the generation judgment condition determined by traversal / polling.

[0109] The action priority list (Move priority setting) can refer to FIG. 7, which still takes the action modules including the front robot (FrontRobot) and the rear robot (RearRobot) as examples. SrcModule represents the source module, DestModule represents the destination module, PlaceMove and PickMove represent the placement action and the grabbing action respectively, BUF1, BUF2 and Chamber represent the buffer module 1, the buffer module 2 and the process chamber respectively, and CleanWafer represents wafer cleaning. CooperativeMove represents the cooperative action, FliperOverturnMove represents the action of the overturn mechanism overturning the wafer, SwapPlaceMove represents the exchange wafer placement action, and ProcessMove represents the action of starting the process.

[0110] The action priority list can be a table as shown in FIG. 7, which contains a sub-table corresponding to each action module, or can be multiple tables corresponding to each action module respectively. The specific form of the action priority list is not limited in the present application, and is determined according to the actual situation.

[0111] In FIG. 7, the priority of each scheduling action decreases from top to bottom, and the order of traversing the action module can also be consistent with the order of the action module in the table in FIG. 7.

[0112] The priority design principle of each scheduling action in the action priority list will be described below. The priority strategy of each scheduling action is determined by the equipment transmission characteristics, and the specific reasons can include:

[0113] If wafer 1 can be taken out by the rear robot in buffer module 1, and wafer 2 can be taken out from process chamber 1, at this time, according to the priority, the priority of taking the wafer from buffer module BUF1 is higher than that of taking the wafer from the process chamber. When the generation conditions of the two scheduling actions are both met, the wafer grabbing scheduling action of wafer 1 will be selected as the target scheduling action output, and the equipment operation meets the following priority to ensure the output of the target scheduling action sequence:

[0114] 1. The priority of the front robot putting the wafer into buffer module 1 is high, and the reason is to ensure that the wafer not executing the process is transmitted into the equipment in advance;

[0115] 2. The priority of the front robot taking the wafer from buffer module 2 is high, and the reason is that after the rear robot takes the wafer from the process chamber, the wafer in buffer module 2 needs to be taken out in time to avoid the occupation of buffer module 2, which leads to the rear robot cannot take the wafer with process to buffer module 2 in time;

[0116] 3. The priority of the front robot taking the wafer from the wafer loading and unloading site is higher than that of putting the wafer into the wafer loading and unloading site, and the reason is to ensure that the wafer not executing the process is transmitted into the equipment in advance;

[0117] 4. The priority of the rear robot taking the wafer from buffer module 1 is high, and the reason is to ensure that the rear robot Hand 1 takes the wafer in advance, which is convenient for subsequent exchange and wafer placing action after taking the wafer from the process chamber. If the robot takes the wafer from the process chamber and directly puts it into other positions, the moving time of this process does not execute any effective action on the wafer not cleaned on Hand 1. If the wafer is directly put into the process chamber, the wafer also starts to execute the process in the process chamber during the subsequent transmission and movement, thereby improving the efficiency of the concurrent action execution;

[0118] 5. The priority of the rear robot putting the wafer with process into the process chamber is high, and the reason is that there is a wafer that needs to pass through two process chambers to complete the process. After being taken out from the first process chamber, it needs to enter the next process chamber for process in a short time, thereby meeting the process generation requirement;

[0119] 6. The priority of the rear robot taking the wafer from the process chamber is high, and the reason is that the wafer after process is taken out in priority, which meets the first-in first-out principle;

[0120] 7. The priority of the back robot to put the wafer into the buffer module 2 is higher than the priority of the back robot to put the wafer into the process chamber, because the wafer that has finished the process is put into the buffer module 2 before the next wafer taking action from the process chamber, so as to improve the wafer replacement rate.

[0121] 8. The priority of the back robot to put the wafer into the process chamber is low, because the number of process chambers occupied can be reduced, and the actual machine test proves that the use of a small number of process chambers helps to improve the transmission efficiency, so that the wafer is taken out preferentially under the premise that the wafer has finished the process, the wafer placing action is exchanged to improve the wafer placing priority, so that the taking and placing efficiency of the two hands of the robot in front of the process chamber is the highest;

[0122] 9. The priority of the three scheduling actions performed by the spraying mechanism can be customized according to the needs.

[0123] The design principle of the cooperative action in the action priority list can be referred to the related description in the foregoing.

[0124] Referring to FIG. 8, when there are multiple wafers in the source module of the wafer grabbing action, the wafer taking rule shown in FIG. 8 can be designed to meet the first-in first-out principle, that is, when the wafer is transmitted into the system from the wafer loading and unloading site, the wafer is taken out from the process chamber in the order of the slot identifier from small to large (the wafer transmission sequence into the system), and when the wafer is taken out from the process chamber, assuming that there are multiple process chambers in which the wafer to be taken out exists, the wafer is taken out in the order of the slot identifier from small to large (the chamber wafer taking judgment sequence).

[0125] The generation condition rule of each scheduling action can be referred to FIG. 9, and the general rule includes that the state of the target module is normal (the states of the source module and the destination module of the Move are normal) and the target module is not occupied by other scheduling actions that have not been executed (the source module and the destination module of the Move are not occupied by other Moves); the target module includes the device module to which the scheduling action is directed;

[0126] The target module includes the source module and the destination module; the source module includes the starting device module for executing the scheduling action, and the destination module includes the destination device module for executing the scheduling action;

[0127] When the scheduling action includes the wafer grabbing action, the general rule further includes that there is a wafer in the source module and there is no wafer in the destination module (the wafer presence / absence state of the source module and the destination module of the Move matches the type of the Move);

[0128] When the scheduling action includes the wafer placing action, the general rule further includes that there is a wafer in the source module and there is no wafer in the destination module (the wafer presence / absence state of the source module and the destination module of the Move matches the type of the Move).

[0129] In addition to the general rules, Figure 9 also shows that the scheduling action corresponds to specific detection conditions according to the action type, which can be determined based on factors such as business characteristics.

[0130] Specifically, taking the cleaning equipment as an example, the specific detection conditions can include:

[0131] 1. The back robot needs to detect that the current wafer has completed the process, and the wafer ID corresponding to the process chamber is the minimum value of the task to ensure the first-in first-out principle of the wafer. Due to the software design to distinguish different scheduling modes, if priority is considered, the wafer removal action is allowed to be executed; if priority is considered, even if the process is completed, there are other process chambers without wafers, the wafer with completed process will not be removed in advance, and only after all process chambers have wafers, the wafer removal is allowed to be performed;

[0132] 2. The back robot needs to detect that the wafer's process path (user-set wafer transmission path) contains the process chamber, and needs to meet the equipment business characteristics (the liquid Reclaim (recovery) and ToDrain (drainage) modes in the process recipe used by the process chamber are consistent, and the medium (Medium) used in the process recipe does not perform the acid replacement action);

[0133] The process recipe of the single-wafer equipment allows to set multiple different liquids for spraying action, and each liquid can select one of Reclaim or ToDrain mode, Reclaim means that the liquid can be recovered to the Tank for reuse after use, and ToDrain means that the liquid is directly discharged after use without recovery. Since the wafer is placed in the process chamber, the process will be started, it is necessary to judge before placing the wafer that the liquid used in the process recipe of the process to be performed and the selection mode of the process recipe of the process being performed are consistent, if one liquid spraying is completed, Reclaim is performed in process chamber L1 and ToDrain is performed in process chamber L2, due to hardware limitations, this operation is not allowed to be performed, otherwise it will cause confusion in the control logic of the recovered liquid Tank, so it is necessary to judge before placing the wafer;

[0134] If the liquid in the process recipe of the process is performing the acid replacement action, placing the wafer in the process chamber to start the process will cause insufficient liquid supply flow of the liquid, resulting in an alarm to automatically terminate the process, which needs to be avoided in advance;

[0135] 3. The front robot needs to detect that the target slot of the wafer and the slot of the wafer loading and unloading site are consistent to ensure that the wafer returns to the same position before and after the process;

[0136] 4. The front robot needs to meet the parallel task condition when taking wafers from the wafer loading and unloading site. The parallel task condition mainly refers to the case where multiple tasks are allowed to be executed simultaneously. For example, task 1 uses process chamber L1 and process chamber L2, the process time is 50 seconds, and wafer loading and unloading site 1 is used; task 2 uses process chamber R1 and process chamber R2, the process time is 100 seconds, and wafer loading and unloading site 2 is used; if process chamber L1 and process chamber L2 have completed the process, and a wafer is taken out from wafer loading and unloading site 2 at this time, it will cause the wafer to occupy robot Hand1 all the time, and robot Hand2 cannot perform the wafer placing action after taking wafers from process chamber L1 and process chamber L2, and needs to wait until process chamber R1 with a long process time is completed before continuing to transmit, so that the system process remaining time is determined in advance, and the wafer is taken from which wafer loading and unloading site in advance, so that the parallel task can be run more efficiently;

[0137] 5. Before the spraying mechanism performs the spraying action, it is necessary to detect that the spraying condition of the lower computer has been triggered and the process chamber corresponding to the spraying mechanism is not occupied by other scheduling actions. If it is detected that the process chamber where the spraying mechanism is located is occupied by the scheduling action of the robot or the current spraying mechanism is executing the spraying action, the spraying action of the spraying mechanism will not be output. For example, during the running of the task, only process chamber L1, process chamber L2, process chamber L3, and process chamber L4 are used. Since process chamber R1 does not perform a process, when the set IdleFlush interval time is reached, the Flush condition of the lower computer is triggered, and the IdleFlushMove of process chamber R1 is output after real-time scheduling detects that the generation condition is met. When the acid change of the liquid is completed, the Flush condition of the lower computer is met. If process chamber R2 does not perform a process and is not occupied by the robot, the ChangeFlush action is output when the generation condition is met.

[0138] If the generation condition of the scheduling action is not met, the generation condition rule of the next scheduling action is detected in the order of the action priority list. If the detection is passed, a target scheduling action is output. If the detection is not passed, the generation condition rule of the next scheduling action in the priority list is continuously detected, and a suitable target scheduling action is output through independent target threads by constantly polling and detecting until the condition is met. Since the real-time scheduling polling speed is fast, the suitable target scheduling action can better match the device running state, so that the effect of efficiently outputting the scheduling action is achieved.

[0139] Correspondingly, taking the lower computer applied to the scheduling system as an example, the application embodiment further provides a scheduling method, and the scheduling method comprises the following steps:

[0140] In response to the scheduling instruction, the device module is controlled to execute the to-be-executed scheduling action, and the to-be-executed scheduling action comprises the target scheduling action;

[0141] The scheduling instruction is generated based on the current state and the action priority list corresponding to the action module, and the target scheduling action corresponding to the action module is obtained by traversing the plurality of action modules; the action priority list corresponding to the action module includes a corresponding relationship between the scheduling actions executable by the action module and the priorities; the target scheduling action includes the highest priority scheduling action executable by the action module in the current state; and the current state is used to describe the position state and the process state of the wafer in the device module.

[0142] According to a second aspect of the present application, a scheduling system is also disclosed, comprising: a host computer, a lower computer and a plurality of device modules, the plurality of device modules comprising a plurality of action modules; wherein,

[0143] The host computer is configured to traverse the plurality of action modules based on the current state and the action priority list corresponding to the action module, and obtain the target scheduling action corresponding to the action module; the action priority list corresponding to the action module includes a corresponding relationship between the scheduling actions executable by the action module and the priorities; the target scheduling action includes the highest priority scheduling action executable by the action module in the current state; and the current state is used to describe the position state and the process state of the wafer in the device module.

[0144] Based on the to-be-executed scheduling action, a scheduling instruction is generated, and the to-be-executed scheduling action includes the target scheduling action;

[0145] The lower computer is configured to control the device module to execute the to-be-executed scheduling action in response to the scheduling instruction.

[0146] For related limitations of the scheduling method executed by the host computer and the lower computer in the scheduling system, reference can be made to the related description in the foregoing, which will not be repeated here.

[0147] According to a third aspect of the present application, a computing device is also disclosed, as shown in FIG. 10, the computing device comprising: a memory and a processor, the memory storing a computer program, and the processor executing the computer program to execute the steps in the scheduling method according to various embodiments of the present application described in the foregoing embodiments of the present application.

[0148] The internal structure of the computing device can be as shown in FIG. 10, which includes a processor, a memory, a network interface and an input device connected by a system bus. Among them, the processor of the computing device is used to provide computing and control capabilities. The memory of the computing device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operating system and the computer program in the non-volatile storage medium to run. The network interface of the computing device is used to communicate with external terminals through network connection. The computer program is executed by the processor to perform the steps in the scheduling method according to various embodiments of the present application described in the above embodiments of the present application.

[0149] The processor can include a main processor, and can also include a baseband chip, a modem, etc.

[0150] The memory stores programs for executing the technical solutions of the present application, and can also store an operating system and other key services. Specifically, the program can include program code, and the program code includes computer operation instructions. More specifically, the memory can include a read-only memory (ROM), other types of static storage devices that can store static information and instructions, a random access memory (RAM), other types of dynamic storage devices that can store information and instructions, a disk memory, a flash, etc.

[0151] The processor can be a general-purpose processor, such as a general-purpose central processing unit (CPU), a microprocessor, etc., or an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of programs of the present application. It can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a ready-to-use programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component.

[0152] The input device can include devices that receive data and information input by the user, such as a keyboard, a mouse, a camera, a scanner, a light pen, a voice input device, a touch screen, a pedometer or a gravity sensor, etc.

[0153] The output device can include devices that allow information to be output to the user, such as a display screen, a printer, a speaker, etc.

[0154] The communication interface can include devices such as transceivers to communicate with other devices or communication networks, such as Ethernet, radio access network (RAN), wireless local area network (WLAN), etc.

[0155] The processor executes the program stored in the memory and invokes other devices, which can be used to implement each step of any one of the scheduling methods provided by the embodiments of the present application.

[0156] The computing device can also include a display component, which can be a liquid crystal display or an electronic ink display, and an input device, which can be a touch layer overlaid on the display component, or a key, trackball or trackpad provided on the housing of the computing device, or an external keyboard, trackpad or mouse.

[0157] Those skilled in the art can understand that the structure shown in FIG. 10 is only a block diagram of part of the structure related to the scheme of the present application, and does not constitute a limitation on the computing device to which the scheme of the present application is applied. The specific computing device can include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0158] In addition to the above method and device, the scheduling method provided by the embodiments of the present application can also be a computer program product, which includes computer program instructions, and the computer program instructions make the processor execute the steps in the scheduling method according to various embodiments of the present application described in the above "Exemplary Method" section when the processor runs.

[0159] The above computer program product can be implemented by hardware, software or a combination thereof. In one optional embodiment, the computer program product is embodied as a computer storage medium. In another optional embodiment, the computer program product is embodied as a software product, such as a software development kit (SDK) and the like.

[0160] The computer program product can be written in any combination of one or more programming languages to perform the operations of the embodiments of the present application, including object-oriented programming languages such as Java, C++, and conventional procedural programming languages such as "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, as an independent software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0161] In addition, according to a fourth aspect of the present application, a computer readable storage medium is also disclosed, which stores a computer program, and the computer program makes the processor execute the steps in the scheduling method according to various embodiments of the present application described in the above "Exemplary Method" section when the processor runs.

[0162] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by a computer program instructing relevant hardware, and the computer program can be stored in a non-volatile computer readable storage medium. When the computer program is executed, the processes of the above-mentioned embodiment methods can be included. Any reference to memory, storage, database or other medium used in the embodiments provided in the present application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration but not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0163] Any combination of the technical features of the above embodiments can be made. In order to make the description simple, all possible combinations of the technical features in the above embodiments are not described, however, as long as the combination of the technical features does not exist, it should be considered as the scope of the present application.

[0164] The above embodiments only express several implementation manners of the present application, and the description is more specific and detailed, but it should not be understood as a limitation on the scope of the solutions provided by the embodiments of the present application. It should be pointed out that for ordinary skilled in the art, without departing from the concept of the present application, a number of modifications and improvements can be made, which are all within the protection scope of the present application. Therefore, the protection scope of the present application patent should be subject to the appended claims.

Claims

1. A scheduling method, characterized by, The scheduling method is applied to an upper computer and used for scheduling a plurality of device modules of a semiconductor process equipment, the plurality of device modules comprising a plurality of action modules, and the scheduling method comprising: traversing the plurality of action modules based on a current state of the action modules and an action priority list corresponding to the action modules to obtain a target scheduling action corresponding to the action modules; the action priority list corresponding to the action modules comprising a corresponding relationship between a scheduling action and a priority that can be executed by the action modules; the target scheduling action comprising a highest priority scheduling action that can be executed by the action modules in the current state; the current state being used to describe a position state and a process state of a wafer in the device modules; generating a scheduling instruction based on a to-be-executed scheduling action; the scheduling instruction being used to instruct the device modules to execute the to-be-executed scheduling action, the to-be-executed scheduling action comprising the target scheduling action.

2. The method of claim 1, wherein, The traversing the plurality of action modules based on a current state of the action modules and an action priority list corresponding to the action modules to obtain a target scheduling action corresponding to the action modules comprises: calling a target thread, traversing the plurality of action modules based on a current state of the action modules and an action priority list corresponding to the action modules to obtain a target scheduling action corresponding to the action modules.

3. The method of claim 1, wherein, The action priority list corresponding to the action modules further comprises a corresponding relationship between a scheduling action and a cooperative action that can be executed by the action modules; After the obtaining the target scheduling action corresponding to the action modules, the method further comprises: querying the action priority list based on the target scheduling action, and if the target scheduling action corresponds to a cooperative action, adding the cooperative action corresponding to the target scheduling action into the to-be-executed scheduling action.

4. The method of claim 3, wherein, The device modules are a front robot, a rear robot, a buffer module, a turnover mechanism or a process chamber; The scheduling actions comprise a first grabbing action, a first placing action, a second placing action and a third placing action; the first grabbing action comprises an action of grabbing a wafer processed in a process chamber, the first placing action comprises an action of placing a wafer in the process chamber, the second placing action comprises an action of placing a wafer in the buffer module by the front robot, and the third placing action comprises an action of placing a wafer in the buffer module by the rear robot; If the rear robot grabs a to-be-processed wafer to be placed into the process chamber, the cooperative action corresponding to the first grabbing action comprises placing the to-be-processed wafer into the process chamber; The cooperative action corresponding to the first placing action comprises starting a process by the process chamber; The cooperative action corresponding to the second placing action comprises a turnover action of the turnover mechanism for turning over a wafer placed in the buffer module; The cooperative action corresponding to the third placing action comprises a turnover action of the turnover mechanism for turning over a wafer placed in the buffer module.

5. The method of claim 1, wherein, The scheduling action that can be executed by the action modules corresponds to a generation condition rule. The target scheduling action includes a scheduling action with the highest priority in a first scheduling action, and a generation condition rule corresponding to the first scheduling action matches the current state.

6. The method of claim 5, wherein, The generation condition rule corresponding to the scheduling action includes a general rule; The general rule includes that a state of a target module is normal and the target module is not occupied by other scheduling actions that have not been executed; The target module includes a source module and a destination module; the source module includes a starting device module that executes the scheduling action, and the destination module includes a destination device module that executes the scheduling action; When the scheduling action includes a wafer grabbing action, the general rule further includes that there is a wafer in the source module and there is no wafer in the destination module; When the scheduling action includes a wafer placing action, the general rule further includes that there is a wafer in the source module and there is no wafer in the destination module.

7. The method of claim 6, wherein, The action module includes a spraying mechanism located in a process chamber, and when the scheduling action includes a flushing action of the spraying mechanism, the generation condition rule corresponding to the scheduling action further includes: A flushing condition of the spraying mechanism is triggered, and a process chamber corresponding to the spraying mechanism is not occupied by other scheduling actions.

8. The method of claim 1, wherein, The action module includes a spraying mechanism located in a process chamber, and the scheduling action includes a flushing action of the spraying mechanism; the flushing action includes an idle flushing action, an acid replacement flushing action, and a chuck flushing action.

9. The method of claim 1, wherein, The target scheduling action includes a wafer grabbing action, and when there are multiple wafers in a source module of the wafer grabbing action; Based on the current state and the action priority list corresponding to the action module, the target scheduling action corresponding to the action module is obtained by traversing multiple action modules, including: Based on the current state and the action priority list corresponding to the action module, the target scheduling action corresponding to the action module is obtained by traversing multiple action modules, including:

10. A dispatch system characterized by, Including: A host computer, a lower computer, and multiple device modules, the multiple device modules including multiple action modules; wherein The host computer is configured to obtain a target scheduling action corresponding to the action module by traversing multiple action modules based on a current state and an action priority list corresponding to the action module; the action priority list corresponding to the action module includes a correspondence between scheduling actions that can be executed by the action module and priorities; the target scheduling action includes a scheduling action with the highest priority that can be executed by the action module under the current state; the current state is used to describe a position state and a process state of a wafer in the device module; Based on the to-be-executed scheduling action, a scheduling instruction is generated, and the to-be-executed scheduling action includes the target scheduling action; The lower computer is configured to control the device module to execute the to-be-executed scheduling action in response to the scheduling instruction.

11. A computing device, comprising: The computer readable storage medium stores a computer program, and the computer program is executed by the processor to implement the scheduling method in any one of claims 1-9.

12. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and the computer program is executed by the processor to implement the scheduling method in any one of claims 1-9.

Citation Information

Patent Citations

  • Material scheduling method and semiconductor process equipment

    CN113871330A

  • Material scheduling method and semiconductor process equipment

    CN114927430A

  • Wafer scheduling method and device and semiconductor equipment

    CN116053175A

  • Scheduling method and related device

    CN119130023A

  • A method and device for optimized dispatch of wafer

    WO2009089715A1

Cited By

  • Intelligent scheduling system for parallel batch processor job shop scheduling

    CN122085953A