Parallel concatenated code with soft-in soft-out interactive turbo decoder
First Claim
1. An apparatus, comprising:
- an input that is operative to receive a signal from a communication channel;
a metric calculator that is operative to;
process a first symbol derived from the signal thereby generating a first plurality of metrics based on a first constellation corresponding to the first symbol; and
process a second symbol derived from the signal thereby generating a second plurality of metrics based on a second constellation corresponding to the second symbol;
at least one soft-in soft-out (SISO) module, coupled to the metric calculator, that is operative to;
calculate first extrinsic information corresponding to the first symbol using the first plurality of metrics; and
calculate second extrinsic information corresponding to the second symbol using the second plurality of metrics;
an output processor that is operative to;
make a first estimate of the first symbol using the first extrinsic information; and
make a second estimate of the second symbol using the second extrinsic information.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for parallel concatenated (Turbo) encoding and decoding. Turbo encoders receive a sequence of input data tuples and encode them. The input sequence may correspond to a sequence of an original data source, or to an already coded data sequence such as provided by a Reed-Solomon encoder. A turbo encoder generally comprises two or more encoders separated by one or more interleavers. The input data tuples may be interleaved using a modulo scheme in which the interleaving is according to some method (such as block or random interleaving) with the added stipulation that the input tuples may be interleaved only to interleaved positions having the same modulo-N (where N is an integer) as they have in the input data sequence. If all the input tuples are encoded by all encoders then output tuples can be chosen sequentially from the encoders and no tuples will be missed. If the input tuples comprise multiple bits, the bits may be interleaved independently to interleaved positions having the same modulo-N and the same bit position. This may improve the robustness of the code. A first encoder may have no interleaver or all encoders may have interleavers, whether the input tuple bits are interleaved independently or not. Modulo type interleaving also allows decoding in parallel.
8 Citations
20 Claims
-
1. An apparatus, comprising:
-
an input that is operative to receive a signal from a communication channel; a metric calculator that is operative to; process a first symbol derived from the signal thereby generating a first plurality of metrics based on a first constellation corresponding to the first symbol; and process a second symbol derived from the signal thereby generating a second plurality of metrics based on a second constellation corresponding to the second symbol; at least one soft-in soft-out (SISO) module, coupled to the metric calculator, that is operative to; calculate first extrinsic information corresponding to the first symbol using the first plurality of metrics; and calculate second extrinsic information corresponding to the second symbol using the second plurality of metrics; an output processor that is operative to; make a first estimate of the first symbol using the first extrinsic information; and make a second estimate of the second symbol using the second extrinsic information. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus, comprising:
-
an input that is operative to receive a signal from a communication channel; a metric calculator that is operative to; process a first symbol derived from the signal thereby generating a first plurality of metrics based on a first constellation corresponding to the first symbol; and process a second symbol derived from the signal thereby generating a second plurality of metrics based on a second constellation corresponding to the second symbol; a first soft-in soft-out (SISO) module, coupled to the metric calculator, that is operative to calculate first extrinsic information corresponding to the first symbol using the first plurality of metrics; an interleaver, coupled to the first SISO, that is operative to interleave the first extrinsic information thereby generating interleaved, first extrinsic information; a second SISO module, coupled to the interleaver, that is operative to calculate second extrinsic information corresponding to the first symbol using the interleaved, first extrinsic information; a deinterleaver, coupled to the second SISO, that is operative to deinterleave the second extrinsic information thereby generating deinterleaved, second extrinsic information; wherein the first SISO module that is operative to calculate third extrinsic information corresponding to the first symbol using the deinterleaved, second extrinsic information; wherein the interleaver is operative to interleave the third extrinsic information thereby generating interleaved, third extrinsic information; wherein the interleaver is operative to interleave fourth extrinsic information corresponding to the second symbol thereby generating interleaved, fourth extrinsic information; a symbol sequencer that is operative to provide information corresponding to the first constellation and the second constellation to the metric calculator; an output processor, coupled to the SISO module, that is operative to; make a first estimate of the first symbol using the interleaved, third extrinsic information; and make a second estimate of the second symbol using the interleaved, fourth extrinsic information. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A method, comprising:
-
receiving a signal from a communication channel; employing a metric calculator to; process a first symbol derived from the signal thereby generating a first plurality of metrics based on a first constellation corresponding to the first symbol; and process a second symbol derived from the signal thereby generating a second plurality of metrics based on a second constellation corresponding to the second symbol; employing at least one soft-in soft-out (SISO) module to; calculate first extrinsic information corresponding to the first symbol using the first plurality of metrics; and calculate second extrinsic information corresponding to the second symbol using the second plurality of metrics; making a first estimate of the first symbol using the first extrinsic information; and making a second estimate of the second symbol using the second extrinsic information.
-
-
17. The method of claim 16, wherein:
-
each of the first constellation and the second constellation has a same number of constellation points therein; first constellation points within the first constellation are mapped according to a first mapping; and second constellation points within the second constellation are mapped according to a second mapping.
-
-
18. The method of claim 16, wherein:
-
the first constellation includes a first number of constellation points therein; and the second constellation includes a second number of constellation points therein.
-
-
19. The method of claim 16, wherein:
-
the first constellation includes a plurality of constellation points; employing the metric calculator to process the first symbol derived from the signal thereby generating the first plurality of metrics based on all of the plurality of constellation points; and employing the metric calculator to process a third symbol derived from the signal thereby generating a third plurality of metrics based on fewer than all of the plurality of constellation points.
-
-
20. The method of claim 16, wherein:
the method is performed within a communication device that is coupled to a television.
Specification