Modulation coding based on an ECC interleave structure
First Claim
Patent Images
1. A system to modulate coding based on an error correcting code (ECC) interleave structure, comprising:
- a first encoder encoding an input stream of bits comprising input blocks sorted into interleaves; and
a second encoder encoding a subset of the input blocks to produce output blocks, wherein the first encoder permutates a remainder of the input blocks and the output blocks to produce a codeword.
6 Assignments
0 Petitions
Accused Products
Abstract
A system and method to modulate coding based on an ECC interleave structure include a first encoder encoding an input stream of bits comprising input blocks sorted into interleaves. A second encoder encodes a subset of the input blocks to produce output blocks, where the first encoder permutates a remainder of the input blocks and the output blocks to produce a codeword.
-
Citations
25 Claims
-
1. A system to modulate coding based on an error correcting code (ECC) interleave structure, comprising:
-
a first encoder encoding an input stream of bits comprising input blocks sorted into interleaves; and
a second encoder encoding a subset of the input blocks to produce output blocks, wherein the first encoder permutates a remainder of the input blocks and the output blocks to produce a codeword. - View Dependent Claims (2, 3, 4)
a decoder inverse decoding the output blocks to restore the input blocks.
-
-
4. The system as recited in claim 1, wherein the at least one subset of the input blocks are selected so that no two blocks in the same codeword are in the same interleave and that no two blocks in two consecutive codewords are in the same interleave.
-
5. A system to modulate coding based on an error correcting code (ECC) interleave structure, comprising:
-
a first encoder encoding an input stream of bits, sorting the input bits into interleaves of input blocks, and selecting at least one subset of the input blocks, wherein each input block comprises a predetermined input block size;
a second encoder encoding the at least one subset of the input blocks to output blocks, wherein the first encoder permutates a remainder of the input blocks and the output blocks to prevent channel errors from being greater than a correction capability of the interleave; and
a decoder inverse decoding the output blocks to restore the input blocks. - View Dependent Claims (6, 7, 8, 9, 10, 11)
-
-
12. A method to modulate coding based on an error correcting code (ECC) interleave structure, comprising:
-
encoding an input stream of bits with a first encoder;
sorting the input bits into interleaves of input blocks, each input block comprising a predetermined input block size;
selecting at least one subset of the input blocks;
encoding with a second encoder the at least one subset of the input blocks to output blocks;
permutating a remainder of the input blocks and the output blocks to prevent channel errors from being greater than a correction capability of the interleave; and
inverse decoding the output blocks to restore the input blocks. - View Dependent Claims (13, 14, 15, 16)
providing an effective length of an error, e, for two input blocks in a same interleave to be corrupted by the error, e.
-
-
15. The method as recited in claim 12, further comprising:
adding a bit at an end of the codeword to generate an even parity of the codeword.
-
16. The method as recited in claim 12, further comprising:
adding several bits to generate other parity structures or algebraic structures.
-
17. A method to modulate coding based on an error correcting code (ECC) interleave structure, comprising:
-
selecting an n/m rate of a first encoder;
receiving an input signal comprising input bits, b(i)'"'"'s, wherein i=1, 2, . . . n;
selecting an input block size, S, for the input bits, b(i)'"'"'s;
interleaving the input bits, b(i)'"'"'s, into blocks, (B1-Bk), each block comprising the input block size, S, wherein k=n/S;
selecting at least one subset, (Bi1, Bi2, . . . , Biq), from the blocks, wherein q<
k;
mapping the at least one subset, (Bi1, Bi2, . . . , Biq) to an output vector, f=(f1, f2, . . . , fp), of a second encoder within the first encoder, wherein p is a number of output bits, f, from the second encoder; and
permutating ((f1, f2, . . . , fp), Bj1, Bj2, Bj(k−
q)) to prevent channel errors from being greater than a correction capability in the interleave, wherein (Bj1, Bj2, . . . Bj(k−
q))=(B1-Bk)−
(Bi1, Bi2, . . . , Biq), are the blocks remaining after the at least one subset, (Bi1, Bi2, . , Biq), is selected and the permutating is a permutation, P, operating on the bits of vector ((f1, f2, . . . , fp), Bj1, Bj2, Bj(k−
q)).- View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
(c(i1) ε
f and c(i2) ε
B) and (c(i1) and c(i2) are in a same interleave), OR(c(i1) ε
B and c(i2) ε
B) and (c(i1) and c(i2) are in a same interleave) AND(c(i1)&
c(i2) are in different blocks), where B=(Bj1, Bj2, . . . Bj(k−
q))=(B1-Bk)−
(Bi1, Bi2, . . . , Biq) and c=c(i1) and c(i2), then,then, |i1-i2 |>
{circumflex over (M)}, for some predetermined integer {circumflex over (M)}, anda last bit in a codeword and a first bit in a next codeword are not in a same interleave, wherein (Bj1, Bj2, . . . Bj(k−
q))=(B1-Bk)−
(Bi1, Bi2, . . . , Biq) comprise the blocks remaining after the at least one subset, (Bi1, Bi2, . . . , Biq), is selected.
-
-
22. The method as recited in claim 17, further comprising:
providing an effective length of an error, e, for two input blocks in a same interleave to be corrupted by the error, e.
-
23. The method as recited in claim 17, further comprising:
adding a bit, c(m), at an end of the codeword to generate an even parity of the codeword, wherein the codeword includes c(1) to c(m), for m=p+(k+q)S+1.
-
24. The method as recited in claim 17, further comprising:
inverse decoding (f1, f2, . . . , fp) to restore the at least one subset, (Bi1, Bi2, . . . , Biq), selected.
-
25. A computer readable medium storing a program for controlling at least one computer to perform a method comprising:
-
encoding an input stream of bits with a first encoder;
sorting the input bits into interleaves of input blocks, each input block comprising a predetermined input block size;
selecting at least one subset of the input blocks;
encoding with a second encoder the at least one subset of the input blocks to output blocks;
permutating a remainder of the input blocks and the output blocks to prevent channel errors from being greater than a correction capability of the interleave; and
inverse decoding the output blocks to restore the input blocks.
-
Specification