H03M13/235

Convolutional precoding and decoding of polar codes

Devices, systems and methods for convolutional precoding and decoding of polar codes are disclosed. An example method for error correction in a data processing system includes receiving a noisy codeword, the codeword having been generated based on an outer stream decodable code and an inner polar code and provided to a communication channel or a storage channel prior to reception by the decoder, the stream decodable code characterized by a trellis, and performing, based on the trellis, a list-decoding operation on the noisy codeword vector to generate a plurality of information symbols, the list-decoding operation being configured to traverse through a plurality of states at one or more stages of a plurality of decoding stages.

Correlation-based detection of encoded address in packet
10938512 · 2021-03-02 · ·

A receiver device generates a bit stream corresponding to a received signal at least by demodulating the received signal. The received signal includes an address that was encoded at a transmitter device using a forward error correction code. The receiver device correlates the bit stream with an encoded known address to generate a correlation output that indicates a degree of similarity between a segment of the bit stream and the encoded known address. The encoded known address corresponds to a known device address that was encoded using the error correction code. The receiver device determines when the correlation output is greater than a threshold that corresponds to a particular degree of similarity with the encoded known address. The receiver device determines that the bit stream includes the known device address when the receiver device determines that the correlation output is greater than the threshold.

Data Recovery in a Geographically Diverse Storage System Employing Erasure Coding Technology and Data Convolution Technology
20210218420 · 2021-07-15 ·

Data convolution for geographically diverse storage is disclosed. Data and corresponding convolutions of data can employ erasure coding to improve robustness of access to information represented in the data. For a peer group of chunks employing a given erasure coding scheme, access to the information represented in the data can be via accessible chunks and/or recovery of a less-accessible chunk, e.g., via a deconvolution operation, via a decoding operation, via a mix of deconvolution and decoding operations. The mix of deconvolution and decoding operations can enable recovery of a less-accessible chunk that cannot be recovered by either a deconvolution or decoding operation alone. This can improve access to information represented in less-available data.

CONVOLUTIONAL PRECODING AND DECODING OF POLAR CODES
20200382138 · 2020-12-03 ·

Devices, systems and methods for convolutional precoding and decoding of polar codes are disclosed. An example method for error correction in a data processing system includes receiving a noisy codeword, the codeword having been generated based on an outer stream decodable code and an inner polar code and provided to a communication channel or a storage channel prior to reception by the decoder, the stream decodable code characterized by a trellis, and performing, based on the trellis, a list-decoding operation on the noisy codeword vector to generate a plurality of information symbols, the list-decoding operation being configured to traverse through a plurality of states at one or more stages of a plurality of decoding stages.

Transmission apparatus and associated method of encoded data

A transmission apparatus includes an encoder that codes a data sequence with a parity check matrix, wherein the data sequence includes a final information bit sequence and virtual information bits, and outputs the final information bit sequence and a parity sequence, as LDPC codes, and a transmitter that transmits the LDPC codes as a transmission data. A column length of the parity check matrix is longer than a total length of the final information bit sequence and the parity sequence, by a length of the virtual information bits that are set to 0 and are not transmitted. The total length of the final information bit sequence and the parity sequence has a sequence length corresponding to a length from a first column to a determined column of the parity check matrix. The encoder generates the LDPC codes by using the first column to the determined column among one or more column(s) of the parity check matrix.

TRANSMISSION APPARATUS AND METHOD, AND RECEPTION APPARATUS AND METHOD
20200274555 · 2020-08-27 ·

A transmission apparatus includes a signal processing circuit configured to obtain information data bits to be transmitted; add known information data bits to the information data bits to generate first data blocks; perform error-correction coding on the first data blocks to generate first coded data blocks including parity data blocks such that the first coded data blocks satisfy a first code rate; remove the known information data bits from the first coded data blocks to generate second coded data blocks, the second coded data blocks satisfying a second code rate different from the first code rate; and modulate the second coded data blocks using a modulation scheme to generate a modulated signal, which is then transmitted. A number of the known information data bits depends on a number of the information data bits such that the first code rate is fixed regardless of the number of the information data bits.

Multi-part upload and editing of erasure-coded objects

Segments of a local range can appear multiple times in the sequence of erasure sets in a manifest without the data being duplicated. A subset of the content of an erasure set can be included in the logical object. It is not required that all erasure sets in an object use the same encoding. A manifest can indicate one or more portions of the logical object for which no data has been provided, and for which a fill pattern is specified. A portion of data can be inserted at any point inside the object by inserting a reference to one or more segment sets containing that data into the manifest. If the desired insertion point is within an existing segment set, then that manifest set can be split by incorporating two references to it, with the first specifying the range of data before the insertion point, and the second specifying the range of data after the insertion point. Many operations are thus enabled on an erasure-coded object in Object Storage such as append, insert, overwrite and merge.

Transmission apparatus and method, and reception apparatus and method

An encoding method changes an encoding rate of an erasure correcting code. One cycle is defined as 12k bits (wherein k represents a natural number) which is an encoding output using LDPC-CC with an encoding rate of 1/2, and includes information and parity. From the one cycle, only the information is arranged in the output order of the encoding output to obtain 6k bit information X6i, X6i+1, X6i+2, X6i+3, X6i+4, X6i+5, . . . , X6(i+k1) X6(i+k1)+1, X6(i+k1)+2, X6(i+k1)+3, X6(i+k1)+4, and X6(i+k1)+5. Known information is inserted in 3k pieces of information (Xj) among the 6k bit information, so that when 3k pieces of mutually different j is divided by 3, there is a remainder of 0 regarding k pieces, there is a remainder of 1 regarding k pieces, and there is a remainder of 2 regarding k pieces, to thereby obtain the parity from the information containing the known information.

Methods and apparatus for achieving low coding rates

In an aspect, an apparatus receives content to be transmitted and generates a first turbo encoded codeword from the content through use of a first turbo encoder. The apparatus is further configured to generate an interleaved codeword based on the first turbo encoded codeword through use of an interleaver, generate a second turbo encoded codeword from the interleaved codeword through use of a second turbo encoder, and transmit at least a portion of the second turbo encoded codeword. In another aspect, an apparatus receives data including outer turbo encoded, interleaved, inner turbo encoded content. The apparatus generates a first decoded instance of the data, generates a de-interleaved instance of the data based on the first decoded instance of the data, generates a second decoded instance of the data from the de-interleaved instance of the data, and performs a CRC on the second decoded instance of the data.

Early-termination of decoding convolutional codes

A decoder having an input configured to receive a sequence of softbits presumed to correspond to a convolutionally-encoded codeword; and a decoding circuit configured to: determine, as part of a decoding process, a Maximum Likelihood (ML) survivor path in a trellis representation of the codeword; determine whether the presumed convolutionally-encoded codeword meets an early-termination criteria; and abort the decoding process if the presumed convolutionally-encoded codeword meets the early-termination criteria, continue the decoding process if the presumed convolutionally-encoded codeword fails to meet the early-termination criteria.