Virtual resource block allocation method and device, electronic equipment and storage medium

By obtaining and allocating the unused virtual resource block index value of the user terminal, the problem that virtual resource block allocation in the prior art cannot ensure that the frequency domain does not conflict, and efficient and accurate virtual resource block allocation is achieved.

CN119675825AActive Publication Date: 2025-03-21PURPLE MOUNTAIN LAB
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
CN202411662432.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-20
Publication Date
2025-03-21
Estimated Expiration
2044-11-20

AI Technical Summary

Technical Problem

The allocation of virtual resource blocks in the prior art cannot ensure that virtual resource blocks allocated by user terminals with different scheduling types or with different bandwidth partial configurations do not conflict with each other in the frequency domain after being interleaved into physical resource blocks.

Method used

By obtaining the range of public resource blocks that can be allocated by the user terminal to be allocated, the unused virtual resource block index value is obtained based on the used public resource blocks, and the virtual resource block is allocated in the unused virtual resource block index value according to the preset resource allocation protocol to ensure that the allocated physical resource blocks do not conflict with each other in the frequency domain.

Benefits of technology

In the allocation of virtual resource blocks, it is realized that the virtual resource blocks allocated by user terminals configured with different scheduling types or bandwidth parts do not conflict with each other in the frequency domain after being interleaved into physical resource blocks, which improves the accuracy and efficiency of allocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119675825A_ABST
    Figure CN119675825A_ABST
Patent Text Reader

Abstract

The invention provides a virtual resource block allocation method and device, electronic equipment and a storage medium, belongs to the technical field of wireless communication, and can ensure that VRBs allocated by different user terminals do not conflict with each other in a frequency domain after being interwoven into PRBs according to an allocated VRB index value and an allocated PRB index value marked by an allocated CRB. According to the invention, the index value of the unused VRB is obtained according to the used CRB, so that the unused VRB can be updated in time, and the accuracy of distributing the VRB to the user terminal is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of wireless communication technology, and in particular to a method, device, electronic equipment and storage medium for allocating virtual resource blocks. Background Art

[0002] The mapping of the physical downlink shared channel from virtual resource blocks (VRBs) to physical resource blocks (PRBs) has different mapping methods for different user terminals. This poses a huge challenge to the base station's downlink medium access control layer (MAC) scheduler in allocating VRBs to user terminals with different frequency division multiplexing. The existing allocation of virtual resource blocks cannot ensure that VRBs allocated to UEs with different scheduling types or different bandwidth part (BWP) configurations do not conflict with each other in the frequency domain after being interleaved into PRBs. Summary of the invention

[0003] The present invention provides a method, device, electronic device and storage medium for allocating virtual resource blocks, which are used to solve the defect in the prior art that the allocation of virtual resource blocks cannot ensure that VRBs allocated to UEs of different scheduling types or with different bandwidth part configurations do not conflict with each other in the frequency domain after being interleaved into PRBs, and realize the allocation of virtual resource blocks to ensure that VRBs allocated to UEs of different scheduling types or with different bandwidth part configurations do not conflict with each other in the frequency domain after being interleaved into PRBs.

[0004] The present invention provides a method for allocating virtual resource blocks, comprising: obtaining a range of a common resource block CRB that can be allocated corresponding to a current user terminal to be allocated, obtaining a used virtual resource block VRB index value based on a used CRB within the range of the CRB, and then obtaining an unused VRB index value within the range of the CRB, wherein the range of the CRB is determined based on configuration information of a current bandwidth part of the current user terminal; allocating a VRB to the current user terminal in an unused VRB index value according to a preset resource allocation protocol, and obtaining an allocated VRB index value of the current user terminal; determining an allocated PRB index value based on the allocated VRB index value, and obtaining an allocated CRB based on the allocated PRB index value; updating a used CRB based on the allocated CRB to update the used VRB index value, and obtaining an updated unused VRB index value based on the updated used VRB index value; and allocating a VRB to a next user terminal in the updated unused VRB index value until all initial CRBs within the range of the CRB are used, or until all user terminals are allocated VRBs.

[0005] According to the method for allocating virtual resource blocks provided by the present invention, based on the used CRBs within the range of CRBs, the used virtual resource block VRB index values ​​are obtained, and then the unused VRB index values ​​within the range of CRBs are obtained, including: based on the used CRBs, the used physical resource blocks PRBs are obtained; based on the interleaving mapping information from VRB to PRBs, the used PRBs are deinterleaved and mapped to obtain the used VRB index values; all VRB ranges corresponding to the range of CRBs are obtained, and based on all VRB ranges and the used VRB index values, the unused VRB index values ​​are obtained.

[0006] According to the method for allocating virtual resource blocks provided by the present invention, the interleaving mapping information includes the number of resource bundles corresponding to the range of CRBs, the number of unit resource blocks contained in a resource bundle and the number of rows of interleavers between PRBs and VRBs, the used PRBs include PRB bundle index values ​​and resource block index values ​​of the PRB bundles, and based on the interleaving mapping information from VRB to PRBs, the used PRBs are deinterleaved and mapped to obtain the used VRB index values, including: when the PRB bundle index value is not the last resource bundle index value corresponding to the number of resource bundles, the VRB bundle index value is determined based on the number of resource bundles, the number of rows of the interleaver and the PRB bundle index value; when the PRB bundle index value is the last resource bundle index value, the last resource bundle index value is used as the VRB bundle index value; when the VRB bundle index value corresponds to the first VRB bundle, the used VRB index value is determined based on the resource block index value of the PRB bundle; when the VRB bundle index value does not correspond to the first VRB bundle, the used VRB index value is determined based on the VRB bundle index value, the number of unit resource blocks, the number of resource blocks contained in the first resource bundle and the resource block index value of the PRB bundle.

[0007] According to the method for allocating virtual resource blocks provided by the present invention, an allocated PRB index value is determined based on an allocated VRB index value, including: obtaining a VRB bundle index value and a resource block index value of the VRB bundle based on the allocated VRB index value; when the VRB bundle index value is not the last resource bundle index value, determining the PRB bundle index value based on the number of resource bundles, the number of rows of the interleaver and the VRB bundle index value; when the VRB bundle index value is the last resource bundle index value, taking the last resource bundle index value as the PRB bundle index value; when the PRB bundle index value corresponds to the first PRB bundle, determining the allocated PRB index value based on the resource block index value of the VRB bundle; when the PRB bundle index value does not correspond to the first PRB bundle index value, determining the allocated PRB index value based on the PRB bundle index value, the number of unit resource blocks, the number of resource blocks included in the first resource bundle and the resource block index value of the VRB bundle.

[0008] According to the method for allocating virtual resource blocks provided by the present invention, the allocated CRB is obtained based on the allocated PRB index value, including: obtaining the current search space of the physical downlink control channel corresponding to the current user terminal; if the current search space belongs to the first setting type, then based on the index value of the first starting common resource block of the setting control resource set corresponding to the search space of the first setting type and the allocated PRB index value, the allocated CRB is obtained; if the current search space belongs to the second setting type, then based on the index value of the second starting common resource block of the common control resource set corresponding to the search space of the second setting type, the allocated PRB index value is updated, and based on the updated allocated PRB index value and the index value of the starting common resource block of the downlink bandwidth part used by the current user terminal, the allocated CRB is obtained; if the current search space belongs to neither the first setting type nor the second setting type, then based on the allocated PRB index value and the index value of the starting common resource block of the downlink bandwidth part, the allocated CRB is obtained.

[0009] According to the method for allocating virtual resource blocks provided by the present invention, the range of CRB includes a CRB index upper limit and a CRB index lower limit, and the range of the common resource block CRB that can be allocated corresponding to the current user terminal to be allocated is obtained, including: when the search space belongs to a set control resource set, the index value of the first starting common resource block corresponding to the set control resource set is used as the CRB index lower limit, and the CRB index upper limit is determined based on the index value of the first starting common resource block and the number of CRBs in the set control resource set; when the search space belongs to a public control resource set, the CRB index lower limit is determined based on the index value of the starting common resource block of the downlink bandwidth part and the position of the first bit 1 of the public control resource set, and the CRB index upper limit is determined based on the index value of the starting common resource block of the downlink bandwidth part, the position of the first bit 1 of the public control resource set, and the number of CRBs in the set control resource set; when the search space belongs to neither the set control resource set nor the public control resource set, the CRB index lower limit is determined based on the index value of the starting common resource block of the downlink bandwidth part, and the CRB index upper limit is determined based on the index value of the starting common resource block of the downlink bandwidth part and the number of CRBs in the public control resource set.

[0010] According to the virtual resource block allocation method provided by the present invention, a VRB bundle index value is determined based on the number of resource bundles, the number of rows of an interleaver and a PRB bundle index value, including: determining the number of columns of the interleaver based on the number of resource bundles and the number of rows of the interleaver; determining the row index value of the VRB based on an integer of a ratio of the PRB bundle index value to the number of columns of the interleaver; determining the column index value of the VRB based on a remainder of the ratio of the PRB bundle index value to the number of columns of the interleaver; and determining the VRB bundle index value based on the number of rows of the interleaver, the row index value of the VRB and the column index value of the VRB.

[0011] The present invention also provides an allocation device for virtual resource blocks, comprising: a first acquisition module, used to acquire a range of common resource blocks CRBs that can be allocated corresponding to a current user terminal to be allocated, based on the used CRBs within the range of CRBs, to acquire the used virtual resource block VRB index values, and then to acquire the unused VRB index values ​​within the range of CRBs, wherein the range of CRBs is determined based on the configuration information of the current bandwidth part of the current user terminal; a first allocation module, used to allocate VRBs to the current user terminal in the unused VRB index values ​​according to a preset resource allocation protocol, and obtain the allocated VRBs of the current user terminal a second acquisition module, configured to determine an allocated PRB index value based on the allocated VRB index value, and to acquire an allocated CRB based on the allocated PRB index value; an update module, configured to update a used CRB based on the allocated CRB to update the used VRB index value, and to acquire an updated unused VRB index value based on the updated used VRB index value; and a second allocation module, configured to allocate a VRB to a next user terminal in the updated unused VRB index value until all initial CRBs within the range of the CRB are used, or until all user terminals are allocated VRBs.

[0012] The present invention also provides an electronic device, comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements any of the above-mentioned methods for allocating virtual resource blocks when executing the computer program.

[0013] The present invention also provides a non-transitory computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the method for allocating any of the virtual resource blocks described above is implemented.

[0014] The virtual resource block allocation method, device, electronic device and storage medium provided by the present invention can mark the allocated VRB index value and the allocated PRB index value according to the allocated CRB, so as to ensure that the VRBs allocated to different user terminals do not conflict with each other in the frequency domain after being interleaved into PRBs. The present invention obtains the unused VRB index value according to the used CRB, which is conducive to timely updating the unused VRB and improving the accuracy of VRB allocation to the user terminal. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0016] Figure 1 This is one of the flow charts of the method for allocating virtual resource blocks provided by the present invention.

[0017] Figure 2 This is the second flow chart of the method for allocating virtual resource blocks provided by the present invention.

[0018] Figure 3 It is a structural schematic diagram of the device for allocating virtual resource blocks provided by the present invention.

[0019] Figure 4 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION

[0020] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0021] Combine the following Figure 1-Figure 4 The invention describes a method, a device and an electronic device for allocating virtual resource blocks.

[0022] Figure 1 It is one of the flow charts of the method for allocating virtual resource blocks provided by the present invention, such as Figure 1 As shown, the method for allocating virtual resource blocks includes S100 to S500, and each step is specifically as follows.

[0023] S100: Obtain a range of common resource blocks CRBs that can be allocated corresponding to the current user terminal to be allocated, obtain a used virtual resource block VRB index value based on the used CRBs within the range of CRBs, and then obtain an unused VRB index value within the range of CRBs; the range of CRBs is determined based on the configuration information of the current bandwidth part of the current user terminal.

[0024] Before the downlink medium access control layer (MAC) of the base station allocates frequency domain resources to the current user terminal (UE) to be allocated, it first determines the range of CRBs that can be allocated to the current user terminal according to the current bandwidth part (Bandwidth Part, BWP) configuration information of the current user terminal.

[0025] Obtain the used CRB within the range of the CRB, and convert the used CRB into the used PRB corresponding to the current BWP configuration information. Further, according to the interleaving mapping information of VRB to PRB, obtain the used VRB index value corresponding to the used PRB. According to the current BWP configuration information, the entire VRB range can be obtained. Remove the used VRB index value from the entire VRB range to obtain the unused VRB index value.

[0026] S200: Allocate a VRB for the current user terminal from unused VRB index values ​​according to a preset resource allocation protocol, and obtain an allocated VRB index value of the current user terminal.

[0027] According to the preset resource allocation protocol between the current user terminal and the base station, VRB index values ​​that meet the quantity requirement are allocated to the current user terminal from unused VRB index values, and these VRB index values ​​are marked as "allocated" to obtain the allocated VRB index values ​​of the current user terminal.

[0028] S300: Determine an allocated PRB index value based on an allocated VRB index value, and obtain an allocated CRB based on the allocated PRB index value.

[0029] According to the interleaving mapping information of VRB to PRB, the allocated VRB index value is converted into the allocated PRB index value. According to the current BWP configuration information corresponding to the user terminal, the allocated PRB index value is converted into a CRB index value with global characteristics, and these CRB index values ​​are marked as "allocated" to obtain the allocated CRB of the user terminal.

[0030] S400: updating the used CRB based on the allocated CRB to update the used VRB index value, and obtaining the updated unused VRB index value based on the updated used VRB index value.

[0031] Before allocating VRBs for the next user terminal (any one of the remaining user terminals), the allocated CRBs are added to the used CRBs to obtain updated used CRBs. Based on the above steps, an updated used VRB index value is determined according to the updated used CRBs. Within the range of all VRBs, an updated unused VRB index value is obtained according to the updated used VRB index value.

[0032] S500: Allocate a VRB for the next user terminal in the updated unused VRB index value until all initial CRBs within the range of the CRB are used, or until all user terminals are allocated VRBs.

[0033] According to the preset resource allocation protocol between the next user terminal and the base station, VRBs are allocated to the next user terminal in the updated unused VRB index values. The used VRBs are updated cyclically, and then the used CRBs are updated until all initial CRBs are marked as "allocated" (all used) within the range of CRBs that can be allocated, or until all user terminals are allocated VRBs. At this point, the allocation of virtual resource blocks VRBs is terminated.

[0034] The virtual resource block allocation method provided by the present invention marks the allocated VRB index value and the allocated PRB index value according to the allocated CRB, so as to ensure that the VRBs allocated to different user terminals do not conflict with each other in the frequency domain after being interleaved into PRBs. The present invention obtains the unused VRB index value according to the used CRB, which is conducive to timely updating the unused VRB and improving the accuracy of VRB allocation to the user terminal.

[0035] Based on the above embodiment, based on the used CRBs within the CRB range, the used virtual resource block VRB index value is obtained, and then the unused VRB index value within the CRB range is obtained, including S110 to S130, and each step is specifically as follows.

[0036] S110: Based on the used CRB, obtain the used physical resource blocks PRB.

[0037] S120: Based on the interleaving mapping information from VRB to PRB, deinterleave mapping is performed on the used PRB to obtain the used VRB index value.

[0038] S130: Acquire all VRB ranges corresponding to the CRB range, and acquire unused VRB index values ​​based on all VRB ranges and used VRB index values.

[0039] According to the BWP configuration information of the current user terminal, the used CRB is converted into the used PRB. Further, the used PRB (PrbIdx) is converted into the PRB bundle index value (PrbBundleIdx) and the resource block index value of the PRB bundle.

[0040] (1) If the current user terminal belongs to a system information block (SIB), the physical downlink control channel (PDCCH) of the current user terminal is scrambled by the system information radio network temporary identifier (SI-RNTI), and the PDCCH is carried in the cell-specific search space of the first setting type (type0) associated with the setting control resource set (Coreset 0), then the number of unit resource blocks (RBs) contained in a resource bundle (PRB bundle or VRB bundle) is fixed to L, for example, L=2. The calculation formula for the number of resource bundles (PRB bundle or VRB bundle) is: N_bundle=ceil(1.0×CoresetZero_Size / L), where N_bundle is the number of resource bundles and CoresetZero_Size is the number of common resource blocks occupied by Coreset 0.

[0041] The calculation formula of the used PRB (PrbIdx) corresponding to the used CRB (CrbIdx) is: used PrbIdx = used CrbIdx - CoresetZero_Start. CoresetZero_Start is the index value of the first starting common resource block of Coreset 0.

[0042] The calculation formula of the PRB bundle index value to which the used PRB belongs is: PrbBundleIdx=usedPrbIdx / L.

[0043] The resource block index value (RbIdxWithinBundle) of the PRB bundle is calculated as follows: RbIdxWithinBundle of the PRB bundle = used PrbIdx mod L. Wherein, mod is the remainder of the quotient of used PrbIdx and L.

[0044] (2)If the scheduling of DCI format 1-0 in the cell-specific search space other than type 0 is used by the user terminal. First, it is necessary to determine whether the cell search space other than type 0 belongs to the set control resource set (Coreset0). If the search space of the user terminal belongs to Coreset0, the calculation formula for the index value of the second starting common resource block (CommonCoresetStart) is: CommonCoresetStart = CoresetZero_Start - DlBwpStart; DlBwpStart is the index value of the starting common resource block of the downlink bandwidth part used by the current user terminal.

[0045] If the search space of the user terminal does not belong to Coreset0 (belongs to the common control resource set), CommonCoresetStart = 6 × ceil(1.0 × DlBwpStart / 6) + (1stBit1PosInCommonCoresetFreqDomainCfg - 1) × 6 - DlBwpStart; where 1stBit1PosInCommonCoresetFreqDomainCfg is the position of the first (starting from the left high bit) bit 1 of the common control resource set used by the PDCCH of the current user terminal (determined by the configuration parameters of the common control resource set of the base station).

[0046] The calculation formula for the number of resource bundles is: N_bundle = ceil(1.0 × (CoresetZero_Size + (DlBwpStart + CommonCoresetStart) mod L) / L).

[0047] The calculation formula for the number of resource blocks included in the first resource bundle (RbNumInFirstBundle) is: RbNumInFirstBundle = L - (DlBwpStart + CommonCoresetStart) mod L.

[0048] The calculation formula for the used PRB is: Used PrbIdx = Used CrbIdx - DlBwpStart - CommonCoresetStart.

[0049] If Used PrbIdx < RbNumInFirstBundle, then: PrbBundleIdx = 0, and RbIdxWithinBundle of the PRB bundle = Used PrbIdx.

[0050] If the used PrbIdx > RbNumInFirstBundle + (N_bundle - 2) × L - 1, then: PrbBundleIdx = N_bundle - 1, and RbIdxWithinBundle of the PRB bundle = used PrbIdx - (RbNumInFirstBundle + (N_bundle - 2) × L).

[0051] Except for the above two cases, PrbBundleIdx = ceil(1.0 × (used PrbIdx + 1 - RbNumInFirstBundle) / L), and RbIdxWithinBundle of the PRB bundle = (used PrbIdx - RbNumInFirstBundle) mod L.

[0052] (3)If the current user equipment belongs to the scheduling of other Physical Downlink Shared Channels (PDSCH), the number of resource blocks L included in a resource bundle is determined by the cell configuration. N_bundle = ceil(1.0 × (DlBwpSize + DlBwpStart mod L) / L). RbNumInFirstBundle = L - DlBwpStart mod L.

[0053] Used PrbIdx = used CrbIdx - DlBwpStart.

[0054] If the used PrbIdx < RbNumInFirstBundle, then PrbBundleIdx = 0, and RbIdxWithinBundle of the PRB bundle = used PrbIdx.

[0055] If the used PrbIdx > RbNumInFirstBundle + (N_bundle - 2) × L - 1, then PrbBundleIdx = N_bundle - 1, and RbIdxWithinBundle of the PRB bundle = used PrbIdx - (RbNumInFirstBundle + (N_bundle - 2) × L); Except for the above two cases, PrbBundleIdx = ceil(1.0 × (used PrbIdx + 1 - RbNumInFirstBundle) / L), and RbIdxWithinBundle of the PRB bundle = (used PrbIdx - RbNumInFirstBundle) mod L.

[0056] According to the interleaving mapping information from VRB to PRB, the PRB bundle index value and the resource block index value of the PRB bundle obtained above are deinterleaved and mapped to obtain the used VRB index value. The entire VRB range is further obtained, and the unused VRB index value is obtained according to the entire VRB range and the used VRB index value.

[0057] The present invention obtains the used VRB index value according to the used CRB, and then obtains the unused VRB index value, which is beneficial to improving the accuracy of allocating VRBs to user terminals.

[0058] Based on the above embodiment, the interleaving mapping information includes the number of resource bundles corresponding to the range of CRB, the number of unit resource blocks contained in a resource bundle and the number of rows of the interleaver of PRB and VRB, the used PRB includes the PRB bundle index value and the resource block index value of the PRB bundle, based on the VRB to PRB interleaving mapping information, the used PRB is deinterleaved and mapped, and the used VRB index value is obtained, including S121 to S123, and each step is specifically as follows.

[0059] S121: When the PRB bundle index value is not the last resource bundle index value corresponding to the number of resource bundles, determine the VRB bundle index value based on the number of resource bundles, the number of interleaver rows and the PRB bundle index value; when the PRB bundle index value is the last resource bundle index value, use the last resource bundle index value as the VRB bundle index value.

[0060] S122: When the VRB bundle index value corresponds to the first VRB bundle index, determine the used VRB index value based on the resource block index value of the PRB bundle.

[0061] S123: When the VRB bundle index value does not correspond to the first VRB bundle index value, determine the used VRB index value based on the VRB bundle index value, the number of unit resource blocks, the number of resource blocks included in the first resource bundle, and the resource block index value of the PRB bundle.

[0062] The used PRB includes a PRB bundle index value (PrbBundleIdx) and a resource block index value of the PRB bundle (RbIdxWithinBundle).

[0063] Assume that the current user terminal belongs to a system information block (System Information Block, SIB), the physical downlink control channel (Physical Downlink Control Channel, PDCCH) of the current user terminal is scrambled by the system information radio network temporary identifier (System Information Radio Network Temporary Identifier, SI-RNTI), and the PDCCH is carried in the cell-specific search space of the first setting type (type0) associated with the set control resource set (Coreset 0).

[0064] If the PRB bundle index value is the last resource bundle index value (N_bundle-1) among all resource bundles, the VRB bundle index value (VrbBundleIdx) is equal to N_bundle-1.

[0065] If the PRB bundle index value is not the last resource bundle index value (N_bundle-1) among all resource bundles, the VRB bundle index value is calculated according to the number of resource bundles, the number of interleaver rows, and the PRB bundle index value.

[0066] After the VRB bundle index value is calculated, it is determined whether the VRB bundle index value is the first VRB bundle index value (0).

[0067] If the VRB bundle index value is equal to the first VRB bundle index value (the VRB bundle index value corresponds to the first VRB bundle), that is, VrbBundleIdx=0, then the used VRB index value (VrbIdx) is determined directly according to the resource block index value (RbIdxWithinBundle) of the PRB bundle. That is, the used VrbIdx=RbIdxWithinBundle of the PRB bundle.

[0068] If the VRB bundle index value is not equal to the first VRB bundle index value (the VRB bundle index value does not correspond to the first VRB bundle), that is, VrbBundleIdx≠0, the used VRB index value is determined according to the VRB bundle index value (VrbBundleIdx), the number of unit resource blocks (L), the number of resource blocks contained in the first resource bundle (RbNumInFirstBundle) and the resource block index value of the PRB bundle (RbIdxWithinBundle). That is, the used VrbIdx=RbNumInFirstBundle+(VrbBundleIdx-1)×L+PRB bundle RbIdxWithinBundle.

[0069] The present invention determines VRB bundle index values ​​according to PRB index values, thereby improving the accuracy of determining VRB bundle index values. Further, according to VRB bundle index values, used VRB index values ​​are determined according to different situations, thereby achieving accurate deinterleaving from PRB index values ​​to VRB index values.

[0070] Based on the above embodiment, the VRB bundle index value is determined based on the number of resource bundles, the number of interleaver rows and the PRB bundle index value, including S1211 to S1214, and each step is specifically as follows.

[0071] S1211: Determine the number of columns of the interleaver based on the number of resource bundles and the number of rows of the interleaver.

[0072] S1212: Determine a row index value of a VRB based on an integer of a ratio of a PRB bundle index value to the number of columns of an interleaver.

[0073] S1213: Determine a column index value of a VRB based on a remainder of a ratio of a PRB bundle index value to the number of columns of an interleaver.

[0074] S1214: Determine a VRB bundle index value based on the number of rows of the interleaver, the row index value of the VRB, and the column index value of the VRB.

[0075] The calculation formula for the number of columns of the interleaver is: C=N_bundle / R; where C is the number of columns of the interleaver, N_bundle is the number of resource bundles, and R is the number of rows of the interleaver.

[0076] VRB row index value (VRB r ) is calculated as follows: VRB r =PrbBundleIdx / C; where PrbBundleIdx is the PRB bundle index value and C is the number of columns of the interleaver.

[0077] VRB column index value (VRB c ) is calculated as follows: VRB c =PrbBundleIdx mod C; where mod is the remainder of the quotient of PrbBundleIdx and C.

[0078] The calculation formula of VRB bundle index value (VrbBundleIdx) is: VrbBundleIdx=VRB c ×R+VRB r .

[0079] The present invention realizes accurate calculation of VRB bundle index values ​​through VRB row index values, VRB column index values ​​and the number of rows of an interleaver, thereby improving the accuracy of calculating VRB bundle index values.

[0080] Based on the above embodiment, determining the allocated PRB index value based on the allocated VRB index value includes S310 to S340, and each step is specifically as follows.

[0081] S310: Based on the allocated VRB index value, obtain a VRB bundle index value and a resource block index value of the VRB bundle.

[0082] S320: When the VRB bundle index value is not the last resource bundle index value, determine the PRB bundle index value based on the number of resource bundles, the number of interleaver rows and the VRB bundle index value; when the VRB bundle index value is the last resource bundle index value, use the last resource bundle index value as the PRB bundle index value.

[0083] S330: When the PRB bundle index value corresponds to the first PRB bundle, determine the allocated PRB index value based on the resource block index value of the VRB bundle.

[0084] S340: When the PRB bundle index value does not correspond to the first PRB bundle, determine the allocated PRB index value based on the PRB bundle index value, the number of unit resource blocks, the number of resource blocks included in the first resource bundle, and the resource block index value of the VRB bundle.

[0085] According to the allocated VRB index value (VrbIdx), the VRB bundle index value (VrbBundleIdx) and the resource block index value (RbIdxWithinBundle) of the VRB bundle are calculated. VrbBundleIdx = allocated VrbIdx / L. RbIdxWithinBundle of the VRB bundle = allocated VrbIdx mod L; where mod is the remainder of the quotient of the allocated VrbIdx and L.

[0086] If the VRB bundle index value (VrbBundleIdx) is the last resource bundle index value (N_bundle-1), the PRB bundle index value is equal to the last resource bundle index value (N_bundle-1).

[0087] If the VRB bundle index value is not the last resource bundle index value, the PRB bundle index value is determined according to the number of resource bundles (N_bundle), R and the VRB bundle index value.

[0088] Calculate the number of columns C of the interleaver: C = N_bundle / R; where R is the number of rows of the interleaver.

[0089] The row index value of PRB r ) is calculated as: r=VrbBundleIdx / C; where PrbBundleIdx is the PRB bundle index value and C is the number of columns of the interleaver.

[0090] The column index value of PRB (PRB c ) is calculated as: c = VrbBundleIdx mod C; where mod is the remainder of the quotient of PrbBundleIdx and C.

[0091] The calculation formula for the PRB bundle index value (PrbBundleIdx) is: PrbBundleIdx=PRB c ×R+PRB r .

[0092] If the PRB bundle index value is equal to the first PRB bundle index value (the PRB bundle index value corresponds to the first PRB bundle), that is, PrbBundleIdx=0, then the allocated PRB index value (PrbIdx) is determined directly according to the resource block index value (RbIdxWithinBundle) of the VRB bundle. The allocated PrbIdx=RbIdxWithinBundle of the VRB bundle.

[0093] If the PRB bundle index value is not equal to the first PRB bundle index value (the PRB bundle index value does not correspond to the first PRB bundle), the allocated PRB index value is determined according to the PRB bundle index value, L, the number of resource blocks contained in the first resource bundle (RbNumInFirstBundle), and the resource block index value of the VRB bundle. Allocated PrbIdx = RbNumInFirstBundle + (PrbBundleIdx-1)L + RbIdxWithinBundle of the VRB bundle.

[0094] The present invention determines the PRB bundle index value according to the VRB index value, thereby improving the accuracy of determining the PRB bundle index value. Further, according to the PRB bundle index value, the allocated PRB index value is determined according to the PRB bundle index value, thereby improving the accuracy of determining the PRB index value according to the VRB index value.

[0095] Based on the above embodiment, the allocated CRB is obtained based on the allocated PRB index value, including S350 to S380, and each step is specifically as follows.

[0096] S350: Acquire a current search space of a physical downlink control channel corresponding to a current user terminal.

[0097] S360: If the current search space belongs to the first setting type, the allocated CRB is obtained based on the index value of the first starting common resource block of the setting control resource set corresponding to the search space of the first setting type and the allocated PRB index value.

[0098] S370: If the current search space belongs to the second setting type, then based on the index value of the second starting common resource block of the common control resource set corresponding to the search space of the second setting type, the allocated PRB index value is updated, and based on the updated allocated PRB index value and the index value of the starting common resource block of the downlink bandwidth part used by the current user terminal, the allocated CRB is obtained.

[0099] S380: If the current search space belongs to neither the first setting type nor the second setting type, the allocated CRB is obtained based on the allocated PRB index value and the index value of the starting common resource block of the downlink bandwidth part.

[0100] The first setting type is a cell-specific search space of type 0 associated with a setting control resource set (Coreset 0). The second setting type is a cell-specific search space of non-type 0 associated with a common control resource set (CommonCoreset).

[0101] Get the current search space of the physical downlink control channel (PDCCH) corresponding to the current user terminal.

[0102] If the current search space belongs to the first setting type, the allocated CRB (CrbIdx) is determined according to the index value of the first starting common resource block (CoresetZero_Start) and the allocated PRB index value (PrbIdx). Allocated CrbIdx=allocated PrbIdx+CoresetZero_Start.

[0103] If the current search space belongs to the second setting type, the allocated PRB index value is updated according to the index value of the second starting common resource block (CommonCoresetStart). Updated allocated PrbIdx = allocated PrbIdx + CommonCoresetStart. According to the updated allocated PRB index value and the index value of the starting common resource block of the downlink bandwidth part used by the current user terminal (DlBwpStart), the allocated CRB is calculated. Allocated CrbIdx = updated allocated PrbIdx + DlBwpStart.

[0104] If the current search space belongs to neither the first setting type nor the second setting type, the allocated CRB is calculated according to the allocated PRB index value and the index value of the starting common resource block of the downlink bandwidth part. Allocated CrbIdx=Allocated PrbIdx+DlBwpStart.

[0105] The present invention determines the allocated CRB according to different types of the current search space, thereby improving the accuracy of determining the allocated CRB.

[0106] Based on the above embodiment, the range of CRB includes the CRB index upper limit and the CRB index lower limit, and the range of the common resource block CRB that can be allocated corresponding to the current user terminal to be allocated is obtained, including S140 to S150, and each step is specifically as follows.

[0107] S140: When the search space belongs to a set control resource set, the index value of the first starting public resource block corresponding to the set control resource set is used as the CRB index lower limit, and the CRB index upper limit is determined based on the index value of the first starting public resource block and the number of CRBs in the set control resource set.

[0108] S150: When the search space belongs to a common control resource set, the lower limit of the CRB index is determined based on the index value of the starting common resource block of the downlink bandwidth part and the position of the first bit 1 of the common control resource set, and the upper limit of the CRB index is determined based on the index value of the starting common resource block of the downlink bandwidth part, the position of the first bit 1 of the common control resource set and the number of CRBs in the set control resource set.

[0109] S160: When the search space belongs neither to the set control resource set nor to the public control resource set, the lower limit of the CRB index is determined based on the index value of the starting public resource block of the downlink bandwidth part, and the upper limit of the CRB index is determined based on the index value of the starting public resource block of the downlink bandwidth part and the number of CRBs in the public control resource set.

[0110] (1) If the current user terminal belongs to the SIB, its PDCCH is scrambled by SI-RNTI, and the PDCCH is carried in the search space of the first setting type (type0) related to the setting control resource set (Coreset 0). Then the range of CRBs that can be used for this physical downlink shared channel (PDSCH) transmission is the CRB range where Coreset 0 is located. The range of CRBs includes the CRB index upper limit (AvailableCrbUpperLimit) and the CRB index lower limit (AvailableCrbLowerLimit).

[0111] AvailableCrbLowerLimit=CoresetZero_Start, where CoresetZero_Start is the index value of the first starting common resource block.

[0112] AvailableCrbUpperLimit = CoresetZero_Start + CoresetZero_Size - 1, where CoresetZero_Size is the number of CRBs in the control resource set.

[0113] (2) If the PDCCH corresponding to the current user terminal is carried in the cell search space of the second setting type (non-type0) related to Coreset 0, the range of CRBs that can be allocated to the current user terminal is still calculated according to the CRB range of Coreset 0.

[0114] If the PDCCH corresponding to the current user terminal is carried in the cell search space of the second setting type (non-type0) of the common control resource set (common coreset), then the range of CRBs that can be used for this PDSCH transmission is the CRB range where the common control resource set is located.

[0115] AvailableCrbLowerLimit=6×ceil(1.0×DlBwpStart / 6)+(1stBit1PosInCommonCoresetFreqDomainCfg-1)×6.

[0116] AvailableCrbUpperLimit=6×ceil(1.0×DlBwpStart / 6)+(1stBit1PosInCommonCoresetFreqDomainCfg-1)×6+CoresetZero_Size-1.

[0117] Among them, AvailableCrbLowerLimit is the lower limit of the CRB index, ceil() is the minimum integer, DlBwpStart is the index value of the starting common resource block of the downlink bandwidth part used by the current user terminal, and 1stBit1PosInCommonCoresetFreqDomainCfg is the position of the first bit 1 of the common control resource set used by the PDCCH of the current user terminal.

[0118] (3) When the downlink medium access control layer (MAC) scheduler of the base station schedules PDSCH transmissions other than the above cases (the search space belongs neither to the set control resource set nor to the common control resource set), the CRB range that can be allocated is the CRB within the BWP range used by the current user terminal.

[0119] AvailableCrbLowerLimit=DlBwpStart.

[0120] AvailableCrbUpperLimit=DlBwpStart+DlBwpSize-1.

[0121] Among them, DlBwpSize is the number of CRBs in the common control resource set occupied by the downlink bandwidth used by the current user terminal.

[0122] The present invention determines the range of CRBs that can be allocated according to different search space types, thereby improving the accuracy of determining the range of CRBs.

[0123] The following is a description of the virtual resource block allocation device provided by the present invention. The virtual resource block allocation device described below and the virtual resource block allocation method described above can be referred to each other.

[0124] like Figure 3 As shown, a virtual resource block allocation device is characterized in that it includes: a first acquisition module 301, which is used to obtain the range of common resource blocks CRB that can be allocated corresponding to the current user terminal to be allocated, and based on the used CRBs within the range of CRBs, obtain the used virtual resource block VRB index value, and then obtain the unused VRB index value within the range of CRBs.

[0125] The first allocation module 302 is used to allocate a VRB to the current user terminal in the unused VRB index value according to the preset resource allocation protocol, and obtain the allocated VRB index value of the current user terminal, and the range of the CRB is determined based on the configuration information of the current bandwidth part of the current user terminal.

[0126] The second acquisition module 303 is configured to determine an allocated PRB index value based on the allocated VRB index value, and acquire an allocated CRB based on the allocated PRB index value.

[0127] The updating module 304 is configured to update the used CRB based on the allocated CRB to update the used VRB index value, and obtain the updated unused VRB index value based on the updated used VRB index value.

[0128] The second allocation module 305 is configured to allocate a VRB to the next user terminal in the updated unused VRB index value until all initial CRBs within the range of the CRBs are used, or until all user terminals are allocated VRBs.

[0129] The virtual resource block allocation method provided by the present invention marks the allocated VRB index value and the allocated PRB index value according to the allocated CRB, so as to ensure that the VRBs allocated to different user terminals do not conflict with each other in the frequency domain after being interleaved into PRBs. The present invention obtains the unused VRB index value according to the used CRB, which is conducive to timely updating the unused VRB and improving the accuracy of VRB allocation to the user terminal.

[0130] In one embodiment, the first acquisition module 301 is used to: acquire the used physical resource block PRB based on the used CRB; deinterleave and map the used PRB based on the interleaving mapping information from VRB to PRB to acquire the used VRB index value; acquire the entire VRB range corresponding to the CRB range, and acquire the unused VRB index value based on the entire VRB range and the used VRB index value.

[0131] In one embodiment, the interleaving mapping information includes the number of resource bundles corresponding to the range of CRBs, the number of unit resource blocks contained in a resource bundle, and the number of rows of interleavers of PRBs and VRBs. The used PRBs include a PRB bundle index value and a resource block index value of the PRB bundle. The first acquisition module 301 is used to: when the PRB bundle index value is not the last resource bundle index value corresponding to the number of resource bundles, determine the VRB bundle index value based on the number of resource bundles, the number of rows of the interleaver, and the PRB bundle index value; when the PRB bundle index value is the last resource bundle index value, use the last resource bundle index value as the VRB bundle index value; when the VRB bundle index value corresponds to the first VRB bundle, determine the used VRB index value based on the resource block index value of the PRB bundle; when the VRB bundle index value does not correspond to the first VRB bundle, determine the used VRB index value based on the VRB bundle index value, the number of unit resource blocks, the number of resource blocks contained in the first resource bundle, and the resource block index value of the PRB bundle.

[0132] In one embodiment, the second acquisition module 303 is used to: acquire a VRB bundle index value and a resource block index value of the VRB bundle based on an allocated VRB index value; when the VRB bundle index value is not the last resource bundle index value, determine the PRB bundle index value based on the number of resource bundles, the number of rows of the interleaver and the VRB bundle index value; when the VRB bundle index value is the last resource bundle index value, use the last resource bundle index value as the PRB bundle index value; when the PRB bundle index value corresponds to the first PRB bundle, determine the allocated PRB index value based on the resource block index value of the VRB bundle; when the PRB bundle index value does not correspond to the first PRB bundle, determine the allocated PRB index value based on the PRB bundle index value, the number of unit resource blocks, the number of resource blocks contained in the first resource bundle and the resource block index value of the VRB bundle.

[0133] In one embodiment, the second acquisition module 303 is used to: acquire the current search space of the physical downlink control channel corresponding to the current user terminal; if the current search space belongs to the first setting type, then based on the index value of the first starting common resource block of the setting control resource set corresponding to the search space of the first setting type and the allocated PRB index value, acquire the allocated CRB; if the current search space belongs to the second setting type, then based on the index value of the second starting common resource block of the common control resource set corresponding to the search space of the second setting type, update the allocated PRB index value, and based on the updated allocated PRB index value and the index value of the starting common resource block of the downlink bandwidth part used by the current user terminal, acquire the allocated CRB; if the current search space belongs to neither the first setting type nor the second setting type, then based on the allocated PRB index value and the index value of the starting common resource block of the downlink bandwidth part, acquire the allocated CRB.

[0134] In one embodiment, the range of the CRB includes a CRB index upper limit and a CRB index lower limit, and the first acquisition module 301 is used to: when the search space belongs to a set control resource set, use the index value of the first starting common resource block corresponding to the set control resource set as the CRB index lower limit, and determine the CRB index upper limit based on the index value of the first starting common resource block and the number of CRBs in the set control resource set; when the search space belongs to a public control resource set, determine the CRB index lower limit based on the index value of the starting common resource block of the downlink bandwidth part and the position of the first bit 1 of the public control resource set, and determine the CRB index upper limit based on the index value of the starting common resource block of the downlink bandwidth part, the position of the first bit 1 of the public control resource set, and the number of CRBs in the set control resource set; when the search space belongs to neither the set control resource set nor the public control resource set, determine the CRB index lower limit based on the index value of the starting common resource block of the downlink bandwidth part, and determine the CRB index upper limit based on the index value of the starting common resource block of the downlink bandwidth part and the number of CRBs in the public control resource set.

[0135] In one embodiment, the first acquisition module 301 is used to: determine the number of columns of the interleaver based on the number of resource bundles and the number of rows of the interleaver; determine the row index value of the VRB based on the integer of the ratio of the PRB bundle index value to the number of columns of the interleaver; determine the column index value of the VRB based on the remainder of the ratio of the PRB bundle index value to the number of columns of the interleaver; determine the VRB bundle index value based on the number of rows of the interleaver, the row index value of the VRB and the column index value of the VRB.

[0136] Figure 4 An example of a physical structure diagram of an electronic device is shown in FIG. Figure 4As shown, the electronic device may include: a processor 410, a communication interface 420, a memory 430 and a communication bus 440, wherein the processor 410, the communication interface 420 and the memory 430 communicate with each other through the communication bus 440. The processor 410 may call the logic instructions in the memory 430 to execute a method for allocating virtual resource blocks, the method comprising: obtaining a range of common resource blocks CRBs that can be allocated corresponding to the current user terminal to be allocated, obtaining a used virtual resource block VRB index value based on the used CRBs within the range of the CRBs, and then obtaining an unused VRB index value within the range of the CRBs, wherein the range of the CRBs is determined based on the configuration information of the current bandwidth portion of the current user terminal; allocating VRBs to the current user terminal in the unused VRB index values ​​according to a preset resource allocation protocol, Obtaining an allocated VRB index value of a current user terminal; determining an allocated PRB index value based on the allocated VRB index value, and obtaining an allocated CRB based on the allocated PRB index value; updating a used CRB based on the allocated CRB to update the used VRB index value, and obtaining an updated unused VRB index value based on the updated used VRB index value; allocating a VRB to a next user terminal in the updated unused VRB index value until all initial CRBs within the range of the CRB are used, or until all user terminals are allocated VRBs.

[0137] In addition, the logic instructions in the above-mentioned memory 430 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.

[0138] In another aspect, the present invention further provides a non-transitory computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the method for allocating virtual resource blocks provided by the above methods is implemented, the method comprising: obtaining a range of common resource blocks CRBs that can be allocated corresponding to the current user terminal to be allocated, obtaining a used virtual resource block VRB index value based on the used CRBs within the range of CRBs, and then obtaining an unused VRB index value within the range of CRBs, wherein the range of CRBs is determined based on the configuration information of the current bandwidth portion of the current user terminal; and according to a preset resource allocation protocol, in the unused VRBs, B index value is allocated to the current user terminal, and the allocated VRB index value of the current user terminal is obtained; the allocated PRB index value is determined based on the allocated VRB index value, and the allocated CRB is obtained based on the allocated PRB index value; the used CRB is updated based on the allocated CRB to update the used VRB index value, and the updated unused VRB index value is obtained based on the updated used VRB index value; the VRB is allocated to the next user terminal in the updated unused VRB index value until all initial CRBs within the range of the CRB are used, or until all user terminals are allocated VRBs.

[0139] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.

[0140] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.

[0141] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for allocating virtual resource blocks, characterized in that: include: Acquire a range of common resource blocks (CRBs) that can be allocated corresponding to the current user terminal to be allocated, acquire a used virtual resource block (VRB) index value based on a used CRB within the range of the CRB, and then acquire an unused VRB index value within the range of the CRB, wherein the range of the CRB is determined based on configuration information of a current bandwidth portion of the current user terminal; Allocate a VRB for the current user terminal from the unused VRB index values ​​according to a preset resource allocation protocol to obtain an allocated VRB index value of the current user terminal; Determine an allocated PRB index value based on the allocated VRB index value, and obtain an allocated CRB based on the allocated PRB index value; updating the used CRB based on the allocated CRB to update the used VRB index value, and obtaining an updated unused VRB index value based on the updated used VRB index value; The VRB is allocated to the next user terminal in the updated unused VRB index value until all initial CRBs within the range of the CRB are used, or until all user terminals are allocated the VRB.

2. The method for allocating virtual resource blocks according to claim 1, characterized in that: The acquiring, based on the used CRBs within the range of the CRBs, the used virtual resource block VRB index values, and then acquiring the unused VRB index values ​​within the range of the CRBs, comprises: Based on the used CRB, obtaining a used physical resource block PRB; Based on the interleaving mapping information from VRB to PRB, deinterleave mapping is performed on the used PRB to obtain the used VRB index value; All VRB ranges corresponding to the CRB range are obtained, and based on the all VRB ranges and the used VRB index values, the unused VRB index values ​​are obtained.

3. The method for allocating virtual resource blocks according to claim 2, characterized in that: The interleaving mapping information includes the number of resource bundles corresponding to the range of the CRB, the number of unit resource blocks contained in a resource bundle, and the number of rows of the interleaver of the PRB and the VRB, the used PRB includes a PRB bundle index value and a resource block index value of the PRB bundle, and the deinterleaving mapping of the used PRB based on the interleaving mapping information from VRB to PRB to obtain the used VRB index value includes: When the PRB bundle index value is not the last resource bundle index value corresponding to the number of resource bundles, determining a VRB bundle index value based on the number of resource bundles, the number of rows of the interleaver and the PRB bundle index value; when the PRB bundle index value is the last resource bundle index value, using the last resource bundle index value as the VRB bundle index value; When the VRB bundle index value corresponds to the first VRB bundle, determining the used VRB index value based on the resource block index value of the PRB bundle; When the VRB bundle index value does not correspond to the first VRB bundle, the used VRB index value is determined based on the VRB bundle index value, the number of unit resource blocks, the number of resource blocks included in the first resource bundle, and the resource block index value of the PRB bundle.

4. The method for allocating virtual resource blocks according to claim 3, characterized in that: The determining the allocated PRB index value based on the allocated VRB index value comprises: Based on the allocated VRB index value, obtaining a VRB bundle index value and a resource block index value of the VRB bundle; When the VRB bundle index value is not the last resource bundle index value, determining a PRB bundle index value based on the number of resource bundles, the number of rows of the interleaver and the VRB bundle index value; when the VRB bundle index value is the last resource bundle index value, using the last resource bundle index value as the PRB bundle index value; When the PRB bundle index value corresponds to the first PRB bundle, determining the allocated PRB index value based on the resource block index value of the VRB bundle; When the PRB bundle index value does not correspond to the first PRB bundle, the allocated PRB index value is determined based on the PRB bundle index value, the number of unit resource blocks, the number of resource blocks included in the first resource bundle and the resource block index value of the VRB bundle.

5. The method for allocating virtual resource blocks according to claim 4, characterized in that: The acquiring the allocated CRB based on the allocated PRB index value includes: Acquire a current search space of a physical downlink control channel corresponding to the current user terminal; If the current search space belongs to a first setting type, acquiring the allocated CRB based on the index value of the first starting common resource block of the setting control resource set corresponding to the search space of the first setting type and the allocated PRB index value; If the current search space belongs to the second setting type, updating the allocated PRB index value based on the index value of the second starting common resource block of the common control resource set corresponding to the search space of the second setting type, and obtaining the allocated CRB based on the updated allocated PRB index value and the index value of the starting common resource block of the downlink bandwidth part used by the current user terminal; If the current search space belongs neither to the first setting type nor to the second setting type, the allocated CRB is acquired based on the allocated PRB index value and the index value of the starting common resource block of the downlink bandwidth part.

6. The method for allocating virtual resource blocks according to claim 5, characterized in that: The range of the CRB includes a CRB index upper limit and a CRB index lower limit, and the obtaining of the range of the common resource block CRB that can be allocated corresponding to the current user terminal to be allocated includes: When the search space belongs to the set control resource set, taking the index value of the first starting common resource block corresponding to the set control resource set as the CRB index lower limit, and determining the CRB index upper limit based on the index value of the first starting common resource block and the number of CRBs in the set control resource set; When the search space belongs to the public control resource set, the CRB index lower limit is determined based on the index value of the starting public resource block of the downlink bandwidth part and the position of the first bit 1 of the public control resource set, and the CRB index upper limit is determined based on the index value of the starting public resource block of the downlink bandwidth part, the position of the first bit 1 of the public control resource set and the number of CRBs in the set control resource set; When the search space belongs neither to the set control resource set nor to the common control resource set, the CRB index lower limit is determined based on the index value of the starting common resource block of the downlink bandwidth part, and the CRB index upper limit is determined based on the index value of the starting common resource block of the downlink bandwidth part and the number of CRBs in the common control resource set.

7. The method for allocating virtual resource blocks according to claim 3, characterized in that: The determining the VRB bundle index value based on the number of the resource bundles, the number of rows of the interleaver and the PRB bundle index value comprises: Determining the number of columns of the interleaver based on the number of the resource bundles and the number of rows of the interleaver; Determine a row index value of a VRB based on an integer of a ratio of the PRB bundle index value to the number of columns of the interleaver; Determining a column index value of a VRB based on a remainder of a ratio of the PRB bundle index value to the number of columns of the interleaver; The VRB bundle index value is determined based on the number of rows of the interleaver, the row index value of the VRB, and the column index value of the VRB.

8. A virtual resource block allocation device, characterized in that: include: A first acquisition module is used to acquire a range of common resource blocks CRBs that can be allocated corresponding to the current user terminal to be allocated, acquire a used virtual resource block VRB index value based on the used CRBs within the range of the CRBs, and then acquire an unused VRB index value within the range of the CRBs, wherein the range of the CRBs is determined based on the configuration information of the current bandwidth part of the current user terminal; A first allocation module, configured to allocate a VRB to the current user terminal from the unused VRB index values ​​according to a preset resource allocation protocol, and obtain an allocated VRB index value of the current user terminal; A second acquisition module, configured to determine an allocated PRB index value based on the allocated VRB index value, and acquire an allocated CRB based on the allocated PRB index value; An updating module, configured to update the used CRB based on the allocated CRB to update the used VRB index value, and obtain an updated unused VRB index value based on the updated used VRB index value; The second allocation module is configured to allocate the VRB to the next user terminal in the updated unused VRB index value until all initial CRBs within the range of the CRB are used, or until all user terminals are allocated the VRB.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the method for allocating virtual resource blocks according to any one of claims 1 to 7 is implemented.

10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method for allocating virtual resource blocks according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Method, device and base station for allocation of PRB resources

    CN104394592A

  • Wireless communication device and wireless communication method

    CN110034888A

  • Resource information determination method and device, storage medium and user equipment

    CN110972270A

  • Method for determining frequency domain position of control resource set and related equipment

    CN111385901A

  • Resource allocation method and device

    IN201937042691A