Downlink spectrum resource allocation method and device, electronic equipment and storage medium

By sampling and queuing downlink spectrum resources, the problem of inaccurate base station scheduling caused by insufficient UE feedback was solved, RBG-level spectrum resource allocation was achieved, and the accuracy and reliability of downlink transmission were improved.

CN121604138APending Publication Date: 2026-03-03PURPLE MOUNTAIN LAB
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511722014.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-21
Publication Date
2026-03-03

AI Technical Summary

Technical Problem

In existing technologies, the subband-level offset reported by the UE is insufficient to reflect the actual channel quality differences, leading to inaccurate downlink frequency selection scheduling by the base station, and UE measurements consume computing resources and uplink transmission resources.

Method used

By sampling multiple resource block groups in the downlink broadband portion based on a preset sampling period, the transmission error rate is determined, and RBGs are allocated to UEs to be scheduled based on this. The accurate allocation of RBGs is achieved using dual-end queues and priority queues.

Benefits of technology

It achieves RBG-level spectrum resource allocation accuracy, improves the accuracy and transmission reliability of downlink frequency selection scheduling, and reduces UE computation and uplink resource consumption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121604138A_ABST
    Figure CN121604138A_ABST
Patent Text Reader

Abstract

The invention provides a downlink spectrum resource allocation method and device, electronic equipment and a storage medium, and relates to the technical field of communication, and the method comprises the steps: carrying out the sampling of a plurality of resource block groups RBGs contained in an allocated downlink broadband part based on a preset sampling period, and obtaining a sampling result; the sampling result represents each downlink scheduling time slot in the sampling period, and allocating an available RBG for at least one UE to be scheduled in a polling manner; aiming at each available RBG, determining a transmission error rate of each UE to be scheduled for performing PDSCH (Physical Downlink Shared Channel) transmission by using the available RBG; according to the embodiment of the invention, at least one RBG is allocated from a plurality of RBGs for each to-be-scheduled UE based on the transmission error rate of each available RBG and the number of resource blocks RBs required by each to-be-scheduled UE, the allocation of downlink spectrum resources is realized, and the minimum granularity of the spectrum resources can reach the RBG level, so that the accuracy of downlink frequency selection scheduling of a base station is high, and the reliability of downlink transmission is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of communication technology, and in particular to a method, apparatus, electronic device, and storage medium for allocating downlink spectrum resources. Background Technology

[0002] Frequency selective scheduling refers to the process by which the base station's Medium Access Control (MAC) scheduler selects one or more segments of spectrum resources with higher channel quality for the user equipment (UE) when allocating spectrum resources, thereby achieving higher spectrum efficiency.

[0003] Traditional downlink frequency selective scheduling schemes first require the UE to perform sub-band level channel quality measurements on the received frequency band. Then, the measurement results (characterized by a wideband-level Channel Quality Indicator (CQI) index plus sub-band level offset) are fed back to the base station via uplink control information (UCI). This allows the base station's MAC scheduler to perform downlink frequency selective scheduling based on the channel quality differences of each sub-band reported by the UE.

[0004] However, due to the transmission bit overhead of UCI, the subband granularity described by the "subband-level offset" reported by the UE is not fine enough and is insufficient to fully reflect the most realistic channel quality differences (or differences relative to broadband CQI) of each subband. This will directly lead to inaccurate downlink frequency selection scheduling of the base station. Summary of the Invention

[0005] This invention provides a downlink spectrum resource allocation method, apparatus, electronic device, and storage medium to solve the problem of downlink frequency selection scheduling inaccuracy.

[0006] This invention provides a downlink spectrum resource allocation method, comprising: Based on a preset sampling period, multiple Resource Block Groups (RBGs) included in the allocated downlink broadband portion are sampled to obtain sampling results. The sampling results indicate that for each downlink scheduling time slot within the sampling period, at least one User Equipment (UE) to be scheduled is polled and allocated an available RBG. The available RBG is used by the UE to be scheduled for decoding after downlink data transmission on the Physical Downlink Shared Channel (PDSCH). For each available RBG, determine the transmission error rate of each scheduled UE using the available RBG for PDSCH transmission; Based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each scheduled UE, at least one RBG is allocated from the plurality of RBGs for each scheduled UE.

[0007] According to a downlink spectrum resource allocation method provided by the present invention, the step of sampling multiple resource block groups (RBGs) included in the allocated downlink bandwidth portion based on a preset sampling period to obtain sampling results includes: Insert the plurality of RBGs sequentially into the double-ended queue; For each UE to be scheduled within the current downlink scheduling time slot of the preset sampling period: a target RBG is taken from the head of the double-ended queue; it is determined whether the target RBG is available; if the target RBG is unavailable, the target RBG is inserted into the first stack, and a target RBG is taken from the head of the double-ended queue in turn, and the step of determining whether the target RBG is available is repeated until the taken target RBG is available; the available target RBG is inserted into the target queue, and the available target RBG is determined as the available RBG allocated to the UE to be scheduled.

[0008] According to a downlink spectrum resource allocation method provided by the present invention, determining the transmission error rate of each scheduled UE using the available RBG for PDSCH transmission includes: Receive feedback results from each scheduled UE that uses the available RBG to perform the PDSCH transmission; the feedback results indicate whether the PDSCH transmission was successful or failed. Based on the feedback results, the transmission error rate of the available RBG is determined.

[0009] According to a downlink spectrum resource allocation method provided by the present invention, the method further includes: Based on the transmission error rate of each of the available RBGs, the transmission error rate of each RBG is marked.

[0010] According to a downlink spectrum resource allocation method provided by the present invention, the method of allocating at least one RBG from the plurality of RBGs for each scheduled UE based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each scheduled UE includes: The plurality of RBGs are placed into a priority queue and sorted in ascending order according to the transmission error rate of each of the marked plurality of RBGs; Based on the priority queue and the number of RBs required by each scheduled UE, at least one RBG is allocated from the plurality of RBGs for each scheduled UE.

[0011] According to a downlink spectrum resource allocation method provided by the present invention, the step of allocating at least one RBG from a plurality of RBGs for each scheduled UE based on the priority queue and the number of RBs required by each scheduled UE includes: For each UE to be scheduled, the first RBG at the top of the priority queue is retrieved from the priority queue; Determine whether the first RBG is available; If the first RBG is unavailable, a first RBG is sequentially taken from the top of the priority queue, and the step of determining whether the first RBG is available is executed until the taken first RBG is available. Based on the available first RBG and the number of RBs required by the UE to be scheduled, at least one RBG is allocated to the UE to be scheduled.

[0012] According to a downlink spectrum resource allocation method provided by the present invention, the step of allocating at least one RBG to the UE to be scheduled based on the available first RBG and the number of RBs required by the UE to be scheduled includes: Determine whether the number of RBs included in the first available RBG reaches the number of RBs required by the UE to be scheduled; If the number of RBs included in the first RBG that is available does not reach the number of RBs required by the UE to be scheduled, the second RBG at the top of the current priority queue is taken out; If the transmission error rate of the second RBG is less than a preset error rate threshold and the second RBG is available, determine whether the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled. If the sum of the number of RBs included in all available RBGs that have been retrieved does not reach the number of RBs required by the UE to be scheduled, the step of retrieving the second RBG at the top of the current priority queue is repeated until the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled, and all available RBGs that have been retrieved are determined as the RBGs to be allocated to the UE to be scheduled.

[0013] The present invention also provides a downlink spectrum resource allocation device, comprising: The sampling module is used to sample multiple resource block groups (RBGs) contained in the allocated downlink bandwidth portion based on a preset sampling period to obtain sampling results. The sampling results indicate that for each downlink scheduling time slot within the sampling period, at least one user equipment (UE) to be scheduled is allocated an available RBG in a polling manner. The available RBG is used by the UE to be scheduled for decoding after downlink data transmission on the physical downlink shared channel (PDSCH). The determining module is used to determine, for each available RBG, the transmission error rate of each scheduled UE using the available RBG for PDSCH transmission; The allocation module is configured to allocate at least one RBG from the plurality of RBGs for each of the available RBGs based on the transmission error rate of each of the available RBGs and the number of resource blocks (RBs) required by each of the scheduled UEs.

[0014] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the downlink spectrum resource allocation method as described above.

[0015] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the downlink spectrum resource allocation method as described above.

[0016] The present invention also provides a computer program product, including a computer program that, when executed by a processor, implements the downlink spectrum resource allocation method as described above.

[0017] The downlink spectrum resource allocation method, apparatus, electronic device, and storage medium provided by the present invention sample multiple resource block groups (RBGs) included in the allocated downlink broadband portion based on a preset sampling period to obtain sampling results. The sampling results indicate that in each downlink scheduling time slot within the sampling period, at least one user equipment (UE) to be scheduled is allocated an available RBG through polling. The available RBG is used by the UE to perform downlink data transmission on the Physical Downlink Shared Channel (PDSCH) for decoding. For each available RBG, the transmission error rate of each UE to be scheduled using the available RBG for PDSCH transmission is determined. Based on the transmission error rate of each available RBG and the number of RBs required by each UE to be scheduled, at least one RBG is allocated to each UE from the multiple RBGs. By sampling multiple RBGs, an available RBG is allocated to each UE to be scheduled in a round-robin fashion. Then, based on the transmission error rate of each available RBG and the number of RBs required by each UE to be scheduled, an RBG that meets the UE's required number of RBs and has relatively high transmission quality (i.e., low transmission error rate) is allocated to each UE to be scheduled, thereby realizing the allocation of downlink spectrum resources. The minimum granularity of spectrum resources can reach the RBG level, resulting in high accuracy of downlink frequency selection scheduling of the base station and improving the reliability of downlink transmission. Attached Figure Description

[0018] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0019] Figure 1 This is one of the flowcharts illustrating the downlink spectrum resource allocation method provided by the present invention.

[0020] Figure 2 This is a schematic diagram of the RBG sampling process provided by the present invention.

[0021] Figure 3 This is a schematic diagram of the process for determining the transmission error rate of each available RBG provided by the present invention.

[0022] Figure 4 This is a schematic diagram of the RBG allocation process during the operation of the transmission timer provided by the present invention.

[0023] Figure 5 This is a schematic diagram of clearing the priority queue provided by the present invention.

[0024] Figure 6 This is the second flowchart of the downlink spectrum resource allocation method provided by the present invention.

[0025] Figure 7 This is a schematic diagram of the downlink spectrum resource allocation device provided by the present invention.

[0026] Figure 8 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation

[0027] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.

[0028] Traditional downlink frequency selective scheduling schemes first require the UE to perform sub-band level channel quality measurements on the received frequency band, and then feed the measurement results (characterized by wideband-level CQI index + sub-band-level offset) back to the base station via UCI, so that the base station's MAC scheduler can perform downlink frequency selective scheduling based on the channel quality differences of each sub-band reported by the UE.

[0029] Traditional downlink frequency-selective scheduling schemes also have problems: the UE needs to measure the downlink transmission channel quality in real time, which will occupy a certain amount of the UE's computing resources, thus hindering the energy saving of the UE (especially low-cost UEs); the reporting of measurement results requires a certain proportion of uplink transmission resources, which leads to a decrease in uplink throughput.

[0030] The following is combined Figures 1-6 The downlink spectrum resource allocation method of the present invention is described.

[0031] Figure 1 This is one of the flowcharts illustrating the downlink spectrum resource allocation method provided by the present invention, such as... Figure 1 As shown, the method includes steps 101-103.

[0032] Step 101: Based on a preset sampling period, sample the multiple Resource Block Groups (RBGs) included in the allocated downlink broadband portion to obtain sampling results; the sampling results indicate that in each downlink scheduling time slot within the sampling period, at least one scheduled User Equipment (UE) is polled and allocated an available RBG, and the available RBG is used for decoding of downlink data transmission performed by the scheduled UE on the Physical Downlink Shared Channel (PDSCH).

[0033] It should be noted that the downlink spectrum resource allocation method provided by this invention can be applied to scenarios involving downlink spectrum resource allocation for UEs. The executing entity of this method can be a downlink spectrum resource allocation device, such as an electronic device, a base station's MAC scheduler, or a control module within the downlink spectrum resource allocation device used to execute the downlink spectrum resource allocation method. Downlink spectrum resources refer to the RBG resources allocated to the UE to be scheduled. The RBG resources are used for decoding after the UE performs downlink data transmission on the PDSCH.

[0034] Specifically, a sampling period is preset, and the duration of the sampling period is represented by a sampling timer. The downlink bandwidth part (BWP) contains multiple RBGs; for example, a 100M BWP contains 17 RBGs.

[0035] In each downlink scheduling slot within a preset sampling period, the function Sampling() is called to sample multiple RBGs corresponding to the allocated downlink bandwidth portion, and the sampling results can be obtained. The sampling results indicate that in each downlink scheduling slot within the sampling period, at least one UE to be scheduled is polled and allocated an available RBG. The available RBG is used for decoding of the downlink data transmission performed by the UE to be scheduled on the PDSCH.

[0036] It should be noted that this application defines the following structure and parameters: Struct PDSCHRBG{ int RbgIdx,PdsAckCnt,PdsNackCnt,PdsBler,RbNum,bool CanBeUsed }RBG[RbgNum.

[0037] Wherein, RbgIdx represents the RBG index, PdsAckCnt represents the cumulative number of positive feedbacks (i.e., the number of correct transmissions) for a certain RBG within the sampling period, PdsNackCnt represents the cumulative number of negative feedbacks (i.e., the number of transmission errors) for a certain RBG within the sampling period, and the number of feedback values ​​for discontinuous transmissions (DTX) should not be included in this variable; PdsBler represents the transmission error rate of a certain RBG within the sampling period, RbNum represents the number of RBs contained in a certain RBG, CanBeUsed represents whether a certain RBG is available in the current downlink time slot; RBG[RbgNum] represents an array of structures “PDSCH RBG”, used to store all RBGs under the currently configured BWP bandwidth, and RbgNum represents the number of RBGs under the currently configured BWP bandwidth.

[0038] This application employs a strategy of alternating RBG sampling and transmission for the selection and allocation of downlink PDSCH RBGs. During the RBG sampling period, only one available RBG is allocated to each scheduled UE in each downlink scheduling slot. All UEs use the same fixed modulation and coding scheme (MCS) for downlink PDSCH transmission to facilitate the use of a uniform metric to measure the relative channel transmission quality of the RBG. During the transmission period, the frequency-selective scheduling strategy can select a group of RBGs with a transmission error rate (Block Error Rate (BLER)) lower than a preset error rate threshold for PDSCH transmission; each group of RBGs includes at least one RBG.

[0039] When sampling begins, if the transmission timer is running, it should be stopped immediately, the sampling timer should be started, and the reset function Reset() should be called to reset all statistical elements in the global array RBG[] to zero, while clearing the priority queue. When sampling ends and transmission begins, if the sampling timer is running, it should be stopped immediately, the transmission timer should be started, and all elements in the global array RBG[] should be inserted into the priority queue in ascending order of transmission error rate. During this period, if it is found that the sum of the ACK and NACK feedback results of any RBG has not reached the threshold of the number of transmissions required to calculate the transmission BLER, the error message "RBG sampling has not been completed" should be printed, the transmission timer should be stopped, and the loop should be exited to stop the insertion process. The total downlink transmission BLER of the cell level should be cleared to zero and a new round of BLER statistics should be started. If the total downlink transmission BLER of the cell level is higher than the assigned threshold during the sampling process, it indicates that the external interference has suddenly increased, and the transmission timer should be stopped immediately and a new round of sampling should be started.

[0040] Step 102: For each available RBG, determine the transmission error rate of each scheduled UE using the available RBG for PDSCH transmission.

[0041] Specifically, for each available RBG, it is assigned to a scheduled UE to enable downlink data transmission. After receiving the downlink data, the scheduled UE decodes it and sends feedback results to the base station. These feedback results include correct transmission (e.g., acknowledgment (ACK)) and failed transmission (e.g., negative acknowledgment (NACK)). Based on the feedback results from each scheduled UE, the base station counts the number of correct and failed transmissions using the available RBG for PDSCH transmission, and determines the transmission error rate (i.e., Block Error Rate (BLER)) for PDSCH transmission using that RBG.

[0042] Step 103: Based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each scheduled UE, allocate at least one RBG from the plurality of RBGs for each scheduled UE.

[0043] Specifically, based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each scheduled UE, at least one RBG can be allocated from multiple RBGs for each scheduled UE.

[0044] It should be noted that the transmission period should start immediately after the sampling period ends. The duration of the transmission period is represented by the transmission timer. If the transmission timer is running, the function RbgSelectionForScheduling() should be called to perform RBG selection and allocation. During the transmission period, the frequency-selective scheduling strategy can select a group of RBGs with a transmission error rate lower than a preset threshold for PDSCH transmission.

[0045] The downlink spectrum resource allocation method provided by this invention samples multiple Resource Blocks (RBGs) included in the allocated downlink broadband portion based on a preset sampling period to obtain sampling results. The sampling results indicate that for each downlink scheduling time slot within the sampling period, at least one UE is allocated an available RBG through polling. The available RBG is used for decoding of downlink data transmission performed by the UE on the Physical Downlink Shared Channel (PDSCH). For each available RBG, the transmission error rate of each UE using the available RBG for PDSCH transmission is determined. Based on the transmission error rate of each available RBG and the number of Resource Blocks (RBs) required by each UE, at least one RBG is allocated to each UE from the multiple RBGs. By sampling multiple RBGs, an available RBG is allocated to each UE to be scheduled in a round-robin fashion. Then, based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each UE to be scheduled, an RBG that meets the UE's required number of RBs and has relatively high transmission quality (i.e., low transmission error rate) is allocated to each UE to be scheduled, thereby realizing the allocation of downlink spectrum resources. The minimum granularity of spectrum resources can reach the RBG level, resulting in high accuracy of downlink frequency selection scheduling by the base station and improving the reliability of downlink transmission.

[0046] Optionally, the specific implementation of step 101 above includes: Step 1) Insert the multiple RBGs into the double-ended queue in sequence.

[0047] Specifically, define the data structure deque. <int>dq represents an integer double-ended queue, which is used for polling sampling of RBGs with different sampling periods. The main reasons for using a double-ended queue to store all RBG indices are as follows: i) The "first-in, first-out" operation of the queue can easily realize the polling sampling and measurement of each RBG, which helps to ensure the "fairness" of sampling; ii) If an RBG popped from the head of the queue is temporarily unavailable in the current downlink time slot, it can only be temporarily stored in a stack; then, after all the resource allocation tasks of the current downlink time slot are completed, the "last-in, first-out" operation of the stack is used to sequentially insert all the unused RBGs temporarily stored in the stack back into the head of the double-ended queue, so that they can be selected first in the next scheduling time slot, thereby ensuring the "fairness" of polling sampling as much as possible.

[0048] When the deque is found to be empty, multiple RBGs are inserted into the deque in sequence. For example, RBG0, RBG1, RBG2, and RBG3 are inserted into the deque in sequence, with RBG0 at the head and RBG3 at the tail. When the deque is found to be not empty, it means that RBGs have already been inserted into the deque.

[0049] Step 2) For each UE to be scheduled in the current downlink scheduling time slot within the preset sampling period: take a target RBG from the head of the double-ended queue; determine whether the target RBG is available; if the target RBG is unavailable, insert the target RBG into the first stack, take a target RBG from the head of the double-ended queue in turn, and repeat this step until the taken target RBG is available; insert the available target RBG into the target queue, and determine the available target RBG as the available RBG allocated to the UE to be scheduled.

[0050] Specifically, define the data structure Stack. <int>`st_UnavailRbg` is used to temporarily store RBGs that are unavailable in the current downlink scheduling time slot during RBG polling sampling. For example, RBGs that conflict with System Information Block (SIB) / Synchronization Signal Block (SSB) transmission resources. These RBGs should be removed from this stack sequentially after all resource allocation tasks for the current downlink scheduling time slot are completed, and then inserted into the head of the double-ended queue.

[0051] Define the data structure queue <int>`qu_UsedRbgInSpl` is used to temporarily store the RBGs (i.e., usable RBGs) that have been allocated in the current downlink scheduling time slot during RBG polling sampling. After all resource allocation tasks for the current downlink scheduling time slot are completed, these RBGs should be taken out of this queue in sequence and then inserted into the tail of the double-ended queue.

[0052] The first stack is st_UnavailRbg, and the target queue is qu_UsedRbgInSpl. It should be noted that there are multiple UEs waiting to be scheduled in the current downlink scheduling slot for RBG allocation. A list of UEs waiting to be scheduled is used to store all UEs waiting to be scheduled in the current downlink scheduling slot for RBG allocation.

[0053] For each UE to be scheduled: a target RBG is taken from the head of the double-ended queue and then popped from the double-ended queue. This target RBG is the RBG at the head of the current double-ended queue, for example, RBG3. It is determined whether the target RBG is available, that is, whether the RBs included in the target RBG overlap with all or part of the RBs of the Synchronization Signal Block (SSB) / System Information Block (SIB) that may exist in the current downlink time slot. If there is overlap, the target RBG is determined to be unavailable; otherwise, the target RBG is available.

[0054] If the target RBG is available, it is inserted into the target queue, and the available target RBG is identified as the available RBG to be allocated to the UE to be scheduled. If the target RBG is unavailable, it is inserted into the first stack, and then a target RBG is taken from the head of the double-ended queue in sequence. The above steps of taking a target RBG from the head of the double-ended queue and then determining whether the taken target RBG is available are repeated until the taken target RBG is available. The available target RBG is then inserted into the target queue, and the available target RBG is identified as the available RBG to be allocated to the UE to be scheduled.

[0055] The index of available target RBGs is recorded in the Hybrid Automatic Repeat Request (HARQ) process of the UE to be scheduled. This facilitates the identification of which UE and which HARQ process is using the RBG in the HARQ process of the UE to be scheduled. The available RBGs allocated to the UE to be scheduled are represented by SampledRbgIdx, which represents the index of the available RBGs allocated by the base station's MAC scheduler to a certain UE to be scheduled in the current downlink scheduling time slot during the sampling period.

[0056] Optionally, if none of the retrieved target RBGs are available and the double-ended queue is empty, sampling is stopped, that is, the step of repeatedly retrieving the target RBG at the head of the double-ended queue is stopped. This indicates that the UE to be scheduled has no available RBGs to allocate in the current downlink scheduling time slot and needs to wait for the next downlink scheduling time slot. In the next downlink scheduling time slot, an available RBG will be allocated to the UE to be scheduled.

[0057] It should be noted that after all resource allocation tasks for the current scheduled time slot have been completed, the RBG indices stored in the stack st_UnavailRbg should be inserted back to the head of the double-ended queue in sequence so that they can be used preferentially in the next downlink scheduled time slot, while the RBG indices stored in the target queue qu_UsedRbgInSpl should be inserted back to the tail of the double-ended queue in sequence.

[0058] Figure 2 This is a schematic diagram of the RBG sampling process provided by the present invention, as shown below. Figure 2 As shown, it includes steps 201-207.

[0059] Step 201: Determine if the deque is empty. If the deque is empty, proceed to step 202; if the deque is not empty, proceed to step 203.

[0060] Step 202: Insert multiple RBGs sequentially from the tail of the double-ended queue.

[0061] Step 203: For each UE to be scheduled in the current downlink scheduling time slot within the preset sampling period, take a target RBG from the head of the double-ended queue.

[0062] Step 204: Determine if the target RBG is available. That is, whether the RBs included in the target RBG overlap with all or part of the RBs that may exist in the current downlink time slot SSB / SIB. If there is overlap, the target RBG is determined to be unavailable; otherwise, the target RBG is available. If the target RBG is unavailable, proceed to step 205; if the target RBG is available, proceed to step 206.

[0063] Step 205: Insert the target RBG into the first stack and proceed to step 203.

[0064] Step 206: Insert the target RBG into the target queue, record the index of the available target RBG in the HARQ process of the UE to be scheduled, and determine the available target RBG as the available RBG allocated to the UE to be scheduled.

[0065] Step 207: Insert the unusable RBG indices in the first stack back into the deque from the head of the deque, and insert the usable RBG indices in the target queue back into the deque from the tail of the deque.

[0066] The downlink spectrum resource allocation method provided by this invention, for each UE to be scheduled, determines whether the target RBG taken from the head of the double-ended queue is available, which can accurately allocate available RBGs to the UE to be scheduled, improve the accuracy of RBG allocation, and thus allocate reliable downlink spectrum resources to each UE to be scheduled, realize accurate scheduling of downlink frequency selection, and improve the reliability of downlink transmission.

[0067] Optionally, the specific implementation of step 102 above includes: Receive feedback results from each scheduled UE that uses the available RBG to transmit the PDSCH; the feedback results indicate whether the PDSCH transmission was successful or failed; determine the transmission error rate of the available RBG based on each feedback result.

[0068] Specifically, after allocating an available RBG for each scheduled UE, each scheduled UE uses the available RBG to perform downlink PDSCH transmission. The scheduled UE uses HARQ transmission on the Physical Uplink Control Channel (PUCCH) to provide feedback on the downlink PDSCH transmission result. The feedback result indicates whether the PDSCH transmission was successful (i.e., the downlink PDSCH transmission was correctly received by the UE, using ACK) or failed (the downlink PDSCH transmission was not correctly received by the UE, using NACK). It should be noted that the feedback result can also be DTX, but this is due to the failure of the Physical Downlink Control Channel (PDCCH) transmission, where the previous downlink PDSCH transmission was not attempted to be received by the UE. In this case, it is impossible to determine whether the PDSCH transmission was successful or not.

[0069] The base station's MAC scheduler, based on the feedback results of HARQ transmissions by each scheduled UE, counts the number of successful and failed PDSCH transmissions for the RBG index used in HARQ transmissions. It then divides the number of failed PDSCH transmissions by the sum of the successful and failed PDSCH transmissions to obtain the transmission error rate (i.e., block error rate (BLER)) for each RBG. UE[UeIdx][HarqPid].SampledRbgIdx indicates that the HARQ transmission feedback received by the base station's MAC scheduler corresponds to the RBG index used by the HARQ process (HarqPid) of the UE indexed as UeIdx.

[0070] It should be noted that if the base station's MAC scheduler receives a "NACK" response with "DtxDetected==0", it updates the global array: RBG[UE[UeIdx][HarqPid].SampledRbgIdx].PdsNackCnt++; if the base station's MAC scheduler receives an "ACK" response, it updates the global array: RBG[UE[UeIdx][HarqPid].SampledRbgIdx].PdsAckCnt++; if the sum of the statistical variables PdsNackCnt and PdsAckCnt on this RBG has reached the threshold for the number of transmissions required to calculate the transmission BLER, then the transmission BLER value of this RBG can be calculated based on the proportion of PdsNackCnt. PdsNackCnt represents the cumulative number of negative feedbacks (i.e., the number of transmission errors) for a certain RBG within the sampling period, and PdsAckCnt represents the cumulative number of positive feedbacks (the number of correct transmissions) for a certain RBG within the sampling period.

[0071] Figure 3 This is a schematic diagram of the process for determining the transmission error rate of each available RBG provided by the present invention, as shown below. Figure 3 As shown, it includes steps 301-308.

[0072] Step 301: Receive feedback results from each UE to be scheduled for PDSCH transmission using available RBGs. The feedback result is either NACK or ACK.

[0073] Step 302: Determine if the feedback result is "NACK" and "DtxDetected==0". If yes, proceed to step 303; otherwise, proceed to step 304.

[0074] Step 303: Increment the count of failed PDSCH transmissions for the available RBG by 1. And update the global array: RBG[UE[UeIdx][HarqPid].SampledRbgIdx].PdsNackCnt++.

[0075] Step 304: Determine if the feedback result is "ACK". If the feedback result is "ACK", proceed to step 305; if the feedback result is not "ACK", proceed to step 308.

[0076] Step 305: Increment the count of successful PDSCH transmissions for the available RBG by 1. And update the global array: RBG[UE[UeIdx][HarqPid].SampledRbgIdx].PdsAckCnt++.

[0077] Step 306: Determine whether the sum of the cumulative number of PDSCH transmission failures and the cumulative number of PDSCH transmission successes is greater than or equal to the minimum number of samples required to calculate the RBG transmission BLER. The minimum number of samples required to calculate the RBG transmission BLER is represented by PdsBlerStatCnt. If the sum of the cumulative number of PDSCH transmission failures and the cumulative number of PDSCH transmission successes is greater than the minimum number of samples required to calculate the RBG transmission BLER, proceed to step 307; if the sum of the cumulative number of PDSCH transmission failures and the cumulative number of PDSCH transmission successes is less than the minimum number of samples required to calculate the RBG transmission BLER, proceed to step 309.

[0078] Step 307: Divide the number of PDSCH transmission failures by the sum of the number of PDSCH transmission failures and the number of PDSCH transmission successes to obtain the transmission error rate of each RBG.

[0079] Step 308: Control channel decoding error, unable to represent the transmission result of PDSCH.

[0080] Step 309, End.

[0081] The downlink spectrum resource allocation method provided by this invention achieves accurate determination of the transmission error rate of available RBGs by statistically analyzing the feedback results of each scheduled UE using available RBGs for PDSCH transmission, thereby improving the accuracy of the transmission error rate of available RBGs. This enables reliable downlink spectrum resources to be allocated to each scheduled UE, achieving accurate scheduling of downlink frequency selection and improving the reliability of downlink transmission.

[0082] Optionally, the method further includes: Based on the transmission error rate of each of the available RBGs, the transmission error rate of each RBG is marked.

[0083] Specifically, based on the transmission error rate of each available RBG, the transmission error rate of each RBG in the multiple RBGs is marked, that is, the transmission error rate of each RBG in the multiple RBGs is the transmission error rate of the available RBGs.

[0084] The downlink spectrum resource allocation method provided by the present invention marks the transmission error rate of each of the multiple available RBGs based on the transmission error rate of each RBG, and then allocates reliable downlink spectrum resources to each UE to be scheduled based on the marked transmission error rate of each RBG, thereby achieving accurate scheduling of downlink frequency selection and improving the reliability of downlink transmission.

[0085] Optionally, the specific implementation of step 103 above includes: The plurality of RBGs are inserted into a priority queue and sorted in ascending order according to the transmission error rate of each RBG in the plurality of RBGs. Based on the priority queue and the number of resource blocks (RBs) required by each of the scheduled UEs, at least one RBG is allocated from the plurality of RBGs for each of the scheduled UEs.

[0086] It should be noted that when the sampling period ends, the base station's MAC scheduler can allocate RBGs according to the transmission error rate (i.e., BLER value) of each RBG that has been statistically obtained, which is to formally start the so-called downlink "frequency selective scheduling".

[0087] Specifically, after the transmission error rate of each RBG is obtained, each RBG is inserted into the priority queue (i.e., priority_queue). <pdschrbg>The RBGs (Resource Blocks) are sorted in ascending order of their transmission error rates (pq), with the top RBG having the lowest transmission error rate and the bottom RBG having the highest. Based on the priority queue and the number of Resource Blocks (RBs) required by each scheduled UE, at least one RBG is allocated to each scheduled UE from the plurality of RBGs.

[0088] The downlink spectrum resource allocation method provided by this invention, by sorting the RBGs in ascending order based on the transmission error rate and the number of resource blocks RBs required by each UE to be scheduled, can allocate RBGs with lower transmission error rates when allocating RBGs to the UE to be scheduled, thereby achieving reliable allocation of downlink spectrum resources, accurate scheduling of downlink frequency selection, and improving the reliability of downlink transmission.

[0089] Optionally, allocating at least one RBG from the plurality of RBGs for each scheduled UE based on the priority queue and the number of resource blocks (RBs) required by each scheduled UE includes: Step a) For each UE to be scheduled, retrieve the first RBG at the top of the priority queue from the priority queue.

[0090] Specifically, when allocating an RBG to each UE to be scheduled, as long as the priority queue is not empty, the top RBG of the priority queue, i.e., the first RBG, can be taken out and temporarily stored in the second stack before judgment. The first RBG has the lowest transmission error rate.

[0091] Step b) Determine whether the first RBG is available.

[0092] Specifically, since the sampling and transmission times are different, it is also necessary to determine whether the first RBG is available during transmission. If the RBs contained in the first RBG partially or completely overlap with the SSB / SIB, the first RBG should be determined as "unavailable"; otherwise, the first RBG should be determined as "available".

[0093] Step c) If the first RBG is unavailable, take out a first RBG from the top of the priority queue in sequence and perform the step of determining whether the first RBG is available until the taken out first RBG is available.

[0094] Specifically, if the first RBG is unavailable, a second first RBG is retrieved from the top of the priority queue, and its availability is checked. This process is repeated until a retrieved first RBG becomes available. The index of the retrieved available first RBG is added to the "selected RBG list," and the loop is exited. Every effort is made to ensure that each scheduled UE is assigned at least one RBG for downlink data transmission.

[0095] Optionally, if the first RBG retrieved is unavailable and the priority queue is empty, the search is stopped and the loop is exited.

[0096] Step d) Based on the available first RBG and the number of RBs required by the UE to be scheduled, allocate at least one RBG to the UE to be scheduled.

[0097] Specifically, based on the available first RBG extracted and the number of RBs required by the UE to be scheduled, at least one RBG can be further allocated to the UE to be scheduled.

[0098] The downlink spectrum resource allocation method provided by this invention, for each UE to be scheduled, determines whether the RBG taken from the top of the priority queue is available, thereby accurately allocating available RBGs to the UE to be scheduled, improving the accuracy of RBG allocation, and thus allocating reliable downlink spectrum resources to each UE to be scheduled, achieving accurate scheduling of downlink frequency selection and improving the reliability of downlink transmission.

[0099] Optionally, allocating at least one RBG to the UE to be scheduled based on the available first RBG and the number of RBs required by the UE to be scheduled includes: (1) Determine whether the number of RBs included in the first available RBG reaches the number of RBs required by the UE to be scheduled.

[0100] Specifically, it is determined whether the number of RBs included in the available first RBG reaches the number of RBs required by the UE to be scheduled (i.e., UE[UeIdx].UeReqRbNum), that is, whether the number of RBs included in the available first RBG is greater than or equal to the number of RBs required by the UE to be scheduled.

[0101] (2) If the number of RBs included in the first RBG that is available does not reach the number of RBs required by the UE to be scheduled, take out the second RBG at the top of the current priority queue.

[0102] Specifically, if the number of RBs included in the available first RBG is less than the number of RBs required by the UE to be scheduled, it indicates that the number of RBs included in the available first RBG is insufficient, and it is necessary to continue to retrieve the second RBG at the top of the current priority queue from the priority queue. Determine whether the second RBG is available. If the second RBG is unavailable, continue to execute the step of retrieving the second RBG at the top of the current priority queue; if the second RBG is available, execute the following step (3).

[0103] Optionally, if the number of RBs included in the available first RBG reaches the number of RBs required by the UE to be scheduled, the first RBG is directly assigned to the UE to be scheduled, and the step of retrieving the second RBG from the top of the current priority queue is no longer performed.

[0104] (3) If the transmission error rate of the second RBG is less than the preset error rate threshold and the second RBG is available, determine whether the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled.

[0105] Specifically, when the second RBG is available, it is necessary to determine whether the transmission error rate of the second RBG is less than a preset error rate threshold. The preset error rate threshold is represented by RbgBlerUpperLim. If it is determined that the actual transmission error rate of a certain RBG has exceeded the preset BLER upper limit, it can be considered that it is suffering from severe interference. If the RBG is still allocated to the UE for PDSCH transmission, it may cause the entire PDSCH transmission to fail. The setting of this parameter should be bound to MCS, with a higher MCS corresponding to a higher BLER threshold.

[0106] If the transmission error rate of the second RBG is less than the preset error rate threshold, it is determined whether the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled, that is, whether the sum of the number of RBs included in the first RBG and the number of RBs included in the second RBG reaches the number of RBs required by the UE to be scheduled.

[0107] (4) If the sum of the number of RBs included in all available RBGs that have been retrieved does not reach the number of RBs required by the UE to be scheduled, repeat the step of retrieving the second RBG at the top of the current priority queue until the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled, and determine all available RBGs that have been retrieved as RBGs allocated to the UE to be scheduled.

[0108] Specifically, if the sum of the number of RBs included in all available RBGs that have been retrieved does not reach the number of RBs required by the UE to be scheduled, the second RBG at the top of the priority queue is popped, and it is determined whether the transmission error rate of the second RBG is less than the preset error rate threshold and whether the second RBG is available. If so, the second RBG is used; if not, the allocation of the second RBG is abandoned and the above "pop" operation is stopped. Only all available RBGs that have been retrieved previously are determined as RBGs to be allocated to the UE to be scheduled.

[0109] Optionally, if the sum of the number of RBs included in all available RBGs retrieved does not reach the number of RBs required by the UE to be scheduled, and the priority queue is empty, the search is stopped and the loop is exited.

[0110] It should be noted that after all resource allocation tasks in the current scheduling slot have been completed, all RBGs temporarily stored in the second stack should be inserted back into the priority queue for selection in the next scheduling slot.

[0111] Figure 4 This is a schematic diagram of the RBG allocation process during the operation of the transmission timer provided by the present invention, as shown below. Figure 4 As shown, it includes steps 401-413.

[0112] Step 401: Determine if the priority queue is empty. If the priority queue is not empty, proceed to step 402; if the priority queue is empty, proceed to step 413.

[0113] Step 402: Take the first RBG from the top of the priority queue and temporarily store the first RBG in the second stack.

[0114] Step 403: Determine if the first RBG is available. If the first RBG is available, proceed to step 404; if the first RBG is unavailable, proceed to step 402.

[0115] Step 404: Add the first RBG to the list of selected RBGs, and record that the number of RBs included in the selected RBG is equal to the number of RBs included in the first RBG.

[0116] Step 405: Determine whether the number of RBs included in the first RBG meets the number of RBs required by the UE to be scheduled. If the number of RBs included in the first RBG meets the number of RBs required by the UE to be scheduled, proceed to step 406; if the number of RBs included in the first RBG does not meet the number of RBs required by the UE to be scheduled, proceed to step 407.

[0117] Step 406: Assign the first RBG to the UE to be scheduled.

[0118] Step 407: Retrieve the second RBG at the top of the current priority queue.

[0119] Step 408: Determine if the second RBG is available. If the second RBG is available, proceed to step 409; if the second RBG is unavailable, proceed to step 407.

[0120] Step 409: Determine whether the transmission error rate of the second RBG is less than a preset error rate threshold. If the transmission error rate of the second RBG is less than the preset error rate threshold, temporarily store the second RBG in the second stack and proceed to step 410; if the transmission error rate of the second RBG is not less than the preset error rate threshold, proceed to step 413.

[0121] Step 410: Add the second RBG to the list of selected RBGs, and record that the number of RBs included in the selected RBG is equal to the number of RBs included in the first RBG and the number of RBs included in the second RBG.

[0122] Step 411: Determine whether the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled. If the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled, proceed to step 412; if the sum of the number of RBs included in all available RBGs that have been retrieved does not reach the number of RBs required by the UE to be scheduled, proceed to step 407.

[0123] Step 412: Determine all available RBGs that have been retrieved as RBGs to be allocated to the UE to be scheduled.

[0124] Step 413: End the RBG allocation for the current UE to be scheduled, jump to the next UE to be scheduled, and insert all RBGs temporarily stored in the second stack back into the priority queue for selection in the next scheduling slot.

[0125] It should be noted that the execution order of steps 408 and 409 can be reversed. Specifically, step 409 is executed first to determine whether the transmission error rate of the second RBG is less than a preset error rate threshold. If the transmission error rate of the second RBG is less than the preset error rate threshold, the second RBG is temporarily stored in the second stack, and the process proceeds to step 408. If the transmission error rate of the second RBG is not less than the preset error rate threshold, the process proceeds to step 413. Step 408 involves determining whether the second RBG is usable. If the second RBG is usable, the process proceeds to step 410; if the second target usable RBG is unavailable, the process proceeds to step 407.

[0126] The downlink spectrum resource allocation method provided by the present invention can determine whether the available first RBG meets the number of RBs required by the UE to be scheduled by judging whether the number of RBs included in the available first RBG taken from the top of the priority queue reaches the number of RBs required by the UE to be scheduled. When it does not meet the number of RBs required by the UE to be scheduled, the second RBG at the top of the current priority queue is taken out, and reliable downlink spectrum resources are allocated to each UE to be scheduled based on whether the second RBG is available and the transmission error rate of the second RBG, so as to achieve accurate scheduling of downlink frequency selection and improve the reliability of downlink transmission.

[0127] Figure 5 is a schematic diagram of emptying the priority queue provided by the present invention, as Figure 5 shown, including step 501 - step 510.

[0128] Step 501, call the reset function Reset().

[0129] Step 502, input parameters RBG[], total number of RBGs (RbgNum) and the priority queue.

[0130] Step 503, initialize the index of RBG, RbgIdx = 0.

[0131] Step 504, judge whether the current index of RBG is less than the total number of RBGs, that is, RbgIdx < RbgNum. If the current index of RBG is less than the total number of RBGs, go to step 505; if the current index of RBG is not less than the total number of RBGs, go to step 507.

[0132] Step 505, reset the transmission error rate BLER of RBG to 0, the cumulative transmission success ACK corresponding to RBG to 0, and the cumulative transmission failure NACK corresponding to RBG to 0, that is, RBG[RbgIdx].PdsAckCnt = 0, RBG[RbgIdx].PdsNAckCnt = 0, RBG[RbgIdx].PdsBler = 0.

[0133] Step 506, increment the RBG index by 1, that is, RbgIdx++.

[0134] Step 507, empty the priority queue.

[0135] Step 508, judge whether the priority queue is empty. If the priority queue is not empty, go to step 509; if the priority queue is empty, go to step 510.

[0136] Step 509, delete the top element of the priority queue, that is, pq.pop().

[0137] Step 510, End.

[0138] Figure 6 This is the second flowchart illustrating the downlink spectrum resource allocation method provided by the present invention, as shown below. Figure 6 As shown, steps 601-620 are included.

[0139] Step 601: Define the structure PDSCHRBG and its parameters: Struct PDSCHRBG{int RbgIdx,PdsAckCnt,PdsNackCnt,PdsBler,RbNum,bool CanBeUsed}RBG[RbgNum].

[0140] Step 602: Define the data structure: deque <int>dq、Stack <int>st_UnavailRbg、queue <int>qu_UsedRbgInSpl、priority_queue <pdschrbg>pq、Stack <pdschrbg>st_CheckedRbgs. Among them, deque... <int>dq is used for polling sampling of RBG, Stack <int>st_UnavailRbg is used to temporarily store RBGs that are unavailable in the current downlink scheduling time slot during RBG polling sampling. <int>`qu_UsedRbgInSpl` is used to temporarily store RBGs (i.e., usable RBGs) that have been allocated in the current downlink scheduling time slot during RBG polling sampling. `priority_queue` <pdschrbg>pq represents a priority queue sorted in ascending order according to PdsBler, Stack <pdschrbg>st_CheckedRbgs is used to temporarily store the verified available RBGs during downlink resource allocation.

[0141] Step 603: Define the sampling period, transmission period, duration of sampling, duration of transmission, and the parameter TotPdsBlerCellLevInTxPeriod. Among them, the duration of sampling is represented by a sampling timer, and the duration of transmission is represented by a transmission timer. The parameter TotPdsBlerCellLevInTxPeriod represents the total downlink transmission BLER at the cell level during the transmission period, and is used to determine in real time whether a new round of sampling needs to be started immediately due to a sudden change caused by external interference.

[0142] Step 604: When sampling starts, determine whether the transmission timer is running. If the transmission timer is running, go to Step 605; if the transmission timer is not running, go to Step 606.

[0143] Step 605: Stop the transmission timer.

[0144] Step 606: Start the sampling timer and call the function Reset().

[0145] Step 607: When sampling ends and transmission starts, determine whether the sampling timer is running. If the sampling timer is running, go to Step 608; if the sampling timer is not running, go to Step 609.

[0146] Step 608: Stop the sampling timer.

[0147] Step 609: Start the transmission timer. The transmission timer sorts the transmission error rates of all RBGs in the global array RBG[] in ascending order and inserts them into the priority queue in sequence.

[0148] Step 610: Initialize the index of RBG, that is, RbgIdx = 0.

[0149] Step 611: Determine whether the current index of RBG is less than the total number of RBGs, that is, RbgIdx < RbgNum. If the current index of RBG is less than the total number of RBGs, go to Step 612; if the current index of RBG is not less than the total number of RBGs, go to Step 616.

[0150] Step 612: Determine whether the sum of the number of transmission failures and the number of successful transmissions of the current RBG is less than the transmission count threshold required for calculating the transmission BLER. If the sum of the number of transmission failures and the number of successful PDSCH transmissions is less than the transmission count threshold required for calculating the transmission BLER, proceed to step 613; if the sum of the number of transmission failures and the number of successful PDSCH transmissions is not less than the transmission count threshold required for calculating the transmission BLER, proceed to step 614.

[0151] Step 613: Output the error message "RBG sampling has not been completed" and stop the transmission timer.

[0152] Step 614: Insert the current RBG into the priority queue and sort it using BLER.

[0153] Step 615: Increment the index of RBG by 1, i.e., RbgIdx++, and then proceed to step 611.

[0154] Step 616: Clear the total downlink transmission BLER count to zero and start a new round of BLER count.

[0155] Step 617: Determine whether the total downlink transmission BLER is greater than TotPdsBlerCellLevInTxPeriod, where TotPdsBlerCellLevInTxPeriod represents the total cell-level downlink transmission BLER within the transmission period. If the total downlink transmission BLER is greater than TotPdsBlerCellLevInTxPeriod, proceed to step 618; if the total downlink transmission BLER is not greater than TotPdsBlerCellLevInTxPeriod, proceed to step 619.

[0156] Step 618: Immediately stop the transmission timer, start the sampling timer, and call the function Reset().

[0157] Step 619: In each downlink scheduling time slot, while the sampling timer is running, call the function Sampling() to perform RGB sampling; when HARQ feedback is received, call HarqFeedbackHandling() to perform statistics and calculate the RGB transmission error rate.

[0158] Step 620: After sampling is completed and the transmission timer is running, call the function RbgSelectionForScheduling() to perform RBG selection.

[0159] The method provided by this invention detects the relative channel quality of the transmission spectrum based on feedback statistics of PDSCH transmission results (using transmission error rate to reflect channel quality), and can differentiate and select the best real-time spectrum position (the smallest granularity of spectrum resources can reach the RBG level rather than the subband level) for downlink data transmission by comparing and analyzing the feedback statistical results, thus ensuring that the transmission reliability meets the requirements.

[0160] The downlink spectrum resource allocation device provided by the present invention is described below. The downlink spectrum resource allocation device described below can be referred to in correspondence with the downlink spectrum resource allocation method described above.

[0161] Figure 7 This is a schematic diagram of the downlink spectrum resource allocation device provided by the present invention, as shown below. Figure 8 As shown, the downlink spectrum resource allocation device 700 includes: a sampling module 701, a determination module 702, and an allocation module 703; wherein, The sampling module 701 is used to sample multiple resource block groups (RBGs) contained in the allocated downlink broadband portion based on a preset sampling period to obtain a sampling result. The sampling result indicates that in each downlink scheduling time slot within the sampling period, an available RBG is allocated for at least one scheduled user equipment (UE) through polling. The available RBG is used for decoding by the scheduled UE after downlink data transmission on the physical downlink shared channel (PDSCH). The determining module 702 is used to determine, for each available RBG, the transmission error rate of each scheduled UE using the available RBG for PDSCH transmission; The allocation module 703 is configured to allocate at least one RBG from the plurality of RBGs for each of the available RBGs based on the transmission error rate of each of the available RBGs and the number of resource blocks (RBs) required by each of the scheduled UEs.

[0162] The downlink spectrum resource allocation apparatus provided by the present invention samples multiple resource block groups (RBGs) included in the allocated downlink broadband portion based on a preset sampling period to obtain sampling results. The sampling results indicate that in each downlink scheduling time slot within the sampling period, at least one UE is allocated an available RBG through polling. The available RBG is used for the decoding result of the UE after downlink data transmission on the Physical Downlink Shared Channel (PDSCH). For each available RBG, the transmission error rate of each UE using the available RBG for PDSCH transmission is determined. Based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each UE, at least one RBG is allocated to each UE from the multiple RBGs. By sampling multiple RBGs, available RBGs are allocated to each UE to be scheduled in a polling manner. Then, based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each UE to be scheduled, the required number of RBGs with relatively high transmission quality (i.e., low transmission error rate) are allocated to each UE to be scheduled, thereby realizing the allocation of downlink spectrum resources. The minimum granularity of spectrum resources can reach the RBG level, resulting in high accuracy of downlink frequency selection scheduling of the base station and improving the reliability of downlink transmission.

[0163] Optionally, the sampling module 701 is specifically used for: Insert the plurality of RBGs sequentially into the double-ended queue; For each UE to be scheduled within the current downlink scheduling time slot of the preset sampling period: a target RBG is taken from the head of the double-ended queue; it is determined whether the target RBG is available; if the target RBG is unavailable, the target RBG is inserted into the first stack, and a target RBG is taken from the head of the double-ended queue in turn, and the step of determining whether the target RBG is available is repeated until the taken target RBG is available; the available target RBG is inserted into the target queue, and the available target RBG is determined as the available RBG allocated to the UE to be scheduled.

[0164] Optionally, the determining module 702 is specifically used for: Receive feedback results from each scheduled UE that uses the available RBG to perform the PDSCH transmission; the feedback results indicate whether the PDSCH transmission was successful or failed. Based on the feedback results, the transmission error rate of the available RBG is determined.

[0165] Optionally, the downlink spectrum resource allocation device 700 further includes: A marking module is used to mark the transmission error rate of each of the plurality of RBGs based on the transmission error rate of each of the available RBGs.

[0166] Optionally, the allocation module 703 is specifically used for: The plurality of RBGs are placed into a priority queue and sorted in ascending order according to the transmission error rate of each of the marked plurality of RBGs; Based on the priority queue and the number of resource blocks (RBs) required by each scheduled UE, at least one RBG is allocated from the plurality of RBGs for each scheduled UE.

[0167] Optionally, the allocation module 703 is further specifically used for: For each UE to be scheduled, the first RBG at the top of the priority queue is retrieved from the priority queue; Determine whether the first RBG is available; If the first RBG is unavailable, a first RBG is sequentially taken from the top of the priority queue, and the step of determining whether the first RBG is available is executed until the taken first RBG is available. Based on the available first RBG and the number of RBs required by the UE to be scheduled, at least one RBG is allocated to the UE to be scheduled.

[0168] Optionally, the allocation module 703 is further specifically used for: Determine whether the number of RBs included in the first available RBG reaches the number of RBs required by the UE to be scheduled; If the number of RBs included in the first RBG that is available does not reach the number of RBs required by the UE to be scheduled, the second RBG at the top of the current priority queue is taken out; If the transmission error rate of the second RBG is less than a preset error rate threshold and the second RBG is available, determine whether the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled. If the sum of the number of RBs included in all available RBGs that have been retrieved does not reach the number of RBs required by the UE to be scheduled, the step of retrieving the second RBG at the top of the current priority queue is repeated until the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled, and all available RBGs that have been retrieved are determined as the RBGs to be allocated to the UE to be scheduled.

[0169] Figure 8 This is a schematic diagram of the physical structure of an electronic device provided by the present invention, such as... Figure 8 As shown, the electronic device may include: a processor 810, a communications interface 820, a memory 830, and a communications bus 840, wherein the processor 810, the communications interface 820, and the memory 830 communicate with each other through the communications bus 840. The processor 810 can call logic instructions in the memory 830 to execute a downlink spectrum resource allocation method, the method comprising: sampling multiple resource block groups (RBGs) contained in the allocated downlink broadband portion based on a preset sampling period to obtain a sampling result; the sampling result representing the allocation of available RBGs for at least one scheduled user equipment (UE) in each downlink scheduling time slot within the sampling period, the available RBGs being used for decoding of downlink data transmission by the scheduled UE on the physical downlink shared channel (PDSCH); determining the transmission error rate for each available RBG when the scheduled UE uses the available RBG for PDSCH transmission; and allocating at least one RBG from the multiple RBGs for each scheduled UE based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each scheduled UE.

[0170] Furthermore, the logical instructions in the aforementioned memory 830 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0171] On the other hand, the present invention also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer is able to execute the line spectrum resource allocation method provided by the above methods. The method includes: sampling multiple resource block groups (RBGs) included in the allocated downlink broadband portion based on a preset sampling period to obtain a sampling result; the sampling result indicates that for each downlink scheduling time slot within the sampling period, at least one available RBG is allocated to a user equipment (UE) to be scheduled in a polling manner. The available RBG is used for decoding of downlink data transmission performed by the UE on the physical downlink shared channel (PDSCH); for each available RBG, determining the transmission error rate of each UE using the available RBG for PDSCH transmission; and allocating at least one RBG from the multiple RBGs for each UE to be scheduled based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each UE.

[0172] In another aspect, the present invention also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the line spectrum resource allocation method provided by the above methods. The method includes: sampling a plurality of resource block groups (RBGs) contained in the allocated downlink broadband portion based on a preset sampling period to obtain a sampling result; the sampling result indicating that for each downlink scheduling time slot within the sampling period, at least one scheduled user equipment (UE) is allocated an available RBG in a polling manner, the available RBG being used for decoding of downlink data transmission by the scheduled UE on the Physical Downlink Shared Channel (PDSCH); for each available RBG, determining the transmission error rate of each scheduled UE using the available RBG for PDSCH transmission; and based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each scheduled UE, allocating at least one RBG from the plurality of RBGs for each scheduled UE.

[0173] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0174] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0175] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.< / pdschrbg> < / pdschrbg> < / int> < / int> < / int> < / pdschrbg> < / pdschrbg> < / int> < / int> < / int> < / pdschrbg> < / int> < / int> < / int>

Claims

1. A method for allocating downlink spectrum resources, characterized in that, include: Based on a preset sampling period, multiple resource block groups (RBGs) contained in the allocated downlink bandwidth are sampled to obtain the sampling results; The sampling result indicates that in each downlink scheduling time slot within the sampling period, at least one scheduled user equipment (UE) is polled and allocated an available RBG. The available RBG is used for the UE to perform downlink data transmission on the physical downlink shared channel (PDSCH) for decoding. For each available RBG, determine the transmission error rate of each scheduled UE using the available RBG for PDSCH transmission; Based on the transmission error rate of each available RBG and the number of resource blocks (RBs) required by each scheduled UE, at least one RBG is allocated from the plurality of RBGs for each scheduled UE.

2. The downlink spectrum resource allocation method according to claim 1, characterized in that, The sampling is performed on multiple Resource Block Groups (RBGs) included in the allocated downlink bandwidth portion based on a preset sampling period, and the sampling results are obtained, including: Insert the plurality of RBGs sequentially into the double-ended queue; For each UE to be scheduled within the current downlink scheduling time slot in the preset sampling period: a target RBG is taken from the head of the double-ended queue; it is determined whether the target RBG is available; if the target RBG is unavailable, the target RBG is inserted into the first stack, and a target RBG is taken from the head of the double-ended queue in turn, and this step is repeated until the taken target RBG is available; the available target RBG is inserted into the target queue, and the available target RBG is determined as the available RBG allocated to the UE to be scheduled.

3. The downlink spectrum resource allocation method according to claim 1, characterized in that, Determining the transmission error rate of each scheduled UE using the available RBG for PDSCH transmission includes: Receive feedback results from each of the scheduled UEs that used the available RBG to perform the PDSCH transmission; the feedback results indicate whether the PDSCH transmission was successful or failed. Based on the feedback results, the transmission error rate of the available RBG is determined.

4. The downlink spectrum resource allocation method according to claim 1 or 3, characterized in that, The method further includes: Based on the transmission error rate of each of the available RBGs, the transmission error rate of each RBG is marked.

5. The downlink spectrum resource allocation method according to claim 4, characterized in that, The method of allocating at least one RBG from the plurality of RBGs for each of the available RBGs based on the transmission error rate of each of the available RBGs and the number of resource blocks (RBs) required by each of the scheduled UEs includes: The plurality of RBGs are inserted into a priority queue and sorted in ascending order according to the transmission error rate of each of the marked plurality of RBGs; Based on the priority queue and the number of RBs required by each scheduled UE, at least one RBG is allocated from the plurality of RBGs for each scheduled UE.

6. The downlink spectrum resource allocation method according to claim 5, characterized in that, The step of allocating at least one RBG from the plurality of RBGs for each scheduled UE based on the priority queue and the number of RBs required by each of the UEs to be scheduled includes: For each UE to be scheduled, the first RBG at the top of the priority queue is retrieved from the priority queue; Determine whether the first RBG is available; If the first RBG is unavailable, a first RBG is sequentially taken from the top of the priority queue, and the step of determining whether the first RBG is available is executed until the taken first RBG is available. Based on the available first RBG and the number of RBs required by the UE to be scheduled, at least one RBG is allocated to the UE to be scheduled.

7. The downlink spectrum resource allocation method according to claim 6, characterized in that, The step of allocating at least one RBG to the UE to be scheduled based on the available first RBG and the number of RBs required by the UE to be scheduled includes: Determine whether the number of RBs included in the first available RBG reaches the number of RBs required by the UE to be scheduled; If the number of RBs included in the first RBG that is available does not reach the number of RBs required by the UE to be scheduled, the second RBG at the top of the current priority queue is taken out; If the transmission error rate of the second RBG is less than a preset error rate threshold and the second RBG is available, determine whether the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled. If the sum of the number of RBs included in all available RBGs that have been retrieved does not reach the number of RBs required by the UE to be scheduled, the step of retrieving the second RBG at the top of the current priority queue is repeated until the sum of the number of RBs included in all available RBGs that have been retrieved reaches the number of RBs required by the UE to be scheduled, and all available RBGs that have been retrieved are determined as the RBGs to be allocated to the UE to be scheduled.

8. A downlink spectrum resource allocation device, characterized in that, include: The sampling module is used to sample multiple resource block groups (RBGs) contained in the allocated downlink bandwidth portion based on a preset sampling period to obtain sampling results. The sampling result indicates that in each downlink scheduling time slot within the sampling period, at least one scheduled user equipment (UE) is polled and allocated an available RBG. The available RBG is used for decoding of downlink data transmission performed by the scheduled UE on the physical downlink shared channel (PDSCH). The determining module is used to determine, for each available RBG, the transmission error rate of each scheduled UE using the available RBG for PDSCH transmission; The allocation module is configured to allocate at least one RBG from the plurality of RBGs for each of the available RBGs based on the transmission error rate of each of the available RBGs and the number of resource blocks (RBs) required by each of the scheduled UEs.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the downlink spectrum resource allocation method as described in any one of claims 1 to 7.

10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the downlink spectrum resource allocation method as described in any one of claims 1 to 7.

11. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the downlink spectrum resource allocation method as described in any one of claims 1 to 7.