Non-orthogonal multiple access wireless communications methods and apparatus thereof

Various novel concepts and schemes pertaining to non-orthogonal multiple access for wireless communications are described. A group orthogonal coded access (GOCA) scheme is introduced to reduce multi-user interference (MUI) and improve performance. A repetition division multiple access (RDMA) scheme is introduced to differentiate user equipment (UEs) by different repetition patterns. A low-density spreading (LDS) scheme is introduced to reduce MUI and improve performance.

TECHNICAL FIELD

The present disclosure is generally related to wireless communications and, more particularly, to non-orthogonal multiple access for wireless communications.

BACKGROUND

Non-orthogonal multiple access (NOMA) may be a technology beneficial for supporting a massive number of user equipment (UE) requesting intermitting transmissions of small data packets in 5th-Generation (5G) massive machine type communication (mMTC) and two-step random-access channel (RACH) applications. In the 3rdGeneration Partnership Project (3GPP) 5G New Radio (NR) study item phase, a variety of NOMA schemes were proposed and discussed, including resource spreading multiple access (RSMA), non-orthogonal coded access (NOCA), interleave division multiple access (IDMA), and interleaved-grid multiple access (IGMA). Certain observations are captured in the 3GPP technical report. The proposed NOMA schemes for uplink (UL) transmissions share the following common features: (1) using multiple access (MA) feature(s) at the transmitter side, and (2) allowing multi-user detector at the receiver side. The proposed NOMA schemes for UL transmissions on a high level follow a basic diagram as that depicted inFIG. 11, including bit-level operations and symbol-level operations.

Under RSMA, multiple UEs are differentiated by scrambling sequences. While this technique allows for simple sequence generation, the performance is relatively poor. Under IDMA, multiple UEs are differentiated by interleave patterns. While this technique allows for better utilization of diversity, a system implementing IDMA would likely be associated with higher complexity. Under IGMA, multiple UEs are differentiated based on different bit-level interleavers, different grid mapping patterns, and different combinations of bit-level interleavers and grid mapping patterns. While this technique allows for more flexibility, a system implementing IGMA would likely be associated with higher complexity.

SUMMARY

An objective of the present disclosure is to propose various novel concepts and schemes pertaining to NOMA wireless communications. Specifically, the present disclosure provides schemes, or proposed solutions, that provide NOMA wireless communications without aforementioned issues.

In one aspect, a method may involve a processor of a UE of a first group of UEs of multiple groups encoding data for NOMA. The encoding may involve spreading the data into shared resources using a multi-stage sequence generation process. The method may also involve the processor transmitting the encoded data to a wireless receiver.

In one aspect, a method may involve a processor of a UE of a plurality of UEs encoding data for NOMA. The encoding may involve spreading the data into shared resources using a repetition pattern of a plurality of data pieces of the data. The method may also involve the processor transmitting the encoded data to a wireless receiver.

In one aspect, a method may involve a processor of a UE of a plurality of UEs encoding data for NOMA. The encoding may involve spreading the data into shared resources using a low-density spreading (LDS) pattern which is less than an entire pattern of the shared resources. The method may also involve the processor transmitting the encoded data to a wireless receiver.

DETAILED DESCRIPTION OF PREFERRED IMPLEMENTATIONS

Overview

Various novel concepts and schemes pertaining to NOMA wireless communications in accordance with the present disclosure includes a group orthogonal coded access (GOCA) scheme to reduce multi-user interference (MUI) and improve performance. Various novel concepts and schemes pertaining to NOMA wireless communications in accordance with the present disclosure also includes a repetition division multiple access (RDMA) scheme to differentiate UEs by different repetition patterns. Various novel concepts and schemes pertaining to NOMA wireless communications in accordance with the present disclosure further includes a low-density spreading (LDS) scheme to reduce MUI and improve performance.

Detailed description of the GOCA scheme, the RDMA scheme and the LDS scheme is provided below with reference toFIG. 1-FIG. 6.

FIG. 1illustrates an example GOCA scheme100in accordance with an implementation of the present disclosure.

Under the GOCA scheme100, a UE may use a multi-stage sequence structure to spread data into shared time and frequency resources. For each stage, a coding sequence may be orthogonal or non-orthogonal. Moreover, under the GOCA scheme100, multiple UEs may be divided into several groups with each group having more than one UE, and the UEs belonging to a same group may use different coding sequences for a first stage while using a same coding sequence for subsequent stages. That is, for UEs of the same group, different and orthogonal coding sequences may be used in a first stage. For each subsequent stage of the multiple stages, a respective nonorthogonal coding sequence may be used for all the UEs in that group. For simplicity and ease of understanding, a two-stage example is illustrated inFIG. 1although the GOCA scheme100can be implemented in more than two stages.

Referring toFIG. 1, under the GOCA scheme100, composite coding sequences may be generated in a two-stage sequence generation process. Each composite coding sequence may be multiplied with source symbols of a respective UE to generate complex symbols. In the first stage (denoted as “stage1” inFIG. 1), different orthogonal coding sequences may be used for each group. In the second stage (denoted as “stage2” inFIG. 1), a non-orthogonal coding sequence may be used for each group. In the example shown inFIG. 1, three UEs are in each of two groups of UEs, namely Group1and Group2. A resultant composite coding sequence for a first UE in Group1(denoted as “GOS(1)” inFIG. 1) may be generated as a result of multiplication of a first orthogonal coding sequence (denoted as “OS(1)” inFIG. 1) and a first non-orthogonal coding sequence (denoted as “NOS(1)” inFIG. 1). A resultant composite coding sequence for a second UE in Group1(denoted as “GOS(2)” inFIG. 1) may be generated as a result of multiplication of a second orthogonal coding sequence (denoted as “OS(2)” inFIG. 1) and the first non-orthogonal coding sequence (denoted as “NOS(1)” inFIG. 1). A resultant composite coding sequence for a third UE in Group1(denoted as “GOS(3)” inFIG. 1) may be generated as a result of multiplication of a third orthogonal coding sequence (denoted as “OS(3)” inFIG. 1) and the first non-orthogonal coding sequence (denoted as “NOS(1)” inFIG. 1).

Similarly, a resultant composite coding sequence for a first UE in Group2(denoted as “GOS(4)” inFIG. 1) may be generated as a result of multiplication of the first orthogonal coding sequence (denoted as “OS(1)” inFIG. 1) and a second non-orthogonal coding sequence (denoted as “NOS(2)” inFIG. 1). A resultant composite coding sequence for a second UE in Group2(denoted as “GOS(5)” inFIG. 1) may be generated as a result of multiplication of the second orthogonal coding sequence (denoted as “OS(2)” inFIG. 1) and the second non-orthogonal coding sequence (denoted as “NOS(2)” inFIG. 1). A resultant composite coding sequence for a third UE in Group2(denoted as “GOS(6)” inFIG. 1) may be generated as a result of multiplication of the third orthogonal coding sequence (denoted as “OS(3)” inFIG. 1) and the second non-orthogonal coding sequence (denoted as “NOS(2)” inFIG. 1).

Thus, for the UEs within each group, the composite coding sequences are orthogonal to one another since each composite coding sequence is a product of a different orthogonal coding sequence. That is, in Group1, the OS(1) used in generating GOS(1), the OS(2) used in generating GOS(2), and the OS(3) used in generating GOS(3) are different and orthogonal to one another. Likewise, in Group2, the OS(1) used in generating GOS(4), the OS(2) used in generating GOS(5), and the OS(3) used in generating GOS(6) are different and orthogonal to one another. Accordingly, a first composite coding sequence for a first UE is orthogonal to a second composite coding sequence of a second UE in the same group. Moreover, the composite coding sequence of a UE in one group is different from the composite coding sequence of another UE in another group. This is because different non-orthogonal coding sequences are used for the groups. In particular, NOS(1) is used to generate GOS(1), GOS(2) and GOS(3) for Group1, and NOS(2) is used to generate GOS(4), GOS(5) and GOS(6) for Group2. Advantageously, multi-user interference may be reduced while performance may be improved.

Moreover, under the GOCA scheme100, time resources and frequency resources, which are shared resources, may be allocated with localized time repetition or localized frequency repetition. Referring toFIG. 1, information bits for transmission may be processed through a modulation and coding scheme (MCS) into a number of source symbols. In the example shown inFIG. 1, the process of MCS produces twelve source symbols (denoted as s(1), s(2), s(3), s(4), s(5), s(6), s(7), s(8), s(9), s(10), s(11) and s(12) inFIG. 1).

Under the GOCA scheme100, encoded copies of the source symbols may be allocated to shared time and frequency resources repeatedly for a predefined number of times, which may equal to the spreading factor. For illustration and without limitation on the scope of the present disclosure, when spreading factor is three, encoded copies of the source symbols may be allocated to the shared time and frequency resources three times with either localized time repetition or localized frequency repetition.

In the example shown inFIG. 1, three copies of the twelve source symbols, s(1), s(2), s(3), s(4), s(5), s(6), s(7), s(8), s(9), s(10), s(11) and s(12), are first multiplied with a respective composite coding sequence corresponding to the UE to result in three copies of twelve complex symbols (denoted as x(1), x(2), x(3), x(4), x(5), x(6), x(7), x(8), x(9), x(10), x(11) and x(12) inFIG. 1). In this example, the length of each composite coding sequence is suitable for multiplying with thirty-six source symbols. Then, the complex symbols are allocated to the shared time and frequency resources with either localized time repetition or localized frequency repetition.

Referring toFIG. 1, with localized time repetition, the three copies of the twelve complex symbols may be allocated to the shared resources repeatedly in a way such that each of x(1), x(2), x(3), x(4), x(5), x(6), x(7), x(8), x(9), x(10), x(11) and x(12) is allocated to a respective frequency three times consecutively. In the example shown inFIG. 1, three copies of each of x(1) and x(2) are consecutively allocated to a first frequency, three copies of each of x(3) and x(4) are consecutively allocated to a second frequency, three copies of each of x(5) and x(6) are consecutively allocated to a third frequency, three copies of each of x(7) and x(8) are consecutively allocated to a fourth frequency, three copies of each of x(9) and x(10) are consecutively allocated to a fifth frequency, and three copies of each of x(11) and x(12) are consecutively allocated to a sixth frequency.

Also, as shown inFIG. 1, with localized frequency repetition, the three copies of the twelve complex symbols may be allocated to the shared resources repeatedly in a way such that each of x(1), x(2), x(3), x(4), x(5), x(6), x(7), x(8), x(9), x(10), x(11) and x(12) is allocated to a respective time slot three times consecutively. In the example shown inFIG. 1, three copies of each of x(1) and x(2) are consecutively allocated to a first time slot, three copies of each of x(3) and x(4) are consecutively allocated to a second time slot, three copies of each of x(5) and x(6) are consecutively allocated to a third time slot, three copies of each of x(7) and x(8) are consecutively allocated to a fourth time slot, three copies of each of x(9) and x(10) are consecutively allocated to a fifth time slot, and three copies of each of x(11) and x(12) are consecutively allocated to a sixth time slot.

FIG. 2illustrates example system structures200and250implementing the example GOCA scheme100. Structure200may represent functional blocks of an orthogonal frequency-division multiplexing (OFDM)-based GOCA transmitter of a UE in accordance with the present disclosure. Structure250may represent functional blocks of a single-carrier GOCA transmitter of a UE in accordance with the present disclosure.

Structure200may include a forward error correction (FEC) encoder212, a quadrature amplitude modulation (QAM) modulator214, a GOCA encoder216, a pilot insertion module218, an Inverse Fast Fourier Transformation (IFFT) plus cyclic prefix (CP) insertion module220, and a baseband-to-radio frequency (RF) front end230. GOCA encoder216may be configured to perform the two-stage sequence generation and resource allocation described above with respect toFIG. 1.

Structure250may include a FEC encoder262, a QAM modulator264, a GOCA encoder266, a pilot insertion module268, and a baseband-to-RF front end270. GOCA encoder266may be configured to perform the two-stage sequence generation and resource allocation described above with respect toFIG. 1.

FIG. 3illustrates an example RDMA scheme300in accordance with an implementation of the present disclosure.

Under the RDMA scheme300, a UE may spread data into shared time and frequency resources according to a repetition pattern. Additionally or alternatively, for each repeated part of UE data, the data may pass through the same or different permutation function(s) and then be combined. In spreading the data (e.g., encoded source symbols or data pieces) into the shared resources using the repetition pattern, data pieces of the data (e.g., complex symbols) may first be allocated to a first portion of shared time and frequency resources, and a predefined number of copies or repetitions of the data pieces may be allocated to a second portion of the shared time and frequency resources.

Under the RDMA scheme300, each repetition of the predefined number of repetitions may differ from the data pieces allocated to the first portion of the shared time and frequency resources by a respective amount of shift in time or frequency. Moreover, the respective amount of shift in time or frequency of a first repetition of the predefined number of repetitions for a given UE of multiple UEs may be different from the respective amount of shift in time or frequency of a first repetition of the predefined number of repetitions for at least one other UE of the multiple UEs. Likewise, the respective amount of shift in time or frequency of a second repetition of the predefined number of repetitions for the given UE may be different from the respective amount of shift in time or frequency of a second repetition of the predefined number of repetitions for at least one other UE of the multiple UEs. Advantageously, multi-user interference may be reduced while performance may be improved. To illustrate the point, a non-limiting example of the RDMA scheme300is shown inFIG. 3.

Referring toFIG. 3, each of three UEs (denoted as “UE1”, “UE2” and “UE3” inFIG. 3) may have twenty-seven complex symbols as data pieces to be spread into the shared time and frequency resources. For example, UE1may have data pieces x1(1)-x1(27), UE2may have data pieces x2(1)-x2(27), and UE3may have data pieces x3(1)-x3(27). The predefined number of repetitions may equal a spreading factor of the encoding, which is three in the example shown inFIG. 3. Thus, three copies of the twenty-seven data pieces x1(1)-x1(27) of UE1are allocated to ninety-one shared time and frequency resources with a cyclic-shift permutation performed on the first instance or the original copy of data pieces x1(1)-x1(27) when allocating the first and second repetitions of the original copy of data pieces x1(1)-x1(27).

In the example shown inFIG. 3, for UE1, zero shift is performed on the original copy of data pieces x1(1)-x1(27), a cyclic shift of three slots relative to the original copy is performed on the first repetition, and a cyclic shift of six slots relative to the original copy is performed on the second repetition. The cyclic-shift permutation for UE1is denoted as s1=(0, 3, 6). For ease of illustration, the first data piece x1(1) of the series of data pieces x1(1)-x1(27) of UE1in each copy or repetition is highlighted to show that, for UE1in this example, the data pieces in the first repetition and the data pieces in the second repetition have a shift of three and six, respectively, relative to the original or first copy of the data pieces in the allocated shared resources. The resultant repetition pattern for UE1is used as the base pattern in this example, and the repetition pattern for UE1is denoted as p1=s1−s1=(0, 0, 0).

For UE2, zero shift is performed on the original copy of data pieces x2(1)-x2(27), a cyclic shift of four slots relative to the original copy is performed on the first repetition, and a cyclic shift of five slots relative to the original copy is performed on the second repetition. The cyclic-shift permutation for UE2is denoted as s2=(0, 4, 5). For ease of illustration, the first data piece x2(1) of the series of data pieces x2(1)-x2(27) of UE2in each copy or repetition is highlighted to show that, for UE2in this example, the data pieces in the first repetition and the data pieces in the second repetition have a shift of four and five, respectively, relative to the original or first copy of the data pieces in the allocated shared resources. The repetition pattern for UE2is denoted as p2=s2−s1=(0, +1, −1). In other words, for UE2, while there is zero shift for the first copy of its data pieces x2(1)-x2(27) relative to the first copy of the data pieces x1(1)-x1(27) of UE1, there is a differential of +1 in the shift for the first repetition of the data pieces of UE2relative to the first repetition of the data pieces of UE1. Moreover, there is a differential of −1 in the shift for the second repetition of the data pieces of UE2relative to the second repetition of the data pieces of UE1.

For UE3, zero shift is performed on the original copy of data pieces x3(1)-x3(27), a cyclic shift of two slots relative to the original copy is performed on the first repetition, and a cyclic shift of seven slots relative to the original copy is performed on the second repetition. The cyclic-shift permutation for UE3is denoted as s3=(0, 2, 7). For ease of illustration, the first data piece x2(1) of the series of data pieces x2(1)-x2(27) of UE2in each copy or repetition is highlighted to show that, for UE2in this example, the data pieces in the first repetition and the data pieces in the second repetition have a shift of two and seven, respectively, relative to the original or first copy of the data pieces in the allocated shared resources. The repetition pattern for UE3is denoted as p3=s3−s1=(0, −1, +1). In other words, for UE3, while there is zero shift for the first copy of its data pieces x3(1)-x3(27) relative to the first copy of the data pieces x1(1)-x1(27) of UE1, there is a differential of −1 in the shift for the first repetition of the data pieces of UE3relative to the first repetition of the data pieces of UE1. Moreover, there is a differential of +1 in the shift for the second repetition of the data pieces of UE3relative to the second repetition of the data pieces of UE1.

In general, under the RDMA scheme300, the spreading of the data into the shared resources using the repetition pattern of the data pieces of the data may involve permutating the repetition pattern according to Equation (1) expressed below.
dik≡Pi−Pk=[dik(0),dik(1), . . . ,dik(Mrep−1)]T,
dik(m)≠dik(m′) ifm≠m′,(1)

In Equation (1) above, Mrepis a number of permutations of the repetition pattern when there are L possible positions to choose from for a permutation and LMreppossible sequences for Mreppermutations for Nuesequences to be drawn from the LMrepsequences for NueUEs. Additionally, in Equation (1), Pidenotes a repetition pattern for an ithUE, Pkdenotes repetition pattern for a kthUE, and dik(m) denotes a difference between an amount of shift in time or frequency of an mthrepetition of Piand an amount of shift in time or frequency of an mthrepetition of Pk, with 1<m<Mrep.

FIG. 4illustrates a non-limiting example400of repetition patterns produced by Equation (1) and following the above described design principle. Example400shows possible repetition patterns under the RDMA scheme300of two-time repetition (denoted as “RDMA pattern of 2× repetition”), three-time repetition (denoted as “RDMA pattern of 3× repetition”), and four-time repetition (denoted as “RDMA pattern of 4× repetition”). It is noteworthy that it is preferable that the absolute value of each element in a repetition pattern is as small as possible for better utilization of diversity.

FIG. 5illustrates example system structures500and550implementing the example RDMA scheme300. Structure500may represent functional blocks of an OFDM-based RDMA transmitter of a UE in accordance with the present disclosure. Structure550may represent functional blocks of a single-carrier RDMA transmitter of a UE in accordance with the present disclosure.

Structure500may include a FEC encoder512, a QAM modulator514, a RDMA encoder516, a pilot insertion module518, an IFFT plus CP insertion module520, and a baseband-to-RF front end530. RDMA encoder516may be configured to perform the permutations described above with respect toFIG. 3.

Structure550may include a FEC encoder562, a QAM modulator564, a RDMA encoder566, a pilot insertion module568, and a baseband-to-RF front end570. RDMA encoder566may be configured to perform the permutations described above with respect toFIG. 3.

FIG. 6illustrates an example LDS scheme600in accordance with an implementation of the present disclosure.

Under the LDS scheme600, a UE may use a part of shared time and frequency resources according to an LDS pattern, rather than using the entire shared time and frequency resources. Moreover, the LDS pattern, which includes used resources or shared resources to which data pieces or complex symbols have been allocated, may be centralized or distributed. For instance, the LDS pattern may be centralized within one or more portions of the entire pattern of the shared resources. Alternatively, the LDS pattern may be distributed across the entire pattern of the shared resources. Advantageously, multi-user interference may be reduced while performance may be improved.

Under the LDS scheme600, when data is encoded by spreading data pieces of the data into shared resources using the LDS pattern, the data may be processed using a NOMA scheme in spreading the data into the shared resources using the LDS pattern. For example, the GOCA scheme100and the RDMA scheme300described above, as well as other NOMA schemes (e.g., RSMA, IDMA and sparse code multiple access (SCMA)), may be utilized in spreading the data into the shared time and frequency resources. For instance, data may be spread into the shared resources using a repetition pattern of the data pieces of the data under the RDMA scheme300.

Referring toFIG. 6, for each UE such as UE1, UE2and UE3, the process of MCS may produce a number of source symbols for encoding into a corresponding number of complex symbols. The complex symbols may then be spread into shared time and frequency resources under the LDS scheme300following processing by a NOMA scheme (e.g., the RDMA scheme300). In the example shown inFIG. 6, for UE1, the data pieces may be spread into ⅔ of the shared resources towards the left side of the time-frequency diagram. For UE2, the data pieces may be spread into ⅔ of the shared resources in a distributed fashion across the shared resources, such as on the two ends of the time-frequency diagram. For UE3, the data pieces may be spread into ⅔ of the shared resources towards the right side of the time-frequency diagram. It is noteworthy that there are other possible ways to spread the data pieces into some but not all of the shared resources. Thus, the scope of the LDS scheme600in accordance with the present disclosure is not limited to that shown inFIG. 6.

Illustrative Implementations

FIG. 7illustrates an example apparatus700in accordance with an implementation of the present disclosure. Apparatus700may perform various functions to implement schemes, techniques, processes and methods described herein pertaining to non-orthogonal multiple access for wireless communications, including the various schemes and structures described above with respect toFIG. 1-FIG. 6as well as processes800,900and1000described below.

Apparatus700may be a part of an electronic apparatus, which may be a UE such as a portable or mobile apparatus, a wearable apparatus, a wireless communication apparatus or a computing apparatus. For instance, apparatus700may be implemented in or as a smartphone, a smartwatch, a personal digital assistant, a digital camera, or a computing equipment such as a tablet computer, a laptop computer or a notebook computer. Apparatus700may also be a part of a machine type apparatus, which may be an Internet-of-Things (IoT) apparatus such as an immobile or a stationary apparatus, a home apparatus, a wire communication apparatus or a computing apparatus. For instance, apparatus700may be implemented in a smart thermostat, a smart fridge, a smart door lock, a wireless speaker or a home control center. Alternatively, apparatus700may be implemented in the form of one or more integrated-circuit (IC) chips such as, for example and without limitation, one or more single-core processors, one or more multi-core processors, or one or more complex-instruction-set-computing (CISC) processors. Apparatus700may include at least some of those components shown inFIG. 7such as a processor710, for example. Apparatus700may further include one or more other components not pertinent to the proposed scheme of the present disclosure (e.g., internal power supply, display device and/or user interface device), and, thus, such component(s) of apparatus700are neither shown inFIG. 7nor described below in the interest of simplicity and brevity.

In one aspect, processor710may be implemented in the form of one or more single-core processors, one or more multi-core processors, or one or more CISC processors. That is, even though a singular term “a processor” is used herein to refer to processor710, processor710may include multiple processors in some implementations and a single processor in other implementations in accordance with the present disclosure. In another aspect, processor710may be implemented in the form of hardware (and, optionally, firmware) with electronic components including, for example and without limitation, one or more transistors, one or more diodes, one or more capacitors, one or more resistors, one or more inductors, one or more memristors and/or one or more varactors that are configured and arranged to achieve specific purposes in accordance with the present disclosure. In other words, in at least some implementations, processor710is a special-purpose machine with circuitry specifically designed, arranged and configured to perform specific tasks pertaining to non-orthogonal multiple access for wireless communications between a user equipment (e.g., apparatus700) and a network in accordance with various implementations of the present disclosure.

In some implementations, apparatus700may also include a transceiver730coupled to processor710and capable of wirelessly transmitting and receiving data. Accordingly, apparatus700may wirelessly communicate with a wireless network (e.g., a LTE network, a LTE-Advanced network, a 5th-Generation (5G) network, a New Radio (NR) network, a Wi-Fi network or a wireless network of a different radio access technology) or one or more other UEs via transceiver730. Transceiver730may include a transmitter732and a receiver734. Transmitter732may include circuits configured as functional blocks similar to one or more of the transmitters shown inFIG. 2andFIG. 5. For instance, transmitter732may include hardware and software components for transmitter732to function as an OFDM-based GOCA transmitter, a single-carrier GOCA transmitter, an OFDM-based RDMA transmitter and/or a single-carrier RDMA transmitter.

In some implementations, apparatus700may further include a memory720coupled to processor710and capable of being accessed by processor710and storing data therein. Memory720may include a type of random-access memory (RAM) such as dynamic RAM (DRAM), static RAM (SRAM), thyristor RAM (T-RAM) and/or zero-capacitor RAM (Z-RAM). Alternatively or additionally, memory720may include a type of read-only memory (ROM) such as mask ROM, programmable ROM (PROM), erasable programmable ROM (EPROM) and/or electrically erasable programmable ROM (EEPROM). Alternatively or additionally, memory720may include a type of non-volatile random-access memory (NVRAM) such as flash memory, solid-state memory, ferroelectric RAM (FeRAM), magnetoresistive RAM (MRAM) and/or phase-change memory. Memory720may store therein one or more sets of processor-executable instructions the execution of which by processor710may cause processor710to carry out various functions and operations pertaining to NOMA for wireless communications in accordance with the present disclosure. Memory720may also store therein data724such as data pieces, source symbols, complex symbols, coding sequences and/or composite coding sequences described herein.

In the interest of brevity and to avoid repetition, detailed description of the capabilities and functions of apparatus700is provided below with respect to processes800,900and1000.

FIG. 8illustrates an example process800in accordance with an implementation of the present disclosure. Process800may represent an aspect of implementing the proposed concepts and schemes such as one or more of the various schemes described above pertaining to NOMA for wireless communications. More specifically, process800may represent an example implementation of the GOCA scheme100. Process800may include one or more operations, actions, or functions as illustrated by one or more of blocks810and820. Although illustrated as discrete blocks, various blocks of process800may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation. Moreover, the blocks/sub-blocks of process800may be executed in the order shown inFIG. 8or, alternatively in a different order. The blocks/sub-blocks of process800may be executed iteratively. Process800may be implemented by or in apparatus700as well as any variations thereof. Solely for illustrative purposes and without limiting the scope, process800is described below in the context of apparatus700implemented as an UE among a first group of UEs of multiple groups of UEs in a wireless network. Process800may begin at block810.

At810, process800may involve processor710of apparatus700encoding data for NOMA. In encoding the data, process800may involve processor710spreading the data into shared resources using a multi-stage sequence generation process. Process800may proceed from810to820.

At820, process800may involve processor710transmitting, via transceiver730, the encoded data to a wireless receiver (e.g., a wireless receiver of a network or another UE).

In some implementations, in spreading the data into shared resources using the multi-stage sequence generation process, process800may involve processor710performing a number of operations. For instance, process800may involve processor710generating an orthogonal coding sequence for a first stage of the multi-stage sequence generation process. Additionally, process800may involve processor710, for at least a second sequence of one or more subsequent stages of the multi-stage sequence generation process, generating a non-orthogonal coding sequence. Moreover, process800may involve processor710generating a composite coding sequence by multiplying the orthogonal coding sequence and the non-orthogonal coding sequence. Furthermore, process800may involve processor710generating a plurality of complex symbols for the data by multiplying a predefined number of copies of a plurality of source symbols of the data and the composite coding sequence. Additionally, process800may involve processor710allocating the plurality of complex symbols to shared time and frequency resources.

In some implementations, the orthogonal coding sequence may be different from another orthogonal coding sequence used by another UE of the first group of UEs.

In some implementations, the non-orthogonal coding sequence may be different from another non-orthogonal coding sequence used by another UE of a second group of UEs of the multiple groups of UEs.

In some implementations, in allocating the plurality of complex symbols to the shared time and frequency resources, process800may involve processor710allocating the plurality of complex symbols to the shared time and frequency resources with localized time repetition, and wherein the plurality of complex symbols are allocated to the shared time and frequency resources repeatedly in a way such that each complex symbol of the plurality of complex symbols is consecutively allocated to a respective frequency for the predefined number of times.

In some implementations, in allocating the plurality of complex symbols to the shared time and frequency resources, process800may involve processor710allocating the plurality of complex symbols to the shared time and frequency resources with localized frequency repetition, and wherein the plurality of complex symbols are allocated to the shared time and frequency resources repeatedly in a way such that each complex symbol of the plurality of complex symbols is consecutively allocated to a respective time slot for the predefined number of times.

FIG. 9illustrates an example process900in accordance with an implementation of the present disclosure. Process900may represent an aspect of implementing the proposed concepts and schemes such as one or more of the various schemes described above pertaining to NOMA for wireless communications. More specifically, process900may represent an example implementation of the RDMA scheme300. Process900may include one or more operations, actions, or functions as illustrated by one or more of blocks910and920. Although illustrated as discrete blocks, various blocks of process900may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation. Moreover, the blocks/sub-blocks of process900may be executed in the order shown inFIG. 9or, alternatively in a different order. The blocks/sub-blocks of process900may be executed iteratively. Process900may be implemented by or in apparatus700as well as any variations thereof. Solely for illustrative purposes and without limiting the scope, process900is described below in the context of apparatus700implemented as an UE among a plurality of UEs in a wireless network. Process900may begin at block910.

At910, process900may involve processor710of apparatus700encoding data for NOMA. In encoding the data, process900may involve processor710spreading the data into shared resources using a repetition pattern of a plurality of data pieces of the data. Process900may proceed from910to920.

At920, process900may involve processor710transmitting, via transceiver730, the encoded data to a wireless receiver (e.g., a wireless receiver of a network or another UE).

In some implementations, in spreading the data into the shared resources using the repetition pattern of the plurality of data pieces of the data, process900may involve processor710allocating the plurality of data pieces of the data to a first portion of shared time and frequency resources. Additionally, process900may involve processor710allocating a predefined number of repetitions of the plurality of data pieces of the data to a second portion of the shared time and frequency resources. Each repetition of the predefined number of repetitions may differ from the data pieces allocated to the first portion of the shared time and frequency resources by a respective amount of shift in time or frequency. The respective amount of shift in time or frequency of a first repetition of the predefined number of repetitions for the UE may be different from the respective amount of shift in time or frequency of a first repetition of the predefined number of repetitions for at least one other UE of the plurality of UEs.

In some implementations, the predefined number may equal a spreading factor of the encoding.

In some implementations, in spreading the data into the shared resources using the repetition pattern of the plurality of data pieces of the data, process900may involve processor710permutating the repetition pattern according to an equation as follows: dik≡Pi−Pk=[dik(0), dik(1), . . . , dik(Mrep−1)]T, where dik(m)≠dik(m′) if m≠m′.

Here, Mrepdenotes a number of permutations of the repetition pattern when there are L possible positions to choose from for a permutation and LMreppossible sequences for Mreppermutations for Nuesequences to be drawn from the LMrepsequences for NueUEs. Moreover, Pidenotes a repetition pattern for an ithUE, Pkdenotes repetition pattern for a kthUE, and dik(m) denotes a difference between an amount of shift in time or frequency of an mthrepetition of Piand an amount of shift in time or frequency of an mthrepetition of Pk, with 1<m<Mrep.

In some implementations, in spreading the data into the shared resources using the repetition pattern of the plurality of data pieces of the data, process900may involve processor710performing a same permutation or different permutations on each of the data pieces in one or more repetitions. Moreover, process900may involve processor710combining the permutated data pieces to generate the encoded data.

FIG. 10illustrates an example process1000in accordance with an implementation of the present disclosure. Process1000may represent an aspect of implementing the proposed concepts and schemes such as one or more of the various schemes described above pertaining to NOMA for wireless communications. More specifically, process1000may represent an example implementation of the LDS scheme600. Process1000may include one or more operations, actions, or functions as illustrated by one or more of blocks1010and1020. Although illustrated as discrete blocks, various blocks of process1000may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation. Moreover, the blocks/sub-blocks of process1000may be executed in the order shown inFIG. 10or, alternatively in a different order. The blocks/sub-blocks of process1000may be executed iteratively. Process1000may be implemented by or in apparatus700as well as any variations thereof. Solely for illustrative purposes and without limiting the scope, process1000is described below in the context of apparatus700implemented as an UE among a plurality of UEs in a wireless network. Process1000may begin at block1010.

At1010, process1000may involve processor710of apparatus700encoding data for NOMA. In encoding the data, process1000may involve processor710spreading the data into shared resources using a low-density spreading (LDS) pattern which is less than an entire pattern of the shared resources. Process1000may proceed from1010to1020.

At1020, process1000may involve processor710transmitting, via transceiver730, the encoded data to a wireless receiver (e.g., a wireless receiver of a network or another UE).

In some implementations, the LDS pattern may be centralized within one or more portions of the entire pattern of the shared resources. Alternatively, the LDS pattern may be distributed across the entire pattern of the shared resources.

In some implementations, in encoding the data, process1000may further involve processor710processing the data using a NOMA scheme in spreading the data into the shared resources with the LDS pattern.

In some implementations, in processing the data using the NOMA scheme in spreading the data into the shared resources with the LDS pattern, process1000may involve processor710processing the data using a repetition division multiple access (RDMA) scheme in spreading the data into the shared resources using the LDS pattern. In using the RDMA scheme, process1000may involve processor710spreading the data into the shared resources using a repetition pattern of a plurality of data pieces of the data.

In some implementations, in spreading the data into the shared resources using the repetition pattern of the plurality of data pieces of the data, process900may involve processor710allocating the plurality of data pieces of the data to a first portion of shared time and frequency resources. Additionally, process900may involve processor710allocating a predefined number of repetitions of the plurality of data pieces of the data to a second portion of the shared time and frequency resources. Each repetition of the predefined number of repetitions may differ from the data pieces allocated to the first portion of the shared time and frequency resources by a respective amount of shift in time or frequency. The respective amount of shift in time or frequency of a first repetition of the predefined number of repetitions for the UE may be different from the respective amount of shift in time or frequency of a first repetition of the predefined number of repetitions for at least one other UE of the plurality of UEs.

In some implementations, the predefined number may equal a spreading factor of the encoding.

In some implementations, in spreading the data into the shared resources using the repetition pattern of the plurality of data pieces of the data, process900may involve processor710permutating the repetition pattern according to an equation as follows: dik≡Pi−Pk=[dik(0), dik(1), . . . , dik(Mrep−1)]T, where dik(m)≠dik(m′) if m≠m′.

Here, Mrepdenotes a number of permutations of the repetition pattern when there are L possible positions to choose from for a permutation and LMreppossible sequences for Mreppermutations for Nuesequences to be drawn from the LMrepsequences for NueUEs. Moreover, Pidenotes a repetition pattern for an ithUE, Pkdenotes repetition pattern for a kthUE, and dik(m) denotes a difference between an amount of shift in time or frequency of an mthrepetition of Piand an amount of shift in time or frequency of an mthrepetition of Pk, with 1<m<Mrep.

In some implementations, in spreading the data into the shared resources using the repetition pattern of the plurality of data pieces of the data, process900may involve processor710performing a same permutation or different permutations on each of the data pieces in one or more repetitions. Moreover, process900may involve processor710combining the permutated data pieces to generate the encoded data.

Additional Notes