Transmission of set of code blocks using two carriers and processing of code blocks to adapt corresponding resources
By using cross-polarized antennas and code block processing technology, the problem of adaptive code block mapping in carrier aggregation is solved, achieving efficient data transmission and spectrum utilization, and improving the data rate and resource management efficiency of cellular communication networks.
Patent Information
- Application Number
- CN202380100294.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-10
- Publication Date
- 2026-02-03
AI Technical Summary
In cellular communication networks, existing technologies struggle to effectively utilize carrier aggregation to increase data rates, especially when multiple cell carriers need to be processed in parallel. Ensuring adaptive mapping of code blocks and efficient resource utilization remains an unresolved issue.
By using cross-polarized antennas and code block processing techniques, appropriate resources are determined for code block sets on different carriers to ensure that each code block is transmitted on only one carrier. Furthermore, the scheduler optimizes resource allocation and modulation and coding schemes to avoid cross-carrier mapping of code blocks.
It achieves efficient data transmission under carrier aggregation, reduces resource waste, improves data rate and spectrum utilization efficiency, and supports flexible scheduling and frequency resource management across multiple carriers.
Smart Images

Figure CN121464591A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The following exemplary embodiments relate to wireless communication, and use at least two different carriers for transmission of data. BACKGROUND
[0002] In a cellular communication network, one base station can provide one or more cells. One cell can serve one carrier, e.g., in time division duplex (TDD), one bi-directional carrier in a pair of frequency band operation; and in frequency division duplex (FDD), one carrier in a downlink (DL) of a pair of frequency band operation, and one carrier in an uplink (UL). Additionally, carrier aggregation (CA) techniques can be utilized to enable multiple cells' carriers to be aggregated together towards one user equipment (UE) to increase data rate. SUMMARY
[0003] The scope of protection sought and provided by the various embodiments of the invention is set forth by the independent claims. The embodiments and features that are not within the scope of the independent claims, if any, are to be interpreted as examples useful in understanding the various embodiments of the invention. A base station, or any other suitable radio unit in a wireless digital communication network (including multiple antennas for enabling wireless communication of data transmission), can then use cross-polarized antennas to enable independent transmission paths for data transmission.
[0004] According to a first aspect, there is provided an apparatus comprising means for: receiving a transport block from a medium access control layer, the transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determining a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; performing processing of at least one code block in the first set to adapt at least a subset of the code blocks of the first set to resources of their respective first carrier; performing processing of the transport block, the processing comprising: mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmitting the transport block using the first carrier and the second carrier.
[0005] In some example embodiments according to the first aspect, the means comprises at least one processor and at least one memory, the at least one memory storing instructions that, when executed by the at least one processor, cause the performance of the apparatus.
[0006] According to a second aspect, there is provided an apparatus comprising at least one processor and at least one memory storing instructions that, when executed by the at least one processor, are configured to cause the apparatus at least to: receive, from a medium access control layer, a transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determine a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; perform processing of at least one code block of the first set to adapt at least a subset of the code blocks of the first set to resources of their respective first carrier; perform processing of the transport block, the processing comprising: mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmitting the transport block using the first carrier and the second carrier.
[0007] According to a third aspect, there is provided a method comprising: receiving, from a medium access control layer, a transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determining a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; performing processing of at least one code block of the first set to adapt at least a subset of the code blocks of the first set to resources of their respective first carrier; performing processing of the transport block, the processing comprising: mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmitting the transport block using the first carrier and the second carrier.
[0008] In some example embodiments according to the third aspect, the method is a computer- implemented method.
[0009] According to a fourth aspect, there is provided a computer program comprising instructions which, when executed by an apparatus, cause the apparatus at least to perform the following: receiving, from a medium access control layer, a transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determining a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; performing processing of at least one code block of the first set to adapt at least a subset of the code blocks of the first set to resources of their respective first carrier; performing processing of the transport block, the processing comprising: mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmitting the transport block using the first carrier and the second carrier.
[0010] According to a fifth aspect, there is provided a computer program comprising instructions stored thereon for performing at least the following: receiving a transport block from a medium access control layer, the transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determining a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; performing processing of at least one code block of the first set to adapt at least a subset of the code blocks of the first set to resources of their respective first carrier; performing processing of the transport block, the processing comprising: mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmitting the transport block using the first carrier and the second carrier.
[0011] According to a sixth aspect, there is provided a non-transitory computer readable medium comprising program instructions that, when executed by an apparatus, cause the apparatus to perform at least the following: receiving a transport block from a medium access control layer, the transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determining a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; performing processing of at least one code block of the first set to adapt at least a subset of the code blocks of the first set to resources of their respective first carrier; performing processing of the transport block, the processing comprising: mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmitting the transport block using the first carrier and the second carrier.
[0012] According to a seventh aspect, there is provided a non-transitory computer readable medium comprising program instructions stored thereon for performing at least the following: receiving a transport block from a medium access control layer, the transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determining a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; performing processing of at least one code block of the first set to adapt at least a subset of the code blocks of the first set to resources of their respective first carrier; performing processing of the transport block, the processing comprising: mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmitting the transport block using the first carrier and the second carrier.
[0013] According to an eighth aspect, there is provided a computer readable medium comprising program instructions that, when executed by the apparatus, cause the apparatus to perform at least the following: receive a transport block from a medium access control layer, the transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determine a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; perform processing of at least one code block of the first set to adapt at least a subset of the code blocks of the first set to resources of their respective first carrier; perform processing of the transport block, the processing comprising: mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmitting the transport block using the first carrier and the second carrier.
[0014] According to a ninth aspect, there is provided a computer readable medium comprising program instructions stored thereon for performing at least the following: receiving a transport block from a medium access control layer, the transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determining a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; performing processing of at least one code block of the first set to adapt at least a subset of the code blocks of the first set to resources of their respective first carrier; performing processing of the transport block, the processing comprising: mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmitting the transport block using the first carrier and the second carrier. BRIEF DESCRIPTION OF DRAWINGS
[0015] In the following, the application will be described in more detail with reference to embodiments and to accompanying drawings, in which:
[0016] Figure 1 Example embodiments of a radio access network are shown.
[0017] Figure 2 Example embodiments of parallel processing of code blocks are shown.
[0018] Figure 3 Example embodiments of processing of transport block processing are shown.
[0019] Figure 4A And Figure 4B Example embodiments in which code blocks are mapped so that no code block spreads across different carriers are shown.
[0020] Figure 4CA flow diagram illustrating processing a transport block according to an example embodiment is shown.
[0021] Figure 5 An example embodiment is shown in which a transport block is mapped to code blocks and the code blocks are mapped to resource blocks.
[0022] Figure 6 A flow diagram illustrating an example embodiment of code block segmentation is shown.
[0023] Figure 7 An example embodiment of an apparatus is shown. DETAILED DESCRIPTION
[0024] The following embodiments are exemplary. It should be noted that the description herein can use "a", "an", or "the" preceding several items and refers to those items individually as well as to the combination of those items. Unless otherwise indicated, the use of these terms in the description are not intended to show that there is only one item, but rather that there are one or more items. Not all components, features, structures, characteristics, etc. described and illustrated herein need be included in a particular embodiment or embodiments. The following embodiments are exemplary. Although the specification in text can mention "an", "one", or "some" implementation(s), this does not necessarily mean that each
[0025] As used in this application, the term "circuitry" refers to all of the following: (a) hardware-only circuitry such as only analog and / or digital circuitry; (b) a combination of circuits and software (and / or firmware), such as (as applicable): (i) a combination of processor(s) or (ii) portions of storage medium(s) that include both software and data; (c) software, such as some executable instructions; and (d) circuitry, such as some or all of the processor(s) based on some or all of the software, including some or all of the software. In some embodiments, circuitry can include, among other things, the processor(s) of the electronic system or a portion thereof and unique storage mediums, such as some RAM and / or ROM that include the software and / or firmware. As will be evident to those of skill in the art, the software when loaded into the processor(s) and executed, causes the processor(s) to perform the functions of the application. The application also can be embodied in computer- readable storage medium(s) containing combinations of instructions that, when executed by the processor(s), implement the functions of the application. The software can be initially stored on a storage medium such as one of the storage devices shown in the figures or a memory within the processor(s) shown in the figures. Since the software causes the processor(s) to operate in a specific manner, the software can be described as implementing the functions inherent to the application. As used herein, the term "processor" includes one or more processors that are capable of executing a software module or code or one or more portions of it. As used herein, the term "storage medium" includes one or more storage media capable of storing the data, code and / or instructions for execution by the processor(s). As used herein, the term "circuitry" also includes, in addition to circuits and hardware (e.g., a combination of circuits and / or processor(s) that include some or all of the software), circuits such as a microprocessor or a portion of a microprocessor that requires software or firmware for operation, even if the software or firmware is not physically present.
[0026] The techniques and methods described herein can be implemented by various means. For example, these techniques can be implemented in hardware (one or more devices), firmware (one or more devices), software (one or more modules), or combinations thereof. For a hardware implementation, the apparatus(es) of an embodiment can be implemented within one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), graphics processing units (GPUs), processors, controllers, micro-controllers, microprocessors, other electronic units designed to perform the functions described herein, a combination thereof, or the like. For firmware or software, the implementation can be
[0027] Embodiments described herein can be implemented within a communication system such as at least one of: a Long Term Evolution (LTE), LTE-Advanced, a Fifth Generation (5G) mobile or cellular communications system, an Advanced 5G and / or 6G. The embodiments are not, however, limited to the system given as an example, but a person skilled in the art can apply the solution to other communications systems having necessary properties.
[0028] Figure 1 Examples depicting simplified system architectures show some elements and functional entities, which are logical units, their implementation can differ from what is shown in the figures. Figure 1 The connections in the above-described systems are logical connections; the actual physical connections can be different. It is apparent to a person skilled in the art that the system can also comprise other functions and structures than those shown in the Figure 1 above, without departing from the scope of the present application. Figure 1 The example of Figure 1 shows part of one example embodiment of a radio access network.
[0029] Figure 1Terminal devices 100 and 102 are shown, which are configured to make wireless connection with a base station (such as an (e / g)NodeB) 104 providing a cell on one or more communication channels within the cell. The terminal devices 100 and 102 can also be referred to as mobile devices, or user equipments (UEs), or user terminals, etc. The base station 104 can also be referred to as a node, or an access node, or any other type of interfacing device, including a relay, capable of operating in a wireless environment. The physical link from the terminal devices to the (e / g)NodeB is called uplink (UL) or reverse link, and the physical link from the (e / g)NodeB to the terminal devices is called downlink (DL) or forward link. It should be understood that the (e / g)NodeB or its functionalities can be implemented by using any access node, host, server or access point, etc. entity suitable for such a use. It should be noted that although one cell is discussed in the present exemplary embodiments, a plurality of cells can be provided by one access node in some example embodiments for the ease of explanation.
[0030] The communication system can comprise more than one (e / g)NodeB, in which case the (e / g)NodeBs can also be configured to communicate with one another, e.g., directly or through a wireline or wireless backhaul connection. These connections can be used for signaling purposes among the (e / g)NodeBs. A (e / g)NodeB is a computing device configured to control the radio resources of communication systems it has been coupled to. A (e / g)NodeB comprises or is coupled to a transceiver. From the transceiver of a (e / g)NodeB, a connection is provided to an antenna unit, which establishes the bi- directional radio link to user equipment (UE). The antenna unit can comprise a plurality of antennas or antenna elements. The (e / g)NodeB is also connected to a core network 110 (CN or Next Generation Core NGC). Depending on the system, the counterpart on the CN side can be a serving gateway (S-GW, routing and forwarding user data packets), a packet data network gateway (P-GW) for providing connectivity of terminal devices with external packet data networks, or a mobile management entity (MME), etc.
[0031] A user equipment (UE) illustrates one type of apparatus to which resources on the air interface are allocated and assigned, and thus any features described herein for a UE can be implemented with a corresponding apparatus, such as a relay node. One example of such a relay node is a layer 3 relay (self-backhauled relay) pointing to a base station. Another example of such a relay node is a layer 2 relay. Such a relay node can comprise a UE part and a distributed unit (DU) part. For example, a CU (centralized unit) can coordinate DU operations via an FlAP interface.
[0032] A UE can refer to a portable computing device that includes a wireless mobile communication device operated in with or without a subscriber identity module (SIM) or embedded SIM (eSIM). The UE can also be a device having capability to operate in an Internet of Things (IoT) network, which is a scenario in which objects are provided with the ability to transfer data over a network without requiring human-to-human or human-to-computer interaction. The UE can also utilize cloud computing. The UE (or in some embodiments a layer 3 relay node) is configured to perform one or more of the user equipment functions. It should be noted that the UE can also be a vehicle or a home electric appliance that is capable of using cellular communication.
[0033] Additionally, although the apparatus has been depicted as a single entity, different units, processors and / or memory units (not all shown in Figure 1 ) can be implemented.
[0034] The communication system can further be able to communicate with other networks, such as a public switched telephone network or the Internet 112, and / or to utilize services provided by them. The communication network can also be able to support the usage of cloud services, wherein, e.g., at least part of the core network operations can be carried out as a cloud service (this is depicted in Figure 1 by "cloud" 114). The communication system can also comprise a central control entity or similar, providing facilities for networks of different operators to cooperate, e.g., in spectrum sharing. It is also possible that the node operations will be distributed between a plurality of servers, nodes, or hosts. The application of cloudRAN architecture enables RAN real-time functions to be carried out at the RAN side (in the distributed unit, DU 104), while non-real-time functions can be carried out in a centralized manner (in the centralized unit, CU 108).
[0035] It should be noted that the depicted system is one example of a part of a radio access system, and the system can comprise a plurality of (e / g)NodeBs, Ues can have access to multiple radio cells, and the system can also comprise other apparatus, such as physical layer relay nodes or other network elements. Additionally, within the geographical area of a radio communication system, a plurality of different types of radio cells as well as a plurality of radio cells can be provided. A radio cell can be a macro cell (or umbrella cell), which is typically a large size cell with a large coverage area that can extend several kilometers, or a smaller cell such as a micro cell, femto cell, or pico cell. Figure 1 The (e / g)NodeB in may provide any type of these cells. The cellular radio system can be implemented as a multi-layer network comprising a plurality of types of cells. In some example embodiments, in a multi-layer network, one access node provides one or more types of cells, and thus a plurality of (e / g)NodeBs is needed to provide such a network structure.
[0036] Although different cellular communication technologies allow for CA towards UEs to be used for increased data rates, this aggregation can be achieved by operating separate cells in parallel and thus can still be considered as one cell per carrier. Therefore, hardware (HW) resources for handling layer 1 (LI) can be deployed per carrier and transport blocks (TBs) to be processed for transmission and reception can be processed in parallel HW units, which can also be considered as logical units. In CA, data to be transmitted can be divided into cell-specific (in other words, carrier-specific) transport blocks (TBs) that can be processed independently for transmission. With independent TBs per carrier, parallel processing of TBs can be considered as naturally supported. However, in the case where a TB is to be mapped to a cell with multiple carriers and these carriers are located on different frequency blocks, further processing is needed for parallelization. Different frequency blocks can be contiguous or non-contiguous. Therefore, one TB will be mapped to two or more carriers for transmission.
[0037] Figure 2A simplified example embodiment showing parallel processing of code blocks (CBs) is shown. In this example embodiment, a TB 210 is received from the medium access control (MAC) layer. Then, a cyclic redundancy check (CRC) is computed and appended to the TB 210, as shown in step 215, generating a bit set 220 comprising the TB 210 and the CRC. In other words, the TB 210 can comprise a number of n bits, and the CRC can comprise a number of m bits. Thus, the bit set 220 comprises a number of n+m bits. Then, the bit set 220 is subjected to CB segmentation, as shown in step 230. For the segmentation, it can be sufficient to know the size of the TB to be able to determine the CBs. Since the receiver is also able to determine the location of the CBs based on the scheduling information, there is no need to sequentially go through the code blocks from the first to the last to find the next CB. Thus, the TB is divided into CBs 232, 234, 236, and 238 after low density parity check (LPDC) encoding is performed, as shown in step 240. In this example embodiment, each CB 232, 234, 236, and 238 is independently encoded, which allows parallelization of the channel coding in the transmitter, and the corresponding decoding in the receiver. Thus, the obtained encoded CBs 242, 244, 246, and 248 can be concatenated, as shown in step 250, for further processing for transmission. This can be understood as one logical operation, and the subsequent steps can alternatively be implemented individually for each encoded code block or each group of encoded code blocks. In this example embodiment, the concatenation results in an encoded TB 260 for which scrambling 265 is performed to obtain a scrambled TB 270. Then, in step 275, modulation, layer, and port mapping is performed after the modulation symbols per antenna port 280 per layer are obtained. Then, in step 285, mapping to resource blocks (RBs) is performed to obtain modulation symbols per carrier 290 for transmission.
[0038] Figure 3 The processing of a TB received from the MAC layer is shown in example embodiments shown in two different scenarios 300 and 350. In scenario 300, there is parallel processing, which can be used when CA is utilized. In scenario 350, the processing for two different carriers is jointly performed when CA is used with cells aggregating different carriers. Different carriers can be understood as being on different radio frequencies. In other words, there can be multiple frequency blocks (such as non-contiguous frequency blocks) mapped to one cell, and thus the processing can be jointly performed.
[0039] In scenario 300, two separate TBs 310 and 315 are processed in two parallel processes, one for the first carrier 340, which is (transmit) Tx, and one for the second carrier 345, which is also a Tx carrier. The size of TB 310 can be the same as the size of TB 315, or can be different. In the present example embodiment, TB 310 and TB 315 carry different sets of data bits. Thus, for carrier 340, TB 310 is processed by performing LI processing 320 and RB mapping 330; and for carrier 345, TB 315 is processed by performing LI processing 325 and RB mapping 335.
[0040] In scenario 350, TB 360 for carrier 340 and for carrier 345 are processed together. In the present example embodiment, TB 360 has a size equal to or substantially corresponding to the combined size of TB 310 and TB 315. Thus, TB 310 is processed by performing LI processing 370 and RB mapping 380. In this scenario, it should also be ensured that each CB is mapped to one contiguous spectrum block, to allow parallel encoding and decoding processing on a per-spectrum block basis, in other words, on a per-carrier basis. Thus, after encoding, TB 360 results in N CBs being mapped onto multiple spectrum blocks, in other words, carriers. Unless specific steps are taken, this can result in one CB being mapped such that part of it is on one carrier and another part is on another carrier: for example, CB#1...#n-1 can fit completely on carrier 1, then CB n will be distributed on two carriers, while CB#n+1...#N can fit completely on carrier 2. Ideally, however, each CB should be mapped completely onto one carrier, and not onto multiple carriers.
[0041] It should be noted that mapping a TB to one or more CBs can be understood to include segmenting the TB such that the boundaries of the one or more CBs in the bit sequence, i.e., the TB, are determined. This can be sufficient such that no data will be moved or processed in some additional manner. Thereafter, the one or more CBs are encoded by feeding them to an encoder. The encoding can be performed in parallel, in a serial manner, or using a combination of both. For example, there can be X number of encoders encoding Y number of CBs, where X is fixed in the hardware design, and Y depends on the size of the TB, and can be larger than X.
[0042] It should also be noted that when a CB adapts to its available resources on a carrier, it can be understood that the CB is perfectly matched to its respective resources, or that the CB is processed so that it adapts to its respective resources, the processing of the CB can include for example truncating the CB, modifying the CB and / or adjusting the CB, for example by adjusting its modulation and coding scheme (MCS). It should also be noted that if a CB adapts to its respective resources, it can be understood that the CB is perfectly adapted, but that there can still be resources left over.
[0043] If a CB includes N bits before encoding, then the size of the CB after encoding can be M bits, where N < M. In some examples, if the number of encoded bits that are actually transmitted is still greater than N, then all M bits can not be transmitted. In this way, the CB can be decodable at the receiver, depending on the number of bit errors, and in some examples also depending on which of the M bits were not transmitted.
[0044] In the case where a TB is to be transmitted using at least two carriers (carrier 1 and carrier 2), the transmission between the two carriers can not be sequential, but at least partially overlapping in time. In determining that one or more CBs adapt to their respective resources, it can include determining the selected MCS, the resources allocated to transmit the TB on the carrier, and based on this it can determine where the CB boundaries are located before encoding any CB. It can also determine how many bits each CB has after encoding.
[0045] Figure 4AAn example embodiment is shown in which CBs are mapped such that no CB is distributed across different carriers. In other words, no CB is transmitted using resources from more than one carrier, but rather each CB is transmitted using resources of one carrier. In other words, CBs are transmitted using resources available on one carrier. In this example embodiment, the TB 400 received from the MAC is processed by performing L1 processing as shown in block 410. Thereafter, mapping of CBs to resource blocks (RBs), which can be understood as resources, is performed. The mapping in this example embodiment is CB-aware RB mapping, as shown in block 415. CB-aware mapping maps CBs to RBs of a carrier such that, in case a CB would be mapped to two carriers (a first carrier 420 and a second carrier 425), the CB is shifted to start from the second carrier 425 resources, since no enough resources are left in the first carrier 420 to fully fit the CB into the resources of the first carrier 420. In other words, the CB is moved completely to the resources of the second carrier 425, and thus, a subset of the CBs mapped to the resources of the first carrier 420 fit into the first carrier 420 and are transmitted using the first carrier 420. This avoids splitting the CB onto two different carriers. The resource elements (REs), which can be understood as resources, of the first carrier 420 that would have carried the part of the CB, can be left unused. Then, scheduling can be performed such that the amount of waste is minimized by taking this into account.
[0046] Then, various options can be utilized to address the aspect of some of the RBs being left unused. One example option can be that additional REs are allocated to the second carrier 425 to fit the CB as well as other remaining CBs. The allocation can be performed automatically. The scheduler can then take the resource allocation into account, since it can be aware of it. Another example option is that the remaining CBs are truncated, in other words, the bits of the CB that do not fit completely into the first carrier are not transmitted. In this option, additional REs can not be allocated to the second carrier 425. The scheduler can be aware of this and can take this into account in the resource allocation to minimize the number of truncated bits.
[0047] A further example option is that the code rate of the remaining CBs is adapted to the available resources on the physical layer. This adjustment can thus allow a larger number of bits to fit into the resources available on the second carrier. In this option, additional REs can not be allocated to the second carrier 425. The scheduler can be aware of this and can take this into account in the resource allocation to reach the required modulation and coding scheme (MCS).
[0048] It should also be noted that, in some example embodiments, the code rate of the CBs allocated to their respective available resources in the first carrier 420 can also be adjusted, for example by increasing the code rate, to ensure that the CBs fit into these resources.
[0049] Figure 4B Another example embodiment is shown in which CBs are mapped such that they are not distributed across different carriers. It should be noted that there can be two or more carriers used to transmit the TB. In this example embodiment, the TB 400 received from the MAC is processed by performing spectrum block-aware CB segmentation as shown in block 430. In the spectrum block-aware segmentation, the TB 410 is segmented into CBs such that the size of the last CB that will be mapped to the first carrier 420 is adjusted such that it fits the first carrier 420 and does not spill over to the second carrier 425. This adjustment can be performed in a precise manner such that the last CB fills the remaining resources allocated to the first carrier 420 for the transmission of the TB, which can be understood as a full fit or a perfect fit. The segmentation can be performed after the CRC attachment. In this example embodiment, the size of the last CB is determined such that after accounting for the resources required up to the CB to be allocated to the last CB of the first carrier 420, the CB fills the remaining allocated REs on the first carrier 420.
[0050] The processing of the TB 400 then continues by performing the LI processing as shown by block 440 and then performing the RB mapping as shown in block 450. Thereafter, the transmission is performed using the first carrier 420 and the second carrier 425. Optionally, the last CB allocated to the second carrier 425 can also be processed such that its size is adjusted to fit the resources allocated in the second carrier 425. This adjustment can be performed such that the last CB allocated for the second carrier 425 fits the resources in a precise manner.
[0051] It should also be noted that in some example embodiments, the code rate of the CBs allocated to their respective available resources in the first carrier 420 can also be adjusted, for example by increasing the code rate, to ensure that the CBs fit these resources.
[0052] Figure 4C An example embodiment is shown in which a TB is processed such that CBs are not allocated to two different carriers when the TB is processed and mapped onto at least two different carriers.
[0053] In the present example embodiment, in step 460, a TB is received from the MAC layer and split into multiple sub-TBs. It is then determined whether there are sub-TBs to be processed, as shown in step 465. A sub-TB can be understood as a portion of a TB, such as a portion allocated to one or more CBs associated with one carrier. If yes, the one sub-TB is processed by mapping it to one or more CBs, as shown in step 470. Thereafter, as shown in step 480, the matching of the CBs to the respective available resources on their respective carriers is performed. The matching, which can also be understood as processing, can be performed, for example, by one or more of: resource allocation adaptation, CB truncation, rate matching, and CB size adaptation.
[0054] It should be noted that the allocation of resources in each carrier for transmitting data to the UE is performed by a scheduler of the base station. The allocation can be performed per carrier and it can be a function of the total available resources on the carrier and other traffic the scheduler decides to multiplex on that carrier at the same time. The MCS can be determined by the scheduler based on channel conditions to match a target transmission success probability. Since the allocated resources and the modulation order are known, it is possible to determine how many coded bits are to be transmitted and the coding scheme determines the ratio of uncoded bits to coded bits. Thus, for example, in the above example embodiment, it is possible to determine how many coded bits to adapt on the first carrier and how many coded bits on the second carrier. Based on this, it is possible to determine how many uncoded bits to adapt to the carrier and then a TB that adapts to the carrier can be selected. This can be based on counting the overhead from the CRC(s) and then the TB can be split into sub-TBs so that it adapts to each carrier. This adaptation can be a perfect adaptation.
[0055] Figures 4A-4C The example embodiments of allow a single cell to control resources across multiple carriers, which can correspond to carriers on different frequency bands, and enable the aggregation of fragmented spectrum blocks without additional signaling overhead. This can also allow for fast scheduling across one or more blocks and flexibility in scheduling time and / or frequency resources. This can allow for efficient use of spectrum blocks, which can be contiguous or not. When the spectrum for scheduling transmissions is available as non-contiguous blocks, the scheduler can consider one TB across multiple spectrum blocks, or multiple TBs, with one or more TBs per spectrum block. Multiple TBs can come with additional overhead bits, which are to be provided in the scheduling information using downlink control information (DCI).
[0056] Figure 5CBs 540 and RBs 550 in which TB 500 is mapped onto segments located at different frequency spectrums. TB 500 has a CRC attached to TB 500, and in this example embodiment, TB 500 is mapped across multiple different carriers. In this example embodiment, there are three carriers, in other words, the frequency spectrum is divided into three different non-contiguous portions. In this example embodiment, TB 500 is mapped to CBs 540, and CBs 510 and 512 are CBs for the first carrier, CBs 520, 522, and 524 are CBs for the second carrier, and CB 530 is for the third carrier. Then, CB 510 is mapped to RB 560, CB 512 is mapped to RB 562, CB 520 is mapped to RB 570, CB 522 is mapped to RB 572, CB 524 is mapped to RB 574, and CB 530 is mapped to RB 580.
[0057] In this example embodiment, the packet scheduler knows that there are three carriers that can be used to transmit data. It also knows the channel quality of each carrier, so it can make scheduling decisions and MCS selection based on the channel quality. For DL, the channel quality of each carrier can be obtained from UE channel state measurement reports, or based on the base station's measurements of uplink transmissions. For UL, the channel quality of each carrier can be obtained from the base station's measurements of uplink transmissions that the scheduler is included in. When the scheduler decides to allocate a set of frequency resources for a UE for a particular time period for transmission, it determines the MCS to be used in the transmission. The MCS can be common across the three carriers, or can be different for different carriers. Thus, the allocated time and / or frequency resources, together with the allocated MCS(s), explicitly determine the number of information bits that can be transmitted. Then, CBs 540 are generated from TB 500, such that each code block is mapped to one and continuous frequency spectrum block, in other words, each code block is mapped to one of the three carriers.
[0058] When the TB is to be transmitted using different carriers (e.g., two different carriers, a first carrier and a second carrier), the TB is for a first set of CBs and a second set of CBs. The first set of CBs is mapped to resources of the first carrier, and the second set of CBs is mapped to resources of the second carrier. In one example embodiment, it is then necessary to determine how to ensure that the CBs from the first set are not transmitted using resources of both the first carrier and the second carrier, but rather each CB in the first set is transmitted using resources of only one of the carriers. In that example embodiment, two options can be employed. In a first option, at least one CB of the first set is processed. For example, processing is performed on the last CB (CB#n) in the first set. The processing can be, for example, three alternatives: 1) CB#n is moved completely to the second carrier, and additional resources are allocated for the second carrier; 2) CB#n is truncated; and / or 3) the code rate of CB#n is adjusted. As a second option in that example embodiment, the size of at least CB#n of the first set is adjusted.
[0059] It should be noted that the first option and its three alternatives can also be combined with the second option. That combination can include at least one of the alternatives of the first option and the second option. Additionally or alternatively, there can be a prioritization as to the first option and its alternatives, and the second option in determining how to ensure that the CBs of the first set are transmitted using resources of only one of the carriers. Thus, for example, there can be a priority associated with the alternatives of the first option and the second option. It should be noted that the combination of the first option and its alternatives, and the second option can also be associated with a priority. Then, the approach is to first consider the highest alternative, but if that is determined not to apply, then the second highest alternative is considered, and if that does not apply, then the third highest priority is considered, and so on. For example, one of the alternatives of the first option can be considered first based on the associated priority, and if that is not possible, or not beneficial, for example, due to lack of additional resources, then the second option is considered as an alternative. Or as another example, the second option is considered first based on the priority associated with the second option, but if that does not apply, then one of the alternatives of the first option is considered, and so on.
[0060] Figure 6A flow chart showing an example embodiment according to code block segmentation is shown. In this example embodiment, a TB will be transmitted using at least two carriers, and these at least two carriers can be segmented in the frequency spectrum. In step 600 of the flow chart, a TB is received from the MAC layer. This TB will be transmitted over the air to a receiver. The TB is received with accompanying information such as an indication of the number of carriers and the MCS for each carrier. Then, in step 610, the size of the sub-TBs of the received TB is determined. These sizes can be bits per carrier. After that, in step 620, the CB size for each carrier is determined. Then in step 630, the number of CBs for each carrier is determined. This determination can be performed based on one or more of the following: available REs, modulation order, or code rate per carrier.
[0061] In step 635, it is determined whether there are additional bits left after determining the number of CBs for one carrier. In case of one CB, the last CB for the carrier will be partially allocated to another carrier, then in this example embodiment, this CB is allocated to the next carrier. If there are additional bits left, then the flow chart proceeds to step 640 where the input bits for the next carrier are determined, after which the process returns to step 620.
[0062] In case there are no additional bits, then the flow chart proceeds to step 650, which includes encoding and further processing the CBs so that each CB carries a CRC of L bits. The size of the CRC can be fixed, or it can depend on, for example, the selected base graph. The number of CBs can vary for each carrier depending on one or more of the following: physical resource blocks (PRBs) allocated per segment, MCS used, or selected base graph. Then, in step 660, the CBs are mapped to the allocated PRBs so that a CB is not split to another carrier.
[0063] It should be noted that while retrieving the TB at the receiver, the CBs from multiple frequency spectrum blocks will be concatenated, and a 24-bit CRC can be deducted to retrieve the entire transport block.
[0064] Figure 7An example embodiment of an apparatus is shown, which can be an access node, or comprised in an access node such as a gNB. The apparatus can be, for example, a circuitry or chipset adapted for an access node to implement the described embodiments. The apparatus 700 can be an electronic device comprising one or more electronic circuits. The apparatus 700 can comprise a communication control circuitry 710, such as at least one processor, and at least one memory 720 including computer program code (software) 722, wherein the at least one memory and the computer program code (software) 722, together with the at least one processor, are configured to cause the apparatus 700 to perform any of the example embodiments of the access node described above.
[0065] The memory 720 can be implemented using any suitable data storage technology, such as semiconductor-based memory devices, flash memory, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The memory can comprise a configuration database for storing configuration data. For example, the configuration database can store a current list of neighboring cells, and in some example embodiments also the structure of frames used in the detected neighboring cells.
[0066] The apparatus 700 can further comprise a communication interface 730 comprising hardware and / or software for realizing communication connectivity according to one or more communication protocols. The communication interface 730 can provide the apparatus with radio communication capabilities to communicate in a cellular communication system. For example, the communication interface can provide a terminal device with a radio interface. The apparatus 700 can also comprise another interface towards a core network, such as a network coordinator apparatus, and / or to access nodes of a cellular communication system. The apparatus 700 can also comprise a scheduler 740 configured to allocate resources.
[0067] Although the present application has been described above with reference to embodiments according to the accompanying drawings, it is clear that the application is not restricted thereto, but can be modified in various ways within the scope of the appended claims. Thus, all words and expressions should be interpreted broadly and are intended to illustrate, not to restrict, the embodiment. It will be obvious to a person skilled in the art that, as technology advances, the inventive concept can be implemented in various ways. Further, it will be apparent that the described embodiments are but examples and that many modifications can be made without departing from the concept as set forth in the appended claims.
Claims
1. An apparatus comprising at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, are configured to cause the apparatus at least: receive a transport block from a medium access control layer, the transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determine a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; perform processing of at least one code block of the first set to adapt at least a subset of the code blocks of the first set to resources of their respective first carrier; perform processing of the transport block, the processing comprising mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmit the transport block using the first carrier and the second carrier.
2. The apparatus of claim 1, wherein the apparatus is further caused to process the at least one code block of the first set by moving the code block completely to a start of resources of the second carrier.
3. The apparatus of claim 2, wherein the apparatus is further caused to leave resources of the first carrier unused when the at least one code block of the first set is moved completely to the start of the resources of the second carrier.
4. The apparatus of claim 3, wherein the apparatus is further caused to allocate additional resource elements to the second carrier to accommodate the second set of code blocks and the at least one code block moved to the second carrier.
5. The apparatus of claim 3, wherein a last code block of the second set of code blocks is truncated to accommodate the resources of the second carrier.
6. The apparatus of claim 3, wherein a code rate of the second set of code blocks is adapted to the resources available on the second carrier.
7. The apparatus of claim 6, wherein a code rate of the at least one code block is also adapted to the resources available on the second carrier.
8. The apparatus of claim 1, wherein the apparatus is further caused to process the at least one code block of the first set by increasing the code rate.
9. The apparatus of claim 1, wherein the apparatus is further caused to process the at least one code block of the first set by determining a size of the at least one code block of the first set to adapt to resources of its respective first carrier.
10. The apparatus of claim 9, wherein the at least one code block of the first set is the last code block of the first set, and wherein its size is determined after considering resources required by other code blocks of the first set, and its size is determined to adapt the respective resources in a precise manner.
11. The apparatus of any one of claims 8 to 10, wherein at least the subset of the first set of code blocks completely comprises the first set of code blocks. 12. The apparatus of any preceding claim, wherein the apparatus is further caused to process at least one code block of the second set by determining a size of the at least one code block of the second set to fit available resources on its respective second carrier.
13. The apparatus of claim 12, wherein the at least one code block of the second set is the last code block of the second set, and wherein its size is determined after taking into account resources required by the other code blocks of the second set, and its size is determined to fit the respective resources in a precise manner.
14. The apparatus of any preceding claim, wherein the transport block comprises a cyclic redundancy check.
15. The apparatus of any preceding claim, wherein the transport block is received with accompanying information about at least one of the following: frequency allocation and modulation and coding scheme.
16. The apparatus of any preceding claim, wherein determining the first set of code blocks comprises determining a number of code blocks in the first set of code blocks and their sizes, and determining the second set of code blocks comprises determining a number of code blocks in the second set of code blocks and their sizes.
17. A method comprising: receiving a transport block from a medium access control layer, the transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determining a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; performing processing of at least one code block of the first set to fit at least a subset of the code blocks of the first set to resources of their respective first carrier; performing processing of the transport block, the processing comprising mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmitting the transport block using the first and second carriers.
18. A computer program comprising instructions which, when executed by an apparatus, cause the apparatus to at least: receive a transport block from a medium access control layer, the transport block to be transmitted using at least a first carrier and a second carrier, wherein the first carrier and the second carrier are on different radio frequencies with respect to each other; determine a first set of code blocks for the first carrier and a second set of code blocks for the second carrier, wherein the code blocks of the first set are mapped to resources of their respective first carrier; perform processing of at least one code block of the first set to fit at least a subset of the code blocks of the first set to resources of their respective first carrier; perform processing of the transport block, the processing comprising mapping the transport block to the first set of code blocks and the second set of code blocks for transmission; and transmit the transport block using the first and second carriers.