Data transmission using polar coding of non-binary symbols and modulation

Generalized polar codes for wireless digital communications enhance error correction by mapping binary sequences to Abelian group elements and lattice-based constellations, improving signal transmission and decoding efficiency.

JP2025533817APending Publication Date: 2025-10-09RAMPART COMMUNICATIONS INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025519136
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-10-10
Filing Date
2023-10-09
Publication Date
2025-10-09

AI Technical Summary

Technical Problem

Existing technologies fail to effectively combine generalized bit-to-symbol mapping and symbol-to-bit mapping with forward error correction (FEC) in wireless digital communications, lacking practical implementations for encoding, transmitting, and decoding signals using polar codes over arbitrary alphabets.

Method used

A method involving generalized polar codes that map binary sequences to Abelian group elements, which are then converted to lattice-based signal constellations, allowing for efficient transmission and decoding using trellis-based data modulation and successive cancellation.

Benefits of technology

This approach enables improved error correction and reduced computational complexity, achieving better separation between constellation points at lower energy levels and increased throughput in digital communications systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025533817000001_ABST
    Figure 2025533817000001_ABST
Patent Text Reader

Abstract

The method includes receiving a bit sequence in a processor, performing error correction, and transmitting a modulated signal. The error correction includes identifying a set of binary sequences based on the bit sequence, mapping each binary sequence from the set of binary sequences to a first Abelian group element from a first Abelian group element, and applying a generalization of polar codes to the first set of Abelian group elements to generate a second set of Abelian group elements. The error correction also includes mapping each of the second Abelian group elements to an in-phase / quadrature (I / Q) point from a set of I / Q points and identifying a real-valued point based on the set of I / Q points, each real value representing an I / Q point from the set of I / Q points. The modulated signal has modulation based on the real-valued points.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims priority to and benefit of U.S. Provisional Patent Application No. 63 / 414,666, entitled "METHODS AND APPARATUS FOR LATTICE-BASED SIGNAL MODULATION USING A GENERALIZATION OF POLAR CODES," filed October 10, 2022, the contents of which are incorporated herein by reference in their entirety.

[0002] Field This disclosure relates to digital communications, and more particularly to the combination of generalized bit-to-symbol mapping and the use of symbol-to-bit mapping with forward error correction (FEC) as part of a wireless digital communications system. [Background technology]

[0003] background

[0003] A lattice is a periodic arrangement of points in n-dimensional space. Communications engineers and information theorists often use lattices in quantization and modulation, for example to perform lossy compression ("source coding") and / or noise resilience ("channel coding").

[0004]

[0004] Polar codes are the highest class of FEC codes, achieving symmetric capacity over memoryless channels with explicit construction and being decoded using low-complexity algorithms. Several generalizations of polar codes exist in the literature, such as polar codes over alphabets of prime order and polar codes over finite fields. Summary of the Invention [Means for solving the problem]

[0005] overview In some embodiments, a method includes receiving a bit sequence in a processor and identifying a set of binary sequences based on the bit sequence. Each binary sequence from the set of binary sequences is mapped to a first Abelian group element from a plurality of first Abelian group elements. A generalization of polar codes is applied to each of the first Abelian group elements to generate a plurality of second Abelian group elements, and each of the second Abelian group elements is mapped to some signal in-phase / quadrature (I / Q) constellation to respect the natural geometry of the base group. The set of constellation points can be from a lattice-based signal constellation, a conventional quadrature amplitude modulation (QAM), or any other I / Q constellation. Real-valued points from the set of constellation points are identified based on the mapping and / or the I / Q constellation, each real-valued point representing an I / Q point. A signal is transmitted or caused to be transmitted, the signal having modulation based on the real-valued points.

[0006] In some embodiments, the method includes encoding a plurality of data bits into an index value, the index value being:

number

number

[0007] In some embodiments, a non-transitory processor-readable medium having stored thereon instructions that, when executed by a processor, cause the processor to receive a signal representing a plurality of encoded symbols, each symbol from the plurality of symbols representing an encoded binary sequence from a plurality of binary sequences, each encoded binary sequence from the plurality of binary sequences being encoded using a generalization of a polar code, a data structure including transmission probabilities is identified based on the plurality of symbols, and the signal is decoded based on the data structure of transmission probabilities using successive cancellation to identify the plurality of binary sequences. [Brief explanation of the drawings]

[0008] [Figure 1] 1 is a diagram of a trellis-based data modulation system according to one embodiment. [Figure 2]

[0009] 3 is a flowchart illustrating a first data encoding / signal modulation method according to one embodiment. [Figure 3]

[0010] 4 is a flowchart illustrating a second data encoding / signal modulation method according to one embodiment. [Figure 4]

[0011] 4 is a flowchart illustrating a method for decoding a received signal according to one embodiment. [Figure 5]

[0012] 1 is a graph illustrating curves of signal-to-noise ratio (in decibels dB) vs. log10 (bit error rate (BER)) for several different modulation schemes, according to one embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0009] Detailed Description

[0013] According to some embodiments of the present disclosure, forward error correction (FEC) is performed using both generalized bit-to-symbol mapping and generalized symbol-to-bit mapping for digital communications. For example, (1)

number

[0010] Generalization of polar codes

[0014] Known generalizations of polar codes include generalizations of work originally done by Sasoglu et al. (see, e.g., "Polarization for Arbitrary Discrete Memoryless Channels," Information Theory, August 2, 2009, the contents of which are incorporated herein by reference in their entirety). Some such known generalizations follow the pattern of successful generalizations of linear block codes leading to Reed-Solomon codes over finite fields. In one theoretical work, Sasoglu et al. showed, in the same year that polar codes themselves appeared, that polar codes can be extended to alphabets of prime and prime-power size using finite field arithmetic. In particular, for prime-power alphabet sizes, Sasoglu

number

number

[0011]

[0015] Later, in another theoretical work, Sasoglu argued that a similar argument

number

number

[0012]

[0016] In yet another theoretical study, Sahebi et al. in 2012 showed that there exists a theoretical generalization that achieves the capacity of any finite alphabet and any abelian group structure over that alphabet (see, e.g., "Multilevel Polarization of Polar Codes Over Arbitrary Discrete Memoryless Channels," Information Theory, July 7, 2011, the contents of which are incorporated herein by reference in their entirety). Sahebi showed that the general phenomenon that arises when using the same generator matrix is ​​multilevel polarization, and thus

number

[0013]

[0017] None of the above works address the encoding of bits into codewords, the conversion of those codewords to modulated baseband I / Q, or how to actually transmit that modulated I / Q over any kind of channel. Furthermore, none of the works address in any way how to receive the signal, correct errors, or decode the codewords, or how to recover the data message. To the inventors' knowledge, there are no known documents discussing actual coding performance related to the above works. For example, there are no published bit error rate (BER) curves, receiver operating characteristic (ROC) curves, etc., related to this technology.

[0014] Abelian groups / lattice constellations

[0018] The forward error correction methods described herein can be used in conjunction with one or more dense lattice constellations in some embodiments. Digital communications can use dense constellations in higher-dimensional signal spaces. Examples of efficient lattice-based constellation mapping can be found, by way of example, herein and / or in U.S. Patent Application Publication No. 2023 / 0291632, entitled "Methods and Apparatus for Signal Modulation Using Lattice-Based Signal Constellations," published September 14, 2023, the entire contents of which are incorporated herein by reference. Dense constellations in higher-dimensional signal spaces facilitate the use of lower energy to achieve the same minimum distance between constellation points. Known schemes that combine coding theory with modulation, such as trellis-coded modulation and multilevel codes, involve the use of coded bits to specify a subset of the constellation, such as a lattice coset, and thus to identify the modulation of the points.

[0015] Lattice-Based Signal Constellations and Modulations

[0019] One concept known within the wireless communications community is to use a "higher density" of points in a higher-dimensional space than conventional quadrature amplitude modulation / amplitude and phase shift keying (QAM / APSK) constellations. This allows for a larger distance (e.g., Hamming distance or Euclidean distance) between constellation points, thereby reducing the probability of errors caused by channel noise or other channel distortions. Many attempts have also been made to combine coding theory, such as trellis-coded modulation and multilevel codes, with modulation.

[0016]

[0020] Many approaches use either coding-theoretic constructions (e.g., one of the approaches discussed in Conway, J and Sloane, N, "Sphere Packings, Lattices, and Groups," Springer, 1993) or underlying uncoded lattice constellations.

[0017]

[0021] Known coding theory construction techniques typically involve partitioning a lattice or set of lattices into a set of lattice cosets. A set of coded bits is then used to select a coset (as a subset of a lattice or set of lattices), and a set of uncoded bits is used to select a point within that subset. For example, a set of message bits may be passed through a standard (binary) error-correcting code (e.g., a convolutional encoder), and the output (coded) bits are used to select a coset. The remaining message bits are then used to select a point within that coset.

[0018]

[0022] Another known approach is to use an underlying uncoded lattice constellation instead of using a complex series of look-up tables (which become unwieldy for higher throughput / larger constellations) or instead of using more geometrically favorable shaped regions such as rectangles (which makes the constellation less efficient).

[0019]

[0023] There are also methods and systems for facilitating bit-to-symbol and symbol-to-bit mapping in lattice-based constellations and for mapping bits to complex baseband I / Q points, for example, in modems / baseband processors, without regard to any underlying coding theory and without signaling out the nearest element of the lattice. In some cases, these methods and systems do not use lookup tables to map bit sequences to lattice points or subsets of lattice points. Furthermore, in some cases, these methods and systems do not use rectangular shaped regions.

[0020]

[0024] A lattice may refer to the set of points in n-dimensional space given by all linear combinations with integer coefficients in a basis set of up to n linearly independent vectors. An example of a lattice is the Leech lattice. As used herein, the Voronoi region of a lattice point may refer to the region in n-dimensional space that is closer to that lattice point than all other lattice points. In other words, the Voronoi region of the lattice Λ

number

number

[0021]

[0025] FIG. 1 is a diagram of a trellis-based data modulation system according to one embodiment. The trellis-based data modulation system 100 can be used, for example, to repair signal distortion by correcting timing and frequency offsets. As shown in FIG. 1, the trellis-based data modulation system 100 includes a signal transmitter 110 in communication with a signal receiver 130 (e.g., via a wired or wireless communication network “N”). Optionally, one or both of the signal transmitter 110 and the signal receiver 130 also communicate with one or more remote computing devices 120 (e.g., via a wired or wireless communication network “N”) (e.g., for remote storage of data). The signal transmitter 110 includes a processor 112 operably coupled to a communication interface 114 and a memory 116. The memory 116 stores data and / or processor-executable instructions. 1, memory 116 includes bit string 116A, binary string 116B, lattice-based signal constellation 116C (including lattice elements 116D), real-valued points 116E, symbols 116F (e.g., rit and / or bit groups as described herein), algorithm 116G (e.g., one or more nearest vector algorithms), and optionally quotient 116H. Similarly, signal receiver 130 includes processor 132 operably coupled to communications interface 134 and memory 136. Memory 136 stores data and / or processor-executable instructions. For example, as shown in FIG. 1, memory 136 includes bit string 136A, binary string 136B, lattice-based signal constellation 136C (including lattice elements 136D), real-valued points 136E, symbols 136F, algorithm 136G (e.g., one or more nearest vector algorithms), and optionally quotient 136H.

[0022]

[0026] According to some embodiments of the present disclosure, a generalization of polar codes is performed that allows for the combination of trellis modulation (such as that described above and / or in U.S. Patent Application Publication No. 2023 / 0291632) and forward error correction in a single framework.

number

[0023]

[0027] Polar codes are

number

number

number

number

[0024] Generalization to larger integer lattices

[0028] In some embodiments, the matrix G introduced above is used as part of the generalization, but the arithmetic is

number

number

number

number

number

[0025]

[0029] Note that if only multiplication by 1 is used, the transformation is always invertible by the generator matrix:

number

[0026]

[0030] In other words, the transformation is the difference between the received values.

number

[0027]

[0031] Typically,

number

number

number

[0028]

[0032] Similarly, the Kronecker power of the generator matrix G, which is the generator of a larger polar code,

number

number

number

number

number

number

[0029] Generalization to Abelian lattice quotients

[0033] Taking the above into consideration, we use the matrix G to

number

number

number

number

number

number

number

number

[0030]

[0034] In some embodiments,

number

number

number

number

number

[0073] This may be particularly suitable as there is a natural isomorphism to λ, thereby providing an efficient mapping to the lattice quotient onto a representative subset of λ.

[0031]

[0035] For example, the n-dimensional lattice Λ n Consider an ordered basis B of the

number

number

number

number

number

number

[0032]

[0036] B -1 By employing the same strategy using the mapping

number

number

number

[0033]

[0037] The value of λ is a power of 2 (λ=2 k , the quotient Λ n / λΛ n The number of points in is 2 nk This means that the quotient Λ is obtained by dividing a binary string (or substring) of length nk by n / λΛ n This means that there is a bijection to elements of . A bijection can be defined, for example, as a function that is both injective and surjective. In other words, for every element in the initial domain, there is a unique element in the codomain that it is mapped to, and every element in the codomain is mapped by at least one element in the initial domain.

[0034]

[0038] As a main consequence of the above, the lattice Λ

number

number

number

number

[0035]

[0039] The inventors have investigated the size of

number

number

[0036]

[0040] By using the generalized polar coding described herein, the gains from trellis modulation (such as those described herein and / or in U.S. Patent Application Publication No. 2023 / 0291632) can be combined with the ability to vary the effective code rate using best-in-class codes in additive white Gaussian noise (AWGN) channels, providing greater granularity in adjusting to varying channel conditions and power levels. Techniques for mapping data bits into the above framework and varying the rate of the generated codes are discussed in the following sections.

[0037] Bit-to-Symbol Mapping standard integer lattice

number

[0041] In some embodiments, the encoding process

number

number

number

number

number

number

number

number

number

[0038]

[0042] As an example,

number

number

[0039]

[0043]

number

number

[0040]

[0044] Similar procedures can be used on larger

number

[0041]

[0045] In some embodiments, the values ​​(e.g., the second plurality of Abelian group elements) can be converted to baseband I / Q that mimics the structure of a quadrature amplitude modulation (QAM) system. For example,

number

[0042]

[0046]

number

number

number

[0043]

[0047] Note that on an AWGN channel, errors appear in rit rather than in the bit values ​​themselves. In some cases, this is not necessarily a problem. For example, in equation (4),

number

number

[0044]

[0048] Note that an error in any one rit causes only one bit error in the underlying data.

[0045]

[0049] In some implementations, to construct the code, ignoring bit freezing for now, the Kronecker product of G can be applied to the input rit with the appropriate power. As a result, 0~

number

[0046]

[0050] for example,

number

number

number

[0047] Bit-to-symbol mapping using arbitrary lattices

[0051] This term represents a generalization over the previous one, but the computation is very similar - in that starting with data blocks, dividing them into blocks of data bits, potentially Gray-encoding those blocks, and then mapping to integers rit can remain the same. However, in addition to the above, the generated rit can be used as coefficients of the basis vectors of the lattice Λ. In that case, when the Kronecker product of a matrix G is applied, the addition

number

number

number

[0048]

[0052] A significant reduction in computational complexity can occur at this point. As can be observed from the lattice constellations described herein, integer mod

number

number

number

number

number

[0049]

[0053] Note that the above reduction in computational complexity does not provide any gain

number

number

number

number

[0050] Encoding rate adjustment

[0054] In the above example, every rit in the block of 8 rits fed to the encoder was used (

number

[0051]

[0055] According to the embodiments described herein, the use of polar codes and freezing of bit positions can be generalized.

number

[0052]

[0056]

number

number

[0053]

[0057] In each case, using fewer bits results in a subset of previously used values, such that the remaining rits are spaced further apart. In some implementations, the receiver can distinguish better between 0 and 4 than between all eight original values. Furthermore, the receiver can determine when only 0 or 4 are transmitted and can use this knowledge to improve decoding accuracy of subsequent bits.

[0054]

[0058] It should be noted that each reduction corresponds to a reduced constellation.

number

number

number

[0055]

[0059] In some known systems, a set of "mod-cod" parameters specifies a single constellation and coding rate to use. Such systems typically use all QPSK, all 16QAM, all 64QAM, etc., at a single specific coding rate. Such systems typically use channel information to determine which constellation and coding rate to use, taking into account that smaller constellations tend to perform better at low signal-to-noise ratios (SNRs), but at the same time transmit less information. Identifying the modulation constellation and coding rate is typically a highly complex decision involving the implementation of complex and sophisticated logic.

[0056]

[0060] In some embodiments of the present disclosure, in contrast to known approaches, the constellations, code rates, and modulation schemes are all unified in a single framework. The code rate automatically selects an appropriate constellation for each frozen rit, resulting in a mixed-constellation modulation that is automatically optimized for throughput and performance. In other words, the appropriate constellation for each frozen rit can be automatically selected based on the code rate, optionally using multiple different constellations.

[0057]

[0061] In some embodiments, a similar unified approach can be taken for arbitrary lattice versions of these codes. In some implementations, the lattice is

number

number

[0058]

[0062] In further embodiments (alternatively or additionally), generalizations of polar code successive cancellation decoders—e.g., list coding, use of log-likelihood ratios, cyclic redundancy check (CRC)-assisted decoding, systematic polar codes, etc.—are also compatible with the methods described herein, as further described below.

[0059]

[0063] In some embodiments, the symbol is

number

number

number

[0060]

[0064] In this example, we use polar codes: (0,0,0,0,0,0,0,1,0,1,1,1,1,1,1,1) The initial data word of may have a block size (i.e., total number of bits) of 16, and 8 data bits are transmitted, resulting in a rate 1 / 2 code. In the initial data word, 0s can be frozen and 1s can be data positions. This code can reflect the beta expansion technique to minimize the Bhattacharyya distance of the channel being used. Polar codes (

number

number

number

[0061]

[0065] The above

number

number

[0062]

[0066] The above

number

[0063]

[0067] In addition,

number

number

number

number

number

number

number

number

[0064]

[0068] An alternative view of the above is in the context of the modular structure of related groups. For example, if the data words

number

number

number

number

number

number

number

number

[0065]

[0069] This pattern is larger

number

number

number

number

number

number

[0066] decoder

[0070] In some embodiments, the codes described above can be decoded using a generalization of successive elimination (i.e., a successive elimination (SC) decoder). Successive elimination decoding can be performed similarly to polar codes, for example, by performing a depth-first tree search, given that the correct likelihood information is used and the associated UPPER and LOWER functions of the decoder are obtained or approximated. Some choices for the correct likelihood information that can be used in the decoder include: 1) a complete list of probabilities that the received symbol is one of the elements of the Abelian group (see example below for clarity); 2) the discrete Fourier transform of the list of Abelian group element probabilities, where the dimension of the Fourier transform depends on the group structure and modulation map; and 3) a list of the log-likelihood of each element of the Abelian group.

[0067]

[0071] In some cases, successive erasure can approach or achieve Shannon capacity, but may have speed limitations (e.g., due to large block sizes). In some implementations, a decoder for a polar code (e.g., a polar decoder) can include alternatives and / or variations of a successive erasure decoder. For example, a polar decoder can include a successive erasure list (SCL) decoder, a cyclic redundancy check-assisted SCL (CA-SCL) decoder, a belief propagation (BP) decoder, a successive erasure flip (SC-flip and / or SCF) decoder, a cyclic redundancy check-assisted successive erasure flip (CA-SCF) decoder, a simplified successive erasure (simplified SC and / or S-SC) decoder, a simplified SCL (S-SCL) decoder, a simplified CA-SCL (S-CA-SCL) decoder, a simplified BP (S-BP) decoder, a simplified SCF (S-SCF) decoder, a simplified CA-SCF (S-CA-SCF) decoder, a successive erasure (SC) stack-based decoder, etc. In some implementations, the decoder may include, for example, a convolutional decoder, a tropical decoder, a truncated encoder, a Fourier transform-based decoder, or the like.

[0068]

[0072] An example of the derivation of the decoder's UPPER and LOWER functions is as follows:

number

number

number

number

[0069]

[0073] As an example, the Abelian group

number

number

number

number

number

[0070]

[0074] These calculated / identified probabilities may be represented as data structures and / or data types, which may include and / or be related to, for example, probability mass functions, probability distribution functions, likelihood ratios, log-likelihood ratios, matrices, etc. Probabilities associated with probability mass functions (PMFs) may be, for example,

number

number

number

[0071]

[0075] In some implementations, the selection of the decoder type can be based on the probability representations described above. For example, the UPPER function of the PMF, PDF, and / or LR methods can include a convolution, and the LOWER function of these methods can include a Hadamard product. In some implementations, the convolution can be performed in the Fourier domain using a Fast Fourier Transform (FFT), which can convert the probability values ​​into a simple Hadamard product. For the LLR method, a tropical geometry following from the LogSumExp (e.g., RealSoftMax) approximation can be used.

[0072]

[0076] Next, using successive elimination with appropriate convolution-based UPPER and LOWER functions, matrix (7) decodes to (0,0,0,0,0,0,2,0,0,0,0,1,2,0,3,2), which, when converted back to the original bits and reading only the non-zero data entries, is 1011000100100010. Inverting the Gray code, if desired, returns 1110000100110011. The inventors are not aware of any known proof in the literature of how to actually decode the types of codes discussed above.

[0073]

[0077] The embodiments described herein are referred to herein as "rit"

number

[0074]

[0078] In some embodiments, the method includes encoding data based on elements of an Abelian group, freezing subgroup cosets, mapping a lattice modulation from bits to group elements, decoding, and partially freezing the index by freezing the bits.

[0075]

[0079] The "Bit-to-Symbol Mapping Using Standard Integer Lattices" section above shows how to actually encode data bits onto a generalized integer lattice, e.g., to mimic standard QAM, and the "Bit-to-Symbol Mapping Using Arbitrary Lattices" section above shows how to achieve the same using more general lattice groups. Some embodiments described herein promote the selection of dense lattices as Abelian groups onto which user data can be mapped and onto which generalized polar codes can be implemented, thereby producing significant gains over known communication systems, facilitating lower energy, fewer errors, and higher throughput. When this work is combined with the bit-to-symbol mapping described herein, the achievable gains are significant.

[0076]

[0080] In some embodiments, the code rate is adjusted by mapping the subgroups to the actual communication system, e.g., by transforming the subgroups into transmittable constellation points while lowering the constellation order by lowering the rate of the code.

[0077]

[0081] As shown in FIG. 2, method 200 includes receiving a bit sequence at a processor at 202 and performing error correction by identifying a set of binary sequences based on the bit sequence at 204. At 206, method 200 includes mapping each binary sequence from a plurality of binary sequences to a first Abelian group element (e.g., rit) from a plurality of first Abelian group elements, and at 208, applying a generalization of polar codes to the plurality of first Abelian group elements to generate a plurality of second Abelian group elements (e.g., rit after partial freezing). At 210, each of the second Abelian group elements is mapped to an I / Q point from a plurality of I / Q points (e.g., a constellation) in a manner that respects the natural geometry of the foundation group. In other words, there is a quasi-isometric embedding of an Abelian group with a natural language metric determined by a canonical basis on an open subset of I / Q space with a Euclidean metric. The multiple I / Q points can be from a lattice-based signal constellation, a conventional quadrature amplitude modulation (QAM), or any other I / Q constellation. At 212, based on the mapping and / or based on the I / Q constellation, real-valued points from the set of constellation points are identified, each real-valued point representing an I / Q point. At 214, a signal having modulation based on the real-valued points is transmitted.

[0078]

[0082] In some embodiments, the plurality of I / Q points are a lattice-based signal constellation. In other embodiments, the modulation is quadrature amplitude modulation (QAM). In some embodiments, the real-valued points represent in-phase / quadrature (I / Q) points or components. In some embodiments, a method (e.g., method 200) may further include applying at least one of a permutation or a bijection to each binary sequence from the plurality of binary sequences before performing the mapping of the second Abelian group elements to the plurality of I / Q points. In some embodiments, the at least one of the permutation or the bijection may include at least one of a Gray code or an inverse Gray code. In some embodiments, the generalization of a polar code may include a systematic code. In some embodiments, the plurality of first Abelian group elements may be associated with a first bit length, and the plurality of second Abelian group elements may be associated with a second bit length.

[0079]

[0083] In some embodiments, the plurality of I / Q points is a lattice-based signal constellation, and the medium further stores instructions that cause the processor to use partial freezing of at least one binary sequence from the plurality of binary sequences to reduce a dimension of an effective constellation associated with the lattice-based signal constellation into a subgroup.

[0080]

[0084] As shown in FIG. 3, in some embodiments, a method 300 includes, at 302:

number

number

[0081]

[0085] In some embodiments, the decoder can be configured to decode the signal based on a number of bits greater than a minimum value without receiving an indication of the number of bits. In some embodiments, the number of bits can be associated with a continuous limit and / or can be arbitrarily large. In some embodiments, the index value can be associated with an Abelian group element. In some embodiments, each bit from a subset of bits from the plurality of data bits can be associated with a data position from a plurality of data positions, and the subset of data bits can be selected from the plurality of bits based on an indication of channel capacity. In some embodiments, the modulation can be quadrature amplitude modulation (QAM).

[0082]

[0086] 4, in some embodiments, a signal decoding method 400 includes receiving 402 a signal representing a plurality of encoded symbols, where each symbol from the plurality of symbols represents an encoded binary sequence from a plurality of binary sequences, where each encoded binary sequence from the plurality of binary sequences is encoded using a generalization of a polar code. The method 400 also includes identifying 404 a data structure of transmission probabilities based on the plurality of symbols, and decoding 406 the signal based on the data structure of transmission probabilities using successive cancellation to identify the plurality of binary sequences. Optionally, decoding the signal at 406 includes inverting a Gray code map.

[0083]

[0087] In some embodiments, the at least one transmission probability may be associated with at least one of a probability mass function, a probability distribution function, a likelihood ratio, or a log-likelihood ratio. In some embodiments, the decoder may include at least one of a convolutional decoder, a tropical decoder, a truncated decoder, or a Fourier transform-based decoder, and the decoder may be configured to decode the plurality of symbols without receiving an indication of the number of bits associated with each symbol. In some embodiments, the signal may include a representation of the plurality of binary strings. In some embodiments, the method 400 may further include forwarding the signal without decoding the signal based on the at least one check bit and the representation of the plurality of binary strings.

[0084]

[0088] 5 is a graph illustrating signal-to-noise ratio (in decibels dB) vs. log 10 (bit error rate (BER)) curves for several different modulation schemes, according to one embodiment. The x-axis of graph 500 represents a signal-to-noise ratio measurement (SNR and / or SNR per bit) in decibels (dB), which may include, for example, the ratio of the signal energy associated with each bit (or each user data bit) to the noise spectral density (e.g., noise power in a 1 Hz bandwidth). The y-axis of graph 500 represents the bit error rate (BER) (e.g., log 10 (BER)). Data represented in graph 500 includes: (1) data associated with an uncoded 256-QAM scheme; (2) data associated with a standard polar coding scheme (block size 64, rate ½) using successive cancellation (SC) decoding; and (3) data associated with a standard polar coding scheme (block size 64, rate ½) using successive cancellation (SC) decoding.

number

number

number

number

[0085]

[0089] Some embodiments of the present disclosure implement what may be referred to as "Bombe codes," which are defined as block codes and modulation schemes that use polar generator matrices that employ arithmetic on the Z-module structure of Abelian groups, along with lattice modulations or mappings (which may include QAM, lattice constellations described in U.S. Patent Application Publication No. 2023 / 0291632, etc.).

[0086]

[0090] Implementations of the various techniques described herein may be implemented in digital electronic circuitry, or in computer hardware, firmware, software (executed or stored in hardware), or in combinations of them. Implementations may also be implemented as a computer program product, e.g., a computer program tangibly embodied in, for example, a machine-readable storage device (such as a computer-readable medium, a non-transitory computer-readable storage medium, or a tangible computer-readable storage medium), for processing by or controlling the operation of a data processing device, e.g., a programmable processor, a computer, or multiple computers. Computer programs, such as those described above, may be written in any form of programming language, including compiled or interpreted languages, and may be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program may be deployed for processing on one computer, on multiple computers at one site, or distributed across multiple sites and interconnected by a communication network.

[0087]

[0091] The method steps may be performed by one or more programmable processors that execute computer programs to perform functions by operating on input data and generating output. The method steps may also be performed by, and an apparatus may be implemented by, special purpose logic circuitry, such as an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).

[0088]

[0092] Processors suitable for processing a computer program include, by way of example, general-purpose and special-purpose microprocessors, and any one or more processors of any kind of digital computer. Typically, a processor receives instructions and data from a read-only memory, a random-access memory, or both. Elements of a computer may include at least one processor for executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will include, or be operatively coupled to, one or more mass storage devices for storing data, such as magnetic, magneto-optical, or optical disks, for receiving data, transmitting data, or both. Information carriers suitable for embodying computer program instructions and data include, by way of example, semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks, such as internal hard disks or removable disks; magneto-optical disks; and all forms of non-volatile memory, including CD-ROM and DVD-ROM disks. The processor and memory may be supplemented by, or incorporated in, special-purpose logic circuitry.

[0089]

[0093] To provide for interaction with a user, implementations may be implemented in a computer having a display device, e.g., a liquid crystal display (LCD or LED) monitor, a touchscreen display, for displaying information to the user, and a keyboard and pointing device, e.g., a mouse or trackball, that allows the user to provide input to the computer. Other types of devices may be used to interact with the user as well; for example, feedback provided to the user may be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback, and input from the user may be received in any form, including acoustic input, speech input, or tactile input.

[0090]

[0094] The embodiments may be implemented in a computing system that includes back-end components, such as data servers, or middleware components, such as application servers, or front-end components, such as client computers having graphical user interfaces or web browsers that allow users to interact with the embodiments, or any combination of such back-end, middleware, or front-end components. The components may be interconnected by any form or medium of digital data communication, such as a communications network. Examples of communications networks include local area networks (LANs) and wide area networks (WANs), such as the Internet.

[0091]

[0095] While certain features of the described embodiments have been illustrated as set forth herein, many modifications, substitutions, changes, and equivalents will now occur to those skilled in the art. It is therefore to be understood that the appended claims are intended to cover all such modifications and changes that are within the scope of the embodiments. It should be understood that the embodiments have been presented by way of example only, and not by way of limitation, and that various changes in form and detail may be made. Any portion of the apparatus and / or methods described herein may be combined in any combination except in mutually exclusive combinations. The embodiments described herein may include various combinations and / or subcombinations of the functions, components, and / or features of the different embodiments described.

Claims

1. A non-transitory processor-readable medium having stored thereon instructions that, when executed by a processor, cause the processor to: receiving a bit string; performing error correction; and Let them do this, performing said error correction identifying a plurality of binary strings based on the bit string; mapping each binary sequence from the plurality of binary sequences to a first Abelian group element from a plurality of first Abelian group elements; applying a generalization of polar codes to the plurality of first Abelian group elements to generate a plurality of second Abelian group elements; mapping each second Abelian group element from the plurality of second Abelian group elements to an in-phase / quadrature (I / Q) point from a plurality of I / Q points; identifying a plurality of real-valued points based on the plurality of I / Q points, each real-valued point from the plurality of real-valued points representing an I / Q point from the plurality of I / Q points; transmitting a signal having modulation based on the plurality of real-valued points; A non-transitory processor-readable medium performed by

2. 10. The non-transitory processor-readable medium of claim 1, wherein the plurality of I / Q points are included in a lattice-based signal constellation.

3. 10. The non-transitory processor-readable medium of claim 1, wherein the modulation is quadrature amplitude modulation (QAM).

4. 2. The non-transitory processor-readable medium of claim 1, further storing instructions that cause the processor to apply at least one of a permutation or a bijection to each binary string from the plurality of binary strings before performing the mapping of the second Abelian group elements to the plurality of I / Q points.

5. The non-transitory processor-readable medium of claim 4 , wherein the at least one of the permutation or the bijection comprises at least one of a Gray code or an inverse Gray code.

6. 10. The non-transitory processor-readable medium of claim 1, wherein the plurality of I / Q points is a lattice-based signal constellation, the non-transitory processor-readable medium further storing instructions that cause the processor to use partial freezing of at least one binary sequence from the plurality of binary sequences to reduce a dimension of an effective constellation associated with the lattice-based signal constellation into a subgroup.

7. The non-transitory processor-readable medium of claim 1 , wherein the generalization of polar codes includes systematic codes.

8. 2. The non-transitory processor-readable medium of claim 1, wherein the plurality of first Abelian group elements are associated with a first bit length and the plurality of second Abelian group elements are associated with a second bit length that is different from the first bit length.

9. via a first processor, a plurality of data bits; [Equation 1] where Λ is a lattice; [Equation 2] is the number of bits in the plurality of data bits; modulating, via the first processor, the plurality of index values ​​onto a plurality of lattice points of a lattice group; converting, via the first processor, each lattice point from the plurality of lattice points to a baseband in-phase / quadrature (I / Q) point from a plurality of I / Q points; transmitting, via the first processor, a signal having a demodulated component having modulation based on the plurality of I / Q points, the demodulated component being received by a second processor and then decoded by the second processor using a decoder to generate the plurality of data bits; A method comprising:

10. 10. The method of claim 9, wherein the decoder is configured to decode the signal based on the number of bits being greater than a minimum value without receiving an indication of the number of bits.

11. The method of claim 10 , wherein the number of bits is associated with a continuation limit.

12. The method of claim 9 , wherein the index values ​​are associated with Abelian group elements.

13. each bit from the subset of bits from the plurality of data bits is associated with a data position from a plurality of data positions; the subset of data bits is selected from the plurality of bits based on an indication of channel capacity.

10. The method of claim 9.

14. 10. The method of claim 9, wherein the modulation is quadrature amplitude modulation (QAM).

15. A non-transitory processor-readable medium having stored thereon instructions that, when executed by a processor, cause the processor to: receiving a signal encoding a plurality of symbols, each symbol from the plurality of symbols representing a binary string from a plurality of binary strings, each binary string from the plurality of binary strings being encoded using a generalization of a polar code; identifying a data structure representing at least one transmission probability based on the plurality of symbols; decoding the signal using a decoder based on the data structure to identify the plurality of binary strings; a non-transitory processor-readable medium for causing the

16. 16. The non-transitory processor-readable medium of claim 15, wherein the instructions for decoding the signal include instructions for inverting a Gray code map.

17. 16. The non-transitory processor-readable medium of claim 15, wherein the at least one transmission probability is associated with at least one of a probability mass function, a probability distribution function, a likelihood ratio, or a log-likelihood ratio.

18. the decoder comprises at least one of a convolutional decoder, a tropical decoder, a truncated decoder, or a Fourier transform-based decoder; 16. The non-transitory processor-readable medium of claim 15, wherein the decoder is configured to decode the plurality of symbols without receiving an indication of the number of bits associated with each symbol.

19. 16. The non-transitory processor-readable medium of claim 15, wherein the signal comprises a representation of the plurality of binary strings.

20. 20. The non-transitory processor-readable medium of claim 19, further storing instructions that, when executed by the processor, cause the processor to forward the signal based on at least one check bit and the representation of the plurality of binary strings without decoding the signal.