Generalized multi-layer transmission
Patent Information
- Application Number
- PCT/EP2025/055567
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-03-04
- Filing Date
- 2025-02-28
- Publication Date
- 2025-10-02
AI Technical Summary
Existing wireless communication systems struggle to adapt to rapidly varying interference levels in license-exempt bands, leading to inefficiencies in data rate and reliability, particularly when transmitting data streams with different importance levels.
Implementing generalized multi-layer transmission using Gray mapping to differentiate bit reliability for multiple data streams, allowing for varying robustness and data rates, applicable to both SISO and MIMO systems, and optimizing modulation and coding schemes for efficient channel utilization.
Achieves improved throughput and reliability by efficiently managing varying channel conditions, minimizing control frame overhead, and ensuring high average throughput and reliability for data streams with different requirements.
Smart Images

Figure EP2025055567_02102025_PF_FP_ABST
Abstract
Description
[0001] GENERALIZED MULTI-LAYER TRANSMISSION
[0002] FIELD
[0003] The present disclosure relates to wireless communications, and in particular, to generalized multi-layer transmission.
[0004] INTRODUCTION
[0005] The Third Generation Partnership Project (3GPP) has developed and is developing standards for Fourth Generation (4G) (also referred to as Long Term Evolution (LTE)) and Fifth Generation (5G) (also referred to as New Radio (NR)) wireless communication systems. Such systems provide, among other features, broadband communication between network nodes, such as base stations, and mobile user equipments (UE), as well as communication between network nodes and between UEs. The 3GPP is also developing standards for Sixth Generation (6G) wireless communication networks.
[0006] The Institute of Electrical and Electronic Engineers (IEEE) has developed and continues to develop standards for wireless communication networks, including Wireless Local Area Networks (WLANs), branded as “Wi-Fi” networks by the Wi-Fi Alliance. WLANs include wireless communication between access points (AP STAs) and non- access point stations (non-AP STAs), and between AP multi-link devices (AP MLDs) and non-AP MLDs for flavours of Wi-Fi supporting MLDs. Such IEEE standards include IEEE 802.1 la / b / g / n / ac / ax / be and IEEE 802.15.
[0007] The term "wireless device", WD, is used as a common term for UE, non-AP STA, and non-AP MLD below.
[0008] In wireless communications, a goal is typically to reliably transmit information at a rate as high as possible. Inherent in this goal there is a trade-off, since reducing the data rate typically allows for more reliably transmission and thus one may often trade reliability with data rate. In theory, and for some channel models, this problem is addressed by Shannon’s channel capacity. The channel capacity states that as long the information rate does not exceed the channel capacity reliable communication is possible, although it may not be practically feasible since it implies a very large delay as the block length of the coded information may have to be very large.
[0009] Although the channel capacity is an asymptotic theoretical limit, where the error rate goes to zero when the block length goes to infinity, today’s communication system are able to reach a sufficiently low error rate at block lengths that are feasible to use still operating only, for example, 1-2 dB from the theoretical limit.
[0010] Even if it is possible to transmit information using a modulation and coding scheme (MCS) that achieves a data rate close to what is theoretically possible, a problem is for the transmitter to know what is practically achievable, as this is determined by the conditions at the receiver. Thus, the transmitter must obtain information from the receiver about the receiver conditions in order to select the most suitable MCS. The procedure for the transmitter to adapt to the channel conditions for the channel between the transmitter and the receiver is commonly referred to as link adaptation (LA). LA may be based on explicit feedback from the receiver, e.g., indicating the received signal- to-noise-ratio (SNR) or a suggested MCS to be used by the transmitter. Alternatively, it may be based on whether transmitted packets are acknowledged as being correctly received (ACK) or acknowledged as not being correctly received (NACK). If the LA is based on ACK / NACK statistics, the idea is essentially to increase the data rate as long as ACKs are received and decrease the data rate if NACKs are received until one finds the MCS with the highest data rate for which ACKs are received.
[0011] It is readily understood that LA becomes simpler the more static the channel is and the more the channel is varying, the more frequently one needs to update the MCS if one wants to operate close to what is practically possible. For many wireless communication links the receiver conditions are not only determined by the desired signal, but also by how much interference is experienced. In fact, in many situations, the interference may be much more limiting than the thermal noise in the receiver, and therefore one often talks about signal-to-interference-ratio (SIR) or signal-to- interference-plus-noise-ratio (SINR). From this observation one may conclude that the receiver conditions will vary if either the power of the desired signal varies or if the power of the interference varies, or possibly both.
[0012] How fast the power of the desired signal varies largely depends on how fast the transmitter and the receiver are moving, even if also some minor variations may be attributed to changes in the environment. Because the rate of these variations may be accurately determined, it is typically possible to adjust the algorithm for LA so that it is possible for the transmitter to track the variations in the received desired power.
[0013] When it comes to the power variations of the interfering signal, things may or may not be much harder. In cellular systems, like those developed by 3 GPP, the interference typically varies at a rate similar to the desired signal and it is not uncommon that a receiver tracks the interference and also to some extent tries to estimate and subtract it from the desired signal as an effective means to enhance the SINR. For systems operating in license-exempt bands, the issue caused by interference is typically considerably worse for at least three reasons. First, the interference level may be significantly higher than being the case in cellular systems as the different devices are operated in a much more uncontrolled fashion. Second, the variations of the interference may be significantly larger, and third, the rate of the variations may be so high that it is entirely impossible to make LA to work well. The fact that LA may be impossible is easily realized by noting that strong interference may suddenly become present during the reception of a packet. Thus, even if the transmitter may perfectly know the receiver conditions at the start of the packet, these may change in the middle of the packet. To make things worse, the change may be such that the SINR goes from, say, 25 dB to 5 dB.
[0014] Now, the impact of imperfect LA may be more or less problematic as will be illustrated next. Suppose one wants to support best effort traffic such that the goal is to maximize the average throughput but delay and delay jitter may be of no or very little concern. Then one may simply select the MCS that results in the largest throughput. To give a numerical example, suppose one has three different MCSs to choose from. MCS1 has a data rate of 100 Mb / s and requires a SINR of 25dB, MCS2 has a data rate of 20 Mb / s and requires 15 dB SINR, and, finally, MCS3 has a data rate of 5 Mb / s and requires 5 dB SINR. The reason for having different SINR is typically that different interfering devices may or may not be transmitting. Having 25 dB SINR may then typically correspond to that all interfering signals are relatively weak, i.e., the interfering device that is transmitting is relatively far from the receiver. A 5 dB SINR may correspond to the interfering device being relatively close, and a 15 dB SINR may indicate that the interfering device is at an intermediate distance from the receiver. Suppose the probabilities of having 25dB (or higher) SINR is 80%, the probability of having a SINR in the range 15-25 dB is 10%, the probability of having 5-15 dB SINR is 9%, and the probability of having a SINR of less than 5 dB is 1%.
[0015] Assuming that the SINR may vary in an unpredictable way, but that the transmitter is able to determine the probabilities for the different SINR, it may simply calculate which MCS may result in the highest throughput as:
[0016] • Using MCS1, there is a 80% probability that the reception will be successful. Thus, the average throughput equals 100 Mb / s*0.8 = 80 Mb / s. • Using MCS2, there is a 90% probability that the reception will be successful. Thus, the average throughput equals 20 Mb / s*0.9 = 18 Mb / s.
[0017] • Using MCS3, there is a 99% probability that the reception will be successful. Thus, the average throughput equals 5 Mb / s*0.99 = 4.95 Mb / s.
[0018] Consequently, the transmitter may use MCS1 with a resulting average throughput of 80 Mb / s.
[0019] It may be noted that with perfect LA, the transmitter may be able to achieve 100*0.8 + 20*0.1 + 5*0.09 = 82.45 Mb / s.
[0020] If instead of best effort traffic, one needs to support an application where the error probability must not exceed 10%, it follows that MCS1 cannot be used. Instead, the transmitter may use MCS2 as this MCS in this example may result in exactly 10% error probability. The resulting data rate may in this case be 20 Mb / s *0.9 = 18 Mb / s, i.e., because if the additional requirement on reliability of not more than 10% error rate, the average throughout is reduced from 80 Mb / s to 18 Mb / s i.e., a reduction of 77.5%.
[0021] A 10% error probability is still a relatively high error rate, and many applications or control information require significantly lower error probabilities. Suppose an application requires a reliability of 99%, i.e., an error probability of 1%. With the assumptions above, this means that the only option is to use MCS3. The resulting data rate is 5 Mb / s*0.99 = 4.95 Mb / s, i.e., the reduction in data rate is close to 94%.
[0022] Now, in many practical situations the transmitted data from one device to another, e.g., from an access point (AP) to a station (STA) in a Wi-Fi network, consists of two or more data streams that have different requirement both in terms of data rate and reliability. Some examples of this include:
[0023] • The transmission contains both control and management information as well as user data. The control information is typically more critical than the data as it e.g., may have more stringent delay constraints, or it may be required in order for enabling demodulation and decoding of the user data.
[0024] • The transmission carries a video call, where the delay constraints on the voice is more stringent than on the video.
[0025] • The transmission carries a video stream, which consists of I-frames and P- frames. In this case the 1-frames are typically considered as more important than the P- frames as the former carry information for the entire image while the P-frames only carry the changes compared to previous frames. Thus, if a P-frame is missed the previous frame may just be repeated. Current standards used in license exempt bands are not able to effectively deal with the varying channel conditions as the interference variations experienced at the receiver side are so fast that no LA algorithm will work properly. Basically, LA assumes that the variation in the link quality is due to the variations of the desired signal, while the reality is that the larger part of the variations are due to interference. Some work has been done to deal with this shortcoming. In “Opportunistic Multi-Layer Transmission over Unknowns channels”, by Leif Wilhelmsson et. al, it is shown that multi-layer transmission may be used to improve the throughput when the channel conditions cannot be assumed known, both when combined with a simple automatic repeat request (ARQ) scheme and when used with hybrid automatic repeat request (HARQ).
[0026] However, the above work had limitations. First, it only considered a single-input- single-output (SISO) transmission. Second, the focus was on maximizing the throughput.
[0027] SUMMARY
[0028] Aspects of the invention is provided by the appended independent claims, and embodiments are provided by the dependent claims. Some embodiments advantageously provide methods and network nodes for generalized multi-layer transmission. The network node is preferably one of a user equipment, a non-access point station, non-AP STA, station, STA, an AP STA and a radio base station.
[0029] Some embodiments include methods suitable for transmission of packets when the data transmitted are of different importance or have different requirements on reliability, especially when operating over channels that are changing and largely unpredictable. This is achieved by using a text-book modulation with Gray mapping, so that no change is needed to an already available implementation when it comes to the modulation and demodulation part. To obtain two or more layers of different robustness, a suitable set of bits in the Gray mapping is used for a specific layer, allowing for varying both robustness and data rate for this specific layer.
[0030] Some embodiments may be applied to both single input-single output (SISO) and MIMO systems making it an attractive solution for future system designed to support high data rate. Some embodiments may be applied to broadcast transmission where e.g., one stream is intended for broadcast whereas one or more other streams are intended for a single user. Also, the transmission to two different receivers is possible, which may be an attractive solution if the individual data rates to the different users is relatively small and the receiver conditions for the two users are very different. Some embodiments address the issue of how to use multi-layer transmission to achieve improved throughout as well as ensure that at least one layer achieves a certain reliability. Third, a simple yet flexible design of the different layers is disclosed. Finally, ways to allow for efficient implementations are disclosed when some additional constraints are put on the modulation and coding schemes that may be used for the different streams in case of MIMO.
[0031] Another problem addressed by some embodiments disclosed herein, is reduction in the amount of dedicated management or control frames. In existing systems, a relatively large fraction of the sent packets are so-called management or control frames carrying control information. Often these are broadcasted using the most robust MCS in order to achieve as good coverage as possible and due to this the duration of these frames are often significant although the amount of data carried may be small.
[0032] BRIEF DESCRIPTION OF THE DRAWINGS
[0033] A more complete understanding of the present embodiments, and the attendant advantages and features thereof, will be more readily understood by reference to the following detailed description when considered in conjunction with the accompanying drawings wherein:
[0034] FIG. l is a schematic diagram of an example network architecture illustrating a communication system according to principles disclosed herein;
[0035] FIG. 2 is a block diagram of a network node in communication with a user equipment over a wireless connection according to some embodiments of the present disclosure;
[0036] FIG. 3 is a flowchart of an example process in a network node for generalized multi-layer transmission;
[0037] FIG. 4 is an example of gray mapping for 16-QAM;
[0038] FIG. 5 is a graph of information rates for different bits;
[0039] FIG. 6 illustrates how coded bits are mapped to 16-QAM symbols;
[0040] FIG. 7 is a graph of received bit information rates for different bits when 256- QAM is used;
[0041] FIG. 8 is diagram for constructing virtual codewords;
[0042] FIG. 9 is a diagram for constructing virtual codewords that requires less buffering; and
[0043] FIG. 10 is a diagram showing soft values generated by a demodulator. DETAILED DESCRIPTION
[0044] Before describing in detail example embodiments, it is noted that the embodiments reside primarily in combinations of apparatus components and processing steps related to generalized multi-layer transmission.. Accordingly, components have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.
[0045] As used herein, relational terms, such as “first” and “second,” “top” and “bottom,” and the like, may be used solely to distinguish one entity or element from another entity or element without necessarily requiring or implying any physical or logical relationship or order between such entities or elements. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the concepts described herein. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes” and / or “including” when used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0046] In embodiments described herein, the joining term, “in communication with” and the like, may be used to indicate electrical or data communication, which may be accomplished by physical contact, induction, electromagnetic radiation, radio signaling, infrared signaling or optical signaling, for example. One having ordinary skill in the art will appreciate that multiple components may interoperate and modifications and variations are possible of achieving the electrical and data communication.
[0047] In some embodiments described herein, the term “coupled,” “connected,” and the like, may be used herein to indicate a connection, although not necessarily directly, and may include wired and / or wireless connections.
[0048] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the concepts described herein. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes” and / or “including” when used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0049] The term “network node” used herein may be any kind of network node comprised in a radio network which may further comprise any of base station (BS), radio base station, user equipment, wireless device, non-access point station, access point station, base transceiver station (BTS), base station controller (BSC), radio network controller (RNC), g Node B (gNB), evolved Node B (eNB or eNodeB), Node B, multi-standard radio (MSR) radio node such as MSR BS, multi-cell / multicast coordination entity (MCE), relay node, donor node controlling relay, radio access point (AP), transmission points, transmission nodes, Remote Radio Unit (RRU) Remote Radio Head (RRH), a core network node (e.g., mobile management entity (MME), self-organizing network (SON) node, a coordinating node, positioning node, MDT node, etc.), an external node (e.g., 3rd party node, a node external to the current network), nodes in distributed antenna system (DAS), a spectrum access system (SAS) node, an element management system (EMS), etc. The network node may also comprise test equipment. The term “radio node” used herein may be used to also denote a user equipment (UE) such as a wireless device (WD), a radio network node, non-access point station, or access point station.
[0050] In some embodiments, the non-limiting terms wireless device (WD) or a user equipment (UE) or network node are used interchangeably. The UE herein may be any type of user equipment capable of communicating with a network node or another UE over radio signals, such as a wireless device (WD). The UE may also be a radio communication device, target device, device to device (D2D) UE, machine type UE or UE capable of machine to machine communication (M2M), low-cost and / or low-complexity UE, a sensor equipped with UE, Tablet, mobile terminals, smart phone, laptop embedded equipped (LEE), laptop mounted equipment (LME), USB dongles, Customer Premises Equipment (CPE), an Internet of Things (loT) device, or a Narrowband loT (NB-IOT) device etc. The UE may be a non-access point station, for example.
[0051] Also, in some embodiments the generic term “radio network node” is used. It may be any kind of a radio network node which may comprise any of base station, radio base station, base transceiver station, base station controller, network controller, RNC, evolved Node B (eNB), Node B, gNB, Multi-cell / multicast Coordination Entity (MCE), relay node, access point, radio access point, Remote Radio Unit (RRU) Remote Radio Head (RRH).
[0052] Note that although terminology from one particular wireless system, such as, for example, 3GPP LTE and / or New Radio (NR), and / or an IEEE 802.11 system, may be used in this disclosure, this should not be seen as limiting the scope of the disclosure to only the aforementioned system. Other wireless systems, including without limitation Wide Band Code Division Multiple Access (WCDMA), Worldwide Interoperability for Microwave Access (WiMax), Ultra Mobile Broadband (UMB) and Global System for Mobile Communications (GSM), may also benefit from exploiting the ideas covered within this disclosure.
[0053] Note further, that functions described herein as being performed by a user equipment or a network node may be distributed over a plurality of user equipments and / or network nodes. In other words, it is contemplated that the functions of the network node and user equipment described herein are not limited to performance by a single physical device and, in fact, may be distributed among several physical devices.
[0054] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs. It will be further understood that terms used herein should be interpreted as having a meaning that is consistent with their meaning in the context of this specification and the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
[0055] Some embodiments are directed to generalized multi-layer transmission.
[0056] Referring to the drawing figures, in which like elements are referred to by like reference numerals, there is shown in FIG. 1 a schematic diagram of a communication system 10, according to an embodiment, such as a 3 GPP -type cellular network that may support standards such as LTE and / or NR (5G), which comprises an access network 12, such as a radio access network, and a core network 14. The access network 12 comprises a plurality of network nodes 16a, 16b, 16c (referred to collectively as network nodes 16), such as NBs, eNBs, gNBs or other types of wireless access points, each defining a corresponding coverage area 18a, 18b, 18c (referred to collectively as coverage areas 18). Each network node 16a, 16b, 16c is connectable to the core network 14 over a wired or wireless connection 20. A first wireless device (WD) 22a located in coverage area 18a is configured to wirelessly connect to, or be paged by, the corresponding network node 16a. A second WD 22b in coverage area 18b is wirelessly connectable to the corresponding network node 16b. While a plurality of WDs 22a, 22b (collectively referred to as wireless devices 22) are illustrated in this example, the disclosed embodiments are equally applicable to a situation where a sole WD is in the coverage area or where a sole WD is connecting to the corresponding network node 16. Note that although only two WDs 22 and three network nodes 16 are shown for convenience, the communication system may include many more WDs 22 and network nodes 16.
[0057] Also, it is contemplated that a WD 22 may be in simultaneous communication and / or configured to separately communicate with more than one network node 16 and more than one type of network node 16. For example, a WD 22 may have dual connectivity with a network node 16 that supports LTE and the same or a different network node 16 that supports NR. As an example, WD 22 may be in communication with an eNB for LTE / E-UTRAN and a gNB for NR / NG-RAN.
[0058] A network node 16 or WD 22 is configured to include a NN reliability unit 24 which is configured to select bits in a mapping of bits to modulation symbols for each of a first data stream and a second data stream, the selecting resulting in a difference in reliability between the first data steam and the second data stream. A wireless device 22 is configured to include a WD reliability unit 26 which is configured to select bits in a mapping of bits to modulation symbols for each of a first data stream and a second data stream, the selecting resulting in a difference in reliability between the first data steam and the second data stream..
[0059] Example implementations, in accordance with an embodiment, of the WD 22 and network node 16 discussed in the preceding paragraphs will now be described with reference to FIG. 2.
[0060] The communication system 10 includes a network node 16 provided in a communication system 10 and including hardware 28 enabling it to communicate with the WD 22. The hardware 28 may include a radio interface 30 for setting up and maintaining at least a wireless connection 32 with a WD 22 located in a coverage area 18 served by the network node 16. The radio interface 30 may be formed as or may include, for example, one or more RF transmitters, one or more RF receivers, and / or one or more RF transceivers. The radio interface 30 includes an array of antennas 34 to radiate and receive signal(s) carrying electromagnetic waves.
[0061] In the embodiment shown, the hardware 28 of the network node 16 further includes processing circuitry 36. The processing circuitry 36 may include a processor 38 and a memory 40. In particular, in addition to or instead of a processor, such as a central processing unit, and memory, the processing circuitry 36 may comprise integrated circuitry for processing and / or control, e.g., one or more processors and / or processor cores and / or FPGAs (Field Programmable Gate Array) and / or ASICs (Application Specific Integrated Circuitry) adapted to execute instructions. The processor 38 may be configured to access (e.g., write to and / or read from) the memory 40, which may comprise any kind of volatile and / or nonvolatile memory, e.g., cache and / or buffer memory and / or RAM (Random Access Memory) and / or ROM (Read-Only Memory) and / or optical memory and / or EPROM (Erasable Programmable Read-Only Memory).
[0062] Thus, the network node 16 further has software 42 stored internally in, for example, memory 40, or stored in external memory (e.g., database, storage array, network storage device, etc.) accessible by the network node 16 via an external connection. The software 42 may be executable by the processing circuitry 36. The processing circuitry 36 may be configured to control any of the methods and / or processes described herein and / or to cause such methods, and / or processes to be performed, e.g., by network node 16. Processor 38 corresponds to one or more processors 38 for performing network node 16 functions described herein. The memory 40 is configured to store data, programmatic software code and / or other information described herein. In some embodiments, the software 42 may include instructions that, when executed by the processor 38 and / or processing circuitry 36, causes the processor 38 and / or processing circuitry 36 to perform the processes described herein with respect to network node 16. For example, processing circuitry 36 of the network node 16 may include a NN reliability unit 24 which is configured to select bits in a mapping of bits to modulation symbols for each of a first data stream and a second data stream, the selecting resulting in a difference in reliability between the first data steam and the second data stream.
[0063] The communication system 10 further includes the WD 22 already referred to. The WD 22 may have hardware 44 that may include a radio interface 46 configured to set up and maintain a wireless connection 32 with a network node 16 serving a coverage area 18 in which the WD 22 is currently located. The radio interface 46 may be formed as or may include, for example, one or more radio frequency, RF, transmitters, one or more RF receivers, and / or one or more RF transceivers. The radio interface 46 includes an array of antennas 48 to radiate and receive signal(s) carrying electromagnetic waves.
[0064] The hardware 44 of the WD 22 further includes processing circuitry 50. The processing circuitry 50 may include a processor 52 and memory 54. In particular, in addition to or instead of a processor, such as a central processing unit, and memory, the processing circuitry 50 may comprise integrated circuitry for processing and / or control, e.g., one or more processors and / or processor cores and / or FPGAs (Field Programmable Gate Array) and / or ASICs (Application Specific Integrated Circuitry) adapted to execute instructions. The processor 52 may be configured to access (e.g., write to and / or read from) memory 54, which may comprise any kind of volatile and / or nonvolatile memory, e.g., cache and / or buffer memory and / or RAM (Random Access Memory) and / or ROM (Read-Only Memory) and / or optical memory and / or EPROM (Erasable Programmable Read-Only Memory).
[0065] Thus, the WD 22 may further comprise software 56, which is stored in, for example, memory 54 at the WD 22, or stored in external memory (e.g., database, storage array, network storage device, etc.) accessible by the WD 22. The software 56 may be executable by the processing circuitry 50. The software 56 may include a client application 58. The client application 58 may be operable to provide a service to a human or non-human user via the WD 22.
[0066] The processing circuitry 50 may be configured to control any of the methods and / or processes described herein and / or to cause such methods, and / or processes to be performed, e.g., by WD 22. The processor 52 corresponds to one or more processors 52 for performing WD 22 functions described herein. The WD 22 includes memory 54 that is configured to store data, programmatic software code and / or other information described herein. In some embodiments, the software 56 and / or the client application 58 may include instructions that, when executed by the processor 52 and / or processing circuitry 50, causes the processor 52 and / or processing circuitry 50 to perform the processes described herein with respect to WD 22. For example, the processing circuitry 50 of the user equipment 22 may include a WD reliability unit 26 which is configured to select bits in a mapping of bits to modulation symbols for each of a first data stream and a second data stream, the selecting resulting in a difference in reliability between the first data steam and the second data stream.
[0067] In some embodiments, the inner workings of the network node 16 and WD 22 may be as shown in FIG. 2 and independently, the surrounding network topology may be that of FIG. 1.
[0068] The wireless connection 32 between the WD 22 and the network node 16 is in accordance with the teachings of the embodiments described throughout this disclosure. More precisely, the teachings of some of these embodiments may improve the data rate, latency, and / or power consumption and thereby provide benefits such as reduced user waiting time, relaxed restriction on file size, better responsiveness, extended battery lifetime, etc. In some embodiments, a measurement procedure may be provided for the purpose of monitoring data rate, latency and other factors on which the one or more embodiments improve.
[0069] Although FIGS. 1 and 2 show various “units” such as NN reliability unit 24 and UE reliability unit as being within a respective processor, it is contemplated that these units may be implemented such that a portion of the unit is stored in a corresponding memory within the processing circuitry. In other words, the units may be implemented in hardware or in a combination of hardware and software within the processing circuitry.
[0070] FIG. 3 is a flowchart of an example process in a network node 16 or WD 22 for generalized multi-layer transmission. One or more blocks described herein may be performed by one or more elements of network node 16 or WD 22 such as by one or more of processing circuitry 36, 50 (including the NN reliability unit 24 or the WD reliability unit 26), processor 38, 52, and / or radio interface 30, 46. Network node 16 or WD 22 such as via processing circuitry 36, 50 and / or processor 38, 52 and / or radio interface 30, 46 is configured to select bits in a mapping of bits to modulation symbols for each of a first data stream and a second data stream, the selecting resulting in a difference in reliability between the first data steam and the second data stream (Block S10).
[0071] In some embodiments, the mapped bits are obtained from encoding information into a codeword to obtain encoded bits. In some embodiments, the encoded bits are generated using a same error correcting code. In some embodiments, the encoded bits are generated using a same instance of an error correcting code. In some embodiments, the mapping of bits is configured for multiple input-multiple output, MIMO, transmission. In some embodiments, the number of bits in the mapping to a modulation symbol for at least one of the first and second data streams is based at least in part on at least one of a minimum data rate requirement and a robustness requirement. In some embodiments, which bits or how many bits are mapped for one of the first and second data streams depends at least in part on changing channel conditions. In some embodiments, the first data steam is used for control data and the second data stream is used for user data. In some embodiments, not all mapped bits are allocated to the first and second data streams. In some embodiments, wherein the bit mapping depends on a number of codewords per layer, such that a number of symbols to transmit in the first data stream is a same number of symbols to transmit the second data stream. In some embodiments, the bit mapping is configured to commence when there are a number of bits available to input to a modulator. In some embodiments, codewords for each of the first and second data streams are input sequentially to a same decoder.
[0072] Having described the general process flow of arrangements of the disclosure and having provided examples of hardware and software arrangements for implementing the processes and functions of the disclosure, the sections below provide details and examples of arrangements for generalized multi-layer transmission.
[0073] Some embodiments overcome a number of problems. First, the trade-off between obtaining high throughput using high data rate and using high reliability with a low data rate is addressed so that both high throughput (on average) and high reliability for a low data rate is obtained with the very same transmission. Second, the problem of link adaptation in highly varying channels is addressed in a rather general way, applicable to both SISO and MIMO transmission. Third, some embodiments enable an efficient way to minimize the overhead caused by various kinds of control frames that need to be transmitted, by multiplexing these control frames with data frames such that the spectrum is more efficiently used.
[0074] The typical procedure when transmitting information is that the information is encoded by an error correcting encoder, and then the coded bits are modulated using a suitable modulation format. The error correcting code may for instance be a binary convolution code (BCC) or a low density parity check (LDPC) code, and the modulation may for instance be phase shift keying (PSK) or M-ary quadrature amplitude modulation (M-QAM). The receiver then tries to decode the information by essentially doing the reverse operations. The received signal is demodulated, i.e., soft information for the bits is extracted from the M-ary symbols and the soft information is then fed to the decoder where the information is decoded.
[0075] When non-binary modulation is used, log2(M) bits are mapped on each M-ary modulation symbol. This mapping may in principle be done in many ways, but typically so-called Gray mapping is used. In Gray mapping the bit-pattern for two adjacent constellation points only differs in one position. An illustration of Gray mapping for 16- QAM is provided in FIG. 4.
[0076] Referring to FIG. 4, it is readily seen that even if a symbol is in error, not all of the different bits represented by the symbol will typically be in error. Examining the mapping a bit closer, it may be seen that the first bit determines whether the 16-QAM symbol is to the right or to the left of the imaginary axis, whereas the second bit determines whether the 16-QAM symbol is above or below the real axis. The third bit determines whether the 16-QAM symbol is in the inner two columns, i.e., the two columns closest to the imaginary axis, and the fourth bit determines whether the 16- QAM symbol is in the inner two rows, i.e., the two rows closest to the real axis.
[0077] Using information theory, it may be shown that bits 1 and 2 carry more information than bits 3 and 4. The total information sent is the sum of the information sent by the four bits. In FIG. 5, the information rate for the different bits as well as the total rate are shown. What should be emphasized is that in order to extract the information in the receiver, the receiver must process the received signal properly. Specifically, in FIG. 5, the information is obtained by using the logmax approach.
[0078] In a codeword, the different bits are mapped on symbols and thus typically 14 of the codeword bits are mapped as bit 1, bit 2, bit 3, and bit 4, respectively. Assuming the decoding and deinterleaving work as intended, the performance of the error correcting code is effectively determined by the total information that may be extracted from the bits in the codeword, i.e., the fact that different bits are of different importance is of no concern.
[0079] The fact that different bits in a received symbol carry varying amount of information is one of the key features explored in the present disclosure. Consider FIG. 5 and suppose that a code of rate3A is used. In the case where the coded bits are mapped to bit 1 - bit 4 as described above, it may be seen in FIG. 5 that a SNR of at least 9 dB is required to obtain sufficient information (3 bits out of 4 corresponds to the3A code rate and 9 dB are required to decode 3 information bits). However, if instead, the bits in the codeword may only be mapped on bit 1 and bit 2 in the codeword, which carry relatively more information than bit 3 and bit 4, it may be seen in FIG. 5 that a SNR of around 7 dB may suffice (1.5 bits out of 2 corresponds to the3A code rate). Alternatively, if the codeword bits may be transmitted as bit 3 and bit 4 a SNR of 11 dB may be required.
[0080] Now consider the situation where the SNR is changing from one packet to the next so that it sometimes is 7 dB and sometimes is 11 dB, i.e., with the average being 9 dB, and also suppose that a rate3A code is used. Just considering the amount of information available at the receiver side, it may be concluded that when the SNR is 7 dB, the decoding will fail, whereas when the SNR is 11 dB, there is a high probability that the decoding will be successful. For the moment, ignore what error correcting code is actually being used to achieve this, but merely observe what is theoretically possible.
[0081] In case of a simple ARQ scheme, a packet which is received at 7 dB SNR may simply have to be retransmitted, and it may be retransmitted until it eventually may be sent when the channel happens to be in the state where the SNR is 11 dB.
[0082] If HARQ is used instead, the decoder may extract some information when the decoding fails. Referring to FIG. 5, when the SNR is 7 dB the receiver may ideally extract about 2.5 bits of information per symbol use. Thus, since the packet was sent with a rate3 / 4 and 16-QAM, which implies 3 bits of information per symbol use, the decoder is effectively lacking 0.5 bits per symbol use. Anyway, since the packet is not ACKed in this case (as it was not successfully decoded), it is then retransmitted. Assume that Chase Combining (CC) is used so that the very same packet is transmitted again. For the retransmitted packet, the SNR may now be either 7 dB or 11 dB.
[0083] If a packet is received when the SNR of channel is 7 dB, upon reception of the retransmitted packet, the receiver may combine the information from the retransmitted packet with the information extracted from the first packet, and effectively have information corresponding to what may be obtained from a packet received at 10 dB, since combining two packet at the same SNR may be the same as receiving one packet at twice the SNR assuming the noise to be uncorrelated. Again, referring to FIG. 5, the information per symbol use at 10 dB exceeds 3 information bits, and thus the decoding may be expected to be successful. Although this is the desired outcome, it may be noted that the channel during the retransmission of the packet in fact allowed for 2.5 bits of information per channel use to be extracted, so, since only 0.5 bits per channel use was lacking, resulting in wasted 2 bits of information.
[0084] If instead, a packet is received when the SNR of the channel is 11 dB, about 3.5 bits of information per channel use may be extracted. By the same reasoning, since only 3 bits of information per channel are needed, sending only 3 bits of information is somewhat wasteful. In particular, when it is a retransmission of a packet and only 0.5 bits of information per channel is needed, effectively 3 bits per channel use wasted. Or stated otherwise, it appears as if another codeword is superimposed, since 3 bits per channel use is exactly what is needed for potentially being able to decode correctly.
[0085] As a simple numerical example, suppose the channel is toggling between 7 dB and 11 dB so that two packets packet are received at 7 dB followed by one packet at 11 dB SNR. It then follows that exactly 3 transmissions may be needed for 2 packets. The first two transmissions may be combined so that the packet is correctly received and the third transmission may directly result in a correctly received packet. Stated another way, the average transmission rate is 2 bits per symbol use.
[0086] Now consider the idea that the different bits carry different amount of information. Specifically, again suppose a rate3 / 4 code but instead of mapping these bits on a 16-QAM symbol, generate two codewords, and map the first codeword on bits bl and b2 and the second codeword on bits b3 and b4. What this means in practice is that in the proposed scheme two codewords may be sent in parallel, but the duration of a codeword may be twice as long so that the data rate in both cases may be identical. See FIG. 6.
[0087] Different bits in a modulated symbol carry different amounts of information. This may be viewed as different bits within a symbol being not equally reliable, so that bits 1 and 2 may be viewed as being more reliable than bits 3 and 4 in the example above and shown in FIG. 5.
[0088] With respect to the case illustrated in the lower part of FIG. 6, use the same assumptions as before, i.e., the SNR is either 7 dB or 11 dB. FIG. 5 shows that when the SNR is 11 dB both codewords may be successfully decoded (each codework carries 1.5 information bits and both lower two curves carry more than 1.5 information bits). According to FIG. 5, this is theoretically possible, but with a very small margin. In case the SNR is 7 dB, only Codeword 1 may be successfully decoded (only the blue curve is above 1.5 information bits). However, the receiver is still able to extract about 1 bit of information per channel use for Codeword 2, as shown by the lowest curve in FIG. 5.
[0089] Having illustrated the basic idea, where the potential gain comes from, and what is needed to obtain the gain, additional details of the different embodiments are described.
[0090] Herein, codewords sent in parallel are referred to as layers and analogously, the number of codewords sent in parallel is referred to as a number of layers in a transmission. Layers are therefore used to denote the different bit reliabilities (layers) that are naturally present in Gray coded constellations of size 16-QAM or higher. Transmission of parallel layers should not be confused with transmission of several spatial streams as done in MIMO to denote spatial multiplexing. The concept of multiple layers is applicable also when a single antenna is used, and in case of MIMO the concept of multiple layers is applicable per MIMO stream as well as across different MIMO streams. Moreover, as disclosed below, the methods proposed here are applicable also to Multi-User (MU) transmissions.
[0091] Different reliabilities of the different bits in Gray-coded constellations may occur and methods allow for increased throughput in case the channel conditions are changing in a way which effectively makes link adaptation non feasible. In ordinary transmission with only one layer, unpredictable channel conditions means that there is an inherent trade-off between reliability and supporting high data rate as discussed in the background section. To address this trade-off using multi-layer transmission, in contrast to maximizing the throughput of one data stream, the present disclosure is concerned with being able to support two different data streams concurrently where the two data stream have different requirements in terms of reliability and typically also in terms of data rate. There are a number of situations where this is the case. Some examples are:
[0092] • The transmission contains both control and management information as well as user data. The control information is typically more critical than the data as it e.g., may have more stringent delay constraints, or it may be required in order for enabling demodulation and decoding of the user data.
[0093] • The transmission carries a video call, where the delay constraints on the voice is more stringent than on the video.
[0094] • The transmission carries a video stream, which consists of I-frames and P- frames. In this case the 1-frames are typically considered as more important than the P- frames as the former carry information for the entire image while the P-frames only carry the changes compared to previous frames. Thus, if a P-frame is missed, the previous frame may just be repeated.
[0095] Another practical issue in e.g., Wi-Fi, is that the AP regularly needs to broadcast information. This information is sent with the most robust MCS in order to have as good coverage as possible. Because a robust MCS is used, the duration of these broadcast packet may be significant, resulting in time not available for transmission of user data. Because the rate of the broadcast transmission is low, but the requirement on reliability is relatively high, the broadcast information is very suitable to be sent using multi-layer transmission, mapping the broadcast information on the most reliable bit(s) in the bit-to- symbol mapping. At the same time, the remaining bits in the bit-to-symbol mapping may be used to form the second layer which then may carry user data. To give a specific example of how this may be achieved, consider using 256-QAM as the modulation, so that in total there are eight bits to be shared between the two layers. The robustness of the different bits are illustrated in FIG. 7, where the received bit information rate for the different bits are plotted as function of the received SNR.
[0096] It may be concluded that the difference in reliability between the bits go in steps of roughly 6dB. The most reliable bits correspond to the left most curve and the least reliable bits correspond to right most curve. Also included in the figure is the average received bit information rate (RBIR), i.e., what is obtained if all bits in the symbols are used, which corresponds to the situation with a single layer, i.e., what may be considered as the standard way to do things.
[0097] Returning to the approach described above when broadcasting is combined with the transmission of user data, a promising way to create the two layers may be to use one of the most reliable bits for broadcasting and the remaining seven bits for user data. The performance of the broadcast data may in this way becomes very robust. Moreover, the robustness of the user data may only be slightly decreased compared to if the user data was sent using 256-QAM since seven out of the original eight bits are still the same. In fact, by simulation it is found the degradation for the second layer created in this way may only be 0.5-1 dB compared to using all 8 bits.
[0098] Just as one may multiplex one broadcast stream and one stream of user data, one may multiplex user data to two different users. One situation may of course be if one of the users had an application that may require higher reliability than the other user. Another situation may be if the two users were to experience quite different channel conditions, e.g., because being at different distances from the AP. The multi-layer transmission may then be applied to reach both users with similar quality simply by allocating a suitable set of layers to the two users. Specifically, the user having the worst channel conditions may be allocated bits that are more robust whereas the user with more favorable channel conditions may be allocated bits that are less robust. Exactly what bits to be allocated to respective user may then depend on the link conditions. Embodiment 1 - General multi-layer transmission for single user transmission
[0099] In some embodiments two (or more) layers are constructed by allocating different bits in the bit-to-symbol mapping to the different layers. In case of MIMO, this allocation may be done over all spatial streams. A layer may use the same bit in the bit- to-symbol mapping for all symbols and a layer may use only one of the bits or several bits in the different streams. For example, for many practical cases it may be sufficient to allocate 1 or 2 bits for the most reliable layer on the best spatial stream, i.e., the stream with the largest eigenvalue. But in general, suppose one wants to have a best layer that has a bit higher data rate (at the cost of reliability), then perhaps one needs three bits per symbol. If the best stream is much stronger than the second, say 10 dB better, then one may pick all three bits from the first stream. If, on the other hand, the difference between the two streams is only 3 dB, then one may select the two most robust bits from the first stream and then the third bit is selected as one of the most robust bits from the second stream.
[0100] The allocation of the bits to at least one of the streams may be based on obtaining a specific reliability, i.e., being able to with high probability correctly receive this one stream as long as the received SINK is above a certain value. Alternatively, the allocation is such that the layer becomes as robust as possible by allocating the most robust bits.
[0101] In another approach for allocation of the bits, not only the robustness of the layer is considered but also the data rate. Specifically, the layer is constructed such that the resulting data rate equals or exceeds a specific value and in addition the allocation of bits also take certain robustness constraints into account. In this approach, the requirement on data rate may effectively determine how many bits in each symbol are needed for that layer, whereas the requirement on the robustness may determine what bits in the bits-to- symbol mapping are used.
[0102] In yet another approach, with two layers, the construction is based on making the most robust layer as robust as possible while not degrading the least robust layer too much compared to the situation where only a single layer is used. In this approach, only a single bit is allocated to the most robust layer, whereas all other bits are allocated to the second layer. Because all but one bit are used for the second layer, the degradation may be very small.
[0103] The difference in robustness between the layers may also be obtained by using different code rates for the different layers. Changing the code rate in addition to changing the modulation allows for more flexibility, i.e., a finer granularity when it comes to what data rate may be selected. However, unlike the case when a single layer is used, when using multi-layer, the possibility to select specific bits in the bit-to-symbol mapping gives additional flexibility in the modulation itself and therefore it may not be necessary to use different code rates for the different layers. In fact, one may be able to use the same code rate if this is combined with the approach described below.
[0104] The present embodiment is applicable whether the same code rate is used for all layers or if different code rates are used for the different layers.
[0105] Embodiment 2 - Multi-layer transmission for multi-user transmission
[0106] Embodiment 1, above, was for the case when all layers are intended for the same receiver and where the motivation for using multi-layer transmission typically may be that different reliabilities for different data streams was desired. There may also be situations where one may like to multiplex data to two (or more) users using multi-layer transmission. Typically, multiplexing is more easily achieved by simply allocating orthogonal resources to the different users, e.g., different parts of the frequency resources. However, multiplexing using the same symbols has also been considered using e.g., semi- orthogonal multiple access (SOMA).
[0107] The idea with SOMA is essentially to find two users that have quite different receiver conditions, say one user being close and having good receiver conditions and another user being far away and having poor receiver conditions. In SOMA, the idea is essentially to overlay modulations, say QPSK for the user with poor receiver conditions and 16-QAM for the receiver with good channel conditions. In total, this may correspond to 6 bits or 64-QAM. Now, the QPSK and 16-QAM may be sent with different relative powers to make the resulting 64-QAM non-uniform. The drawback with multiplexing using e.g., SOMA is that in practice it assumes that one may find two users which have these respective receiver conditions.
[0108] Using multi-layer transmission for multiplexing may not require setting any power offset between the users, but the relative robustness is achieved by properly constructing the layers for the different users by selecting suitable bits in the bits-to-symbol mapping.
[0109] Multiplexing using multi-layer transmission does not rely on two users having specific relative or absolute receiver conditions. The construction of the layers and the allocation of the bits may be based on the actual receiver conditions.
[0110] Embodiment 3 - Multi-layer transmission for broadcast transmission
[0111] In Embodiment 2, the layers were intended for specific devices. An even more interesting application for multiplexing data to different users is when one of the layers is for broadcast information, e.g., general control information sent out by the network node.
[0112] Thus, according to some embodiments, the most robust layer is intended for broadcasting whereas a second layer is intended for a specific receiver. The reason why the most robust layer is selected to be used for broadcasting is that the receiver conditions in this case are unknown and it typically is desirable to get as good coverage as possible for broadcast information.
[0113] A use case where this embodiment may be useful is e.g., when the AP is sending a beacon using a robust layer and at the same time transmitting user data to a specific STA using a less robust layer.
[0114] Embodiment 4 - LA based on multi-layer transmission with fixed modulation
[0115] Because the robustness of a layer is determined by what bits are used for that layer, it is possible to construct a layer that is much more robust than may be the case if only one layer may be used where all available bits may be used. In fact, one may view the layers’ robustness to be largely independent from the size to the modulation used and of the number of streams used in case of MIMO. As a specific example, if one considers the most robust bits in two different modulations, say 256-QAM and 1024-QAM, the performance difference is quite small (this is because essentially determining if the first bit falls to the right or left of the imaginary axis is independent of the QAM grid size). Thus, if one constructs the most robust layer by only using the most robust bit in the bit- to-symbol mapping, the robustness may be essentially the same. Similar reasoning may be made for other layers. Therefore, if it is found that the performance is not robust enough using 1024-QAM, the standard approach using a single layer may be to reduce the modulation to 256-QAM. However, considering that the robustness is essentially determined by what bits are used rather than the modulation, one may according to this embodiment obtain the increased robustness simply by not using the least robust bits in the bit-to-symbol mapping. Specifically, if, instead of using all 10 bits in the 1024-QAM constellation two least reliable bits are discarded and only the 8 most reliable are used. Then, the performance may be expected to be similar to what may be achieved by 256- QAM.
[0116] Consequently, it is possible to achieve link adaptation based on selecting a suitable set of bits to be used in each symbol, rather than changing the modulation as such.
[0117] Thus, according to some embodiments, link adaptation is effectively done by selecting a suitable set of bits to be used, and at least one of the bits in the bits-to-symbol mapping is not used.
[0118] Also, according to some embodiments, the robustness of a layer is increased or decreased by allocating fewer or more bits, respectively, but without changing the modulation.
[0119] Embodiment 5 - Control signaling for multi-layer transmission
[0120] Although the concept of multi-layer transmission relies on using the standard modulation, and therefore the reception may largely reuse all the algorithms already available for single layer transmission, some additional control signaling may be required. Specifically, in addition to the MCS used on the channel, the receiver should know what bits in the bits-to-symbol mapping should be used. Thus, according to some embodiments, the control signaling where the MCS is indicated is extended with information such that the receiver may extract information regarding what bits in the bits-to-symbol mapping are to be used.
[0121] According to one approach, this information is obtained through a bit map, where in total, N bits are allocated to represent at most N layers, where each bit position in this bitmap corresponds to a certain bit in the bit-to-symbol mapping. In case of MIMO, each bit position may correspond to a certain bit in the bit-to-symbol mapping in a specific stream.
[0122] According to another approach, a layer may only be constructed in relatively few ways. Suppose only two layers are supported and the only options are that the most robust layer either only uses one bit of the most robust kind or two bits of the most robust kind. In this case, the different options for multi-layer transmission may be numbered, say from 0 to 3 so that the control signaling consists of indicating which one of the transmission schemes 0-3 is being used.
[0123] Embodiment 6 - Efficient encoding of data for multi-layer transmission
[0124] The support for multi-layer transmission means that the transmitter may have to be slightly modified. Because the basic idea is to use the modulator without modification, the modifications relate to the implementation of the encoding as well as how to do mapping from the coded bits to the modulation symbols in order to achieve the multi-layer transmission.
[0125] According to some embodiments, the same encoder is used for all layers. This means that a sufficient number of codewords for the different layers are generated to allow for performing the bit-to-symbol mapping. Preferably, the same code rate is used for all layers in order to not have to reconfigure the encoder in between generating the codewords for the different layers, but in principle this is not needed. A characteristic feature of the encoding process is that the layer having the least number of bits in a symbol is encoded first. Typically, but not necessarily, this corresponds to the most robust layer being encoded first.
[0126] Although the multi-layer transmission involves bit-to-symbol mapping, it is worth keeping in mind that the generation of the different symbols to be transmitted also includes interleaving to make sure that if one symbol experiences poor channel conditions the corresponding bits are not located too close as this may reduce the performance. Since it is desirable to introduce multi-layer transmission in a way that requires as little modification to the transmitter as possible, some embodiments provide a way to achieve this. Suppose that in case of single layer transmission, i.e., what is available without multilayer transmission, the mapping of the bits to symbols including the interleaving is designed for a specific code. That is, the mapping is designed for a specific rate and possibly a specific block length in case of a block code. The proposal is to reuse, for the multi-layer transmission, the exact same mapping by creating “virtual codewords” that are of the corresponding length as the codewords for single layer transmission. The modulator may treat these virtual codewords in the same way as the ordinary single layer codeword and in this way the use of multi-layer transmission is entirely transparent for the modulator.
[0127] The multi-layer transmission may in this way be seen as how to construct the virtual codewords from the codewords on the different layers. Since a virtual codeword contains bits from at least two of the codewords resulting from the encoding, some buffering may be required.
[0128] As an example for how many codewords may need to be buffered, consider multilayer transmission based on 256-QAM, where the first layer is the most robust layer and the second layer is the least robust layer; where the first layer is constructed by using the two most robust bits in the bit-to-symbol mapping; and where the second layer is constructed by using the remaining six bits. For simplicity, suppose the length of codeword is 1000 bits for both layer 1 and layer 2. Clearly, for every codeword transmitted on the first layer, three codewords may be sent on the second layer. As mentioned above, the codeword for the first layer may be encoded first, followed by the generation of three codewords for the second layer. Then, this may be repeated.
[0129] One approach for generating the data to be sent to the modulator is therefore as follows. Generate one codeword for the first layer and three codewords for the second layer. This corresponds to 4x1000 = 4000 bits. Next generate “virtual” codewords, where each virtual codeword consists of code bits from both the first and second layers. The virtual codeword is what is fed to the modulator and treated the same way as an ordinary codeword. However, the virtual codeword may be constructed in such a way that the bits coming from the first layer, the most robust layer, are put in the positions in the virtual codeword so that these bits may be mapped on the most reliable bits in the bit-to-symbol mapping. This is how the multi-layer transmission is completely transparent for the modulator. The generation of the virtual codewords is shown in FIG. 8.
[0130] In the buffering arrangement described above, all four codewords (one for layer 1 and three for layer 2) were generated and buffered to generate four virtual codewords. In an alternative implementation, intended to reduce both the transmission delay and the required amount of buffering, the virtual codewords are generated as soon as there is sufficient data. In this implementation there is one buffer for the codeword for the first layer. Then, there is no buffering of the codewords for the second layer, but instead the bits in the codewords corresponding to the second layer are directly put in the corresponding positions in the virtual codeword, as illustrated in FIG. 9.
[0131] Effectively this means that the buffer requirement is reduced to one codeword. The delay may also be reduced to zero with some additional care. Without making any changes to the processing speed, the delay may be roughly one codeword, corresponding to the buffer size.
[0132] Embodiment 7 - Efficient decoding of data for multi-layer transmission
[0133] The decoding of the multi-layer transmission is essentially the reverse operation of the encoding. Just as the modulator was not impacted using multi-layer transmission, the demodulator may also be kept unaffected. The demodulator processes the incoming symbols and generates soft values for the different bits, which later are to be input to the decoder.
[0134] When only a single layer is used, once all soft values for a codeword have been generated these are input to the decoder, which then tries to decode the information to generate the corresponding information bits. For multi-layer transmission, the soft values generated by the demodulator may be a combination of soft values for the different layers These soft values may therefore have to be sorted so that they correspond to the codewords sent on the different layers. Continuing the example from Embodiment 6 with 256-QAM and two layers, each received symbol may result in eight soft values. The two soft values corresponding to the most reliable bits correspond to the first layer, whereas the remaining six correspond to the second layer. Therefore, for every received symbol two soft values may be stored for the first layer whereas six soft values may be stored for the second layer.
[0135] Again using the same assumption as in Embodiment 6, where each codeword has 1000 bits, it follows that when 167 symbols are received the first layer has received 334 soft values and the second layer has received 1002 soft values. The first 1000 soft values out of these 1002 soft values correspond to a complete codeword and these 1000 soft values may therefore be input to the decoder just as in the case for a single layer transmission. The decoder operation is not impacted and from a decoder point of view the multi-layer transmission does not make any difference. FIG. 10 illustrates how the soft values generated by the demodulator are arranged for the two layers.
[0136] The receiver processing continues at the same time as the decoding of the first codeword, and once another 167 symbols have been received, there may be 668 soft values for the first layer and 1004 soft values for the second layer (recall that two of the received soft values from symbol 167 belong to the second codeword). Thus, the 1000 soft values corresponding to the second codeword for the second layer is input to the decoder.
[0137] Finally, another 166 symbols are processed by the demodulator to generate another 332 soft values for the first layer and another 996 soft values for the second layer. Thus, after these 166 symbols are received, there may be in total 668 + 332 = 1000 soft values for the first layer and 4 + 996 = 1000 soft values for the second layer. Since two codewords may be completed at the same time (with soft values generated by the same symbol), the situation is different than when a single layer is used.
[0138] In case only one instance of the decoder is used, which is the preferred alternative, this implies that the decoding of one of the codewords may have to be delayed. If two instances of the decoder are used, then there may be no delay compared to the single layer, but there may be an additional cost in terms of hardware.
[0139] Looking at the additional delay in case of only one instance of the decoder, it is readily seen that the delay corresponds to the time it takes to decode a codeword. Since the decoding rate must at least be as high as the supported data rate not to require received data to be buffered. The decoding delay may be estimated as follows. Suppose a device is able to support 100 Mb / s. This may then be the decoding speed of the decoder. Clearly, a codeword with 1000 bits cannot contain more than 1000 bits of information, but in a realistic example, suppose the rate of the code is i o that the number of information bits in a codeword is 500. The decoding delay for such a codeword may then not exceed 500 / (100A10e6) = 5us, which in almost all situations may be acceptable. It should here be emphasized that the reason why such a small delay may have an impact is that the receiver may send an ACK / NACK report to the transmitter indicating whether the codeword should be retransmitted and the time between reception and transmission may be on the order of 20 us. Such a small delay may practically have no impact on the application.
[0140] In case one still wants to avoid the small delay discussed above, the following approach is also disclosed taking into account that the reliabilities of the layers are significant. To explain the approach, again consider the example with 256-QAM and two layers. Based on simulations it has been found that the reliability of the first layer may be about 10 dB better than for the second layer. Suppose that first layer requires about 6 dB SINR to be correctly decoded whereas the second layer requires about 16 dB to be correctly decoded.
[0141] Referring back to the decoding procedure just described, two codewords for the second layer have been decoded when the last two codewords are ready for decoding, one codeword for each layer. Now, if at least one of the codewords that have been decoded is found to be correct, it may be concluded that the SINR must be 16dB or above. If this is the case, it is certain that the codeword on the first layer may be correctly decoded and thus it is possible to acknowledge this codeword as correctly received without performing the actual decoding, which is known to be successful with very high probability. Thus, there may be no delay in generating the ACK / NACK report and as discussed above the small delay that may result for the actual application is typically negligible.
[0142] Next, consider the case that none of the second layer codewords have been previously correctly received. In this case, it may be concluded that the SINR most likely is less than 16 dB. In this case, there is a high probability that the final codeword on the second layer may not be correctly decoded and therefore a NACK may be sent without actually performing the decoding. Instead, the decoder may be used for decoding the codeword on the first layer. Also, in this case, no additional delay may result compared to single layer transmission.
[0143] Above, the decision which one of the two codewords should not be decoded to avoid a delay was based on the decoding results of the two previous codewords. Alternatively, this decision may be based on some other relevant metric. One such metric may be the estimated SINR, which may be obtained by the demodulator. Say that the demodulator generates an estimate of the SINR. Then a rule for deciding which of the codewords does not need to be decoded may as follows. If the SINR is above 10 dB, the codewords for the first layer may be ACKed without decoding and if the SINR is less than 10 dB the codeword for the second layer may be NACKed without trying to decode it.
[0144] Thus, covered by this embodiment is a decoding strategy where at least one codeword for one of the layers is ACKed / NACKed by estimating the outcome of the decoding rather than actually performing the decoding.
[0145] Embodiment 8 Multi-layer transmission adaptation based on feedback from receiver(s).
[0146] In some embodiments, one or more receivers of the multi-layer transmission may provide feedback to the transmitter on the actual interference / noise conditions they experience. Then the transmitter may make a more informed decision on, for example, how many streams and / or layers should be used to meet a certain reliability for example.
[0147] Assume, for example, that 1024-QAM is used in a single user transmission, and that a robust layer only requires one bit per symbol. Based on the feedback from the receiver, the transmitter may determine which one of the bits should be allocated to the robust layer. It may suffice to use the second or third most robust bits. By doing so, the first robust bit may instead be used for other purposes, i.e., for other layers that have different requirements to be supported. Similar examples may be made for the case with multi-users transmissions. For example, if two layers are used for two different users and the first user indicates that its robustness may be decreased, then an improved robustness may instead by given to the second user.
[0148] Examples
[0149] Some Examples may include one or more of the following.
[0150] 1. A method for supporting communication of a first data stream at a first data rate with a first reliability and a second data stream at a second data rate with a second reliability, characterized of that the two data streams carry different kind of information and that the data stream carried by the first data stream has stricter requirements when it comes to reliability. The method being characterized of that the difference in reliability is obtained by selecting different bits in the bit-to-symbol mapping when mapping the bits to the modulation symbols. The bits used for the first data stream and second data stream effectively constituting a first and a second layer where the two layers have different reliabilities.
[0151] 2. As Example 1 where the bits are code bits, i.e., bits resulting from encoding information into a codeword.
[0152] 3. As any of the above Examples where the bits-to-symbol mapping is done to two symbols or more, i.e., MIMO transmission is used.
[0153] 4. As any of the above Examples where the coded bits are generated using the same error correcting code.
[0154] 5. As any of the above Examples where the coded bits are generated using the same instance of the error correcting encoder.
[0155] 6. As any of the above Examples where the number of bits in the bit-to- symbol mapping for a specific layer is selected based on requirement to obtain a minimum data rate.
[0156] 7. As any of the above Examples, where the selection of which bits are selected for a specific layer is based on requirements to obtain a certain amount of robustness or to obtain as high robustness as possible.
[0157] 8. As any of the above Examples, where the two data streams, i.e., the two layers, are intended for two different receivers.
[0158] 9. As any of the above Examples where the first layer is used for control data and the second layer is used for user data.
[0159] 10. As any of Examples 1-7, where the first data stream, i.e., the first layer, is used for broadcasting data, whereas the second data stream, i.e., the second layer, is intended for a specific user.
[0160] 11. As any of the above Examples, where the selection of which bits are used for the different layers are changed as a means to adapt to varying channel conditions.
[0161] 12. As any of the above Examples, where not all bits available in the bit-to- symbol are allocated to any of the layers
[0162] 13. As any of the above Examples, where the number of bits used for one of the layers is changed as a means to adapt to varying channel conditions.
[0163] 14. As any of the above Examples, where the bit-to-symbol mapping for the symbols carrying the different layers are based on first encoding one codeword for the first layer and store the corresponding codeword in memory, then encode a number of codewords for the second layer, where the number of codewords for the second layer is selected such that the number of symbols needed for transmitting the coded bits in the first layer is the same as the number of symbols needed for transmitting the coded bits in the second layer.
[0164] 15. As Example 14, where the bit-to-symbol mapping starts as soon as there are sufficient bits available as input to the modulator.
[0165] 16. As any of the above Examples, where the decoding of two layers is performed with the same decoder, i.e., the codewords for two layers are input sequentially to the same decoder.
[0166] As will be appreciated by one of skill in the art, the concepts described herein may be embodied as a method, data processing system, computer program product and / or computer storage media storing an executable computer program. Accordingly, the concepts described herein may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects all generally referred to herein as a “circuit” or “module.” Any process, step, action and / or functionality described herein may be performed by, and / or associated to, a corresponding module, which may be implemented in software and / or firmware and / or hardware. Furthermore, the disclosure may take the form of a computer program product on a tangible computer usable storage medium having computer program code embodied in the medium that may be executed by a computer. Any suitable tangible computer readable medium may be utilized including hard disks, CD-ROMs, electronic storage devices, optical storage devices, or magnetic storage devices.
[0167] Some embodiments are described herein with reference to flowchart illustrations and / or block diagrams of methods, systems and computer program products. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, may be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer (to thereby create a special purpose computer), special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0168] These computer program instructions may also be stored in a computer readable memory or storage medium that may direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instruction means which implement the function / act specified in the flowchart and / or block diagram block or blocks.
[0169] The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0170] It is to be understood that the functions / acts noted in the blocks may occur out of the order noted in the operational illustrations. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality / acts involved. Although some of the diagrams include arrows on communication paths to show a primary direction of communication, it is to be understood that communication may occur in the opposite direction to the depicted arrows.
[0171] Computer program code for carrying out operations of the concepts described herein may be written in an object oriented programming language such as Python, Java® or C++. However, the computer program code for carrying out operations of the disclosure may also be written in conventional procedural programming languages, such as the "C" programming language. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer. In the latter scenario, the remote computer may be connected to the user's computer through a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
[0172] Many different embodiments have been disclosed herein, in connection with the above description and the drawings. It will be understood that it may be unduly repetitious and obfuscating to literally describe and illustrate every combination and subcombination of these embodiments. Accordingly, all embodiments may be combined in any way and / or combination, and the present specification, including the drawings, shall be construed to constitute a complete written description of all combinations and subcombinations of the embodiments described herein, and of the manner and process of making and using them, and shall support claims to any such combination or subcombination.
[0173] Abbreviations that may be used in the preceding description include:
[0174] Abbreviation Explanation
[0175] ACK Acknowledgement
[0176] AP Access Point
[0177] LBT Listen Before Talk
[0178] NACK Negative Acknowledgement
[0179] STA Station
[0180] It will be appreciated by persons skilled in the art that the embodiments described herein are not limited to what has been particularly shown and described herein above. In addition, unless mention was made above to the contrary, it should be noted that all of the accompanying drawings are not to scale. A variety of modifications and variations are possible in light of the above teachings. Embodiments:
[0181] Embodiment Al . A network node configured to communicate with a user equipment, UE, the network node configured to, and / or comprising a radio interface and / or comprising processing circuitry configured to: select bits in a mapping of bits to modulation symbols for each of a first data stream and a second data stream, the selecting resulting in a difference in reliability between the first data steam and the second data stream.
[0182] Embodiment A2. The network node of Embodiment Al, wherein the mapped bits are obtained from encoding information into a codeword to obtain encoded bits.
[0183] Embodiment A3. The network node of Embodiment A2, wherein the encoded bits are generated using a same error correcting code.
[0184] Embodiment A4. The network node of Embodiment A2, wherein the encoded bits are generated using a same instance of an error correcting code.
[0185] Embodiment A5. The network node of any of Embodiments Al and A2, wherein the mapping of bits is configured for multiple input-multiple output, MIMO, transmission.
[0186] Embodiment A6. The network node of any of Embodiments A1-A5, wherein a number of bits in the mapped to a modulation symbol for at least one of the first and second data streams is based at least in part on at least one of a minimum data rate requirement and a robustness requirement.
[0187] Embodiment A7. The network node of any of Embodiments A1-A6, wherein which bits or how many bits are mapped for one of the first and second data streams depends at least in part on changing channel conditions.
[0188] Embodiment A8. The network node of any of Embodiments A1-A7, wherein the first data steam is used for control data and the second data stream is for user data. Embodiment A9. The network node of any of Embodiments A1-A8, wherein not all mapped bits are allocated to the first and second data streams.
[0189] Embodiment A10. The network node of any of Embodiments A1-A9, wherein the bit mapping depends on a number of codewords per layer, such that a number of symbols to transmit in the first data stream is a same number of symbols to transmit the second data stream.
[0190] Embodiment Al 1. The network node of any of Embodiments A1-A10, wherein the bit mapping is configured to commence when there are a number of bits available to input to a modulator.
[0191] Embodiment A12. The network node of any of Embodiments Al-Al l, wherein codewords for each of the first and second data streams are input sequentially to a same decoder.
[0192] Embodiment A13. The network node of any of Embodiments A1-A12, wherein the network node is one of a user equipment, a non-access point station, an access point station and a radio base station.
[0193] Embodiment Bl. A method implemented in a network node that is configured to communicate with a user equipment, the method comprising: selecting bits in a mapping of bits to modulation symbols for each of a first data stream and a second data stream, the selecting resulting in a difference in reliability between the first data steam and the second data stream.
[0194] Embodiment B2. The method of Embodiment Bl, wherein the mapped bits are obtained from encoding information into a codeword to obtain encoded bits.
[0195] Embodiment B3. The method of Embodiment B2, wherein the encoded bits are generated using a same error correcting code.
[0196] Embodiment B4. The method of Embodiment B2, wherein the encoded bits are generated using a same instance of an error correcting code. Embodiment B5. The method of any of Embodiments Bl and B2, wherein the mapping of bits is configured for multiple input-multiple output, MIMO, transmission.
[0197] Embodiment B6. The method of any of Embodiments B1-B5, wherein a number of bits in the mapped to a modulation symbol for at least one of the first and second data streams is based at least in part on at least one of a minimum data rate requirement and a robustness requirement.
[0198] Embodiment B7. The method of any of Embodiments B1-B6, wherein which bits or how many bits are mapped for one of the first and second data streams depends at least in part on changing channel conditions.
[0199] Embodiment B8. The method of any of Embodiments B1-B7, wherein the first data steam is used for control data and the second data stream is for user data.
[0200] Embodiment B9. The method of any of Embodiments B1-B8, wherein not all mapped bits are allocated to the first and second data streams.
[0201] Embodiment BIO. The method of any of Embodiments B1-B9, the bit mapping depends on a number of codewords per layer, such that a number of symbols to transmit in the first data stream is a same number of symbols to transmit the second data stream.
[0202] Embodiment B 11. The method of any of Embodiments B 1 -B 10, wherein the bit mapping is configured to commence when there are a number of bits available to input to a modulator.
[0203] Embodiment B 12. The method of any of Embodiments Bl-Bl 1, wherein codewords for each of the first and second data streams are input sequentially to a same decoder.
[0204] Embodiment B 13. The method of any of Embodiments Bl -Bl 2, wherein the network nodeis one of a user equipment, a non-access point station, an access point station and a radio base station.
Claims
CLAIMS1. A network node configured to communicate with a wireless device, WD, the network node configured to, and / or comprising a radio interface and / or comprising processing circuitry configured to: map bits to modulation symbols for each of a first data stream and a second data stream, the mapping resulting in a difference in reliability between the first data steam and the second data stream; and transmit the symbols.
2. The network node of claim 1, wherein the mapped bits are obtained from encoding information into a codeword to obtain encoded bits.
3. The network node of claim 2, wherein the encoded bits are generated using a same error correcting code.
4. The network node of claim 2, wherein the encoded bits are generated using a same instance of an error correcting code.
5. The network node of claim 1 or 2, wherein the mapping of bits is configured for multiple input-multiple output, MIMO, transmission.
6. The network node of any one of claims 1 to 5, wherein a number of bits in the mapping to a modulation symbol for at least one of the first and second data streams is based at least in part on at least one of a minimum data rate requirement and a robustness requirement.
7. The network node of any one of claims 1 to 6, wherein which bits or how many bits are mapped for one of the first and second data streams depends at least in part on changing channel conditions.
8. The network node of any one of claims 1 to 7, wherein the first data steam is used for control data and the second data stream is used for user data.
9. The network node of any one of claims 1 to 8, wherein the network node is one of a user equipment, an access point, AP, station, STA, an non-AP STA and a radio base station.
10. A method implemented in a network node configured to communicate with a wireless device, WD, the method comprising mapping bits to modulation symbols for each of a first data stream and a second data stream, the mapping resulting in a difference in reliability between the first data steam and the second data stream; and transmitting the symbols.
11. The method of claim 10, comprising obtaining the mapped bits by encoding information into a codeword to obtain encoded bits.
12. The method of claim 11, comprising generating the encoded bits using a same error correcting code.
13. The method of claim 11, comprising generating the encoded bits using a same instance of an error correcting code.
14. The method of claim 10 or 11, comprising configuring the mapping of bits for multiple input-multiple output, MIMO, transmission.
15. The method of any one of claims 10 to 14, wherein a number of bits in the mapping to a modulation symbol for at least one of the first and second data streams is based at least in part on at least one of a minimum data rate requirement and a robustness requirement.
16. The method of any one of claims 10 to 15, wherein which bits or how many bits are mapped for one of the first and second data streams depends at least in part on changing channel conditions.
17. The network node of any one of claims 10 to 16, wherein the first data steam is used for control data and the second data stream is for user data.