Load balancing circuit and method for handling load balancing

By optimizing the number of user fields using a minimum full binary tree and a load balancing function, the problem of excessively long user fields in communication systems is solved, bandwidth utilization efficiency is improved, and the load balancing process is simplified.

CN117119474BActive Publication Date: 2026-06-02REALTEK SEMICON CORP

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
REALTEK SEMICON CORP
Filing Date
2022-05-12
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

Existing technologies generate excessively long user fields in communication systems, resulting in low bandwidth utilization efficiency and high complexity of traditional load balancing methods.

Method used

By employing load balancing circuitry and methods, and through calculations using a minimum full binary tree and load balancing function, the number and weight of user fields are optimized to ensure that the number of user fields carried by multiple content channels is similar, thereby reducing the length of the EHT-SIG field.

Benefits of technology

It effectively reduces the length of user fields, improves bandwidth utilization efficiency, and simplifies the load balancing process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117119474B_ABST
    Figure CN117119474B_ABST
Patent Text Reader

Abstract

The present application relates to a load balancing circuit and a method for processing load balancing. A load balancing circuit includes a storage circuit for storing a first user field number corresponding to a first node in a minimum complete binary tree, wherein a first resource unit corresponding to the first node is less than or equal to a resource unit size; a user field number generation circuit for generating a third user field number according to a second user field number corresponding to a second node in the minimum complete binary tree, and generating a second weight according to a first weight corresponding to the second node, wherein at least one second resource unit corresponding to the second node is greater than the resource unit size; and a load balancing calculation circuit for generating a plurality of user field numbers corresponding to a plurality of content channels according to the first user field number, the third user field number, the second weight, a load balancing function, and the first weight.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a circuit and method for a communication system, and more particularly to a circuit and method for handling load balancing. Background Technology

[0002] In communication systems, the transmitting end can use resource units (RUs) and multiple resource units (MRUs) to generate user fields for configuring user resources. However, traditional methods for generating user fields are not only highly complex, but the excessively long user fields they generate also reduce bandwidth utilization efficiency. Therefore, how to improve these problems and efficiently obtain shorter user fields and generate shorter content channels is an urgent issue to be addressed. Summary of the Invention

[0003] This invention provides a circuit and method for handling load balancing to solve the above-mentioned problems.

[0004] This invention discloses a load balancing circuit, comprising: a storage circuit for storing the number of at least one first user field corresponding to at least one first node in a minimum full binary tree, wherein the number of at least one first resource unit corresponding to the at least one first node is less than or equal to a size; a user field number generation circuit coupled to the storage circuit for generating at least one third user field number based on the number of at least one second user field corresponding to at least one second node in the minimum full binary tree, and generating at least one second weight based on the at least one first weight corresponding to the at least one second node, wherein the number of at least one second resource unit corresponding to the at least one second node is greater than the size; and a load balancing calculation circuit coupled to the user field number generation circuit for generating a first plurality of user field numbers corresponding to a plurality of content channels based on the number of at least one first user field, the number of at least one third user field, the at least one second weight, a load balancing function, and the at least one first weight.

[0005] The present invention further discloses a method for handling load balancing, comprising: storing at least one first user field quantity corresponding to at least one first node in a minimum full binary tree, wherein at least one first resource unit corresponding to the at least one first node is less than or equal to a resource unit size; generating at least one third user field quantity based on at least one second user field quantity corresponding to at least one second node in the minimum full binary tree, and generating at least one second weight based on at least one first weight corresponding to the at least one second node, wherein at least one second resource unit corresponding to the at least one second node is greater than the resource unit size; and generating a first plurality of user field quantities corresponding to a plurality of content channels based on the at least one first user field quantity, the at least one third user field quantity, the at least one second weight, a load balancing function, and the at least one first weight. Attached Figure Description

[0006] Figure 1 This is a schematic diagram of the communication system according to Embodiment 1 of the present invention.

[0007] Figure 2 This is a schematic diagram of the EHT-SIG field in Embodiment 1 of the present invention.

[0008] Figure 3 This is a schematic diagram of a content channel generation device according to Embodiment 1 of the present invention.

[0009] Figure 4 This is a schematic diagram of a load balancing circuit according to Embodiment 1 of the present invention.

[0010] Figure 5 This is a schematic diagram of the load balancing function of Embodiment 1 of the present invention used for resource units in an 80MHz bandwidth.

[0011] Figure 6 This is a schematic diagram of the load balancing function of the present invention used for resource units in a 320MHz bandwidth according to Embodiment 1 of the present invention.

[0012] Figure 7 This is a flowchart of a first embodiment of the present invention. Detailed Implementation

[0013] Figure 1This is a schematic diagram of a communication system 10 according to an embodiment of the present invention. The communication system 10 may simply consist of a transmitting end TX and a receiving end RX. The transmitting end TX may be an access point (AP) in a local area wireless network. Furthermore, the transmitting end TX and / or the receiving end RX may be implemented through devices such as mobile phones or laptops, but are not limited thereto. In one embodiment, the transmitting end TX and the receiving end RX may support the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard (e.g., IEEE 802.11AX, 802.11be, or later versions). The IEEE 802.11 standard may support Orthogonal Frequency Division Multiple Access (OFDMA) and / or Multi-User Multiple-Input Multiple-Output (MU-MIMO) technology, and may define an EHT-SIG field for extremely high throughput multi-user physical protocol data units (EHT-MUPPDUs).

[0014] Figure 2 This is a schematic diagram of the EHT-SIG field 20 in Embodiment 1 of the present invention, which can be used as... Figure 1 The EHT-SIG field 20 may contain at least one content channel, which may include at least one first content channel and at least one second content channel. For example... Figure 2As shown, each content channel 200 may include a common field 210, which may include a resource unit assignment subfield 2100 to inform all scheduling sites of the current resource unit assignment of all data bandwidth. In one embodiment, each content channel 200 may include a user-specific field 220, which may include multiple user fields 2200 to carry transmission information for a specific scheduling site (e.g., scheduling site identification (STAID) and its associated decoding information). In one embodiment, each content channel 200 may include a padding value 2202, which is used to pad the length of the user-specific field 220 to meet the format requirements of the EHT-SIG field 20.

[0015] In one embodiment, in the IEEE 802.11 standard, each resource element less than or equal to 242 tones can (e.g., must) be configured with at least one scheduling station. Therefore, for an empty resource element, the transmitter (TX) can configure an empty scheduling station identified as "2046" in the EHT-SIG field. For resource elements greater than 242 tones, the transmitter (TX) can configure multiple user fields to multiple content channels in the EHT-SIG field to ensure that the number of user fields carried by the multiple content channels (i.e., the length (e.g., size)) is the same or similar. In one embodiment, a load balancing function can be used to calculate the number of user fields carried by the multiple content channels (i.e., the length (e.g., size)) to ensure that the number of user fields carried by the multiple content channels is the same or similar. In one embodiment, an excessively long EHT-SIG field can lead to an excessively long Physical Layer Convergence Procedure (PLCP), resulting in reduced throughput.

[0016] Figure 3 This is a schematic diagram of the content channel generation device 30 according to Embodiment 1 of the present invention, which can be used to implement... Figure 1 The TX transmitter and the generator that can be used to generate Figure 2The common field 210 and user-specific field 220 are used to generate content channels 200, and subsequently, EHT-SIG field 20. The content channel generation apparatus 30 may include a resource unit configuration circuit 300, a node operation circuit 310, a load balancing circuit 320, and a user field generation circuit 330, and may also include a segmentation circuit 340, a merging circuit 350, and a common field generation circuit 360. Specifically, the segmentation circuit 340 can be used to generate multiple resource units based on various resource allocations. The resource unit configuration circuit 300, coupled to the segmentation circuit 340, can be used to generate a full binary tree based on the multiple resource units. The node operation circuit 310, coupled to the resource unit configuration circuit 300, can be used to generate a minimum full binary tree based on the full binary tree. The load balancing circuit 320, coupled to the node operation circuit 310, can be used to generate multiple user fields corresponding to multiple content channels based on the minimum full binary tree and a load balancing function. The merging circuit 350 is coupled to the load balancing circuit 320 and can be used to generate the search result of the minimum full binary tree according to the search algorithm, and to generate the merged search result according to the search result. The common field generation circuit 360 is coupled to the merging circuit 350 and can be used to generate a resource allocation indicator according to the merged search result to generate a common field. The common field generation circuit 360 may be further coupled to the node operation circuit 310 to obtain node (e.g., storage) information. In one embodiment, the node operation circuit 310 generates the minimum full binary tree according to the full binary tree in a manner that can be referred to, but is not limited to, the related application (application number: 109115384, application date: 2020 / 05 / 08, publication number: TW I739418B).

[0017] Figure 4 This is a schematic diagram of the load balancing circuit 40 according to Embodiment 1 of the present invention, which can be used to implement... Figure 1 The TX transmitter and the data that can be used to implement Figure 3 The load balancing circuit 320. The load balancing circuit 40 may include a storage circuit 400, a user field quantity generation circuit 410, and a load balancing calculation circuit 420. Specifically, the storage circuit 400 can be used to store (e.g., from...) Figure 3The node operation circuit 310 receives the number of at least one first user fields corresponding to at least one first node in the minimum full binary tree, wherein the at least one first resource unit corresponding to the at least one first node is less than or equal to a resource unit size (e.g., 242-frequency). The user field number generation circuit 410 is coupled to the storage circuit 400 and can be used to generate at least one third user field number based on the number of at least one second user fields corresponding to at least one second node in the minimum full binary tree, and can be used to generate at least one second weight based on the at least one first weight corresponding to at least one second node, wherein the at least one second resource unit corresponding to the at least one second node is greater than the resource unit size (e.g., a resource unit with a resource unit size greater than 242-frequency or a multiple RU (MRU), such as multiple resource units 484+242-frequency, multiple resource units 996+484-frequency, multiple resource units 996x2+484-frequency, multiple resource units 996x3-frequency, or multiple resource units 996x3+484-frequency, but not limited to these). The load balancing calculation circuit 420 is coupled to the user field quantity generation circuit and can be used to generate a first plurality of user field quantities corresponding to multiple content channels based on at least one first user field quantity, at least one third user field quantity, at least one second weight, a load balancing function and at least one first weight, so as to ensure that the first plurality of user field quantities carried by the multiple content channels are the same or similar.

[0018] In one embodiment, the storage circuit 400 can be used to store information about a minimum full binary tree (e.g., whether a node is an empty node, a configured node, or a reserved node, and link information between nodes). In one embodiment, the storage circuit 400 can be used to store the number of at least one second user fields corresponding to at least one second node of the minimum full binary tree. In one embodiment, the at least one second node may store at least one multi-resource unit information. In one embodiment, the multi-resource unit information may include a multi-resource unit flag. The multi-resource unit flag may include two bits, which may indicate whether the resource unit corresponding to the node is a non-multi-resource unit, the starting resource position of the multi-resource unit, the middle resource position of the multi-resource unit, or the ending resource position of the multi-resource unit.

[0019] In one embodiment, the user field quantity generation circuit 410 generates at least one third user field quantity based on at least one second user field quantity and at least one multiple resource unit (MLU) information. In one embodiment, when one MLU information in the at least one MLU information indicates that a resource unit among at least one second resource unit contains (e.g.) multiple resource units and the multiple resource units are at an end resource position (or an intermediate resource position), the user field quantity generation circuit 410 may update the at least one second user field quantity to at least one third user field quantity, for example, by setting the user field quantity corresponding to the resource unit to 0 to generate the at least one third user field quantity.

[0020] In one embodiment, the user field quantity generation circuit 410 can generate at least one first weight based on at least one first bandwidth corresponding to at least one second node. In one embodiment, each first bandwidth can be the i-th 80MHz sub-bandwidth among at least one 80MHz sub-bandwidth generated by dividing the bandwidth (e.g., 160MHz or 320MHz) using 80MHz sub-bandwidths, where i can be one or more integer values ​​from 1 to 4. That is, a bandwidth of 20MHz, 40MHz, or 80MHz corresponds to a first bandwidth. Each first weight can include i (e.g., 4) sets of bits, where the i-th set of bits is used to indicate whether a node corresponds to the i-th 80MHz sub-bandwidth. In one embodiment, when the i-th set of bits is "1", it indicates that the node corresponds to the i-th 80MHz sub-bandwidth, and when the i-th set of bits is "∞", it indicates that the node does not correspond to the i-th 80MHz sub-bandwidth, where "∞" can be implemented with a maximum value. For example, when at least one of the second nodes corresponds to the first 80MHz sub-bandwidth, the user field number generation circuit 410 generates a first weight for that node as [1,∞,∞,∞]. For example, when at least one of the second nodes corresponds to the second 80MHz sub-bandwidth, the user field number generation circuit 410 generates a first weight for that node as [∞,1,∞,∞]. For example, when at least one of the second nodes corresponds to both the third and fourth 80MHz sub-bandwidths, the user field number generation circuit 410 generates a first weight for that node as [∞,∞,1,1]. In other words, a single node can correspond to multiple 80MHz sub-bandwidths.

[0021] In one embodiment, the user field quantity generation circuit 410 can generate at least one second weight based on at least one first weight and at least one multi-resource unit (MRU) information. Specifically, based on the at least one MRU information, the user field quantity generation circuit 410 can determine which nodes in the at least one second node belong to the same MRU, and generate the second weight of those nodes by merging their first weights. That is, nodes belonging to the same MRU have the same weight. For example, the first weight of one of the at least two second nodes is [1,∞,∞,∞] and the multi-resource unit information stored in that node indicates that it corresponds to a multi-resource unit and that the multi-resource unit is at the starting resource position. The first weight of another of the at least two second nodes is [∞,1,∞,∞] and the multi-resource unit information stored in that node indicates that it corresponds to a multi-resource unit and that the multi-resource unit is at the ending resource position. By merging the first weight of the node [1,∞,∞,∞] and the first weight of the other node [∞,1,∞,∞], the user field quantity generation circuit 410 generates the second weights of the node and the other node [1,1,∞,∞].

[0022] In one embodiment, the load balancing calculation circuit 420 can generate a second plurality of user field numbers corresponding to a plurality of content channels, i.e., an initial plurality of user field numbers, based on (e.g., by using) at least a first plurality of user field numbers, at least a third plurality of user field numbers, at least a second weight, and a load balancing function. In one embodiment, the load balancing calculation circuit 420 can generate a first plurality of user field numbers corresponding to a plurality of content channels, i.e., an updated plurality of user field numbers, based on (e.g., by using) the second plurality of user field numbers and at least a first weight. In one embodiment, the load balancing calculation circuit 420 can generate the length of a plurality of content channels based on the maximum number of user field numbers of the first plurality of user field numbers. In one embodiment, the resource unit size can include 26-band, 52-band, 106-band, 242-band, 484-band, 996-band, 996x2-band, and 996x4-band, wherein a 26-band resource unit can be composed of two 13-band resource units. A multi-resource unit may contain a combination of multiple resource units, such as 52+26-frequency, 106+26-frequency, 242+484-frequency, 996+484-frequency, 996x2+484-frequency, 996x3-frequency, 996x3+484-frequency, and 996+484+242-frequency, but is not limited to these.

[0023] In one embodiment, the load balancing function can be implemented according to equation (Equation 1):

[0024]

[0025] in S is a resource unit pointer, representing a resource unit with a size greater than 242-frequency (e.g., 484-frequency, 996-frequency, 996x2-frequency, or 996x4-frequency) or a multi-resource unit with a size greater than 242-frequency (e.g., 484+242-frequency, 996+484-frequency, 996x2+484-frequency, 996x3-frequency, or 996x3+484-frequency); S is a set of 80MHz sub-bandwidth pointers with divisible bandwidth (e.g., for a bandwidth of 320MHz, S = {1, 2, 3, 4}). The number of user fields corresponding to the first content channel of the s-th 80MHz sub-bandwidth can be represented as: The number of user fields corresponding to the second content channel with an 80MHz sub-bandwidth of s can be represented as: This indicates the number of user fields corresponding to the c-th content channel of the s-th 80MHz sub-bandwidth for nodes configured (e.g., signaling) to resource units with a resource unit size less than or equal to 242-band (e.g., 26-band, 52-band, 106-band, or 242-band) or multiple resource units (e.g., 52+26-band or 106+26-band), where c is 1 or 2; k i This indicates the number of user fields configured (e.g., signaling) to the i-th node, which corresponds to resource units with a resource unit size greater than 242-frequency or multiple resource units; The weight value indicates whether the i-th node corresponds to the s-th 80MHz sub-bandwidth. Let be the number of user fields corresponding to the resource unit of the i-th node that are configured to the first content channel. The set formed by these user fields describes the total number of user fields configured to the first content channel for all nodes, and can be represented as: y i Let be the number of user fields corresponding to the resource unit of the i-th node that are configured to the second content channel. The set formed by these user fields describes the total number of user fields configured to the second content channel for all nodes, and can be represented as: It is a natural number.

[0026] The load balancing function (Equation 1) is an integer programming problem, belonging to the non-deterministic polynomial-time complete (NP complete) problem. Its time complexity can be reduced through transformation (e.g., simplification). The load balancing function (Equation 1) can be implemented according to equation (Equation 2):

[0027]

[0028]

[0029] Figure 5 This is a schematic diagram of the load balancing function used for resource units in an 80MHz bandwidth according to Embodiment 1 of the present invention. It illustrates a full binary tree 50 representing resource units in the 80MHz bandwidth, and a process 52 that generates the number of user fields according to the load balancing function (Equation 2). This process includes processes 520, 522, and 524, each containing an X-axis and a Y-axis. The following is based on... Figure 5 This example illustrates how the load balancing calculation circuit 420 generates the number of multiple user fields corresponding to multiple content channels based on the load balancing function (Equation 2). As shown in the full binary tree 50, the resource unit is drawn as a trapezoid, containing three levels from top to bottom: four 242-band resource units (e.g., containing 242 subcarriers), two 484-band resource units, and one 996-band resource unit. Each resource unit has a resource unit pointer (e.g., which may correspond to a frequency defined in the Third Generation Partnership Project (3GPP) standard or its successors, a frequency determined by the transmitter TX, or a frequency defined in the 802.11 standard). Figure 5 In the diagram, the full binary tree 50 is depicted as a tree structure containing multiple nodes, each corresponding one-to-one with a resource unit. Furthermore, unfilled circles represent empty nodes, grid circles represent nodes configured with scheduling stations, and dotted circles represent reserved nodes. The grid circles and dotted circles can form a minimum full binary tree, and the information of this minimum full binary tree can be stored (e.g., received) by the load balancing circuit 40. For simplicity, the resource unit pointers corresponding to the grid circles are labeled 14, 27, and 28, and the nodes with resource unit pointers of 14, 27, and 28 are referred to below as nodes 14, 27, and 28, respectively.

[0030] According to the load balancing function (Equation 2), since Figure 5 It only involves one 80MHz bandwidth, and s in the load balancing function (Equation 2) is 1 and The number of user fields in node 14 is represented as k, where k is the maximum number of user fields. 14 (i.e., i is 14), the number of user fields in node 27 is represented as k. 27 And the number of user fields in node 28 is represented as k. 28 When the resource units corresponding to nodes 27 and 28 are less than or equal to 242-frequency, since nodes 27 and 28 are leaf nodes of a minimum full binary tree, according to the load balancing function (Equation 2), the load balancing calculation circuit 420 will calculate the number of user fields k carried by node 27. 27 Assigned to (e.g., added to) the second content channel (i.e. (3), and the number of user fields k carried by node 28. 28 Assigned to (e.g., added to) the first content channel (i.e. (2). When the resource unit corresponding to node 14 is greater than 242-frequency, according to the load balancing function (Equation 2), the load balancing calculation circuit 420 will adjust the number of user fields k of node 14. 14 Further allocation (e.g., to) the first content channel and the second content channel is made to ensure that the number of user fields carried by the first content channel and the second content channel are the same or similar. Based on the above, the load balancing function (Equation 2) can be simplified to equations (Equations 3) to (Equations 5) to produce a common solution with a minimum content channel length of t. and

[0031]

[0032]

[0033]

[0034] To simplify the explanation, let k 14 Substitute 3 into (Equation 3), k 27 Substitute 3 into (Equation 5) and k 28 Substitute 2 into (Equation 4). In process 52, t is substituted with different integer values, such as 0, 2, and 4, but not limited to these. Process 520 illustrates that when t is substituted with 0, it represents... The solid line 5200, The dashed line 5202 and The dashed line 5204, where three lines do not intersect, represents that the conditional equations (Equations 3) to (Equations 5) have no common solution, indicating that a content channel length value that meets the conditions has not yet been found. Arrow 5206 points to the direction of movement of the range 5208 (i.e., the solution set) enclosed by the two dashed lines towards the solid line 5200 as t increases. Process 522 shows that when t is substituted into 2, it represents... The solid line 5200, The dashed line 5222 and The dashed line 5224, where three lines do not intersect, represents that the conditional equations (Equations 3) to (Equations 5) do not have a common solution, indicating that the content channel length value satisfying the conditional equations (Equations 3) to (Equations 5) has not yet been found. Arrow 5226 points to the direction of movement of the range 5228 (i.e., the solution set) enclosed by the two dashed lines towards the solid line 5200 as t increases. Process 524 illustrates that when t is substituted into 4, it represents... The solid line 5200, The dashed line 5242 and The dashed line 5244, where the solid line 5200 and the range 5246 enclosed by the two dashed lines (i.e., the solution set) intersect at the coordinate point (2, 1), which represents the minimum t value of 4 that can be found to satisfy the conditional equations (Equation 3) to (Equation 5), and its solution is... and It should be noted that, in addition to the integer values ​​mentioned above, t can be substituted with any other integer value to satisfy the conditional equations (Equations 3) to (Equations 5) and to obtain other common solutions, but... and When considering the number of user fields, the optimal t value is the minimum t value that satisfies the conditional equations (Equation 3) to (Equation 5).

[0035] Based on the above, when the resource units corresponding to nodes 27 and 28 are less than or equal to 242-frequency, the number of user fields carried by node 27 (i.e., k) 27 3) is assigned to the second content channel, and the number of user fields carried by node 28 (i.e., k) 28 2) The number of boxes filled with diagonal stripes in the first content channel CH11 and the second content channel CH12, as shown in Figure 2, are allocated to the first content channel CH11. When the resource unit corresponding to node 14 is greater than 242-frequency, the resource unit can carry multiple user information fields. According to the load balancing function (Equation 2), the number of user fields carried by node 14 (i.e., k) 14 In step 3), two user fields are assigned to the first content channel, and one user field is assigned to the second content channel, as shown by the number of unfilled boxes in the first content channel CH11 and the second content channel CH12. Thus, the total number of user fields carried by the first content channel is 4, and the total number of user fields carried by the second content channel is also 4. Since the length of the content channel is based on the content channel carrying more user fields, the length of the content channel is the maximum number of user fields, which is 4. It should be noted that the above nodes and the number of user fields they carry are only used to illustrate the calculation process of the load balancing function (Equation 2) and are not intended to limit the invention.

[0036] Figure 6 This is a schematic diagram of the load balancing function used for resource units in a 320MHz bandwidth according to Embodiment 1 of the present invention. It shows a first full sub-tree 600 representing the first 80MHz sub-bandwidth, a second full sub-tree 602 representing the second 80MHz sub-bandwidth, a third full sub-tree 604 representing the third 80MHz sub-bandwidth, and a fourth full sub-tree 606 representing the fourth 80MHz sub-bandwidth. Figure 6As shown, the resource unit is drawn as a trapezoid, containing 5 levels from top to bottom: 16 242-frequency resource units, 8 484-frequency resource units, 4 996-frequency resource units, 2 996x2-frequency resource units, and 1 996x4-frequency resource unit. Each resource unit has a resource unit pointer (where the nodes of the third sub-full binary tree 604 and the fourth sub-full binary tree 606 are both empty nodes, so the resource units corresponding to their nodes are not drawn in detail). Figure 6 (in Chinese). Figure 6 In the diagram, the full binary tree 60 is depicted as a tree structure, with each sub-full binary tree containing multiple nodes, each corresponding one-to-one with multiple resource units (the nodes of the third sub-full binary tree 604 and the fourth sub-full binary tree 606 are both empty nodes, therefore their nodes are not shown in detail). Figure 6 (In the middle). In addition, unfilled circles represent empty nodes, grid circles represent nodes configured with scheduling stations, and dot circles represent reserved nodes. The grid circles and dot circles can form a minimum full binary tree, and the information of the minimum full binary tree can be stored (e.g., received) by the load balancing circuit 40. For simplicity, the resource unit pointers of the resource units corresponding to the grid circles are labeled as 1, 5, 14, 27, and 28, and the nodes with resource unit pointers of 1, 5, 14, 27, and 28 are referred to as nodes 1, 5, 14, 27, and 28, respectively.

[0037] The following is based on Figure 6 This example illustrates how the load balancing calculation circuit 420 generates the first plurality of user fields corresponding to multiple content channels based on the load balancing function (Equation 2). Before the load balancing calculation circuit 420 generates the first plurality of user fields, the transmitter TX can receive resource allocations (e.g., resource allocations from the most negative frequency to the most positive frequency are multi-resource unit 996+484-frequency, resource unit 106-frequency, multi-resource unit 106+26-frequency, resource unit 106-frequency, resource unit 26-frequency, resource unit 106-frequency, and resource unit 996x2-frequency) of 18 scheduled sites (e.g., {(1, 2, 3, 4, 5), (6, 7), (8, 9, 10), (11, 12, 13, 14, 15, 16, 17, 18)}) from the upper layer (e.g., the Media Access Control (MAC) layer). It can also generate a minimum full binary tree (e.g., by using...). Figure 3 It is generated by the segmentation circuit 340, the resource unit configuration circuit 300, and the node operation circuit 310, but is not limited to these.

[0038] like Figure 6As shown, in the minimum full binary tree, resource unit 996x2-frequency corresponds to node 1, and it corresponds to the third sub-full binary tree 604 and the fourth sub-full binary tree 606. Therefore, the first weight of node 1 is [∞,∞,1,1]. The multi-resource unit 996+484-frequency can be divided into resource unit 484-frequency and resource unit 996-frequency, which correspond to node 14 and node 5 respectively. Node 14 is at the starting resource position and node 5 is at the ending resource position. 14 corresponds to the first full subtree 600, so the first weight of node 14 is [1,∞,∞,∞], and node 5 corresponds to the second full subtree 602, so the first weight of node 5 is [∞,1,∞,∞]; resource unit 106-frequency and multiple resource units 106+26-frequency correspond to node 28, and it corresponds to the first full subtree 600; resource unit 106-26-106-frequency corresponds to node 27, and it corresponds to the first full subtree 600.

[0039] To simplify the explanation, we assume that node 1 has 8 user fields (k1 is 8) and node 14 has 5 user fields (k1 is 8). 14 The number of user fields for node 5 is 5 (k5 is 5) (node ​​5 and node 14 belong to the same multi-resource unit (i.e., belong to the same scheduling site) and have the same user fields), and the number of user fields for node 27 is 3 (k 27 The number of user fields for node 28 is 2(k) and 3). 28 Let's take 2) as an example to illustrate.

[0040] When the resource units corresponding to nodes 27 and 28 are less than or equal to 242-frequency, storage circuit 400 stores k. 27 and k 28 When nodes 27 and 28 are leaf nodes of a full binary tree 600, the load balancing calculation circuit 420 will calculate k. 28 Assigned to (e.g., added to) the first content channel, and k 27 The number of content channels allocated (e.g., added to) the second content channel, as shown in the boxes filled with diagonal stripes in the first content channel CH11 and the second content channel CH12. When the resource units corresponding to nodes 14, 5, and 1 are greater than 242-frequency, since nodes 14 and 5 belong to the same multi-resource unit and node 5 is at the end of a resource position, the user field quantity generation circuit 410 sets the user field quantity of node 5 (k5 is 5) to 0, i.e., updates k5 to 0. Furthermore, based on (e.g., by merging) the first weight of node 14 as [1,∞,∞,∞] and the first weight of node 5 as [∞,1,∞,∞], the user field quantity generation circuit 410 generates a second weight of [1,1,∞,∞] for nodes 14 and 5. Based on k...27 For 3 and k 28 The load balancing calculation circuit 420 will calculate k as 2 (i.e., the first content channel carries 2 user fields and the second content channel carries 3 user fields). 14 The values ​​of 5, k5, and k1 are further allocated (e.g., added to) the first content channel and the second content channel to ensure that the number of user fields carried by the first content channel and the second content channel are the same or similar.

[0041] According to the load balancing function (Equation 2), five user fields are further allocated to the first content channel and the second content channel in the first 80MHz sub-bandwidth and the second 80MHz sub-bandwidth, so that the maximum content channel length in the first 80MHz sub-bandwidth is 3 and the lengths of the first content channel and the second content channel in the second 80MHz sub-bandwidth are less than or equal to 3 (for example, when the first content channel CH11 corresponding to the first full binary tree 600 of node 14 carries 1 user field, the second content channel CH12 corresponding to the first full binary tree 600 of node 14 carries 0 user fields, the first content channel CH21 corresponding to the second full binary tree 602 of node 14 carries 3 user fields, and the second content channel CH22 corresponding to the second full binary tree 602 of node 14 carries 1 user field). Furthermore, eight user fields are allocated... The load balancing calculation circuit 420 can generate the optimal t-value and common solution of the load balancing function (Equation 2) when the number of user fields is connected to the first and second content channels in the third and fourth 80MHz sub-bandwidths, such that the maximum content channel length in the third 80MHz sub-bandwidth is 3 and the lengths of the first and second content channels in the fourth 80MHz sub-bandwidth are less than 3 (for example, when the number of user fields carried by the first content channel CH31 corresponding to the third full binary tree 604 of node 1 is 3, the number of user fields carried by the second content channel CH32 corresponding to the third full binary tree 604 of node 1 is 3, the number of user fields carried by the first content channel CH41 corresponding to the fourth full binary tree 606 of node 1 is 1, and the number of user fields carried by the second content channel CH42 corresponding to the fourth full binary tree 606 of node 1 is 1). Because the length of the content channel is based on the content channel carrying more user fields in the 80MHz sub-bandwidth, the length of the content channel can be obtained as the maximum number of user fields, i.e., 3. It should be noted that the above-mentioned nodes and the number of user fields they carry are only used to illustrate the calculation process of the load balancing function (Equation 2), and are not intended to limit the present invention.

[0042] Furthermore, the number of user fields carried by the first content channels CH11 to CH41 corresponding to node 14 can be considered as the initial number of user fields of node 14 [1,3,0,0]. Since node 14 and node 5 belong to the same multi-resource unit, the initial number of user fields of node 5 can be considered as the initial number of user fields of node 14 [1,3,0,0]. Based on the initial number of user fields of node 14 [1,3,0,0] and the first weight of node 14 [1,∞,∞,∞], the load balancing calculation circuit 420 can generate an updated number of multiple user fields of node 14 [1,0,0,0]. Based on the initial number of user fields of node 5 [1,3,0,0] and the first weight of node 5 [∞,1,∞,∞], the load balancing calculation circuit 420 can generate an updated number of multiple user fields of node 5 [0,3,0,0]. The method for generating the updated number of multiple user fields carried by the first content channel corresponding to node 1 is similar to that of node 5 and node 14, and will not be described in detail here. The method for generating the number of updated user fields carried by the second content channel corresponding to nodes 14, 5 and 1 is as described above and will not be repeated here.

[0043] The operation of the aforementioned load balancing circuit 40 in handling load balancing can be summarized as follows: Figure 7 Process 70. Process 70 includes the following steps:

[0044] Step 700: Begin.

[0045] Step 702: Store the number of at least one first user fields corresponding to at least one first node in a minimum full binary tree, wherein the at least one first resource unit corresponding to the at least one first node is less than or equal to a resource unit size.

[0046] Step 704: Based on the number of at least one second user field corresponding to at least one second node in the minimum full binary tree, generate at least one third user field number, and based on the at least one first weight corresponding to the at least one second node, generate at least one second weight, wherein the at least one second resource unit corresponding to the at least one second node is larger than the resource unit size.

[0047] Step 706: Generate a first plurality of user field quantities corresponding to a plurality of content channels based on the at least one first user field quantity, the at least one third user field quantity, the at least one second weight, a load balancing function and the at least one first weight.

[0048] Step 708: End.

[0049] Process 70 is used to illustrate the method for generating the number of the first multiple user fields corresponding to multiple content channels in the load balancing circuit 40. For detailed explanations and variations, please refer to the foregoing, and will not be repeated here.

[0050] The terms "generate" and "obtain" used above can be replaced by "calculate" or "operate on". It should be noted that the load balancing circuit 40 (and its circuitry) can be implemented in many ways. For example, the circuitry described above can be integrated into one or more circuits. Furthermore, the load balancing circuit 40 can be implemented using hardware (e.g., circuitry), software, firmware (a combination of hardware devices and computer instructions and data, where the computer instructions and data are read-only software on the hardware device), electronic systems, or combinations of the circuitry described above, but is not limited to these methods.

[0051] In summary, the present invention provides a circuit and method for handling load balancing. By using a load balancing function, the transmitter (TX) can efficiently generate shorter user fields and shorter content channels, thereby generating shorter EHT-SIG fields to improve bandwidth utilization efficiency.

[0052] The above description is only a preferred embodiment of the present invention. All equivalent changes and modifications made in accordance with the claims of the present invention shall be covered by the present invention.

[0053] [Symbol Explanation]

[0054] 10: Communication System

[0055] 20: EHT-SIG field

[0056] 200: Content Channel

[0057] 210: Common Fields

[0058] 2100: Resource Unit Configuration Subfield

[0059] 220: User-specific fields

[0060] 2200: User Field

[0061] 2202: Fill value

[0062] 30: Content channel generation device

[0063] 300: Resource Unit Configuration Circuit

[0064] 310: Node Operation Circuit

[0065] 330: Load balancing circuit

[0066] 330: User Field Generation Circuit

[0067] 340: Segmentation Circuit

[0068] 350: Merging Circuit

[0069] 360: Common Field Generation Circuit

[0070] 40: Load balancing circuit

[0071] 400: Storage Circuit

[0072] 410: Circuit for generating the number of user fields

[0073] 420: Load balancing calculation circuit

[0074] 50, 60: Full binary tree

[0075] 600, 602, 604, 606: Fully Binary Tree

[0076] 52, 520, 522, 524: Process

[0077] 5200, 5202, 5204, 5222, 5224, 5242, 5244: Dashed / Solid Lines

[0078] 5206, 5226: Arrows

[0079] 5208, 5228, 5246: Range

[0080] 70: Process

[0081] 700, 702, 704, 706, 708: Steps

[0082] TX: Transmitter

[0083] RX: Receiver

[0084] CH11, CH12, CH21, CH22, CH31, CH32, CH41, CH42: Content channels.

Claims

1. A load balancing circuit, comprising: A storage circuit is used to store the number of at least one first user fields corresponding to at least one first node in a minimum full binary tree, wherein, The at least one first resource unit corresponding to the at least one first node is less than or equal to the size of a resource unit; A user field quantity generation circuit, coupled to the storage circuit, is used to generate at least one third user field quantity based on at least one second user field quantity corresponding to at least one second node in the minimum full binary tree, and to generate at least one second weight based on at least one first weight corresponding to the at least one second node, wherein the at least one second resource unit corresponding to the at least one second node is larger than the resource unit size; and A load balancing calculation circuit, coupled to the user field quantity generation circuit, is used to generate a first plurality of user field quantities corresponding to a plurality of content channels based on the at least one first user field quantity, the at least one third user field quantity, the at least one second weight, a load balancing function and the at least one first weight.

2. The load balancing circuit according to claim 1, wherein, The at least one second node stores information about at least one resource unit.

3. The load balancing circuit according to claim 2, wherein, The user field quantity generation circuit generates the at least one third user field quantity based on the at least one second user field quantity and the at least one multi-resource unit information.

4. The load balancing circuit according to claim 3, wherein, When one of the multiple resource unit information in the at least one multiple resource unit information indicates that one of the at least one second resource unit contains a multiple resource unit and that the multiple resource unit is in an end resource position, the user field quantity generation circuit updates the at least one second user field quantity to generate the at least one third user field quantity.

5. The load balancing circuit according to claim 2, wherein, The user field quantity generation circuit generates the at least one second weight based on the at least one first weight and the at least one multi-resource unit information.

6. The load balancing circuit according to claim 1, wherein, The user field quantity generation circuit generates the at least one first weight based on the at least one first bandwidth corresponding to the at least one second node.

7. The load balancing circuit according to claim 1, wherein, Based on the number of at least one first user field, the number of at least one third user field, the at least one second weight, and the load balancing function, the load balancing calculation circuit generates a second plurality of user field numbers corresponding to the plurality of content channels.

8. The load balancing circuit according to claim 7, wherein, Based on the second plurality of user fields and the at least one first weight, the load balancing calculation circuit generates the first plurality of user fields corresponding to the plurality of content channels.

9. The load balancing circuit according to claim 1, wherein, Based on a maximum number of user fields of the first plurality of user fields, the load balancing calculation circuit generates a length of the plurality of content channels.

10. A method for handling load balancing, comprising: Store the number of at least one first user fields corresponding to at least one first node in a minimum full binary tree, where, The at least one first resource unit corresponding to the at least one first node is less than or equal to the size of a resource unit; Based on the number of at least one second user field corresponding to at least one second node in the minimum full binary tree, generate at least one third user field number, and based on at least one first weight corresponding to at least one second node, generate at least one second weight, wherein the at least one second resource unit corresponding to at least one second node is larger than the resource unit size; as well as Based on the number of at least one first user field, the number of at least one third user field, the at least one second weight, a load balancing function, and the at least one first weight, a first plurality of user field numbers corresponding to a plurality of content channels are generated.