Forward error-correcting (FEC) coding and streaming
AssigneeDigital Fountain, Inc.
InventorsMichael G. Luby, Mark Watson, M. Amin Shokrollahi
Life of this patent
Estimating the term…
Abstract
In a data decoder for decoding data from received symbols received over a channel from an encoder, a method for decoding data wherein the received data includes erasures and includes source symbols and repair symbols organized into one or more source blocks. The decoder uses a generator matrix, any square submatrix of which is invertible, such that the decoder performs decoding operations concurrently with the arrival of the source symbols and repair symbols that are a part of a source block. Novel methods for interleaving and specifying encoding structure for a large class of FEC codes, scheduling the sending of packets and the like, are also applied in conjunction with the method for decoding data.
Claims10
In a data decoder for decoding data from received symbols received over a channel from an encoder, wherein the received data includes erasures and includes source symbols and repair symbols organized into one or more source blocks and wherein the decoder uses a generator matrix in decoding, any square submatrix of which is invertible, such that the decoder performs decoding operations concurrently with the arrival of the source symbols and repair symbols comprising a source block, a method of decoding comprising:
- representing a system of equations in a decoder memory derived, at least in part, from the generator matrix;
- substituting received source symbols into the system of equations as the source symbols are received before receiving all source symbols from the source block;
- identifying, using decoder logic, repair equations to be used for solving the system of equations as repair symbols from the source block arrive;
- calculating, using decoder logic, vector values for equations as source symbols from the source block arrive;
- and
- converting the system of equations into an upper triangular form as repair symbols from the source block arrive at the decoder.
Dependencies are inferred from the claim text.