Claims
- 1. A method for parallel decoding of modulo N turbo encoded data, the method comprising:
accepting samples of modulo N turbo encoded data; calculating metric values for each sample; accepting the metric values into each of N soft input soft output (SISO) modules; deinterleaving extrinsic values to form a priori values; accepting a priori values into each of N soft input soft output (SISO) modules; and performing decoding calculations within each of the SISOs thereby forming the extrinsic values;
- 2. The method of claim 1 wherein accepting samples of modulo N turbo encoded data comprises accepting an inphase (I) value and quadrature (Q) value representing samples of the turbo encoded data.
- 3. The method of claim 1 wherein calculating metric values for each sample comprises calculating the distance between the sample and each possible transmitted constellation point.
- 4. The method of claim 1 wherein calculating metric values for each sample comprises calculating the Euclidean distance squared between the sample and each possible transmitted constellation point.
- 5. The method of claim 4 wherein calculating the Euclidean distance squared comprises:
determining a first distance, in the I direction, between the between the sample and a possible transmitted constellation point in the I direction; squaring the first distance to form the first distance squared; determining a second distance, in the Q direction, between the between the sample and a possible transmitted constellation point in the Q direction; squaring the second distance to form the second distance squared; and adding the first distance squared to the second distance squared to form the Euclidean distance squared.
- 6. The method of claim 1 wherein accepting the a priori values into each of N soft input soft output (SISO) modules further comprises accepting a value representing an equal likelihood that the sample point represents each valid constellation point on a first iteration of the decoder.
- 7. The method of claim 1 wherein deinterleaving extrinsic values to form a priori values comprises performing a deinterleaving using an inverse interleaver of an interleaver used to produce a corresponding interleaving;
- 8. The method of claim 1 wherein performing decoding calculations within each of the SISOs thereby forming the extrinsic values comprises performing a MAP (maximum a posteriori) decoding.
- 9. The method of claim 1 wherein performing decoding calculations within each of the SISOs thereby forming the extrinsic values comprises performing a SOVA (soft output Viterbi algorithm) decoding.
- 10. The method of claim 1 wherein accepting samples of modulo N turbo encoded data comprises accepting samples of odd-even encoded data.
- 11. An apparatus for parallel decoding of modulo N turbo encoded data, the apparatus comprising:
an input queue that accepts samples of modulo N turbo encoded data; a metric calculator that accepts samples of modulo N turbo encoded data from the input queue and calculates the metric values for each sample; N soft input soft output (SISO) modules that accept the metric values and an a priori values and produce an extrinsic value; N modulo N deinterleavers that accept an extrinsic value and deinterleave it to form an a priori value.
- 12. The apparatus as in claim 11 wherein the input queue that accepts samples of modulo N turbo encoded data further comprises an input queue that accepts an inphase (I) value and quadrature (Q) values representing samples of the turbo encoded data.
- 13. The apparatus as in claim 1 wherein the metric calculator comprises a calculator that calculates the distance between the sample and each possible transmitted constellation point.
- 14. The apparatus as in claim 11 wherein the metric calculator is an Euclidean distance squared calculator that calculates the distance between the sample and each possible transmitted constellation point.
- 15. The apparatus as in claim 11 wherein the deinterleaver comprises an inverse of the modulo N interleaver used to decode the turbo encoded data.
- 16. The apparatus as in claim 11 wherein the SISO decoder is a MAP (maximum a posteriori) decoder.
- 17. The apparatus as in claim 11 wherein the SISO decoder is a SOVA (soft output Viterbi algorithm) decoder.
- 18. An apparatus for parallel decoding of modulo N turbo encoded data, the apparatus comprising:
means for accepting samples of modulo N turbo encoded data representing a block of turbo encoded data; means for calculating metrics metric that accepts samples of modulo N turbo encoded data from the sample accepting means and calculates the metric values for each sample; N means for accepting a soft input and producing a soft output (SISO means) that accept the metric values and an a priori values and produce an extrinsic value; N modulo N deinterleaving means that accept an extrinsic value and deinterleave it to form an a priori value.
- 19. The apparatus as in claim 18 further comprising a conditional points processor that accepts samples of modulo N turbo encoded data representing a block of turbo encoded data and produces conditional points.
- 20. The apparatus as in claim 19 further comprising an output processor that accepts a priori values from the SISO means and conditional points from the conditional processor and computes output tuples.
CROSS-REFERENCE TO RELATED APPLICATION(S)
[0001] This application claims priority from provisional applications “TURBO TRELLIS ENCODER AND DECODER” serial number 60/232,053 filed on Sep. 12, 2000, and from “PARALLEL CONCATENATED CODE WITH SISO INTERACTIVE TURBO DECODER” serial number 60/232,288 filed on Sep. 12, 2000. Both of which are incorporated by reference herein as though set forth in full. This application also claims priority to application PARALLEL CONCATENATED CODE WITH SOFT-IN-SOFT-OUT INTERACTIVE TURBO DECODER serial No. 09/878,148, Filed Jun. 8, 2001, which is incorporated by reference as though set forth in full.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60232053 |
Sep 2000 |
US |
|
60232288 |
Sep 2000 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09878148 |
Jun 2001 |
US |
Child |
09952311 |
Sep 2001 |
US |