WO2021163916A1 - Enhanced raptorq codes - Google Patents

Enhanced raptorq codes Download PDF

Info

Publication number
WO2021163916A1
WO2021163916A1 PCT/CN2020/075827 CN2020075827W WO2021163916A1 WO 2021163916 A1 WO2021163916 A1 WO 2021163916A1 CN 2020075827 W CN2020075827 W CN 2020075827W WO 2021163916 A1 WO2021163916 A1 WO 2021163916A1
Authority
WO
WIPO (PCT)
Prior art keywords
symbols
coding scheme
subset
intermediate symbols
generating
Prior art date
Application number
PCT/CN2020/075827
Other languages
French (fr)
Inventor
Kangqi LIU
Changlong Xu
Liangming WU
Jian Li
Hao Xu
Original Assignee
Qualcomm Incorporated
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Incorporated filed Critical Qualcomm Incorporated
Priority to PCT/CN2020/075827 priority Critical patent/WO2021163916A1/en
Publication of WO2021163916A1 publication Critical patent/WO2021163916A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/373Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3761Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] codes

Definitions

  • the following relates generally to encoding, and more specifically to enhanced RaptorQ codes.
  • Wireless communications systems are widely deployed to provide various types of communication content such as voice, video, packet data, messaging, broadcast, and so on. These systems may be capable of supporting communication with multiple users by sharing the available system resources (e.g., time, frequency, and power) .
  • Examples of such multiple-access systems include fourth generation (4G) systems such as Long Term Evolution (LTE) systems, LTE-Advanced (LTE-A) systems, or LTE-A Pro systems, and fifth generation (5G) systems which may be referred to as New Radio (NR) systems.
  • 4G systems such as Long Term Evolution (LTE) systems, LTE-Advanced (LTE-A) systems, or LTE-A Pro systems
  • 5G systems which may be referred to as New Radio (NR) systems.
  • a wireless multiple-access communications system may include a number of base stations or network access nodes, each simultaneously supporting communication for multiple communication devices, which may be otherwise known as user equipment (UE) .
  • UE user equipment
  • the described techniques relate to improved methods, systems, devices, and apparatuses that support enhanced RaptorQ codes.
  • the described techniques provide efficiency through less dropped packets and flexibility in the coding process such that a finite field used can be of any size, instead of just specific sizes.
  • a coding scheme described herein uses rateless fountain codes with unlimited columns to code symbols for data packet transmissions. RaptorQ codes may be used in the encoding process to reduce encoding and decoding complexity.
  • intermediate symbols may be generated from a set of source symbols. For example, low-density parity-check (LDPC) symbols over GF (2) may be generated and Reed Solomon (RS) symbols over GF (q) may be generated, where q is any number. Then the intermediate symbols may be classified into two groups. A first group of intermediate symbols may be Luby transform (LT) symbols and the second group of intermediate symbols may be permanent inactivation (PI) symbols. A degree d is randomly chosen from the LT symbols. Two or three symbols from the PI symbols are randomly chosen. The encoded symbols are generated by applying an XOR function to the chosen symbols. The encoded symbols may be transmitted to a destination node. The destination node may invert the process to decode the encoded symbols in order to recreate the source symbols.
  • LDPC low-density parity-check
  • RS Reed Solomon
  • q GF
  • the intermediate symbols may be classified into two groups.
  • a first group of intermediate symbols may be Luby transform (LT) symbols and the second group of intermediate symbols may be permanent in
  • a method of wireless communication may include determining a set of source symbols for a wireless transmission, generating a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme, generating a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, generating a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmitting the set of encoded symbols.
  • the apparatus may include a processor, memory coupled with the processor, and instructions stored in the memory.
  • the instructions may be executable by the processor to cause the apparatus to determine a set of source symbols for a wireless transmission, generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme, generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmit the set of encoded symbols.
  • the apparatus may include means for determining a set of source symbols for a wireless transmission, generating a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme, generating a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, generating a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmitting the set of encoded symbols.
  • a non-transitory computer-readable medium storing code for wireless communication is described.
  • the code may include instructions executable by a processor to determine a set of source symbols for a wireless transmission, generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme, generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmit the set of encoded symbols.
  • Some examples of the method, apparatuses, and non-transitory computer-readable medium described herein may further include operations, features, means, or instructions for generating a first set of categorized intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols, and generating a second set of categorized intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, where generating the set of encoded symbols may be further based on the first set of categorized intermediate symbols and the second set of categorized intermediate symbols.
  • a size of the third subset of the set of source symbols plus a size of the fourth subset of the set of source symbols equals a size of the set of source symbols.
  • the second coding scheme may be a Reed-Solomon coding scheme. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme may be a cyclic error correcting code. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme may be a Bose–Chaudhuri–Hocquenghem (BCH) code.
  • BCH Bose–Chaudhuri–Hocquenghem
  • the second coding scheme uses a Galois Field having a size other than a power of 2. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme uses a Galois Field having a size between 2 and 256 or above 256.
  • generating the first set of intermediate symbols from the first subset of the set of source symbols further may include operations, features, means, or instructions for generating a portion of the first set of intermediate symbols based on a subset of the second set of intermediate symbols.
  • Some examples of the method, apparatuses, and non-transitory computer-readable medium described herein may further include operations, features, means, or instructions for concatenating the first set of intermediate symbols and the second set of intermediate symbols, where generating the set of encoded symbols may be further based on the concatenation.
  • the first coding scheme may be a LDPC coding scheme.
  • a method of wireless communication may include receiving a set of encoded symbols, generating a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme, generating a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, and generating a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • the apparatus may include a processor, memory coupled with the processor, and instructions stored in the memory.
  • the instructions may be executable by the processor to cause the apparatus to receive a set of encoded symbols, generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme, generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, and generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • the apparatus may include means for receiving a set of encoded symbols, generating a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme, generating a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, and generating a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • a non-transitory computer-readable medium storing code for wireless communication is described.
  • the code may include instructions executable by a processor to receive a set of encoded symbols, generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme, generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, and generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • Some examples of the method, apparatuses, and non-transitory computer-readable medium described herein may further include operations, features, means, or instructions for generating a first set of categorized intermediate symbols from at least a third subset of the set of encoded symbols, where generating the first set of intermediate symbols may be further based on the first set of categorized intermediate symbols, and generating a second set of categorized intermediate symbols from at least a fourth subset of the set of encoded symbols, where generating the second set of intermediate symbols may be further based on the second set of categorized intermediate symbols.
  • the second coding scheme may be a Reed-Solomon coding scheme. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme may be a cyclic error correcting code. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme may be a BCH code.
  • the second coding scheme uses a Galois Field having a size other than a power of 2. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme uses a Galois Field having a size between 2 and 256 or over 256.
  • Some examples of the method, apparatuses, and non-transitory computer-readable medium described herein may further include operations, features, means, or instructions for concatenating the first set of intermediate symbols and the second set of intermediate symbols, where generating the set of source symbols may be further based on the concatenation.
  • the first coding scheme may be a LDPC coding scheme.
  • FIG. 1 illustrates an example of a system for encoding that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • FIG. 2 illustrates an example of an encoding scheme that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • FIGs. 3 and 4 illustrate example conceptual diagrams of a coding matrix that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • FIG. 5 illustrates an example of a process flow that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • FIG. 6 illustrates an example of a method for encoding source symbols that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • FIG. 7 illustrates an example of a method for decoding source symbols that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • FIGs. 8 and 9 show block diagrams of devices that support enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • FIG. 10 shows a block diagram of a coding manager that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • FIG. 11 shows a diagram of a system including a device that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • FIG. 12 shows a diagram of a system including a device that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • FIGs. 13 through 16 show flowcharts illustrating methods that support enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • Some wireless communication systems such as fifth generation (5G) systems which may be referred to as New Radio (NR) systems, may want to efficiently transmit packets with low or negligible packet loss.
  • a network node such as a user equipment (UE) , a base station, or another wireless device, may encode packets before transmission to improve reliability of a destination node successfully receiving the transmitted information.
  • encoded packets may provide redundancy, which may be used to correct errors that result from the transmission environment (e.g., path loss, obstacles, etc. ) .
  • Some examples of encoding algorithms with error correcting codes include fountain codes, such as Luby transform (LT) codes or rapid tornado (Raptor) codes.
  • a fountain code may be an example of a rateless code, where a set of source symbols (e.g., K symbols) may be encoded as any quantity of encoded symbols (e.g., a number of symbols greater than K symbols) . Encoding the source symbols may include combining information related to one or more source symbols into each encoded symbol.
  • the encoded symbols may be transmitted from a first node (which may be referred to as an input node) of a network to a second node (which may be referred to as an output node) .
  • a first node which may be referred to as an input node
  • a second node which may be referred to as an output node
  • one or more encoded symbols may be lost or experience interference due to the transmission environment of the channel.
  • the output node may receive a subset of encoded symbols via the channel, or may receive some symbols with a low signal-to-noise (SNR) level. Based on the encoding and combining, the output node may decode the set of source symbols from the information obtained from the encoded symbols despite the signal degradation.
  • SNR signal-to-noise
  • Some coding schemes may use a finite set, such as a Galois Field (GF) , which may only be specific sizes (such as GF (2) or GF (256) ) .
  • GF Galois Field
  • an LDPC code may be used with a GF (2) .
  • HDPC high density parity-check
  • RS symbols over GF (q) may be generated, where q is any number. This flexibility enables any size of Galois Field to be used.
  • Techniques described herein apply two different coding schemes to a set of source symbols to generate intermediate symbols.
  • One or both of those coding schemes may be capable of supporting any size Galois Field.
  • a first group of intermediate symbols are LT symbols and the second group of intermediate symbols are permanent inactivation (PI) symbols.
  • a degree d is randomly chosen from the LT symbols.
  • Two or three symbols from the PI symbols are randomly chosen.
  • the encoded symbols are generated by applying an XOR function to the chosen symbols.
  • all of the LDPC symbols may be in the intermediate symbols.
  • all the RS symbols may be in the PI symbols.
  • Part of the intermediate symbols may be in the LT symbols and the rest may be in the PI symbols.
  • the techniques described herein may enable network nodes to improve efficiency and reliability of communications in the network by increasing the probability of successfully decoding transmitted information and reducing complexity of the coding process.
  • aspects of the disclosure are initially described in the context of a wireless communications system. Aspects of the disclosure are described in the context of diagrams that explain the coding scheme and the relationships between different types of symbols. Aspects of the disclosure are also described in the context of flow diagrams and flow charts that show the steps of the coding process. Aspects of the disclosure are further illustrated by and described with reference to apparatus diagrams, system diagrams, and flowcharts that relate to enhanced RaptorQ codes.
  • FIG. 1 illustrates an example of a wireless communications system 100 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the wireless communications system 100 includes base stations 105, UEs 115, and a core network 130.
  • the wireless communications system 100 may be a Long Term Evolution (LTE) network, an LTE-Advanced (LTE-A) network, an LTE-A Pro network, or a New Radio (NR) network.
  • LTE Long Term Evolution
  • LTE-A LTE-Advanced
  • LTE-A Pro LTE-A Pro
  • NR New Radio
  • wireless communications system 100 may support enhanced broadband communications, ultra-reliable (e.g., mission critical) communications, low latency communications, or communications with low-cost and low-complexity devices.
  • ultra-reliable e.g., mission critical
  • the base stations 105 may be dispersed throughout a geographic area to form the wireless communications system 100 and may be devices in different forms or having different capabilities.
  • the base stations 105 and the UEs 115 may wirelessly communicate via one or more communication links 125.
  • Each base station 105 may provide a coverage area 110 over which the UEs 115 and the base station 105 may establish one or more communication links 125.
  • the coverage area 110 may be an example of a geographic area over which a base station 105 and a UE 115 may support the communication of signals according to one or more radio access technologies.
  • the UEs 115 may be dispersed throughout a coverage area 110 of the wireless communications system 100, and each UE 115 may be stationary, or mobile, or both at different times.
  • the UEs 115 may be devices in different forms or having different capabilities. Some example UEs 115 are illustrated in FIG. 1.
  • the UEs 115 described herein may be able to communicate with various types of devices, such as other UEs 115, the base stations 105, or network equipment (e.g., core network nodes, relay devices, IAB nodes, or other network equipment) , as shown in FIG. 1.
  • the base stations 105 may communicate with the core network 130, or with one another, or both.
  • the base stations 105 may interface with the core network 130 through one or more backhaul links 120 (e.g., via an S1, N2, N3, or other interface) .
  • the base stations 105 may communicate with one another over the backhaul links 120 (e.g., via an X2, Xn, or other interface) either directly (e.g., directly between base stations 105) , or indirectly (e.g., via core network 130) , or both.
  • the backhaul links 120 may be or include one or more wireless links.
  • One or more of the base stations 105 described herein may include or may be referred to by a person having ordinary skill in the art as a base transceiver station, a radio base station, an access point, a radio transceiver, a NodeB, an eNodeB (eNB) , a next- generation NodeB or a giga-NodeB (either of which may be referred to as a gNB) , a Home NodeB, a Home eNodeB, or other suitable terminology.
  • a base transceiver station a radio base station
  • an access point a radio transceiver
  • a NodeB an eNodeB (eNB)
  • eNB eNodeB
  • a next- generation NodeB or a giga-NodeB either of which may be referred to as a gNB
  • gNB giga-NodeB
  • a UE 115 may include or may be referred to as a mobile device, a wireless device, a remote device, a handheld device, or a subscriber device, or some other suitable terminology, where the “device” may also be referred to as a unit, a station, a terminal, or a client, among other examples.
  • a UE 115 may also include or may be referred to as a personal electronic device such as a cellular phone, a personal digital assistant (PDA) , a multimedia/entertainment device (e.g., a radio, a MP3 player, a video device, etc.
  • PDA personal digital assistant
  • a camera e.g., a gaming device, a navigation/positioning device (e.g., GNSS (global navigation satellite system) devices based on, for example, GPS (global positioning system) , Beidou, GLONASS, or Galileo, a terrestrial-based device, etc.
  • GNSS global navigation satellite system
  • GPS global positioning system
  • Beidou Beidou
  • GLONASS Galileo
  • a terrestrial-based device etc.
  • a tablet computer a laptop computer, a netbook, a smartbook, a personal computer
  • a smart device a wearable device (e.g., a smart watch, smart clothing, smart glasses, virtual reality goggles, a smart wristband, smart jewelry (e.g., a smart ring, a smart bracelet) )
  • a drone a robot/robotic device, a vehicle, a vehicular device, a meter (e.g., parking meter, electric meter, gas meter, water meter) , a monitor, a gas pump, an appliance (e.g., kitchen appliance, washing machine, dryer) , a location tag, a medical/healthcare device, an implant, a sensor/actuator, a display, or any other suitable device configured to communicate via a wireless or wired medium.
  • a wearable device e.g., a smart watch, smart clothing, smart glasses, virtual reality goggles, a smart wristband, smart jewelry (e.g., a smart
  • a UE 115 may include or be referred to as a wireless local loop (WLL) station, an Internet of Things (IoT) device, an Internet of Everything (IoE) device, or a machine type communications (MTC) device, among other examples, which may be implemented in various objects such as appliances, or vehicles, meters, among other examples.
  • WLL wireless local loop
  • IoT Internet of Things
  • IoE Internet of Everything
  • MTC machine type communications
  • Some UEs 115 may be low cost or low complexity devices, and may provide for automated communication between machines (e.g., via Machine-to-Machine (M2M) communication) .
  • M2M communication or MTC may refer to data communication technologies that allow devices to communicate with one another or a base station 105 without human intervention.
  • M2M communication or MTC may include communications from devices that integrate sensors or meters to measure or capture information and relay that information to a central server or application program that can make use of the information or present the information to humans interacting with the program or application.
  • Some UEs 115 may be designed to collect information or enable automated behavior of machines.
  • MTC or IoT UEs may include MTC/enhanced MTC (eMTC, also referred to as CAT-M, Cat M1) UEs, narrowband IoT (NB-IoT) (also referred to as CAT NB1) UEs, as well as other types of UEs.
  • eMTC and NB-IoT may refer to future technologies that may evolve from or may be based on these technologies.
  • eMTC may include FeMTC (further eMTC) , eFeMTC (enhanced further eMTC) , mMTC (massive MTC) , etc.
  • NB-IoT may include eNB-IoT (enhanced NB-IoT) , FeNB-IoT (further enhanced NB-IoT) , etc.
  • the UEs 115 described herein may be able to communicate with various types of devices, such as other UEs 115 that may sometimes act as relays as well as the base stations 105 and the network equipment including macro eNBs or gNBs, small cell eNBs or gNBs, or relay base stations, among other examples, as shown in FIG. 1.
  • devices such as other UEs 115 that may sometimes act as relays as well as the base stations 105 and the network equipment including macro eNBs or gNBs, small cell eNBs or gNBs, or relay base stations, among other examples, as shown in FIG. 1.
  • the UEs 115 and the base stations 105 may wirelessly communicate with one another via one or more communication links 125 over one or more carriers.
  • the term “carrier” may refer to a set of radio frequency spectrum resources having a defined physical layer structure for supporting the communication links 125.
  • a carrier used for a communication link 125 may include a portion of a radio frequency spectrum band (e.g., a bandwidth part (BWP) ) that is operated according to one or more physical layer channels for a given radio access technology (e.g., LTE, LTE-A, LTE-A Pro, NR) .
  • BWP bandwidth part
  • Each physical layer channel may carry acquisition signaling (e.g., synchronization signals, system information) , control signaling that coordinates operation for the carrier, user data, or other signaling.
  • the wireless communications system 100 may support communication with a UE 115 using carrier aggregation or multi-carrier operation.
  • a UE 115 may be configured with multiple downlink component carriers and one or more uplink component carriers according to a carrier aggregation configuration.
  • Carrier aggregation may be used with both frequency division duplexing (FDD) and time division duplexing (TDD) component carriers.
  • FDD frequency division duplexing
  • TDD time division duplexing
  • Signal waveforms transmitted over a carrier may be made up of multiple subcarriers (e.g., using multi-carrier modulation (MCM) techniques such as orthogonal frequency division multiplexing (OFDM) or discrete Fourier transform spread OFDM (DFT- S-OFDM) ) .
  • MCM multi-carrier modulation
  • OFDM orthogonal frequency division multiplexing
  • DFT- S-OFDM discrete Fourier transform spread OFDM
  • a resource element may consist of one symbol period (e.g., a duration of one modulation symbol) and one subcarrier, where the symbol period and subcarrier spacing are inversely related.
  • the number of bits carried by each resource element may depend on the modulation scheme (e.g., the order of the modulation scheme, the coding rate of the modulation scheme, or both) .
  • a wireless communications resource may refer to a combination of a radio frequency spectrum resource, a time resource, and a spatial resource (e.g., spatial layers or beams) , and the use of multiple spatial layers may further increase the data rate or data integrity for communications with a UE 115.
  • Time intervals of a communications resource may be organized according to radio frames each having a specified duration (e.g., 10 milliseconds (ms) ) .
  • Each radio frame may be identified by a system frame number (SFN) (e.g., ranging from 0 to 1023) .
  • SFN system frame number
  • Each frame may include multiple consecutively numbered subframes or slots, and each subframe or slot may have the same duration.
  • a frame may be divided (e.g., in the time domain) into subframes, and each subframe may be further divided into a number of slots.
  • each frame may include a variable number of slots, and the number of slots may depend on subcarrier spacing.
  • Each slot may include a number of symbol periods (e.g., depending on the length of the cyclic prefix prepended to each symbol period) .
  • a slot may further be divided into multiple mini-slots containing one or more symbols. Excluding the cyclic prefix, each symbol period may contain one or more (e.g., N f ) sampling periods. The duration of a symbol period may depend on the subcarrier spacing or frequency band of operation.
  • a subframe, a slot, a mini-slot, or a symbol may be the smallest scheduling unit (e.g., in the time domain) of the wireless communications system 100 and may be referred to as a transmission time interval (TTI) .
  • TTI duration e.g., the number of symbol periods in a TTI
  • the smallest scheduling unit of the wireless communications system 100 may be dynamically selected (e.g., in bursts of shortened TTIs (sTTIs) ) .
  • Physical channels may be multiplexed on a carrier according to various techniques.
  • a physical control channel and a physical data channel may be multiplexed on a downlink carrier, for example, using one or more of time division multiplexing (TDM) techniques, frequency division multiplexing (FDM) techniques, or hybrid TDM-FDM techniques.
  • a control region e.g., a control resource set (CORESET)
  • CORESET control resource set
  • a control region for a physical control channel may be defined by a number of symbol periods and may extend across the system bandwidth or a subset of the system bandwidth of the carrier.
  • One or more control regions (e.g., CORESETs) may be configured for a set of the UEs 115.
  • one or more of the UEs 115 may monitor or search control regions for control information according to one or more search space sets, and each search space set may include one or multiple control channel candidates in one or more aggregation levels arranged in a cascaded manner.
  • An aggregation level for a control channel candidate may refer to a number of control channel resources (e.g., control channel elements (CCEs) ) associated with encoded information for a control information format having a given payload size.
  • Search space sets may include common search space sets configured for sending control information to multiple UEs 115 and UE-specific search space sets for sending control information to a specific UE 115.
  • Each base station 105 may provide communication coverage via one or more cells, for example a macro cell, a small cell, a hot spot, or other types of cells, or any combination thereof.
  • the term “cell” may refer to a logical communication entity used for communication with a base station 105 (e.g., over a carrier) and may be associated with an identifier for distinguishing neighboring cells (e.g., a physical cell identifier (PCID) , a virtual cell identifier (VCID) , or others) .
  • a cell may also refer to a geographic coverage area 110 or a portion of a geographic coverage area 110 (e.g., a sector) over which the logical communication entity operates.
  • Such cells may range from smaller areas (e.g., a structure, a subset of structure) to larger areas depending on various factors such as the capabilities of the base station 105.
  • a cell may be or include a building, a subset of a building, or exterior spaces between or overlapping with geographic coverage areas 110, among other examples.
  • a macro cell generally covers a relatively large geographic area (e.g., several kilometers in radius) and may allow unrestricted access by the UEs 115 with service subscriptions with the network provider supporting the macro cell.
  • a small cell may be associated with a lower-powered base station 105, as compared with a macro cell, and a small cell may operate in the same or different (e.g., licensed, unlicensed) frequency bands as macro cells.
  • Small cells may provide unrestricted access to the UEs 115 with service subscriptions with the network provider or may provide restricted access to the UEs 115 having an association with the small cell (e.g., the UEs 115 in a closed subscriber group (CSG) , the UEs 115 associated with users in a home or office) .
  • a base station 105 may support one or multiple cells and may also support communications over the one or more cells using one or multiple component carriers.
  • a carrier may support multiple cells, and different cells may be configured according to different protocol types (e.g., MTC, NB-IoT, enhanced mobile broadband (eMBB) ) that may provide access for different types of devices.
  • protocol types e.g., MTC, NB-IoT, enhanced mobile broadband (eMBB)
  • eMBB enhanced mobile broadband
  • a base station 105 may be movable and therefore provide communication coverage for a moving geographic coverage area 110.
  • different geographic coverage areas 110 associated with different technologies may overlap, but the different geographic coverage areas 110 may be supported by the same base station 105.
  • the overlapping geographic coverage areas 110 associated with different technologies may be supported by different base stations 105.
  • the wireless communications system 100 may include, for example, a heterogeneous network in which different types of the base stations 105 provide coverage for various geographic coverage areas 110 using the same or different radio access technologies.
  • Some UEs 115 may be low cost or low complexity devices and may provide for automated communication between machines (e.g., via Machine-to-Machine (M2M) communication) .
  • M2M communication or MTC may refer to data communication technologies that allow devices to communicate with one another or a base station 105 without human intervention.
  • M2M communication or MTC may include communications from devices that integrate sensors or meters to measure or capture information and relay such information to a central server or application program that makes use of the information or presents the information to humans interacting with the application program.
  • Some UEs 115 may be designed to collect information or enable automated behavior of machines or other devices. Examples of applications for MTC devices include smart metering, inventory monitoring, water level monitoring, equipment monitoring, healthcare monitoring, wildlife monitoring, weather and geological event monitoring, fleet management and tracking, remote security sensing, physical access control, and transaction-based business charging.
  • the wireless communications system 100 may be configured to support ultra-reliable communications or low-latency communications, or various combinations thereof.
  • the wireless communications system 100 may be configured to support ultra-reliable low-latency communications (URLLC) or mission critical communications.
  • the UEs 115 may be designed to support ultra-reliable, low-latency, or critical functions (e.g., mission critical functions) .
  • Ultra-reliable communications may include private communication or group communication and may be supported by one or more mission critical services such as mission critical push-to-talk (MCPTT) , mission critical video (MCVideo) , or mission critical data (MCData) .
  • MCPTT mission critical push-to-talk
  • MCVideo mission critical video
  • MCData mission critical data
  • Support for mission critical functions may include prioritization of services, and mission critical services may be used for public safety or general commercial applications.
  • the terms ultra-reliable, low-latency, mission critical, and ultra-reliable low-latency may be used interchangeably herein.
  • a UE 115 may also be able to communicate directly with other UEs 115 over a device-to-device (D2D) communication link 135 (e.g., using a peer-to-peer (P2P) or D2D protocol) .
  • D2D device-to-device
  • P2P peer-to-peer
  • One or more UEs 115 utilizing D2D communications may be within the geographic coverage area 110 of a base station 105.
  • Other UEs 115 in such a group may be outside the geographic coverage area 110 of a base station 105 or be otherwise unable to receive transmissions from a base station 105.
  • groups of the UEs 115 communicating via D2D communications may utilize a one-to-many (1: M) system in which each UE 115 transmits to every other UE 115 in the group.
  • a base station 105 facilitates the scheduling of resources for D2D communications. In other cases, D2D communications are carried out between the UEs 115 without the involvement of a base station 105.
  • the core network 130 may provide user authentication, access authorization, tracking, Internet Protocol (IP) connectivity, and other access, routing, or mobility functions.
  • the core network 130 may be an evolved packet core (EPC) or 5G core (5GC) , which may include at least one control plane entity that manages access and mobility (e.g., a mobility management entity (MME) , an access and mobility management function (AMF) ) and at least one user plane entity that routes packets or interconnects to external networks (e.g., a serving gateway (S-GW) , a Packet Data Network (PDN) gateway (P-GW) , or a user plane function (UPF) ) .
  • EPC evolved packet core
  • 5GC 5G core
  • MME mobility management entity
  • AMF access and mobility management function
  • S-GW serving gateway
  • PDN Packet Data Network gateway
  • UPF user plane function
  • the control plane entity may manage non-access stratum (NAS) functions such as mobility, authentication, and bearer management for the UEs 115 served by the base stations 105 associated with the core network 130.
  • NAS non-access stratum
  • User IP packets may be transferred through the user plane entity, which may provide IP address allocation as well as other functions.
  • the user plane entity may be connected to network operators IP services.
  • the operators IP services may include access to the Internet, Intranet (s) , an IP Multimedia Subsystem (IMS) , or a Packet-Switched Streaming Service, for example.
  • Some of the network devices may include subcomponents such as an access network entity 140, which may be an example of an access node controller (ANC) .
  • Each access network entity 140 may communicate with the UEs 115 through one or more other access network transmission entities 145, which may be referred to as radio heads, smart radio heads, or transmission/reception points (TRPs) .
  • Each access network transmission entity 145 may include one or more antenna panels.
  • various functions of each access network entity 140 or base station 105 may be distributed across various network devices (e.g., radio heads and ANCs) or consolidated into a single network device (e.g., a base station 105) .
  • the wireless communications system 100 may operate using one or more frequency bands, typically in the range of 300 megahertz (MHz) to 300 gigahertz (GHz) .
  • the region from 300 MHz to 3 GHz is known as the ultra-high frequency (UHF) region or decimeter band because the wavelengths range from approximately one decimeter to one meter in length.
  • UHF waves may be blocked or redirected by buildings and environmental features, but the waves may penetrate structures sufficiently for a macro cell to provide service to the UEs 115 located indoors.
  • the transmission of UHF waves may be associated with smaller antennas and shorter ranges (e.g., less than 100 kilometers) compared to transmission using the smaller frequencies and longer waves of the high frequency (HF) or very high frequency (VHF) portion of the spectrum below 300 MHz.
  • HF high frequency
  • VHF very high frequency
  • the wireless communications system 100 may also operate in a super high frequency (SHF) region using frequency bands from 3 GHz to 30 GHz, also known as the centimeter band, or in an extremely high frequency (EHF) region of the spectrum (e.g., from 30 GHz to 300 GHz) , also known as the millimeter band.
  • SHF super high frequency
  • EHF extremely high frequency
  • the wireless communications system 100 may support millimeter wave (mmW) communications between the UEs 115 and the base stations 105, and EHF antennas of the respective devices may be smaller and more closely spaced than UHF antennas. In some examples, this may facilitate use of antenna arrays within a device.
  • mmW millimeter wave
  • the propagation of EHF transmissions may be subject to even greater atmospheric attenuation and shorter range than SHF or UHF transmissions.
  • the techniques disclosed herein may be employed across transmissions that use one or more different frequency regions, and designated use of bands across these frequency regions may differ by country or regulating body.
  • the wireless communications system 100 may utilize both licensed and unlicensed radio frequency spectrum bands.
  • the wireless communications system 100 may employ License Assisted Access (LAA) , LTE-Unlicensed (LTE-U) radio access technology, or NR technology in an unlicensed band such as the 5 GHz industrial, scientific, and medical (ISM) band.
  • LAA License Assisted Access
  • LTE-U LTE-Unlicensed
  • NR NR technology
  • an unlicensed band such as the 5 GHz industrial, scientific, and medical (ISM) band.
  • devices such as the base stations 105 and the UEs 115 may employ carrier sensing for collision detection and avoidance.
  • operations in unlicensed bands may be based on a carrier aggregation configuration in conjunction with component carriers operating in a licensed band (e.g., LAA) .
  • Operations in unlicensed spectrum may include downlink transmissions, uplink transmissions, P2P transmissions, or D2D transmissions, among other examples.
  • a base station 105 or a UE 115 may be equipped with multiple antennas, which may be used to employ techniques such as transmit diversity, receive diversity, multiple-input multiple-output (MIMO) communications, or beamforming.
  • the antennas of a base station 105 or a UE 115 may be located within one or more antenna arrays or antenna panels, which may support MIMO operations or transmit or receive beamforming.
  • one or more base station antennas or antenna arrays may be co-located at an antenna assembly, such as an antenna tower.
  • antennas or antenna arrays associated with a base station 105 may be located in diverse geographic locations.
  • a base station 105 may have an antenna array with a number of rows and columns of antenna ports that the base station 105 may use to support beamforming of communications with a UE 115.
  • a UE 115 may have one or more antenna arrays that may support various MIMO or beamforming operations.
  • an antenna panel may support radio frequency beamforming for a signal transmitted via an antenna port.
  • the base stations 105 or the UEs 115 may use MIMO communications to exploit multipath signal propagation and increase the spectral efficiency by transmitting or receiving multiple signals via different spatial layers. Such techniques may be referred to as spatial multiplexing.
  • the multiple signals may, for example, be transmitted by the transmitting device via different antennas or different combinations of antennas. Likewise, the multiple signals may be received by the receiving device via different antennas or different combinations of antennas.
  • Each of the multiple signals may be referred to as a separate spatial stream and may carry bits associated with the same data stream (e.g., the same codeword) or different data streams (e.g., different codewords) .
  • Different spatial layers may be associated with different antenna ports used for channel measurement and reporting.
  • MIMO techniques include single-user MIMO (SU-MIMO) , where multiple spatial layers are transmitted to the same receiving device, and multiple-user MIMO (MU-MIMO) , where multiple spatial layers are transmitted to multiple devices.
  • SU-MIMO single-user MIMO
  • Beamforming which may also be referred to as spatial filtering, directional transmission, or directional reception, is a signal processing technique that may be used at a transmitting device or a receiving device (e.g., a base station 105, a UE 115) to shape or steer an antenna beam (e.g., a transmit beam, a receive beam) along a spatial path between the transmitting device and the receiving device.
  • Beamforming may be achieved by combining the signals communicated via antenna elements of an antenna array such that some signals propagating at particular orientations with respect to an antenna array experience constructive interference while others experience destructive interference.
  • the adjustment of signals communicated via the antenna elements may include a transmitting device or a receiving device applying amplitude offsets, phase offsets, or both to signals carried via the antenna elements associated with the device.
  • the adjustments associated with each of the antenna elements may be defined by a beamforming weight set associated with a particular orientation (e.g., with respect to the antenna array of the transmitting device or receiving device, or with respect to some other orientation) .
  • Wireless communications system 100 may be an NR system that may utilize any combination of licensed, shared, and unlicensed spectrum bands, among others.
  • the flexibility of eCC symbol duration and subcarrier spacing may allow for the use of eCC across multiple spectrums.
  • NR shared spectrum may increase spectrum utilization and spectral efficiency, specifically through dynamic vertical (e.g., across the frequency domain) and horizontal (e.g., across the time domain) sharing of resources.
  • the wireless communications system 100 may be a packet-based network that operates according to a layered protocol stack.
  • communications at the bearer or Packet Data Convergence Protocol (PDCP) layer may be IP-based.
  • a Radio Link Control (RLC) layer may perform packet segmentation and reassembly to communicate over logical channels.
  • RLC Radio Link Control
  • a Medium Access Control (MAC) layer may perform priority handling and multiplexing of logical channels into transport channels.
  • the MAC layer may also use error detection techniques, error correction techniques, or both to support retransmissions at the MAC layer to improve link efficiency.
  • the Radio Resource Control (RRC) protocol layer may provide establishment, configuration, and maintenance of an RRC connection between a UE 115 and a base station 105 or a core network 130 supporting radio bearers for user plane data.
  • RRC Radio Resource Control
  • transport channels may be mapped to physical channels.
  • the UEs 115 and the base stations 105 may support retransmissions of data to increase the likelihood that data is received successfully.
  • Hybrid automatic repeat request (HARQ) feedback is one technique for increasing the likelihood that data is received correctly over a communication link 125.
  • HARQ may include a combination of error detection (e.g., using a cyclic redundancy check (CRC) ) , forward error correction (FEC) , and retransmission (e.g., automatic repeat request (ARQ) ) .
  • FEC forward error correction
  • ARQ automatic repeat request
  • HARQ may improve throughput at the MAC layer in poor radio conditions (e.g., low signal-to-noise conditions) .
  • a device may support same-slot HARQ feedback, where the device may provide HARQ feedback in a specific slot for data received in a previous symbol in the slot. In other cases, the device may provide HARQ feedback in a subsequent slot, or according to some other time interval.
  • the wireless communications system 100 may include one or more UEs 115 and base stations 105 that may support enhancements to coding systems as described herein.
  • a UE 115 includes a coding manager 150.
  • a base station 105 may include the coding manager 150.
  • the coding manager 150 may determine a set of source symbols for a wireless transmission, such as from a processor of the UE 115.
  • the coding manager 150 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme.
  • the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the second coding scheme may be a Reed-Solomon coding scheme.
  • the coding manager 150 may generate a set of encoded symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • the UE 115 may transmit the set of encoded symbols.
  • the coding manager 150 may also receive a set of encoded symbols and decode at least some of the symbols.
  • the coding manager 150 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme.
  • the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the coding manager 150 may also generate a set of source symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • the UE 115 may use the source symbols for further communications, in an application, or the like.
  • the coding manager 150 may improve efficiency of the transmission of coded packets. Coding schemes that may have a configurable Galois Field size corresponding to an arbitrary integer, such as the Reed Solomon coding scheme, may improve flexibility of the coding mechanism. In addition, Reed Solomon codes have efficient encoding and decoding algorithms that may improve performance. The techniques described herein may enable network nodes to improve efficiency and reliability of decoding transmitted information.
  • FIG. 2 illustrates an example of an encoding scheme 200 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the encoding scheme 200 may be implemented in aspects of wireless communications system 100.
  • the coding manager 150 as shown in FIG. 1 may implement the encoding scheme 200.
  • a coding manager in a base station may implement the encoding scheme.
  • the encoding scheme 200 may be associated with communications between network nodes, where each network node may be a UE 115, a base station 105, or any other type of network node as described herein.
  • the encoding scheme 200 may use FEC coding, such as Raptor coding, to encode packets for transmission.
  • FEC coding such as Raptor coding
  • the encoding scheme 200 may use RaptorQ codes to encode packets for transmission.
  • RaptorQ codes the encoding and decoding complexities of LT codes may be reduced by reducing the average degree.
  • the coding process may include a precoding process which generates some redundant symbols (e.g., S LDPC symbols and H half symbols) and an encoding process for each encoding symbol. Techniques described herein provide an enhanced encoding process that incorporates a coding scheme configurable for an arbitrary sized Galois field.
  • a node (which may be referred to as an input node) may encode a set of source symbols 205 into a set of encoded symbols 250.
  • the set of source symbols 205 may contain a number, K, of source symbols 205, where K is a positive integer.
  • the number of encoded symbols 250 may be greater than the number of source symbols 205, in order to improve a probability of successfully decoding the source symbols 205 at another node (which may be referred to as an output node) .
  • the encoding scheme 200 may be rateless, where the number of encoded symbols 250 may have no upper limit.
  • the encoding scheme 200 may include a precoding process 210.
  • the input node may map one or more source symbols 205 to a portion of a set of intermediate symbols 215.
  • the input node may generate a quantity of intermediate symbols 215 concatenated with the source symbols 220.
  • a quantity of intermediate symbols 215 are generated in addition to a number K of intermediate symbols 215 directly mapped to the K source symbols 205 (e.g., systematic symbols) .
  • the intermediate symbols 215 may include a copy of the source symbols 205 as concatenated source symbols 220, a set of first coded symbols 225, and a set of second coded symbols 230.
  • the set of first coded symbols 225 may include a quantity S of LDPC symbols, where one or more copies (e.g., three copies) of each source symbol 205 may appear in each of the set of first coded symbols 225 (also referred to herein as LDPC symbols 225) .
  • the set of second coded symbols 230 may also include a number H of symbols generated using a coding scheme that supports an arbitrary Galois field (e.g., finite fields GF (q) ) , such as a Reed Solomon code.
  • the coding scheme may have a configurable Galois Field size corresponding to an arbitrary integer.
  • the encoding scheme 200 may include an LT coding process 235 following the precoding process 210.
  • the input node may map some of the intermediate symbols 215 to a set of classified intermediate symbols 240.
  • the set of classified intermediate symbols 240 may include a set of LT symbols 245 and a set of PI symbols 250.
  • the LT symbols 245 may be based at least in part on a subset of the LDPC symbols 225 and at least a subset of the set of source symbols 205.
  • the PI symbols 250 may be generated from at least a subset of the first set of intermediate symbols 225 and at least a third subset of the source symbols 205.
  • the LT symbols 245 and the PI symbols 250 may be concatenated together.
  • a set of encoded symbols 255 may be generated from the classified intermediate symbols 240.
  • the set of encoded symbols 255 may be generated first by choosing a degree d i (where d i is a whole number) of the LT symbols 245.
  • the degree d i may be randomly (e.g., pseudo-randomly) selected.
  • two or three symbols from the PI symbols 250 may be randomly (e.g., pseudo-randomly) chosen.
  • other numbers of PI symbols 250 may be chosen.
  • the PI symbols 250 may also be selected based on a pseudo-random selection.
  • the encoded symbols 255 may be generated from the selected LT symbols 245 and the selected PI symbols 250 according to an LT encoding process.
  • each encoded symbol 255 may be associated with information identifying the source symbols 205 used to construct the encoded symbol 255.
  • each encoded symbol 255 may be associated with indices (e.g., s 1 , s 2 , s 3 , s K , etc. ) of the source symbols 205 used to construct the encoded symbol 225.
  • the encoding scheme 200 may be represented by a generator matrix G.
  • the source symbols 205 contained in encoded symbols 250 of a given encoded packet may be represented by p j , which may be defined as:
  • one or more encoded packets p j may be lost or noisy based on the transmission environment.
  • the output node may receive a subset of the encoded packets (e.g., a quantity N of the encoded packets) via the wireless channel.
  • the source symbols 205 contained in encoded symbols 255 of a given encoded packet received by the output node may be represented by d k , which may be defined by:
  • the output node may recover all source symbols 205 in the set of source symbols 205 when the matrix G nk of the received packets is invertible. Additionally or alternatively, the output node may recover all source symbols 205 in the set of source symbols 205 when the matrix G nk of the received packets has a rank K, where K is the quantity of source symbols 205 in the set of source symbols 205. That is, techniques described herein may be able to recover packets that may otherwise be lost (e.g., dropped) due to poor channel conditions. To increase a probability of the output node successfully decoding the set of source symbols 205, the encoding scheme 200 may be designed such that the representative generator matrix G nk is invertible for a minimum quantity N of received encoded packets.
  • the output node may decode the received encoded symbols 255 in order to obtain the source symbols 205.
  • the output node may begin a decoding process by identifying an encoded symbol 255 with an index t j that is connected to a single source symbol 205 with an index s i .
  • the output node may determine that the encoded symbol 255 with index t j is equivalent to the source symbol 205 with index s i .
  • the output node may then apply an XOR operation to each other encoding symbol 225 connected to the source symbol 205 with index s i , and remove all edges connected to the source symbol 205 with index s i .
  • the output node may repeat this process until each source symbol 205 is determined from the received encoded symbols 255 (e.g., all s i are determined) . Additionally or alternatively, a Gaussian elimination process may be used to decode the encoded symbols 255.
  • LT coding symbols may be generated using an LT coding process.
  • i 0, ..., K-1
  • a is defined as:
  • D is defined as S+H zero symbols followed by the K′ source symbols.
  • the LDPC symbols are created by iteratively calculating C and b (e.g., three times) :
  • the half symbols, H may be calculated using a high-density parity check (HDPC) coding.
  • the H set of second coded symbols 230 may be half symbols, where each half symbol may include ceil (H/2) source symbols 205, and where ceil (x) may represent a ceiling function mapping x to an integer greater than or equal to x.
  • the half symbols may be created by applying an XOR function to the copies of the source symbols 205. Calculating H may follow the pseudo-code:
  • the encoding scheme 200 may include precoding RaptorQ codes.
  • RaptorQ code there are two LDPC generators (e.g., G_LDPC1 and G_LDPC2) , as shown in FIGs. 3 and 4.
  • the LDPC symbols may be generated over Galois Field 2 (GF (2) ) . If HDPC symbols are generated, they may be generated over Galois Field 256 (GF (256) ) .
  • the encoding scheme 200 may include precoding with a coding scheme that has a configurable Galois Field size corresponding to an arbitrary integer.
  • the encoding scheme 200 may include a Reed Solomon of GF (q) , where q is any integer.
  • FIG. 3 illustrates an example conceptual diagram of a coding matrix 300 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the coding matrix 300 illustrates the relationship between the intermediate and the source symbols.
  • the coding matrix 300 may be implemented in aspects of wireless communications system 100.
  • the coding manager 150 as shown in FIG. 1 may implement the coding matrix 300.
  • a coding manager in a base station may implement the encoding scheme.
  • the coding matrix 300 may be associated with communications between network nodes, where each network node may be a UE 115, a base station 105, or any other type of network node as described herein.
  • the coding matrix 300 shows a set of source symbols, K, a set of HDPC symbols, H, a set of LDPC symbols, S, and a number of source symbols with zero padding, K′.
  • G_LDPC1 For S crossed with B, a first LDPC coding scheme, G_LDPC1 is used to generate the LDPC symbols.
  • I_S and I_H are used, respectively.
  • G_LDPC2 For S crossed with U, a generator matrix using a LDPC coding scheme, G_LDPC2, may be used.
  • G_LDPC1 may use the same or different coding scheme as G_LDPC2.
  • the null matrix 0_SxH For S crossed with H, the null matrix 0_SxH may be used.
  • the precoding scheme may also include generating intermediate symbols that are generating using a configurable Galois Field size corresponding to an arbitrary integer.
  • the encoding scheme 200 may include a Reed Solomon of GF (q) , where q is any integer.
  • a generator matrix G_RS uses a configurable Galois Field size corresponding to an arbitrary integer.
  • the coding scheme may be a Reed-Solomon coding scheme, a cyclic error correcting code, or a Bose–Chaudhuri–Hocquenghem (BCH) code, for example.
  • the coding scheme uses a Galois Field having a size other than a power of 2.
  • the coding scheme uses a Galois Field having a size between 2 and 256 or over 256 (e.g., an integer greater than 2 that is not equal to 256) .
  • the K′ encoded symbols may be generated from B, S, U, and H using a generator encoding scheme, G_ENC.
  • FIG. 4 illustrates an example conceptual diagram of a coding matrix 400 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the coding matrix 400 may be implemented in aspects of wireless communications system 100.
  • the coding manager 150 as shown in FIG. 1 may implement the coding matrix 400.
  • a coding manager in a base station may implement the encoding scheme.
  • the coding matrix 400 may be associated with communications between network nodes, where each network node may be a UE 115, a base station 105, or any other type of network node as described herein.
  • the coding matrix 400 compared with that of FIG. 3, includes that the LDPC symbols are also based on H as well as U.
  • FIG. 5 illustrates an example of a process flow 500 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • Process flow 500 may include a base station 105-a and a UE 115-a.
  • the base station 105-a may act as an input node and perform encoding
  • the UE 115-a may act as an output node and perform decoding.
  • the UE 115-a may act as the input node while the base station 105-a may act as the output node.
  • the communications may be between two UEs 115 or two base stations 105, or between any other types of nodes.
  • the base station 105-a and the UE 115-a may implement the encoding scheme 200.
  • the base station 105-a and the UE 115-a may represent one or more aspects of the base stations 105 and the UEs 115 shown in FIG. 1, respectively.
  • the base station 105-a may determine a set of source symbols for a data transmission.
  • the data transmission may be encoded to reduce packet loss, for security, or the like.
  • the source symbols may be included in one or more data packets for transmission.
  • intermediate symbols may be generated using a first coding scheme and a second coding scheme.
  • the base station 105-a may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme.
  • the first coding scheme may be LDPC coding scheme.
  • a portion of the first set of intermediate symbols may be generated based on a subset of the second set of intermediate symbols.
  • the base station 105-a may also generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme at 510.
  • the second coding scheme may have a configurable Galois Field size corresponding to an arbitrary integer.
  • the second coding scheme is a Reed-Solomon code.
  • the second coding scheme is a cyclic error correcting code or a BCH code.
  • the second coding scheme uses a Galois Field having a size other than a power of 2, or different from the Galois Field size associated with HDPC (e.g., an integer greater than 2 and not equal to 256) .
  • the base station 105-a may generate classified intermediate symbols from the previously generated intermediate symbols. For example, the base station 105-a may generate a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols. The base station 105-a may also generate a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, where generating the set of encoded symbols is further based on the first set of classified intermediate symbols and the second set of classified intermediate symbols. The third and fourth subset of the set of source symbols may be the same or different subsets.
  • the base station 105-a may encode the classified intermediate symbols to create a set of encoded symbols. That is, the base station 105-a may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. In some examples, the base station 105-a may concatenate the first set of intermediate symbols and the second set of intermediate symbols, where generating the set of encoded symbols is further based on the concatenation.
  • the base station 105-a may transmit the set of encoded symbols to the UE 115-a.
  • the set of encoded symbols may be broadcast or unicast.
  • a receiver at the UE 115-a may receive the set of encoded symbols.
  • the UE 115-a knows the pseudo-random codes used to encode the encoded symbols, in order for the UE 115-a to decode the encoded symbols.
  • the decoding process performed by the UE 115-a may be analogous to the encoding process performed by the base station 105-a.
  • the UE 115-a may generate classified intermediate symbols from the received set of encoded symbols.
  • the UE 115-a may generate a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, where generating the first set of intermediate symbols is further based on the first set of classified intermediate symbols.
  • the UE 115-a may generate a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, where generating the second set of intermediate symbols is further based on the second set of classified intermediate symbols.
  • the UE 115-a may concatenate the first and second sets of classified intermediate symbols.
  • the UE 115-a may generate intermediate symbols from the classified intermediate symbols.
  • the UE 115-a may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme.
  • the first coding scheme is an LDPC code.
  • the UE 115-a may generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the second coding scheme is a Reed-Solomon code, or other type of cyclic error correcting code or BCH code.
  • the second coding scheme uses a Galois Field having a size other than a power of 2 or different from the Galois Field size associated with HDPC (e.g., an integer greater than 2 and not equal to 256) .
  • the UE 115-a may concatenate the first and second sets of intermediate symbols.
  • the UE 115-a may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. In some examples, generating the set of source symbols is further based on the concatenation of the first set of intermediate symbols and the second set of intermediate symbols.
  • the UE 115-a may process the decoded source symbols, which may include using the source symbols in an application, outputting at least a portion of the source symbols, transmitting the source symbols, or any other data processing.
  • FIG. 6 illustrates an example of a method 600 for encoding source symbols that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the method 600 may be performed by an input node, which may be a base station, a UE, or another type of node.
  • the method 600 may be performed by a base station 105 or a UE 115 as described in FIGs. 1 and 5.
  • the input node determines a set of source symbols.
  • the source symbols may be symbols in one or more data packets for transmission to another node.
  • the input node may use the set source symbols to generate two sets of intermediate symbols and, from those, two sets of classified intermediate symbols.
  • the input node generates a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme.
  • the first coding scheme may be LDPC coding scheme.
  • the method 600 may include generating a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols.
  • the method 600 may include generating a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme at 620.
  • the second coding scheme may have a configurable Galois Field size corresponding to an arbitrary integer.
  • the second coding scheme is a Reed-Solomon code, or other type of cyclic error correcting code or BCH code.
  • the second coding scheme uses a Galois Field having a size other than a power of 2 or different from the Galois Field size associated with HDPC (e.g., an integer greater than 2 and not equal to 256) .
  • the method 600 may include generating a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, where generating the set of encoded symbols is further based on the first set of classified intermediate symbols and the second set of classified intermediate symbols.
  • the first and second set of classified intermediate symbols may be concatenated.
  • the method 600 may include generating a set of encoded symbols based on at least the concatenated first set of intermediate symbols and the second set of intermediate symbols.
  • the input node may transmit the set of encoded symbols to the intended recipient.
  • FIG. 7 illustrates an example of a method 700 for decoding source symbols that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the method 700 may be performed by an output node, which may be a base station, a UE, or another type of node.
  • the method 700 may be performed by a base station 105 or a UE 115 as described in FIGs. 1 and 5.
  • the method 700 may include receiving a set of encoded symbols.
  • the method 700 may include generating classified intermediate symbols from the received set of encoded symbols.
  • the method 700 may include generating a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, where generating the first set of intermediate symbols is further based on the first set of classified intermediate symbols.
  • the method 700 may include generating a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, where generating the second set of intermediate symbols is further based on the second set of classified intermediate symbols.
  • the method 700 may include concatenating the first and second sets of classified intermediate symbols.
  • the method 700 may include generating intermediate symbols from the classified intermediate symbols.
  • the method 700 may include generating a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme.
  • the first coding scheme is an LDPC code.
  • the method 700 may include generating a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, at 725. In some examples, only a portion of the intermediate symbols are recovered, which may be from either set of intermediate symbols.
  • the second coding scheme is a Reed- Solomon code, or other type of cyclic error correcting code or BCH code.
  • the second coding scheme uses a Galois Field having a size other than a power of 2 or different from the Galois Field size associated with HDPC (e.g., an integer greater than 2 and not equal to 256) .
  • the UE 115-a may concatenate the first and second sets of intermediate symbols.
  • the method 700 may include generating a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. In some examples, generating the set of source symbols is further based on the concatenation of the first set of intermediate symbols and the second set of intermediate symbols.
  • the method 700 may also include processing the decoded source symbols, which may include using the source symbols in an application, outputting at least a portion of the source symbols, transmitting the source symbols, or any other data processing
  • FIG. 8 shows a block diagram 800 of a device 805 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the device 805 may be an example of aspects of a wireless device as described herein.
  • the device 805 may include a receiver 810, a communication manager 815, and a transmitter 820.
  • the device 805 may also include a processor. Each of these components may be in communication with one another (e.g., via one or more buses) .
  • Receiver 810 may receive information such as packets, user data, or control information associated with various information channels (e.g., control channels, data channels, and information related to techniques for enhanced coding with RaptorQ codes, etc. ) . Information may be passed on to other components of the device 805.
  • the receiver 810 may be an example of aspects of the transceiver 1120 or 1220 as described with reference to FIGs. 11 and 12.
  • the receiver 810 may utilize a single antenna or a set of antennas.
  • the communication manager 815 may determine a set of source symbols for a wireless transmission.
  • the communication manager 815 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme.
  • the communication manager 815 may generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the communication manager 815 may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmit the set of encoded symbols.
  • the communication manager 815 may also determine a set of encoded symbols.
  • the communication manager 815 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the communication manager 815 may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • the communication manager 815 may be an example of aspects of the communication manager 905 described herein.
  • the communication manager 815 may be implemented in hardware, code (e.g., software or firmware) executed by a processor, or any combination thereof. If implemented in code executed by a processor, the functions of the communication manager 815, or its sub-components may be executed by a general-purpose processor, a DSP, an application-specific integrated circuit (ASIC) , a FPGA or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described in the present disclosure.
  • code e.g., software or firmware
  • ASIC application-specific integrated circuit
  • the communication manager 815 may be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations by one or more physical components.
  • the communication manager 815, or its sub-components may be a separate and distinct component in accordance with various aspects of the present disclosure.
  • the communication manager 815, or its sub-components may be combined with one or more other hardware components, including but not limited to an input/output (I/O) component, a transceiver, a network server, another computing device, one or more other components described in the present disclosure, or a combination thereof in accordance with various aspects of the present disclosure.
  • I/O input/output
  • Transmitter 820 may transmit signals generated by other components of the device 805.
  • the transmitter 820 may be collocated with a receiver 810 in a transceiver module.
  • the transmitter 820 may be an example of aspects of the transceiver 1120 or 1220 as described with reference to FIGs. 11 and 12.
  • the transmitter 820 may utilize a single antenna or a set of antennas.
  • FIG. 9 shows a block diagram 900 of a device 905 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the device 905 may be an example of aspects of a device 905 or a wireless device 115 as described herein.
  • the device 905 may include a receiver 910, a coding manager 920, and a transmitter 945.
  • the device 905 may also include a processor. Each of these components may be in communication with one another (e.g., via one or more buses) .
  • Receiver 910 may receive information such as packets, user data, or control information associated with various information channels (e.g., control channels, data channels, and information related to techniques for coding with enhanced RaptorQ, etc. ) .
  • the receiver 910 may receive a set of encoded symbols.
  • Information may be passed on to other components of the device 905.
  • the receiver 910 may be an example of aspects of the transceiver 1120 or 1220 as described with reference to FIGs. 11 and 12.
  • the receiver 910 may utilize a single antenna or a set of antennas.
  • the communications manager 915 may be an example of aspects of the communications manager 815 as described herein.
  • the communications manager 915 may include a coding manager 920, an encoder 925, and a decoder 930.
  • the communications manager 915 may be an example of aspects of the communications manager 815 or 1015 as described herein.
  • the coding manager 920 may be an example of aspects of the coding manager 815 as described herein.
  • the coding manager 920 may be an example of aspects of the coding manager 150 described herein.
  • the coding manager 920 may process a set of received source symbols of a set of encoded symbols. If the coding manager 920 has a set of source symbols to encode, the coding manager 920 may instruct the encoder 925 to encode the source symbols for transmission. If the coding manager 920 receives a set of encoded symbols, the coding manager 920 may instruct the decoder 930 to decode the encoded symbols.
  • the coding manager 920 may select a Galois Field size for the coding process.
  • the coding manager 920 may determine a set of source symbols for a wireless transmission.
  • the encoder 925 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme.
  • the coding manager 920 has determined that the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the encoder 925 may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • the coding manager 920 may determine a set of encoded symbols has been received from a wireless transmission.
  • the decoder 930 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme.
  • the coding manager 920 has determined that the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the decoder 930 may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • Transmitter 945 may transmit signals generated by other components of the device 905.
  • the transmitter 945 may transmit the set of encoded symbols.
  • the transmitter 945 may be collocated with a receiver 910 in a transceiver module.
  • the transmitter 945 may be an example of aspects of the transceiver 1120 or 1220 as described with reference to FIGs. 11 and 12.
  • the transmitter 945 may utilize a single antenna or a set of antennas.
  • FIG. 10 shows a block diagram 1000 of a communication manager 1005 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the coding manager 1005 may be an example of aspects of a communication manager 815, a communication manager 915, a communication manager 1110, or a communication manager 1210 described herein.
  • the communication manager 1005 may include a coding manager 1010, an encoder 1015, a coding scheme manager 1020, and a decoder 1025. Each of these modules may communicate, directly or indirectly, with one another (e.g., via one or more buses) .
  • the coding manager 1010 may determine a set of source symbols for a wireless transmission.
  • the coding manager 1010 may determine that the is a set of source symbols for coding or a set of encoded symbols for decoding.
  • the coding scheme manager 1020 may determine which coding schemes to use for coding or decoding.
  • the coding scheme manager 1020 may select from an LDPC code, an HDPC code, a fountain code, an LT code, a Reed Solomon code, a BCH code, an FEC code, or any other suitable code.
  • the coding scheme manager 1020 may configure the finite field size for a Galois Field. That is, the coding scheme manager 1020 may determine q of GF (q) .
  • the coding scheme manager 1020 may determine the Galois Field size based on a decoding complexity metric, or other in some cases, the second coding scheme uses a Galois Field having a size between 2 and 256 or above 256.
  • the encoder 1015 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme. In some examples, the encoder 1015 may generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. In some examples, the encoder 1015 may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. In some examples, the encoder 1015 may generate a portion of the first set of intermediate symbols based on a subset of the second set of intermediate symbols. In some examples, the encoder 1015 may concatenate the first set of intermediate symbols and the second set of intermediate symbols, where generating the set of encoded symbols or the set of classified intermediate symbols are further based on the concatenation.
  • the encoder 1015 may generate a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols. In some examples, the encoder 1015 may generate a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, where generating the set of encoded symbols is further based on the first set of classified intermediate symbols and the second set of classified intermediate symbols. In some cases, a size of the third subset of the set of source symbols plus a size of the fourth subset of the set of source symbols equals a size of the set of source symbols.
  • the decoder 1035 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme. In some examples, the decoder 1035 may generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. In some examples, the decoder 1035 may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. In some examples, the decoder 1035 may generate a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, where generating the first set of intermediate symbols is further based on the first set of classified intermediate symbols.
  • the decoder 1035 may generate a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, where generating the second set of intermediate symbols is further based on the second set of classified intermediate symbols. In some examples, the decoder 1035 may concatenate the first set of intermediate symbols and the second set of intermediate symbols, where generating the set of source symbols is further based on the concatenation.
  • FIG. 11 shows a diagram of a system 1100 including a device 1105 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the device 1105 may be an example of or include the components of device 805, device 905, or a wireless device as described herein.
  • the device 1105 may include components for bi-directional voice and data communications including components for transmitting and receiving communications, including a communications manager 1110, a transceiver 1120, an antenna 1125, memory 1130, a processor 1140, and an I/O controller 1150. These components may be in electronic communication via one or more buses (e.g., bus) .
  • buses e.g., bus
  • the communication manager 1110 may determine a set of source symbols for a wireless transmission.
  • the communication manager 1110 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the communication manager 1110 may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmit the set of encoded symbols.
  • the communication manager 1110 may also receive a set of encoded symbols.
  • the communication manager 1110 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the communication manager 1110 may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • Transceiver 1120 may communicate bi-directionally, via one or more antennas, wired, or wireless links as described above.
  • the transceiver 1120 may represent a wireless transceiver and may communicate bi-directionally with another wireless transceiver.
  • the transceiver 1120 may also include a modem to modulate the packets and provide the modulated packets to the antennas for transmission, and to demodulate packets received from the antennas.
  • the wireless device may include a single antenna 1125. However, in some cases the device may have more than one antenna 1125, which may be capable of concurrently transmitting or receiving multiple wireless transmissions.
  • the memory 1130 may include random-access memory (RAM) , read-only memory (ROM) , or a combination thereof.
  • the memory 1130 may store computer-readable code 1135 including instructions that, when executed by a processor (e.g., the processor 1140) cause the device to perform various functions described herein.
  • a processor e.g., the processor 1140
  • the memory 1130 may contain, among other things, a basic input/output system (BIOS) which may control basic hardware or software operation such as the interaction with peripheral components or devices.
  • BIOS basic input/output system
  • the processor 1140 may include an intelligent hardware device (e.g., a general-purpose processor, a DSP, a central processing unit (CPU) , a microcontroller, an ASIC, an FPGA, a programmable logic device, a discrete gate or transistor logic component, a discrete hardware component, or any combination thereof) .
  • the processor 1140 may be configured to operate a memory array using a memory controller.
  • a memory controller may be integrated into the processor 1140.
  • the processor 1140 may be configured to execute computer-readable instructions stored in a memory (e.g., the memory 1130) to cause the device 1105 to perform various functions (e.g., functions or tasks supporting techniques for encoding with enhanced RaptorQ) .
  • the processor 1140 of the device 1105 may enable reliable transmission of encoded packets to the output node.
  • the processor 1140 of the device 1105 may perform enhanced RaptorQ coding as described herein.
  • the processor 1140 of the device 805 may turn on one or more processing units for performing the encoding, increase a processing clock, or a similar mechanism within the device 1105.
  • the processor 1140 may be ready to respond more efficiently through the reduction of a ramp up in processing power.
  • the improvements in power saving and communication efficiency may further reduce power consumption at the device 1105 (for example, by reducing or eliminating unnecessary or failed transmissions, etc. ) .
  • the I/O controller 1150 may manage input and output signals for the device 1105.
  • the I/O controller 1150 may also manage peripherals not integrated into the device 1105.
  • the I/O controller 1150 may represent a physical connection or port to an external peripheral.
  • the I/O controller 1150 may utilize an operating system such as or another known operating system.
  • the I/O controller 1150 may represent or interact with a modem, a keyboard, a mouse, a touchscreen, or a similar device.
  • the I/O controller 1150 may be implemented as part of a processor.
  • a user may interact with the device 1105 via the I/O controller 1150 or via hardware components controlled by the I/O controller 1150.
  • the code 1135 may include instructions to implement aspects of the present disclosure, including instructions to support wireless communications.
  • the code 1135 may be stored in a non-transitory computer-readable medium such as system memory or other type of memory. In some cases, the code 1135 may not be directly executable by the processor 1140 but may cause a computer (e.g., when compiled and executed) to perform functions described herein.
  • FIG. 12 shows a diagram of a system 1200 including a device 1205 that supports techniques for enhanced RaptorQ coding in accordance with aspects of the present disclosure.
  • the device 1205 may be an example of or include the components of device 805, device 905, or a network node such as a relay node, a UE 115, or a base station 105 as described herein.
  • the device 1205 may include components for bi-directional voice and data communications including components for transmitting and receiving communications, including a communications manager 1210, a network communications manager 1215, a transceiver 1220, an antenna 1225, memory 1230, a processor 1240, and an inter-station communications manager 1245. These components may be in electronic communication via one or more buses (e.g., bus 1255) .
  • buses e.g., bus 1255
  • the communication manager 1210 may determine a set of source symbols for a wireless transmission.
  • the communication manager 1210 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the communication manager 1210 may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmit the set of encoded symbols.
  • the communication manager 1210 may also receive a set of encoded symbols.
  • the communication manager 1210 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the communication manager 1210 may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • Network communications manager 1215 may manage communications with the core network (e.g., via one or more wired backhaul links) .
  • the network communications manager 1215 may manage the transfer of data communications for client devices, such as one or more UEs 115.
  • Transceiver 1220 may communicate bi-directionally, via one or more antennas, wired, or wireless links as described above.
  • the transceiver 1220 may represent a wireless transceiver and may communicate bi-directionally with another wireless transceiver.
  • the transceiver 1220 may also include a modem to modulate the packets and provide the modulated packets to the antennas for transmission, and to demodulate packets received from the antennas.
  • the wireless device may include a single antenna 1225. However, in some cases the device may have more than one antenna 1225, which may be capable of concurrently transmitting or receiving multiple wireless transmissions.
  • the memory 1230 may include RAM, ROM, or a combination thereof.
  • the memory 1230 may store computer-readable code 1235 including instructions that, when executed by a processor (e.g., the processor 1240) cause the device to perform various functions described herein.
  • a processor e.g., the processor 1240
  • the memory 1230 may contain, among other things, a BIOS which may control basic hardware or software operation such as the interaction with peripheral components or devices.
  • the processor 1240 may include an intelligent hardware device (e.g., a general-purpose processor, a DSP, a CPU, a microcontroller, an ASIC, an FPGA, a programmable logic device, a discrete gate or transistor logic component, a discrete hardware component, or any combination thereof) .
  • the processor 1240 may be configured to operate a memory array using a memory controller.
  • a memory controller may be integrated into the processor 1240.
  • the processor 1240 may be configured to execute computer-readable instructions stored in a memory (e.g., the memory 1230) to cause the device 1205 to perform various functions (e.g., functions or tasks supporting techniques for enhanced RaptorQ coding) .
  • the processor 1240 of the device 1205 may enable reliable transmission of encoded packets to the output node via enhanced RaptorQ coding techniques described herein.
  • the processor 1240 of the device 1205 may reconfigure parameters associated with encoding packets according to the fountain code. For example, the processor 1240 of the device 1205 may turn on one or more processing units for performing the encoding, increase a processing clock, or a similar mechanism within the device 1205. As such, when additional information is scheduled to be encoded and transmitted, the processor 1240 may be ready to respond more efficiently through the reduction of a ramp up in processing power.
  • the improvements in power saving and communication efficiency may further reduce power consumption at the device 1205 (for example, by reducing or eliminating unnecessary or failed transmissions, etc. ) .
  • Inter-station communications manager 1245 may manage communications with other base station 105, and may include a controller or scheduler for controlling communications with UEs 115 in cooperation with other base stations 105. For example, the inter-station communications manager 1245 may coordinate scheduling for transmissions to UEs 115 for various interference mitigation techniques such as beamforming or joint transmission. In some examples, inter-station communications manager 1245 may provide an X2 interface within an LTE/LTE-A wireless communication network technology to provide communication between base stations 105.
  • the code 1235 may include instructions to implement aspects of the present disclosure, including instructions to support wireless communications.
  • the code 1235 may be stored in a non-transitory computer-readable medium such as system memory or other type of memory. In some cases, the code 1235 may not be directly executable by the processor 1240 but may cause a computer (e.g., when compiled and executed) to perform functions described herein.
  • FIG. 13 shows a flowchart illustrating a method 1300 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the operations of method 1300 may be implemented by a wireless device or its components as described herein.
  • the operations of method 1300 may be performed by a communications manager using a coding scheme as described with reference to FIGs. 2 through 7.
  • a wireless device may execute a set of instructions to control the functional elements of the wireless device to perform the functions described below. Additionally or alternatively, a wireless device may perform aspects of the functions described below using special-purpose hardware.
  • the wireless device may determine a set of source symbols for a wireless transmission.
  • the operations of 1305 may be performed according to the methods described herein. In some examples, aspects of the operations of 1305 may be performed by a communication manager as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme.
  • the operations of 1310 may be performed according to the methods described herein. In some examples, aspects of the operations of 1310 may be performed by an encoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the operations of 1315 may be performed according to the methods described herein. In some examples, aspects of the operations of 1315 may be performed by an encoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • the operations of 1320 may be performed according to the methods described herein. In some examples, aspects of the operations of 1320 may be performed by an encoder as described with reference to FIGs. 2 through 7.
  • the wireless device may transmit the set of encoded symbols.
  • the operations of 1325 may be performed according to the methods described herein. In some examples, aspects of the operations of 1325 may be performed by a transmitter as described with reference to FIGs. 2 through 7.
  • FIG. 14 shows a flowchart illustrating a method 1400 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the operations of method 1400 may be implemented by a wireless device or its components as described herein.
  • the operations of method 1400 may be performed by a coding manager as described with reference to FIGs. 2 through 7.
  • a wireless device may execute a set of instructions to control the functional elements of the wireless device to perform the functions described below. Additionally or alternatively, a wireless device may perform aspects of the functions described below using special-purpose hardware.
  • the wireless device may determine a set of source symbols for a wireless transmission.
  • the operations of 1405 may be performed according to the methods described herein. In some examples, aspects of the operations of 1405 may be performed by a communication manager as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme.
  • the operations of 1410 may be performed according to the methods described herein. In some examples, aspects of the operations of 1410 may be performed by an encoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the operations of 1415 may be performed according to the methods described herein. In some examples, aspects of the operations of 1415 may be performed by an encoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • the operations of 1420 may be performed according to the methods described herein. In some examples, aspects of the operations of 1420 may be performed by an encoder as described with reference to FIGs. 2 through 7.
  • the wireless device may transmit the set of encoded symbols.
  • the operations of 1425 may be performed according to the methods described herein. In some examples, aspects of the operations of 1425 may be performed by a transmitter as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols.
  • the operations of 1430 may be performed according to the methods described herein. In some examples, aspects of the operations of 1430 may be performed by an encoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, where generating the set of encoded symbols is further based on the first set of classified intermediate symbols and the second set of classified intermediate symbols.
  • the operations of 1435 may be performed according to the methods described herein. In some examples, aspects of the operations of 1435 may be performed by an encoder as described with reference to FIGs. 2 through 7.
  • FIG. 15 shows a flowchart illustrating a method 1500 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the operations of method 1500 may be implemented by a wireless device or its components as described herein.
  • the operations of method 1500 may be performed by a coding manager as described with reference to FIGs. 2 through 7.
  • a wireless device may execute a set of instructions to control the functional elements of the wireless device to perform the functions described below. Additionally or alternatively, a wireless device may perform aspects of the functions described below using special-purpose hardware.
  • the wireless device may receive a set of encoded symbols.
  • the operations of 1505 may be performed according to the methods described herein. In some examples, aspects of the operations of 1505 may be performed by a receiver as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme.
  • the operations of 510 may be performed according to the methods described herein. In some examples, aspects of the operations of 1510 may be performed by a decoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the operations of 1515 may be performed according to the methods described herein. In some examples, aspects of the operations of 1515 may be performed by a decoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • the operations of 1520 may be performed according to the methods described herein. In some examples, aspects of the operations of 1520 may be performed by a decoder as described with reference to FIGs. 2 through 7.
  • FIG. 16 shows a flowchart illustrating a method 1600 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
  • the operations of method 1600 may be implemented by a wireless device or its components as described herein.
  • the operations of method 1600 may be performed by a coding manager as described with reference to FIGs. 2 through 7.
  • a wireless device may execute a set of instructions to control the functional elements of the wireless device to perform the functions described below. Additionally or alternatively, a wireless device may perform aspects of the functions described below using special-purpose hardware.
  • the wireless device may receive a set of encoded symbols.
  • the operations of 1605 may be performed according to the methods described herein. In some examples, aspects of the operations of 1605 may be performed by a receiver as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme.
  • the operations of 1610 may be performed according to the methods described herein. In some examples, aspects of the operations of 1610 may be performed by a decoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer.
  • the operations of 1615 may be performed according to the methods described herein. In some examples, aspects of the operations of 1615 may be performed by a decoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
  • the operations of 1620 may be performed according to the methods described herein. In some examples, aspects of the operations of 1620 may be performed by a decoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, where generating the first set of intermediate symbols is further based on the first set of classified intermediate symbols.
  • the operations of 1625 may be performed according to the methods described herein. In some examples, aspects of the operations of 1625 may be performed by a decoder as described with reference to FIGs. 2 through 7.
  • the wireless device may generate a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, where generating the second set of intermediate symbols is further based on the second set of classified intermediate symbols.
  • the operations of 1630 may be performed according to the methods described herein. In some examples, aspects of the operations of 1630 may be performed by a decoder as described with reference to FIGs. 2 through 7.
  • CDMA code division multiple access
  • TDMA time division multiple access
  • FDMA frequency division multiple access
  • OFDMA orthogonal frequency division multiple access
  • SC-FDMA single carrier frequency division multiple access
  • a CDMA system may implement a radio technology such as CDMA2000, Universal Terrestrial Radio Access (UTRA) , etc.
  • CDMA2000 covers IS-2000, IS-95, and IS-856 standards.
  • IS-2000 Releases may be commonly referred to as CDMA2000 1X, 1X, etc.
  • IS-856 TIA-856) is commonly referred to as CDMA2000 1xEV-DO, High Rate Packet Data (HRPD) , etc.
  • UTRA includes Wideband CDMA (WCDMA) and other variants of CDMA.
  • a TDMA system may implement a radio technology such as Global System for Mobile Communications (GSM) .
  • GSM Global System for Mobile Communications
  • An OFDMA system may implement a radio technology such as Ultra Mobile Broadband (UMB) , Evolved UTRA (E-UTRA) , Institute of Electrical and Electronics Engineers (IEEE) 802.11 (Wi-Fi) , IEEE 802.16 (WiMAX) , IEEE 802.20, Flash-OFDM, etc.
  • UMB Ultra Mobile Broadband
  • E-UTRA Evolved UTRA
  • IEEE Institute of Electrical and Electronics Engineers
  • Wi-Fi Institute of Electrical and Electronics Engineers
  • IEEE 802.16 WiMAX
  • IEEE 802.20 Flash-OFDM
  • UTRA and E-UTRA are part of Universal Mobile Telecommunications System (UMTS) .
  • LTE, LTE-A, and LTE-A Pro are releases of UMTS that use E-UTRA.
  • UTRA, E-UTRA, UMTS, LTE, LTE-A, LTE-A Pro, NR, and GSM are described in documents from the organization named “3rd Generation Partnership Project” (3GP
  • CDMA2000 and UMB are described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2) .
  • 3GPP2 3rd Generation Partnership Project 2
  • the techniques described herein may be used for the systems and radio technologies mentioned herein as well as other systems and radio technologies. While aspects of an LTE, LTE-A, LTE-A Pro, or NR system may be described for purposes of example, and LTE, LTE-A, LTE-A Pro, or NR terminology may be used in much of the description, the techniques described herein are applicable beyond LTE, LTE-A, LTE-A Pro, or NR applications.
  • a macro cell generally covers a relatively large geographic area (e.g., several kilometers in radius) and may allow unrestricted access by UEs with service subscriptions with the network provider.
  • a small cell may be associated with a lower-powered base station, as compared with a macro cell, and a small cell may operate in the same or different (e.g., licensed, unlicensed, etc. ) frequency bands as macro cells.
  • Small cells may include pico cells, femto cells, and micro cells according to various examples.
  • a pico cell for example, may cover a small geographic area and may allow unrestricted access by UEs with service subscriptions with the network provider.
  • a femto cell may also cover a small geographic area (e.g., a home) and may provide restricted access by UEs having an association with the femto cell (e.g., UEs in a closed subscriber group (CSG) , UEs for users in the home, and the like) .
  • An eNB for a macro cell may be referred to as a macro eNB.
  • An eNB for a small cell may be referred to as a small cell eNB, a pico eNB, a femto eNB, or a home eNB.
  • An eNB may support one or multiple (e.g., two, three, four, and the like) cells, and may also support communications using one or multiple component carriers.
  • the wireless communications systems described herein may support synchronous or asynchronous operation.
  • the base stations may have similar frame timing, and transmissions from different base stations may be approximately aligned in time.
  • the base stations may have different frame timing, and transmissions from different base stations may not be aligned in time.
  • the techniques described herein may be used for either synchronous or asynchronous operations.
  • Information and signals described herein may be represented using any of a variety of different technologies and techniques.
  • data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
  • a general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine.
  • a processor may also be implemented as a combination of computing devices (e.g., a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration) .
  • the functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Other examples and implementations are within the scope of the disclosure and appended claims. For example, due to the nature of software, functions described herein can be implemented using software executed by a processor, hardware, firmware, hardwiring, or combinations of any of these. Features implementing functions may also be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations.
  • Computer-readable media includes both non-transitory computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another.
  • a non-transitory storage medium may be any available medium that can be accessed by a general purpose or special purpose computer.
  • non-transitory computer-readable media may include RAM, ROM, electrically erasable programmable ROM (EEPROM) , flash memory, compact disk (CD) ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other non-transitory medium that can be used to carry or store desired program code means in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor.
  • any connection is properly termed a computer-readable medium.
  • the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL) , or wireless technologies such as infrared, radio, and microwave
  • the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium.
  • Disk and disc include CD, laser disc, optical disc, digital versatile disc (DVD) , floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above are also included within the scope of computer-readable media.

Abstract

Methods, systems, and devices for encoding are described. In one example, a method for wireless communication is described, which includes determining a set of source symbols for a wireless transmission. The method may include generating a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme and generating a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, wherein the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The method may further include generating a set of encoded symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols and transmitting the set of encoded symbols. An analogous decoding method is described as well.

Description

ENHANCED RAPTORQ CODES BACKGROUND
The following relates generally to encoding, and more specifically to enhanced RaptorQ codes.
Wireless communications systems are widely deployed to provide various types of communication content such as voice, video, packet data, messaging, broadcast, and so on. These systems may be capable of supporting communication with multiple users by sharing the available system resources (e.g., time, frequency, and power) . Examples of such multiple-access systems include fourth generation (4G) systems such as Long Term Evolution (LTE) systems, LTE-Advanced (LTE-A) systems, or LTE-A Pro systems, and fifth generation (5G) systems which may be referred to as New Radio (NR) systems. These systems may employ technologies such as code division multiple access (CDMA) , time division multiple access (TDMA) , frequency division multiple access (FDMA) , orthogonal frequency division multiple access (OFDMA) , or discrete Fourier transform spread orthogonal frequency division multiplexing (DFT-S-OFDM) . A wireless multiple-access communications system may include a number of base stations or network access nodes, each simultaneously supporting communication for multiple communication devices, which may be otherwise known as user equipment (UE) .
SUMMARY
The described techniques relate to improved methods, systems, devices, and apparatuses that support enhanced RaptorQ codes. Generally, the described techniques provide efficiency through less dropped packets and flexibility in the coding process such that a finite field used can be of any size, instead of just specific sizes. A coding scheme described herein uses rateless fountain codes with unlimited columns to code symbols for data packet transmissions. RaptorQ codes may be used in the encoding process to reduce encoding and decoding complexity.
In one example coding scheme, intermediate symbols may be generated from a set of source symbols. For example, low-density parity-check (LDPC) symbols over GF (2) may be generated and Reed Solomon (RS) symbols over GF (q) may be generated, where q is any number. Then the intermediate symbols may be classified into two groups. A first group of  intermediate symbols may be Luby transform (LT) symbols and the second group of intermediate symbols may be permanent inactivation (PI) symbols. A degree d is randomly chosen from the LT symbols. Two or three symbols from the PI symbols are randomly chosen. The encoded symbols are generated by applying an XOR function to the chosen symbols. The encoded symbols may be transmitted to a destination node. The destination node may invert the process to decode the encoded symbols in order to recreate the source symbols.
A method of wireless communication is described. The method may include determining a set of source symbols for a wireless transmission, generating a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme, generating a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, generating a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmitting the set of encoded symbols.
An apparatus for wireless communication is described. The apparatus may include a processor, memory coupled with the processor, and instructions stored in the memory. The instructions may be executable by the processor to cause the apparatus to determine a set of source symbols for a wireless transmission, generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme, generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmit the set of encoded symbols.
Another apparatus for wireless communication is described. The apparatus may include means for determining a set of source symbols for a wireless transmission, generating a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme, generating a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, generating  a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmitting the set of encoded symbols.
A non-transitory computer-readable medium storing code for wireless communication is described. The code may include instructions executable by a processor to determine a set of source symbols for a wireless transmission, generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme, generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmit the set of encoded symbols.
Some examples of the method, apparatuses, and non-transitory computer-readable medium described herein may further include operations, features, means, or instructions for generating a first set of categorized intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols, and generating a second set of categorized intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, where generating the set of encoded symbols may be further based on the first set of categorized intermediate symbols and the second set of categorized intermediate symbols.
In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, a size of the third subset of the set of source symbols plus a size of the fourth subset of the set of source symbols equals a size of the set of source symbols.
In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme may be a Reed-Solomon coding scheme. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme may be a cyclic error correcting code. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme may be a Bose–Chaudhuri–Hocquenghem (BCH) code.
In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme uses a Galois Field having a size other than a power of 2. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme uses a Galois Field having a size between 2 and 256 or above 256.
In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, generating the first set of intermediate symbols from the first subset of the set of source symbols further may include operations, features, means, or instructions for generating a portion of the first set of intermediate symbols based on a subset of the second set of intermediate symbols.
Some examples of the method, apparatuses, and non-transitory computer-readable medium described herein may further include operations, features, means, or instructions for concatenating the first set of intermediate symbols and the second set of intermediate symbols, where generating the set of encoded symbols may be further based on the concatenation.
In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the first coding scheme may be a LDPC coding scheme.
A method of wireless communication is described. The method may include receiving a set of encoded symbols, generating a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme, generating a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, and generating a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
An apparatus for wireless communication is described. The apparatus may include a processor, memory coupled with the processor, and instructions stored in the memory. The instructions may be executable by the processor to cause the apparatus to receive a set of encoded symbols, generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme, generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an  arbitrary integer, and generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
Another apparatus for wireless communication is described. The apparatus may include means for receiving a set of encoded symbols, generating a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme, generating a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, and generating a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
A non-transitory computer-readable medium storing code for wireless communication is described. The code may include instructions executable by a processor to receive a set of encoded symbols, generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme, generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, and generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
Some examples of the method, apparatuses, and non-transitory computer-readable medium described herein may further include operations, features, means, or instructions for generating a first set of categorized intermediate symbols from at least a third subset of the set of encoded symbols, where generating the first set of intermediate symbols may be further based on the first set of categorized intermediate symbols, and generating a second set of categorized intermediate symbols from at least a fourth subset of the set of encoded symbols, where generating the second set of intermediate symbols may be further based on the second set of categorized intermediate symbols.
In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme may be a Reed-Solomon coding scheme. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme may be a cyclic error  correcting code. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme may be a BCH code.
In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme uses a Galois Field having a size other than a power of 2. In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the second coding scheme uses a Galois Field having a size between 2 and 256 or over 256.
Some examples of the method, apparatuses, and non-transitory computer-readable medium described herein may further include operations, features, means, or instructions for concatenating the first set of intermediate symbols and the second set of intermediate symbols, where generating the set of source symbols may be further based on the concatenation.
In some examples of the method, apparatuses, and non-transitory computer-readable medium described herein, the first coding scheme may be a LDPC coding scheme.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates an example of a system for encoding that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
FIG. 2 illustrates an example of an encoding scheme that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
FIGs. 3 and 4 illustrate example conceptual diagrams of a coding matrix that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
FIG. 5 illustrates an example of a process flow that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
FIG. 6 illustrates an example of a method for encoding source symbols that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
FIG. 7 illustrates an example of a method for decoding source symbols that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
FIGs. 8 and 9 show block diagrams of devices that support enhanced RaptorQ codes in accordance with aspects of the present disclosure.
FIG. 10 shows a block diagram of a coding manager that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
FIG. 11 shows a diagram of a system including a device that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
FIG. 12 shows a diagram of a system including a device that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure.
FIGs. 13 through 16 show flowcharts illustrating methods that support enhanced RaptorQ codes in accordance with aspects of the present disclosure.
DETAILED DESCRIPTION
Some wireless communication systems, such as fifth generation (5G) systems which may be referred to as New Radio (NR) systems, may want to efficiently transmit packets with low or negligible packet loss. A network node, such as a user equipment (UE) , a base station, or another wireless device, may encode packets before transmission to improve reliability of a destination node successfully receiving the transmitted information. In some cases, encoded packets may provide redundancy, which may be used to correct errors that result from the transmission environment (e.g., path loss, obstacles, etc. ) .
Some examples of encoding algorithms with error correcting codes include fountain codes, such as Luby transform (LT) codes or rapid tornado (Raptor) codes. A fountain code may be an example of a rateless code, where a set of source symbols (e.g., K symbols) may be encoded as any quantity of encoded symbols (e.g., a number of symbols greater than K symbols) . Encoding the source symbols may include combining information related to one or more source symbols into each encoded symbol.
The encoded symbols may be transmitted from a first node (which may be referred to as an input node) of a network to a second node (which may be referred to as an output node) . In some examples, one or more encoded symbols may be lost or experience interference due to the transmission environment of the channel. Thus, the output node may receive a subset of encoded symbols via the channel, or may receive some symbols with a  low signal-to-noise (SNR) level. Based on the encoding and combining, the output node may decode the set of source symbols from the information obtained from the encoded symbols despite the signal degradation.
Some coding schemes may use a finite set, such as a Galois Field (GF) , which may only be specific sizes (such as GF (2) or GF (256) ) . For example, an LDPC code may be used with a GF (2) . In another example, a high density parity-check (HDPC) code may be used with a GF (256) . In techniques described herein, RS symbols over GF (q) may be generated, where q is any number. This flexibility enables any size of Galois Field to be used.
Techniques described herein apply two different coding schemes to a set of source symbols to generate intermediate symbols. One or both of those coding schemes may be capable of supporting any size Galois Field. Once the intermediate symbols are determined, they may be classified into two groups. A first group of intermediate symbols are LT symbols and the second group of intermediate symbols are permanent inactivation (PI) symbols. A degree d is randomly chosen from the LT symbols. Two or three symbols from the PI symbols are randomly chosen. The encoded symbols are generated by applying an XOR function to the chosen symbols. In some examples, all of the LDPC symbols may be in the intermediate symbols. And all the RS symbols may be in the PI symbols. Part of the intermediate symbols may be in the LT symbols and the rest may be in the PI symbols. The techniques described herein may enable network nodes to improve efficiency and reliability of communications in the network by increasing the probability of successfully decoding transmitted information and reducing complexity of the coding process.
Aspects of the disclosure are initially described in the context of a wireless communications system. Aspects of the disclosure are described in the context of diagrams that explain the coding scheme and the relationships between different types of symbols. Aspects of the disclosure are also described in the context of flow diagrams and flow charts that show the steps of the coding process. Aspects of the disclosure are further illustrated by and described with reference to apparatus diagrams, system diagrams, and flowcharts that relate to enhanced RaptorQ codes.
FIG. 1 illustrates an example of a wireless communications system 100 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The wireless communications system 100 includes base stations 105, UEs 115, and a core  network 130. In some examples, the wireless communications system 100 may be a Long Term Evolution (LTE) network, an LTE-Advanced (LTE-A) network, an LTE-A Pro network, or a New Radio (NR) network. In some cases, wireless communications system 100 may support enhanced broadband communications, ultra-reliable (e.g., mission critical) communications, low latency communications, or communications with low-cost and low-complexity devices.
The base stations 105 may be dispersed throughout a geographic area to form the wireless communications system 100 and may be devices in different forms or having different capabilities. The base stations 105 and the UEs 115 may wirelessly communicate via one or more communication links 125. Each base station 105 may provide a coverage area 110 over which the UEs 115 and the base station 105 may establish one or more communication links 125. The coverage area 110 may be an example of a geographic area over which a base station 105 and a UE 115 may support the communication of signals according to one or more radio access technologies.
The UEs 115 may be dispersed throughout a coverage area 110 of the wireless communications system 100, and each UE 115 may be stationary, or mobile, or both at different times. The UEs 115 may be devices in different forms or having different capabilities. Some example UEs 115 are illustrated in FIG. 1. The UEs 115 described herein may be able to communicate with various types of devices, such as other UEs 115, the base stations 105, or network equipment (e.g., core network nodes, relay devices, IAB nodes, or other network equipment) , as shown in FIG. 1.
The base stations 105 may communicate with the core network 130, or with one another, or both. For example, the base stations 105 may interface with the core network 130 through one or more backhaul links 120 (e.g., via an S1, N2, N3, or other interface) . The base stations 105 may communicate with one another over the backhaul links 120 (e.g., via an X2, Xn, or other interface) either directly (e.g., directly between base stations 105) , or indirectly (e.g., via core network 130) , or both. In some examples, the backhaul links 120 may be or include one or more wireless links.
One or more of the base stations 105 described herein may include or may be referred to by a person having ordinary skill in the art as a base transceiver station, a radio base station, an access point, a radio transceiver, a NodeB, an eNodeB (eNB) , a next- generation NodeB or a giga-NodeB (either of which may be referred to as a gNB) , a Home NodeB, a Home eNodeB, or other suitable terminology.
UE 115 may include or may be referred to as a mobile device, a wireless device, a remote device, a handheld device, or a subscriber device, or some other suitable terminology, where the “device” may also be referred to as a unit, a station, a terminal, or a client, among other examples. A UE 115 may also include or may be referred to as a personal electronic device such as a cellular phone, a personal digital assistant (PDA) , a multimedia/entertainment device (e.g., a radio, a MP3 player, a video device, etc. ) , a camera, a gaming device, a navigation/positioning device (e.g., GNSS (global navigation satellite system) devices based on, for example, GPS (global positioning system) , Beidou, GLONASS, or Galileo, a terrestrial-based device, etc. ) , a tablet computer, a laptop computer, a netbook, a smartbook, a personal computer, a smart device, a wearable device (e.g., a smart watch, smart clothing, smart glasses, virtual reality goggles, a smart wristband, smart jewelry (e.g., a smart ring, a smart bracelet) ) , a drone, a robot/robotic device, a vehicle, a vehicular device, a meter (e.g., parking meter, electric meter, gas meter, water meter) , a monitor, a gas pump, an appliance (e.g., kitchen appliance, washing machine, dryer) , a location tag, a medical/healthcare device, an implant, a sensor/actuator, a display, or any other suitable device configured to communicate via a wireless or wired medium. In some examples, a UE 115 may include or be referred to as a wireless local loop (WLL) station, an Internet of Things (IoT) device, an Internet of Everything (IoE) device, or a machine type communications (MTC) device, among other examples, which may be implemented in various objects such as appliances, or vehicles, meters, among other examples.
Some UEs 115, such as MTC or IoT devices, may be low cost or low complexity devices, and may provide for automated communication between machines (e.g., via Machine-to-Machine (M2M) communication) . M2M communication or MTC may refer to data communication technologies that allow devices to communicate with one another or a base station 105 without human intervention. In some examples, M2M communication or MTC may include communications from devices that integrate sensors or meters to measure or capture information and relay that information to a central server or application program that can make use of the information or present the information to humans interacting with the program or application. Some UEs 115 may be designed to collect information or enable automated behavior of machines. Examples of applications for MTC devices include smart  metering, inventory monitoring, water level monitoring, equipment monitoring, healthcare monitoring, wildlife monitoring, weather and geological event monitoring, fleet management and tracking, remote security sensing, physical access control, and transaction-based business charging. In an aspect, techniques disclosed herein may be applicable to MTC or IoT UEs. MTC or IoT UEs may include MTC/enhanced MTC (eMTC, also referred to as CAT-M, Cat M1) UEs, narrowband IoT (NB-IoT) (also referred to as CAT NB1) UEs, as well as other types of UEs. eMTC and NB-IoT may refer to future technologies that may evolve from or may be based on these technologies. For example, eMTC may include FeMTC (further eMTC) , eFeMTC (enhanced further eMTC) , mMTC (massive MTC) , etc., and NB-IoT may include eNB-IoT (enhanced NB-IoT) , FeNB-IoT (further enhanced NB-IoT) , etc.
The UEs 115 described herein may be able to communicate with various types of devices, such as other UEs 115 that may sometimes act as relays as well as the base stations 105 and the network equipment including macro eNBs or gNBs, small cell eNBs or gNBs, or relay base stations, among other examples, as shown in FIG. 1.
The UEs 115 and the base stations 105 may wirelessly communicate with one another via one or more communication links 125 over one or more carriers. The term “carrier” may refer to a set of radio frequency spectrum resources having a defined physical layer structure for supporting the communication links 125. For example, a carrier used for a communication link 125 may include a portion of a radio frequency spectrum band (e.g., a bandwidth part (BWP) ) that is operated according to one or more physical layer channels for a given radio access technology (e.g., LTE, LTE-A, LTE-A Pro, NR) . Each physical layer channel may carry acquisition signaling (e.g., synchronization signals, system information) , control signaling that coordinates operation for the carrier, user data, or other signaling. The wireless communications system 100 may support communication with a UE 115 using carrier aggregation or multi-carrier operation. A UE 115 may be configured with multiple downlink component carriers and one or more uplink component carriers according to a carrier aggregation configuration. Carrier aggregation may be used with both frequency division duplexing (FDD) and time division duplexing (TDD) component carriers.
Signal waveforms transmitted over a carrier may be made up of multiple subcarriers (e.g., using multi-carrier modulation (MCM) techniques such as orthogonal frequency division multiplexing (OFDM) or discrete Fourier transform spread OFDM (DFT- S-OFDM) ) . In a system employing MCM techniques, a resource element may consist of one symbol period (e.g., a duration of one modulation symbol) and one subcarrier, where the symbol period and subcarrier spacing are inversely related. The number of bits carried by each resource element may depend on the modulation scheme (e.g., the order of the modulation scheme, the coding rate of the modulation scheme, or both) . Thus, the more resource elements that a UE 115 receives and the higher the order of the modulation scheme, the higher the data rate may be for the UE 115. A wireless communications resource may refer to a combination of a radio frequency spectrum resource, a time resource, and a spatial resource (e.g., spatial layers or beams) , and the use of multiple spatial layers may further increase the data rate or data integrity for communications with a UE 115.
The time intervals for the base stations 105 or the UEs 115 may be expressed in multiples of a basic time unit which may, for example, refer to a sampling period of T s=1/(Δf max·N f) seconds, where Δf max may represent the maximum supported subcarrier spacing, and N f may represent the maximum supported discrete Fourier transform (DFT) size. Time intervals of a communications resource may be organized according to radio frames each having a specified duration (e.g., 10 milliseconds (ms) ) . Each radio frame may be identified by a system frame number (SFN) (e.g., ranging from 0 to 1023) .
Each frame may include multiple consecutively numbered subframes or slots, and each subframe or slot may have the same duration. In some examples, a frame may be divided (e.g., in the time domain) into subframes, and each subframe may be further divided into a number of slots. Alternatively, each frame may include a variable number of slots, and the number of slots may depend on subcarrier spacing. Each slot may include a number of symbol periods (e.g., depending on the length of the cyclic prefix prepended to each symbol period) . In some wireless communications systems 100, a slot may further be divided into multiple mini-slots containing one or more symbols. Excluding the cyclic prefix, each symbol period may contain one or more (e.g., N f) sampling periods. The duration of a symbol period may depend on the subcarrier spacing or frequency band of operation.
A subframe, a slot, a mini-slot, or a symbol may be the smallest scheduling unit (e.g., in the time domain) of the wireless communications system 100 and may be referred to as a transmission time interval (TTI) . In some examples, the TTI duration (e.g., the number of symbol periods in a TTI) may be variable. Additionally or alternatively, the smallest  scheduling unit of the wireless communications system 100 may be dynamically selected (e.g., in bursts of shortened TTIs (sTTIs) ) .
Physical channels may be multiplexed on a carrier according to various techniques. A physical control channel and a physical data channel may be multiplexed on a downlink carrier, for example, using one or more of time division multiplexing (TDM) techniques, frequency division multiplexing (FDM) techniques, or hybrid TDM-FDM techniques. A control region (e.g., a control resource set (CORESET) ) for a physical control channel may be defined by a number of symbol periods and may extend across the system bandwidth or a subset of the system bandwidth of the carrier. One or more control regions (e.g., CORESETs) may be configured for a set of the UEs 115. For example, one or more of the UEs 115 may monitor or search control regions for control information according to one or more search space sets, and each search space set may include one or multiple control channel candidates in one or more aggregation levels arranged in a cascaded manner. An aggregation level for a control channel candidate may refer to a number of control channel resources (e.g., control channel elements (CCEs) ) associated with encoded information for a control information format having a given payload size. Search space sets may include common search space sets configured for sending control information to multiple UEs 115 and UE-specific search space sets for sending control information to a specific UE 115.
Each base station 105 may provide communication coverage via one or more cells, for example a macro cell, a small cell, a hot spot, or other types of cells, or any combination thereof. The term “cell” may refer to a logical communication entity used for communication with a base station 105 (e.g., over a carrier) and may be associated with an identifier for distinguishing neighboring cells (e.g., a physical cell identifier (PCID) , a virtual cell identifier (VCID) , or others) . In some examples, a cell may also refer to a geographic coverage area 110 or a portion of a geographic coverage area 110 (e.g., a sector) over which the logical communication entity operates. Such cells may range from smaller areas (e.g., a structure, a subset of structure) to larger areas depending on various factors such as the capabilities of the base station 105. For example, a cell may be or include a building, a subset of a building, or exterior spaces between or overlapping with geographic coverage areas 110, among other examples.
A macro cell generally covers a relatively large geographic area (e.g., several kilometers in radius) and may allow unrestricted access by the UEs 115 with service subscriptions with the network provider supporting the macro cell. A small cell may be associated with a lower-powered base station 105, as compared with a macro cell, and a small cell may operate in the same or different (e.g., licensed, unlicensed) frequency bands as macro cells. Small cells may provide unrestricted access to the UEs 115 with service subscriptions with the network provider or may provide restricted access to the UEs 115 having an association with the small cell (e.g., the UEs 115 in a closed subscriber group (CSG) , the UEs 115 associated with users in a home or office) . A base station 105 may support one or multiple cells and may also support communications over the one or more cells using one or multiple component carriers.
In some examples, a carrier may support multiple cells, and different cells may be configured according to different protocol types (e.g., MTC, NB-IoT, enhanced mobile broadband (eMBB) ) that may provide access for different types of devices.
In some examples, a base station 105 may be movable and therefore provide communication coverage for a moving geographic coverage area 110. In some examples, different geographic coverage areas 110 associated with different technologies may overlap, but the different geographic coverage areas 110 may be supported by the same base station 105. In other examples, the overlapping geographic coverage areas 110 associated with different technologies may be supported by different base stations 105. The wireless communications system 100 may include, for example, a heterogeneous network in which different types of the base stations 105 provide coverage for various geographic coverage areas 110 using the same or different radio access technologies.
Some UEs 115, such as MTC or IoT devices, may be low cost or low complexity devices and may provide for automated communication between machines (e.g., via Machine-to-Machine (M2M) communication) . M2M communication or MTC may refer to data communication technologies that allow devices to communicate with one another or a base station 105 without human intervention. In some examples, M2M communication or MTC may include communications from devices that integrate sensors or meters to measure or capture information and relay such information to a central server or application program that makes use of the information or presents the information to humans interacting with the  application program. Some UEs 115 may be designed to collect information or enable automated behavior of machines or other devices. Examples of applications for MTC devices include smart metering, inventory monitoring, water level monitoring, equipment monitoring, healthcare monitoring, wildlife monitoring, weather and geological event monitoring, fleet management and tracking, remote security sensing, physical access control, and transaction-based business charging.
The wireless communications system 100 may be configured to support ultra-reliable communications or low-latency communications, or various combinations thereof. For example, the wireless communications system 100 may be configured to support ultra-reliable low-latency communications (URLLC) or mission critical communications. The UEs 115 may be designed to support ultra-reliable, low-latency, or critical functions (e.g., mission critical functions) . Ultra-reliable communications may include private communication or group communication and may be supported by one or more mission critical services such as mission critical push-to-talk (MCPTT) , mission critical video (MCVideo) , or mission critical data (MCData) . Support for mission critical functions may include prioritization of services, and mission critical services may be used for public safety or general commercial applications. The terms ultra-reliable, low-latency, mission critical, and ultra-reliable low-latency may be used interchangeably herein.
In some examples, a UE 115 may also be able to communicate directly with other UEs 115 over a device-to-device (D2D) communication link 135 (e.g., using a peer-to-peer (P2P) or D2D protocol) . One or more UEs 115 utilizing D2D communications may be within the geographic coverage area 110 of a base station 105. Other UEs 115 in such a group may be outside the geographic coverage area 110 of a base station 105 or be otherwise unable to receive transmissions from a base station 105. In some examples, groups of the UEs 115 communicating via D2D communications may utilize a one-to-many (1: M) system in which each UE 115 transmits to every other UE 115 in the group. In some examples, a base station 105 facilitates the scheduling of resources for D2D communications. In other cases, D2D communications are carried out between the UEs 115 without the involvement of a base station 105.
The core network 130 may provide user authentication, access authorization, tracking, Internet Protocol (IP) connectivity, and other access, routing, or mobility functions.  The core network 130 may be an evolved packet core (EPC) or 5G core (5GC) , which may include at least one control plane entity that manages access and mobility (e.g., a mobility management entity (MME) , an access and mobility management function (AMF) ) and at least one user plane entity that routes packets or interconnects to external networks (e.g., a serving gateway (S-GW) , a Packet Data Network (PDN) gateway (P-GW) , or a user plane function (UPF) ) . The control plane entity may manage non-access stratum (NAS) functions such as mobility, authentication, and bearer management for the UEs 115 served by the base stations 105 associated with the core network 130. User IP packets may be transferred through the user plane entity, which may provide IP address allocation as well as other functions. The user plane entity may be connected to network operators IP services. The operators IP services may include access to the Internet, Intranet (s) , an IP Multimedia Subsystem (IMS) , or a Packet-Switched Streaming Service, for example.
Some of the network devices, such as a base station 105, may include subcomponents such as an access network entity 140, which may be an example of an access node controller (ANC) . Each access network entity 140 may communicate with the UEs 115 through one or more other access network transmission entities 145, which may be referred to as radio heads, smart radio heads, or transmission/reception points (TRPs) . Each access network transmission entity 145 may include one or more antenna panels. In some configurations, various functions of each access network entity 140 or base station 105 may be distributed across various network devices (e.g., radio heads and ANCs) or consolidated into a single network device (e.g., a base station 105) .
The wireless communications system 100 may operate using one or more frequency bands, typically in the range of 300 megahertz (MHz) to 300 gigahertz (GHz) . Generally, the region from 300 MHz to 3 GHz is known as the ultra-high frequency (UHF) region or decimeter band because the wavelengths range from approximately one decimeter to one meter in length. The UHF waves may be blocked or redirected by buildings and environmental features, but the waves may penetrate structures sufficiently for a macro cell to provide service to the UEs 115 located indoors. The transmission of UHF waves may be associated with smaller antennas and shorter ranges (e.g., less than 100 kilometers) compared to transmission using the smaller frequencies and longer waves of the high frequency (HF) or very high frequency (VHF) portion of the spectrum below 300 MHz.
The wireless communications system 100 may also operate in a super high frequency (SHF) region using frequency bands from 3 GHz to 30 GHz, also known as the centimeter band, or in an extremely high frequency (EHF) region of the spectrum (e.g., from 30 GHz to 300 GHz) , also known as the millimeter band. In some examples, the wireless communications system 100 may support millimeter wave (mmW) communications between the UEs 115 and the base stations 105, and EHF antennas of the respective devices may be smaller and more closely spaced than UHF antennas. In some examples, this may facilitate use of antenna arrays within a device. The propagation of EHF transmissions, however, may be subject to even greater atmospheric attenuation and shorter range than SHF or UHF transmissions. The techniques disclosed herein may be employed across transmissions that use one or more different frequency regions, and designated use of bands across these frequency regions may differ by country or regulating body.
The wireless communications system 100 may utilize both licensed and unlicensed radio frequency spectrum bands. For example, the wireless communications system 100 may employ License Assisted Access (LAA) , LTE-Unlicensed (LTE-U) radio access technology, or NR technology in an unlicensed band such as the 5 GHz industrial, scientific, and medical (ISM) band. When operating in unlicensed radio frequency spectrum bands, devices such as the base stations 105 and the UEs 115 may employ carrier sensing for collision detection and avoidance. In some examples, operations in unlicensed bands may be based on a carrier aggregation configuration in conjunction with component carriers operating in a licensed band (e.g., LAA) . Operations in unlicensed spectrum may include downlink transmissions, uplink transmissions, P2P transmissions, or D2D transmissions, among other examples.
base station 105 or a UE 115 may be equipped with multiple antennas, which may be used to employ techniques such as transmit diversity, receive diversity, multiple-input multiple-output (MIMO) communications, or beamforming. The antennas of a base station 105 or a UE 115 may be located within one or more antenna arrays or antenna panels, which may support MIMO operations or transmit or receive beamforming. For example, one or more base station antennas or antenna arrays may be co-located at an antenna assembly, such as an antenna tower. In some examples, antennas or antenna arrays associated with a base station 105 may be located in diverse geographic locations. A base station 105 may have an antenna array with a number of rows and columns of antenna ports that the base station 105  may use to support beamforming of communications with a UE 115. Likewise, a UE 115 may have one or more antenna arrays that may support various MIMO or beamforming operations. Additionally or alternatively, an antenna panel may support radio frequency beamforming for a signal transmitted via an antenna port.
The base stations 105 or the UEs 115 may use MIMO communications to exploit multipath signal propagation and increase the spectral efficiency by transmitting or receiving multiple signals via different spatial layers. Such techniques may be referred to as spatial multiplexing. The multiple signals may, for example, be transmitted by the transmitting device via different antennas or different combinations of antennas. Likewise, the multiple signals may be received by the receiving device via different antennas or different combinations of antennas. Each of the multiple signals may be referred to as a separate spatial stream and may carry bits associated with the same data stream (e.g., the same codeword) or different data streams (e.g., different codewords) . Different spatial layers may be associated with different antenna ports used for channel measurement and reporting. MIMO techniques include single-user MIMO (SU-MIMO) , where multiple spatial layers are transmitted to the same receiving device, and multiple-user MIMO (MU-MIMO) , where multiple spatial layers are transmitted to multiple devices.
Beamforming, which may also be referred to as spatial filtering, directional transmission, or directional reception, is a signal processing technique that may be used at a transmitting device or a receiving device (e.g., a base station 105, a UE 115) to shape or steer an antenna beam (e.g., a transmit beam, a receive beam) along a spatial path between the transmitting device and the receiving device. Beamforming may be achieved by combining the signals communicated via antenna elements of an antenna array such that some signals propagating at particular orientations with respect to an antenna array experience constructive interference while others experience destructive interference. The adjustment of signals communicated via the antenna elements may include a transmitting device or a receiving device applying amplitude offsets, phase offsets, or both to signals carried via the antenna elements associated with the device. The adjustments associated with each of the antenna elements may be defined by a beamforming weight set associated with a particular orientation (e.g., with respect to the antenna array of the transmitting device or receiving device, or with respect to some other orientation) .
Wireless communications system 100 may be an NR system that may utilize any combination of licensed, shared, and unlicensed spectrum bands, among others. The flexibility of eCC symbol duration and subcarrier spacing may allow for the use of eCC across multiple spectrums. In some examples, NR shared spectrum may increase spectrum utilization and spectral efficiency, specifically through dynamic vertical (e.g., across the frequency domain) and horizontal (e.g., across the time domain) sharing of resources.
The wireless communications system 100 may be a packet-based network that operates according to a layered protocol stack. In the user plane, communications at the bearer or Packet Data Convergence Protocol (PDCP) layer may be IP-based. A Radio Link Control (RLC) layer may perform packet segmentation and reassembly to communicate over logical channels. A Medium Access Control (MAC) layer may perform priority handling and multiplexing of logical channels into transport channels. The MAC layer may also use error detection techniques, error correction techniques, or both to support retransmissions at the MAC layer to improve link efficiency. In the control plane, the Radio Resource Control (RRC) protocol layer may provide establishment, configuration, and maintenance of an RRC connection between a UE 115 and a base station 105 or a core network 130 supporting radio bearers for user plane data. At the physical layer, transport channels may be mapped to physical channels.
The UEs 115 and the base stations 105 may support retransmissions of data to increase the likelihood that data is received successfully. Hybrid automatic repeat request (HARQ) feedback is one technique for increasing the likelihood that data is received correctly over a communication link 125. HARQ may include a combination of error detection (e.g., using a cyclic redundancy check (CRC) ) , forward error correction (FEC) , and retransmission (e.g., automatic repeat request (ARQ) ) . HARQ may improve throughput at the MAC layer in poor radio conditions (e.g., low signal-to-noise conditions) . In some examples, a device may support same-slot HARQ feedback, where the device may provide HARQ feedback in a specific slot for data received in a previous symbol in the slot. In other cases, the device may provide HARQ feedback in a subsequent slot, or according to some other time interval.
The wireless communications system 100 may include one or more UEs 115 and base stations 105 that may support enhancements to coding systems as described herein. In  the example of FIG. 1, a UE 115 includes a coding manager 150. In other examples, a base station 105 may include the coding manager 150.
The coding manager 150 may determine a set of source symbols for a wireless transmission, such as from a processor of the UE 115. The coding manager 150 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme. In some examples, the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The second coding scheme may be a Reed-Solomon coding scheme. The coding manager 150 may generate a set of encoded symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols. The UE 115 may transmit the set of encoded symbols.
The coding manager 150 may also receive a set of encoded symbols and decode at least some of the symbols. The coding manager 150 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme. In some examples, the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The coding manager 150 may also generate a set of source symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols. The UE 115 may use the source symbols for further communications, in an application, or the like.
The coding manager 150 may improve efficiency of the transmission of coded packets. Coding schemes that may have a configurable Galois Field size corresponding to an arbitrary integer, such as the Reed Solomon coding scheme, may improve flexibility of the coding mechanism. In addition, Reed Solomon codes have efficient encoding and decoding algorithms that may improve performance. The techniques described herein may enable network nodes to improve efficiency and reliability of decoding transmitted information.
FIG. 2 illustrates an example of an encoding scheme 200 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. In some examples, the encoding scheme 200 may be implemented in aspects of wireless communications system 100. For example, the coding manager 150 as shown in FIG. 1 may implement the encoding  scheme 200. In other examples, a coding manager in a base station may implement the encoding scheme. The encoding scheme 200 may be associated with communications between network nodes, where each network node may be a UE 115, a base station 105, or any other type of network node as described herein.
The encoding scheme 200 may use FEC coding, such as Raptor coding, to encode packets for transmission. In particular, the encoding scheme 200 may use RaptorQ codes to encode packets for transmission. In RaptorQ codes, the encoding and decoding complexities of LT codes may be reduced by reducing the average degree. The coding process may include a precoding process which generates some redundant symbols (e.g., S LDPC symbols and H half symbols) and an encoding process for each encoding symbol. Techniques described herein provide an enhanced encoding process that incorporates a coding scheme configurable for an arbitrary sized Galois field.
A node (which may be referred to as an input node) may encode a set of source symbols 205 into a set of encoded symbols 250. The set of source symbols 205 may contain a number, K, of source symbols 205, where K is a positive integer. The number of encoded symbols 250 may be greater than the number of source symbols 205, in order to improve a probability of successfully decoding the source symbols 205 at another node (which may be referred to as an output node) . In some examples, the encoding scheme 200 may be rateless, where the number of encoded symbols 250 may have no upper limit.
The encoding scheme 200 may include a precoding process 210. In the precoding process 210, the input node may map one or more source symbols 205 to a portion of a set of intermediate symbols 215. The input node may generate a quantity of intermediate symbols 215 concatenated with the source symbols 220. For example, a quantity of intermediate symbols 215 are generated in addition to a number K of intermediate symbols 215 directly mapped to the K source symbols 205 (e.g., systematic symbols) . The intermediate symbols 215 may include a copy of the source symbols 205 as concatenated source symbols 220, a set of first coded symbols 225, and a set of second coded symbols 230. In some examples, the set of first coded symbols 225 may include a quantity S of LDPC symbols, where one or more copies (e.g., three copies) of each source symbol 205 may appear in each of the set of first coded symbols 225 (also referred to herein as LDPC symbols 225) . The set of second coded symbols 230 may also include a number H of symbols generated using a coding scheme that  supports an arbitrary Galois field (e.g., finite fields GF (q) ) , such as a Reed Solomon code. For example, the coding scheme may have a configurable Galois Field size corresponding to an arbitrary integer.
The encoding scheme 200 may include an LT coding process 235 following the precoding process 210. In the LT coding process 220, the input node may map some of the intermediate symbols 215 to a set of classified intermediate symbols 240. The set of classified intermediate symbols 240 may include a set of LT symbols 245 and a set of PI symbols 250. For example, the LT symbols 245 may be based at least in part on a subset of the LDPC symbols 225 and at least a subset of the set of source symbols 205. The PI symbols 250 may be generated from at least a subset of the first set of intermediate symbols 225 and at least a third subset of the source symbols 205. The LT symbols 245 and the PI symbols 250 may be concatenated together.
A set of encoded symbols 255 may be generated from the classified intermediate symbols 240. The set of encoded symbols 255 may be generated first by choosing a degree d i (where d i is a whole number) of the LT symbols 245. The degree d i may be randomly (e.g., pseudo-randomly) selected. Thus, both the input node and the output node may be aware of the degree d i. Next, two or three symbols from the PI symbols 250 may be randomly (e.g., pseudo-randomly) chosen. In other examples, other numbers of PI symbols 250 may be chosen. In some examples, the PI symbols 250 may also be selected based on a pseudo-random selection. The encoded symbols 255 may be generated from the selected LT symbols 245 and the selected PI symbols 250 according to an LT encoding process.
In some examples, the intermediate symbols 240 may be combined using a logic operation such as a logic XOR operation. In some examples, each encoded symbol 255 may be associated with information identifying the source symbols 205 used to construct the encoded symbol 255. For example, each encoded symbol 255 may be associated with indices (e.g., s 1, s 2, s 3, s K, etc. ) of the source symbols 205 used to construct the encoded symbol 225.
In some examples, the encoding scheme 200 may be represented by a generator matrix G. The source symbols 205 contained in encoded symbols 250 of a given encoded packet may be represented by p j, which may be defined as:
Figure PCTCN2020075827-appb-000001
In some examples, one or more encoded packets p j may be lost or noisy based on the transmission environment. The output node may receive a subset of the encoded packets (e.g., a quantity N of the encoded packets) via the wireless channel. The source symbols 205 contained in encoded symbols 255 of a given encoded packet received by the output node may be represented by d k, which may be defined by:
Figure PCTCN2020075827-appb-000002
Based on the encoding scheme 200, the output node may recover all source symbols 205 in the set of source symbols 205 when the matrix G nk of the received packets is invertible. Additionally or alternatively, the output node may recover all source symbols 205 in the set of source symbols 205 when the matrix G nk of the received packets has a rank K, where K is the quantity of source symbols 205 in the set of source symbols 205. That is, techniques described herein may be able to recover packets that may otherwise be lost (e.g., dropped) due to poor channel conditions. To increase a probability of the output node successfully decoding the set of source symbols 205, the encoding scheme 200 may be designed such that the representative generator matrix G nk is invertible for a minimum quantity N of received encoded packets.
The output node may decode the received encoded symbols 255 in order to obtain the source symbols 205. The output node may begin a decoding process by identifying an encoded symbol 255 with an index t j that is connected to a single source symbol 205 with an index s i. The output node may determine that the encoded symbol 255 with index t j is equivalent to the source symbol 205 with index s i. The output node may then apply an XOR operation to each other encoding symbol 225 connected to the source symbol 205 with index s i, and remove all edges connected to the source symbol 205 with index s i. The output node may repeat this process until each source symbol 205 is determined from the received encoded symbols 255 (e.g., all s i are determined) . Additionally or alternatively, a Gaussian elimination process may be used to decode the encoded symbols 255.
LT coding symbols may be generated using an LT coding process. For LDPC symbols, for each i intermediate symbol (where i = 0, …, K-1) , a is defined as:
Figure PCTCN2020075827-appb-000003
while b is defined as:
b=i×S         (4)
C, the intermediate symbol vector, may be defined as:
C=A -1·D        (5)
where D is defined as S+H zero symbols followed by the K′ source symbols. The LDPC symbols are created by iteratively calculating C and b (e.g., three times) :
C [K+b] =C [K+b]  C [i]        (6)
b= (b+a) ×S          (7)
The half symbols, H, may be calculated using a high-density parity check (HDPC) coding. The H set of second coded symbols 230 may be half symbols, where each half symbol may include ceil (H/2) source symbols 205, and where ceil (x) may represent a ceiling function mapping x to an integer greater than or equal to x. The half symbols may be created by applying an XOR function to the copies of the source symbols 205. Calculating H may follow the pseudo-code:
for h=0, …, H-1 do,
for j=0, …K+S-1 do,
if bit h of m [j, H′] is equal to 1, then:
C [h+K+S] =C [h+K+S]  C [j]       (8)
Additionally or alternatively, the encoding scheme 200 may include precoding RaptorQ codes. The LDCP generator matrix, G_LDPC may be defined as G_LDPC, 1 *Transpose [ (C [0] , ..., C [B-1] ) ] + G_LDPC, 2 *Transpose (C [W] , ..., C [W+P-1] ) +Transpose [ (C [B] , ..., C [B+S-1] ) ] = 0. Likewise, the HDPC symbols, G_HDPC, may be defined as Transpose [C [K’ +S] , ..., C [K’ +S+H-1] ] + MT *GAMMA *Transpose [C [0] , ..., C [K’ +S-1] ] = 0.
In an alternative precoding RaptorQ code, there are two LDPC generators (e.g., G_LDPC1 and G_LDPC2) , as shown in FIGs. 3 and 4. The LDPC symbols may be generated over Galois Field 2 (GF (2) ) . If HDPC symbols are generated, they may be generated over Galois Field 256 (GF (256) ) . However, the encoding scheme 200 may include precoding with a coding scheme that has a configurable Galois Field size corresponding to an arbitrary integer. For example, the encoding scheme 200 may include a Reed Solomon of GF (q) , where q is any integer.
FIG. 3 illustrates an example conceptual diagram of a coding matrix 300 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The coding matrix 300 illustrates the relationship between the intermediate and the source symbols. In some examples, the coding matrix 300 may be implemented in aspects of wireless communications system 100. For example, the coding manager 150 as shown in FIG. 1 may implement the coding matrix 300. In other examples, a coding manager in a base station may implement the encoding scheme. The coding matrix 300 may be associated with communications between network nodes, where each network node may be a UE 115, a base station 105, or any other type of network node as described herein.
The coding matrix 300 shows a set of source symbols, K, a set of HDPC symbols, H, a set of LDPC symbols, S, and a number of source symbols with zero padding, K′. The coding matrix 300 also shows sets of symbols B and U, where B may be the number of symbols in the first set of intermediate symbols and U may be the number of symbols in the second set of intermediate symbols. In this example, B+U=K′. For S crossed with B, a first LDPC coding scheme, G_LDPC1, is used to generate the LDPC symbols. For S crossed with S or H crossed with H, the identity matrices are used, I_S and I_H, respectively. For S crossed with U, a generator matrix using a LDPC coding scheme, G_LDPC2, may be used.  G_LDPC1 may use the same or different coding scheme as G_LDPC2. For S crossed with H, the null matrix 0_SxH may be used.
The precoding scheme may also include generating intermediate symbols that are generating using a configurable Galois Field size corresponding to an arbitrary integer. For example, the encoding scheme 200 may include a Reed Solomon of GF (q) , where q is any integer. In the encoding scheme 200, for H crossed with B, S, and U, a generator matrix G_RS uses a configurable Galois Field size corresponding to an arbitrary integer. The coding scheme may be a Reed-Solomon coding scheme, a cyclic error correcting code, or a Bose–Chaudhuri–Hocquenghem (BCH) code, for example. In some examples, the coding scheme uses a Galois Field having a size other than a power of 2. In some examples, the coding scheme uses a Galois Field having a size between 2 and 256 or over 256 (e.g., an integer greater than 2 that is not equal to 256) .
The K′ encoded symbols may be generated from B, S, U, and H using a generator encoding scheme, G_ENC.
FIG. 4 illustrates an example conceptual diagram of a coding matrix 400 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. In some examples, the coding matrix 400 may be implemented in aspects of wireless communications system 100. For example, the coding manager 150 as shown in FIG. 1 may implement the coding matrix 400. In other examples, a coding manager in a base station may implement the encoding scheme. The coding matrix 400 may be associated with communications between network nodes, where each network node may be a UE 115, a base station 105, or any other type of network node as described herein. In the example of FIG. 4, compared with that of FIG. 3, the coding matrix 400 includes that the LDPC symbols are also based on H as well as U.
FIG. 5 illustrates an example of a process flow 500 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. Process flow 500 may include a base station 105-a and a UE 115-a. In this example, the base station 105-a may act as an input node and perform encoding, while the UE 115-a may act as an output node and perform decoding. In other examples, the UE 115-a may act as the input node while the base station 105-a may act as the output node. In other examples, the communications may be between two UEs 115 or two base stations 105, or between any other types of nodes. The  base station 105-a and the UE 115-a may implement the encoding scheme 200. In some examples, the base station 105-a and the UE 115-a may represent one or more aspects of the base stations 105 and the UEs 115 shown in FIG. 1, respectively.
At 505, the base station 105-a may determine a set of source symbols for a data transmission. The data transmission may be encoded to reduce packet loss, for security, or the like. The source symbols may be included in one or more data packets for transmission. At 510, intermediate symbols may be generated using a first coding scheme and a second coding scheme. For example, the base station 105-a may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme. In some examples, the first coding scheme may be LDPC coding scheme. In some examples, a portion of the first set of intermediate symbols may be generated based on a subset of the second set of intermediate symbols.
The base station 105-a may also generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme at 510. The second coding scheme may have a configurable Galois Field size corresponding to an arbitrary integer. In some examples, the second coding scheme is a Reed-Solomon code. In other examples, the second coding scheme is a cyclic error correcting code or a BCH code. In some examples, the second coding scheme uses a Galois Field having a size other than a power of 2, or different from the Galois Field size associated with HDPC (e.g., an integer greater than 2 and not equal to 256) .
At 515, the base station 105-a may generate classified intermediate symbols from the previously generated intermediate symbols. For example, the base station 105-a may generate a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols. The base station 105-a may also generate a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, where generating the set of encoded symbols is further based on the first set of classified intermediate symbols and the second set of classified intermediate symbols. The third and fourth subset of the set of source symbols may be the same or different subsets.
At 520, the base station 105-a may encode the classified intermediate symbols to create a set of encoded symbols. That is, the base station 105-a may generate a set of encoded  symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. In some examples, the base station 105-a may concatenate the first set of intermediate symbols and the second set of intermediate symbols, where generating the set of encoded symbols is further based on the concatenation.
At 525, the base station 105-a may transmit the set of encoded symbols to the UE 115-a. The set of encoded symbols may be broadcast or unicast. A receiver at the UE 115-a may receive the set of encoded symbols. In some examples, the UE 115-a knows the pseudo-random codes used to encode the encoded symbols, in order for the UE 115-a to decode the encoded symbols. The decoding process performed by the UE 115-a may be analogous to the encoding process performed by the base station 105-a.
At 530, the UE 115-a may generate classified intermediate symbols from the received set of encoded symbols. The UE 115-a may generate a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, where generating the first set of intermediate symbols is further based on the first set of classified intermediate symbols. Likewise, the UE 115-a may generate a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, where generating the second set of intermediate symbols is further based on the second set of classified intermediate symbols. The UE 115-a may concatenate the first and second sets of classified intermediate symbols.
At 535, the UE 115-a may generate intermediate symbols from the classified intermediate symbols. The UE 115-a may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme. In some examples, the first coding scheme is an LDPC code. The UE 115-a may generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. In some examples, the second coding scheme is a Reed-Solomon code, or other type of cyclic error correcting code or BCH code. In some examples, the second coding scheme uses a Galois Field having a size other than a power of 2 or different from the Galois Field size associated with HDPC (e.g., an integer greater than 2 and not equal to 256) . The UE 115-a may concatenate the first and second sets of intermediate symbols.
At 545, the UE 115-a may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. In some examples, generating the set of source symbols is further based on the concatenation of the first set of intermediate symbols and the second set of intermediate symbols. At 550, the UE 115-a may process the decoded source symbols, which may include using the source symbols in an application, outputting at least a portion of the source symbols, transmitting the source symbols, or any other data processing.
FIG. 6 illustrates an example of a method 600 for encoding source symbols that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The method 600 may be performed by an input node, which may be a base station, a UE, or another type of node. In some examples, the method 600 may be performed by a base station 105 or a UE 115 as described in FIGs. 1 and 5.
At 605, the input node determines a set of source symbols. The source symbols may be symbols in one or more data packets for transmission to another node. The input node may use the set source symbols to generate two sets of intermediate symbols and, from those, two sets of classified intermediate symbols. At 610, the input node generates a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme. In some examples, the first coding scheme may be LDPC coding scheme. At 615, the method 600 may include generating a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols.
Likewise, the method 600 may include generating a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme at 620. The second coding scheme may have a configurable Galois Field size corresponding to an arbitrary integer. In some examples, the second coding scheme is a Reed-Solomon code, or other type of cyclic error correcting code or BCH code. In some examples, the second coding scheme uses a Galois Field having a size other than a power of 2 or different from the Galois Field size associated with HDPC (e.g., an integer greater than 2 and not equal to 256) . At 625, the method 600 may include generating a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, where generating the set of encoded symbols is further  based on the first set of classified intermediate symbols and the second set of classified intermediate symbols.
At 630, the first and second set of classified intermediate symbols may be concatenated. At 635, the method 600 may include generating a set of encoded symbols based on at least the concatenated first set of intermediate symbols and the second set of intermediate symbols. At 640, the input node may transmit the set of encoded symbols to the intended recipient.
FIG. 7 illustrates an example of a method 700 for decoding source symbols that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The method 700 may be performed by an output node, which may be a base station, a UE, or another type of node. In some examples, the method 700 may be performed by a base station 105 or a UE 115 as described in FIGs. 1 and 5.
At 705, the method 700 may include receiving a set of encoded symbols. At 710 and 720, the method 700 may include generating classified intermediate symbols from the received set of encoded symbols. At 710, the method 700 may include generating a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, where generating the first set of intermediate symbols is further based on the first set of classified intermediate symbols. Likewise, at 720, the method 700 may include generating a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, where generating the second set of intermediate symbols is further based on the second set of classified intermediate symbols. The method 700 may include concatenating the first and second sets of classified intermediate symbols.
At 715 and 725, the method 700 may include generating intermediate symbols from the classified intermediate symbols. At 715, the method 700 may include generating a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme. In some examples, the first coding scheme is an LDPC code. The method 700 may include generating a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer, at 725. In some examples, only a portion of the intermediate symbols are recovered, which may be from either set of intermediate symbols. In some examples, the second coding scheme is a Reed- Solomon code, or other type of cyclic error correcting code or BCH code. In some examples, the second coding scheme uses a Galois Field having a size other than a power of 2 or different from the Galois Field size associated with HDPC (e.g., an integer greater than 2 and not equal to 256) . The UE 115-a may concatenate the first and second sets of intermediate symbols.
At 730, the method 700 may include generating a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. In some examples, generating the set of source symbols is further based on the concatenation of the first set of intermediate symbols and the second set of intermediate symbols. The method 700 may also include processing the decoded source symbols, which may include using the source symbols in an application, outputting at least a portion of the source symbols, transmitting the source symbols, or any other data processing
FIG. 8 shows a block diagram 800 of a device 805 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The device 805 may be an example of aspects of a wireless device as described herein. The device 805 may include a receiver 810, a communication manager 815, and a transmitter 820. The device 805 may also include a processor. Each of these components may be in communication with one another (e.g., via one or more buses) .
Receiver 810 may receive information such as packets, user data, or control information associated with various information channels (e.g., control channels, data channels, and information related to techniques for enhanced coding with RaptorQ codes, etc. ) . Information may be passed on to other components of the device 805. The receiver 810 may be an example of aspects of the  transceiver  1120 or 1220 as described with reference to FIGs. 11 and 12. The receiver 810 may utilize a single antenna or a set of antennas.
The communication manager 815 may determine a set of source symbols for a wireless transmission. The communication manager 815 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme. The communication manager 815 may generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The communication manager 815 may generate a set of encoded symbols  based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmit the set of encoded symbols.
The communication manager 815 may also determine a set of encoded symbols. The communication manager 815 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The communication manager 815 may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. The communication manager 815 may be an example of aspects of the communication manager 905 described herein.
The communication manager 815, or its sub-components, may be implemented in hardware, code (e.g., software or firmware) executed by a processor, or any combination thereof. If implemented in code executed by a processor, the functions of the communication manager 815, or its sub-components may be executed by a general-purpose processor, a DSP, an application-specific integrated circuit (ASIC) , a FPGA or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described in the present disclosure.
The communication manager 815, or its sub-components, may be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations by one or more physical components. In some examples, the communication manager 815, or its sub-components, may be a separate and distinct component in accordance with various aspects of the present disclosure. In some examples, the communication manager 815, or its sub-components, may be combined with one or more other hardware components, including but not limited to an input/output (I/O) component, a transceiver, a network server, another computing device, one or more other components described in the present disclosure, or a combination thereof in accordance with various aspects of the present disclosure.
Transmitter 820 may transmit signals generated by other components of the device 805. In some examples, the transmitter 820 may be collocated with a receiver 810 in a transceiver module. For example, the transmitter 820 may be an example of aspects of the  transceiver  1120 or 1220 as described with reference to FIGs. 11 and 12. The transmitter 820 may utilize a single antenna or a set of antennas.
FIG. 9 shows a block diagram 900 of a device 905 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The device 905 may be an example of aspects of a device 905 or a wireless device 115 as described herein. The device 905 may include a receiver 910, a coding manager 920, and a transmitter 945. The device 905 may also include a processor. Each of these components may be in communication with one another (e.g., via one or more buses) .
Receiver 910 may receive information such as packets, user data, or control information associated with various information channels (e.g., control channels, data channels, and information related to techniques for coding with enhanced RaptorQ, etc. ) . The receiver 910 may receive a set of encoded symbols. Information may be passed on to other components of the device 905. The receiver 910 may be an example of aspects of the  transceiver  1120 or 1220 as described with reference to FIGs. 11 and 12. The receiver 910 may utilize a single antenna or a set of antennas.
The communications manager 915 may be an example of aspects of the communications manager 815 as described herein. The communications manager 915 may include a coding manager 920, an encoder 925, and a decoder 930. The communications manager 915 may be an example of aspects of the  communications manager  815 or 1015 as described herein.
The coding manager 920 may be an example of aspects of the coding manager 815 as described herein. The coding manager 920 may be an example of aspects of the coding manager 150 described herein. The coding manager 920 may process a set of received source symbols of a set of encoded symbols. If the coding manager 920 has a set of source symbols to encode, the coding manager 920 may instruct the encoder 925 to encode the source symbols for transmission. If the coding manager 920 receives a set of encoded symbols, the coding manager 920 may instruct the decoder 930 to decode the encoded symbols. The coding manager 920 may select a Galois Field size for the coding process.
The coding manager 920 may determine a set of source symbols for a wireless transmission. The encoder 925 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme and generate a second  set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme. In some examples, the coding manager 920 has determined that the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The encoder 925 may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
The coding manager 920 may determine a set of encoded symbols has been received from a wireless transmission. The decoder 930 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme. In some examples, the coding manager 920 has determined that the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The decoder 930 may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
Transmitter 945 may transmit signals generated by other components of the device 905. For example, the transmitter 945 may transmit the set of encoded symbols. In some examples, the transmitter 945 may be collocated with a receiver 910 in a transceiver module. For example, the transmitter 945 may be an example of aspects of the  transceiver  1120 or 1220 as described with reference to FIGs. 11 and 12. The transmitter 945 may utilize a single antenna or a set of antennas.
FIG. 10 shows a block diagram 1000 of a communication manager 1005 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The coding manager 1005 may be an example of aspects of a communication manager 815, a communication manager 915, a communication manager 1110, or a communication manager 1210 described herein. The communication manager 1005 may include a coding manager 1010, an encoder 1015, a coding scheme manager 1020, and a decoder 1025. Each of these modules may communicate, directly or indirectly, with one another (e.g., via one or more buses) .
The coding manager 1010 may determine a set of source symbols for a wireless transmission. The coding manager 1010 may determine that the is a set of source symbols for coding or a set of encoded symbols for decoding.
The coding scheme manager 1020 may determine which coding schemes to use for coding or decoding. The coding scheme manager 1020 may select from an LDPC code, an HDPC code, a fountain code, an LT code, a Reed Solomon code, a BCH code, an FEC code, or any other suitable code. The coding scheme manager 1020 may configure the finite field size for a Galois Field. That is, the coding scheme manager 1020 may determine q of GF (q) . The coding scheme manager 1020 may determine the Galois Field size based on a decoding complexity metric, or other in some cases, the second coding scheme uses a Galois Field having a size between 2 and 256 or above 256.
The encoder 1015 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme. In some examples, the encoder 1015 may generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. In some examples, the encoder 1015 may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. In some examples, the encoder 1015 may generate a portion of the first set of intermediate symbols based on a subset of the second set of intermediate symbols. In some examples, the encoder 1015 may concatenate the first set of intermediate symbols and the second set of intermediate symbols, where generating the set of encoded symbols or the set of classified intermediate symbols are further based on the concatenation.
The encoder 1015 may generate a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols. In some examples, the encoder 1015 may generate a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, where generating the set of encoded symbols is further based on the first set of classified intermediate symbols and the second set of classified intermediate symbols. In some cases, a size of the third subset of the set of source symbols plus a size of the fourth subset of the set of source symbols equals a size of the set of source symbols.
The decoder 1035 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme. In some examples,  the decoder 1035 may generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. In some examples, the decoder 1035 may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. In some examples, the decoder 1035 may generate a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, where generating the first set of intermediate symbols is further based on the first set of classified intermediate symbols.
In some examples, the decoder 1035 may generate a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, where generating the second set of intermediate symbols is further based on the second set of classified intermediate symbols. In some examples, the decoder 1035 may concatenate the first set of intermediate symbols and the second set of intermediate symbols, where generating the set of source symbols is further based on the concatenation.
FIG. 11 shows a diagram of a system 1100 including a device 1105 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The device 1105 may be an example of or include the components of device 805, device 905, or a wireless device as described herein. The device 1105 may include components for bi-directional voice and data communications including components for transmitting and receiving communications, including a communications manager 1110, a transceiver 1120, an antenna 1125, memory 1130, a processor 1140, and an I/O controller 1150. These components may be in electronic communication via one or more buses (e.g., bus) .
The communication manager 1110 may determine a set of source symbols for a wireless transmission. The communication manager 1110 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The communication manager 1110 may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmit the set of encoded symbols.
The communication manager 1110 may also receive a set of encoded symbols. The communication manager 1110 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The communication manager 1110 may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
Transceiver 1120 may communicate bi-directionally, via one or more antennas, wired, or wireless links as described above. For example, the transceiver 1120 may represent a wireless transceiver and may communicate bi-directionally with another wireless transceiver. The transceiver 1120 may also include a modem to modulate the packets and provide the modulated packets to the antennas for transmission, and to demodulate packets received from the antennas.
In some cases, the wireless device may include a single antenna 1125. However, in some cases the device may have more than one antenna 1125, which may be capable of concurrently transmitting or receiving multiple wireless transmissions.
The memory 1130 may include random-access memory (RAM) , read-only memory (ROM) , or a combination thereof. The memory 1130 may store computer-readable code 1135 including instructions that, when executed by a processor (e.g., the processor 1140) cause the device to perform various functions described herein. In some cases, the memory 1130 may contain, among other things, a basic input/output system (BIOS) which may control basic hardware or software operation such as the interaction with peripheral components or devices.
The processor 1140 may include an intelligent hardware device (e.g., a general-purpose processor, a DSP, a central processing unit (CPU) , a microcontroller, an ASIC, an FPGA, a programmable logic device, a discrete gate or transistor logic component, a discrete hardware component, or any combination thereof) . In some cases, the processor 1140 may be configured to operate a memory array using a memory controller. In other cases, a memory controller may be integrated into the processor 1140. The processor 1140 may be configured to execute computer-readable instructions stored in a memory (e.g., the memory 1130) to  cause the device 1105 to perform various functions (e.g., functions or tasks supporting techniques for encoding with enhanced RaptorQ) .
The processor 1140 of the device 1105 (e.g., controlling the receiver 810, the transmitter 820, or the transceiver 1120) may enable reliable transmission of encoded packets to the output node. In some examples, the processor 1140 of the device 1105 may perform enhanced RaptorQ coding as described herein. For example, the processor 1140 of the device 805 may turn on one or more processing units for performing the encoding, increase a processing clock, or a similar mechanism within the device 1105. As such, when additional information is scheduled to be encoded and transmitted, the processor 1140 may be ready to respond more efficiently through the reduction of a ramp up in processing power. The improvements in power saving and communication efficiency may further reduce power consumption at the device 1105 (for example, by reducing or eliminating unnecessary or failed transmissions, etc. ) .
The I/O controller 1150 may manage input and output signals for the device 1105. The I/O controller 1150 may also manage peripherals not integrated into the device 1105. In some cases, the I/O controller 1150 may represent a physical connection or port to an external peripheral. In some cases, the I/O controller 1150 may utilize an operating system such as 
Figure PCTCN2020075827-appb-000004
or another known operating system. In other cases, the I/O controller 1150 may represent or interact with a modem, a keyboard, a mouse, a touchscreen, or a similar device. In some cases, the I/O controller 1150 may be implemented as part of a processor. In some cases, a user may interact with the device 1105 via the I/O controller 1150 or via hardware components controlled by the I/O controller 1150.
The code 1135 may include instructions to implement aspects of the present disclosure, including instructions to support wireless communications. The code 1135 may be stored in a non-transitory computer-readable medium such as system memory or other type of memory. In some cases, the code 1135 may not be directly executable by the processor 1140 but may cause a computer (e.g., when compiled and executed) to perform functions described herein.
FIG. 12 shows a diagram of a system 1200 including a device 1205 that supports techniques for enhanced RaptorQ coding in accordance with aspects of the present disclosure.  The device 1205 may be an example of or include the components of device 805, device 905, or a network node such as a relay node, a UE 115, or a base station 105 as described herein. The device 1205 may include components for bi-directional voice and data communications including components for transmitting and receiving communications, including a communications manager 1210, a network communications manager 1215, a transceiver 1220, an antenna 1225, memory 1230, a processor 1240, and an inter-station communications manager 1245. These components may be in electronic communication via one or more buses (e.g., bus 1255) .
The communication manager 1210 may determine a set of source symbols for a wireless transmission. The communication manager 1210 may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The communication manager 1210 may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols, and transmit the set of encoded symbols.
The communication manager 1210 may also receive a set of encoded symbols. The communication manager 1210 may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme and generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The communication manager 1210 may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols.
Network communications manager 1215 may manage communications with the core network (e.g., via one or more wired backhaul links) . For example, the network communications manager 1215 may manage the transfer of data communications for client devices, such as one or more UEs 115.
Transceiver 1220 may communicate bi-directionally, via one or more antennas, wired, or wireless links as described above. For example, the transceiver 1220 may represent  a wireless transceiver and may communicate bi-directionally with another wireless transceiver. The transceiver 1220 may also include a modem to modulate the packets and provide the modulated packets to the antennas for transmission, and to demodulate packets received from the antennas.
In some cases, the wireless device may include a single antenna 1225. However, in some cases the device may have more than one antenna 1225, which may be capable of concurrently transmitting or receiving multiple wireless transmissions.
The memory 1230 may include RAM, ROM, or a combination thereof. The memory 1230 may store computer-readable code 1235 including instructions that, when executed by a processor (e.g., the processor 1240) cause the device to perform various functions described herein. In some cases, the memory 1230 may contain, among other things, a BIOS which may control basic hardware or software operation such as the interaction with peripheral components or devices.
The processor 1240 may include an intelligent hardware device (e.g., a general-purpose processor, a DSP, a CPU, a microcontroller, an ASIC, an FPGA, a programmable logic device, a discrete gate or transistor logic component, a discrete hardware component, or any combination thereof) . In some cases, the processor 1240 may be configured to operate a memory array using a memory controller. In other cases, a memory controller may be integrated into the processor 1240. The processor 1240 may be configured to execute computer-readable instructions stored in a memory (e.g., the memory 1230) to cause the device 1205 to perform various functions (e.g., functions or tasks supporting techniques for enhanced RaptorQ coding) .
The processor 1240 of the device 1205 (e.g., controlling the receiver 810, the transmitter 820, or the transceiver 1120) may enable reliable transmission of encoded packets to the output node via enhanced RaptorQ coding techniques described herein. In some examples, the processor 1240 of the device 1205 may reconfigure parameters associated with encoding packets according to the fountain code. For example, the processor 1240 of the device 1205 may turn on one or more processing units for performing the encoding, increase a processing clock, or a similar mechanism within the device 1205. As such, when additional information is scheduled to be encoded and transmitted, the processor 1240 may be ready to respond more efficiently through the reduction of a ramp up in processing power. The  improvements in power saving and communication efficiency may further reduce power consumption at the device 1205 (for example, by reducing or eliminating unnecessary or failed transmissions, etc. ) .
Inter-station communications manager 1245 may manage communications with other base station 105, and may include a controller or scheduler for controlling communications with UEs 115 in cooperation with other base stations 105. For example, the inter-station communications manager 1245 may coordinate scheduling for transmissions to UEs 115 for various interference mitigation techniques such as beamforming or joint transmission. In some examples, inter-station communications manager 1245 may provide an X2 interface within an LTE/LTE-A wireless communication network technology to provide communication between base stations 105.
The code 1235 may include instructions to implement aspects of the present disclosure, including instructions to support wireless communications. The code 1235 may be stored in a non-transitory computer-readable medium such as system memory or other type of memory. In some cases, the code 1235 may not be directly executable by the processor 1240 but may cause a computer (e.g., when compiled and executed) to perform functions described herein.
FIG. 13 shows a flowchart illustrating a method 1300 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The operations of method 1300 may be implemented by a wireless device or its components as described herein. For example, the operations of method 1300 may be performed by a communications manager using a coding scheme as described with reference to FIGs. 2 through 7. In some examples, a wireless device may execute a set of instructions to control the functional elements of the wireless device to perform the functions described below. Additionally or alternatively, a wireless device may perform aspects of the functions described below using special-purpose hardware.
At 1305, the wireless device may determine a set of source symbols for a wireless transmission. The operations of 1305 may be performed according to the methods described herein. In some examples, aspects of the operations of 1305 may be performed by a communication manager as described with reference to FIGs. 2 through 7.
At 1310, the wireless device may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme. The operations of 1310 may be performed according to the methods described herein. In some examples, aspects of the operations of 1310 may be performed by an encoder as described with reference to FIGs. 2 through 7.
At 1315, the wireless device may generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The operations of 1315 may be performed according to the methods described herein. In some examples, aspects of the operations of 1315 may be performed by an encoder as described with reference to FIGs. 2 through 7.
At 1320, the wireless device may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. The operations of 1320 may be performed according to the methods described herein. In some examples, aspects of the operations of 1320 may be performed by an encoder as described with reference to FIGs. 2 through 7.
At 1325, the wireless device may transmit the set of encoded symbols. The operations of 1325 may be performed according to the methods described herein. In some examples, aspects of the operations of 1325 may be performed by a transmitter as described with reference to FIGs. 2 through 7.
FIG. 14 shows a flowchart illustrating a method 1400 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The operations of method 1400 may be implemented by a wireless device or its components as described herein. For example, the operations of method 1400 may be performed by a coding manager as described with reference to FIGs. 2 through 7. In some examples, a wireless device may execute a set of instructions to control the functional elements of the wireless device to perform the functions described below. Additionally or alternatively, a wireless device may perform aspects of the functions described below using special-purpose hardware.
At 1405, the wireless device may determine a set of source symbols for a wireless transmission. The operations of 1405 may be performed according to the methods described  herein. In some examples, aspects of the operations of 1405 may be performed by a communication manager as described with reference to FIGs. 2 through 7.
At 1410, the wireless device may generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme. The operations of 1410 may be performed according to the methods described herein. In some examples, aspects of the operations of 1410 may be performed by an encoder as described with reference to FIGs. 2 through 7.
At 1415, the wireless device may generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The operations of 1415 may be performed according to the methods described herein. In some examples, aspects of the operations of 1415 may be performed by an encoder as described with reference to FIGs. 2 through 7.
At 1420, the wireless device may generate a set of encoded symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. The operations of 1420 may be performed according to the methods described herein. In some examples, aspects of the operations of 1420 may be performed by an encoder as described with reference to FIGs. 2 through 7.
At 1425, the wireless device may transmit the set of encoded symbols. The operations of 1425 may be performed according to the methods described herein. In some examples, aspects of the operations of 1425 may be performed by a transmitter as described with reference to FIGs. 2 through 7.
At 1430, the wireless device may generate a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols. The operations of 1430 may be performed according to the methods described herein. In some examples, aspects of the operations of 1430 may be performed by an encoder as described with reference to FIGs. 2 through 7.
At 1435, the wireless device may generate a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, where generating the set of encoded symbols is further  based on the first set of classified intermediate symbols and the second set of classified intermediate symbols. The operations of 1435 may be performed according to the methods described herein. In some examples, aspects of the operations of 1435 may be performed by an encoder as described with reference to FIGs. 2 through 7.
FIG. 15 shows a flowchart illustrating a method 1500 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The operations of method 1500 may be implemented by a wireless device or its components as described herein. For example, the operations of method 1500 may be performed by a coding manager as described with reference to FIGs. 2 through 7. In some examples, a wireless device may execute a set of instructions to control the functional elements of the wireless device to perform the functions described below. Additionally or alternatively, a wireless device may perform aspects of the functions described below using special-purpose hardware.
At 1505, the wireless device may receive a set of encoded symbols. The operations of 1505 may be performed according to the methods described herein. In some examples, aspects of the operations of 1505 may be performed by a receiver as described with reference to FIGs. 2 through 7.
At 1510, the wireless device may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme. The operations of 510 may be performed according to the methods described herein. In some examples, aspects of the operations of 1510 may be performed by a decoder as described with reference to FIGs. 2 through 7.
At 1515, the wireless device may generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The operations of 1515 may be performed according to the methods described herein. In some examples, aspects of the operations of 1515 may be performed by a decoder as described with reference to FIGs. 2 through 7.
At 1520, the wireless device may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. The operations of 1520 may be performed according to the methods described herein. In some  examples, aspects of the operations of 1520 may be performed by a decoder as described with reference to FIGs. 2 through 7.
FIG. 16 shows a flowchart illustrating a method 1600 that supports enhanced RaptorQ codes in accordance with aspects of the present disclosure. The operations of method 1600 may be implemented by a wireless device or its components as described herein. For example, the operations of method 1600 may be performed by a coding manager as described with reference to FIGs. 2 through 7. In some examples, a wireless device may execute a set of instructions to control the functional elements of the wireless device to perform the functions described below. Additionally or alternatively, a wireless device may perform aspects of the functions described below using special-purpose hardware.
At 1605, the wireless device may receive a set of encoded symbols. The operations of 1605 may be performed according to the methods described herein. In some examples, aspects of the operations of 1605 may be performed by a receiver as described with reference to FIGs. 2 through 7.
At 1610, the wireless device may generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme. The operations of 1610 may be performed according to the methods described herein. In some examples, aspects of the operations of 1610 may be performed by a decoder as described with reference to FIGs. 2 through 7.
At 1615, the wireless device may generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, where the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer. The operations of 1615 may be performed according to the methods described herein. In some examples, aspects of the operations of 1615 may be performed by a decoder as described with reference to FIGs. 2 through 7.
At 1620, the wireless device may generate a set of source symbols based on at least the first set of intermediate symbols and the second set of intermediate symbols. The operations of 1620 may be performed according to the methods described herein. In some examples, aspects of the operations of 1620 may be performed by a decoder as described with reference to FIGs. 2 through 7.
At 1625, the wireless device may generate a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, where generating the first set of intermediate symbols is further based on the first set of classified intermediate symbols. The operations of 1625 may be performed according to the methods described herein. In some examples, aspects of the operations of 1625 may be performed by a decoder as described with reference to FIGs. 2 through 7.
At 1630, the wireless device may generate a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, where generating the second set of intermediate symbols is further based on the second set of classified intermediate symbols. The operations of 1630 may be performed according to the methods described herein. In some examples, aspects of the operations of 1630 may be performed by a decoder as described with reference to FIGs. 2 through 7.
It should be noted that the methods described herein describe possible implementations, and that the operations and the steps may be rearranged or otherwise modified and that other implementations are possible. Further, aspects from two or more of the methods may be combined.
Techniques described herein may be used for various wireless communications systems such as code division multiple access (CDMA) , time division multiple access (TDMA) , frequency division multiple access (FDMA) , orthogonal frequency division multiple access (OFDMA) , single carrier frequency division multiple access (SC-FDMA) , and other systems. A CDMA system may implement a radio technology such as CDMA2000, Universal Terrestrial Radio Access (UTRA) , etc. CDMA2000 covers IS-2000, IS-95, and IS-856 standards. IS-2000 Releases may be commonly referred to as CDMA2000 1X, 1X, etc. IS-856 (TIA-856) is commonly referred to as CDMA2000 1xEV-DO, High Rate Packet Data (HRPD) , etc. UTRA includes Wideband CDMA (WCDMA) and other variants of CDMA. A TDMA system may implement a radio technology such as Global System for Mobile Communications (GSM) .
An OFDMA system may implement a radio technology such as Ultra Mobile Broadband (UMB) , Evolved UTRA (E-UTRA) , Institute of Electrical and Electronics Engineers (IEEE) 802.11 (Wi-Fi) , IEEE 802.16 (WiMAX) , IEEE 802.20, Flash-OFDM, etc. UTRA and E-UTRA are part of Universal Mobile Telecommunications System (UMTS) .  LTE, LTE-A, and LTE-A Pro are releases of UMTS that use E-UTRA. UTRA, E-UTRA, UMTS, LTE, LTE-A, LTE-A Pro, NR, and GSM are described in documents from the organization named “3rd Generation Partnership Project” (3GPP) . CDMA2000 and UMB are described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2) . The techniques described herein may be used for the systems and radio technologies mentioned herein as well as other systems and radio technologies. While aspects of an LTE, LTE-A, LTE-A Pro, or NR system may be described for purposes of example, and LTE, LTE-A, LTE-A Pro, or NR terminology may be used in much of the description, the techniques described herein are applicable beyond LTE, LTE-A, LTE-A Pro, or NR applications.
A macro cell generally covers a relatively large geographic area (e.g., several kilometers in radius) and may allow unrestricted access by UEs with service subscriptions with the network provider. A small cell may be associated with a lower-powered base station, as compared with a macro cell, and a small cell may operate in the same or different (e.g., licensed, unlicensed, etc. ) frequency bands as macro cells. Small cells may include pico cells, femto cells, and micro cells according to various examples. A pico cell, for example, may cover a small geographic area and may allow unrestricted access by UEs with service subscriptions with the network provider. A femto cell may also cover a small geographic area (e.g., a home) and may provide restricted access by UEs having an association with the femto cell (e.g., UEs in a closed subscriber group (CSG) , UEs for users in the home, and the like) . An eNB for a macro cell may be referred to as a macro eNB. An eNB for a small cell may be referred to as a small cell eNB, a pico eNB, a femto eNB, or a home eNB. An eNB may support one or multiple (e.g., two, three, four, and the like) cells, and may also support communications using one or multiple component carriers.
The wireless communications systems described herein may support synchronous or asynchronous operation. For synchronous operation, the base stations may have similar frame timing, and transmissions from different base stations may be approximately aligned in time. For asynchronous operation, the base stations may have different frame timing, and transmissions from different base stations may not be aligned in time. The techniques described herein may be used for either synchronous or asynchronous operations.
Information and signals described herein may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
The various illustrative blocks and modules described in connection with the disclosure herein may be implemented or performed with a general-purpose processor, a DSP, an ASIC, an FPGA, or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices (e.g., a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration) .
The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Other examples and implementations are within the scope of the disclosure and appended claims. For example, due to the nature of software, functions described herein can be implemented using software executed by a processor, hardware, firmware, hardwiring, or combinations of any of these. Features implementing functions may also be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations.
Computer-readable media includes both non-transitory computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A non-transitory storage medium may be any available medium that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, non-transitory computer-readable media may include RAM, ROM, electrically erasable programmable ROM (EEPROM) , flash memory, compact disk (CD) ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other non-transitory medium that can be used to carry or store desired  program code means in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL) , or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, include CD, laser disc, optical disc, digital versatile disc (DVD) , floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above are also included within the scope of computer-readable media.
As used herein, including in the claims, “or” as used in a list of items (e.g., a list of items prefaced by a phrase such as “at least one of” or “one or more of” ) indicates an inclusive list such that, for example, a list of at least one of A, B, or C means A or B or C or AB or AC or BC or ABC (i.e., A and B and C) . Also, as used herein, the phrase “based on” shall not be construed as a reference to a closed set of conditions. For example, an exemplary step that is described as “based on condition A” may be based on both a condition A and a condition B without departing from the scope of the present disclosure. In other words, as used herein, the phrase “based on” shall be construed in the same manner as the phrase “based at least in part on. ”
In the appended figures, similar components or features may have the same reference label. Further, various components of the same type may be distinguished by following the reference label by a dash and a second label that distinguishes among the similar components. If just the first reference label is used in the specification, the description is applicable to any one of the similar components having the same first reference label irrespective of the second reference label, or other subsequent reference label.
The description set forth herein, in connection with the appended drawings, describes example configurations and does not represent all the examples that may be implemented or that are within the scope of the claims. The term “exemplary” used herein means “serving as an example, instance, or illustration, ” and not “preferred” or “advantageous over other examples. ” The detailed description includes specific details for the  purpose of providing an understanding of the described techniques. These techniques, however, may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form in order to avoid obscuring the concepts of the described examples.
The description herein is provided to enable a person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the scope of the disclosure. Thus, the disclosure is not limited to the examples and designs described herein, but is to be accorded the broadest scope consistent with the principles and novel features disclosed herein.

Claims (80)

  1. A method for wireless communication, comprising:
    determining a set of source symbols for a wireless transmission;
    generating a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme;
    generating a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, wherein the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer;
    generating a set of encoded symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols; and
    transmitting the set of encoded symbols.
  2. The method of claim 1, further comprising:
    generating a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols; and
    generating a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, wherein generating the set of encoded symbols is further based at least in part on the first set of classified intermediate symbols and the second set of classified intermediate symbols.
  3. The method of claim 2, wherein a size of the third subset of the set of source symbols plus a size of the fourth subset of the set of source symbols equals a size of the set of source symbols.
  4. The method of claim 1, wherein the second coding scheme is a Reed-Solomon coding scheme.
  5. The method of claim 1, wherein the second coding scheme is a cyclic error correcting code.
  6. The method of claim 1, wherein the second coding scheme is a Bose–Chaudhuri–Hocquenghem (BCH) code.
  7. The method of claim 1, wherein the second coding scheme uses a Galois Field having a size other than a power of 2.
  8. The method of claim 1, wherein the second coding scheme uses a Galois Field having a size greater than 2 and not equal to 256.
  9. The method of claim 1, wherein generating the first set of intermediate symbols from the first subset of the set of source symbols further comprises:
    generating a portion of the first set of intermediate symbols based at least in part on a subset of the second set of intermediate symbols.
  10. The method of claim 1, further comprising:
    concatenating the first set of intermediate symbols and the second set of intermediate symbols, wherein generating the set of encoded symbols is further based at least in part on the concatenation.
  11. The method of claim 1, wherein the first coding scheme is a low-density parity check (LDPC) coding scheme.
  12. A method for wireless communication, comprising:
    receiving a set of encoded symbols;
    generating a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme;
    generating a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, wherein the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer; and
    generating a set of source symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols.
  13. The method of claim 12, further comprising:
    generating a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, wherein generating the first set of intermediate symbols is further based at least in part on the first set of classified intermediate symbols; and
    generating a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, wherein generating the second set of intermediate symbols is further based at least in part on the second set of classified intermediate symbols.
  14. The method of claim 12, wherein the second coding scheme is a Reed-Solomon coding scheme.
  15. The method of claim 12, wherein the second coding scheme is a cyclic error correcting code.
  16. The method of claim 12, wherein the second coding scheme is a Bose–Chaudhuri–Hocquenghem (BCH) code.
  17. The method of claim 12, wherein the second coding scheme uses a Galois Field having a size other than a power of 2.
  18. The method of claim 12, wherein the second coding scheme uses a Galois Field having a size greater than 2 and not equal to 256.
  19. The method of claim 12, further comprising:
    concatenating the first set of intermediate symbols and the second set of intermediate symbols, wherein generating the set of source symbols is further based at least in part on the concatenation.
  20. The method of claim 12, wherein the first coding scheme is a low-density parity check (LDPC) coding scheme.
  21. An apparatus for wireless communication, comprising:
    a processor,
    memory coupled with the processor; and
    instructions stored in the memory and executable by the processor to cause the apparatus to:
    determine a set of source symbols for a wireless transmission;
    generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme;
    generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, wherein the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer;
    generate a set of encoded symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols; and
    transmit the set of encoded symbols.
  22. The apparatus of claim 21, wherein the instructions are further executable by the processor to cause the apparatus to:
    generate a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols; and
    generate a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, wherein generating the set of encoded symbols is further based at least in part on the first set of classified intermediate symbols and the second set of classified intermediate symbols.
  23. The apparatus of claim 22, wherein a size of the third subset of the set of source symbols plus a size of the fourth subset of the set of source symbols equals a size of the set of source symbols.
  24. The apparatus of claim 21, wherein the second coding scheme is a Reed-Solomon coding scheme.
  25. The apparatus of claim 21, wherein the second coding scheme is a cyclic error correcting code.
  26. The apparatus of claim 21, wherein the second coding scheme is a Bose–Chaudhuri–Hocquenghem (BCH) code.
  27. The apparatus of claim 21, wherein the second coding scheme uses a Galois Field having a size other than a power of 2.
  28. The apparatus of claim 21, wherein the second coding scheme uses a Galois Field having a size greater than 2 and not equal to 256.
  29. The apparatus of claim 21, wherein the instructions to generate the first set of intermediate symbols from the first subset of the set of source symbols further are executable by the processor to cause the apparatus to:
    generate a portion of the first set of intermediate symbols based at least in part on a subset of the second set of intermediate symbols.
  30. The apparatus of claim 21, wherein the instructions are further executable by the processor to cause the apparatus to:
    concatenate the first set of intermediate symbols and the second set of intermediate symbols, wherein generating the set of encoded symbols is further based at least in part on the concatenation.
  31. The apparatus of claim 21, wherein the first coding scheme is a low-density parity check (LDPC) coding scheme.
  32. An apparatus for wireless communication, comprising:
    a processor,
    memory coupled with the processor; and
    instructions stored in the memory and executable by the processor to cause the apparatus to:
    receive a set of encoded symbols;
    generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme;
    generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, wherein the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer; and
    generate a set of source symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols.
  33. The apparatus of claim 32, wherein the instructions are further executable by the processor to cause the apparatus to:
    generate a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, wherein generating the first set of intermediate symbols is further based at least in part on the first set of classified intermediate symbols; and
    generate a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, wherein generating the second set of intermediate symbols is further based at least in part on the second set of classified intermediate symbols.
  34. The apparatus of claim 32, wherein the second coding scheme is a Reed-Solomon coding scheme.
  35. The apparatus of claim 32, wherein the second coding scheme is a cyclic error correcting code.
  36. The apparatus of claim 32, wherein the second coding scheme is a Bose–Chaudhuri–Hocquenghem (BCH) code.
  37. The apparatus of claim 32, wherein the second coding scheme uses a Galois Field having a size other than a power of 2.
  38. The apparatus of claim 32, wherein the second coding scheme uses a Galois Field having a size greater than 2 and not equal to 256.
  39. The apparatus of claim 32, wherein the instructions are further executable by the processor to cause the apparatus to:
    concatenate the first set of intermediate symbols and the second set of intermediate symbols, wherein generating the set of source symbols is further based at least in part on the concatenation.
  40. The apparatus of claim 32, wherein the first coding scheme is a low-density parity check (LDPC) coding scheme.
  41. An apparatus for wireless communication, comprising:
    means for determining a set of source symbols for a wireless transmission;
    means for generating a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme;
    means for generating a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, wherein the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer;
    means for generating a set of encoded symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols; and
    means for transmitting the set of encoded symbols.
  42. The apparatus of claim 41, further comprising:
    means for generating a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols; and
    means for generating a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, wherein generating the set of encoded symbols is further based at least in part on the first set of classified intermediate symbols and the second set of classified intermediate symbols.
  43. The apparatus of claim 42, wherein a size of the third subset of the set of source symbols plus a size of the fourth subset of the set of source symbols equals a size of the set of source symbols.
  44. The apparatus of claim 41, wherein the second coding scheme is a Reed-Solomon coding scheme.
  45. The apparatus of claim 41, wherein the second coding scheme is a cyclic error correcting code.
  46. The apparatus of claim 41, wherein the second coding scheme is a Bose–Chaudhuri–Hocquenghem (BCH) code.
  47. The apparatus of claim 41, wherein the second coding scheme uses a Galois Field having a size other than a power of 2.
  48. The apparatus of claim 41, wherein the second coding scheme uses a Galois Field having a size greater than 2 and not equal to 256.
  49. The apparatus of claim 41, wherein the means for generating the first set of intermediate symbols from the first subset of the set of source symbols further comprises:
    means for generating a portion of the first set of intermediate symbols based at least in part on a subset of the second set of intermediate symbols.
  50. The apparatus of claim 41, further comprising:
    means for concatenating the first set of intermediate symbols and the second set of intermediate symbols, wherein generating the set of encoded symbols is further based at least in part on the concatenation.
  51. The apparatus of claim 41, wherein the first coding scheme is a low-density parity check (LDPC) coding scheme.
  52. An apparatus for wireless communication, comprising:
    means for receiving a set of encoded symbols;
    means for generating a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme;
    means for generating a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, wherein the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer; and
    means for generating a set of source symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols.
  53. The apparatus of claim 52, further comprising:
    means for generating a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, wherein generating the first set of intermediate symbols is further based at least in part on the first set of classified intermediate symbols; and
    means for generating a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, wherein generating the second set of  intermediate symbols is further based at least in part on the second set of classified intermediate symbols.
  54. The apparatus of claim 52, wherein the second coding scheme is a Reed-Solomon coding scheme.
  55. The apparatus of claim 52, wherein the second coding scheme is a cyclic error correcting code.
  56. The apparatus of claim 52, wherein the second coding scheme is a Bose–Chaudhuri–Hocquenghem (BCH) code.
  57. The apparatus of claim 52, wherein the second coding scheme uses a Galois Field having a size other than a power of 2.
  58. The apparatus of claim 52, wherein the second coding scheme uses a Galois Field having a size greater than 2 and not equal to 256.
  59. The apparatus of claim 52, further comprising:
    means for concatenating the first set of intermediate symbols and the second set of intermediate symbols, wherein generating the set of source symbols is further based at least in part on the concatenation.
  60. The apparatus of claim 52, wherein the first coding scheme is a low-density parity check (LDPC) coding scheme.
  61. A non-transitory computer-readable medium storing code for wireless communication, the code comprising instructions executable by a processor to:
    determine a set of source symbols for a wireless transmission;
    generate a first set of intermediate symbols from a first subset of the set of source symbols using at least a first coding scheme;
    generate a second set of intermediate symbols from a second subset of the set of source symbols using a second coding scheme, wherein the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer;
    generate a set of encoded symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols; and
    transmit the set of encoded symbols.
  62. The non-transitory computer-readable medium of claim 61, wherein the instructions are further executable to:
    generate a first set of classified intermediate symbols from at least a subset of the first set of intermediate symbols and at least a third subset of the set of source symbols; and
    generate a second set of classified intermediate symbols from at least a subset of the second set of intermediate symbols and at least a fourth subset of the set of source symbols, wherein generating the set of encoded symbols is further based at least in part on the first set of classified intermediate symbols and the second set of classified intermediate symbols.
  63. The non-transitory computer-readable medium of claim 62, wherein a size of the third subset of the set of source symbols plus a size of the fourth subset of the set of source symbols equals a size of the set of source symbols.
  64. The non-transitory computer-readable medium of claim 61, wherein the second coding scheme is a Reed-Solomon coding scheme.
  65. The non-transitory computer-readable medium of claim 61, wherein the second coding scheme is a cyclic error correcting code.
  66. The non-transitory computer-readable medium of claim 61, wherein the second coding scheme is a Bose–Chaudhuri–Hocquenghem (BCH) code.
  67. The non-transitory computer-readable medium of claim 61, wherein the second coding scheme uses a Galois Field having a size other than a power of 2.
  68. The non-transitory computer-readable medium of claim 61, wherein the second coding scheme uses a Galois Field having a size greater than 2 and not equal to 256.
  69. The non-transitory computer-readable medium of claim 61, wherein the instructions to generate the first set of intermediate symbols from the first subset of the set of source symbols further are executable to:
    generate a portion of the first set of intermediate symbols based at least in part on a subset of the second set of intermediate symbols.
  70. The non-transitory computer-readable medium of claim 61, wherein the instructions are further executable to:
    concatenate the first set of intermediate symbols and the second set of intermediate symbols, wherein generating the set of encoded symbols is further based at least in part on the concatenation.
  71. The non-transitory computer-readable medium of claim 61, wherein the first coding scheme is a low-density parity check (LDPC) coding scheme.
  72. A non-transitory computer-readable medium storing code for wireless communication, the code comprising instructions executable by a processor to:
    receive a set of encoded symbols;
    generate a first set of intermediate symbols from a first subset of the set of encoded symbols using at least a first coding scheme;
    generate a second set of intermediate symbols from a second subset of the set of encoded symbols using a second coding scheme, wherein the second coding scheme has a configurable Galois Field size corresponding to an arbitrary integer; and
    generate a set of source symbols based at least in part on at least the first set of intermediate symbols and the second set of intermediate symbols.
  73. The non-transitory computer-readable medium of claim 72, wherein the instructions are further executable to:
    generate a first set of classified intermediate symbols from at least a third subset of the set of encoded symbols, wherein generating the first set of intermediate symbols is further based at least in part on the first set of classified intermediate symbols; and
    generate a second set of classified intermediate symbols from at least a fourth subset of the set of encoded symbols, wherein generating the second set of intermediate symbols is further based at least in part on the second set of classified intermediate symbols.
  74. The non-transitory computer-readable medium of claim 72, wherein the second coding scheme is a Reed-Solomon coding scheme.
  75. The non-transitory computer-readable medium of claim 72, wherein the second coding scheme is a cyclic error correcting code.
  76. The non-transitory computer-readable medium of claim 72, wherein the second coding scheme is a Bose–Chaudhuri–Hocquenghem (BCH) code.
  77. The non-transitory computer-readable medium of claim 72, wherein the second coding scheme uses a Galois Field having a size other than a power of 2.
  78. The non-transitory computer-readable medium of claim 72, wherein the second coding scheme uses a Galois Field having a size greater than 2 and not equal to 256.
  79. The non-transitory computer-readable medium of claim 72, wherein the instructions are further executable to:
    concatenate the first set of intermediate symbols and the second set of intermediate symbols, wherein generating the set of source symbols is further based at least in part on the concatenation.
  80. The non-transitory computer-readable medium of claim 72, wherein the first coding scheme is a low-density parity check (LDPC) coding scheme.
PCT/CN2020/075827 2020-02-19 2020-02-19 Enhanced raptorq codes WO2021163916A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/075827 WO2021163916A1 (en) 2020-02-19 2020-02-19 Enhanced raptorq codes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/075827 WO2021163916A1 (en) 2020-02-19 2020-02-19 Enhanced raptorq codes

Publications (1)

Publication Number Publication Date
WO2021163916A1 true WO2021163916A1 (en) 2021-08-26

Family

ID=77390369

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/075827 WO2021163916A1 (en) 2020-02-19 2020-02-19 Enhanced raptorq codes

Country Status (1)

Country Link
WO (1) WO2021163916A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015197413A1 (en) * 2014-06-27 2015-12-30 Norwegian University Of Science And Technology Coding in galois fields with reduced complexity
CN108259128A (en) * 2017-12-26 2018-07-06 同济大学 A kind of building method of the system Raptor codes based on nonrandom generator matrix
EP3499756A1 (en) * 2016-10-12 2019-06-19 Guangdong OPPO Mobile Telecommunications Corp., Ltd. Method for transmitting data, receiving-end device, and transmitting-end device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015197413A1 (en) * 2014-06-27 2015-12-30 Norwegian University Of Science And Technology Coding in galois fields with reduced complexity
EP3499756A1 (en) * 2016-10-12 2019-06-19 Guangdong OPPO Mobile Telecommunications Corp., Ltd. Method for transmitting data, receiving-end device, and transmitting-end device
CN108259128A (en) * 2017-12-26 2018-07-06 同济大学 A kind of building method of the system Raptor codes based on nonrandom generator matrix

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
EXPWAY: "Comparison of EFEC proposals", 3GPP DRAFT; S4-121443, vol. SA WG4, 6 November 2012 (2012-11-06), Bratislava, pages 1 - 7, XP050687212 *

Similar Documents

Publication Publication Date Title
US10972217B2 (en) Scheduling for low-density parity-check codes
JP2020520141A (en) Polar code for uplink control information
CN113169814B (en) Equivalent puncturing set for polar coded retransmission
CN112262535B (en) Method and apparatus for polarity code construction for incremental redundancy
EP3753112B1 (en) Self-decodable redundancy versions for polar codes
US11152953B2 (en) Error detection for a wireless channel
WO2019191944A1 (en) Polar coded harq scheme over time-varying channel
TW202007105A (en) Resolving decodability for subsequent transmissions whose throughput exceeds a threshold
WO2021223236A1 (en) Unequal erasure protection for prioritized data transmission
WO2021159440A1 (en) Techniques for determining a degree distribution in a multi-hop network
WO2022041187A1 (en) Degree selection schemes for rapid tornado (raptor) codes in multicast and broadcast services and in unicast services
US11419109B2 (en) Latency minimization for retransmissions in communications systems with multi-level coding and multi-level sequential demodulation and decoding and code block grouping per decoding level
US11909470B2 (en) Joint broadcast and unicast design for multiple-input multiple-output systems
WO2021223047A1 (en) Feedback scheme for systematic raptor codes
WO2021163916A1 (en) Enhanced raptorq codes
WO2022056862A1 (en) Rateless coding with layered modulation
WO2021179244A1 (en) Fountain-code-based broadcast channel with limited feedback
WO2021179151A1 (en) Encoding scheme selection for wireless transmissions
WO2022027314A1 (en) Two-dimensional coding scheme in relay-assisted network
US20220303047A1 (en) Network coding to mitigate blockage with spatial division multiplexing beams
WO2022261845A1 (en) Variable-to-fixed distribution matching for probabilistic constellation shaping in wireless communications
WO2022261847A1 (en) Distribution matching for probabilistic constellation shaping in wireless communications
US20240022350A1 (en) Multiple incremental redundancy scheme using linear rateless codes
WO2022006850A1 (en) Transmitting encoding symbol identifier of raptor codes using control channel coding
WO2022056807A1 (en) Rateless coding over a packet data convergence protocol layer

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20919553

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20919553

Country of ref document: EP

Kind code of ref document: A1