Port distribution method, device, equipment, medium and program product in semiconductor carrying system

By introducing virtual points and a weighted calculation port allocation method into the semiconductor transport system, the problem of low efficiency in equipment destination allocation in the semiconductor handling system is solved, and high efficiency and load balancing of equipment operation are achieved.

CN121900336APending Publication Date: 2026-04-21MEETFUTURE TECH (SHANGHAI) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
MEETFUTURE TECH (SHANGHAI) CO LTD
Filing Date
2025-12-25
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

In semiconductor handling systems, traditional methods result in inefficiencies in the allocation of semiconductor handling equipment at the destination port, especially when the preceding equipment blocks the progress of the following equipment, causing a reduction in handling efficiency.

Method used

By configuring virtual points on the necessary tracks of the semiconductor transport system, the task cost of each port is obtained based on the location information of the semiconductor handling equipment, and the destination port of the equipment is re-determined based on these costs. A weighted calculation method is used to optimize port allocation.

Benefits of technology

It improves the overall efficiency of the semiconductor handling system, avoids mutual interference and congestion between devices, and achieves load balancing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121900336A_ABST
    Figure CN121900336A_ABST
Patent Text Reader

Abstract

The invention relates to a destination allocation method, device and equipment in a semiconductor carrying system, a medium and a program product. The semiconductor carrying system comprises a plurality of semiconductor transmission systems, each semiconductor transmission system comprises at least two ports, and corresponding virtual point locations are configured on necessary tracks for reaching the semiconductor transmission systems; the method comprises the steps of obtaining task cost corresponding to each port under the condition that it is determined that semiconductor carrying equipment arrives at a virtual point location based on position information reported by the semiconductor carrying equipment; and re-determining a destination port for the semiconductor carrying equipment based on the task cost corresponding to each port. By adopting the method, the carrying efficiency can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of semiconductor technology, and in particular to a port assignment method, apparatus, device, medium, and program product in a semiconductor handling system. Background Technology

[0002] Automated Material Handling Systems (AMHS) are a critical component of wafer fab production in the semiconductor industry, improving production efficiency and product yield through automated material handling. With the continuous advancement of domestic semiconductor manufacturing processes, the importance of semiconductor material handling systems is becoming increasingly prominent.

[0003] In traditional technology, a semiconductor handling system includes multiple semiconductor transport systems, and each semiconductor transport system includes at least two ports. When the destination of a semiconductor handling device is a different port of a semiconductor transport system, if the destination port of the preceding semiconductor handling device is in front and the destination port of the following semiconductor handling device is in the back, then the preceding semiconductor handling device will block the progress of the following semiconductor handling device, resulting in reduced handling efficiency. Summary of the Invention

[0004] Therefore, it is necessary to provide a port allocation method, apparatus, device, medium, and program product in a semiconductor handling system that can improve handling efficiency in response to the above-mentioned technical problems.

[0005] In a first aspect, this application provides a port allocation method in a semiconductor handling system, wherein the semiconductor handling system includes multiple semiconductor transport systems, each semiconductor transport system includes at least two ports, and corresponding virtual points are configured on the necessary track leading to the semiconductor transport system; the method includes:

[0006] When the location information reported by the semiconductor handling equipment determines that the semiconductor handling equipment has arrived at the virtual point, the task cost corresponding to each port is obtained.

[0007] Based on the task cost corresponding to each port, the destination port is re-determined for the semiconductor handling device.

[0008] In one embodiment, obtaining the task cost corresponding to each of the ports includes:

[0009] Determine the cost parameter value corresponding to each port. The cost parameter value includes at least one of the following: the distance from each port to the virtual point, whether there is a valid task at each port, and the number of valid tasks corresponding to each port.

[0010] The task cost corresponding to each port is obtained based on each of the cost parameters, and the task cost is the cost of the port being the destination of the semiconductor handling equipment.

[0011] In one embodiment, obtaining the task cost corresponding to each port based on each of the cost parameters includes:

[0012] Determine the weight corresponding to each of the cost parameter values, with the first weight corresponding to whether there is a valid task at each port being the largest, and the second weight corresponding to the distance from each port to the virtual point being the smallest;

[0013] The task cost corresponding to each port is obtained by weighting each cost parameter value and the corresponding weight.

[0014] In one embodiment, the step of weighting based on each cost parameter value and the weight corresponding to each cost parameter value to obtain the task cost corresponding to each port includes:

[0015] For each port, the task cost corresponding to that port can be obtained in the following ways:

[0016] Based on the cost parameter value of whether there is a valid task at the port and the first weight, the allocated penalty value is obtained;

[0017] Based on the distance from the port to the virtual point and the second weight, a distance reward value is obtained;

[0018] Based on the number of valid tasks corresponding to the port and the corresponding third weight, the task number penalty value is obtained;

[0019] The task cost corresponding to the port is obtained based on the allocated penalty value, the task number penalty value, and the distance reward value.

[0020] In one embodiment, the method further includes:

[0021] When the semiconductor handling equipment arrives at the destination port, update the number of valid tasks at the destination port;

[0022] If the number of valid tasks at the destination port is 0, update the parameter value indicating whether there are valid tasks at the destination port to a target value, whereby the target value indicates that there are no valid tasks at the destination port.

[0023] In one embodiment, the virtual point is a track image code on the necessary track; when determining the location of the semiconductor handling equipment to the virtual point based on the location information reported by the semiconductor handling equipment, obtaining the task cost corresponding to each port includes at least one of the following:

[0024] If the track image code used to determine location information reported by the semiconductor handling equipment is the virtual point, the task cost corresponding to each port is obtained, wherein if the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point, the semiconductor handling equipment reports the virtual point; or

[0025] If the track image code reported by the semiconductor handling equipment is a virtual point, it is detected whether the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point. If the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point, the task cost corresponding to each port is obtained.

[0026] In one embodiment, obtaining the task cost corresponding to each of the ports includes:

[0027] When the number of virtual points corresponding to the semiconductor transmission system is at least two, the port corresponding to each virtual point is determined from the ports of the semiconductor transmission system.

[0028] Determine the task cost of each port corresponding to the virtual point.

[0029] In one embodiment, determining the port corresponding to each virtual point from the ports of the semiconductor transmission system includes:

[0030] Determine the orientation of the ports in the semiconductor transmission system and the orientation of the track where the virtual point is located;

[0031] The port corresponding to the virtual point is determined based on the direction of the port in the semiconductor transmission system and the direction of the track where the virtual point is located.

[0032] In one embodiment, after determining the port corresponding to the virtual point based on the direction of the port in the semiconductor transmission system and the direction of the track where the virtual point is located, the method further includes:

[0033] In the case where the ports corresponding to each virtual point overlap, for each virtual point where the ports overlap, determine the number of semiconductor handling devices that have reached the virtual point but have not reached the destination.

[0034] Determine the ratio of the number of semiconductor handling devices corresponding to each virtual point;

[0035] Based on the ratio and the distance between each port of the semiconductor transmission system and each virtual point, the port corresponding to the virtual point is determined.

[0036] Secondly, this application also provides a port allocation device for a semiconductor handling system, the semiconductor handling system including multiple semiconductor transport systems, each semiconductor transport system including at least two ports, and corresponding virtual points configured on the necessary track to reach the semiconductor transport system; the device includes:

[0037] The task cost acquisition module is used to acquire the task cost corresponding to each port when the semiconductor handling equipment has arrived at the virtual point based on the location information reported by the semiconductor handling equipment.

[0038] The allocation module is used to redetermine the destination port for the semiconductor handling equipment based on the task cost corresponding to each port.

[0039] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the method in any of the above embodiments.

[0040] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the methods in any of the above embodiments.

[0041] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the method in any of the above embodiments.

[0042] The aforementioned semiconductor handling system includes a port allocation method, apparatus, device, medium, and program product. The semiconductor handling system comprises a semiconductor transmission system, which has at least two ports. Corresponding virtual points are configured on the necessary path leading to the semiconductor transmission system. When the semiconductor handling equipment reaches the virtual point based on its reported position information, the task cost corresponding to each port is obtained. Based on the task cost corresponding to each port, a new destination port is determined for the semiconductor handling equipment. This re-determination of the destination port prevents preceding semiconductor handling equipment from blocking the progress of subsequent semiconductor handling equipment, thus improving overall efficiency. Attached Figure Description

[0043] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0044] Figure 1 This is a schematic diagram of a wafer fab layout in one embodiment;

[0045] Figure 2 This is a schematic diagram of cross-system and cross-region transit in one embodiment;

[0046] Figure 3 This is a schematic diagram of a cleanroom conveyor in one embodiment;

[0047] Figure 4 This is a schematic diagram of a semiconductor handling system corresponding to a port allocation method in a semiconductor handling system in one embodiment;

[0048] Figure 5 This is a flowchart illustrating a port allocation method in a semiconductor handling system according to one embodiment;

[0049] Figure 6 This is a schematic diagram of the allocation process in one embodiment;

[0050] Figure 7 This is a structural block diagram of a port allocation device in a semiconductor handling system according to one embodiment;

[0051] Figure 8 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

[0052] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0053] It should be noted that the terms "first," "second," etc., used in this application can be used to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish the first element from the second element. The terms "comprising" and "having," and any variations thereof, used in this application, are intended to cover non-exclusive inclusion. The term "multiple" used in this application refers to two or more. The term "and / or" used in this application refers to one of the embodiments, or any combination of multiple embodiments.

[0054] Among them, the combination Figure 1 As shown, Figure 1 This is a schematic diagram of a wafer fab layout in one embodiment, where the blue areas represent semiconductor memory devices 102, and each semiconductor memory device includes two sets of input / output ports 104. Figure 1 (Represented in orange). The area is divided into 1F and 3F (1F is the first floor, 3F is the third floor or a higher floor). Each area has several semiconductor storage device stockers. Transfers between floors are made through tower stockers. Therefore, to achieve the transfer from 1F to 3F, we can only rely on tower stockers. Cross-floor transfers will become the bottleneck for the entire plant's transport.

[0055] In addition, combined Figure 2 As shown, Figure 2 This is a schematic diagram of cross-system, cross-regional transfer in one embodiment. MCS A and MCS B manage equipment within their respective regions. When goods need to be transferred from region A to region B, the typical solution is to add a transfer device in between, acting as a separator between the two regions; for example... Figure 2 When goods travel from area A to area B, they may need to pass through semiconductor storage equipment Stocker A and semiconductor storage equipment Stocker B for transfer. When the goods are still in semiconductor storage equipment Stocker A, they are managed by MCS A. When they are transferred to area B, they are managed by MCS B. In this way, semiconductor storage equipment Stocker A and semiconductor storage equipment Stocker B can easily become bottlenecks in the entire plant's handling.

[0056] Similarly, for cleanroom conveyor lines (such as...) that include multiple ports... Figure 3 As shown in the image, the semiconductor handling equipment (ALP) can also become bottlenecks in the overall plant handling process.

[0057] To avoid the above-mentioned situation, the destination allocation method in the semiconductor handling system provided in this application embodiment can be applied to, for example... Figure 4 The semiconductor handling system shown includes a semiconductor transport system, which can also be used for... Figure 4 The semiconductor memory device shown Figure 3 The cleanroom conveyor shown is at least one of the following: a cleanroom conveyor line or a semiconductor handling device (ALP).

[0058] Semiconductor storage devices, cleanroom conveyor lines, and semiconductor handling equipment may all include multiple external ports. These ports are concentrated in the same area. If a large number of semiconductor storage devices, cleanroom conveyor lines, and semiconductor handling equipment are transported to their destinations, congestion will occur around these devices. To address this, virtual points are introduced. Virtual points are configured on the necessary tracks to the semiconductor transport system. When passing through virtual points, the destination of the semiconductor handling equipment is redistributed to reduce the congestion rate in the area.

[0059] In one exemplary embodiment, combined with Figure 5 As shown, a port allocation method in a semiconductor handling system is provided, including steps 502 to 504. Wherein:

[0060] S502: When the location information reported by the semiconductor handling equipment determines that the semiconductor handling equipment has reached the virtual point, obtain the task cost corresponding to each port.

[0061] The semiconductor handling system includes a semiconductor transport system, which has at least two ports, and corresponding virtual points are configured on the necessary track leading to the semiconductor transport system, such as... Figure 4 In the case of A, the virtual point can optionally be on the track where the port of the semiconductor transmission system is located. In other embodiments, if Figure 4 If all ports of the semiconductor transport system are input ports, then corresponding virtual points can be set on the tracks on both sides of the semiconductor transport system. Subsequently, the system will uniformly redetermine the destination ports of each semiconductor handling device corresponding to the two virtual points.

[0062] The location information reported by the semiconductor handling equipment is a track image code. The location information of the semiconductor handling equipment can be determined based on the track image code. Based on the location of the pre-set virtual point and the location of the semiconductor handling equipment represented by the location information, it can be determined whether the semiconductor handling equipment has reached the virtual point.

[0063] Optionally, the virtual point can be at least one segment of track image code on the track. This is because when the semiconductor handling equipment passes through the track or nodes on each device, it scans the track image code on the track to report the event. Therefore, in order to reduce the impact on the system, this application directly modifies the attribute of a certain segment of track image code on the necessary track to reach the semiconductor transmission system to represent a virtual point. Thus, after the semiconductor transmission system reports an event, the track image code reported by the semiconductor handling equipment can be obtained by parsing the event. Based on the attribute of the track image code, it is determined whether the semiconductor handling equipment has reached the virtual point. That is, it is detected whether the attribute of the track image code reported by the semiconductor handling equipment is a virtual point. If so, it can be determined that the semiconductor handling equipment has reached the virtual point.

[0064] In some optional embodiments, the virtual point is a track image code on the necessary track; when the location of the semiconductor handling equipment to the virtual point is determined based on the location information reported by the semiconductor handling equipment, the task cost corresponding to each port is obtained, including at least one of the following:

[0065] When the track image code used to determine the location information reported by the semiconductor handling equipment is a virtual point, the task cost corresponding to each port is obtained. In the case where the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point, the semiconductor handling equipment reports the virtual point.

[0066] Alternatively, if the track image code reported by the semiconductor handling equipment is a virtual point, detect whether the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point. If the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point, obtain the task cost corresponding to each port.

[0067] In this embodiment, the main purpose is to determine whether the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point. If it is not located there, it will not affect the operation of the subsequent semiconductor handling equipment; it will only pass through. The determination of whether the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point can be made within the semiconductor handling equipment or in the host system.

[0068] Based on the above, if the judgment is made in the semiconductor handling equipment, when the semiconductor handling equipment determines that the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point, the corresponding virtual point is reported, and the upper system does not need to make a judgment again.

[0069] Based on the above, if the judgment is made in the host system, the semiconductor handling equipment will report the virtual point when it scans it, without needing to perform any detection. The host system will check whether the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point. If so, it will continue to obtain the task cost corresponding to each port to redetermine the destination port of the semiconductor handling equipment.

[0070] A port is the port of a semiconductor transmission system corresponding to a virtual point, combined with... Figure 4 As shown, the virtual point A corresponds to ports I1 and I2. It should be noted that the ports corresponding to the virtual points can be preset or determined in real time (for example, if the direction of the port can be changed, the ports corresponding to the virtual points need to be determined in real time).

[0071] In some optional embodiments, obtaining the task cost corresponding to each port includes: when there are at least two virtual points corresponding to the semiconductor transmission system, determining the port corresponding to each virtual point from the ports of the semiconductor transmission system; and determining the task cost of each port corresponding to the virtual point.

[0072] In this embodiment, the virtual point corresponding to the semiconductor transmission system may include at least two; when the directions of the ports corresponding to each virtual point (e.g., two virtual points) are different, the port corresponding to the virtual point can be determined directly based on the direction of each port of the semiconductor transmission system.

[0073] If the ports corresponding to at least two virtual points located on different necessary tracks (e.g., two virtual points) have the same direction (meaning the ports corresponding to at least two virtual points overlap), then corresponding ports need to be assigned to the two virtual points to avoid interference between semiconductor handling equipment from two directions. The determination that the ports corresponding to at least two virtual points located on different necessary tracks have the same direction can be based on the direction of each port in the semiconductor transport system. After determining the ports corresponding to the virtual points, check whether the ports corresponding to each virtual point overlap. If they do, then the ports corresponding to the virtual points are determined to have the same direction.

[0074] In some optional embodiments, determining the port corresponding to each virtual point from the ports of the semiconductor transmission system includes: determining the direction of the port in the semiconductor transmission system and the direction of the track where the virtual point is located; and determining the port corresponding to the virtual point based on the direction of the port in the semiconductor transmission system and the direction of the track where the virtual point is located.

[0075] Specifically, the correspondence between virtual points and ports can include: determining the direction of the ports in the semiconductor transmission system and the direction of the track where the virtual point is located. The port direction can be read from port attributes, which include both input and output directions. The track direction can also be read from track attributes, such as the start and end points. Thus, the track direction can be determined based on the start and end points; that is, the track direction is from the start point to the end point. A correspondence between virtual points and ports is established when the track direction indicates an input port (i.e., the end point of the track is the port) and the port direction indicates that the port is an input port. A correspondence between virtual points and ports is also established when the track direction indicates an output port (i.e., the start point of the track is the port) and the port direction indicates that the port is an output port.

[0076] When the directions of the ports corresponding to each virtual point (e.g., two virtual points) are different, the ports corresponding to the virtual points can be determined directly based on the directions of the ports of the semiconductor transmission system, which is the correspondence between the virtual points and ports established above.

[0077] When there is overlap between the ports corresponding to each virtual point, that is, when the ports corresponding to at least two virtual points located on different necessary tracks of the semiconductor delivery system have the same direction, then these ports need to be allocated based on the workload corresponding to each virtual point.

[0078] In some optional embodiments, after determining the port corresponding to the virtual point based on the direction of the port in the semiconductor transmission system and the direction of the track where the virtual point is located, the method further includes: if the ports corresponding to each virtual point overlap, determining the number of semiconductor handling devices that have reached the virtual point but have not reached the destination for each virtual point with overlapping ports; determining the ratio of the number of semiconductor handling devices corresponding to each virtual point; and determining the port corresponding to the virtual point based on the ratio and the distance between each port of the semiconductor transmission system and each virtual point.

[0079] The number of semiconductor handling devices that have reached the virtual point but not the destination is also the workload corresponding to that virtual point. This allows for a simple measurement of the congestion on each necessary track of the semiconductor transmission system. In order to improve processing efficiency, this application allocates more ports to the side with higher congestion to speed up the consumption of tasks.

[0080] To address the situation in semiconductor transmission systems where at least two virtual points correspond to overlapping ports (i.e., one port corresponds to two virtual points), the workload for each virtual point is determined, and then the workload ratio is calculated. Based on this ratio, the number of shared ports corresponding to the two virtual points is allocated. For example, if both virtual points correspond to ports 1-5 with a ratio of 2:3, then one virtual point needs to be allocated 2 ports, and the other virtual point needs to be allocated 3 ports. Finally, based on the distance between each port of the semiconductor transmission system and each virtual point, the port corresponding to each virtual point is determined. In this application, to avoid the influence of semiconductor handling equipment from multiple directions, the port closer to the virtual point is allocated to the virtual point. Figure 3 As shown, ports I1 and I2 are assigned to a virtual point.

[0081] In some optional embodiments, the port status includes a normal status and a fault status; wherein the fault status can be a status where the port is unavailable after an alarm occurs. Before determining the correspondence between virtual points and ports, this application includes: obtaining the port status of each port corresponding to the semiconductor delivery system; if the port status is a fault status, then the port does not participate in the allocation; if the port status is a normal status, the correspondence between virtual points and ports is further determined.

[0082] The above embodiments provide a method for determining the port corresponding to the virtual point. After determining the port corresponding to the virtual point, it is also necessary to determine the task cost corresponding to each port.

[0083] The task cost corresponding to a port is determined based on at least one of the following: the distance from the port to the virtual point, whether the port has a valid task, and the number of valid tasks corresponding to the port. In other embodiments, other port attributes or parameters can be introduced for judgment. This application does not impose specific limitations; it only needs to obtain the task cost corresponding to the port to redetermine the destination port for the semiconductor handling equipment. Based on this task cost, each port can take turns as the destination port for each semiconductor handling equipment, for example... Figure 4Originally, there were four semiconductor handling devices. The initial destinations of the first, second, third, and fourth semiconductor handling devices were all set to port I1. However, after resetting the destination ports, the destination ports of the first semiconductor handling device arriving at virtual point A were changed to port I2, the second to port I1, the third to port I2, and the fourth to port I1. Ports I2 and I1 were then polled sequentially to avoid mutual interference between the semiconductor handling devices.

[0084] S504: Based on the task cost corresponding to each port, redetermine the destination port for the semiconductor handling equipment.

[0085] After determining the task cost corresponding to each port, the destination port for the semiconductor handling equipment is re-determined based on the task cost. For example, the port with the lower task cost is selected as the destination port corresponding to the current semiconductor handling equipment, so that each port takes turns as the destination port of each semiconductor handling equipment, avoiding mutual interference between semiconductor handling equipment.

[0086] In the above embodiments, when the semiconductor handling equipment is determined to have reached the virtual point based on the location information reported by the semiconductor handling equipment, the task cost corresponding to each port is obtained; based on the task cost corresponding to each port, the destination port for the semiconductor handling equipment is re-determined. In this way, the destination port for the semiconductor handling equipment is re-determined, which avoids the semiconductor handling equipment in front from blocking the progress of the semiconductor handling equipment behind, thereby improving the overall efficiency.

[0087] In some optional embodiments, obtaining the task cost corresponding to each port includes: determining the cost parameter value corresponding to each port, the cost parameter value including at least one of the distance from each port to the virtual point, whether there is a valid task at each port, and the number of valid tasks corresponding to each port; and obtaining the task cost corresponding to each port based on the cost parameter value.

[0088] In this application, the cost parameter values ​​include at least one of the following: the distance from each port to the virtual point, the parameter value indicating whether there is a valid task at each port, and the number of valid tasks corresponding to each port. In other embodiments, the cost parameter values ​​may also include other values, which are not specifically limited here.

[0089] The distance from each port to the virtual point is fixed. Given a fixed virtual point, the distance from each port to the virtual point is also fixed. Figure 3 As shown, Figure 3 The system includes 5 ports, and the distances from each port (I1-I5) to the virtual point are 50, 100, 150, 200 and 250 respectively. The distances here are only for distance purposes and can be other values ​​in other embodiments.

[0090] Whether a port has a valid task refers to whether the port is the destination of one of the semiconductor handling devices (here, the destination refers to the reassigned destination). That is, the port is the destination port of at least one semiconductor handling device between the port and the virtual point. If the port is the destination port of at least one semiconductor handling device between the port and the virtual point, the value of whether a port has a valid task is 1; otherwise, it is 0. It should be noted that no matter how many valid tasks a port corresponds to, as long as there is a valid task, the cost parameter value of this item is 1.

[0091] The number of valid tasks corresponding to each port refers to the number of semiconductor handling devices that use that port as the destination port between the port and the virtual point, which is also the number of valid tasks. The cost parameter value is the same as the number of tasks.

[0092] In some optional embodiments, the task cost corresponding to each port is obtained based on each cost parameter value, including: determining the weight corresponding to each cost parameter value, with the weight corresponding to whether there is a valid task at each port being the largest, and the weight corresponding to the distance from each port to the virtual point being the smallest; and weighting based on each cost parameter value and the weight corresponding to each cost parameter value to obtain the task cost corresponding to each port.

[0093] The presence of valid tasks on each port carries the highest weight, resulting in the maximum penalty for ports already assigned tasks. This means that once a task is assigned to a port, it will be prioritized for allocation to other ports, thus ensuring a balanced distribution of tasks across all ports. The distance from each port to the virtual point carries the lowest weight, indicating that the number of valid tasks for each port is dominant. When tasks exist on all ports, task distribution is based on the number of tasks. Furthermore, due to the influence of distance, for the same number of tasks, ports with greater distances incur lower costs, allowing for the prioritization of more distant ports and preventing nearby ports from blocking tasks on more distant ports.

[0094] In some optional embodiments, the task cost corresponding to each port is obtained by weighting based on each cost parameter value and the weight corresponding to each cost parameter value. This includes: for each port, the task cost corresponding to the port is obtained in the following ways: based on the cost parameter value of whether there is a valid task at the port and the first weight, an allocated penalty value is obtained; based on the distance from the port to the virtual point and the second weight, a distance reward value is obtained; based on the number of valid tasks corresponding to the port and the corresponding third weight, a task number penalty value is obtained; and the task cost corresponding to the port is obtained based on the allocated penalty value, the task number penalty value, and the distance reward value.

[0095] Specifically, the task cost is Cost = (α*P) - (β*D) + (γ*T), where P is the cost parameter value for whether there is a valid task at the port, α is its corresponding first weight, D is the distance from the port to the virtual point, β is its corresponding second weight, T is the number of valid tasks corresponding to the port, and γ is its corresponding third weight.

[0096] The task cost is actually the penalty value for that port. α*P is the already assigned penalty value, meaning that after a port has been assigned a task, other tasks are preferentially assigned to ports without tasks. β*D is the distance reward value. This is because, ideally, closer ports should be more likely to be assigned tasks. However, in this application, if tasks are preferentially assigned to closer ports, it would affect the execution of tasks on more distant ports. Therefore, this application sets its second weight to be the smallest to mitigate its impact. γ*T is the task number penalty value. Given that all ports have been assigned tasks, the number of tasks becomes the dominant factor; ports with fewer tasks are more likely to be assigned tasks. When all ports have been assigned tasks, and the number of tasks on each port is the same, more distant ports are preferred to avoid closer ports affecting the tasks of more distant ports.

[0097] In some optional embodiments, the method further includes: updating the number of valid tasks at the destination port when the semiconductor handling equipment arrives at the destination port; and updating a parameter value indicating whether there are valid tasks at the destination port to a target value when the number of valid tasks at the destination port is 0, the target value indicating that there are no valid tasks at the destination port.

[0098] To ensure the accuracy of task cost calculation, when the semiconductor handling equipment arrives at the destination port, the number of valid tasks at that destination port is updated to ensure the accuracy of cost calculation. When the number of valid tasks at the destination port is 0, that is, when there are no valid tasks at the destination port, the parameter value for whether there are valid tasks at the port is set to a target value. The target value indicates that there are no valid tasks at the port, for example, updating the parameter value for whether there are valid tasks at the corresponding port to 0.

[0099] For ease of understanding, Figure 6 Taking 5 ports as an example, the destination port is reallocated, and the initial state of each node is as follows:

[0100] Port I1: Distance to virtual point = 50, Number of valid tasks T = 0, Allocated flag P = 0;

[0101] Port I2: Distance to virtual point = 100, Number of valid tasks T = 0, Allocated flag P = 0;

[0102] Port I3: Distance to virtual point = 150, Number of valid tasks T = 0, Allocated flag P = 0;

[0103] Port I4: Distance to virtual point = 200, Number of valid tasks T = 0, Allocated flag P = 0;

[0104] Port I5: Distance to virtual point = 250, Number of valid tasks T = 0, Allocated flag P = 0;

[0105] The weight α = 10000 corresponding to whether there are valid tasks at a port (used to calculate the allocated penalty value mentioned above), the weight β = 1 corresponding to the distance from each port to the virtual point (distance reward coefficient, the purpose of which is to reduce its influence and is used to calculate the distance reward value), and the weight γ = 100 corresponding to the number of valid tasks at each port (task number penalty coefficient, the purpose of which is to increase its influence and make it dominant and is used to calculate the task number penalty value).

[0106] The specific cost changes can be found in Table 1.

[0107] Table 1

[0108]

[0109] Among them, the combination Figure 6 As shown, Figure 6 The diagram illustrates each allocation process. In the first phase, rounds 1-5 above, all ports have T=0 and P=0. The scheduling strategy degenerates to selecting the port with the furthest distance because the task cost Cost=-β*D. Following the order I5->I4->I3->I2->I1, the first task is allocated to each node sequentially, achieving full coverage.

[0110] The second stage, namely rounds 6-10 above, is the digestion and redistribution stage. After round 5, all ports T=1 and P=1.

[0111] Before round 6 begins, the task on port I2 is processed (T:1->0), and its P flag is reset (P:1->0). It receives the highest priority because T=0 and P=0. Subsequently, the port that has just finished processing its task (T becomes 0, P is reset to 0) is prioritized for allocation in the next round. This forms a circular queue: I5->I4->I3->I2->I1->I5..., achieving load balancing.

[0112] The semiconductor transport system includes semiconductor storage devices (Stockers), cleanroom conveyor lines (Conveyors), and semiconductor handling equipment (ALPs). These devices all have multiple ports and may be used in automated transport scenarios spanning multiple areas, including floors and factory zones. Typically, such equipment is a crucial node for cross-area entry and exit, and frequent entry and exit can turn these areas into bottlenecks. When load balancing is achieved, these cross-floor or cross-area devices can achieve offsetting of opposing commands, improving their utilization. Offsetting balance refers to bidirectional, one-way operation, reducing idle runs. When bidirectional commands for this type of equipment are redistributed to achieve load balancing, the opposing commands on both sides can be almost equal, allowing intermediate material transfer mechanisms (such as semiconductor handling equipment) to make round trips, reducing the probability of idle runs and thus mitigating the impact of bottlenecks on the overall environment.

[0113] Combination Figure 2 As shown, when the semiconductor handling equipment passes through the virtual node, it sends a task cancellation instruction to the MCS A corresponding to the area to be left, and then sends a task registration instruction to the MCS B corresponding to the area to be entered. In this way, the closed-loop dispatching command within MCS A and upwards, as well as the triggering of MCS B to create an account and make a dispatching request to MES B, realize the transfer of tasks. The tasks from area A to area B are sequentially stored in the ports of the semiconductor storage devices corresponding to area B, and the tasks from area B to area A are sequentially stored in the ports of the semiconductor storage devices corresponding to area A. In this way, the intermediate material transfer mechanism carries the corresponding materials back and forth each time, avoiding empty runs. Moreover, by using the virtual node to complete the handover of material signals across systems, the transfer equipment is eliminated, reducing costs.

[0114] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. It is understood that the steps in different embodiments can be freely combined as needed, and all non-contradictory solutions formed by such combinations are within the scope of protection of this application.

[0115] Based on the same inventive concept, this application also provides a destination allocation device in a semiconductor transport system for implementing the destination allocation method in the semiconductor transport system described above. The solution provided by this device is similar to the solution described in the above method; therefore, the specific limitations in one or more embodiments of the destination allocation device in a semiconductor transport system provided below can be found in the limitations of the destination allocation method in the semiconductor transport system described above, and will not be repeated here.

[0116] In one exemplary embodiment, such as Figure 7 As shown, a destination allocation device is provided in a semiconductor handling system. The semiconductor handling system includes multiple semiconductor transport systems, each with at least two ports, and corresponding virtual points are configured on the necessary tracks leading to the semiconductor transport systems. The device includes: a task cost acquisition module 801 and an allocation module 802, wherein:

[0117] The task cost acquisition module 801 is used to acquire the task cost corresponding to each port when the semiconductor handling equipment has arrived at the virtual point based on the location information reported by the semiconductor handling equipment.

[0118] The allocation module 802 is used to redetermine the destination port for the semiconductor handling equipment based on the task cost corresponding to each port.

[0119] In some optional embodiments, the task cost acquisition module 801 is specifically used to determine the cost parameter value corresponding to each port. The cost parameter value includes at least one of the following: the distance from each port to the virtual point, whether there is a valid task at each port, and the number of valid tasks corresponding to each port. Based on the cost parameter value, the task cost corresponding to each port is obtained. The task cost is the cost of the port as the destination of the semiconductor handling equipment.

[0120] In some optional embodiments, the task cost acquisition module 801 is specifically used to determine the weight corresponding to each cost parameter value, the first weight corresponding to whether there is a valid task at each port is the largest, and the second weight corresponding to the distance from each port to the virtual point is the smallest; and the task cost corresponding to each port is obtained by weighting based on each cost parameter value and the weight corresponding to each cost parameter value.

[0121] In some optional embodiments, the task cost acquisition module 801 is specifically used to obtain the task cost corresponding to each port in the following ways: obtaining an allocated penalty value based on the cost parameter value of whether there is a valid task at the port and the first weight; obtaining a distance reward value based on the distance from the port to the virtual point and the second weight; obtaining a task number penalty value based on the number of valid tasks corresponding to the port and the corresponding third weight; and obtaining the task cost corresponding to the port based on the allocated penalty value, the task number penalty value, and the distance reward value.

[0122] In some optional embodiments, the task cost acquisition module 801 is specifically used to update the number of valid tasks at the destination port when the semiconductor handling equipment arrives at the destination port; and to update the parameter value indicating whether there are valid tasks at the destination port to a target value when the number of valid tasks at the destination port is 0, wherein the target value is used to indicate that there are no valid tasks at the destination port.

[0123] In some optional embodiments, the virtual point is a track image code on a necessary track; the task cost acquisition module 801 is specifically used to acquire the task cost corresponding to each port based on at least one of the following: when the track image code for determining location information reported by the semiconductor handling equipment is a virtual point, acquire the task cost corresponding to each port, wherein the semiconductor handling equipment reports the virtual point when the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point; or when the track image code reported by the semiconductor handling equipment is a virtual point, detect whether the initial destination of the semiconductor handling equipment is located in the semiconductor processing corresponding to the virtual point, and acquire the task cost corresponding to each port when the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point.

[0124] In some optional embodiments, the task cost acquisition module 801 is specifically used to determine the port corresponding to each virtual point from the ports of the semiconductor transmission system when there are at least two virtual points corresponding to the semiconductor transmission system; and to determine the task cost of each port corresponding to the virtual point.

[0125] In some optional embodiments, the task cost acquisition module 801 is specifically used to determine the direction of the port in the semiconductor transmission system and the direction of the track where the virtual point is located; and to determine the port corresponding to the virtual point based on the direction of the port in the semiconductor transmission system and the direction of the track where the virtual point is located.

[0126] In some optional embodiments, the task cost acquisition module 801 is specifically used to determine the number of semiconductor handling devices that have reached the virtual point but have not reached the destination for each virtual point when the ports corresponding to each virtual point overlap; determine the ratio of the number of semiconductor handling devices corresponding to each virtual point; and determine the port corresponding to the virtual point based on the ratio and the distance between each port of the semiconductor transmission system and each virtual point.

[0127] Each module in the destination allocation device of the aforementioned semiconductor handling system can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.

[0128] In one exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 8 As shown, the computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores the data involved in the aforementioned methods. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements a destination allocation method in a semiconductor handling system.

[0129] Those skilled in the art will understand that Figure 8The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0130] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.

[0131] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.

[0132] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.

[0133] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.

[0134] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.

[0135] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0136] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A port allocation method in a semiconductor handling system, characterized in that, The semiconductor handling system includes multiple semiconductor transport systems, each of which includes at least two ports, and corresponding virtual points are configured on the necessary path leading to the semiconductor transport system; the method includes: When the location information reported by the semiconductor handling equipment determines that the semiconductor handling equipment has arrived at the virtual point, the task cost corresponding to each port is obtained. Based on the task cost corresponding to each port, the destination port is re-determined for the semiconductor handling device.

2. The method according to claim 1, characterized in that, The task cost for obtaining the corresponding port includes: Determine the cost parameter value corresponding to each port. The cost parameter value includes at least one of the following: the distance from each port to the virtual point, whether there is a valid task at each port, and the number of valid tasks corresponding to each port. The task cost corresponding to each port is obtained based on each of the cost parameters, and the task cost is the cost of the port being the destination of the semiconductor handling equipment.

3. The method according to claim 2, characterized in that, The process of obtaining the task cost corresponding to each port based on each of the cost parameters includes: Determine the weight corresponding to each of the cost parameter values, with the first weight corresponding to whether there is a valid task at each port being the largest, and the second weight corresponding to the distance from each port to the virtual point being the smallest; The task cost corresponding to each port is obtained by weighting each cost parameter value and the corresponding weight.

4. The method according to claim 3, characterized in that, The step of weighting based on each cost parameter value and the weight corresponding to each cost parameter value to obtain the task cost corresponding to each port includes: For each port, the task cost corresponding to that port can be obtained in the following ways: Based on the cost parameter value of whether there is a valid task at the port and the first weight, the allocated penalty value is obtained; Based on the distance from the port to the virtual point and the second weight, a distance reward value is obtained; Based on the number of valid tasks corresponding to the port and the corresponding third weight, the task number penalty value is obtained; The task cost corresponding to the port is obtained based on the allocated penalty value, the task number penalty value, and the distance reward value.

5. The method according to claim 2 or 3, characterized in that, The method further includes: When the semiconductor handling equipment arrives at the destination port, update the number of valid tasks at the destination port; If the number of valid tasks at the destination port is 0, update the parameter value indicating whether there are valid tasks at the destination port to a target value, whereby the target value indicates that there are no valid tasks at the destination port.

6. The method according to claim 1, characterized in that, The virtual point is a track image code on the necessary track; when determining the semiconductor handling equipment's location to the virtual point based on the location information reported by the semiconductor handling equipment, obtaining the task cost corresponding to each port includes at least one of the following: When the track image code for determining location information reported by the semiconductor handling equipment is the virtual point, the task cost corresponding to each port is obtained, wherein when the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point, the semiconductor handling equipment reports the virtual point; or If the track image code reported by the semiconductor handling equipment is a virtual point, it is detected whether the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point. If the initial destination of the semiconductor handling equipment is located in the semiconductor transmission system corresponding to the virtual point, the task cost corresponding to each port is obtained.

7. The method according to any one of claims 1 to 4, characterized in that, The task cost for obtaining the corresponding port includes: When the number of virtual points corresponding to the semiconductor transmission system is at least two, the port corresponding to each virtual point is determined from the ports of the semiconductor transmission system. Determine the task cost for each port corresponding to the virtual point.

8. The method according to claim 7, characterized in that, Determining the port corresponding to each virtual point from the ports of the semiconductor transmission system includes: Determine the orientation of the ports in the semiconductor transmission system and the orientation of the track where the virtual point is located; The port corresponding to the virtual point is determined based on the direction of the port in the semiconductor transmission system and the direction of the track where the virtual point is located.

9. The method according to claim 8, characterized in that, After determining the port corresponding to the virtual point based on the direction of the port in the semiconductor transmission system and the direction of the track where the virtual point is located, the method further includes: In the case where the ports corresponding to each virtual point overlap, for each virtual point where the ports overlap, determine the number of semiconductor handling devices that have reached the virtual point but have not reached the destination. Determine the ratio of the number of semiconductor handling devices corresponding to each virtual point; Based on the ratio and the distance between each port of the semiconductor transmission system and each virtual point, the port corresponding to the virtual point is determined.

10. A port assignment device in a semiconductor handling system, characterized in that, The semiconductor handling system includes multiple semiconductor transport systems, each of which includes at least two ports, and corresponding virtual points are configured on the necessary path leading to the semiconductor transport system; the device includes: The task cost acquisition module is used to acquire the task cost corresponding to each port when the semiconductor handling equipment has arrived at the virtual point based on the location information reported by the semiconductor handling equipment. The allocation module is used to redetermine the destination port for the semiconductor handling equipment based on the task cost corresponding to each port.

11. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 9, and further converts the computer program into a computer program product.