This paper presents new FEC codes for the erasure channel, LDPC-Band, that have been designed so as to optimize a hybrid iterative-Maximum Likelihood (ML) decoding. Indeed, these codes feature simultaneously a sparse parity check matrix, which allows an efficient use of iterative LDPC decoding, and a generator matrix with a band structure, which allows fast ML decoding on the erasure channel. The combination of these two decoding algorithms leads to erasure codes achieving a very good trade-off between complexity and erasure correction capability.
The idea of window based encoding in LDPC codes has been proposed by Haken, Luby and al. in patent @cite_8 . However, the goal of this patent is only to minimize memory access during encoding, by localizing the access in a window that slides over the input file. Independantly of whether our proposal falls into the scope of this patent or not, we see that, from a purely scientific point of view, the goal of @cite_8 completely departs from the approach discussed in the current paper, as well as the theoretic tools we introduce to achieve our goals.
@cite_8
1822933787
An encoder encodes an output symbol from input symbols of an input file by determining, for a given output symbol, a list AL that indicates W associated input symbols, within a subset S of the input symbols comprising the input file, to be associated with the output symbol, where W is a positive integer, where at least two output symbols have different values for W associated therewith, where W is greater than one for at least one output symbol, and where the number of possible output symbols is much larger than the number of input symbols in the input file, and generating an output symbol value from a predetermined function of the W associated input symbols indicated by AL. The subset S can be a window that slides over the input file to cover all of the input symbols in a period. The window can be a fixed or variable size. Where the window moves over the file and reaches an edge, the window can wrap around or can cover extended input symbols.