A method of decoding a codeword

By performing reliability sorting and codebook-independent quantization on the soft information of the demodulated symbols, a noise pattern sequence is generated, which solves the problem of high computational complexity in the GRAND method and achieves an efficient decoding process.

CN114556791BActive Publication Date: 2025-11-25MAYNOOTH UNIV MAYNOOTH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202080071330.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-12-11
Filing Date
2020-10-21
Publication Date
2025-11-25
Estimated Expiration
2040-10-21

AI Technical Summary

Technical Problem

Existing GRAND decoding methods suffer from high computational complexity and fail to fully utilize the soft information provided by the receiver when using hard decision demodulation information. In particular, the SRGRAND and SGRAND methods require additional storage and computational resources during implementation.

Method used

By using the reliability ordering of symbols, the soft information of the demodulated symbols is quantized independently in the codebook, and a noise pattern sequence is generated according to the reliability order, which reduces the dependence on noise models and channel estimation and simplifies the decoding process.

Benefits of technology

It achieves decoding accuracy similar to SGRAND, while reducing computational complexity and resource requirements, decreasing reliance on storage and channel estimation, and improving decoding efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114556791B_ABST
    Figure CN114556791B_ABST
Patent Text Reader

Abstract

The present application relates to an iterative bit flipping decoding method using symbol or bit reliabilities, which is a variation of GRAND decoding and denoted by ordered reliability bit GRAND (ORB-GRAND). It includes receiving a plurality of demodulated symbols from a noisy transmission channel; and for the plurality of demodulated symbols, receiving ranked order information indicative of reliabilities of at least least reliable information contained within the plurality of demodulated symbols. A sequence of hypothesized noise patterns from a most likely noise pattern affecting the plurality of symbols to one or more successive less likely noise patterns is provided. In response to information contained within the plurality of symbols not corresponding to an element of a codebook comprising a set of valid code words, using a first hypothesized noise pattern in the sequence of hypothesized noise patterns to flip least reliable information contained within the plurality of symbols to obtain a potential code word, and in response to the potential code word not corresponding to an element of the codebook, iteratively: applying a next likely noise pattern from the sequence of hypothesized noise patterns to flip effects of noise on the received plurality of demodulated symbols to provide a potential code word, each successive noise pattern indicative of a flip of information of one or more demodulated symbols for a next more reliable information combination contained within the plurality of symbols until the potential code word corresponds to an element of the codebook.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present invention relates to a method of decoding a plurality of symbols into a codeword in a decoder. BACKGROUND

[0002] K. R. Duffy, J. Li, and M. Medard, “Guessing noise, not code-words,” in IEEE Int. Symp. on Inf. Theory, 2018; K. R. Duffy, J. Li, and Medard, “Capacity-achieving guessing random additive noise decoding (GRAND),” in IEEE Trans. Inf. Theory, 65(7), 4023-4040, 2019; K. R. Duffy and M. Medard, “Guessing random additive noise decoding with soft detection symbol reliability information,” in IEEE Int. Symp. on Inf. Theory, 2019; and K. R. Duffy, M. Medard, and W. An, “Guessing random additive noise decoding with soft detection symbol reliability information (SRGRAND),” in arXiv: 1902.03796, Tech. Rep., 2019; and A. Solomon, K. R. Duffy, and M. Medard, “Soft maximum likelihood decoding using GRAND,” in Tech. Rep., 2019, and US2019 / 199473 and US2019 / 199377 disclose a series of techniques for decoding signals by guessing noise.

[0003] Among the most basic techniques, called GRAND, guess random additive noise decoding. GRAND is applicable to any block code structure and can decode any forward error correction / detection block code, such as cyclic redundancy check (CRC) codes, requiring only a mechanism to query whether a bit string derived from one or more demodulated symbols, each of which corresponds to one or more bits, received over one or more noisy transmission channels, is in the codebook. In GRAND, the decoder takes a bit string comprising a potential codeword from the demodulator and queries whether it is in the codebook. If so, the codeword is used as the decoded output. If not, the most likely non-zero binary noise pattern determined by the noise model is subtracted from the string and the resulting next potential codeword is queried for membership in the codebook. This inherently parallelizable process proceeds sequentially in increasing order of likelihood of the putative noise pattern until a codeword in the codebook is identified or a query threshold T, which is the number of codebook queries, is exceeded, reporting an error.

[0004] GRAND assumes that the decoder obtains only hard-decision demodulated symbols from the receiver. In this case, GRAND can produce the best exact maximum likelihood (ML) decoding, assuming the noise model employed and that the order of the putative noise patterns reflects the statistical properties of the noise in the transmission channel(s).

[0005] All variants of GRAND remove putative noise patterns from the bit string derived from the demodulated symbols sequentially in order from most likely to least likely, based on their noise model and any soft information available to them, querying the remainder for membership in the codebook.

[0006] The difference between GRAND variants is in their ordering of the queries for putative noise patterns, which depends on the soft information available to them. Each variant determines its order of queries or sequence of putative noise patterns according to the noise model of the transmission channel(s) and in combination with the soft information provided by the receiver.

[0007] Symbol reliability GRAND (SRGRAND) utilizes the most extreme quantization of soft information, in which, for each set of n demodulated hard-detected symbols, each symbol comprises one or more bits, one additional bit b nThe demodulated symbols are labeled as reliably or unreliably received. SRGRAND performs a hard-detection decoding similar to GRAND, but only queries bit flips in the unreliable symbols. If a symbol is correctly labeled as reliable, SRGRAND provides ML decoding, assuming that the memoryless noise affects the unreliable symbols. This use of binary quantized soft information increases decoding accuracy and reduces run-time, but does not fully utilize all information at the receiver.

[0008] Soft Grand (SGRAND) uses full soft information, including real numbers for each demodulated symbol, to dynamically maintain a sequence of hypothesized noise patterns that, by design, necessarily contains the next most likely hypothesized noise pattern. After q codebook queries, the sequence contains q noise patterns and their likelihoods. The next hypothesized noise pattern is the one with the highest likelihood in the sequence. If subtracting it from the received string does not result in an element of the codebook, it is removed from the list and two additional hypothesized noise sequences are introduced. To implement SGRAND, the real information for each received symbol must be passed by the receiver to the decoder, and the decoder needs memory storage to maintain the dynamically determined adaptive sequence of hypothesized noise patterns, both of which can hinder its implementation in practice. SUMMARY

[0009] According to the invention, there is provided a method of decoding a plurality of symbols into a codeword in a decoder.

[0010] In another aspect, there is provided a decoder configured to perform the method according to the invention; and a computer program product comprising executable code stored on a computer readable medium, which code, when executed in a decoder, is configured to perform the method according to the invention.

[0011] In addition to the hard decision demodulation information provided by the demodulator, embodiments also utilize codebook independent quantization of soft information: a rank ordering of the reliability of groups of n demodulated symbols from which one or more bits can be extracted from each symbol.

[0012] Embodiments use this soft information to sort the demodulated information in order of reliability, and apply a sequence of noise patterns starting with the most likely noise pattern based on the reliability information until a codeword is found in the codebook or a query threshold is reached.

[0013] One benefit of this approach is that there are efficient algorithms to generate the sequence of noise patterns on the fly, or the sequence of noise patterns can be pre-stored, as their order is universal in a class of rank ordered flip probabilities.

[0014] In some embodiments, for a block of n symbols, it is required to provide from the demodulator to the decoder no more than log2(n) bits of additional minimum integer of soft information per symbol greater than the hard information to signal the rank ordering of the reliability of the hard information.

[0015] If the sequence of presumed noise patterns is consistent with some channel noise effect model, then for any ranked order of reliability of the sequence of hard information, the sequence of presumed noise patterns will be the same.

[0016] Based only on the ranked order of reliability information, embodiments produce decoding with similar accuracy as G RAND, but with simpler computation, and without further channel estimation or noise model. BRIEF DESCRIPTION OF DRAWINGS

[0017] Embodiments of the application will now be described, by way of example only, with reference to the accompanying drawings in which:

[0018] Figure 1 A transmitter in communication across a noisy transmission channel with a receiver is shown, and the demodulator within the receiver providing soft information to the decoder is shown according to a variant of G RAND; and

[0019] Figure 2 An exemplary sequence of presumed noise patterns that can be employed within embodiments of the application is shown. DETAILED DESCRIPTION

[0020] Reference is now made to Figure 1 , a transmitter 10 and a receiver 12 in communication with each other across a noisy transmission channel 14. The transmitter 10, which can be of a conventional type, generates or obtains information 16 that needs to be transmitted. Typically, this is generated by some type of application (not shown) running on the transmitting device 10. Nonetheless, it should be appreciated that the information can be generated by any level of software or hardware executing on the transmitter or on a device coupled to the transmitter. The information is typically serialized and provided to an encoder 18, which can encapsulate the information in any conventional manner, e.g., adding redundant information to enable checking or recovery of lost information or encrypting the information, before providing the information to a modulator 20 for transmission across the channel 14.

[0021] The channel 14 can be any form of wired or wireless channel susceptible to noise interference, and in some cases, the channel 14 can be divided into multiple sub-channels that carry the information in parallel. In any case, it should be appreciated that the channel 14 can comprise any optical, electrical, electromagnetic or other medium or combination thereof.

[0022] The transmitted information is picked up by a receiver 12 coupled to the channel 14, typically by an antenna for a radio electromagnetic channel, and provided to a demodulator 22. The modulator 20 and the demodulator 22 are paired and can be of any form as long as the demodulator 22 is able to produce a stream of symbols from the signal received across the channel 14.

[0023] In this embodiment, the stream of symbols is provided to a decoder 24 and the decoder is again configured to reverse the processing performed by the encoder 18 to provide digital information 26 corresponding to the transmitted information 16.

[0024] As mentioned above, with GRAND, only the stream of demodulated symbols produced by the demodulator 22 is provided to the decoder 24, with SRGRAND, in addition to the stream of demodulated symbols, only a binary indication of the reliability or unreliability of any given symbol is provided, and with SGRAND, in addition to the stream of demodulated symbols, real-valued soft information is provided for each symbol generated by the demodulator 22.

[0025] Part of the decoding process includes mapping the stream of demodulated symbols into a binary stream of valid information, i.e. a string of bits. Each portion of the stream of valid information corresponds to a codeword and once the codeword is determined from one or more demodulated symbols, it can be processed, including decrypted or buffered as necessary, before providing the processed information 26.

[0026] It will be appreciated that if the transmission channel 14 is affected by noise, the potential codeword, i.e. the string of bits derived from the demodulated symbols provided by the demodulator 22, will not be identified as a valid codeword in the codebook. (Again, the codebook can be any one of a random codebook, a random linear codebook, a Hamming codebook or a low density parity check codebook or any form of codebook) With GRAND, SRGRAND and SGRAND, the decoder 24, from the noise model and any soft information available to it, removes putative noise patterns from the string of bits from the demodulated symbols and including the potential codeword in order of most likely to least likely noise pattern and queries whether the remaining noise patterns are in the codebook.

[0027] According to one embodiment of the present application, the decoder 24 uses both hard decision demodulation information provided by the demodulator 22, which is split into n groups of demodulated symbols y n and soft information including a permutation r n indicating a rank ordering of the reliability of the associated n groups of demodulated symbols.

[0028] from r nThe indicated ordinal ranking is a codebook independent quantization of the soft information indicating the reliability of each symbol in the group of symbols. It can be appreciated that n symbols can have n! permutations, and thus r n A sufficiently large word size is required to encode the particular permutation of the group of symbols.

[0029] In the case where the order of the permutation is not known a priori by the decoder 24, then in the case where n is a power of 2, log2(n) bits of soft information will be required for each symbol. For n values that are not a power of 2, a slightly higher number, i.e., the smallest integer greater than log2(n) bits of soft information, is required for each symbol.

[0030] On the other hand, in the case where the order of the permutation is known a priori by the demodulator 22 and the decoder 24, r n Only an index to an algorithm or lookup table that will respond to receiving r n The permutation is returned, and this can reduce the size of the soft information required for each symbol to no more than log2(n!) / n bits of soft information, which is less than log2(n) bits. Thus, a permutation indicating the ordinal ranking of a group of 12 demodulated symbols can be encoded in 29 bits, with less than 3 bits of soft information required for each symbol.

[0031] Even this assumes that the ordinal ranking of all symbols of the group of n symbols is employed by the decoder 24. For example, if the decoder attempts to apply the query threshold T for the assumed noise pattern based only on flipping the information contained in the least reliable symbols, then the group of n symbols can be divided into n-a least reliable symbols and the remaining a most reliable symbols. Then, as can be seen from the following example, only the ranked order of the n-a least reliable symbols need be provided to the decoder, as only this information is required to determine the sequence of up to T noise patterns applied to the group of demodulated symbols, thereby reducing the amount of soft information required for a given amount of hard information.

[0032] In any case, upon receiving the soft information indicating the permutation r n The decoder 24 is able to immediately determine the ordinal ranking of the reliability of the symbols within the associated group of symbols y n This order enables the decoder to map each symbol in order of reliability from least reliable to least least reliable (most reliable).

[0033] Referring now to Figure 2 This figure illustrates the first 100 assumed noise patterns in a sequence of exemplary noise patterns for a transmission channel 14 affected by white noise, and can be applied to a sequence of 13 symbols. Each row represents an assumed noise pattern, with white being "no flips" and black corresponding to flipped symbols' information.

[0034] For simplicity, this example is described for symbols that provide 1 bit of demodulated information. Thus, flipping the information of a symbol simply involves flipping the demodulated value of the bit between 1 and 0. In other implementations, the symbols can provide z > 1 bits of demodulated information. In this case, flipping the information of any given symbol involves flipping the demodulated values of all bits to their 2 z -1 remaining combination subsequence (assuming the first combination has already been tried).

[0035] Returning to the example of Figure 2 , the order of the noise patterns is determined by evaluating the cost of flipping the information, with the cost of flipping the information of the least reliable bit being less than the cost of flipping the information of the more reliable bits. One simple cost function is based on the sum of the ordered rank positions of the bits to be flipped (from 1 to 13 in Figure 2 ). The sums are compared. Thus, the most likely erroneous sequence of assumptions is the sequence with no bit flips, followed by the sequence with only the most likely, i.e., the least reliable bit flipped, followed by the sequence with only the second least reliable bit flipped, followed by the tie between the sequence with only the third least reliable bit flipped and the sequence with both the first and second least reliable bits flipped, and so on.

[0036] Thus, flipping the bit in position 1 (i.e., the least reliable bit in the group of bits) has a lower value than flipping the bit in position 2 (i.e., the second least reliable bit in the group of bits), so that bit is flipped first, and then the bit in position 2 is flipped.

[0037] As explained, using the simple sum criterion results in a tie between flipping the least reliable bit and the second least reliable bit; or flipping only the third least reliable bit. This tie, and other ties, can be broken arbitrarily, so that in the example of Figure 2 , if the previous noise pattern flip does not result in a valid codeword, then the third noise pattern employed involves flipping the first and second least reliable bits, and then flipping the third least reliable bit.

[0038] Other noise models can impose an additional likelihood penalty or cost on sequences with more flipped bits, and such models can appear to provide a better approximation for higher quality channels. In this case, the third least reliable bit would be flipped before the combination of the first and second least reliable bits is flipped, as this involves fewer flips.

[0039] Figure 2Other variants of the noise model are possible and these can be based on a priori knowledge of the characteristics of a given transmission channel or based on learned characteristics such that the order of the noise patterns within the sequence is changed to promote the patterns that are more likely to contain a group of symbols that affect demodulation (and hence flipping is less costly).

[0040] In any case, it will be seen that, in contrast to the approach of GRAND and SRGRAND, knowing the ranked order of reliability of the demodulated information means that the information of the less reliable bits can be flipped before the information of the more reliable bits. Thus, although in the example of Figure 2 using GRAND or SRGRAND (where all bits are marked as unreliable), the information of the most reliable symbol in position 13 is flipped only after more than 80 noise patterns in the sequence, this bit tends to be flipped only after 13 patterns in the sequence. Similarly, knowing the ranked order of reliability of the demodulated information means that the information of the two least reliable bits can be checked by flipping their information with the third (or fourth) noise pattern in the sequence, whereas using GRAND or SRGRAND this would only happen after 13 patterns and possibly the 26th pattern in the sequence.

[0041] Using embodiments of the application, this improved application of potential noise patterns to the demodulated information is possible without the embodiments of the application assuming any further information about the received signal or channel noise model beyond the soft information provided by the demodulator 22.

[0042] The above embodiments have been described in terms of ranking the reliability of the symbols within a group of n symbols and flipping the bit information of those symbols according to the sequence of noise patterns and the ranked reliability of the symbols.

[0043] In a variant of the application, rather than ranking the reliability of the demodulated symbols for one or more bits that can correspond to the decoded information, the soft information provided by the demodulator 22 can directly rank the demodulated bits. Thus, as previously mentioned, the demodulator 22 needs to pass to the decoder 24 a codebook independent soft information of no more than log2(n) bits per demodulated bit. (Again, for n values that are not a power of 2, a slightly higher number is needed, i.e. the smallest integer greater than log2(n) bits of soft information).

[0044] The demodulated bits can then be ranked from least reliable to most reliable using the soft information and the sequence of noise patterns (such as Figure 2 the group of 13 bits shown) can be applied to the demodulated bits until a valid codeword is detected.

[0045] Likewise, to reduce the amount of soft information that needs to be passed to the decoder 24 for a group of n bits, techniques such as disclosed above can be used, including agreeing on an order of possible permutations of bits or using knowledge of the query threshold T to limit the soft information to only a ranked order of the least reliable bits.

[0046] Likewise, it will be appreciated that the above-described process facilitates parallelization, such that for example multiple decoders can apply multiple noise patterns simultaneously to demodulated symbols provided by a demodulator.

Claims

1. A method in a decoder (24) of decoding a plurality of symbols received from a data sender (10) using a noisy transmission channel (14) into a codeword, the method comprising: receiving from the noisy transmission channel hard decision demodulation information on a plurality of demodulated symbols, each symbol corresponding to z > 1 bits; for the plurality of demodulated symbols, receiving information indicative of a ranked order of reliability of the least reliable information contained within the plurality of demodulated symbols, wherein the least reliable information comprises n > 1 least reliable symbols of the plurality of demodulated symbols, and wherein n is equal to a power of 2, the information indicative of the ranked order of reliability comprises no more than log2(n) bits per unreliable symbol, or wherein n is not equal to a power of 2, the information indicative of the ranked order of reliability comprises no more than a minimum integer greater than log2(n) bits per unreliable symbol, based on the information indicative of the ranked order of reliability, providing a sequence of hypothesized noise patterns from a most likely noise pattern affecting the plurality of symbols to one or more successively less likely noise patterns, in response to the information contained within the plurality of symbols not corresponding to an element of a codebook comprising a set of valid codewords, using a first hypothesized noise pattern of the sequence of hypothesized noise patterns to invert the least reliable information of the information contained within the plurality of symbols to obtain a potential codeword, and in response to the potential codeword not corresponding to an element of the codebook, iteratively: applying a next possible noise pattern from the sequence of hypothesized noise patterns to invert the effect of noise on the received plurality of demodulated symbols to provide a potential codeword, each successive noise pattern indicative of an inversion of information of one or more demodulated symbols for a next more reliable combination of information contained within the plurality of symbols until the potential codeword corresponds to an element of the codebook; and and outputting the potential codeword as the decoded codeword (26).

2. The method of claim 1, wherein each demodulated symbol provides more than 1 bit of information, and wherein the inversion of information of a demodulated symbol comprises successively inverting the value of each bit of the demodulated symbol to obtain successive potential codewords.

3. The method of claim 1, wherein the sequence of permutations of n pieces of least reliable information contained within the plurality of demodulated symbols is known a priori, and the information indicative of the ranked order of reliability comprises no more than log2(n!) / n bits per piece of information.

4. The method of claim 1, wherein in response to more than one combination of information contained within the plurality of symbols having equal likelihood increases, one of the combinations is arbitrarily selected as the next possible noise pattern.

5. The method of claim 1, wherein the sequence of hypothesized noise patterns comprises noise patterns requiring fewer inversions that are more likely.

6. A decoder (24) for decoding a plurality of symbols received from a data sender using a noisy data channel into a codeword, the decoder configured to perform the method of claim 1.

7. A computer program product comprising executable code stored on a computer readable medium, the executable code, when executed in a decoder, being configured to perform the method according to claim 1.

Citation Information

Patent Citations

  • Decoding Signals Codes by Guessing Noise

    US20190199377A1

  • Decoding Signals By Guessing Noise

    US20190199473A1