Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
First Claim
1. A method of electronically transmitting data via one or more transmitters capable of outputting an electronic signal, wherein the data to be transmitted is represented by an ordered set of source symbols and the data is transmitted as a sequence of encoded symbols representing at least a portion of the electronic signal, the method comprising:
- obtaining, in an electronically readable form, the ordered set of source symbols;
generating a set of intermediate symbols from the ordered set of source symbols, wherein the ordered set of source symbols can be regenerated from the set of intermediate symbols;
designating a plurality of sets of the intermediate symbols such that each intermediate symbol is designated as a member of one of the sets of intermediate symbols, the sets comprising at least a first set and a second set each of which has as members at least one intermediate symbol, and wherein the first set is designated as symbols for a first form of decoding and the second set is designated as symbols to be inactivated for the first form of decoding and are designated as symbols for a second form of decoding; and
generating a plurality of encoded symbols, wherein an encoded symbol is generated from one or more of the intermediate symbols, wherein at least one encoded symbol is generated, directly or indirectly, from a plurality of intermediate symbols selected from both the first set and the second set.
1 Assignment
0 Petitions
Accused Products
Abstract
Encoding of a plurality of encoded symbols is provided wherein an encoded symbol is generated from a combination of a first symbol generated from a first set of intermediate symbols and a second symbol generated from a second set of intermediate symbols, each set having at least one different coding parameter, wherein the intermediate symbols are generated based on the set of source symbols. A method of decoding data is also provided, wherein a set of intermediate symbols is decoded from a set of received encoded symbols, the intermediate symbols organized into a first and second sets of symbols for decoding, wherein intermediate symbols in the second set are permanently inactivated for the purpose of scheduling the decoding process to recover the intermediate symbols from the encoded symbols, wherein at least some of the source symbols are recovered from the decoded set of intermediate symbols.
432 Citations
49 Claims
-
1. A method of electronically transmitting data via one or more transmitters capable of outputting an electronic signal, wherein the data to be transmitted is represented by an ordered set of source symbols and the data is transmitted as a sequence of encoded symbols representing at least a portion of the electronic signal, the method comprising:
-
obtaining, in an electronically readable form, the ordered set of source symbols; generating a set of intermediate symbols from the ordered set of source symbols, wherein the ordered set of source symbols can be regenerated from the set of intermediate symbols; designating a plurality of sets of the intermediate symbols such that each intermediate symbol is designated as a member of one of the sets of intermediate symbols, the sets comprising at least a first set and a second set each of which has as members at least one intermediate symbol, and wherein the first set is designated as symbols for a first form of decoding and the second set is designated as symbols to be inactivated for the first form of decoding and are designated as symbols for a second form of decoding; and generating a plurality of encoded symbols, wherein an encoded symbol is generated from one or more of the intermediate symbols, wherein at least one encoded symbol is generated, directly or indirectly, from a plurality of intermediate symbols selected from both the first set and the second set. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of receiving data from a source, wherein the data is received at a destination as a set of received encoded symbols derived from set of source symbols representing the data sent from the source to the destination, the method comprising:
-
obtaining the set of received encoded symbols; decoding a set of intermediate symbols from the set of received encoded symbols; allocating each intermediate symbol of the set of intermediate symbols into a set of intermediate symbols of a plurality of sets of intermediate symbols each set having as members at least one intermediate symbol, wherein a first set of intermediate symbols is not designated as a set of permanently inactive symbols and a second set of intermediate symbols is designated as a set of permanently inactive symbols; in a first decoding stage, determining a decoding schedule that would decode a first subset of the set of source symbols from the first set of intermediate symbols if the set of permanently inactive symbols were decoded already; in a second decoding stage, decoding the set of permanently inactive symbols into a second subset of the set of source symbols, independent of values of symbols in the first subset; in a third decoding stage, decoding the first set of intermediate symbols into the first subset using the decoding schedule and the second subset; and recovering the data from the first set and the set of permanently inactive symbols. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. An apparatus for electronically transmitting data to be transmitted via one or more transmitters capable of outputting a signal, the apparatus comprising
memory; - and
a processor; the memory and processor configured to perform operations comprising; (a) obtaining an ordered set of source symbols; (b) generating a set of intermediate symbols from the ordered set of source symbols, wherein the ordered set of source symbols can be regenerated from the set of intermediate symbols; (c) designating a plurality of sets of the intermediate symbols such that each intermediate symbol is designated as a member of one of the sets of intermediate symbols, the sets comprising at least a first set and a second set each of which has as members at least one intermediate symbol, and wherein the first set is designated as symbols for a first form of decoding and the second set is designated as symbols to be inactivated for the first form of decoding and are designated as symbols for a second form of decoding; and (d) generating a plurality of encoded symbols, wherein an encoded symbol is generated from one or more of the intermediate symbols, wherein at least one encoded symbol is generated, directly or indirectly, from a plurality of intermediate symbols selected from both the first set and the second set. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28)
- and
-
29. An apparatus for decoding data from a set of received encoded symbols, the set of received encoded symbols derived from an ordered set of source symbols, the apparatus comprising:
-
memory; and a processor; the memory and processor configured to perform operations comprising; (a) obtaining the set of received encoded symbols; (b) decoding a set of intermediate symbols from the set of received encoded symbols; (c) allocating each intermediate symbol of the set of intermediate symbols into a set of intermediate symbols of a plurality of sets of intermediate symbols each set having as members at least one intermediate symbol, wherein a first set of intermediate symbols is not designated as a set of permanently inactive symbols and a second set of intermediate symbols is designated as a set of permanently inactive symbols; (d) in a first decoding stage, determining a decoding schedule that would decode a first subset of the set of source symbols from the first set of intermediate symbols if the set of permanently inactive symbols were decoded already; (e) in a second decoding stage, decoding the set of permanently inactive symbols into a second subset of the set of source symbols, independent of values of symbols in the first subset; (f) in a third decoding stage, decoding the first set of intermediate symbols into the first subset using the decoding schedule and the second subset; and (g) recovering the data from the first set and the set of permanently inactive symbols. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36)
-
-
37. A non-transitory processor-readable storage medium having stored thereon processor-executable instructions configured to cause a processor of a computing device to perform operations for encoding data to be transmitted via one or more transmitters capable of outputting a signal, the operations comprising:
-
obtaining an ordered set of source symbols; generating a set of intermediate symbols from the ordered set of source symbols, wherein the ordered set of source symbols can be regenerated from the set of intermediate symbols; designating a plurality of sets of the intermediate symbols such that each intermediate symbol is designated as a member of one of the sets of intermediate symbols, the sets comprising at least a first set and a second set each of which has as members at least one intermediate symbol, and wherein the first set is designated as symbols for a first form of decoding and the second set is designated as symbols to be inactivated for the first form of decoding and are designated as symbols for a second form of decoding; and generating a plurality of encoded symbols, wherein an encoded symbol is generated from one or more of the intermediate symbols, wherein at least one encoded symbol is generated, directly or indirectly, from a plurality of intermediate symbols selected from both the first set and the second set. - View Dependent Claims (38, 39, 40, 41)
-
-
42. A non-transitory processor-readable storage medium having stored thereon processor-executable instructions configured to cause a processor of a computing device to perform operations for decoding a set of received encoded symbols, the set of received encoded symbols derived from an ordered set of source symbols, the operations comprising:
-
obtaining the set of received encoded symbols; decoding a set of intermediate symbols from the set of received encoded symbols; allocating each intermediate symbol of the set of intermediate symbols into a set of intermediate symbols of a plurality of sets of intermediate symbols each set having as members at least one intermediate symbol, wherein a first set of intermediate symbols is not designated as a set of permanently inactive symbols and a second set of intermediate symbols is designated as a set of permanently inactive symbols; in a first decoding stage, determining a decoding schedule that would decode a first subset of the set of source symbols from the first set of intermediate symbols if the set of permanently inactive symbols were decoded already; in a second decoding stage, decoding the set of permanently inactive symbols into a second subset of the set of source symbols, independent of values of symbols in the first subset; in a third decoding stage, decoding the first set of intermediate symbols into the first subset using the decoding schedule and the second subset; and recovering the ordered set of source symbols from the first set and the set of permanently inactive symbols. - View Dependent Claims (43, 44, 45, 46, 47, 48, 49)
-
Specification