MULTIPLE-FIELD BASED CODE GENERATOR AND DECODER FOR COMMUNICATIONS SYSTEMS
First Claim
1. A method of encoding data for transmission from a source to a destination over a communications channel that is expected to perform as an erasure channel at least partially, the method comprising:
- obtaining an ordered set of input symbols representing the data to be encoded;
selecting a plurality of field arrays of values, wherein each field array is derived from a finite field array and at least two different finite field arrays are represented;
generating a data structure that represents a coefficient matrix that represents at least two of the plurality of field arrays, wherein at least two of those field arrays are derived from finite field arrays different from each other;
generating output symbols as linear combinations of input symbols, wherein the particular combinations are according to the data structure that represents the coefficient matrix; and
using the generated output symbols and an encoding for the data.
2 Assignments
0 Petitions
Accused Products
Abstract
A method of encoding data for transmission from a source to a destination over a communications channel is provided. The method operates on an ordered set of input symbols and includes generating a plurality of redundant symbols from the input symbols based on linear constraints. The method also includes generating a plurality of output symbols from a combined set of symbols including the input symbols and the redundant symbols based on linear combinations, wherein at least one of the linear constraints or combinations is over a first finite field and at least one other of the linear constraints or combinations is over a different second finite field, and such that the ordered set of input symbols can be regenerated to a desired degree of accuracy from any predetermined number of the output symbols.
199 Citations
31 Claims
-
1. A method of encoding data for transmission from a source to a destination over a communications channel that is expected to perform as an erasure channel at least partially, the method comprising:
-
obtaining an ordered set of input symbols representing the data to be encoded; selecting a plurality of field arrays of values, wherein each field array is derived from a finite field array and at least two different finite field arrays are represented; generating a data structure that represents a coefficient matrix that represents at least two of the plurality of field arrays, wherein at least two of those field arrays are derived from finite field arrays different from each other; generating output symbols as linear combinations of input symbols, wherein the particular combinations are according to the data structure that represents the coefficient matrix; and using the generated output symbols and an encoding for the data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of decoding data from a transmission received at a destination from a source over a communications channel that is expected to perform as an erasure channel at least partially, the method comprising:
-
receiving at least some of a plurality of output symbols generated from an ordered set of input symbols that were encoded into the plurality of output symbols wherein each output symbol was generated as a linear combination of one or more of the input symbols with coefficients chosen from finite fields, wherein at least one coefficient is a member of a first finite field and at least one other coefficient is a member of a second finite field and is not a member of the first finite field; and regenerating the ordered set of input symbols to a desired degree of accuracy from reception of any predetermined number of the output symbols. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A method of encoding data for transmission from a source to a destination over a communications channel that is expected to perform as an erasure channel at least partially, the method comprising:
-
obtaining an ordered set of input symbols representing the data to be encoded; selecting a plurality of field arrays of values, wherein each field array is derived from a finite field array and at least two different finite field arrays are represented; generating a data structure that represents a coefficient matrix that represents at least two of the plurality of field arrays, wherein at least two of those field arrays are derived from finite field arrays different from each other; generating a plurality of redundant symbols from the ordered set of input symbols, wherein each redundant symbol is generated based on a set of linear constraints over one or more of the input symbols and other redundant symbols with coefficients over finite fields; generating output symbols as linear combinations of input symbols, wherein the particular combinations are according to the data structure that represents the coefficient matrix; generating a plurality of output symbols from the combined set of input and redundant symbols, wherein each output symbol is generated as a linear combination of one or more of the combined set of input and redundant symbols with coefficients chosen from finite fields; using the generated output symbols and an encoding for the data. - View Dependent Claims (22, 23)
-
-
24. A method of decoding data from a transmission received at a destination from a source over a communications channel that is expected to perform as an erasure channel at least partially, the method comprising:
-
receiving at least some of the plurality of output symbols generated from a combined set of input and redundant symbols, wherein each output symbol is generated as a linear combination of one or more of a combined set of input and redundant symbols with coefficients chosen from finite fields, wherein the plurality of redundant symbols is generated from the ordered set of input symbols, wherein each redundant symbol is generated based on a set of linear constraints over one or more of the input symbols and other redundant symbols with coefficients over finite fields, wherein at least one coefficient is a member of a first finite field and at least one other coefficient is a member of a second finite field and is not a member of the first finite field; and regenerating the ordered set of input symbols to a desired degree of accuracy from reception of any predetermined number of the output symbols. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31)
-
Specification