Method and apparatus for parallel decoding of turbo encoded data
First Claim
Patent Images
1. A method for parallel decoding of modulo N turbo encoded data, where N in an integer, 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 the N SISO modules; and
performing decoding calculations within each of the N SISO modules thereby forming the extrinsic values.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for parallel decoding of turbo encoded data. The method includes multiple Soft In Soft Out (SISO) modules arranged in parallel such that each module supplies an input to one SISO and takes an input from another SISO data encoded for multiple parallel SISOs is received by a receiver and decoded in the abovementioned parallel configuration.
-
Citations
23 Claims
-
1. A method for parallel decoding of modulo N turbo encoded data, where N in an integer, 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 the N SISO modules; and performing decoding calculations within each of the N SISO modules thereby forming the extrinsic values. - View Dependent Claims (2, 3, 4, 7, 8, 9)
-
-
5. A method for calculating metric values for each sample received for parallel decoding of modulo N turbo encoded data, where N is an integer, wherein calculating metric values for each sample comprises calculating a Euclidean distance squared between the sample and each possible transmitted constellation point and wherein calculating the Euclidean distance squared comprises:
-
determining a first distance, in an inphase direction, between the sample and a possible transmitted constellation point in the inphase direction; squaring the first distance to form a first distance squared; determining a second distance, in a quadrature direction, between the sample and a possible transmitted constellation point in the quadrature direction; squaring the second distance to form a second distance squared; and adding the first distance squared to the second distance squared to form the Euclidean distance squared.
-
-
6. A method for parallel decoding of modulo N turbo encoded data, where N is an integer, 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 the N SISO modules; and performing decoding calculations within each of the N SISO modules thereby forming the extrinsic values, wherein accepting the a-priori values into each of N SISO modules further comprises accepting a value representing an equal likelihood that a corresponding one of the samples of modulo N turbo encoded data represents each possible constellation point on a first iteration of the decoder.
-
-
10. An apparatus for parallel decoding of modulo N turbo encoded data, where N in an integer, 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 metric values for each sample; N soft input soft output (SISO) modules that accept the metric values and a-priori values and produce extrinsic values; and N modulo N deinterleavers that accept the extrinsic values and deinterleave them to form the a-priori values. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. An apparatus for parallel decoding of modulo N turbo encoded data, where N in an integer, the apparatus comprising:
-
means for accepting samples of modulo N turbo encoded data representing a block of turbo encoded data; means for calculating metric values 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 a-priori values and produce extrinsic values; and N modulo N deinterleaving means that accept the extrinsic values and deinterleave it to form the a-priori values. - View Dependent Claims (18, 19)
-
-
20. A method for decoding of modulo N turbo encoded data, where N in an integer, the method comprising:
-
receiving samples of modulo N turbo encoded data; calculating metric values for each sample; receiving the metric values by each of a plurality of N soft input soft output (SISO) modules; receiving an a-priori value by a first of the N SISO modules; performing decoding calculations by the first of the N SISO modules to form an extrinsic value; deinterleaving the extrinsic value to form an a-priori value for the next of the N SISO modules; and repeating the decoding calculations and the deinterleaving of between the extrinsic values for remaining modules of the N SISO modules.
-
-
21. An apparatus for decoding of modulo N turbo encoded data, where N in an integer, the apparatus comprising:
-
an input queue for receiving samples of modulo N turbo encoded data; a metric calculator for calculating metric values for samples of modulo N turbo encoded data; N soft input soft output (SISO) modules for receiving the metric values, receiving an a-priori value by a first of the N SISO modules, and decoding calculations within the first of the N SISO modules thereby forming an extrinsic value; and N modulo N deinterleavers for deinterleaving of between the extrinsic values to form an a-priori value for a next of the N SISO modules, wherein the N SISO modules and the N modulo N deinterleavers repeat the performing decoding calculations and the deinterleaving the extrinsic value for remaining modules of the N SISO modules. - View Dependent Claims (22, 23)
-
Specification