Lifting scheme for low density parity check codes
By optimizing the number of basemap replicas and node connections of LDPC codes, the problem of high decoding complexity of LDPC codes is solved, achieving more efficient decoding and reliability, and improving the throughput and spectrum efficiency of wireless communication devices.
Patent Information
- Application Number
- CN202480050929.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-08-11
- Filing Date
- 2024-07-16
- Publication Date
- 2026-03-10
AI Technical Summary
In wireless communication devices, the encoding and decoding process of low-density parity-check (LDPC) codes is computationally complex, which leads to hardware complexity and energy consumption becoming bottlenecks for throughput requirements. In particular, the decoding efficiency is low and the error plateau performance is poor in high-order modulation schemes.
An enhancement scheme is adopted to define the number of base graph replicas and the cyclic shift of node connections in LDPC codes, so that the minimum length cycle is associated with the second-degree variable node and the least significant bit. By optimizing the cyclic shift and weighted encirclement length to meet the threshold, the decoding efficiency and reliability are improved.
It reduces the encoding and decoding complexity of LDPC codes, improves throughput and error plateau performance, reduces power consumption, and enhances the reliability and spectral efficiency of communication equipment.
Smart Images

Figure CN121646870A_ABST
Abstract
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This Patent Application claims priority to U.S. Patent Application No. 18 / 448,316 by YANG et al., entitled “LIFTING SCHEMES FOR LOW-DENSITY PARITY-CHECK CODES,” filed August 11, 2023, assigned to the assignee hereof and fully incorporated herein by reference in its entirety for all purposes. TECHNICAL FIELD
[0002] The following relates to wireless communications, including lifting schemes for low-density parity-check (LDPC) codes.
[0003] DESCRIPTION OF RELATED ART 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 can 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 can be referred to as New Radio (NR) systems. These systems can employ technologies such as code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), or discrete Fourier transform spread orthogonal frequency division multiplexing (DFT-S-OFDM). A wireless multiple-access communications system can include one or more base stations, each simultaneously supporting communication with multiple communication devices, which can be otherwise known as user equipment (UE).
[0004] Wireless communication devices, such as UEs and network entities, can implement low-density parity-check (LDPC) codes to encode and decode wireless communications. LDPC encoding and decoding processes are computationally complex, and the amount of hardware involved in encoding or decoding wireless communications using LDPC codes can be directly related to the throughput of the wireless communications. The complexity and energy consumption of transmitter and receiver hardware associated with LDPC decoding can be a bottleneck for the ability of wireless communication devices to meet growing throughput demands. Thus, it can be desirable to support updated LDPC decoding schemes that have reduced complexity with throughput scaling. SUMMARY
[0005] The systems, methods, and devices of the disclosure each have several innovative aspects, which alone or in various combinations can yield one or more benefits during the decoding of low-density parity-check (LDPC) codes.
[0006] One innovative aspect of the subject matter described in this disclosure can be implemented in a method for wireless communications by a transmitting device. The method can include encoding a set of bits according to a low-density parity-check (LDPC) code associated with a base graph and a lifting scheme, where the base graph includes a set of check nodes and a set of variable nodes including at least one two-degree variable node, where the lifting scheme defines a number of copies of the base graph used to generate the LDPC code and respective cyclic shifts associated with connected variable nodes and check nodes of the base graph and the copies of the base graph, and where the respective cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a restriction on two-degree variable nodes, nodes associated with least significant bits of the set of bits, or a combination thereof. The method can further include transmitting a signal including the encoded set of bits.
[0007] Another innovative aspect of the subject matter described in this disclosure can be implemented in a transmitting device. The transmitting device can include a processing system including a processor circuit and a memory circuit storing code. The processing system can be configured to cause the transmitting device to encode a set of bits according to a LDPC code associated with a base graph and a lifting scheme, where the base graph includes a set of check nodes and a set of variable nodes including at least one two-degree variable node, where the lifting scheme defines a number of copies of the base graph used to generate the LDPC code and respective cyclic shifts associated with connected variable nodes and check nodes of the base graph and the copies of the base graph, and where the respective cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a restriction on two-degree variable nodes, nodes associated with least significant bits of the set of bits, or a combination thereof. The processing system can be further configured to cause the transmitting device to transmit a signal including the encoded set of bits.
[0008] Another innovative aspect of the subject matter described in this disclosure can be implemented in a transmitting device. The transmitting device can include means for encoding a set of bits according to a LDPC code associated with a base graph and a lifting scheme, where the base graph includes a set of check nodes and a set of variable nodes including at least one two-degree variable node, where the lifting scheme defines a number of copies of the base graph used to generate the LDPC code and respective cyclic shifts associated with connected variable nodes and check nodes of the base graph and the copies of the base graph, and where the respective cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a restriction on two-degree variable nodes, nodes associated with least significant bits of the set of bits, or a combination thereof. The transmitting can further include means for transmitting a signal including the encoded set of bits.
[0009] Another innovative aspect of the subject matter described in this disclosure can be implemented in a non-transitory computer-readable medium storing code for wireless communication. The code can include instructions executable by one or more processors to encode a set of bits according to an LDPC code associated with a base graph and a lifting scheme, where the base graph includes a set of check nodes and a set of variable nodes including at least one two-degree variable node, where the lifting scheme defines a number of copies of the base graph used to generate the LDPC code and respective cyclic shifts associated with connected variable nodes and check nodes of the base graph and the copies of the base graph, and where the respective cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a restriction on two-degree variable nodes, nodes associated with least significant bits in the set of bits, or a combination thereof. The code can also include instructions executable by one or more processors to transmit a signal including the encoded set of bits.
[0010] Another innovative aspect of the subject matter described in this disclosure can be implemented in a method for wireless communication by a receiving device. The method can include receiving a signal including an encoded set of bits and decoding the encoded set of bits according to an LDPC code associated with a base graph and a lifting scheme, where the base graph includes a set of check nodes and a set of variable nodes including at least one two-degree variable node, where the lifting scheme defines a number of copies of the base graph used to generate the LDPC code and respective cyclic shifts associated with connected variable nodes and check nodes of the base graph and the copies of the base graph, and where the respective cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a restriction on two-degree variable nodes, nodes associated with least significant bits in the encoded set of bits, or a combination thereof.
[0011] Another innovative aspect of the subject matter described in this disclosure can be implemented in a receiving device. The receiving device can include a processing system including a processor circuit and a memory circuit storing code. The processing system can be configured to cause the receiving device to receive a signal including an encoded set of bits and decode the encoded set of bits according to an LDPC code associated with a base graph and a lifting scheme, where the base graph includes a set of check nodes and a set of variable nodes including at least one two-degree variable node, where the lifting scheme defines a number of copies of the base graph used to generate the LDPC code and respective cyclic shifts associated with connected variable nodes and check nodes of the base graph and the copies of the base graph, and where the respective cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a restriction on two-degree variable nodes, nodes associated with least significant bits in the encoded set of bits, or a combination thereof.
[0012] Another innovative aspect of the subject matter described in this disclosure can be implemented in a receiving device. The receiving device may include: components for receiving a signal comprising an encoded set of bits; and components for decoding the encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap comprises a set of multiple check nodes and a set of multiple variable nodes comprising at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with restrictions on second-order variable nodes, nodes associated with the least significant bit in the encoded set of bits, or combinations thereof.
[0013] Another innovative aspect of the subject matter described in this disclosure can be implemented in a non-transitory computer-readable medium storing code for wireless communication. The code may include instructions executable by one or more processors to: receive a signal comprising an encoded set of bits; and decode the encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap comprises a set of multiple check nodes and a set of multiple variable nodes comprising at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with restrictions on second-order variable nodes, nodes associated with the least significant bit in the encoded set of bits, or combinations thereof.
[0014] Another innovative aspect of the subject matter described in this disclosure can be implemented in a method for wireless communication by a transmitting device. The method may include encoding a set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and parity nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding relevance of the variable node and the corresponding reliability of the bits corresponding to the variable node. The method may further include transmitting a signal including the encoded set of bits.
[0015] Another innovative aspect of the subject matter described in this disclosure can be implemented in a transmitting device. The transmitting device may include a processing system comprising processor circuitry and memory circuitry for storing code. The processing system may be configured to encode a set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the connections of the variable nodes and parity nodes to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding relevance of the variable node and the corresponding reliability of the bits corresponding to the variable node. The processing system may also be configured to transmit a signal comprising the encoded set of bits.
[0016] Another innovative aspect of the subject matter described in this disclosure can be implemented in a transmitting apparatus. The transmitting apparatus may include components for encoding a set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the connections of the variable nodes and parity nodes to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding relevance of the variable node and the corresponding reliability of the bits corresponding to the variable node. The transmission may further include components for transmitting a signal comprising the encoded set of bits.
[0017] Another innovative aspect of the subject matter described in this disclosure can be implemented in a non-transitory computer-readable medium storing code for wireless communication. The code may include instructions executable by one or more processors to: encode a set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and parity nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding relevance of the variable node and the corresponding reliability of the bits corresponding to the variable node. The code may also include instructions executable by one or more processors to: transmit a signal including the encoded set of bits.
[0018] Another innovative aspect of the subject matter described in this disclosure can be implemented in a method for wireless communication by a receiving device. The method may include: receiving a signal comprising an encoded set of bits; and decoding the encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap comprises a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and parity nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bits corresponding to the variable node.
[0019] Another innovative aspect of the subject matter described in this disclosure can be implemented in a receiving device. The receiving device may include a processing system comprising processor circuitry and memory circuitry for storing code. The processing system may be configured to cause the receiving device to receive a signal comprising an encoded set of bits, and to decode the encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap comprises a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and parity nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bits corresponding to the variable node.
[0020] Another innovative aspect of the subject matter described in this disclosure can be implemented in a receiving device. The receiving device may include: components for receiving a signal comprising an encoded set of bits; and components for decoding the encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap comprises a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and parity nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bits corresponding to the variable node.
[0021] Another innovative aspect of the subject matter described in this disclosure can be implemented in a non-transitory computer-readable medium storing code for wireless communication. The code may include instructions executable by one or more processors to: receive a signal comprising an encoded set of bits, and decode the encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap comprises a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and parity nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding relevance of the variable node and the corresponding reliability of the bits corresponding to the variable node. Attached Figure Description
[0022] Figure 1 and Figure 2 A visual diagram of an example wireless communication system supporting a boosting scheme for low-density parity-check (LDPC) codes is shown.
[0023] Figure 3 A lifting diagram of an example lifting scheme for LDPC codes is shown.
[0024] Figure 4 and Figure 5 A cyclic diagram of an example lifting scheme for LDPC codes is shown.
[0025] Figure 6 An example process flow supporting a boosting scheme for LDPC codes is shown.
[0026] Figure 7 and Figure 8 A block diagram of an example wireless communication device supporting a boosting scheme for LDPC codes is shown.
[0027] Figure 9 A block diagram of an example communication manager that supports a boosting scheme for LDPC codes is shown.
[0028] Figure 10 A block diagram of an example system including a wireless communication device that supports a boosting scheme for LDPC codes is shown.
[0029] Figure 11 A block diagram of an example system including a wireless communication device that supports a boosting scheme for LDPC codes is shown.
[0030] Figures 12 to 15A flowchart is shown to illustrate an example method for supporting lifting schemes for LDPC codes. Detailed Implementation
[0031] The following description is directed to a specific embodiment in order to illustrate the innovative aspects of this disclosure. However, those skilled in the art will readily recognize that the teachings herein can be applied in a variety of different ways. The specific embodiments described can be implemented according to the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard, the IEEE 802.15 standard, and Bluetooth as defined by the Bluetooth Special Interest Group (SIG). ® The described implementation can be implemented in any device, system, or network capable of transmitting and receiving radio frequency (RF) signals according to one or more of the following standards, or those published by the 3rd Generation Partnership Project (3GPP): Long Term Evolution (LTE), 3G, 4G, or 5G (New Radio (NR)). The described implementation can be implemented in any device, system, or network capable of transmitting and receiving RF signals according to one or more of the following technologies or techniques: Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Frequency Division Multiple Access (FDMA), Orthogonal FDMA (OFDMA), Single Carrier FDMA (SC-FDMA), Single User (SU) Multiple Input Multiple Output (MIMO), and Multi User (MU) MIMO. The described implementation can also be implemented using other wireless communication protocols or RF signals suitable for use in one or more of Wireless Personal Area Networks (WPANs), Wireless Local Area Networks (WLANs), Wireless Wide Area Networks (WWANs), or Internet of Things (IoT) networks.
[0032] Some wireless communication systems implement error-correcting codes to transmit signals over noisy communication channels, such as low-density parity-check (LDPC) codes. LDPC codes can be defined (e.g., described, represented) by an associated base map and a boosting scheme. The boosting scheme indicates (e.g., defined, associated with) one or more boosting operations performed on the base map, such as using a cyclic identity matrix to create a certain number of copies of the base map. The base map can be defined by variable nodes (e.g., columns in a matrix representation of the base map) and check nodes (e.g., rows in a matrix representation of the base map). Wireless communication devices can implement modulation schemes to map bits to modulation constellations (e.g., modulation symbols of the modulation scheme). Modulation schemes can have various orders, such as low-order modulation schemes (Quadrature Phase Shift Keying (QPSK) modulation) and high-order modulation schemes (e.g., Quadrature Amplitude Modulation (QAM) modulation). If a high-order modulation scheme is implemented relative to a low-order modulation scheme, a larger number of bits can be mapped to a given modulation symbol. For higher-order modulation schemes, the coded bits of a modulation symbol can be transmitted via different channels with varying reliability (e.g., the least significant bit (LSB) and most significant bit (MSB) of the same modulation symbol can have different reliability). In some examples, the cyclic shift value defined by the boosting scheme (e.g., indicating how nodes of the basemap are connected among multiple copies of the basemap) may not take into account the different reliability of different symbol bits, which can lead to inefficient decoding and reduced reliability of the encoded communication. This inefficient decoding and reduced reliability can negatively impact error plateau performance, especially in higher-order modulation schemes (e.g., 16 QAM and higher).
[0033] The various aspects generally involve LDPC decoding, and more specifically, improvement schemes for LDPC codes that support higher-order modulation schemes with reduced processing complexity and decoding error rates. For example, wireless communication devices can encode and / or decode bit sets according to (e.g., using) LDPC codes defined by an improvement scheme that leverages the different channel reliability of higher-order modulation schemes to improve the reliability and error plateau performance associated with the LDPC code. In some examples, cyclic shifts defined by the improvement scheme can be defined such that a cycle of minimum length with the LDPC code (e.g., a cycle of minimum length in the base graph improved according to the improvement scheme, the shortest cycle in the improved graph) is associated with one or more constraints, such as constraints on second-degree variable nodes (e.g., variable nodes corresponding to two non-zero parity nodes) and / or constraints on variable nodes and / or parity nodes corresponding to the least significant bit (e.g., the least reliable bit) of the modulation scheme. For example, one or more constraints may indicate that second-degree variable nodes may not be included in the shortest cycle (e.g., minimum-length cycle), variable nodes mapped to LSBs may not be included in the shortest cycle, and / or at least one third-degree (or higher-degree) variable node may be included in the shortest cycle, as well as other constraints described herein. In some examples, the cyclic shift defined by the lifting scheme may be defined to maximize the weighted gravitational length of the LDPC code (e.g., minimum weighted length). For example, variable nodes may be assigned corresponding weights defined by the corresponding degree of the variable node and / or the corresponding reliability to which the variable node is mapped. Variable nodes with higher weights may be mapped to more reliable (e.g., more efficient) bits. In some examples, corresponding weights defined by the corresponding degree of the check node and / or the corresponding reliability to which the check node is mapped may be similarly assigned to the check node. The weighted gravitational length of the cycle may be calculated using (e.g., by addition) the weights assigned to nodes in the cycle (e.g., rather than corresponding to the number of nodes in the cycle), and the lifting scheme may be designed such that the weighted gravitational length satisfies a defined threshold.
[0034] Specific aspects of the subject matter described in this disclosure can be implemented to achieve one or more of the following potential advantages. The techniques employed in the described communication devices can provide benefits and enhancements to the operation of the communication devices, including increased throughput, reduced encoding and decoding complexity, improved error plateau performance, reduced power consumption, and increased reliability, among other benefits. For example, including second-degree variable nodes in the boosted graph (e.g., a base graph boosted according to a boosting scheme) can produce sparser LDPC codes, which reduces the complexity of implementing LDPC codes. This reduction in complexity can support higher throughput without increasing the computational power of the communication device to support higher throughput. Additionally, power consumption can be reduced relative to other designs due to the reduced computational complexity associated with implementing LDPC codes. Furthermore, the constraint and / or maximization of the weighted encirclement length associated with the boosting scheme described herein can increase reliability and improve error plateau performance. For example, the constraint and / or maximization of the weighted encirclement length can prevent cycles from occurring in the boosted graph with variable nodes that are only second-degree variable nodes, which can be a set of traps associated with relatively low reliability (e.g., due to the lack of information received outside the cycle). Additionally or alternatively, limiting and / or maximizing the weighted encirclement length can increase the encirclement length of such cycles and / or ensure that relatively more reliable bits are mapped to variable nodes in such cycles, which can increase the reliability of such cycles and reduce the probability of errors. Using these techniques for LDPC decoding to support relatively high-order modulation schemes can increase throughput, reduce signaling overhead, and provide better power management and spectral efficiency in communication between wireless communication devices.
[0035] The aspects of this disclosure are first described in the context of a wireless communication system. The aspects of this disclosure are also described with reference to lifting diagrams, loop diagrams, and process flow diagrams. The aspects of this disclosure are further illustrated and described with reference to apparatus diagrams, system diagrams, and flowcharts related to lifting schemes for LDPC codes.
[0036] Figure 1 A visual diagram of an example wireless communication system 100 supporting an enhancement scheme for LDPC codes is shown. Wireless communication system 100 may include one or more network entities 105, one or more UEs 115, and a core network 130. In some examples, wireless communication system 100 may be a Long Term Evolution (LTE) network, an Advanced LTE (LTE-A) network, an LTE-A Pro network, a New Radio (NR) network, or a network operating under other systems and radio technologies, including future systems and radio technologies not explicitly mentioned herein.
[0037] Network entity 105 may be distributed across a geographical area to form wireless communication system 100, and may include devices employing different forms or having different capabilities. In various examples, network entity 105 may be referred to as a network element, mobility element, radio access network (RAN) node, or network equipment, etc. In some examples, network entity 105 and UE 115 may wirelessly communicate via one or more communication links 125 (e.g., radio frequency (RF) access links). For example, network entity 105 may support coverage area 110 (e.g., a geographical coverage area), over which UE 115 and network entity 105 may establish one or more communication links 125. Coverage area 110 may be an example of a geographical area in which network entity 105 and UE 115 may support the transmission of signals according to one or more radio access technologies (RATs).
[0038] UE 115 can be distributed throughout the coverage area 110 of the wireless communication system 100, and each UE 115 can be stationary or mobile, or stationary and mobile at different times. UE 115 can be a device in different forms or with different capabilities. Figure 1 Some example UE 115s are illustrated herein. The UE 115 described herein can be able to support various types of devices (such as...) Figure 1 It communicates with other UEs (115 or network entity 105) as shown.
[0039] As described herein, nodes of the wireless communication system 100 (which may be referred to as network nodes or wireless nodes) may be network entity 105 (e.g., any network entity described herein), UE 115 (e.g., any UE described herein), network controller, apparatus, device, computing system, one or more components, or another suitable processing entity configured to perform any of the techniques described herein. For example, a node may be UE 115. Alternatively, a node may be network entity 105. Furthermore, a first node may be configured to communicate with a second or third node. In one aspect of this example, the first node may be UE 115, the second node may be network entity 105, and the third node may be UE 115. In another aspect of this example, the first node may be UE 115, the second node may be network entity 105, and the third node may be network entity 105. In other aspects of this example, the first node, the second node, and the third node may be different from these examples. Similarly, references to UE 115, network entity 105, device, equipment, computing system, etc., may include disclosures of UE 115, network entity 105, device, equipment, computing system, etc., as nodes. For example, a disclosure that UE 115 is configured to receive information from network entity 105 also discloses that a first node is configured to receive information from a second node.
[0040] In some examples, network entity 105 may communicate with core network 130, communicate with each other, or both. For example, network entity 105 may communicate with core network 130 via one or more backhaul communication links 120 (e.g., according to S1, N2, N3, or other interface protocols). In some examples, network entity 105 may communicate with each other directly (e.g., directly between network entities 105) or indirectly (e.g., via core network 130) via backhaul communication links 120 (e.g., according to X2, Xn, or other interface protocols). In some examples, network entity 105 may communicate with each other via midhaul communication link 162 (e.g., according to midhaul interface protocol) or fronthaul communication link 168 (e.g., according to fronthaul interface protocol) or any combination thereof. Backhaul communication link 120, midhaul communication link 162, or fronthaul communication link 168 may be or include one or more wired links (e.g., electrical links, fiber optic links), one or more wireless links (e.g., radio links, wireless optical links), etc., or various combinations thereof. UE 115 can communicate with core network 130 via communication link 155.
[0041] One or more network entities in network entity 105 described herein may include or be referred to as base station 140 (e.g., transceiver base station, radio base station, NR base station, access point, radio transceiver, NodeB, eNodeB (eNB), next-generation NodeB or gigabit NodeB (any of which may be referred to as gNB), 5G NB, next-generation eNB (ng-eNB), home NodeB, home eNodeB or other suitable terms). In some examples, network entity 105 (e.g., base station 140) may be implemented in an aggregated (e.g., monolithic, standalone) base station architecture that may be configured to utilize a protocol stack that is physically or logically integrated within a single network entity 105 (e.g., a single RAN node, such as base station 140).
[0042] In some examples, network entity 105 may be implemented in a decomposed architecture (e.g., a decomposed base station architecture, a decomposed RAN architecture) that can be configured to utilize protocol stacks physically or logically distributed across two or more network entities 105, such as an Integrated Access Backhaul (IAB) network, an Open RAN (O-RAN) (e.g., a network configuration sponsored by the O-RAN Alliance), or a Virtualized RAN (vRAN) (e.g., a Cloud RAN (C-RAN)). For example, network entity 105 may include one or more of the following: a Central Unit (CU) 160, a Distributed Unit (DU) 165, a Radio Unit (RU) 170, a RAN Intelligent Controller (RIC) 175 (e.g., a near-real-time RIC, a non-real-time RIC), a Service Management and Orchestration (SMO) 180 system, or any combination thereof. 170 may also be referred to as a radio headend, intelligent radio headend, remote radio headend (RRH), remote radio unit (RRU), or transmit / receive point (TRP). One or more components of network entity 105 in a decomposed RAN architecture may be co-located, or one or more components of network entity 105 may be located in distributed locations (e.g., separate physical locations). In some examples, one or more network entities 105 in a decomposed RAN architecture may be implemented as virtual units (e.g., virtual CU (VCU), virtual DU (VDU), virtual RU (VRU)).
[0043] The functional splitting among CU 160, DU 165, and RU 170 is flexible and can support different functionalities depending on which functions (e.g., network layer functions, protocol layer functions, baseband functions, RF functions, and any combination thereof) are performed at CU 160, DU 165, and RU 170. For example, protocol stack functional splitting can be used between CU 160 and DU 165, allowing CU 160 to support one or more layers of the protocol stack, and DU 165 to support one or more different layers of the protocol stack. In some examples, CU 160 can host higher protocol layer (e.g., Layer 3 (L3), Layer 2 (L2)) functionalities and signaling (e.g., Radio Resource Control (RRC), Serving Data Adaptation Protocol (SDAP), Packet Data Convergence Protocol (PDCP)). The CU160 can connect to one or more DU 165s or RU 170s, and the one or more DU 165s or RU 170s can host lower protocol layers, such as Layer 1 (L1) (e.g., Physical (PHY) layer) or L2 (e.g., Radio Link Control (RLC) layer, Medium Access Control (MAC) layer) functionality and signaling, and each can be at least partially controlled by the CU 160. Additionally or alternatively, a protocol stack functional split can be employed between the DU 165 and RU 170, such that the DU 165 can support one or more layers of the protocol stack, and the RU 170 can support one or more different layers of the protocol stack. The DU 165 can support one or more different cells (e.g., via one or more RU 170s). In some cases, functional decomposition between CU 160 and DU 165, or between DU 165 and RU 170, can be performed within the protocol layer (e.g., some functions of the protocol layer can be performed by one of CU 160, DU 165, or RU 170, while other functions of the protocol layer can be performed by another of CU 160, DU 165, or RU 170). CU 160 can be further functionally decomposed into CU control plane (CU-CP) functions and CU user plane (CU-UP) functions. CU 160 can be connected to one or more DU 165 via midhaul communication link 162 (e.g., F1, F1-c, F1-u), and DU 165 can be connected to one or more RU 170 via fronthaul communication link 168 (e.g., open fronthaul (FH) interface). In some examples, the midhaul communication link 162 or the fronthaul communication link 168 may be implemented based on the interfaces (e.g., channels) between the layers of the protocol stack, which are supported by the corresponding network entities 105 that communicate via such communication links.
[0044] In some wireless communication systems (e.g., wireless communication system 100), the infrastructure and spectrum resources for radio access can support wireless backhaul link capabilities to supplement wired backhaul connections, thereby providing an IAB network architecture (e.g., to core network 130). In some cases, in an IAB network, one or more network entities 105 (e.g., IAB node 104) may be partially controlled by each other. One or more IAB nodes 104 may be referred to as donor entities or IAB donors. One or more DU 165s or one or more RU 170s may be partially controlled by one or more CU 160s associated with donor network entity 105 (e.g., donor base station 140). One or more donor network entities 105 (e.g., IAB donors) may communicate with one or more additional network entities 105 (e.g., IAB node 104) via supported access and backhaul links (e.g., backhaul communication link 120). IAB node 104 may include an IAB mobile terminal (IAB-MT) controlled (e.g., scheduled) by a DU 165 of a coupled IAB donor. The IAB-MT may include a separate set of antennas for relaying communication with UE 115, or may share the same antennas (e.g., those of RU 170) of IAB node 104 for access via the DU 165 (e.g., referred to as a virtual IAB-MT (vIAB-MT)). In some examples, IAB node 104 may include a DU 165 that supports communication links with additional entities (e.g., IAB node 104, UE 115) within a relay chain or configuration (e.g., downstream) of the access network. In such cases, one or more components of the decomposed RAN architecture (e.g., one or more IAB nodes 104 or components of IAB node 104) may be configured to operate according to the techniques described herein.
[0045] When the techniques described herein are applied in the context of a decomposed RAN architecture, one or more components of the decomposed RAN architecture can be configured to support the enhancement scheme for LDPC codes as described herein. For example, some operations described as being performed by UE 115 or network entity 105 (e.g., base station 140) may additionally or alternatively be performed by one or more components of the decomposed RAN architecture (e.g., IAB node 104, DU 165, CU 160, RU 170, RIC 175, SMO 180).
[0046] UE 115 may include or be referred to as a mobile device, wireless device, remote device, handheld device, or subscriber device, or any other suitable term, wherein "device" may also be referred to as a cell, station, terminal, or client, etc. UE 115 may also include or be referred to as a personal electronic device, such as a cellular phone, personal digital assistant (PDA), tablet computer, laptop computer, or personal computer. In some examples, UE 115 may include or be referred to as a wireless local loop (WLL) station, Internet of Things (IoT) device, Internet of Everything (IoE) device, or machine-type communication (MTC) device, etc., which may be implemented in various objects such as appliances or vehicles, meters, etc.
[0047] The UE 115 described herein can communicate with various types of devices, such as other UEs 115 that may sometimes act as relays, as well as network entities 105 and network equipment including macro eNBs or gNBs, small cell eNBs or gNBs, relay base stations, etc. Figure 1 As shown in the image.
[0048] UE 115 and network entity 105 can wirelessly communicate with each other via one or more communication links 125 (e.g., access links) using resources associated with one or more carriers. The term "carrier" can refer to a set of RF spectrum resources having a defined physical layer structure for supporting communication link 125. For example, a carrier for communication link 125 may include a portion of the RF spectrum band (e.g., a bandwidth portion (BWP)) operating 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 coordinating carrier operation, user data, or other signaling. Wireless communication system 100 can support communication with UE 115 using carrier aggregation or multi-carrier operation. Depending on the carrier aggregation configuration, UE 115 can be configured using multiple downlink component carriers and one or more uplink component carriers. Carrier aggregation can be used in conjunction with both frequency division duplex (FDD) component carriers and time division duplex (TDD) component carriers. Communication between network entity 105 and other devices can refer to communication between a device and any part of network entity 105 (e.g., entity, sub-entity). For example, the terms “send,” “receive,” or “communicate” when referring to network entity 105 can refer to any part of the RAN’s network entity 105 (e.g., base station 140, CU 160, DU 165, RU 170) communicating with another device (e.g., directly or via one or more other network entities 105).
[0049] The communication link 125 shown in the wireless communication system 100 may include downlink transmission (e.g., forward link transmission) from network entity 105 to UE 115, uplink transmission (e.g., return link transmission) from UE 115 to network entity 105, or both, as well as other transmission configurations. A carrier may carry downlink or uplink communication (e.g., in FDD mode), or may be configured to carry both downlink and uplink communication (e.g., in TDD mode).
[0050] The signal waveform transmitted via a carrier can consist of multiple subcarriers (e.g., using multi-carrier modulation (MCM) techniques, such as orthogonal frequency division multiplexing (OFDM) or discrete Fourier transform extended OFDM (DFT-S-OFDM)). In a system employing MCM, a resource element can refer to the resource of one symbol period (e.g., the duration of one modulation symbol) and one subcarrier, in which case the symbol period and subcarrier spacing can be inversely related. The number of bits carried by each resource element can depend on the modulation scheme (e.g., the order of the modulation scheme, the decoding rate of the modulation scheme, or both), such that a relatively high number of resource elements (e.g., in the transmission duration) and a relatively high-order modulation scheme can correspond to a relatively high communication rate. Wireless communication resources can refer to a combination of RF spectrum resources, temporal resources, and spatial resources (e.g., spatial layers, beams), and the use of multiple spatial resources can increase the data rate or data integrity of communication with UE 115.
[0051] The time interval for network entity 105 or UE 115 can be expressed as a multiple of a basic time unit, such as the sampling period. seconds, of which It can represent the supported subcarrier spacing, and This can represent the supported Discrete Fourier Transform (DFT) size. The time interval of a communication resource can be organized according to radio frames, each with a specific duration (e.g., 10 milliseconds (ms)). Each radio frame can be identified by a System Frame Number (SFN) (e.g., ranging from 0 to 1023).
[0052] Each frame may include multiple consecutively numbered subframes or time slots, and each subframe or time slot may have the same duration. In some examples, a frame may (e.g., in the time domain) be divided into subframes, and each subframe may be further divided into multiple time slots. Alternatively, each frame may include a variable number of time slots, and the number of time slots may depend on the subcarrier spacing. Each time slot may include multiple symbol periods (e.g., depending on the length of the cyclic prefix added before each symbol period). In some wireless communication systems 100, time slots may be further divided into multiple micro-time slots associated with one or more symbols. Excluding the cyclic prefix, each symbol period may be associated with one or more (e.g., The duration of the symbol period is related to the sampling period. The duration of the symbol period can depend on the subcarrier spacing or the operating frequency band.
[0053] A subframe, time slot, mini-time slot, or symbol may be the smallest scheduling unit of the wireless communication system 100 (e.g., in the time domain) and may be referred to as a Transmission Time Interval (TTI). In some examples, the duration of the TTI (e.g., the number of symbol periods in the TTI) may be variable. Additionally or alternatively, the smallest scheduling unit of the wireless communication system 100 may be dynamically selected (e.g., in a burst form of a shortened TTI (sTTI)).
[0054] Depending on the technology, carriers can be used to multiplex physical channels for communication. For example, one or more of Time Division Multiplexing (TDM), Frequency Division Multiplexing (FDM), or hybrid TDM-FDM techniques can be used to multiplex physical control channels and physical data channels for signaling via a downlink carrier. The control region (e.g., a control resource set (CORESET)) used for the physical control channel can be defined by a set of symbol periods and can extend across the system bandwidth or a subset of the system bandwidth of the carrier. One or more control regions (e.g., CORESETs) can be configured for a set of UEs 115. For example, one or more UEs in UE 115 can monitor or search for control regions to obtain control information based on one or more search space sets, and each search space set can include one or more control channel candidates from one or more aggregation levels arranged in a concatenated manner. The aggregation level for the control channel candidates can refer to the amount of control channel resources (e.g., control channel elements (CCEs)) associated with coded information for a control information format having a given payload size. The search space set may include: a common search space set configured to transmit control information to multiple UEs 115, and a UE-specific search space set used to transmit control information to a specific UE 115.
[0055] In some examples, network entity 105 (e.g., base station 140, RU 170) may be mobile, and thus provide communication coverage to mobile coverage areas 110. In some examples, different coverage areas 110 associated with different technologies may overlap, but the different coverage areas 110 may be supported by the same network entity 105. In some other examples, overlapping coverage areas 110 associated with different technologies may be supported by different network entities 105. The wireless communication system 100 may include, for example, a heterogeneous network in which different types of network entities 105 use the same or different radio access technologies to provide coverage for various coverage areas 110.
[0056] Wireless communication system 100 may be configured to support ultra-reliable communication or low-latency communication, or various combinations thereof. For example, wireless communication system 100 may be configured to support ultra-reliable low-latency communication (URLLC). UE 115 may be designed to support ultra-reliable or low-latency or critical functions. Ultra-reliable communication may include private or group communication and may be supported by one or more services, such as push-to-talk, video, or data. Support for ultra-reliable, low-latency functions may include prioritization of services, and such services may be used for public safety or general business applications. The terms “ultra-reliable,” “low-latency,” and “ultra-reliable low-latency” are used interchangeably herein.
[0057] In some examples, UE 115 may be configured to support direct communication with other UE 115s via device-to-device (D2D) communication link 135 (e.g., according to peer-to-peer (P2P), D2D, or sidelink protocols). In some examples, one or more UE 115s performing D2D communication in a group may be within the coverage area 110 of network entity 105 (e.g., base station 140, RU 170), which may support various aspects of such D2D communication configured (e.g., scheduled) by network entity 105. In some examples, one or more UE 115s in such a group may be outside the coverage area 110 of network entity 105, or may otherwise be unable or not configured to receive transmissions from network entity 105. In some examples, the group of UE 115s communicating via D2D communication may support a one-to-many (1:M) system, where each UE 115 transmits to each of the other UE 115s in the group. In some examples, network entity 105 may facilitate the scheduling of resources used for D2D communication. In other examples, D2D communication may be performed between UEs 115 without involving network entity 105.
[0058] Core network 130 provides user authentication, access authorization, tracking, Internet Protocol (IP) connectivity, and other access, routing, or mobility functions. Core network 130 can be an evolved packet core (EPC) or a 5G core (5GC). The EPC or 5GC may include at least one control plane entity (e.g., a Mobility Management Entity (MME), Access and Mobility Management Function (AMF)) managing access and mobility, and at least one user plane entity (e.g., a Serving Gateway (S-GW), Packet Data Network (PDN) Gateway (P-GW), or User Plane Function (UPF)) routing packets or interconnecting to external networks. The control plane entity manages non-access stratum (NAS) functions, such as mobility, authentication, and bearer management for UE 115 served by network entity 105 (e.g., base station 140) associated with core network 130. User IP packets can be delivered through the user plane entity, which provides IP address allocation and other functions. The user plane entity can connect to one or more network operator IP services 150. IP services 150 may include access to the Internet, intranets, IP Multimedia Subsystem (IMS), or packet-switched streaming services.
[0059] Wireless communication system 100 can operate using one or more frequency bands in the range of 300 MHz to 300 GHz. Generally, the area from 300 MHz to 3 GHz is referred to as the Ultra High Frequency (UHF) band or decimeter band because the wavelength range is approximately one decimeter to one meter in length. UHF waves may be blocked or redirected by buildings and environmental features (which may be referred to as clusters), but these waves are sufficient to penetrate structures so that macrocells can provide service to UE 115 located indoors. Compared to communication using smaller frequencies and longer waves in the lower HF or VHF portions of the spectrum below 300 MHz, communication using UHF waves can be associated with smaller antennas and shorter distances (e.g., less than 100 km).
[0060] The wireless communication system 100 can also operate in the ultra-high frequency (SHF) region (also known as the centimeter band) ranging from 3 GHz to 30 GHz, or in the extremely high frequency (EHF) region (also known as the millimeter band) of the spectrum (e.g., from 30 GHz to 300 GHz). In some examples, the wireless communication system 100 can support millimeter-wave (mmW) communication between the UE 115 and network entity 105 (e.g., base station 140, RU 170), and the EHF antennas of the corresponding devices can be smaller and more closely spaced than UHF antennas. In some examples, such techniques facilitate the use of antenna arrays within the device. However, compared to SHF or UHF transmission, EHF transmission may experience even greater attenuation and a shorter range. The techniques disclosed herein can be adopted across transmissions using one or more different frequency zones, and the frequency band usage specified across these frequency zones may vary by country or regulatory authority.
[0061] Wireless communication system 100 may utilize both licensed and unlicensed RF spectrum bands. For example, wireless communication system 100 may use unlicensed frequency bands (such as the 5 GHz Industrial, Scientific, and Medical (ISM) band) to employ Licensed Assisted Access (LAA), LTE Unlicensed (LTE-U) radio access technology, or NR technology. When operating with unlicensed RF spectrum, devices such as network entity 105 and UE 115 may employ carrier sensing for collision detection and avoidance. In some examples, operation using unlicensed frequency bands may be based on carrier aggregation configurations combined with component carriers operating with licensed frequency bands (e.g., LAA). Operation using unlicensed spectrum may include downlink transmission, uplink transmission, P2P transmission, or D2D transmission, etc.
[0062] Network entity 105 (e.g., base station 140, RU 170) or UE 115 may be equipped with multiple antennas that can be used to employ techniques such as transmit diversity, receive diversity, multiple-input multiple-output (MIMO) communication, or beamforming. The antennas of network entity 105 or UE 115 may be located within one or more antenna arrays or antenna panels, which can support MIMO operation 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, the antennas or antenna arrays associated with network entity 105 may be located at different geographical locations. Network entity 105 may include an antenna array having a collection of multiple rows and columns of antenna ports that network entity 105 can use to support beamforming for communication with UE 115. Similarly, UE 115 may include one or more antenna arrays that can support various MIMO or beamforming operations. Additionally or alternatively, the antenna panel may support RF beamforming for signals transmitted via the antenna ports.
[0063] Beamforming (also known as spatial filtering, directional transmission, or directional reception) is a signal processing technique used at a transmitting or receiving device (e.g., network entity 105, UE 115) to shape or manipulate an antenna beam (e.g., transmit beam, receive beam) along a spatial path between the transmitting and receiving devices. Beamforming can be achieved by combining signals transmitted via antenna elements of an antenna array such that some signals propagating along a specific orientation relative to the antenna array experience constructive interference, while other signals experience destructive interference. Adjustments to the signals transmitted via the antenna elements may include applying amplitude shifts, phase shifts, or both to the signals carried via the antenna elements associated with the device. The adjustments associated with each antenna element can be defined by a beamforming weight set associated with a specific orientation (e.g., for the antenna array of the transmitting or receiving device, or for some other orientation).
[0064] The wireless communication system 100 can be a packet-based network operating according to a layered protocol stack. In the user plane, communication at the bearer or PDCP layer can be IP-based. The RLC layer performs packet segmentation and reassembly for transmission via logical channels. The MAC layer performs priority processing and multiplexing of logical channels to transport channels. The MAC layer can also implement error detection, error correction, or both to support retransmission and improve link efficiency. In the control plane, the RRC layer can provide the establishment, configuration, and maintenance of RRC connections between the UE 115 and network entity 105 or core network 130 supporting user plane data radio bearers. The PHY layer maps transport channels to physical channels.
[0065] A transmitting device (e.g., network entity 105, UE 115) can encode a set of bits using LDPC codes defined by a basemap and a boosting scheme. The basemap can be defined by variable nodes and check nodes, and the boosting scheme can define the number of copies of the basemap used to generate the LDPC codes and how the basemap and its copies are interconnected (e.g., by defining cyclic shifts associated with the edges of the graph). A receiving device (e.g., network entity 105, UE 115) can receive the encoded set of bits and decode it using LDPC codes. The basemap design can support second-degree variable nodes, which can be variable nodes corresponding to (e.g., connected to) two non-zero check nodes. In some examples, the basemap design may include more second-degree nodes associated with higher-value bits than with lower-value bits (e.g., more second-degree nodes associated with the MSB or second MSB than with the third MSB or LSB). Bits with higher validity can be associated with higher channel reliability, and bits with lower validity can be associated with lower channel reliability.
[0066] Based on the examples described herein, boosting schemes can be designed to support higher-order modulation, where bits can be associated with varying modulation levels. In some examples, boosting schemes can be associated with one or more constraints to improve the reliability and error plateau performance of the LDPC code defined by the boosting scheme. For example, a boosting scheme can be defined such that the minimum length of a cycle with an LDPC code can be constrained to the absence of second-degree variable nodes, the presence of at least one third-degree (or higher) variable in the cycle, or the exclusion of LSBs or combinations thereof from the cycle. Such constraints can support smaller LDPC code girths (e.g., LDPC codes with a girth of six). LDPC codes with relatively small girths can, on average, have relatively small variable node degrees, which can reduce the encoding and / or decoding complexity of LDPC codes as throughput scales, while increasing the reliability associated with the LDPC code.
[0067] In some examples, the boosting scheme can be defined to maximize the weighted encirclement length of the LDPC code. For example, each variable node and check node can be assigned a weight (e.g., associated with the weight), and the weighted length of the cycle can be the sum of the weights of the nodes included in the cycle. The weighted encirclement length of the LDPC code can be the minimum of the weighted lengths of all cycles of the LDPC code (e.g., all cycles of the boosted graph). The weights assigned to variable nodes can be based on the degree of the variable node and / or the reliability of the corresponding bit channel. For example, higher reliability and / or higher degree can correspond to higher weights. Therefore, variable nodes corresponding to lower effective bits and / or lower degree variable nodes can be assigned relatively smaller weights, and are therefore more important when designing boosting schemes for LDPC codes to maximize the weighted encirclement length, which improves the reliability and error plateau performance of bits encoded using this LDPC code.
[0068] Figure 2 A visual example of a sample wireless communication system 200 supporting an enhancement scheme for LDPC codes is shown. The wireless communication system may implement aspects of wireless communication system 100, or may be implemented by aspects of wireless communication system 100. For example, wireless communication system 200 may include wireless devices 205-a and 205-b, which may be examples of corresponding devices described herein (e.g., network entity 105, UE 115). Wireless device 205-a may communicate with wireless device 205-b via communication links 210 and 215. Communication links 210 and 215 may support uplink or downlink communication and / or, in some cases, may be sidelink connections. A device that transmits signal 220 (e.g., a message in the uplink, downlink, or sidelink) may be referred to as a transmitting device, and a device that receives signal 220 (e.g., in the uplink, downlink, or sidelink) may be referred to as a receiving device.
[0069] Wireless communication system 200 can implement forward error correction (FEC) to reduce transmission errors when performing communication over unreliable or noisy channels. In some examples, wireless device 205-a can be a transmitting device and can transmit signal 220 to wireless device 205-b (which can be a receiving device) according to error correction codes. For example, wireless device 205-a can use LDPC codes (such as quasi-cyclic (QC) LDPC codes) to transmit signal 220. LDPC codes can be defined (e.g., described) by a base map 225 (such as a primitive map) and a boosting matrix 230. The base map 225 can capture (e.g., represent, indicate) macroscopic properties of the LDPC code (e.g., thresholds).
[0070] In some examples, the base graph 225 may be represented as a matrix (such as a base matrix). The base graph 225 may include multiple columns and multiple rows. Each column of the base graph 225 may represent (e.g., defined as) a variable node, and each row of the base graph 225 may represent a check node. In some examples, the multiple variable nodes of the base graph 225 may also include multiple information nodes 235, multiple core parity nodes 240, multiple extended parity nodes 245, or combinations thereof. In some examples, the multiple check nodes of the base graph 225 may include multiple core check nodes 250 and multiple extended check nodes 255. Each element in the base graph 225 may be a non-negative integer, where "0" indicates no connection between the corresponding variable node and the check node, "1" indicates one edge (e.g., a connection) between the corresponding variable node and the check node, "2" indicates two edges between the corresponding variable node and the check node, and so on. Figure 2 In the example, the missing number in the elements of base graph 225 indicates that the value of that element is "0".
[0071] Each variable node may be associated with a degree, which may represent the number of check nodes associated with each variable node (e.g., the number of check nodes the variable node is connected to in base graph 225). For example, the degree associated with a variable node may indicate the number of edges in a column of base graph 225 corresponding to the variable node (e.g., the sum of the non-zero elements in the column associated with the variable node). In some examples, the multiple information nodes 235 may include one or more special extended check nodes 265. In some examples, the core parity node 240 and / or the extended parity node 245 may be a chain of two-degree nodes.
[0072] In some examples, the first variable node of base graph 225 may be a truncated information node 260, which may correspond to a non-sending node (e.g., a node where no information is transmitted), and one or more elements of the first variable node may have a value of "2" or higher (e.g., the first variable node may include one or more bilateral connections). In some other examples, the first variable node and the second variable node of base graph 225 may be truncated information node 260.
[0073] LDPC codes can also be defined by a lifting scheme. The lifting scheme can define a lifting matrix 230 (e.g., a lifting value) corresponding to an edge of the base graph 225. In some examples, the lifting scheme can be a collection of all lifting matrices 230 corresponding to the edges of the base graph 225. In some examples, the lifting matrix 230 can be a cyclic identity matrix, and wireless devices 205-a and / or 205-b can lift one or more entries of the base graph 225 according to the cyclic identity matrix (e.g., perform a lifting operation on them). In some examples, the lifting matrix 230 can be a bidiagonal lifting matrix (e.g., a cyclic bidiagonal lifting matrix). An example of a 4×4 bidiagonal lifting matrix is as follows: The cyclic shift associated with the cyclic identity matrix can be indicated by non-zero values in the base graph 225. In some examples, each variable node of the base graph 225 can be associated with the number of coded bits associated with the LDPC code, and the dimension (e.g., width, height, or both) of the lifting matrix 230 can be equal to the number of coded bits. In such examples, wireless device 205-b or both wireless devices 205-a and 205-b can create a number of copies of the base graph 225 equal to the number of coded bits, and several copies of the base graph 225 can be connected via edge permutations, as referenced. Figure 3 As described. In some examples, by performing a boosting operation, wireless device 205-b or both wireless devices 205-a and 205-b can preserve the degree of each coded bit (e.g., the degree distribution of the LDPC code).
[0074] Wireless devices 205-a and 205-b may perform high-order modulation operations (e.g., 256 QAM) to map coded bits to a modulation constellation. In some examples, the mapped coded bits may be associated with an interleaver. Wireless devices 205-a and 205-b may further implement shaping (e.g., probabilistic shaping) to transform a uniform modulation constellation into a non-uniform modulation constellation.
[0075] In some examples, wireless device 205 may utilize higher-order modulation (e.g., 16 QAM, 64 QAM, 256 QAM, 1024 QAM, 4096 QAM) to improve the spectral efficiency of wireless transmission at higher signal-to-noise ratio (SNR) values. In such examples, the constellation of modulation symbols may be fixed (e.g., a square constellation), where each constellation point (e.g., value, symbol) may have the same probability of use as another constellation point (e.g., each constellation point may be used with equal probability). In some examples, as SNR increases, the information rate of uniform modulation (e.g., 16 QAM, 64 QAM, 256 QAM, QPSK) and probabilistic shaping may increase. The optimized constellation distribution may reach a plateau. For example, initially, for a given modulation or shaping scheme, an increase in SNR may lead to an increase in the information rate; however, at some point, SNR may continue to increase while the information rate remains constant. Probabilistic shaping may reach a plateau at the same information rate as 256 QAM and at higher information rates than other uniform QAMs.
[0076] In some cases, the distribution of symbols can be shaped so that different symbols can have different probabilities of use; this distribution can be called a non-uniform distribution of symbols. For example, a non-uniform distribution of symbols may include a first group of symbols with corresponding probabilities of use below a first probability level and a second group of symbols with corresponding probabilities of use above or equal to the first probability level. In such cases, the first group of symbols may include one or more probabilities below the first probability level (e.g., different probabilities below the first probability level), and the second group of symbols may include one or more probabilities above or equal to the first probability level (e.g., different probabilities above or equal to the first probability level).
[0077] One or more probabilistic shaping techniques can be used to shape the non-uniform distribution of symbols (e.g., Gaussian-like distribution, Maxwell-Boltzmann distribution). Probabilistic shaping can be a technique used to improve the spectral efficiency of decoding modulation and can generate non-uniformly distributed decoding modulation symbols or non-uniformly distributed constellations. In some examples, non-uniformly distributed QAM can have higher capacity than uniformly distributed QAM. Such non-uniform distributions can lead to higher transmission capacity, higher spectral efficiency, or generally higher communication quality than uniform symbol distributions. For example, at the same SNR, a non-uniformly distributed constellation can have greater mutual information (e.g., information density) than a uniformly distributed constellation. , by parameters and (Definition) Related. Non-uniformly distributed constellations (e.g., Maxwell-Boltzmann distribution) can maximize the source entropy for a given average power. In such cases, the inner constellations of a non-uniformly distributed constellation can be used at a higher probability level.
[0078] An example of a probabilistic shaping framework could be probabilistic amplitude shaping (PAS) (e.g., distribution matching). PAS can shape the amplitude of a constellation of modulated symbols (e.g., the amplitude can be non-uniform) while simultaneously distributing the symbols of the constellation uniformly. In some examples, PAS can be performed before channel decoding of the information bits. In some examples, PAS can perform shaping on the information bits (e.g., shaping the bits to distribute them into a non-uniform constellation of symbols) and can utilize a systematic channel code. For example, PAS can use a systematic channel code to store the shaping applied to the information bits (e.g., shaping can be stored during channel decoding, which can occur after shaping). In PAS, parity bits may not be shaped but can be mapped to the symbols of the constellation (e.g., these symbols may not be shaped in PAS).
[0079] In some examples, the base graph 225 can be designed to be sparser in terms of average variable node degree than some other base graphs used in lower complexity implementations (e.g., more sparse than those referred to as base graphs in 5G NR systems). Figure 1 (The basemap design of (BG1) is sparser). For example, basemap 225 can be designed to support second-degree variable nodes in information nodes (e.g., core nodes), and the average degree of one or more variable nodes in basemap 225 can be reduced relative to other basemap designs (e.g., becoming sparser). A sparse basemap 225 can be computationally less complex and can result in reduced power consumption at wireless device 205. For example, a basemap 225 that is 13% sparser than another basemap can perform 13% fewer loops in each encoding or decoding iteration. Additionally, basemap 225 can be designed to support more second-degree nodes associated with the MSB than with the lower significant bit (such as the LSB).
[0080] In some examples, base graph 225 can be designed for probabilistic shaping, such as in association with PAS processes. For example, the first basic design (e.g., as...) Figure 2 Example basemap 225 (shown) can be applied to a uniform shaping process, while another basemap design can be applied to a probabilistic shaping process. In such an example, wireless device 205 can perform lifting on the basemap according to a double-diagonal lifting matrix 230. Similar basemap designs as depicted by basemap 225 can be implemented specifically for probabilistic shaping scenarios. However, for probabilistic shaping, parity bits and uncoiled information bits can be mapped to the MSB of the constellation. In such examples, basemap 225 can be changed or adjusted to accommodate the mapping of parity bits and uncoiled information bits to the MSB. In some examples, basemap 225 can be the same for uniform QAM and probabilistic shaping. In some examples, basemap 225 can be different and designed for probabilistic shaping.
[0081] Compared to other base graphs, base graph 225 (and / or a base graph designed for probabilistic shaping) can support improved complexity and performance tradeoffs. In some examples, based on the implementation of LDPC codes generated using sparse base graph 225, one or more communication parameters associated with communication between wireless devices can be improved. For example, the threshold SNR can be reduced relative to the number of modulation iterations, which is normalized relative to the total number of edges in base graph 225.
[0082] Based on the examples described herein, a lifting scheme defining an LDPC code (e.g., lifting matrix 230) can be designed to improve reliability and error plateau performance, for example, by considering the reliability of bits in the design of the lifting scheme (e.g., its cyclic shifts). For example, the lifting scheme can be associated with one or more constraints, such as a cycle defined to have a minimum length for the LDPC code being restricted to the absence of second-degree variable nodes, the presence of at least one third-degree (or higher) variable in the cycle, or the exclusion of LSBs or combinations thereof from the cycle. This document (including references) Figure 4 This section describes additional details regarding the constraints associated with the enhancement scheme. Such constraints can support smaller LDPC code girths (e.g., LDPC codes with a girth of six). LDPC codes with relatively small girths can, on average, have relatively small variable node degrees, which can reduce the encoding and / or decoding complexity of LDPC codes as throughput scales, while increasing the reliability associated with LDPC codes.
[0083] In some examples, the boosting scheme can be defined to maximize the weighted encirclement length of the LDPC code (e.g., designed such that the weighted encirclement length of the LDPC code at least meets a threshold). For example, each variable node and check node can be assigned a weight (e.g., associated with the weight), and the weighted length of the cycle can be the sum of the weights of the nodes included in the cycle. The weighted encirclement length of the LDPC code can be the minimum of the weighted lengths of all cycles of the LDPC code (e.g., all cycles of the boosted graph). The weights assigned to variable nodes can be based on the degree of the variable node and / or the reliability of the corresponding bit channel. For example, higher reliability and higher degree can correspond to higher weights. Therefore, variable nodes corresponding to lower effective bits and / or lower degree variable nodes can be assigned relatively smaller weights, and are therefore more important when designing boosting schemes for LDPC codes to maximize the weighted encirclement length, which can improve the reliability and error plateau performance of bits encoded using this LDPC code. This document (including references) Figure 5 This describes additional details related to maximizing the weighted perimeter.
[0084] In some examples, different boosting schemes (e.g., for encoding or decoding bits of signal 220) may be used by wireless device 205 depending on the different modulation orders it uses for communication. That is, wireless device 205 may use different LDPC codes defined by different boosting schemes (e.g., generated using different boosting schemes) depending on the different modulation orders used to transmit signal 220. In some examples, the base map defining the different LDPC codes may be the same across different modulation orders. In some examples, a first boosting scheme may be used for modulation schemes with modulation orders that satisfy (e.g., greater than, greater than, or equal to) a threshold modulation order, and a second boosting scheme may be used for modulation schemes with modulation orders that do not satisfy (e.g., less than, less than, or equal to) a threshold modulation order.
[0085] In some examples, the lifting scheme may be designed for uniform QAM and / or probabilistic shaping. For example, if the base map 225 is designed for uniform QAM, a first lifting scheme designed for uniform QAM may be used to generate LDPC codes. If the base map 225 is designed for probabilistic shaping, a second lifting scheme designed for probabilistic shaping may be used to generate LDPC codes. In some examples, if the base map 225 is the same for both uniform QAM and probabilistic shaping, the same lifting scheme may be used. In other examples, the same base map 225 may be used for both uniform QAM and probabilistic shaping, but different lifting schemes designed for uniform QAM and probabilistic shaping, respectively, may be used to generate the corresponding LDPC codes. That is, in some examples, different LDPC codes for uniform QAM and probabilistic shaping may be associated with the same base map but with different lifting schemes.
[0086] In some examples, the use of LDPC codes defined by base map 225 and the enhancement schemes described herein can be activated or deactivated via signaling. For example, radio device 205-a can send signaling (or vice versa) to radio device 205-b, such as downlink control information (DCI), RRC signaling, or MAC control element (MAC-CE), to activate or deactivate the use of LDPC codes. Additionally or alternatively, another radio device 205 can send signaling to radio devices 205-a and 205-b (e.g., network entity 105 sends signaling to two UEs 115).
[0087] In some examples, the use of LDPC codes defined by base map 225 and the enhancement scheme described herein can be conditional on both the transmitting and receiving devices supporting the use of LDPC codes. In some examples, radio device 205 (such as UE 115) may send capability signaling (e.g., capability report) to another radio device 205 (such as network entity 105) to indicate its support for (or lack thereof) LDPC codes.
[0088] Figure 3 A lifting diagram 300 for an example lifting scheme used for LDPC codes is shown. Lifting diagram 300 can be implemented as referenced. Figure 1 and Figure 2 Aspects of the described wireless communication system 100 or 200 may be implemented by aspects of these wireless communication systems. For example, lift figure 300 may be implemented by wireless device 205 to generate LDPC codes. In some examples, LDPC codes may be generated according to lift figure 300, and wireless device 205 may store or otherwise access the LDPC codes (e.g., without generating the LDPC codes at wireless device 205).
[0089] In some examples, a base plot such as base plot 225 can be represented as a Tanner plot. For example, with reference... Figure 2 Compared to the matrix representation of base graph 225, base graph 305 can be an example of a Tanner graph representation of the base graph. Note that base graph 305 is not... Figure 2 The base graph 225 depicted is a Tanner graph representation, but for clarity, another base graph is represented. Base graph 305 may include check nodes 310 and variable nodes 315, and the Tanner graph depicts the edges 320 between the corresponding check nodes 310 and variable nodes 315, where the edges 320 may correspond to the non-zero elements of the matrix representation of the base graph.
[0090] exist Figure 3 In the example, base graph 305-a may include verification nodes 310-a, 310-b, and 310-c, and variable nodes 315-a, 315-b, 315-c, and 315-d. Before the promotion operation 325, variable node 315-a may be connected to verification nodes 310-a and 310-b; variable node 315-b may be connected to verification nodes 310-a and 310-c; variable node 315-c may be connected to verification nodes 310-a, 310-b, and 310-c; and variable node 315-d may be connected to verification nodes 310-b and 310-c. Therefore, variable nodes 315-a, 315-b, and 315-d may be second-degree nodes, while variable node 315-c may be a third-degree node.
[0091] The base map 305-a can be boosted according to a boosting scheme that defines the number of copies of the base map 305-a used to generate the LDPC code and the corresponding cyclic shifts associated with the variable node 315 and check node 310 connected to the base map 305-a and the copy 306 of the base map 305-a. For example, in Figure 3In the example, the lifting scheme may define the use of copies 306-a and 306-b of base graph 305-a, and how base graph 305-a and copies 306-a and 306-b are interconnected to generate LDPC codes. For example, the lifting scheme may define how to permutate edge 320 of base graph 305-a and copy 306 to interconnect base graph 305-a and copy 306. Cyclic shifts defined by the lifting scheme may define permutations of edge 320. For example, cyclic shifts may define cyclic permutations of edge 320 (e.g., rather than arbitrary permutations of edge 320).
[0092] exist Figure 3 In the example, a first permutation of edge 320 of the first variable node 315 is depicted. For example, copy 306-a may include check nodes 310-d, 310-e, and 310-f, and variable nodes 315-e, 315-f, 315-g, and 315-h. Copy 306-b may include check nodes 310-g, 310-h, and 310-i, and variable nodes 315-i, 315-j, 315-k, and 315-l. Edges 320 between variable nodes 315 and check nodes 310 corresponding to the same variable node 315 and check node 310 in the base graph 305 may be permuted. For example, edge 320 from variable node 315-a to check node 310-a may be permuted to edge 320 from variable node 315-a to check node 310-d. Similarly, edge 320 from variable node 315-e to check node 310-d can be replaced with edge 320 to check node 310-g, and edge 320 from variable node 315-i to check node 310-g can be replaced with edge to check node 310-a. Note that the lifting graph 300 depicts a single permutation of edge 320 for clarity, and additional permutations of edge 320 can be performed according to the lifting scheme to generate a lifted graph that may correspond to an LDPC code.
[0093] In some cases, the performance of the boosting scheme can be improved if the gravitational length of the resulting LDPC code (e.g., the length of the minimum cycle in the boosted graph) is increased. In some examples, the degree of each variable node in the cycle is also considered in the design of the boosting scheme. For example, increasing the length of cycles that include all variable nodes that are second-degree variable nodes can, for instance, improve the performance of the boosting scheme by reducing the probability of errors in these cycles, which may be referred to as a trap set and associated with a higher error probability.
[0094] When designing enhancement schemes, the reliability of the bits corresponding to the variable nodes can be considered, thereby improving reliability and error plateau performance in conjunction with the use of higher-order modulation schemes. For example, enhancement schemes can be defined based on one or more constraints, as included in this document's references. Figure 4As described herein. Additionally or alternatively, the enhancement scheme may be defined as increasing (e.g., maximizing) the minimum weighted bounding length of the resulting LDPC code, as included in the references herein. Figure 5 As described.
[0095] Figure 4 A cyclic diagram 400 for an example lifting scheme for LDPC codes is shown. Cyclic diagram 400 can be implemented as referenced. Figure 1 and Figure 2 The aspects of the described wireless communication system 100 or 200 may be implemented by aspects of these wireless communication systems. For example, cycle diagram 400 depicts various cycles 405 that may be included in a raised diagram generated according to the raised scheme associated with the generation of LDPC codes described herein.
[0096] The enhancement scheme can be designed according to one or more constraints to improve the reliability and error plateau performance associated with the resulting LDPC code used to encode and / or decode bits for signaling between wireless devices. For example, the base map and enhancement scheme can be designed such that the girth of the corresponding LDPC code is reduced relative to other base maps and enhancement schemes. For example, in some cases, other base maps and enhancement schemes can be designed such that the girth is eight. In some examples, the base map and enhancement scheme can be designed such that the corresponding LDPC code may include cycles of shorter lengths, such as cycles of length six. Such designs enable the use of sparser base maps to support lower complexity implementations and throughput scaling, as referenced. Figure 2 As described.
[0097] In some cases, shorter cycle lengths can be associated with relatively lower reliability. For example, bits corresponding to variable nodes included in a relatively short cycle may have lower reliability than bits corresponding to variable nodes included in a relatively long cycle. Additionally or alternatively, in some examples, such as when using a higher-order modulation scheme, one or more coded bits associated with an LDPC code can be transmitted or received through different channels. Each channel can be associated with reliability. In some cases (e.g., higher-order QAM), one or more bits may occupy the same modulation symbol in time. In such cases, the first bit associated with a first modulation level may have a different validity than the second bit associated with a second modulation level. For example, bits coded according to a modulation scheme may be associated with one of multiple modulation levels, such as level 1 430 (e.g., MSB), level 2 435 (e.g., second MSB), level 3 440 (e.g., third MSB), and level 4 445 (e.g., LSB). In such examples, lower values associated with modulation levels can correspond to higher bit validity and higher reliability (e.g., the MSB can be associated with modulation level 1, which has the highest reliability, while the LSB can be associated with modulation level 4, which has the lowest reliability). For example, the MSB can be associated with the most reliable bit position of the modulation scheme, the second MSB can be associated with the second most reliable bit position of the modulation scheme, and so on, such that the LSB can be associated with the least reliable bit position of the modulation scheme.
[0098] The cyclic shifts of the lifting scheme can be defined according to one or more constraints, such that the reliability of the bits included in the minimum-length cycle (e.g., a cycle of length six) can be increased. For example, cycle diagram 400 depicts cycles 405-a, 405-b, and 405-c. Cycle 405 can be an example of a minimum-length cycle included in an LDPC code as defined by the base diagram and lifting scheme described herein. The minimum-length cycle can be cycle 405 associated with the circumference of the LDPC code (e.g., having the circumference of the LDPC code). Figure 4 In the example, loop 405 can be a loop of length six, which includes three check nodes 410 and three variable nodes 415 connected by corresponding edges 420.
[0099] In some examples, one or more constraints may restrict the inclusion of second-degree variable nodes 415 in a minimum-length loop. For example, loop 405-a may include three variable nodes 415, each of which is at least a third-degree variable node 415. That is, each variable node 415 in loop 405-a may be a third-degree variable node 415 or a higher-degree node 415, such that second-degree variable nodes are excluded from loop 405-a.
[0100] In some examples, one or more constraints may restrict the inclusion of variable nodes associated with LSBs in a minimum-length cycle. For example, cycle 405-b may include three variable nodes 415, none of which correspond to an LSB (e.g., the bit associated with level 4445). For example, depending on one or more constraints, cycle 405-b may exclude variable node 415 that corresponds to an LSB.
[0101] In some examples, one or more constraints may indicate that at least one variable node 415 included in the minimum length loop is a tertiary or higher-order variable node 415. For example, one or more constraints may indicate that if at least one tertiary or higher-order variable node 415 is also included in the minimum length loop, then one or more tertiary variable nodes 415 may be included in the minimum length loop. For example, loop 405-c may include three variable nodes 415, and at least one of the three variable nodes 415 (e.g., variable node 415-a) is a tertiary or higher-order variable node 415. In the example of loop 405-c, variable node 415-a may be a tertiary variable node.
[0102] In some examples, one or more constraints may indicate that a second-degree variable node 415 may be included in a minimum-length cycle, but a second-degree variable node 415 associated with an LSB may not be included in the minimum-length cycle. For example, cycle 405-b may include second-degree variable nodes 415, none of which correspond to an LSB. For example, in Figure 4 In the example, each second-degree variable node included in loop 405-b is associated with a modulation level of level 3 or higher.
[0103] Various combinations of constraints are possible. For example, loop 405-a may include variable nodes 415 associated with the LSB, but may be subject to the constraint of excluding second-degree variable nodes 415 from the minimum-length loop. Loop 405-b may include excluding third-degree or higher variable nodes 415, but may be subject to the constraint of excluding variable nodes 415 associated with the LSB from the minimum-length loop. Other combinations of constraints are possible.
[0104] Defining cyclic shifts of lifting schemes according to one or more constraints described herein can increase reliability and improve the error plateau performance of LDPC codes defined by the lifting scheme. For example, trap set cycles with minimum lengths can be avoided by restricting minimum-length cycles to include one or more variable nodes of degree three or higher, thereby increasing the reliability of the bits corresponding to the nodes included in the minimum-length cycles. Additionally or alternatively, the bits included in the minimum-length cycles can be restricted such that lower (e.g., least reliable) bits are excluded from the minimum-length cycles.
[0105] Figure 5 A cyclic diagram 500 is shown as an example lifting scheme for LDPC codes. Cyclic diagram 400 can be implemented as referenced. Figure 1 and Figure 2 The aspects of the described wireless communication system 100 or 200 may be implemented by aspects of these wireless communication systems. For example, cycle diagram 400 depicts various cycles 405 that may be included in a raised diagram generated according to the raised scheme associated with the generation of LDPC codes described herein.
[0106] The enhancement scheme can be designed to increase (e.g., maximize) the weighted bounding length of the resulting LDPC code to improve the reliability and error plateau performance associated with the LDPC code. For example, as referenced... Figure 4 As described, the coded bits associated with the LDPC code can be associated with varying levels of reliability, such as due to the implementation of a higher-order modulation scheme with multiple modulation levels. Each coded bit can correspond to a specific modulation level of the higher-order modulation scheme. For example, a bit coded according to a modulation scheme can be associated with one of multiple modulation levels, such as level 1 530 (e.g., MSB), level 2 535 (e.g., second MSB), level 3 540 (e.g., third MSB), and level 4 545 (e.g., LSB). In such examples, lower values associated with the modulation level can correspond to higher bit validity and higher reliability (e.g., MSB can be associated with modulation level 1, which has the highest reliability, while LSB can be associated with modulation level 4, which has the lowest reliability).
[0107] In some other examples, the coded bits associated with an LDPC code may be associated with the same level of reliability. For example, for a low-order modulation scheme in which each bit is transmitted or received through the same channel (e.g., a QPSK modulation scheme), each bit may be associated with the same modulation level (such as level 550).
[0108] Cyclic graph 500 depicts cycles 505-a and 505-b. Each cycle 505 may include a variety of numbers of check nodes 510 and variable nodes 515 connected by corresponding edges 520. Cycle 505 may be an example of a cycle included in an LDPC code that is associated with (e.g., has) a weighted encirclement length of the LDPC code. Cyclic shifts of the lifting scheme may be defined to increase (e.g., maximize) the weighted encirclement length of the corresponding LDPC code. For example, a cyclic shift may be defined such that the weighted length of cycle 505 satisfies (e.g., greater than, greater than, or equal to) a threshold weighted encirclement length (e.g., threshold weighted cycle length).
[0109] Weights can be assigned to the nodes in loop 505, and these weights can be used to determine (e.g., compute) the weighted length of loop 505 (e.g., instead of the length of loop 505 corresponding to the number of nodes included in loop 505). For example, the weighted length of loop 505 could be the sum of the weights of the nodes included in loop 505. A corresponding variable node 515 can be associated with weights defined based on the reliability (e.g., modulation level) of one or more bits corresponding to variable node 515 and / or the degree of variable node 515. In some examples, a corresponding parity node 515 can similarly be associated with weights defined based on the reliability of one or more bits corresponding to parity node 510 and / or the degree of parity node 510. In some other examples, each parity node 510 can be associated with the same weight (e.g., assigned the same weight).
[0110] In some examples, higher-degree variable nodes 515 can be assigned higher weights than lower-degree variable nodes 515. For example, a third-degree variable node 515 can be assigned a higher weight than a second-degree variable node 515, a fourth-degree variable node 515 can be assigned a higher weight than a third-degree variable node, and so on. In some examples, higher-degree validation nodes 510 can similarly be associated with higher weights than lower-degree validation nodes 510.
[0111] In some examples, variable node 515 associated with more significant bits (e.g., higher reliability) may be assigned a higher weight than variable nodes associated with less significant bits. For example, variable node 515 corresponding to one or more LSBs may be assigned a lower weight than variable node 515 corresponding to one or more third MSBs, and so on. In some examples, check node 510 associated with more significant bits may similarly be assigned a higher weight than check node 510 associated with less significant bits.
[0112] In some examples, weighting may consider both the degree of variable node 515 and the reliability associated with variable node 515. For example, cycle 505-a may be associated with a modulation scheme in which coded bits may be associated with different reliability levels (such as level 1 530 to level 4 545). Here, the weights assigned to variable nodes 515 in cycle 505-a may be defined based on the corresponding degree of each variable node 515 and the reliability (e.g., modulation level) of one or more bits corresponding to variable node 515. For example, the modulation order of the modulation scheme associated with cycle 505-a may satisfy (e.g., greater than, greater than, or equal to) a threshold order, such that corresponding weights are defined based on the corresponding degree and reliability. In some examples, the threshold order may correspond to a modulation order, which, if satisfied, corresponds to coded bits transmitted or received through different channels. In some examples, weighting may similarly consider both the degree of check node 510 and the reliability associated with check node 510.
[0113] In some examples, the degree of variable node 515 may be considered more in the weighting of variable node 515 than the reliability associated with variable node 515. For example, even if the reliability associated with the second variable node 515 is higher than the reliability associated with the first variable node 515 (e.g., the second variable node 515 corresponds to a bit that is more effective than the bit corresponding to the first variable node 515), the first weight of the first variable node 515, which has a higher degree than the second variable node 515, may be higher than the second weight of the second variable node 515. In some examples, the degree of check node 510 may similarly be considered more in the weighting of check node 510 than the reliability associated with check node 510.
[0114] In some other examples, the reliability associated with variable node 515 may be considered in the weighting of variable node 515 more than the degree of variable node 515. For example, even if the degree of the second variable node 515 is higher than the degree of the first variable node 515 (e.g., the first variable node 515 corresponds to a bit that is more effective than the bit corresponding to the second variable node 515), the first weight of the first variable node 515 associated with a first reliability that is higher than the second reliability associated with the second variable node 515 may be higher than the second weight of the second variable node 515. In some examples, the reliability associated with check node 510 may similarly be considered in the weighting of check node 510 more than the degree of check node 510.
[0115] Cycle 505-b may be associated with a modulation scheme in which coded bits may be associated with the same reliability level (such as level 550). Here, the weights assigned to variable nodes 515 in cycle 505-b may be defined based on the responsiveness of each variable node 515. For example, the modulation order of the modulation scheme associated with cycle 505-a may not satisfy (e.g., less than, less than, or equal to) a threshold order, such that corresponding weights are defined based on responsiveness and reliability. In some examples, the threshold order may correspond to the modulation order, or if not, the modulation order may correspond to the coded bits transmitted or received through the same channel. Thus, the reliability associated with each variable node 515 may be the same, and the weight allocation may be based solely on the responsiveness of each variable node 515. Similarly, in some examples, the reliability associated with each check node 510 may be the same, and the weight allocation may be based solely on the responsiveness of each check node 510.
[0116] Various weighting schemes are possible. For example, weights can be ordered relative to degree, as depicted in Table 1 below. In some other examples, weights can increase relative to higher channel reliability, as depicted in Tables 2 through 4 below.
[0117] Table 1
[0118] Table 2
[0119] Table 3
[0120] Table 4 As depicted in Table 1, higher-degree variable nodes 515 (e.g., and / or check nodes 510) can be assigned higher weights than lower-degree variable nodes, regardless of the reliability associated with the variable node. Additionally, the weights assigned to variable nodes 515 of the same degree can increase with increasing associated reliability.
[0121] Tables 2 through 4 illustrate various examples of increments that can be added to the weights based on the increased reliability. For example, the weights can increase as the degree of variable node 515 (e.g., and / or check node 510) increases, and each degree can correspond to a corresponding weight. Based on the reliability of the variable node, the increased increments can be added to the weights corresponding to the degree of the variable node.
[0122] In some examples, the weights assigned to variable node 515 and / or check node 510 may vary depending on whether the node is a pruned node. For example, the weight of a pruned node may be fixed (e.g., regardless of the degree of the pruned node). In the example weight allocation scheme in Table 1, the weight assigned to a pruned node may be 16, while in the example weight allocation schemes in Tables 2 through 4, the weight assigned to a pruned node may be 5; however, fixed weights of any value may be used.
[0123] In some examples, the threshold-weighted bounding length to be satisfied may depend on the weighting scheme implemented. For example, the threshold-weighted bounding length associated with Table 1 may be higher than that associated with Tables 2 through 4. Additionally, depending on the use of a higher increment value, the threshold-weighted bounding length of Table 4 may be higher than that of Table 3, and so on.
[0124] By defining a cyclic shift to increase the weighted bounding length of the corresponding LDPC code (e.g., a minimum weighted cyclic length), smaller weights can be assigned to lower-degree variable nodes 515 and / or variable nodes 515 associated with lower reliability. Additionally or alternatively, smaller weights can be assigned to lower-degree check nodes 510 and / or check nodes 510 associated with lower reliability. Therefore, these variable nodes 515 and / or check nodes 510 may be more important when designing boosting schemes to increase the weighted bounding length of the corresponding LDPC code, which can improve the reliability and error plateau performance of bits encoded using this LDPC code.
[0125] Figure 6 An example process flow 600 supporting a boosting scheme for LDPC codes is shown. Process flow 600 can be implemented as described in the references herein. Figure 1 and Figure 2 The described aspects of wireless communication system 100 and wireless communication system 200 may be implemented therein. For example, process flow 600 may be implemented by wireless devices 605-a and 605-b, which may be examples of network entity 105 or UE 115. A device that transmits signals or messages (e.g., in an uplink, downlink, or sidelink) may be referred to as a transmitting device, and a device that receives transmitted signals (e.g., in an uplink, downlink, or sidelink) may be referred to as a receiving device.
[0126] In the following description of process flow 600, operations between wireless devices 605 may be sent in a different order than the example order shown, or operations between wireless devices 605 may be performed at different times and in different orders. Some operations may also be omitted from process flow 600, and other operations may be added to process flow 600.
[0127] At 610, wireless device 605-a may select an LDPC code for encoding the bit set. For example, wireless device 605-a may store or otherwise access the LDPC code set. In some examples, wireless device 605-a may select an LDPC code based on the modulation order of the modulation scheme associated with encoding the bit set. For example, if the modulation order satisfies a threshold modulation order, wireless device 605-a may select a first LDPC code defined by a first boosting scheme. If the modulation order fails to satisfy the threshold modulation order, wireless device 605-a may select a second LDPC code defined by a second boosting scheme.
[0128] At 615, the wireless device 605-a can use a selected LDPC code to encode the bit set. The LDPC code can be defined by a lifting scheme according to one or more constraints and / or such that the weighted bounding length of the LDPC code satisfies a threshold weighted bounding length.
[0129] At 620, wireless device 605-a can send a signal including an encoded set of bits to wireless device 605-b.
[0130] At 625, wireless device 605-b can receive the signal and select an LDPC code to decode the encoded bit set. For example, wireless device 605-b can store or otherwise access the LDPC code set. Wireless device 605-b can select an LDPC code from the LDPC code set based on the modulation order of the modulation scheme associated with decoding the bit set, which can be the same modulation scheme used by wireless device 605-a to encode the bit set.
[0131] At 630, the wireless device 605-b can use LDPC code to decode this bit.
[0132] Figure 7 A block diagram of an example wireless communication device 705 supporting an enhancement scheme for LDPC codes is shown. Device 705 may be an example of aspects of UE 115 or network entity 105 as described herein. Device 705 may include a receiver 710, a transmitter 715, and a communication manager 720. Device 705, or one or more components of device 705 (e.g., receiver 710, transmitter 715, and communication manager 720), may include at least one processor that may be coupled to at least one memory to individually or jointly support or implement the described techniques. Each of these components may communicate with each other (e.g., via one or more buses).
[0133] Receiver 710 may provide components for receiving information (such as packets, user data, control information, or any combination thereof) associated with various information channels (e.g., control channels, data channels, information channels related to the boosting scheme for LDPC codes). The information may be transmitted to other components of device 705. Receiver 710 may utilize a single antenna or a collection of antennas.
[0134] Transmitter 715 may provide components for transmitting signals generated by other components of device 705. For example, transmitter 715 may transmit information (such as packets, user data, control information, or any combination thereof) associated with various information channels (e.g., control channels, data channels, information channels related to a boosting scheme for LDPC codes). In some examples, transmitter 715 may be co-located with receiver 710 in a transceiver module. Transmitter 715 may utilize a single antenna or a collection of multiple antennas.
[0135] The communication manager 720, receiver 710, transmitter 715, or various combinations thereof, or various components thereof, may be examples of parts for performing various aspects of the lift scheme for LDPC codes as described herein. For example, the communication manager 720, receiver 710, transmitter 715, or various combinations thereof, or components thereof, may be able to perform one or more of the functions described herein.
[0136] In some examples, the communication manager 720, receiver 710, transmitter 715, or various combinations or components thereof may be implemented in hardware (e.g., in communication management circuitry). The hardware may include at least one of the following: a processor, digital signal processor (DSP), central processing unit (CPU), application-specific integrated circuit (ASIC), field-programmable gate array (FPGA) or other programmable logic device, microcontroller, discrete gate or transistor logic component, discrete hardware component, or any combination thereof, configured as or otherwise individually or collectively to support components for performing the functions described herein. In some examples, at least one processor and at least one memory coupled to said at least one processor may be configured to perform one or more of the functions described herein (e.g., instructions stored in at least one memory are executed individually or collectively by one or more processors).
[0137] Additionally or alternatively, the communication manager 720, receiver 710, transmitter 715, or various combinations or components thereof may be implemented in code executed by at least one processor (e.g., as communication management software or firmware). If implemented in code executed by at least one processor, the functionality of the communication manager 720, receiver 710, transmitter 715, or various combinations or components thereof may be performed by a general-purpose processor, DSP, CPU, ASIC, FPGA, microcontroller, or any combination of these or other programmable logic devices (e.g., configured as or otherwise individually or jointly to support components for performing the functions described in this disclosure).
[0138] In some examples, the communication manager 720 may be configured to use or otherwise cooperate with the receiver 710, transmitter 715, or both to perform various operations (e.g., receiving, acquiring, monitoring, outputting, transmitting). For example, the communication manager 720 may receive information from the receiver 710, transmit information to the transmitter 715, or be integrated in combination with the receiver 710, transmitter 715, or both to acquire information, output information, or perform various other operations as described herein.
[0139] According to the examples disclosed herein, the communication manager 720 may support wireless communication. For example, the communication manager 720 is capable of, configured to, or operable to support components for encoding a set of bits according to an LDPC code associated with (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and check nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with restrictions on second-order variable nodes, nodes associated with the least significant bit in the bit set, or combinations thereof. The communication manager 720 is capable of, configured to, or operable to support components for transmitting a signal comprising the encoded bit set.
[0140] Additionally or alternatively, the communication manager 720 may support wireless communication according to examples disclosed herein. For example, the communication manager 720 is capable of, configured to, or operable to support components for receiving signals comprising an encoded set of bits. The communication manager 720 is capable of, configured to, or operable to support components for decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-degree variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a constraint on second-degree variable nodes, nodes associated with the least significant bit in the encoded set of bits, or combinations thereof.
[0141] Additionally or alternatively, the communication manager 720 may support wireless communication according to examples disclosed herein. For example, the communication manager 720 is capable of, configured to, or operable to support components for encoding a set of bits according to an LDPC code associated with (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and parity nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding responsiveness of the variable node and the corresponding reliability of the bits corresponding to the variable node. The communication manager 720 is capable of, configured to, or operable to support components for transmitting a signal comprising the encoded set of bits.
[0142] Additionally or alternatively, the communication manager 720 may support wireless communication according to examples disclosed herein. For example, the communication manager 720 is capable of, configured to, or operable to support components for receiving signals comprising an encoded set of bits. The communication manager 720 is capable of, configured to, or operable to support components for decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and parity nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bits corresponding to the variable node.
[0143] By including or configuring a communication manager 720 according to an example as described herein, device 705 (e.g., at least one processor that controls or otherwise couples to receiver 710, transmitter 715, communication manager 720, or a combination thereof) can support techniques for reducing processing, lowering power consumption, and reducing decoding complexity.
[0144] Figure 8 A block diagram of an example wireless communication device 805 supporting an enhancement scheme for LDPC codes is shown. Device 805 may be an example of aspects of device 705, UE 115, or network entity 105 as described herein. Device 805 may include receiver 810, transmitter 815, and communication manager 820. Device 805, or one or more components of device 805 (e.g., receiver 810, transmitter 815, and communication manager 820), may include at least one processor that may be coupled to at least one memory to support the described techniques. Each of these components may communicate with each other (e.g., via one or more buses).
[0145] Receiver 810 may provide components for receiving information (such as packets, user data, control information, or any combination thereof) associated with various information channels (e.g., control channels, data channels, information channels related to the boosting scheme for LDPC codes). The information may be passed to other components of device 805. Receiver 810 may utilize a single antenna or a collection of antennas.
[0146] Transmitter 815 may provide components for transmitting signals generated by other components of device 805. For example, transmitter 815 may transmit information (such as packets, user data, control information, or any combination thereof) associated with various information channels (e.g., control channels, data channels, information channels related to a boosting scheme for LDPC codes). In some examples, transmitter 815 may be co-located with receiver 810 in a transceiver module. Transmitter 815 may utilize a single antenna or a collection of multiple antennas.
[0147] Device 805 or its various components may be examples of parts for performing various aspects of the boosting scheme for LDPC codes as described herein. For example, communication manager 820 may include encoding component 825, transmitting component 830, receiving component 835, decoding component 840, or any combination thereof. Communication manager 820 may be examples of aspects of communication manager 720 as described herein. In some examples, communication manager 820 or its various components may be configured to use or otherwise cooperate with receiver 810, transmitter 815, or both to perform various operations (e.g., receiving, acquiring, monitoring, outputting, transmitting). For example, communication manager 820 may receive information from receiver 810, transmit information to transmitter 815, or be integrated in combination with receiver 810, transmitter 815, or both to acquire information, output information, or perform various other operations as described herein.
[0148] According to the examples disclosed herein, the communication manager 820 may support wireless communication. The encoding component 825 is capable of, configured to, or operable to support components for encoding a set of bits according to an LDPC code associated with (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with the minimum length of the LDPC code are associated with restrictions on second-order variable nodes, nodes associated with the least significant bit in the set of bits, or combinations thereof. The transmitting component 830 is capable of, configured to, or operable to support components for transmitting a signal comprising the encoded set of bits.
[0149] Additionally or alternatively, the communication manager 820 may support wireless communication according to examples disclosed herein. The receiving component 835 is capable of, configured to, or operable to support components for receiving signals comprising an encoded set of bits. The decoding component 840 is capable of, configured to, or operable to support components for decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a constraint on second-order variable nodes, nodes associated with the least significant bit in the encoded set of bits, or combinations thereof.
[0150] Additionally or alternatively, the communication manager 820 may support wireless communication according to examples disclosed herein. The encoding component 825 is capable of, configured to, or operable to support components for encoding a set of bits according to an LDPC code associated with (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and parity nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that the weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding responsiveness of the variable node and the corresponding reliability of the bits corresponding to the variable node. The transmitting component 830 is capable of, configured to, or operable to support components for transmitting a signal comprising the encoded set of bits.
[0151] Additionally or alternatively, the communication manager 820 may support wireless communication according to examples disclosed herein. The receiving component 835 is capable of, configured to, or operable to support components for receiving signals comprising an encoded set of bits. The decoding component 840 is capable of, configured to, or operable to support components for decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and parity nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that the weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bits corresponding to the variable node.
[0152] Figure 9 A block diagram of an example communication manager 920 supporting a boosting scheme for LDPC codes is shown. The communication manager 920, or its various components, can be examples of parts used to perform various aspects of the boosting scheme for LDPC codes as described herein. For example, the communication manager 920 may include an encoding component 925, a transmitting component 930, a receiving component 935, a decoding component 940, or any combination thereof. Each of these components, or its components or sub-components (e.g., one or more processors, one or more memories), may communicate directly or indirectly with each other (e.g., via one or more buses).
[0153] According to the examples disclosed herein, the communication manager 920 may support wireless communication. The encoding component 925 is capable of, configured to, or operable to support components for encoding a set of bits according to an LDPC code associated with (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with the minimum length of the LDPC code are associated with restrictions on second-order variable nodes, nodes associated with the least significant bit in the bit set, or combinations thereof. The transmitting component 930 is capable of, configured to, or operable to support components for transmitting a signal comprising the encoded bit set.
[0154] In some examples, second-degree variable nodes are excluded from one or more loops associated with the minimum length, depending on the constraints.
[0155] In some examples, nodes associated with the least significant bit are excluded from one or more cycles associated with the minimum length, depending on the constraints.
[0156] In some examples, depending on the constraints, at least one third-degree variable node is included in a loop that includes at least one second-degree variable node within one or more loops associated with the minimum length.
[0157] In some examples, depending on the constraints, loops in one or more loops associated with the minimum length exclude second-degree variable nodes associated with the least significant bit and include second-degree variable nodes associated with one or more bits in the bit set that are more significant than the least significant bit.
[0158] In some examples, the minimum length corresponds to a length six-cycle.
[0159] In some examples, the corresponding cyclic shift is further defined such that the weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and check nodes in the cycle with the weighted bounding length, the corresponding weights of the variable nodes being defined by the corresponding degree of the variable node, the corresponding reliability of the bits corresponding to the variable node, or a combination thereof.
[0160] In some examples, the first weight of the first variable node is greater than the second weight of the second variable node, based on the fact that the first variable node is associated with a degree greater than that of the second variable node.
[0161] In some examples, the second variable node is associated with one or more bits that are more effective than one or more bits associated with the first variable node.
[0162] In some examples, the first weight of the first variable node is greater than the second weight of the second variable node because the first variable node is associated with higher reliability than the second variable node.
[0163] In some examples, the first weight of the first variable node is greater than the second weight of the second variable node, based on the fact that the first variable node is associated with one or more bits that are more effective than one or more bits associated with the second variable node.
[0164] In some examples, the weight of a variable node is defined by whether the variable node corresponds to a pruning node in the base graph.
[0165] In some examples, the corresponding weights of variable nodes are defined by the corresponding degree and corresponding reliability of the variable nodes based on the modulation order associated with the bit set, which satisfies the threshold order.
[0166] In some examples, the corresponding weight of the variable node is defined by the corresponding degree of the variable node based on the modulation order associated with the bit set failing to meet the threshold order.
[0167] In some examples, the circumference of the LDPC code failed to meet the threshold.
[0168] In some examples, the least significant bit in the bit set is associated with the least reliable bit position of the modulation scheme used to encode the bit set.
[0169] In some examples, the boosting scheme is associated with a first modulation scheme having a first modulation order, and the encoding component 925 is capable of, configured to, or operable to support means for encoding a second set of bits according to a second LDPC code defined by a basemap and a second boosting scheme, wherein the second boosting scheme is associated with a second modulation scheme having a second modulation order. In some examples, the transmitting component 930 is capable of, configured to, or operable to support means for transmitting a second signal comprising a second set of encoded bits.
[0170] In some examples, the encoding component 925 is capable of, configured to, or operable to support means for selecting a set of LDPC code bits to be encoded based on encoding a set of bits according to a first modulation scheme and a first modulation order that meets a threshold. In some examples, the encoding component 925 is capable of, configured to, or operable to support means for selecting a second set of second LDPC code bits to be encoded based on encoding a second set of bits according to a second modulation scheme and a second modulation order that fails to meet a threshold.
[0171] In some examples, the lifting scheme is associated with a uniform QAM scheme, and the encoding component 925 is capable of, configured to, or operable to support means for encoding a second set of bits according to a second LDPC code and a second lifting scheme defined by a basemap, wherein the second lifting scheme is associated with probabilistic shaping. In some examples, the transmitting component 930 is capable of, configured to, or operable to support means for transmitting a second signal comprising the second set of encoded bits.
[0172] Additionally or alternatively, the communication manager 920 may support wireless communication according to examples disclosed herein. The receiving component 935 is capable of, configured to, or operable to support components for receiving signals comprising an encoded set of bits. The decoding component 940 is capable of, configured to, or operable to support components for decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with restrictions on second-order variable nodes, nodes associated with the least significant bit in the encoded set of bits, or combinations thereof.
[0173] In some examples, second-degree variable nodes are excluded from one or more loops associated with the minimum length, depending on the constraints.
[0174] In some examples, nodes associated with the least significant bit are excluded from one or more cycles associated with the minimum length, depending on the constraints.
[0175] In some examples, depending on the constraints, at least one third-degree variable node is included in a loop that includes at least one second-degree variable node within one or more loops associated with the minimum length.
[0176] In some examples, depending on the constraints, loops in one or more loops associated with the minimum length exclude second-degree variable nodes associated with the least significant bit and include second-degree variable nodes associated with one or more bits in the encoded set that are more significant than the least significant bit.
[0177] In some examples, the minimum length corresponds to a length six-cycle.
[0178] In some examples, the corresponding cyclic shift is further defined such that the weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and check nodes in the cycle with the weighted bounding length, the corresponding weights of the variable nodes being defined by the corresponding degree of the variable node, the corresponding reliability of the bits corresponding to the variable node, or a combination thereof.
[0179] In some examples, the first weight of the first variable node is greater than the second weight of the second variable node, based on the fact that the first variable node is associated with a degree greater than that of the second variable node.
[0180] In some examples, the second variable node is associated with one or more bits that are more effective than one or more bits associated with the first variable node.
[0181] In some examples, the first weight of the first variable node is greater than the second weight of the second variable node because the first variable node is associated with higher reliability than the second variable node.
[0182] In some examples, the first weight of the first variable node is greater than the second weight of the second variable node, based on the fact that the first variable node is associated with one or more bits that are more effective than one or more bits associated with the second variable node.
[0183] In some examples, the weight of a variable node is defined by whether the variable node corresponds to a pruning node in the base graph.
[0184] In some examples, the corresponding weights of variable nodes are defined by the corresponding degree and corresponding reliability of the variable nodes based on the modulation order associated with the encoded set of bits.
[0185] In some examples, the corresponding weight of the variable node is defined by the corresponding degree of the variable node based on the modulation order associated with the bit set failing to meet the threshold order.
[0186] In some examples, the circumference of the LDPC code failed to meet the threshold.
[0187] In some examples, the least significant bit in the bit set is associated with the least reliable bit position of the modulation scheme used to encode the bit set.
[0188] In some examples, the boosting scheme is associated with a first modulation scheme having a first modulation order, and the receiving component 935 is capable of, configured to, or operable to support means for receiving a second signal comprising coded bits of a second set. In some examples, the decoding component 940 is capable of, configured to, or operable to support means for decoding a second set of bits according to a second LDPC code defined by a basemap and a second boosting scheme, wherein the second boosting scheme is associated with a second modulation scheme having a second modulation order.
[0189] In some examples, the decoding component 940 is capable of, configured to, or operable to support means for selecting a set of LDPC code bits to decode based on a first modulation scheme and a first modulation order set that meets a threshold. In some examples, the decoding component 940 is capable of, configured to, or operable to support means for selecting a second set of second LDPC code bits to decode based on a second modulation scheme and a second modulation order set that fails to meet a threshold.
[0190] In some examples, the boosting scheme is associated with a uniform QAM scheme, and the receiving component 935 is capable of, configured to, or operable to support means for receiving a second signal comprising a second set of coded bits. In some examples, the decoding component 940 is capable of, configured to, or operable to support means for decoding a second set of bits according to a second LDPC code defined by a basemap and a second boosting scheme, wherein the second boosting scheme is associated with probabilistic shaping.
[0191] Additionally or alternatively, the communication manager 920 may support wireless communication according to examples disclosed herein. In some examples, the encoding component 925 is capable of, configured to, or operable to support components for encoding a set of bits according to an LDPC code associated with (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and parity nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that the weighted bounding length of the LDPC code satisfies a threshold corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding relevance of the variable node and the corresponding reliability of the bits corresponding to the variable node. In some examples, the transmitting component 930 is capable of, configured to, or operable to support components for transmitting a signal comprising the encoded set of bits.
[0192] Additionally or alternatively, the communication manager 920 may support wireless communication according to examples disclosed herein. In some examples, the receiving component 935 is capable of, configured to, or operable to support components for receiving signals comprising an encoded set of bits. In some examples, the decoding component 940 is capable of, configured to, or operable to support components for decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and parity nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that the weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bits corresponding to the variable node.
[0193] Figure 10A block diagram of an example system including a wireless communication device 1005 supporting a boosting scheme for LDPC codes is shown. Device 1005 may be an example of device 705, device 805, or UE 115 as described herein, or may include components thereof. Device 1005 may communicate with one or more network entities 105, one or more UEs 115, or any combination thereof (e.g., wirelessly). Device 1005 may include components for bidirectional voice and data communication, including components for transmitting and receiving communications, such as a communication manager 1020, an input / output (I / O) controller 1010, a transceiver 1015, an antenna 1025, at least one memory 1030, a code 1035, and at least one processor 1040. These components may communicate electronically or be otherwise coupled (e.g., operative ground, communicative ground, functional ground, electronic ground, electrical ground) via one or more buses (e.g., bus 1045).
[0194] I / O controller 1010 manages the input and output signals of device 1005. I / O controller 1010 can also manage peripheral devices not integrated into device 1005. In some cases, I / O controller 1010 may represent a physical connection or port to an external peripheral device. In some cases, I / O controller 1010 may utilize an operating system such as iOS. ® ANDROID ® MS-DOS ® MS-WINDOWS ® OS / 2 ® UNIX ® LINUX ® Alternatively, it may be another known operating system. Additionally or alternatively, the I / O controller 1010 may represent, or interact with, a modem, keyboard, mouse, touchscreen, or similar device. In some cases, the I / O controller 1010 may be implemented as part of one or more processors, such as at least one processor 1040. In some cases, a user may interact with the device 1005 via the I / O controller 1010 or via hardware components controlled by the I / O controller 1010.
[0195] In some cases, device 1005 may include a single antenna 1025. However, in other cases, device 1005 may have more than one antenna 1025, which may be capable of concurrently transmitting or receiving multiple wireless transmissions. Transceiver 1015 may communicate bidirectionally via one or more antennas 1025 as described herein, a wired or wireless link. For example, transceiver 1015 may represent a wireless transceiver and may communicate bidirectionally with another wireless transceiver. Transceiver 1015 may also include a modem for: modulating packets; providing the modulated packets to one or more antennas 1025 for transmission; and demodulating packets received from one or more antennas 1025. Transceiver 1015, or transceiver 1015 and one or more antennas 1025, may be an example of transmitter 715, transmitter 815, receiver 710, receiver 810, or any combination thereof or components thereof as described herein.
[0196] At least one memory 1030 may include random access memory (RAM) and read-only memory (ROM). At least one memory 1030 may store computer-readable, computer-executable code 1035, including instructions that, when executed by at least one processor 1040, cause device 1005 to perform the various functions described herein. Code 1035 may be stored in a non-transitory computer-readable medium, such as system memory or another type of memory. In some cases, code 1035 may not be directly executable by at least one processor 1040, but may enable a computer (e.g., when compiled and executed) to perform the functions described herein. In some cases, among other things, at least one memory 1030 may also include a basic I / O system (BIOS) that controls basic hardware or software operations, such as interaction with peripheral components or devices.
[0197] At least one processor 1040 may include intelligent hardware devices (e.g., general-purpose processors, DSPs, CPUs, microcontrollers, ASICs, FPGAs, programmable logic devices, discrete gate or transistor logic components, discrete hardware components, or any combination thereof). In some cases, at least one processor 1040 may be configured to operate a memory array using a memory controller. In some other cases, the memory controller may be integrated into at least one processor 1040. At least one processor 1040 may be configured to execute computer-readable instructions stored in memory (e.g., at least one memory 1030) to cause device 1005 to perform various functions (e.g., functions or tasks supporting a lift scheme for LDPC codes). For example, device 1005 or components of device 1005 may include at least one processor 1040 and at least one memory 1030 coupled to or coupled to at least one processor 1040, wherein at least one processor 1040 and at least one memory 1030 are configured to perform the various functions described herein. In some examples, at least one processor 1040 may include multiple processors, and at least one memory 1030 may include multiple memories. One or more of a plurality of processors may be coupled to one or more of a plurality of memories, which may be configured individually or collectively to perform the various functions described herein.
[0198] According to the examples disclosed herein, the communication manager 1020 may support wireless communication. For example, the communication manager 1020 is capable of, configured to, or operable to support components for encoding a set of bits according to an LDPC code associated with (e.g., defined by) a basemap and a boosting scheme, wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and check nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with restrictions on second-order variable nodes, nodes associated with the least significant bit in the set of bits, or combinations thereof. The communication manager 1020 is capable of, configured to, or operable to support components for transmitting a signal comprising the encoded set of bits.
[0199] Additionally or alternatively, the communication manager 1020 may support wireless communication according to examples disclosed herein. For example, the communication manager 1020 is capable of, configured to, or operable to support components for receiving signals comprising an encoded set of bits. The communication manager 1020 is capable of, configured to, or operable to support components for decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-degree variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a constraint on second-degree variable nodes, nodes associated with the least significant bit in the encoded set of bits, or combinations thereof.
[0200] Additionally or alternatively, the communication manager 1020 may support wireless communication according to examples disclosed herein. For example, the communication manager 1020 is capable of, configured to, or operable to support components for encoding a set of bits according to an LDPC code associated with (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and parity nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding responsiveness of the variable node and the corresponding reliability of the bits corresponding to the variable node. The communication manager 1020 is capable of, configured to, or operable to support components for transmitting a signal comprising the encoded set of bits.
[0201] Additionally or alternatively, the communication manager 1020 may support wireless communication according to examples disclosed herein. For example, the communication manager 1020 is capable of, configured to, or operable to support components for receiving signals comprising an encoded set of bits. The communication manager 1020 is capable of, configured to, or operable to support components for decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and parity nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that the weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bits corresponding to the variable node.
[0202] By including or configuring a communication manager 1020 according to an example as described herein, device 1005 can support technologies for increased throughput, reduced encoding and decoding complexity, reduced transmitter and receiver complexity, improved error plateau performance, higher spectral efficiency, reduced power consumption, longer battery life, and improved processing capabilities.
[0203] In some examples, the communication manager 1020 may be configured to use or otherwise coordinate with the transceiver 1015, one or more antennas 1025, or any combination thereof to perform various operations (e.g., receiving, monitoring, transmitting). Although the communication manager 1020 is illustrated as a separate component, in some examples, one or more functions described with reference to the communication manager 1020 may be supported or performed by at least one processor 1040, at least one memory 1030, code 1035, or any combination thereof. For example, code 1035 may include instructions that can be executed by at least one processor 1040 to cause the device 1005 to perform various aspects of the boosting scheme for LDPC codes as described herein, or at least one processor 1040 and at least one memory 1030 may be otherwise configured to perform or support such operations individually or jointly.
[0204] Figure 11A block diagram of an example system including a wireless communication device 1105 supporting an enhancement scheme for LDPC codes is shown. Device 1105 may be an example of device 705, device 805, or network entity 105 as described herein, or a component including such devices. Device 1105 may communicate with one or more network entities 105, one or more UEs 115, or any combination thereof, and this communication may include communication via one or more wired interfaces, one or more wireless interfaces, or any combination thereof. Device 1105 may include components supporting output and obtaining communication, such as a communication manager 1120, a transceiver 1110, an antenna 1115, at least one memory 1125, code 1130, and at least one processor 1135. These components may communicate electronically via one or more buses (e.g., bus 1140) or be otherwise coupled (e.g., operational ground, communication ground, functional ground, electronic ground, electrical ground).
[0205] Transceiver 1110 may support bidirectional communication via a wired link, a wireless link, or both, as described herein. In some examples, transceiver 1110 may include a wired transceiver and be capable of bidirectional communication with another wired transceiver. Additionally or alternatively, in some examples, transceiver 1110 may include a wireless transceiver and be capable of bidirectional communication with another wireless transceiver. In some examples, device 1105 may include one or more antennas 1115 that are capable of (e.g., concurrently) transmitting or receiving wireless transmissions. Transceiver 1110 may also include a modem for (e.g., via one or more antennas 1115, via a wired transmitter) modulating a signal to provide the modulated signal for transmission, for (e.g., from one or more antennas 1115, from a wired receiver) receiving the modulated signal, and for demodulating the signal. In some embodiments, transceiver 1110 may include one or more interfaces, such as one or more interfaces coupled to one or more antennas 1115 configured to support various receive or acquire operations, or one or more interfaces coupled to one or more antennas 1115 configured to support various transmit or output operations, or combinations thereof. In some embodiments, transceiver 1110 may include one or more processors or one or more memory components or be configured to couple to said one or more processors or one or more memory components, said one or more processors or one or more memory components being operable to perform or support operations based on received or acquired information or signals, or to generate information or other signals for transmission or other output, or any combination thereof. In some embodiments, transceiver 1110, or transceiver 1110 and one or more antennas 1115, or transceiver 1110 and one or more antennas 1115 and one or more processors or one or more memory components (e.g., at least one processor 1135, at least one memory 1125, or both) may be included in a chip or chip assembly mounted in device 1105. In some examples, transceiver 1110 is operable to support communication via one or more communication links (e.g., communication link 125, backhaul communication link 120, midhaul communication link 162, and fronthaul communication link 168).
[0206] At least one memory 1125 may include RAM, ROM, or any combination thereof. At least one memory 1125 may store computer-readable, computer-executable code 1130 including instructions that, when executed by one or more processors of at least one processor 1135, cause device 1105 to perform the various functions described herein. Code 1130 may be stored in a non-transitory computer-readable medium, such as system memory or another type of memory. In some cases, code 1130 may not be directly executable by a processor of at least one processor 1135, but may cause a computer (e.g., when compiled and executed) to perform the functions described herein. In some cases, at least one memory 1125 may also include a BIOS, among other things, that controls basic hardware or software operations, such as interaction with peripheral components or devices. In some examples, at least one processor 1135 may include multiple processors, and at least one memory 1125 may include multiple memories. One or more of the multiple processors may be coupled to one or more of the multiple memories, which may be configured individually or collectively to perform the various functions described herein (e.g., as part of a processing system).
[0207] At least one processor 1135 may include intelligent hardware devices (e.g., general-purpose processors, DSPs, ASICs, CPUs, FPGAs, microcontrollers, programmable logic devices, discrete gate or transistor logic units, discrete hardware components, or any combination thereof). In some cases, at least one processor 1135 may be configured to operate a memory array using a memory controller. In some other cases, the memory controller may be integrated into one or more processors in at least one processor 1135. At least one processor 1135 may be configured to execute computer-readable instructions stored in memory (e.g., one or more memories in at least one memory 1125) to cause device 1105 to perform various functions (e.g., functions or tasks supporting a lift scheme for LDPC codes). For example, device 1105 or components of device 1105 may include at least one processor 1135 and at least one memory 1125 coupled to one or more processors in at least one processor 1135, wherein at least one processor 1135 and at least one memory 1125 are configured to perform the various functions described herein. At least one processor 1135 may be an example of a cloud computing platform (e.g., one or more physical nodes and supporting software such as an operating system, virtual machine, or container instance) that can (e.g., by executing code 1130) host functions for performing the functions of device 1105. At least one processor 1135 may be any one or more suitable processors capable of executing scripts or instructions of one or more software programs stored in device 1105 (such as within one or more memories in at least one memory 1125). In some implementations, at least one processor 1135 may be a component of a processing system. A processing system can generally refer to a system or a series of machines or components that receive input and process that input to produce a set of outputs (which can be passed to other systems or components of device 1105, for example). For example, the processing system of device 1105 may refer to a system that includes various other components or sub-components of device 1105 (such as at least one processor 1135, transceiver 1110, communication manager 1120, or other components or combinations of components of device 1105). The processing system of device 1105 can interface with other components of device 1105 and can process information (such as inputs or signals) received from other components or output information to other components. For example, the chip or modem of device 1105 may include a processing system and one or more interfaces for outputting information or for acquiring information, or both. The one or more interfaces may be implemented as or otherwise include a first interface configured to output information and a second interface configured to acquire information, or the same interface configured to both output and acquire information, and other specific implementations.In some embodiments, the one or more interfaces may refer to the interface between the processing system of the chip or modem and the transmitter, enabling device 1105 to send information output from the chip or modem. Additionally or alternatively, in some embodiments, the one or more interfaces may refer to the interface between the processing system of the chip or modem and the receiver, enabling device 1105 to receive information or signal input, and such information can be transmitted to the processing system. Those skilled in the art will readily recognize that the first interface may also receive information or signal input, and the second interface may also output information or signal output.
[0208] In some examples, bus 1140 may support communication at the protocol layer of the protocol stack (e.g., within a protocol layer). In some examples, bus 1140 may support communication associated with logical channels of the protocol stack (e.g., between protocol layers of the protocol stack), which may include communication performed within components of device 1105, or communication performed between different components of device 1105 that are co-addressable or may be located in different locations (e.g., where device 1105 may refer to a system in which one or more of communication manager 1020, transceiver 1110, at least one memory 1125, code 1130 and at least one processor 1135 may be located in one component of different components or partitioned between different components).
[0209] In some examples, the communication manager 1120 can manage various aspects of communication with the core network 130 (e.g., via one or more wired or wireless backhaul links). For example, the communication manager 1120 can manage the transfer of data communication for client devices, such as one or more UEs 115. In some examples, the communication manager 1120 can manage communication with other network entities 105 and may include a controller or scheduler for coordinating other network entities 105 to control communication with UE 115. In some examples, the communication manager 1120 may support the X2 interface within LTE / LTE-A wireless communication network technology to provide communication between network entities 105.
[0210] According to the examples disclosed herein, the communication manager 1120 may support wireless communication. For example, the communication manager 1120 is capable of, configured to, or operable to support components for encoding a set of bits according to an LDPC code associated with (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and check nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with restrictions on second-order variable nodes, nodes associated with the least significant bit in the set of bits, or combinations thereof. The communication manager 1120 is capable of, configured to, or operable to support components for transmitting a signal comprising the encoded set of bits.
[0211] Additionally or alternatively, the communication manager 1120 may support wireless communication according to examples disclosed herein. For example, the communication manager 1120 is capable of, configured to, or operable to support components for receiving signals comprising an encoded set of bits. The communication manager 1120 is capable of, configured to, or operable to support components for decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-degree variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a constraint on second-degree variable nodes, nodes associated with the least significant bit in the encoded set of bits, or combinations thereof.
[0212] Additionally or alternatively, the communication manager 1120 may support wireless communication according to examples disclosed herein. For example, the communication manager 1120 is capable of, configured to, or operable to support components for encoding a set of bits according to an LDPC code associated with (e.g., defined by) a basemap and a boosting scheme, wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the variable nodes and parity nodes connected to the basemap and the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding relevance of the variable node and the corresponding reliability of the bits corresponding to the variable node. The communication manager 1120 is capable of, configured to, or operable to support components for transmitting a signal comprising the encoded set of bits.
[0213] Additionally or alternatively, the communication manager 1120 may support wireless communication according to examples disclosed herein. For example, the communication manager 1120 is capable of, configured to, or operable to support components for receiving signals comprising an encoded set of bits. The communication manager 1120 is capable of, configured to, or operable to support components for decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme (e.g., defined by the basemap and boosting scheme), wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and parity nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that the weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bits corresponding to the variable node.
[0214] By including or configuring a communication manager 1120 according to an example as described herein, device 105 can support technologies for increased throughput, reduced encoding and decoding complexity, reduced transmitter and receiver complexity, improved error plateau performance, higher spectral efficiency, reduced power consumption, longer battery life, and improved processing capabilities.
[0215] In some examples, the communication manager 1120 may be configured to use or otherwise coordinate with the transceiver 1110, one or more antennas 1115 (e.g., where applicable), or any combination thereof to perform various operations (e.g., receiving, acquiring, monitoring, outputting, transmitting). Although the communication manager 1120 is illustrated as a separate component, in some examples, one or more functions described with reference to the communication manager 1120 may be supported or performed by the transceiver 1110, one or more processors in at least one processor 1135, one or more memories in at least one memory 1125, code 1130, or any combination thereof (e.g., by a processing system including at least a portion of at least one processor 1135, at least one memory 1125, code 1130, or any combination thereof). For example, code 1130 may include instructions that can be executed by one or more processors in at least one processor 1135 to cause the device 1105 to perform various aspects of the boosting scheme for LDPC codes as described herein, or at least one processor 1135 and at least one memory 1125 may be otherwise configured to perform or support such operations individually or jointly.
[0216] Figure 12 A flowchart illustrating an example method 1200 supporting an enhancement scheme for LDPC codes is shown. The operation of method 1200 can be implemented by a UE or its components as described herein. For example, the operation of method 1200 can be implemented by, as referenced... Figures 1 to 11 The UE 115 described herein is used to perform this function. In some examples, the UE can execute a set of instructions to control the functional elements of the UE to perform the described function. Additionally or alternatively, the UE may use dedicated hardware to perform aspects of the described function.
[0217] At 1205, the method may include encoding a set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with the minimum length of the LDPC code are associated with a constraint on second-order variable nodes, nodes associated with the least significant bit in the set of bits, or combinations thereof. The operation of block 1205 may be performed according to examples as disclosed herein. In some examples, aspects of the operation of 1205 may be provided by reference to [reference needed]. Figure 9 The described encoding component 925 is used to perform this.
[0218] At 1210, the method may include transmitting a signal comprising the encoded set of bits. The operation of block 1210 may be performed according to examples as disclosed herein. In some examples, aspects of the operation of 1210 may be provided by reference to [reference needed]. Figure 9 The described sending component 930 is used to perform this.
[0219] Figure 13 A flowchart illustrating an example method 1300 supporting an enhancement scheme for LDPC codes is shown. The operation of method 1300 can be implemented by a UE or its components as described herein. For example, the operation of method 1300 can be implemented by, as referenced... Figures 1 to 11 The UE 115 described herein is used to perform this function. In some examples, the UE can execute a set of instructions to control the functional elements of the UE to perform the described function. Additionally or alternatively, the UE may use dedicated hardware to perform aspects of the described function.
[0220] At 1305, the method may include receiving a signal comprising the encoded set of bits. The operation of block 1305 may be performed according to examples as disclosed herein. In some examples, aspects of the operation of 1305 may be provided by reference to [reference needed]. Figure 9 The described receiving component 935 is used to perform this action.
[0221] At 1310, the method may include decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap includes a set of multiple check nodes and a set of multiple variable nodes including at least one second-order variable node, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a constraint on second-order variable nodes, nodes associated with the least significant bit in the encoded set of bits, or combinations thereof. The operation of block 1310 may be performed according to examples as disclosed herein. In some examples, aspects of the operation of 1310 may be provided by reference to [reference needed]. Figure 9 The described decoding component 940 is used to perform this.
[0222] Figure 14 A flowchart illustrating an example method 1400 supporting an enhancement scheme for LDPC codes is shown. The operation of method 1400 can be implemented by a UE or its components as described herein. For example, the operation of method 1400 can be implemented by, as referenced... Figures 1 to 11 The UE 115 described herein is used to perform this function. In some examples, the UE can execute a set of instructions to control the functional elements of the UE to perform the described function. Additionally or alternatively, the UE may use dedicated hardware to perform aspects of the described function.
[0223] At 1405, the method may include encoding a set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the connections of the copies of the basemap to the variable nodes and parity nodes, and wherein the corresponding cyclic shifts are defined such that the weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bit corresponding to the variable node. The operation of block 1405 may be performed according to examples as disclosed herein. In some examples, aspects of the operation of 1405 may be provided by reference to [reference needed]. Figure 9 The described encoding component 925 is used to perform this.
[0224] At 1410, the method may include transmitting a signal comprising the encoded set of bits. The operation of block 1410 may be performed according to examples as disclosed herein. In some examples, aspects of the operation of 1410 may be provided by reference to [reference needed]. Figure 9 The described sending component 930 is used to perform this.
[0225] Figure 15 A flowchart illustrating an example method 1500 supporting an enhancement scheme for LDPC codes is shown. The operation of method 1500 can be implemented by a UE or its components as described herein. For example, the operation of method 1500 can be implemented by, as referenced... Figures 1 to 11 The UE 115 described herein is used to perform this function. In some examples, the UE can execute a set of instructions to control the functional elements of the UE to perform the described function. Additionally or alternatively, the UE may use dedicated hardware to perform aspects of the described function.
[0226] At 1505, the method may include receiving a signal comprising the encoded set of bits. The operation of block 1505 may be performed according to examples as disclosed herein. In some examples, aspects of the operation of 1505 may be provided by reference to [reference needed]. Figure 9 The described receiving component 935 is used to perform this action.
[0227] At 1510, the method may include decoding an encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap includes a set of multiple variable nodes and a set of multiple parity nodes, wherein the boosting scheme defines the number of copies of the basemap used to generate the LDPC code and corresponding cyclic shifts associated with the basemap and the connections of the copies of the basemap to the variable nodes and parity nodes, and wherein the corresponding cyclic shifts are defined such that the weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of the corresponding weights of the variable nodes and parity nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bit corresponding to the variable node. The operation of block 1510 may be performed according to examples as disclosed herein. In some examples, aspects of the operation of 1510 may be provided by reference to [reference needed]. Figure 9 The described decoding component 940 is used to perform this.
[0228] The following provides an overview of the various aspects of this disclosure: Aspect 1: A method for wireless communication by a transmitting device, the method comprising: encoding a set of bits according to an LDPC code associated with a base map and a boosting scheme, wherein the base map includes a plurality of check nodes and a plurality of variable nodes including at least one second-order variable node, wherein the boosting scheme defines a number of copies of the base map for generating the LDPC code and corresponding cyclic shifts associated with the base map and the variable nodes and check nodes connected to the copies of the base map, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a constraint on second-order variable nodes, nodes associated with the least significant bit in the set of bits, or combinations thereof; and transmitting a signal including the encoded set of bits.
[0229] Aspect 2: According to the method of aspect 1, wherein the second-degree variable node is excluded from the one or more loops associated with the minimum length according to the constraint.
[0230] Aspect 3: The method according to any one of Aspects 1 to 2, wherein the node associated with the least significant bit is excluded from the one or more cycles associated with the minimum length according to the restriction.
[0231] Aspect 4: The method according to any one of Aspects 1 and 3, wherein, according to the limitation, at least one tertiary variable node is included in a loop including at least one tertiary variable node in one or more loops associated with the minimum length.
[0232] Aspect 5: The method according to any one of Aspects 1 and 3 to 4, wherein, according to the limitation, the loops in the one or more loops associated with the minimum length exclude second-degree variable nodes associated with the least significant bit and include second-degree variable nodes associated with one or more bits in the bit set that are more significant than the least significant bit.
[0233] Aspect 6: The method according to any one of aspects 1 to 5, wherein the minimum length corresponds to a cycle of length six.
[0234] Aspect 7: The method according to any one of Aspects 1 to 6, wherein the corresponding cyclic shift is further defined such that the weighted perimeter of the LDPC code satisfies a threshold, the weighted perimeter corresponding to the sum of the corresponding weights of the variable nodes and check nodes in a cycle having the weighted perimeter, the corresponding weight of the variable node being defined by the corresponding degree of the variable node, the corresponding reliability of the bit corresponding to the variable node, or a combination thereof.
[0235] Aspect 8: According to the method described in aspect 7, wherein the first weight of the first variable node is greater than the second weight of the second variable node based on the first variable node being associated with a degree greater than that of the second variable node.
[0236] Aspect 9: According to the method of aspect 8, wherein the second variable node is associated with one or more bits that are more effective than one or more bits associated with the first variable node.
[0237] Aspect 10: The method according to any one of Aspects 7 to 8, wherein the first weight of the first variable node is greater than the second weight of the second variable node, based on the association of the first variable node with a higher reliability than the second variable node.
[0238] Aspect 11: The method according to any one of Aspects 7 to 8 and 10, wherein the first weight of the first variable node is greater than the second weight of the second variable node, based on the first variable node being associated with one or more bits that are more effective than one or more bits associated with the second variable node.
[0239] Aspect 12: The method according to any one of Aspects 7 to 11, wherein the corresponding weight of the variable node is defined by whether the variable node corresponds to a pruning node of the base graph.
[0240] Aspect 13: The method according to any one of Aspects 7 to 12, wherein the corresponding weight of the variable node is defined by the corresponding degree and the corresponding reliability of the variable node based on the modulation order associated with the bit set satisfying a threshold order.
[0241] Aspect 14: The method according to any one of Aspects 7 to 12, wherein the corresponding weight of the variable node is defined by the corresponding degree of the variable node based on the modulation order associated with the bit set failing to satisfy a threshold order.
[0242] Aspect 15: The method according to any one of Aspects 7 to 14, wherein the circumference of the LDPC code fails to meet the threshold.
[0243] Aspect 16: The method according to any one of Aspects 1 to 15, wherein the least significant bit in the bit set is associated with the least unreliable bit position of the modulation scheme used to encode the bit set.
[0244] Aspect 17: The method according to any one of Aspects 1 to 16, wherein the boosting scheme is associated with a first modulation scheme having a first modulation order, the method further comprising: encoding a second set of bits according to a second LDPC code defined by the basemap and a second boosting scheme, wherein the second boosting scheme is associated with a second modulation scheme having a second modulation order; and transmitting a second signal comprising the second set of encoded bits.
[0245] Aspect 18: The method according to aspect 17, the method further comprising: selecting the LDPC code to encode the bit set according to encoding the bit set according to the first modulation scheme and the first modulation order that satisfies the threshold; and selecting the second LDPC code to encode the second set of bits according to encoding the second set of bits according to the second modulation scheme and the second modulation order that fails to satisfy the threshold.
[0246] Aspect 19: The method according to any one of Aspects 1 to 18, wherein the lifting scheme is associated with a uniform QAM scheme, the method further comprising: encoding a second set of bits according to a second LDPC code defined by the base map and a second lifting scheme, wherein the second lifting scheme is associated with probabilistic shaping; and transmitting a second signal including the second set of encoded bits.
[0247] Aspect 20: A method for wireless communication by a receiving device, the method comprising: receiving a signal including an encoded set of bits; and decoding the encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap includes a plurality of check nodes and a plurality of variable nodes including at least one second-order variable node, wherein the boosting scheme defines a number of copies of the basemap for generating the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that one or more cycles associated with a minimum length of the LDPC code are associated with a constraint on second-order variable nodes, nodes associated with the least significant bit in the encoded set of bits, or combinations thereof.
[0248] Aspect 21: The method according to aspect 20, wherein the second-degree variable node is excluded from the one or more loops associated with the minimum length according to the constraint.
[0249] Aspect 22: The method according to any one of Aspects 20 to 21, wherein the node associated with the least significant bit is excluded from the one or more cycles associated with the minimum length according to the constraint.
[0250] Aspect 23: The method according to any one of Aspects 20 and 22, wherein, according to the limitation, at least one tertiary variable node is included in a loop including at least one tertiary variable node in one or more loops associated with the minimum length.
[0251] Aspect 24: The method according to any one of Aspects 20 and 22 to 23, wherein, according to the limitation, the loops in the one or more loops associated with the minimum length exclude second-degree variable nodes associated with the least significant bit and include second-degree variable nodes associated with one or more bits in the encoded set that are more significant than the least significant bit.
[0252] Aspect 25: The method according to any one of aspects 20 to 24, wherein the minimum length corresponds to a cycle of length six.
[0253] Aspect 26: The method according to any one of Aspects 20 to 25, wherein the corresponding cyclic shift is further defined such that the weighted perimeter of the LDPC code satisfies a threshold, the weighted perimeter corresponding to the sum of the corresponding weights of the variable nodes and check nodes in a cycle having the weighted perimeter, the corresponding weight of the variable node being defined by the corresponding degree of the variable node, the corresponding reliability of the bit corresponding to the variable node, or a combination thereof.
[0254] Aspect 27: According to the method of aspect 26, wherein the first weight of the first variable node is greater than the second weight of the second variable node based on the association of the first variable node with a degree greater than that of the second variable node.
[0255] Aspect 28: According to the method of aspect 27, wherein the second variable node is associated with one or more bits that are more effective than one or more bits associated with the first variable node.
[0256] Aspect 29: The method according to any one of Aspects 26 to 27, wherein the first variable node is associated with a higher reliability than the second variable node, and the first weight of the first variable node is greater than the second weight of the second variable node.
[0257] Aspect 30: The method according to any one of Aspects 26 to 27 and 29, wherein the first weight of the first variable node is greater than the second weight of the second variable node, based on the first variable node being associated with one or more bits that are more effective than one or more bits associated with the second variable node.
[0258] Aspect 31: The method according to any one of Aspects 26 to 30, wherein the corresponding weight of the variable node is defined by whether the variable node corresponds to a pruning node of the base graph.
[0259] Aspect 32: The method according to any one of Aspects 26 to 31, wherein the corresponding weight of the variable node is defined by the corresponding degree and the corresponding reliability of the variable node based on the modulation order associated with the encoded bit set.
[0260] Aspect 33: The method according to any one of Aspects 26 to 31, wherein the corresponding weight of the variable node is defined by the corresponding degree of the variable node based on the modulation order associated with the bit set failing to satisfy a threshold order.
[0261] Aspect 34: The method according to any one of aspects 26 to 33, wherein the circumference of the LDPC code fails to meet the threshold.
[0262] Aspect 35: The method according to any one of Aspects 20 to 34, wherein the least significant bit in the bit set is associated with the least unreliable bit position of the modulation scheme used to encode the bit set.
[0263] Aspect 36: The method according to any one of Aspects 20 to 35, wherein the boosting scheme is associated with a first modulation scheme having a first modulation order, the method further comprising: receiving a second signal comprising coded bits of a second set; and decoding the second set of bits according to a second LDPC code defined by the basemap and a second boosting scheme, wherein the second boosting scheme is associated with a second modulation scheme having a second modulation order.
[0264] Aspect 37: The method according to aspect 36, the method further comprising: selecting the LDPC code to decode the bit set according to decoding the bit set according to the first modulation scheme and the first modulation order that satisfies the threshold; and selecting the second LDPC code to decode the second set of bits according to decoding the second set of bits according to the second modulation scheme and the second modulation order that fails to satisfy the threshold.
[0265] Aspect 38: The method according to any one of Aspects 20 to 37, wherein the lifting scheme is associated with a uniform QAM scheme, the method further comprising: receiving a second signal comprising a second set of coded bits; and decoding the second set of bits according to a second LDPC code defined by the base map and a second lifting scheme, wherein the second lifting scheme is associated with probabilistic shaping.
[0266] Aspect 39: A method for wireless communication by a transmitting device, the method comprising: encoding a set of bits according to an LDPC code associated with a base map and a boosting scheme, wherein the base map includes a plurality of variable nodes and a plurality of check nodes, wherein the boosting scheme defines a number of copies of the base map for generating the LDPC code and corresponding cyclic shifts associated with the base map and the variable nodes and check nodes connected to the copies of the base map, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of corresponding weights of the variable nodes and check nodes in a cycle having the weighted bounding length, the corresponding weight of the variable nodes being defined by the corresponding degree of the variable nodes and the corresponding reliability of the bits corresponding to the variable nodes; and transmitting a signal including the encoded set of bits.
[0267] Aspect 40: A method for wireless communication by a receiving device, the method comprising: receiving a signal including an encoded set of bits; and decoding the encoded set of bits according to an LDPC code associated with a basemap and a boosting scheme, wherein the basemap includes a plurality of variable nodes and a plurality of check nodes, wherein the boosting scheme defines a number of copies of the basemap for generating the LDPC code and corresponding cyclic shifts associated with the basemap and the variable nodes and check nodes connected to the copies of the basemap, and wherein the corresponding cyclic shifts are defined such that a weighted bounding length of the LDPC code satisfies a threshold, the weighted bounding length corresponding to the sum of corresponding weights of the variable nodes and check nodes in a cycle having the weighted bounding length, the corresponding weight of the variable node being defined by the corresponding degree of the variable node and the corresponding reliability of the bits corresponding to the variable node.
[0268] Aspect 41: A transmitting device for wireless communication, the transmitting device including a processing system, the processing system including processor circuitry and memory circuitry storing code, the processing system being configured to cause the transmitting device to perform the method according to any one of aspects 1 to 19.
[0269] Aspect 42: A transmitting device for wireless communication, the transmitting device comprising at least one component for performing the method according to any one of aspects 1 to 19.
[0270] Aspect 43: A non-transitory computer-readable medium storing code for wireless communication, said code including instructions executable by one or more processors to perform the method according to any one of aspects 1 to 19.
[0271] Aspect 44: A receiving device for wireless communication, the receiving device including a processing system, the processing system including processor circuitry and memory circuitry storing code, the processing system being configured to cause the receiving device to perform a method according to any one of aspects 20 to 38.
[0272] Aspect 45: A receiving device for wireless communication, the receiving device comprising at least one component for performing the method according to any one of aspects 20 to 38.
[0273] Aspect 46: A non-transitory computer-readable medium storing code for wireless communication, said code including instructions executable by one or more processors to perform the method according to any one of aspects 20 to 38.
[0274] Aspect 47: A transmitting device for wireless communication, the transmitting device including a processing system, the processing system including processor circuitry and memory circuitry storing code, the processing system being configured to cause the transmitting device to perform the method according to aspect 39.
[0275] Aspect 48: A transmitting device for wireless communication, the transmitting device comprising at least one component for performing the method according to aspect 39.
[0276] Aspect 49: A non-transitory computer-readable medium storing code for wireless communication, said code including instructions executable by one or more processors to perform the method according to aspect 39.
[0277] Aspect 50: A receiving device for wireless communication, the transmitting device including a processing system including processor circuitry and memory circuitry storing code, the processing system being configured to cause the receiving device to perform the method according to aspect 40.
[0278] Aspect 51: A receiving device for wireless communication, the transmitting device comprising at least one component for performing the method according to aspect 40.
[0279] Aspect 52: A non-transitory computer-readable medium storing code for wireless communication, the code including instructions executable by one or more processors to perform the method according to aspect 40.
[0280] It should be noted that the methods described herein describe possible specific implementations, and the operations and steps can be rearranged or otherwise modified, and other specific implementations are also possible. Furthermore, aspects from two or more of these methods can be combined.
[0281] While aspects of LTE, LTE-A, LTE-A Pro, or NR systems may be described for illustrative purposes, and the terms LTE, LTE-A, LTE-A Pro, or NR may be used in most of the description, the techniques described herein are also applicable to networks outside of LTE, LTE-A, LTE-A Pro, or NR networks. For example, the techniques described are applicable to a variety of other wireless communication systems, such as Ultra Mobile Broadband (UMB), IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802.20, Flash-OFDM, and other systems and radio technologies not explicitly mentioned herein.
[0282] The information and signals described herein can be represented using any of a variety of different techniques and methods. For example, data, instructions, commands, information, signals, bits, symbols, and chips mentioned throughout the description can be represented by voltage, current, electromagnetic waves, magnetic fields or magnetic particles, light fields or optical particles, or any combination thereof.
[0283] The various exemplary blocks and components described herein can be implemented or performed using a general-purpose processor, DSP, ASIC, CPU, FPGA or other programmable logic device, discrete gate or transistor logic unit, discrete hardware component, or any combination thereof, designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but in alternative embodiments, a processor may be any 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 cooperating with a DSP core, or any other such configuration). Any function or operation described herein that can be performed by a processor may be performed by multiple processors capable of performing the described functions or operations individually or jointly.
[0284] The functions described herein can be implemented using hardware, software executed by a processor, firmware, or any combination thereof. When implemented using software executed by a processor, the functions can be stored as one or more instructions or code on a computer-readable medium or transmitted using one or more instructions or code on a computer-readable medium. Other examples and specific implementations are within the scope of this disclosure and the appended claims. For example, due to the nature of software, the functions described herein can be implemented using software executed by a processor, hardware, firmware, hardwiring, or any combination of these. Features implementing the functions can also be physically located in various locations, including various portions distributed such that the functions are implemented in different physical locations.
[0285] Computer-readable media includes both non-transitory computer storage media and communication media, encompassing any medium that facilitates the transfer of a computer program from one location to another. Non-transitory storage media can be any available medium accessible 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, compressed optical disc (CD) ROM or other optical disc storage devices, magnetic disk storage devices or other magnetic storage devices, or any other non-transitory medium that can be used to carry or store desired program code components in the form of instructions or data structures, and accessible by a general-purpose or special-purpose computer or a general-purpose or special-purpose processor. Furthermore, any connection is appropriately referred to as computer-readable media. For example, if software is transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included within the definition of computer-readable media. As used herein, disks and optical discs include CDs, laser discs, optical discs, digital multifunction discs (DVDs), floppy disks, and Blu-ray discs. Disks can magnetically reproduce data, and optical discs can optically reproduce data using lasers. Combinations of the above are also included within the scope of computer-readable media. Any function or operation described herein that can be performed by memory can be performed by multiple memories capable of performing the described function or operation individually or jointly.
[0286] As used herein (including in the claims), the word "or" used in a list of items (e.g., a list of items followed by wording such as "at least one of" or "one or more of") indicates an inclusive list, such that a list of at least one of, for example, 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). Furthermore, as used herein, the phrase "based on" should not be construed as a reference to a closed set of conditions. For example, an example step described as "based on condition A" could be based on both condition A and condition B without departing from the scope of this disclosure. In other words, as used herein, the phrase "based on" should be interpreted in the same manner as the phrase "at least partially based on".
[0287] As used herein, including in claims, the article “a” preceding a noun is open-ended and is understood to refer to “at least one” or “one or more” of those nouns. Therefore, the terms “a,” “at least one,” “one or more,” and “at least one of one or more” are interchangeable. For example, where a claim enumerates “components” performing one or more functions, each of the individual functions may be performed by a single component or by any combination of multiple components. Thus, the term “component” having a characteristic or performing a function may refer to “at least one of one or more components” having a particular characteristic or performing a particular function. Subsequent references to a component introduced with the article “a” using the terms “the” or “the” can refer to any or all of the one or more components. For example, a component introduced with the article “a” can be understood to mean “one or more components,” and subsequent reference to “the component” in a claim can be understood as equivalent to referring to “at least one of the one or more components.” Similarly, subsequent references to a component introduced with the terms “the” or “the” as “one or more components” can refer to any or all of the one or more components. For example, reference to "the one or more components" in the subsequent claims can be understood as equivalent to reference to "at least one of the one or more components".
[0288] The term "determine" encompasses a variety of actions, and therefore, "determine" can include calculation, computation, processing, derivation, investigation, searching (such as by searching in a table, database, or other data structure), ascertainment, and similar actions. Furthermore, "determine" can include receiving (e.g., receiving information), accessing (e.g., accessing data stored in memory), and so on. Moreover, "determine" can include parsing, obtaining, selecting, choosing, building, and other similar actions.
[0289] In the accompanying drawings, similar components or features may have the same reference numerals. Furthermore, various components of the same type can be distinguished by adding a dash after the reference numeral and a second reference numeral to differentiate them. If only the first reference numeral is used in the description, the description can be applied to any of the similar components having the same first reference numeral, regardless of the second or other subsequent reference numerals.
[0290] The description herein, illustrated with reference to the accompanying drawings, describes an example configuration and does not represent all achievable examples or those within the scope of the claims. The term "example" as used herein means "serving as an example, instance, or illustration," not "preferred" or "advantageous over other examples." The detailed description includes specific details used to provide an understanding of the described techniques. However, these techniques can be practiced without these specific details. In some instances, known structures and devices are shown in block diagram form to avoid obscuring the concept of the described examples.
[0291] The description herein is provided to enable those skilled in the art to implement or use this disclosure. Various modifications to this disclosure will be apparent to those skilled in the art, and the general principles defined herein may be applied to other variations without departing from the scope of this disclosure. Therefore, this disclosure is not limited to the examples and designs described herein, but should be granted the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A transmitting device, the transmitting device comprising: a processing system comprising a processor circuit and a memory circuit storing code, the processing system configured to cause the transmitting device to: encode a set of bits according to a low-density parity-check code associated with a base graph and a lifting scheme, wherein the base graph comprises a plurality of check nodes and a plurality of variable nodes comprising at least one two-degree variable node, wherein the lifting scheme defines a number of copies of the base graph used to generate the low-density parity-check code and respective cyclic shifts associated with connected variable nodes and check nodes of the base graph and the copies of the base graph, and wherein the respective cyclic shifts are defined such that one or more cycles associated with a minimum length of the low-density parity-check code are associated with a restriction on two-degree variable nodes, nodes associated with least significant bits of the set of bits, or a combination thereof; and transmit a signal comprising the encoded set of bits.
2. The transmitting device of claim 1, wherein the two-degree variable nodes are excluded from the one or more cycles associated with the minimum length according to the restriction.
3. The transmitting device of claim 1, wherein the nodes associated with the least significant bits are excluded from the one or more cycles associated with the minimum length according to the restriction.
4. The transmitting device of claim 1, wherein at least one three-degree variable node is included in a cycle of the one or more cycles associated with the minimum length comprising at least one two-degree variable node according to the restriction.
5. The transmitting device of claim 1, wherein a cycle of the one or more cycles associated with the minimum length excludes a two-degree variable node associated with the least significant bits and includes a two-degree variable node associated with one or more bits of the set of bits more significant than the least significant bits according to the restriction.
6. The transmitting device of claim 1, wherein the minimum length corresponds to a cycle of length six.
7. The transmitting device of claim 1, wherein the respective cyclic shifts are further defined such that a weighted girth of the low-density parity-check code satisfies a threshold value, the weighted girth corresponding to a sum of respective weights of variable nodes and check nodes in a cycle having the weighted girth, the respective weights of the variable nodes defined by respective degrees of the variable nodes, respective reliabilities of bits corresponding to the variable nodes, or a combination thereof.
8. The transmitting device of claim 7, wherein a first weight of a first variable node is greater than a second weight of a second variable node according to the first variable node being associated with a greater degree than the second variable node.
9. The transmitting device of claim 8, wherein the second variable node is associated with one or more bits more significant than one or more bits associated with the first variable node.
10. The transmitting device of claim 7, wherein a first weight of a first variable node is greater than a second weight of a second variable node according to the first variable node being associated with a higher reliability than the second variable node, one or more bits being more significant than one or more bits associated with the second variable node, or any combination thereof.
11. The transmitting device of claim 7, wherein the respective weights of the variable nodes are defined by whether the variable nodes correspond to puncturing nodes of the base graph.
12. The transmitting device of claim 7, wherein the respective weights of the variable nodes are defined according to the respective degrees and the respective reliabilities of the variable nodes according to a modulation order associated with the set of bits satisfying a threshold order.
13. The transmitting device of claim 7, wherein the respective weights of the variable nodes are defined according to the respective degrees of the variable nodes according to a modulation order associated with the set of bits failing to satisfy a threshold order.
14. The transmitting device of claim 7, wherein a girth of the low-density parity-check code fails to satisfy the threshold.
15. The transmitting device of claim 1, wherein the least significant bits of the set of bits are associated with least reliable bit positions of a modulation scheme used to encode the set of bits.
16. The transmitting device of claim 1, wherein the lifting scheme is associated with a first modulation scheme having a first modulation order, and the processing system is further configured to cause the transmitting device to: encode a second set of bits according to a second low-density parity-check code defined by the base graph and a second lifting scheme, wherein the second lifting scheme is associated with a second modulation scheme having a second modulation order; and transmit a second signal including the encoded second set of bits.
17. The transmitting device of claim 16, wherein the processing system is further configured to cause the transmitting device to: select the low-density parity-check code to encode the set of bits according to encoding the set of bits according to the first modulation scheme and the first modulation order satisfying a threshold; and select the second low-density parity-check code to encode the second set of bits according to encoding the second set of bits according to the second modulation scheme and the second modulation order failing to satisfy the threshold.
18. The transmitting device of claim 1, wherein the lifting scheme is associated with a uniform quadrature amplitude modulation scheme, and the processing system is further configured to cause the transmitting device to: encode a second set of bits according to a second low-density parity-check code defined by the base graph and a second lifting scheme, wherein the second lifting scheme is associated with probability shaping; and transmit a second signal including the encoded second set of bits.
19. A receiving device, the receiving device comprising: a processing system comprising a processor circuit and a memory circuit storing code, the processing system configured to cause the receiving device to: receive a signal including a set of encoded bits; and decode the set of encoded bits. Decoding an encoded set of bits according to a low-density parity-check code associated with a base graph and a lifting scheme, wherein the base graph includes a plurality of check nodes and a plurality of variable nodes including at least one two-degree variable node, wherein the lifting scheme defines a number of copies of the base graph used to generate the low-density parity-check code and respective cyclic shifts associated with connected variable nodes and check nodes of the base graph and the copies of the base graph, and wherein the respective cyclic shifts are defined such that one or more cycles associated with a minimum length of the low-density parity-check code are associated with a restriction on two-degree variable nodes, nodes associated with least significant bits of the encoded set of bits, or a combination thereof.
20. The receiving device of claim 19, wherein the two-degree variable nodes are excluded from the one or more cycles associated with the minimum length according to the restriction.
21. The receiving device of claim 19, wherein the nodes associated with the least significant bits are excluded from the one or more cycles associated with the minimum length according to the restriction.
22. The receiving device of claim 19, wherein at least one three-degree variable node is included in a cycle of the one or more cycles associated with the minimum length that includes at least one two-degree variable node according to the restriction.
23. The receiving device of claim 19, wherein a cycle of the one or more cycles associated with the minimum length excludes a two-degree variable node associated with the least significant bits and includes a two-degree variable node associated with one or more bits of the encoded set of bits that are more significant than the least significant bits according to the restriction.
24. The receiving device of claim 19, wherein the minimum length corresponds to a cycle of length six.
25. The receiving device of claim 19, wherein the respective cyclic shifts are further defined such that a weighted girth of the low-density parity-check code satisfies a threshold, the weighted girth corresponding to a sum of respective weights of variable nodes and check nodes in a cycle having the weighted girth, the respective weights of the variable nodes defined by respective degrees of the variable nodes, respective reliabilities of bits corresponding to the variable nodes, or a combination thereof.
26. The receiving device of claim 25, wherein a first weight of a first variable node is greater than a second weight of a second variable node according to the first variable node being associated with a greater degree than the second variable node, a higher reliability than the second variable node, one or more bits that are more significant than one or more bits associated with the second variable node, or any combination thereof.
27. The receiving device of claim 25, wherein the respective weights of the variable nodes are defined by whether the variable nodes correspond to puncturing nodes of the base graph.
28. The receiving device of claim 25, wherein the respective weight of the variable node is defined in accordance with a threshold number of modulation orders associated with a set of encoded bits by the respective degree and the respective reliability of the variable node.
29. A method for wireless communications by a transmitting device, comprising: encoding a set of bits according to a low-density parity-check code associated with a base graph and a lifting scheme, wherein the base graph comprises a plurality of check nodes and a plurality of variable nodes comprising at least one two-degree variable node, wherein the lifting scheme defines a number of copies of the base graph used to generate the base graph of the low-density parity-check code and respective cyclic shifts associated with connected variable nodes and check nodes of the base graph and the copies of the base graph, and wherein the respective cyclic shifts are defined such that one or more cycles associated with a minimum length of the low-density parity-check code are associated with a restriction on two-degree variable nodes, nodes associated with least significant bits of the set of bits, or a combination thereof; and transmitting a signal comprising the set of encoded bits.
30. A method for wireless communications by a receiving device, comprising: receiving a signal comprising a set of encoded bits; and decoding the set of encoded bits according to a low-density parity-check code associated with a base graph and a lifting scheme, wherein the base graph comprises a plurality of check nodes and a plurality of variable nodes comprising at least one two-degree variable node, wherein the lifting scheme defines a number of copies of the base graph used to generate the base graph of the low-density parity-check code and respective cyclic shifts associated with connected variable nodes and check nodes of the base graph and the copies of the base graph, and wherein the respective cyclic shifts are defined such that one or more cycles associated with a minimum length of the low-density parity-check code are associated with a restriction on two-degree variable nodes, nodes associated with least significant bits of the set of encoded bits, or a combination thereof.
