Nested convolutional codes design
Nested polynomial sets in convolutional codes address the complexity-performance tradeoff, enabling efficient forward error correction in A-IoT devices by allowing different coding rates and reducing power consumption.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-10-03
- Publication Date
- 2026-04-09
AI Technical Summary
Existing convolutional code designs for wireless communications face a tradeoff between complexity and performance, making it difficult to implement efficient encoders in low-power, low-complexity devices like ambient Internet-of-Things (A-IoT) devices with limited resources.
The use of nested polynomial sets in convolutional code designs allows for different coding rates, enabling encoders with fixed constraint lengths that can be implemented in A-IoT devices with low complexity while maintaining acceptable performance.
This approach enables efficient forward error correction in A-IoT devices by balancing complexity and performance, facilitating reliable communications with minimal power consumption.
Smart Images

Figure CN2024123198_09042026_PF_FP_ABST
Abstract
Description
NESTED CONVOLUTIONAL CODES DESIGN
[0001] Field of the Disclosure
[0002] Aspects of the present disclosure relate to wireless communications, and more particularly, to techniques for convolutional code designs that utilize nested polynomial sets to achieve different coding rates.
[0003] Description of Related Art
[0004] Wireless communications systems are widely deployed to provide various telecommunication services such as telephony, video, data, messaging, broadcasts, or other similar types of services. These wireless communications systems may employ multiple-access technologies capable of supporting communications with multiple users by sharing available wireless communications system resources with those users.
[0005] Although wireless communications systems have made great technological advancements over many years, challenges still exist. For example, complex and dynamic environments can still attenuate or block signals between wireless transmitters and wireless receivers. Accordingly, there is a continuous desire to improve the technical performance of wireless communications systems, including, for example: improving speed and data carrying capacity of communications, improving efficiency of the use of shared communications mediums, reducing power used by transmitters and receivers while performing communications, improving reliability of wireless communications, avoiding redundant transmissions and / or receptions and related processing, improving the coverage area of wireless communications, increasing the number and types of devices that can access wireless communications systems, increasing the ability for different types of devices to intercommunicate, increasing the number and type of wireless communications mediums available for use, and the like. Consequently, there exists a need for further improvements in wireless communications systems to overcome the aforementioned technical challenges and others.SUMMARY
[0006] One aspect provides a method for wireless communications at a wireless node. The method includes selecting a polynomial set from a list of polynomial sets; encoding information bits using a convolutional encoder associated with a first k polynomials of the selected polynomial set, wherein different values of k polynomials are associated with different coding rates; and transmitting the encoded information bits over a wireless channel.
[0007] Other aspects provide: an apparatus operable, configured, or otherwise adapted to perform any one or more of the aforementioned methods and / or those described elsewhere herein; a non-transitory, computer-readable media comprising instructions that, when executed (e.g., directly, indirectly, after pre-processing, without pre-processing) by one or more processors of an apparatus, cause the apparatus to perform the aforementioned methods as well as those described elsewhere herein; a computer program product embodied on a computer-readable storage medium comprising code for performing the aforementioned methods as well as those described elsewhere herein; and / or an apparatus comprising means for performing the aforementioned methods as well as those described elsewhere herein. By way of example, an apparatus may comprise a processing system, a device with a processing system, or processing systems cooperating over one or more networks.
[0008] The following description and the appended figures set forth certain features for purposes of illustration.BRIEF DESCRIPTION OF DRAWINGS
[0009] The appended figures depict certain features of the various aspects described herein and are not to be considered limiting of the scope of this disclosure.
[0010] FIG. 1 depicts an example wireless communications network.
[0011] FIG. 2 depicts an example disaggregated base station architecture.
[0012] FIG. 3 depicts aspects of an example base station and an example user equipment.
[0013] FIGS. 4A, 4B, 4C, and 4D depict various example aspects of data structures for a wireless communications network.
[0014] FIG. 5 illustrates an example radio frequency identification (RFID) system.
[0015] FIG. 6 depicts an example reader and ambient internet of things (A-IoT) device.
[0016] FIG. 7 illustrates a convolutional encoder with an example set of polynomials.
[0017] FIG. 8 is a call flow diagram in accordance with aspects of the present disclosure.
[0018] FIG. 9 depicts an example flow for selecting nested polynomials, in accordance with aspects of the present disclosure.
[0019] FIG. 10 depicts an example list of polynomial sets for a 1 / 2 code rate, in accordance with aspects of the present disclosure.
[0020] FIG. 11 depicts an example sequence for selecting nested polynomials, in accordance with aspects of the present disclosure.
[0021] FIG. 12 depicts an example list of nested polynomial sets, in accordance with aspects of the present disclosure.
[0022] FIG. 13 depicts example nested polynomial sets, in accordance with aspects of the present disclosure.
[0023] FIG. 14 depicts a method for wireless communications.
[0024] FIG. 15 depicts aspects of an example communications device.DETAILED DESCRIPTION
[0025] Aspects of the present disclosure relate to wireless communications, and more particularly, to techniques for convolutional code designs that utilize nested polynomial sets to achieve different coding rates. The nested polynomial sets may be used, for example, for device to reader (D2R) transmissions from an ambient Internet-of-Things (A-IoT) device to a reader device.
[0026] The rapid advancement of the Internet of Things (IoT) has led to the development of A-IoT systems, which use low-power, low-complexity devices to monitor and manage various environments. These devices, typically operating with minimal power in the range of microwatts (μW) , are essential for applications like efficient inventory management and command in large-scale deployments.
[0027] Despite their advantages, A-IoT devices face potential challenges. For example, one potential challenge is how to design an encoder that achieves acceptable performance with sufficiently low complexity that it may be implemented in an A-IoT device with limited power and processing resources.
[0028] CCs may be used for forward error correction (FEC) for a device to reader (D2R) link between an A-IoT device and a reader. However, designers of convolution code (CC) based encoders typically face a tradeoff between complexity and performance. A larger constraint length L, which generally represents the number of bits in an encoder memory that affect the generation of n output bits, typically results in better performance, but at the expense of greater complexity.
[0029] Aspects of the present disclosure provide a design for nested convolutional codes. The design has sufficiently low complexity that it may be implemented in an A-IoT system where even the reader is a UE with limited power and processing resources. The design utilizes nested polynomial sets, where different subsets of polynomials may be used for different coding rates. As will be described in greater detail below, the proposed design may be used in encoders with a fixed constraint length (e.g., 4) .
[0030] Introduction to Wireless Communications Networks
[0031] The techniques and methods described herein may be used for various wireless communications networks. While aspects may be described herein using terminology commonly associated with 3G, 4G, and / or 5G wireless technologies, aspects of the present disclosure may likewise be applicable to other communications systems and standards not explicitly mentioned herein.
[0032] FIG. 1 depicts an example of a wireless communications network 100, in which aspects described herein may be implemented.
[0033] Generally, wireless communications network 100 includes various network entities (alternatively, network elements or network nodes) . A network entity is generally a communications device and / or a communications function performed by a communications device (e.g., a user equipment (UE) , a base station (BS) , a component of a BS, a server, etc. ) . For example, various functions of a network as well as various devices associated with and interacting with a network may be considered network entities. Further, wireless communications network 100 includes terrestrial aspects, such as ground-based network entities (e.g., BSs 102) , and non-terrestrial aspects, such as satellite 140 and aircraft 145, which may include network entities on-board (e.g., one or more BSs) capable of communicating with other network elements (e.g., terrestrial BSs) and user equipments.
[0034] In the depicted example, wireless communications network 100 includes BSs 102, UEs 104, and one or more core networks, such as an Evolved Packet Core (EPC) 160 and 5G Core (5GC) network 190, which interoperate to provide communications services over various communications links, including wired and wireless links.
[0035] FIG. 1 depicts various example UEs 104, which may more generally include: a cellular phone, smart phone, session initiation protocol (SIP) phone, laptop, personal digital assistant (PDA) , satellite radio, global positioning system, multimedia device, video device, digital audio player, camera, game console, tablet, smart device, wearable device, vehicle, electric meter, gas pump, large or small kitchen appliance, healthcare device, implant, sensor / actuator, display, internet of things (IoT) devices, always on (AON) devices, edge processing devices, or other similar devices. UEs 104 may also be referred to more generally as a mobile device, a wireless device, a wireless communications device, a station, a mobile station, a subscriber station, a mobile subscriber station, a mobile unit, a subscriber unit, a wireless unit, a remote unit, a remote device, an access terminal, a mobile terminal, a wireless terminal, a remote terminal, a handset, and others.
[0036] BSs 102 wirelessly communicate with (e.g., transmit signals to or receive signals from) UEs 104 via communications links 120. The communications links 120 between BSs 102 and UEs 104 may include uplink (UL) (also referred to as reverse link) transmissions from a UE 104 to a BS 102 and / or downlink (DL) (also referred to as forward link) transmissions from a BS 102 to a UE 104. The communications links 120 may use multiple-input and multiple-output (MIMO) antenna technology, including spatial multiplexing, beamforming, and / or transmit diversity in various aspects.
[0037] BSs 102 may generally include: a NodeB, enhanced NodeB (eNB) , next generation enhanced NodeB (ng-eNB) , next generation NodeB (gNB or gNodeB) , access point, base transceiver station, radio base station, radio transceiver, transceiver function, transmission reception point, and / or others. Each of BSs 102 may provide communications coverage for a respective geographic coverage area 110, which may sometimes be referred to as a cell, and which may overlap in some cases (e.g., small cell 102’ may have a coverage area 110’ that overlaps the coverage area 110 of a macro cell) . A BS may, for example, provide communications coverage for a macro cell (covering relatively large geographic area) , a pico cell (covering relatively smaller geographic area, such as a sports stadium) , a femto cell (relatively smaller geographic area (e.g., a home) ) , and / or other types of cells.
[0038] While BSs 102 are depicted in various aspects as unitary communications devices, BSs 102 may be implemented in various configurations. For example, one or more components of a base station may be disaggregated, including a central unit (CU) , one or more distributed units (DUs) , one or more radio units (RUs) , a Near-Real Time (Near-RT) RAN Intelligent Controller (RIC) , or a Non-Real Time (Non-RT) RIC, to name a few examples. In another example, various aspects of a base station may be virtualized. More generally, a base station (e.g., BS 102) may include components that are located at a single physical location or components located at various physical locations. In examples in which a base station includes components that are located at various physical locations, the various components may each perform functions such that, collectively, the various components achieve functionality that is similar to a base station that is located at a single physical location. In some aspects, a base station including components that are located at various physical locations may be referred to as a disaggregated radio access network architecture, such as an Open RAN (O-RAN) or Virtualized RAN (VRAN) architecture. FIG. 2 depicts and describes an example disaggregated base station architecture.
[0039] Different BSs 102 within wireless communications network 100 may also be configured to support different radio access technologies, such as 3G, 4G, and / or 5G. For example, BSs 102 configured for 4G LTE (collectively referred to as Evolved Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access Network (E-UTRAN) ) may interface with the EPC 160 through first backhaul links 132 (e.g., an S1 interface) . BSs 102 configured for 5G (e.g., 5G NR or Next Generation RAN (NG-RAN) ) may interface with 5GC 190 through second backhaul links 184. BSs 102 may communicate directly or indirectly (e.g., through the EPC 160 or 5GC 190) with each other over third backhaul links 134 (e.g., X2 interface) , which may be wired or wireless.
[0040] Wireless communications network 100 may subdivide the electromagnetic spectrum into various classes, bands, channels, or other features. In some aspects, the subdivision is provided based on wavelength and frequency, where frequency may also be referred to as a carrier, a subcarrier, a frequency channel, a tone, or a subband. For example, 3GPP currently defines Frequency Range 1 (FR1) as including 410 MHz –7125 MHz, which is often referred to (interchangeably) as “Sub-6 GHz” . Similarly, 3GPP currently defines Frequency Range 2 (FR2) as including 24, 250 MHz –71, 000 MHz, which is sometimes referred to (interchangeably) as a “millimeter wave” ( “mmW” or “mmWave” ) . In some cases, FR2 may be further defined in terms of sub-ranges, such as a first sub-range FR2-1 including 24, 250 MHz –52, 600 MHz and a second sub-range FR2-2 including 52, 600 MHz –71, 000 MHz. A base station configured to communicate using mmWave / near mmWave radio frequency bands (e.g., a mmWave base station such as BS 180) may utilize beamforming (e.g., 182) with a UE (e.g., 104) to improve path loss and range.
[0041] The communications links 120 between BSs 102 and, for example, UEs 104, may be through one or more carriers, which may have different bandwidths (e.g., 5, 10, 15, 20, 100, 400, and / or other MHz) , and which may be aggregated in various aspects. Carriers may or may not be adjacent to each other. Allocation of carriers may be asymmetric with respect to DL and UL (e.g., more or fewer carriers may be allocated for DL than for UL) .
[0042] Communications using higher frequency bands may have higher path loss and a shorter range compared to lower frequency communications. Accordingly, certain base stations (e.g., 180 in FIG. 1) may utilize beamforming 182 with a UE 104 to improve path loss and range. For example, BS 180 and the UE 104 may each include a plurality of antennas, such as antenna elements, antenna panels, and / or antenna arrays to facilitate the beamforming. In some cases, BS 180 may transmit a beamformed signal to UE 104 in one or more transmit directions 182’. UE 104 may receive the beamformed signal from the BS 180 in one or more receive directions 182”. UE 104 may also transmit a beamformed signal to the BS 180 in one or more transmit directions 182”. BS 180 may also receive the beamformed signal from UE 104 in one or more receive directions 182’. BS 180 and UE 104 may then perform beam training to determine the best receive and transmit directions for each of BS 180 and UE 104. Notably, the transmit and receive directions for BS 180 may or may not be the same. Similarly, the transmit and receive directions for UE 104 may or may not be the same.
[0043] Wireless communications network 100 further includes a Wi-Fi AP 150 in communication with Wi-Fi stations (STAs) 152 via communications links 154 in, for example, a 2.4 GHz and / or 5 GHz unlicensed frequency spectrum.
[0044] Certain UEs 104 may communicate with each other using device-to-device (D2D) communications link 158. D2D communications link 158 may use one or more sidelink channels, such as a physical sidelink broadcast channel (PSBCH) , a physical sidelink discovery channel (PSDCH) , a physical sidelink shared channel (PSSCH) , a physical sidelink control channel (PSCCH) , and / or a physical sidelink feedback channel (PSFCH) .
[0045] EPC 160 may include various functional components, including: a Mobility Management Entity (MME) 162, other MMEs 164, a Serving Gateway 166, a Multimedia Broadcast Multicast Service (MBMS) Gateway 168, a Broadcast Multicast Service Center (BM-SC) 170, and / or a Packet Data Network (PDN) Gateway 172, such as in the depicted example. MME 162 may be in communication with a Home Subscriber Server (HSS) 174. MME 162 is the control node that processes the signaling between the UEs 104 and the EPC 160. Generally, MME 162 provides bearer and connection management.
[0046] Generally, user Internet protocol (IP) packets are transferred through Serving Gateway 166, which itself is connected to PDN Gateway 172. PDN Gateway 172 provides UE IP address allocation as well as other functions. PDN Gateway 172 and the BM-SC 170 are connected to IP Services 176, which may include, for example, the Internet, an intranet, an IP Multimedia Subsystem (IMS) , a Packet Switched (PS) streaming service, and / or other IP services.
[0047] BM-SC 170 may provide functions for MBMS user service provisioning and delivery. BM-SC 170 may serve as an entry point for content provider MBMS transmission, may be used to authorize and initiate MBMS Bearer Services within a public land mobile network (PLMN) , and / or may be used to schedule MBMS transmissions. MBMS Gateway 168 may be used to distribute MBMS traffic to the BSs 102 belonging to a Multicast Broadcast Single Frequency Network (MBSFN) area broadcasting a particular service, and / or may be responsible for session management (start / stop) and for collecting eMBMS related charging information.
[0048] 5GC 190 may include various functional components, including: an Access and Mobility Management Function (AMF) 192, other AMFs 193, a Session Management Function (SMF) 194, and a User Plane Function (UPF) 195. AMF 192 may be in communication with Unified Data Management (UDM) 196.
[0049] AMF 192 is a control node that processes signaling between UEs 104 and 5GC 190. AMF 192 provides, for example, quality of service (QoS) flow and session management.
[0050] Internet protocol (IP) packets are transferred through UPF 195, which is connected to the IP Services 197, and which provides UE IP address allocation as well as other functions for 5GC 190. IP Services 197 may include, for example, the Internet, an intranet, an IMS, a PS streaming service, and / or other IP services.
[0051] In various aspects, a network entity or network node can be implemented as an aggregated base station, as a disaggregated base station, a component of a base station, an integrated access and backhaul (IAB) node, a relay node, a sidelink node, to name a few examples.
[0052] FIG. 2 depicts an example disaggregated base station 200 architecture. The disaggregated base station 200 architecture may include one or more central units (CUs) 210 that can communicate directly with a core network 220 via a backhaul link, or indirectly with the core network 220 through one or more disaggregated base station units (such as a Near-Real Time (Near-RT) RAN Intelligent Controller (RIC) 225 via an E2 link, or a Non-Real Time (Non-RT) RIC 215 associated with a Service Management and Orchestration (SMO) Framework 205, or both) . A CU 210 may communicate with one or more distributed units (DUs) 230 via respective midhaul links, such as an F1 interface. The DUs 230 may communicate with one or more radio units (RUs) 240 via respective fronthaul links. The RUs 240 may communicate with respective UEs 104 via one or more radio frequency (RF) access links. In some implementations, the UE 104 may be simultaneously served by multiple RUs 240.
[0053] Each of the units, e.g., the CUs 210, the DUs 230, the RUs 240, as well as the Near-RT RICs 225, the Non-RT RICs 215 and the SMO Framework 205, may include one or more interfaces or be coupled to one or more interfaces configured to receive or transmit signals, data, or information (collectively, signals) via a wired or wireless transmission medium. Each of the units, or an associated processor or controller providing instructions to the communications interfaces of the units, can be configured to communicate with one or more of the other units via the transmission medium. For example, the units can include a wired interface configured to receive or transmit signals over a wired transmission medium to one or more of the other units. Additionally or alternatively, the units can include a wireless interface, which may include a receiver, a transmitter or transceiver (such as a radio frequency (RF) transceiver) , configured to receive or transmit signals, or both, over a wireless transmission medium to one or more of the other units.
[0054] In some aspects, the CU 210 may host one or more higher layer control functions. Such control functions can include radio resource control (RRC) , packet data convergence protocol (PDCP) , service data adaptation protocol (SDAP) , or the like. Each control function can be implemented with an interface configured to communicate signals with other control functions hosted by the CU 210. The CU 210 may be configured to handle user plane functionality (e.g., Central Unit –User Plane (CU-UP) ) , control plane functionality (e.g., Central Unit –Control Plane (CU-CP) ) , or a combination thereof. In some implementations, the CU 210 can be logically split into one or more CU-UP units and one or more CU-CP units. The CU-UP unit can communicate bidirectionally with the CU-CP unit via an interface, such as the E1 interface when implemented in an O-RAN configuration. The CU 210 can be implemented to communicate with the DU 230, as necessary, for network control and signaling.
[0055] The DU 230 may correspond to a logical unit that includes one or more base station functions to control the operation of one or more RUs 240. In some aspects, the DU 230 may host one or more of a radio link control (RLC) layer, a medium access control (MAC) layer, and one or more high physical (PHY) layers (such as modules for forward error correction (FEC) encoding and decoding, scrambling, modulation and demodulation, or the like) depending, at least in part, on a functional split, such as those defined by the 3rd Generation Partnership Project (3GPP) . In some aspects, the DU 230 may further host one or more low PHY layers. Each layer (or module) can be implemented with an interface configured to communicate signals with other layers (and modules) hosted by the DU 230, or with the control functions hosted by the CU 210.
[0056] Lower-layer functionality can be implemented by one or more RUs 240. In some deployments, an RU 240, controlled by a DU 230, may correspond to a logical node that hosts RF processing functions, or low-PHY layer functions (such as performing fast Fourier transform (FFT) , inverse FFT (iFFT) , digital beamforming, physical random access channel (PRACH) extraction and filtering, or the like) , or both, based at least in part on the functional split, such as a lower layer functional split. In such an architecture, the RU (s) 240 can be implemented to handle over the air (OTA) communications with one or more UEs 104. In some implementations, real-time and non-real-time aspects of control and user plane communications with the RU (s) 240 can be controlled by the corresponding DU 230. In some scenarios, this configuration can enable the DU (s) 230 and the CU 210 to be implemented in a cloud-based RAN architecture, such as a vRAN architecture.
[0057] The SMO Framework 205 may be configured to support RAN deployment and provisioning of non-virtualized and virtualized network elements. For non-virtualized network elements, the SMO Framework 205 may be configured to support the deployment of dedicated physical resources for RAN coverage requirements which may be managed via an operations and maintenance interface (such as an O1 interface) . For virtualized network elements, the SMO Framework 205 may be configured to interact with a cloud computing platform (such as an open cloud (O-Cloud) 290) to perform network element life cycle management (such as to instantiate virtualized network elements) via a cloud computing platform interface (such as an O2 interface) . Such virtualized network elements can include, but are not limited to, CUs 210, DUs 230, RUs 240 and Near-RT RICs 225. In some implementations, the SMO Framework 205 can communicate with a hardware aspect of a 4G RAN, such as an open eNB (O-eNB) 211, via an O1 interface. Additionally, in some implementations, the SMO Framework 205 can communicate directly with one or more RUs 240 via an O1 interface. The SMO Framework 205 also may include a Non-RT RIC 215 configured to support functionality of the SMO Framework 205.
[0058] The Non-RT RIC 215 may be configured to include a logical function that enables non-real-time control and optimization of RAN elements and resources, Artificial Intelligence / Machine Learning (AI / ML) workflows including model training and updates, or policy-based guidance of applications / features in the Near-RT RIC 225. The Non-RT RIC 215 may be coupled to or communicate with (such as via an A1 interface) the Near-RT RIC 225. The Near-RT RIC 225 may be configured to include a logical function that enables near-real-time control and optimization of RAN elements and resources via data collection and actions over an interface (such as via an E2 interface) connecting one or more CUs 210, one or more DUs 230, or both, as well as an O-eNB, with the Near-RT RIC 225.
[0059] In some implementations, to generate AI / ML models to be deployed in the Near-RT RIC 225, the Non-RT RIC 215 may receive parameters or external enrichment information from external servers. Such information may be utilized by the Near-RT RIC 225 and may be received at the SMO Framework 205 or the Non-RT RIC 215 from non-network data sources or from network functions. In some examples, the Non-RT RIC 215 or the Near-RT RIC 225 may be configured to tune RAN behavior or performance. For example, the Non-RT RIC 215 may monitor long-term trends and patterns for performance and employ AI / ML models to perform corrective actions through the SMO Framework 205 (such as reconfiguration via O1) or via creation of RAN management policies (such as A1 policies) .
[0060] FIG. 3 depicts aspects of an example BS 102 and a UE 104.
[0061] Generally, BS 102 includes various processors (e.g., 320, 330, 338, and 340) , antennas 334a-t (collectively 334) , transceivers 332a-t (collectively 332) , which include modulators and demodulators, and other aspects, which enable wireless transmission of data (e.g., data source 312) and wireless reception of data (e.g., data sink 339) . For example, BS 102 may send and receive data between BS 102 and UE 104. BS 102 includes controller / processor 340, which may be configured to implement various functions described herein related to wireless communications.
[0062] Generally, UE 104 includes various processors (e.g., 358, 364, 366, and 380) , antennas 352a-r (collectively 352) , transceivers 354a-r (collectively 354) , which include modulators and demodulators, and other aspects, which enable wireless transmission of data (e.g., retrieved from data source 362) and wireless reception of data (e.g., provided to data sink 360) . UE 104 includes controller / processor 380, which may be configured to implement various functions described herein related to wireless communications.
[0063] In regards to an example downlink transmission, BS 102 includes a transmit processor 320 that may receive data from a data source 312 and control information from a controller / processor 340. The control information may be for the physical broadcast channel (PBCH) , physical control format indicator channel (PCFICH) , physical HARQ indicator channel (PHICH) , physical downlink control channel (PDCCH) , group common PDCCH (GC PDCCH) , and / or others. The data may be for the physical downlink shared channel (PDSCH) , in some examples.
[0064] Transmit processor 320 may process (e.g., encode and symbol map) the data and control information to obtain data symbols and control symbols, respectively. Transmit processor 320 may also generate reference symbols, such as for the primary synchronization signal (PSS) , secondary synchronization signal (SSS) , PBCH demodulation reference signal (DMRS) , and channel state information reference signal (CSI-RS) .
[0065] Transmit (TX) multiple-input multiple-output (MIMO) processor 330 may perform spatial processing (e.g., precoding) on the data symbols, the control symbols, and / or the reference symbols, if applicable, and may provide output symbol streams to the modulators (MODs) in transceivers 332a-332t. Each modulator in transceivers 332a-332t may process a respective output symbol stream to obtain an output sample stream. Each modulator may further process (e.g., convert to analog, amplify, filter, and upconvert) the output sample stream to obtain a downlink signal. Downlink signals from the modulators in transceivers 332a-332t may be transmitted via the antennas 334a-334t, respectively.
[0066] In order to receive the downlink transmission, UE 104 includes antennas 352a-352r that may receive the downlink signals from the BS 102 and may provide received signals to the demodulators (DEMODs) in transceivers 354a-354r, respectively. Each demodulator in transceivers 354a-354r may condition (e.g., filter, amplify, downconvert, and digitize) a respective received signal to obtain input samples. Each demodulator may further process the input samples to obtain received symbols.
[0067] MIMO detector 356 may obtain received symbols from all the demodulators in transceivers 354a-354r, perform MIMO detection on the received symbols if applicable, and provide detected symbols. Receive processor 358 may process (e.g., demodulate, deinterleave, and decode) the detected symbols, provide decoded data for the UE 104 to a data sink 360, and provide decoded control information to a controller / processor 380.
[0068] In regards to an example uplink transmission, UE 104 further includes a transmit processor 364 that may receive and process data (e.g., for the PUSCH) from a data source 362 and control information (e.g., for the physical uplink control channel (PUCCH) ) from the controller / processor 380. Transmit processor 364 may also generate reference symbols for a reference signal (e.g., for the sounding reference signal (SRS) ) . The symbols from the transmit processor 364 may be precoded by a TX MIMO processor 366 if applicable, further processed by the modulators in transceivers 354a-354r (e.g., for SC-FDM) , and transmitted to BS 102.
[0069] At BS 102, the uplink signals from UE 104 may be received by antennas 334a-t, processed by the demodulators in transceivers 332a-332t, detected by a MIMO detector 336 if applicable, and further processed by a receive processor 338 to obtain decoded data and control information sent by UE 104. Receive processor 338 may provide the decoded data to a data sink 339 and the decoded control information to the controller / processor 340.
[0070] Memories 342 and 382 may store data and program codes for BS 102 and UE 104, respectively.
[0071] Scheduler 344 may schedule UEs for data transmission on the downlink and / or uplink.
[0072] In various aspects, BS 102 may be described as transmitting and receiving various types of data associated with the methods described herein. In these contexts, “transmitting” may refer to various mechanisms of outputting data, such as outputting data from data source 312, scheduler 344, memory 342, transmit processor 320, controller / processor 340, TX MIMO processor 330, transceivers 332a-t, antenna 334a-t, and / or other aspects described herein. Similarly, “receiving” may refer to various mechanisms of obtaining data, such as obtaining data from antennas 334a-t, transceivers 332a-t, RX MIMO detector 336, controller / processor 340, receive processor 338, scheduler 344, memory 342, and / or other aspects described herein.
[0073] In various aspects, UE 104 may likewise be described as transmitting and receiving various types of data associated with the methods described herein. In these contexts, “transmitting” may refer to various mechanisms of outputting data, such as outputting data from data source 362, memory 382, transmit processor 364, controller / processor 380, TX MIMO processor 366, transceivers 354a-t, antenna 352a-t, and / or other aspects described herein. Similarly, “receiving” may refer to various mechanisms of obtaining data, such as obtaining data from antennas 352a-t, transceivers 354a-t, RX MIMO detector 356, controller / processor 380, receive processor 358, memory 382, and / or other aspects described herein.
[0074] In some aspects, one or more processors may be configured to perform various operations, such as those associated with the methods described herein, and transmit (output) to or receive (obtain) data from another interface that is configured to transmit or receive, respectively, the data.
[0075] FIGS. 4A, 4B, 4C, and 4D depict aspects of data structures for a wireless communications network, such as wireless communications network 100 of FIG. 1.
[0076] In particular, FIG. 4A is a diagram 400 illustrating an example of a first subframe within a 5G (e.g., 5G NR) frame structure, FIG. 4B is a diagram 430 illustrating an example of DL channels within a 5G subframe, FIG. 4C is a diagram 450 illustrating an example of a second subframe within a 5G frame structure, and FIG. 4D is a diagram 480 illustrating an example of UL channels within a 5G subframe.
[0077] Wireless communications systems may utilize orthogonal frequency division multiplexing (OFDM) with a cyclic prefix (CP) on the uplink and downlink. Such systems may also support half-duplex operation using time division duplexing (TDD) . OFDM and single-carrier frequency division multiplexing (SC-FDM) partition the system bandwidth (e.g., as depicted in FIGS. 4B and 4D) into multiple orthogonal subcarriers. Each subcarrier may be modulated with data. Modulation symbols may be sent in the frequency domain with OFDM and / or in the time domain with SC-FDM.
[0078] A wireless communications frame structure may be frequency division duplex (FDD) , in which, for a particular set of subcarriers, subframes within the set of subcarriers are dedicated for either DL or UL. Wireless communications frame structures may also be time division duplex (TDD) , in which, for a particular set of subcarriers, subframes within the set of subcarriers are dedicated for both DL and UL.
[0079] In FIG. 4A and 4C, the wireless communications frame structure is TDD where D is DL, U is UL, and X is flexible for use between DL / UL. UEs may be configured with a slot format through a received slot format indicator (SFI) (dynamically through DL control information (DCI) , or semi-statically / statically through radio resource control (RRC) signaling) . In the depicted examples, a 10 ms frame is divided into 10 equally sized 1 ms subframes. Each subframe may include one or more time slots. In some examples, each slot may include 7 or 14 symbols, depending on the slot format. Subframes may also include mini-slots, which generally have fewer symbols than an entire slot. Other wireless communications technologies may have a different frame structure and / or different channels.
[0080] In certain aspects, the number of slots within a subframe is based on a slot configuration and a numerology. For example, for slot configuration 0, different numerologies (μ) 0 to 6 allow for 1, 2, 4, 8, 16, 32, and 64 slots, respectively, per subframe. For slot configuration 1, different numerologies 0 to 2 allow for 2, 4, and 8 slots, respectively, per subframe. Accordingly, for slot configuration 0 and numerology μ, there are 14 symbols / slot and 2μ slots / subframe. The subcarrier spacing and symbol length / duration are a function of the numerology. The subcarrier spacing may be equal to 2μ×15 kHz, where μ is the numerology 0 to 6. As such, the numerology μ=0 has a subcarrier spacing of 15 kHz and the numerology μ=6 has a subcarrier spacing of 960 kHz. The symbol length / duration is inversely related to the subcarrier spacing. FIGS. 4A, 4B, 4C, and 4D provide an example of slot configuration 0 with 14 symbols per slot and numerology μ=2 with 4 slots per subframe. The slot duration is 0.25 ms, the subcarrier spacing is 60 kHz, and the symbol duration is approximately 16.67 μs.
[0081] As depicted in FIGS. 4A, 4B, 4C, and 4D, a resource grid may be used to represent the frame structure. Each time slot includes a resource block (RB) (also referred to as physical RBs (PRBs) ) that extends, for example, 12 consecutive subcarriers. The resource grid is divided into multiple resource elements (REs) . The number of bits carried by each RE depends on the modulation scheme.
[0082] As illustrated in FIG. 4A, some of the REs carry reference (pilot) signals (RS) for a UE (e.g., UE 104 of FIGS. 1 and 3) . The RS may include demodulation RS (DMRS) and / or channel state information reference signals (CSI-RS) for channel estimation at the UE. The RS may also include beam measurement RS (BRS) , beam refinement RS (BRRS) , and / or phase tracking RS (PT-RS) .
[0083] FIG. 4B illustrates an example of various DL channels within a subframe of a frame. The physical downlink control channel (PDCCH) carries DCI within one or more control channel elements (CCEs) , each CCE including, for example, nine RE groups (REGs) , each REG including, for example, four consecutive REs in an OFDM symbol.
[0084] A primary synchronization signal (PSS) may be within symbol 2 of particular subframes of a frame. The PSS is used by a UE (e.g., 104 of FIGS. 1 and 3) to determine subframe / symbol timing and a physical layer identity.
[0085] A secondary synchronization signal (SSS) may be within symbol 4 of particular subframes of a frame. The SSS is used by a UE to determine a physical layer cell identity group number and radio frame timing.
[0086] Based on the physical layer identity and the physical layer cell identity group number, the UE can determine a physical cell identifier (PCI) . Based on the PCI, the UE can determine the locations of the aforementioned DMRS. The physical broadcast channel (PBCH) , which carries a master information block (MIB) , may be logically grouped with the PSS and SSS to form a synchronization signal (SS) / PBCH block. The MIB provides a number of RBs in the system bandwidth and a system frame number (SFN) . The physical downlink shared channel (PDSCH) carries user data, broadcast system information not transmitted through the PBCH such as system information blocks (SIBs) , and / or paging messages.
[0087] As illustrated in FIG. 4C, some of the REs carry DMRS (indicated as R for one particular configuration, but other DMRS configurations are possible) for channel estimation at the base station. The UE may transmit DMRS for the PUCCH and DMRS for the PUSCH. The PUSCH DMRS may be transmitted, for example, in the first one or two symbols of the PUSCH. The PUCCH DMRS may be transmitted in different configurations depending on whether short or long PUCCHs are transmitted and depending on the particular PUCCH format used. UE 104 may transmit sounding reference signals (SRS) . The SRS may be transmitted, for example, in the last symbol of a subframe. The SRS may have a comb structure, and a UE may transmit SRS on one of the combs. The SRS may be used by a base station for channel quality estimation to enable frequency-dependent scheduling on the UL.
[0088] FIG. 4D illustrates an example of various UL channels within a subframe of a frame. The PUCCH may be located as indicated in one configuration. The PUCCH carries uplink control information (UCI) , such as scheduling requests, a channel quality indicator (CQI) , a precoding matrix indicator (PMI) , a rank indicator (RI) , and HARQ ACK / NACK feedback. The PUSCH carries data, and may additionally be used to carry a buffer status report (BSR) , a power headroom report (PHR) , and / or UCI.
[0089] Introduction to Radio Frequency Identification (RFID) Systems
[0090] Radio frequency identification (RFID) is a rapidly growing technology impacting many industries due to its economic potential for inventory / asset management within warehouses, internet of things (IoT) , sustainable sensor networks in factories and / or agriculture, and smart homes, to name a few example applications. RFID technology consists of RFID devices (or backscatter devices) , such as transponders, or tags, that emit an information-bearing signal upon receiving an energizing signal.
[0091] RFID devices may be operated without a battery. Generally, RFID devices that are operated without a battery are known as passive RFID devices. Passive RFID devices may operate by harvesting energy from received radio frequency signals (e.g., “over the air” ) , thereby powering reception and transmission circuitry within the RFID devices. This harvested energy allows passive RFID devices to transmit information, sometimes referred to as backscatter modulated information, without the need for a local power source within the RFID device. On the other hand, in certain aspects, RFID device may be semi-passive and include on-board energy storage to supplement their ability to harvest energy from received signals (however, at higher cost) .
[0092] In some cases, in addition to harvesting power from RF sources, energy harvesting devices may accumulate energy from other direct energy sources, such as solar energy, in order to supplement its power demands. Semi-passive energy harvesting devices may, in some cases, include power consuming RF components, such as analog to digital converters (ADCs) , mixers, and oscillators.
[0093] The RFID device may be a type of user equipment (UE) that provides low-cost and low-power solutions for many applications in a wireless communications system. The RFID device may be power efficient, sometimes requiring less than 0.1mW of power to operate. Further, relatively simple architectures and, in some cases, lack of battery, mean that the RFID device can be small, lightweight, and easily installed or integrated in many types of environments or host devices. The RFID device provides practical and necessary solutions to many networking applications that require, low-cost, small footprint, durable, maintenance-free, and long lifespan communications devices. For example, the RFID device may be configured as long endurance industrial sensors, which mitigates the problems of replacing batteries in and around dangerous machinery.
[0094] FIG. 5 illustrates an example RFID system 500. As shown, RFID system 500 includes a reader 510 and an RFID tag 550. Reader 510 may also be referred to as an interrogator or a scanner. RFID tag 550 may also be referred to as an interrogator, RFID label, or an electronics label. In certain aspects, reader 510 is a network entity (e.g., such as a gNB) and RFID tag 550 is a user equipment (UE) .
[0095] Reader 510 includes an antenna 520 and an electronics unit 530. Antenna 520 radiates signals transmitted by reader 510 and receives signals from RFID tags and / or other devices. Electronics unit 530 may include a transmitter and a receiver for reading RFID tags such as RFID tag 550. The same pair of transmitter and receiver (or another pair of transmitter and receiver) may support bi-directional communication with wireless networks, wireless devices, etc. Electronics unit 530 may include processing circuitry (e.g., a processor) to perform processing for data being transmitted and received by the RFID reader 510.
[0096] RFID tag 550 includes an antenna 560 and a data storage element 570. Antenna 560 radiates signals transmitted by RFID tag 550 and receives signals from RFID reader 510 and / or other devices. Data storage element 570 stores information for RFID tag 550, for example, in an electrically erasable programmable read-only memory (EEPROM) or another type of memory. RFID tag 550 may also include an electronics unit that can process the received signal and generate the signals to be transmitted.
[0097] RFID tag 550 may be a passive RFID tag having no battery. In this case, induction may be used to power the RFID tag 550. For example, in some cases, a magnetic field from a signal transmitted by reader 510 may induce an electrical current in RFID tag 550, which may then operate based on the induced current. RFID tag 550 can radiate its signal in response to receiving a signal from RFID reader 510 or some other device. In certain other aspects, RFID tag 550 may optionally include an energy storage device 590, such as a battery, capacitor, etc., for storing energy harvested using energy harvesting circuitry 555, as described below.
[0098] RFID tag 550 may be read by placing the reader 510 within close proximity to RFID tag 550. Reader 510 may radiate a first signal 525 via the antenna 520. In some cases, the first signal 525 may be known as an interrogation signal or energy signal. In some cases, energy of the first signal 525 may be coupled from reader antenna 520 to RFID tag antenna 560 via magnetic coupling and / or other phenomena. In other words, the RFID tag 550 may receive the first signal 525 from reader 510 via antenna 560 and energy of the first signal 525 may be harvested using energy harvesting circuitry 555 (e.g., an RF transducer) and used to power RFID tag 550. For example, energy of the first signal 525 received by RFID tag 550 may be used to power a microprocessor 545 of RFID tag 550. Microprocessor 545 may, in turn, retrieve information stored in a data storage element 570 of RFID tag 550 and transmit the retrieved information via a second signal 535 using the antenna 560. For example, in some cases, microprocessor 545 may generate the second signal 535 by modulating a baseband signal (e.g., generated using energy of the first signal 525) with the information retrieved from the data storage element 570. In some cases, this second signal 535 may be known as a backscatter modulated information signal. Thereafter, as noted, microprocessor 545 transmits the second signal 535 to reader 510. Reader 510 may receive the second signal 535 from RFID tag 550 via antenna 520 and may process (e.g., demodulate) the received signal to obtain the information of data storage element 570 sent in second signal 535.
[0099] RFID system 500 may be designed to operate at 13.56 MHz or some other frequency (e.g., an ultra-high frequency (UHF) band at 900 MHz) . Reader 510 may have a specified maximum transmit power level, which may be imposed by the Federal Communication Commission (FCC) in the United Stated or other regulatory bodies in other countries. The specified maximum transmit power level of reader 510 may limit the distance at which RFID tag 550 can be read by reader 510.
[0100] Wireless technology is increasingly useful in industrial applications, such as ultra-reliable low-latency communication (URLLC) and machine type communication (MTC) . In such domains, and others, it is desirable to support devices (e.g., passive RFID tags) that are capable of harvesting energy from wireless energy sources (e.g., in lieu of or in combination with a battery or other energy storage device, such as a capacitor) , such as RF signals, thermal energy, solar energy, and the like.
[0101] Introduction to Ambient Internet of Things (IoT) Devices
[0102] An ambient internet of things (A-IoT) device (or tag) refers to a device that is typically much smaller and cheaper compared to previous generations of IoT devices, such as narrowband IoT (NB-IoT) and reduced capability (RedCap) devices. Ambient IoT devices may obtain energy from radio waves.
[0103] There are various types of A-IoT devices with different characteristics. For example, a first type has a ~1 μW peak power consumption, has energy storage, an initial sampling frequency offset (SFO) up to 10X parts per million (ppm) , and neither DL nor UL amplification in the device. UL transmission from this type of device is backscattered on a carrier wave provided externally. A second type of A-IoT device has a few hundred μW peak power consumption, has energy storage, an initial SFO up to 10X ppm, with both DL and / or UL amplification in the device. UL transmission from this type of device may be generated internally by the device, or be backscattered on a carrier wave provided externally.
[0104] Due to their size and ability to operate with little or no power source, A-IoT device may have broad applicability in tracking, monitoring, and managing various devices and processes, with consumer and industrial uses.
[0105] FIG. 6 depicts an example system 600 (e.g., an A-IoT system) that utilizes a network entity (e.g., a gNodeB (gNB) ) or UE as a reader 610 to communicate with an A-IoT device 650. Such A-IoT devices may be used to monitor a variety of devices and processes. For example, the A-IoT devices may be used to report sensor measurements, video signals / images, light readings, and control devices (e.g., as actuators) .
[0106] Typical networks may not be able to efficiently support the most pervasive radio frequency identification (RFID) type of sensors, implemented as passive IoT devices. Such devices may be used extensively in future use cases, such as asset management, logistics, warehousing and manufacturing. Certain systems may be required to manage A-IoT devices.
[0107] As illustrated in FIG. 6, the reader device 610 may be able to read information stored on one or more A-IoT devices and / or write information to the one or more A-IoT devices. The gNB can provide energy to the one or more A-IoT devices (e.g., via a continuous wave (CW) signal) on a reader to device (R2D) link. An information-bearing signal may be reflected back (e.g., backscattered) on a device to reader (D2R) link from the one or more A-IoT devices to the gNB. The gNB may read the reflected signal (e.g., a backscattered signal) from the one or more A-IoT devices to decode information (e.g., a bit sequence of 0s and 1s) transmitted by the one or more A-IoT devices.
[0108] The A-IoT devices may support various types of traffic. For example, A-IoT devices may support Device-Originated (DO) traffic, including Device-Originated autonomous (DO-DOA) and Device-Terminated triggered (DO-DTT) traffic, which may be reported periodically.
[0109] The A-IoT system is associated with different topologies such as a first topology, a second topology, a third topology with downlink assistance, and a third topology with uplink assistance. In all of these topologies, an A-IoT device may be provided with a carrier wave from other node (s) either inside or outside the topology. One or more links in each topology may be bidirectional or unidirectional.
[0110] Example Convolutional Codes for A-IoT Devices
[0111] As noted above, convolutional codes (CCs) may be used for forward error correction (FEC) for a device to reader (D2R) link between an A-IoT device and a reader. However, designers of convolution code (CC) based encoders typically face a tradeoff between complexity and performance.
[0112] Convolutional codes are commonly specified by three parameters: a number of output bits n, a number of input bits k, and a number of memory registers m. A larger constraint length L, which generally represents the number of bits in an encoder memory that affect the generation of n output bits, typically results in better performance, but at the expense of greater complexity.
[0113] FIG. 7 illustrates an example diagram 700 of a CC based encoder for a CC 1 / 3 rate (3 output bits are generated for each input bit) with a constraint length of 7. The 3 output bits (dk (0) , dk (1) , and dk (2) ) are produced by the modulo-2 adders by adding up certain bits in the memory registers.
[0114] The selection of which bits are to be added to produce the output bit is called the generator polynomial (g) for that output bit. The illustrated example has a constraint length is 7, and a vector of octal values with 7 bits is used to represent the polynomials, where the left-most bit is the most significant bit (MSB) . The diagram 700 shows the binary values and polynomial form, with these binary vectors indicating connections from the outputs of the registers to the adders.
[0115] For the illustrated example, as indicated at 710, the first output bit dk (0) had has a generator polynomial G0 that can be represented as 133, in octal format. As illustrated in FIG. 7, the “1” represents a connection that sums the input bit, while the first “3” represents connections to the outputs after the second and third registers, while the second “3”represents connections to the outputs after the fifth and sixth registers. Thus, the octal format 133 represents the polynomial G0:
[0116] 1 + X2 + X3 + X5 + X6.
[0117] Similarly, as indicated at 720 and 730, the polynomial G1 for the second output bit dk (1) is represented as 171 in octal format (1 + X1 + X2 + X3 + X6) , while the polynomial G1 for the second output bit dk (1) is represented as 171 in octal format (1 + X1 + X2 + X4 + X6) .
[0118] This example also demonstrates how larger constraint lengths correspond to increased complexity. For example, observation of diagram 700 demonstrates how, for a constraint length ofL, there are a total of 2L-1 possible polynomials (e.g., excluding the all-zero vector) .
[0119] Example Nested Convolutional Code Design for A-IoT Devices
[0120] Aspects of the present disclosure provide a design for nested convolutional codes. The design has sufficiently low complexity that it may be implemented in an A-IoT system where even the reader is a UE with limited power and processing resources. The design proposed herein utilize what is referred to as nested polynomial sets, where different subsets of polynomials may be used for different coding rates. As will be described in greater detail below, the proposed design may be used in encoders with a fixed constraint length (e.g., 4) .
[0121] FIG. 8 depicts an example call flow diagram 800 depicting the use of a nested convolutional code design for D2R transmissions from an ambient IoT device 804 to a reader device 802, in accordance with aspects of the present disclosure.
[0122] In some aspects, the reader device 802 may be a radio access network (RAN) entity, such as an example of the BS 102 depicted and described with respect to FIG. 1 and 3 or a disaggregated base station depicted and described with respect to FIG. 2. In some aspects, the reader device 802 may be a UE, such as the UE 104 depicted and described with respect to FIG. 1 and 3. In some aspects, the IoT device 804 may be an example of the RFID tag 550 or A-IoT device described with respect to FIG. 5 and / or FIG. 6.
[0123] As illustrated at 810, the A-IoT device 804 may encode information bits using a convolutional encoder associated with a first k polynomials of a selected polynomial set, wherein different values of k polynomials are associated with different coding rates signal a resource allocation, indicating at least one resource for the IoT to use for confirmatory response transmission.
[0124] The A-IoT device 804 may then transmit the encoded bits via a device-to-reader (D2R) signal. The D2R signal may be any suitable waveform, such as a backscattered signal. As illustrated at 820, the reader device 802 may decode the encoded bits (e.g., using a decoder corresponding to the nested CC design used at the A-IoT device 804) .
[0125] In some cases, sets of nested polynomials may be designed for convolutional codes for a given constraint length and set of coding rates.
[0126] For example, FIG. 9 illustrates an example flow diagram 900 for a procedure for selecting nested polynomial sets for a constraint length of 4 with rates from 1 / 2 to 1 / 6. The search procedure shown in FIG. 9 may be understood with reference to reference to FIGs. 10-13, which illustrate examples of lists of polynomial sets that may result from operations shown in FIG. 9.
[0127] As noted above, for a constraint length of 4, there are 15 possible polynomials (2L-1, with L=4) . Given a coding rate of 1 / 6, this results in (156) permutations (each different polynomial could be used to generate each of the 6 output bits) , leading to extremely high search complexity. Because this level of complexity is not likely feasible given the limited processing capability and power of an A-IoT device, the nested polynomials proposed herein are proposed to reduce the search complexity.
[0128] To select suitable nested polynomials, a search strategy may begin with a rate-1 / 2 convolutional code with constraint length (CL) of 4. Nested polynomials may then be explored, ranging from rate-1 / 2 to rate-1 / 6.
[0129] As illustrated at 902 in FIG. 9, to initialize the nested polynomial search process, a value of me may be set to 2 (m = 2) . A current coding rate is denoted as1 / m, hence, the coding rate is initially 1 / 2. The operations of FIG. 9 may be performed for each rate, iteratively increasing m by 1 until a limit of M is reached (as determined at 908) . As indicated at 902, in this example, M is initialized to 6, meaning the operations of FIG. 9 will be performed to select polynomial sets to support a CC rate up to 1 / 6.
[0130] With m initialized to 2, at 904, all possible polynomials (combinations of polynomials) of the CC rate 1 / 2 are explored. Of these possible polynomial combinations, a subset (e.g., up to a threshold 20) may be selected, as indicated at 906.
[0131] As an example, table 1000 in FIG. 10 illustrates an example of polynomial combinations that may be selected for CC rate 1 / 2. In table 1000, each row shows a set of polynomials that could be used to generate output bits for CC rate 1 / 2.
[0132] In some cases, the polynomial combinations, for each CC rate, may be selected based on various considerations, such as maximum free distance (MFD) and optimum distance spectrum (ODS) . Free distance of the convolutional code is typically accepted as an appropriate criterion of goodness for the convolutional code used with Viterbi decoding. MFD of a convolutional code can be used as a first key performance indicator (KPI) , comparing the free distance and a select maximum one. ODS may be defined for a convolutional code feedforward encoder to select better polynomials when they have the same free distance, same rate R and constraint lengthK. ODS can be used as a second KPI, comparing the error weight sequence one by one and select the minimum one.
[0133] Referring, again, to FIG. 9, after selecting the best polynomial combinations for CC rate 1 / 2, since m < M, m is incremented by 1 (m=m+1) , at 910. For each value of m, up to M=6, operations 912 and 914 are performed to search for nested polynomial sets and corresponding permutations of CC 1 / m and select the best polynomials therefrom.
[0134] In other words, for each incremental value of m, the search process considers all permutations for a previous CC rate (of 1 / m-1) . For example, for m=3, the search process considers all permutations for CC rate 1 / 2, donated asf (G, 2) = [G0, G1] , G0, G1∈GCL=4. Finally, the best (e.g., up to 20) polynomials in f (G, 2) may be selected based on some criteria. For example, the best polynomial sets may be selected based on MFD and ODS. If the number of these sets with same MFD and ODS exceeds a target amount (e.g., 20) , their Block Error Rate (BLER) performance may be compared and used to select the best 20 polynomial combinations.
[0135] FIG. 11 illustrates an example sequence of how the search for nested polynomials of CC from rate 1 / 3 to rate 1 / 6 may occur, following the process shown in FIG. 9.
[0136] As illustrated, the sequence starts with a list 1110 of the best polynomial combinations selected for. When searching for CC rate from 1 / 3 to 1 / 6 (m=3, 4, 5, 6) , all possible polynomial Gm-1 are added to the end of the best sets of CC rate 1 / (m-1) : f (G, m) = [f (G, m-1) , Gm-1] , Gm-1∈GCL=4.
[0137] For example, for CC rate 1 / 3, a list of polynomials 1122 are added to the end of the best sets 1120 of CC rate 1 / 2. Next, the best (e.g., up to a threshold) sets of polynomials in f (G, m) , based on MFD and ODS, are selected resulting in list 1130. In some cases, if the number of these sets exceeds the threshold, block error rate (BLER) performance may be compared and used for selection.
[0138] The process continues, for CC rate 1 / 4, a list of polynomials 1132 are added to the end of the best sets 1130 of CC rate 1 / 3. Next, the best sets of polynomials are selected, resulting in list 1140. For CC rate 1 / 5, a list of polynomials 1142 are added to the end of the best sets 1140 of CC rate 1 / 4. Next, the best sets of polynomials are selected, resulting in list 1150. Finally, for CC rate 1 / 6, a list of polynomials 1152 are added to the end of the best sets 1150 of CC rate 1 / 5. Next, the best sets of polynomials are selected.
[0139] FIG. 12 illustrates an example list 1200 of the best polynomial sets of CC rates up to 1 / 6. In using this table, the first k polynomials in a selected row may be used to represent CC rate-1 / k. For example, as illustrated, the first 2 polynomials in a selected row may be used to represent CC rate-1 / 2, while the all 6 polynomials in a selected row may be used to represent CC rate-1 / 6. This list clearly illustrates the notion of nested polynomials, where the set of polynomials for one CC rate 1 / 2 (e.g., polynomials 13 and 15 in row 1) is nested in the set of polynomials for a second CC rate 1 / 6 (e.g., polynomials 13, 15, 17, 15, 17, 13 in row 1) .
[0140] As illustrated in FIG. 13, in some cases, a subset of nested polynomials may be selected from the list of possible polynomial sets with the best performance. For example, to reduce complexity, an A-IoT device may use only a subset of the nested polynomials from list 1200 of FIG. 12, such as the four nested polynomials shown in FIG. 13.
[0141] For example, nested polynomial 1310 corresponds to row 1 in list 1200 of FIG. 12. Similarly, nested polynomial 1320 corresponds to row 2 in list 1200 of FIG. 12, nested polynomial 1330 corresponds to row 15, and nested polynomial 1340 corresponds to row 3. Which of the nested polynomials is selected may depend on various factors. For example, certain nested polynomials may have better performance for a given rate.
[0142] The nested convolutional code design proposed herein may help reduce complexity, while maintaining performance. Further, by providing nested polynomials that may be used for different CC rates, the design may help facilitate rate matching. In some cases, an IoT device may be configured with specific nested polynomials and / or specific nested polynomials may be specified in a standard.
[0143] Example Operations
[0144] FIG. 14 shows an example of a method 1400 of wireless communications at a wireless node (e.g., an A-IoT device) . In some examples, the wireless node is a user equipment, such as a UE 104 of FIGS. 1 and 3. In some examples, the wireless node is a network entity, such as a BS 102 of FIGS. 1 and 3, or a disaggregated base station as discussed with respect to FIG. 2.
[0145] Method 1400 begins at step 1405 with selecting a polynomial set from a list of polynomial sets. In some cases, the operations of this step refer to, or may be performed by, circuitry for selecting and / or code for selecting as described with reference to FIG. 15.
[0146] Method 1400 then proceeds to step 1410 with encoding information bits using a convolutional encoder associated with a first k polynomials of the selected polynomial set, wherein different values of k polynomials are associated with different coding rates. In some cases, the operations of this step refer to, or may be performed by, circuitry for encoding and / or code for encoding as described with reference to FIG. 15.
[0147] Method 1400 then proceeds to step 1415 with transmitting the encoded information bits over a wireless channel. In some cases, the operations of this step refer to, or may be performed by, circuitry for transmitting and / or code for transmitting as described with reference to FIG. 15.
[0148] In some aspects, each quantity of k polynomials in a polynomial set is associated with a coding rate of 1 / k.
[0149] In some aspects, the different values of k comprise 2 and at least one of 3, 4, 5, or 6.
[0150] In some aspects, the constraint length is 4.
[0151] In some aspects, the list of polynomial sets is generated by: selecting suitable combinations of polynomials associated with a first coding rate that satisfy first one or more criteria; and generating combinations of polynomials associated with a second coding rate by adding polynomials to the selected suitable combinations of polynomials.
[0152] In some aspects, the list of polynomial sets is further generated by: selecting for inclusion in the list of polynomial sets, from the generated combinations of polynomials, suitable combinations of polynomials associated with the second coding rate that satisfy second one or more criteria.
[0153] In some aspects, at least one of the first or second criteria involves at least one of: a maximum free distance (MFD) or an optimum distance spectrum (ODS) .
[0154] In some aspects, the method 1400 further includes considering block error rate (BLER) to limit the polynomial sets included in the list, if more than a threshold quantity of generated combinations of polynomials satisfy the second criteria. In some cases, the operations of this step refer to, or may be performed by, circuitry for considering and / or code for considering as described with reference to FIG. 15.
[0155] In one aspect, method 1400, or any aspect related to it, may be performed by an apparatus, such as communications device 1500 of FIG. 15, which includes various components operable, configured, or adapted to perform the method 1400. Communications device 1500 is described below in further detail.
[0156] Note that FIG. 14 is just one example of a method, and other methods including fewer, additional, or alternative steps are possible consistent with this disclosure.
[0157] Example Communications Device (s)
[0158] FIG. 15 depicts aspects of an example communications device 1500. In some aspects, communications device 1500 is a user equipment, such as UE 104 described above with respect to FIGS. 1 and 3. In some aspects, communications device 1500 is a network entity, such as BS 102 of FIGS. 1 and 3, or a disaggregated base station as discussed with respect to FIG. 2.
[0159] The communications device 1500 includes a processing system 1505 coupled to the transceiver 1565 (e.g., a transmitter and / or a receiver) . In some aspects (e.g., when communications device 1500 is a network entity) , processing system 1505 may be coupled to a network interface 1575 that is configured to obtain and send signals for the communications device 1500 via communication link (s) , such as a backhaul link, midhaul link, and / or fronthaul link as described herein, such as with respect to FIG. 2. The transceiver 1565 is configured to transmit and receive signals for the communications device 1500 via the antenna 1570, such as the various signals as described herein. The processing system 1505 may be configured to perform processing functions for the communications device 1500, including processing signals received and / or to be transmitted by the communications device 1500.
[0160] The processing system 1505 includes one or more processors 1510. In various aspects, the one or more processors 1510 may be representative of one or more of receive processor 358, transmit processor 364, TX MIMO processor 366, and / or controller / processor 380, as described with respect to FIG. 3. In various aspects, one or more processors 1510 may be representative of one or more of receive processor 338, transmit processor 320, TX MIMO processor 330, and / or controller / processor 340, as described with respect to FIG. 3. The one or more processors 1510 are coupled to a computer-readable medium / memory 1535 via a bus 1560. In certain aspects, the computer-readable medium / memory 1535 is configured to store instructions (e.g., computer-executable code) that when executed by the one or more processors 1510, cause the one or more processors 1510 to perform the method 1400 described with respect to FIG. 14, or any aspect related to it. Note that reference to a processor performing a function of communications device 1500 may include one or more processors 1510 performing that function of communications device 1500.
[0161] In the depicted example, computer-readable medium / memory 1535 stores code (e.g., executable instructions) , such as code for selecting 1540, code for encoding 1545, code for transmitting 1550, and code for considering 1555. Processing of the code for selecting 1540, code for encoding 1545, code for transmitting 1550, and code for considering 1555 may cause the communications device 1500 to perform the method 1400 described with respect to FIG. 14, or any aspect related to it.
[0162] The one or more processors 1510 include circuitry configured to implement (e.g., execute) the code stored in the computer-readable medium / memory 1535, including circuitry for selecting 1515, circuitry for encoding 1520, circuitry for transmitting 1525, and circuitry for considering 1530. Processing with circuitry for selecting 1515, circuitry for encoding 1520, circuitry for transmitting 1525, and circuitry for considering 1530 may cause the communications device 1500 to perform the method 1400 described with respect to FIG. 14, or any aspect related to it.
[0163] Various components of the communications device 1500 may provide means for performing the method 1400 described with respect to FIG. 14, or any aspect related to it. For example, means for transmitting, sending or outputting for transmission may include transceivers 354 and / or antenna (s) 352 of the UE 104 illustrated in FIG. 3, transceivers 332 and / or antenna (s) 334 of the BS 102 illustrated in FIG. 3, and / or the transceiver 1565 and the antenna 1570 of the communications device 1500 in FIG. 15. Means for receiving or obtaining may include transceivers 354 and / or antenna (s) 352 of the UE 104 illustrated in FIG. 3, transceivers 332 and / or antenna (s) 334 of the BS 102 illustrated in FIG. 3, and / or the transceiver 1565 and the antenna 1570 of the communications device 1500 in FIG. 15.
[0164] Example Clauses
[0165] Implementation examples are described in the following numbered clauses:
[0166] Clause 1: A method for wireless communications at a wireless node, comprising: selecting a polynomial set from a list of polynomial sets; encoding information bits using a convolutional encoder associated with a first k polynomials of the selected polynomial set, wherein different values of k polynomials are associated with different coding rates; and transmitting the encoded information bits over a wireless channel.
[0167] Clause 2: The method of Clause 1, wherein each quantity of k polynomials in a polynomial set is associated with a coding rate of 1 / k.
[0168] Clause 3: The method of Clause 2, wherein: the different values of k comprise 2 and at least one of 3, 4, 5, or 6.
[0169] Clause 4: The method of Clause 2, wherein the constraint length is 4.
[0170] Clause 5: The method of any one of Clauses 1-4, wherein the list of polynomial sets is generated by: selecting suitable combinations of polynomials associated with a first coding rate that satisfy first one or more criteria; and generating combinations of polynomials associated with a second coding rate by adding polynomials to the selected suitable combinations of polynomials.
[0171] Clause 6: The method of Clause 5, wherein the list of polynomial sets is further generated by: selecting for inclusion in the list of polynomial sets, from the generated combinations of polynomials, suitable combinations of polynomials associated with the second coding rate that satisfy second one or more criteria.
[0172] Clause 7: The method of Clause 6, wherein at least one of the first or second criteria involves at least one of: a maximum free distance (MFD) or an optimum distance spectrum (ODS) .
[0173] Clause 8: The method of Clause 7, further comprising considering block error rate (BLER) to limit the polynomial sets included in the list, if more than a threshold quantity of generated combinations of polynomials satisfy the second criteria.
[0174] Clause 9: An apparatus, comprising: at least one memory comprising executable instructions; and at least one processor configured to execute the executable instructions and cause the apparatus to perform a method in accordance with any combination of Clauses 1-8.
[0175] Clause 10: An apparatus, comprising means for performing a method in accordance with any combination of Clauses 1-8.
[0176] Clause 11: A non-transitory computer-readable medium comprising executable instructions that, when executed by at least one processor of an apparatus, cause the apparatus to perform a method in accordance with any combination of Clauses 1-8.
[0177] Clause 12: A computer program product embodied on a computer-readable storage medium comprising code for performing a method in accordance with any combination of Clauses 1-8.
[0178] Additional Considerations
[0179] The preceding description is provided to enable any person skilled in the art to practice the various aspects described herein. The examples discussed herein are not limiting of the scope, applicability, or aspects set forth in the claims. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects. For example, changes may be made in the function and arrangement of elements discussed without departing from the scope of the disclosure. Various examples may omit, substitute, or add various procedures or components as appropriate. For instance, the methods described may be performed in an order different from that described, and various actions may be added, omitted, or combined. Also, features described with respect to some examples may be combined in some other examples. For example, an apparatus may be implemented or a method may be practiced using any number of the aspects set forth herein. In addition, the scope of the disclosure is intended to cover such an apparatus or method that is practiced using other structure, functionality, or structure and functionality in addition to, or other than, the various aspects of the disclosure set forth herein. It should be understood that any aspect of the disclosure disclosed herein may be embodied by one or more elements of a claim.
[0180] The various illustrative logical blocks, modules and circuits described in connection with the present disclosure may be implemented or performed with a general purpose processor, a graphics processing unit (GPU) , a neural processing unit (NPU) , a digital signal processor (DSP) , an ASIC, a field programmable gate array (FPGA) or other programmable logic device (PLD) , 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 commercially available 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, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, a system on a chip (SoC) , or any other such configuration.
[0181] As used herein, “a processor, ” “at least one processor” or “one or more processors” generally refers to a single processor configured to perform one or multiple operations or multiple processors configured to collectively perform one or more operations. In the case of multiple processors, performance of the one or more operations could be divided amongst different processors, though one processor may perform multiple operations, and multiple processors could collectively perform a single operation. Similarly, “a memory, ” “at least one memory” or “one or more memories” generally refers to a single memory configured to store data and / or instructions, multiple memories configured to collectively store data and / or instructions.
[0182] In some cases, rather than actually transmitting a signal, an apparatus (e.g., a wireless node or device) may have an interface to output the signal for transmission. For example, a processor may output a signal, via a bus interface, to a radio frequency (RF) front end for transmission. Accordingly, a means for outputting may include such an interface as an alternative (or in addition) to a transmitter or transceiver. Similarly, rather than actually receiving a signal, an apparatus (e.g., a wireless node or device) may have an interface to obtain a signal from another device. For example, a processor may obtain (or receive) a signal, via a bus interface, from an RF front end for reception. Accordingly, a means for obtaining may include such an interface as an alternative (or in addition) to a receiver or transceiver.
[0183] While the present disclosure may describe certain operations as being performed by one type of wireless node, the same or similar operations may also be performed by another type of wireless node. For example, operations performed by a user equipment (UE) may also (or instead) be performed by a network entity (e.g., a base station or unit of a disaggregated base station) . Similarly, operations performed by a network entity may also (or instead) be performed by a UE.
[0184] Further, while the present disclosure may describe certain types of communications between different types of wireless nodes (e.g., between a network entity and a UE) , the same or similar types of communications may occur between same types of wireless nodes (e.g., between network entities or between UEs, in a peer-to-peer scenario) . Further, communications may occur in reverse order than described.
[0185] Means for selecting, means for encoding, and means for transmitting may comprise one or more processors, such as one or more of the processors described above with reference to FIG. 15.
[0186] As used herein, a phrase referring to “at least one of” a list of items refers to any combination of those items, including single members. As an example, “at least one of: a, b, or c” is intended to cover a, b, c, a-b, a-c, b-c, and a-b-c, as well as any combination with multiples of the same element (e.g., a-a, a-a-a, a-a-b, a-a-c, a-b-b, a-c-c, b-b, b-b-b, b-b-c, c-c, and c-c-c or any other ordering of a, b, and c) .
[0187] As used herein, the term “determining” encompasses a wide variety of actions. For example, “determining” may include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database or another data structure) , ascertaining and the like. Also, “determining” may include receiving (e.g., receiving information) , accessing (e.g., accessing data in a memory) and the like. Also, “determining” may include resolving, selecting, choosing, establishing and the like.
[0188] The methods disclosed herein comprise one or more actions for achieving the methods. The method actions may be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of actions is specified, the order and / or use of specific actions may be modified without departing from the scope of the claims. Further, the various operations of methods described above may be performed by any suitable means capable of performing the corresponding functions. The means may include various hardware and / or software component (s) and / or module (s) , including, but not limited to a circuit, an application specific integrated circuit (ASIC) , or processor. Software shall be construed broadly to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, executables, threads of execution, procedures, or functions, whether referred to as software, firmware, middleware, microcode, hardware description language, or otherwise.
[0189] The following claims are not intended to be limited to the aspects shown herein, but are to be accorded the full scope consistent with the language of the claims. Within a claim, reference to an element in the singular is not intended to mean “one and only one” unless specifically so stated, but rather “one or more. ” Unless specifically stated otherwise, the term “some” refers to one or more. No claim element is to be construed under the provisions of 35 U.S.C. §112 (f) unless the element is expressly recited using the phrase “means for” . All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are known or later come to be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the claims. Moreover, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the claims.
Claims
1.An apparatus for wireless communication, comprising:at least one memory comprising computer-executable instructions; andone or more processors configured to execute the computer-executable instructions and cause the apparatus to:select a polynomial set from a list of polynomial sets;encode information bits using a convolutional encoder associated with a a first k polynomials of the selected polynomial set, wherein different values of k polynomials are associated with different coding rates; andtransmit the encoded information bits over a wireless channel.2.The apparatus of claim 1, for different values of k, each k polynomials in a polynomial set is associated with a coding rate of 1 / k.3.The apparatus of claim 2, wherein the different values of k comprise 2 and at least one of 3, 4, 5, or 6.4.The apparatus of claim 2, wherein the convolutional encoder is associated with a constraint length of four.5.The apparatus of claim 1, wherein the list of polynomial sets is generated by: selecting suitable combinations of polynomials associated with a first coding rate that satisfy first one or more criteria; and generating combinations of polynomials associated with a second coding rate by adding polynomials to the selected suitable combinations of polynomials.6.The apparatus of claim 5, wherein the list of polynomial sets is further generated by: selecting for inclusion in the list of polynomial sets, from the generated combinations of polynomials, suitable combinations of polynomials associated with the second coding rate that satisfy second one or more criteria.7.The apparatus of claim 6, wherein at least one of the first or second criteria involves at least one of: a maximum free distance (MFD) or an optimum distance spectrum (ODS) .8.The apparatus of claim 7, wherein the one or more processors are further configured to cause the apparatus to:consider block error rate (BLER) to limit the polynomial sets included in the list, if more than a threshold quantity of generated combinations of polynomials satisfy the second criteria.9.The apparatus of claim 1, wherein the convolutional encoder is associated with a constraint length of four and the list of polynomial sets comprises the following list: wherein each row represents a polynomial set and each entry in a row represents a polynomial in octal format.10.The apparatus of claim 1, wherein the convolutional encoder is associated with a constraint length of four and the list of polynomial sets comprises the following list: wherein each row represents a polynomial set and each entry in a row represents a polynomial in octal format.11.A method for wireless communications at a wireless node, comprising:selecting a polynomial set from a list of polynomial sets;encoding information bits using a convolutional encoder associated with a first k polynomials of the selected polynomial set, wherein different values of k polynomials are associated with different coding rates; andtransmitting the encoded information bits over a wireless channel.12.The method of claim 11, for different values of k, each k polynomials in a polynomial set is associated with a coding rate of 1 / k.13.The method of claim 12, wherein:the different values of k comprise 2 and at least one of 3, 4, 5, or 6.14.The method of claim 12, wherein the convolutional encoder is associated with a constraint length of four.15.The method of claim 11, wherein the list of polynomial sets is generated by:selecting suitable combinations of polynomials associated with a first coding rate that satisfy first one or more criteria; andgenerating combinations of polynomials associated with a second coding rate by adding polynomials to the selected suitable combinations of polynomials.16.The method of claim 15, wherein the list of polynomial sets is further generated by:selecting for inclusion in the list of polynomial sets, from the generated combinations of polynomials, suitable combinations of polynomials associated with the second coding rate that satisfy second one or more criteria.17.The method of claim 16, wherein at least one of the first or second criteria involves at least one of:a maximum free distance (MFD) or an optimum distance spectrum (ODS) .18.The method of claim 11, wherein the convolutional encoder is associated with a constraint length of four and the list of polynomial sets comprises the following list: wherein each row represents a polynomial set and each entry in a row represents a polynomial in octal format.19.The method of claim 11, wherein the convolutional encoder is associated with a constraint length of four and the list of polynomial sets comprises the following list: wherein each row represents a polynomial set and each entry in a row represents a polynomial in octal format.20.An apparatus for wireless communication, comprising:means for selecting a polynomial set from a list of polynomial sets;means for encoding information bits using a convolutional encoder associated with a first k polynomials of the selected polynomial set, wherein different values of k polynomials are associated with different coding rates; andmeans for transmitting the encoded information bits over a wireless channel.
Citation Information
Patent Citations
Encoding method and device
EP4109766A1
Systems and methods for network coding using convolutional codes
US20130238962A1
Devices and methods for constructing polar like codes
US20230098302A1
Punctured convolutional codes
US20240259134A1
Tail-biting convolutional code encoding method, device and system
WO2019000196A1