Efficient decoding of trellis coded modulation waveforms
View Patent ↗A method and apparatus for decoding trellis-coded digital data. Digital data samples that have been convolutionally encoded by trellis-coded modulation (TCM) for purposes of forward error correction require a computationally intensive Viterbi decoder for best performance. A technique known as pragmatic trellis-code modulation (PTCM) reduces decoder complexity but at the expense of degraded performance in some situations. This disclosure provides a solution that retains the reduced complexity of PTCM, but uses a full trellis approach that yields significantly better performance in terms of bit error rate (BER).
1. A method for decoding data encoded as trellis-code modulation (TCM) symbols, the method comprising the steps of:
receiving the TCM symbols including digital data for a received signal constellation point as one or more pairs of in-phase (I) and quadrature (Q) values;
calculating soft decision values, each of the soft decision values corresponding to each respective received pair of (I,Q) values that defines a set of n least significant bits of received data, where n is the number of bits of data that were subject to convolutional encoding in the TCM encoding process;
calculating multiple branch metric values for use in the decoding process, from the soft decision values;
Viterbi decoding said n least significant bits of data at a time using the multiple branch metric values, and producing n bits at a time of output data;
re-encoding the n bits at a time of output data to determine the coset membership of the received TCM symbols;
using the re-encoded data to process unencoded data bits in a hard decision process to recover multiple uncoded bits of received data; and
assembling the recovered uncoded bits of received data with the n bits of decoded data output from the Viterbi decoding step, to provide a complete data symbol;
and wherein the Viterbi decoding step employs a full rate trellis, without de-puncturing.
2. A method as defined in claim 1 , wherein the method further comprises a step of delaying the uncoded bits to synchronize their output with the recovered decoded bits.
3. A method as defined in claim 1 , wherein the step of calculating soft decision values comprises calculating a distance corresponding to the minimum of the distances between a received (I,Q) data point and each possible data point in the signal constellation.
4. A method as defined in claim 1 , wherein data decoded in accordance with the method was encoded using an encoder with constraint length of at least nine.
5. A method as defined in claim 1 , wherein data decoded in accordance with the method was encoded without puncturing.
6. A method as defined in claim 1 , wherein:
data received in the receiving step is in the form of two pairs of (I,Q) data, corresponding to a four-dimensional TCM operation;
the step of calculating branch metric values generates c d =sixteen such values, where d is the TCM dimension divided by two, and c is the number of cosets of data, which is four.
7. A method as defined in claim 6 , wherein a=3.
8. Digital decoding apparatus for decoding data encoded as trellis-code modulation (TCM) symbols, the apparatus comprising:
means for receiving the TCM symbols including digital data for a received signal constellation point as one or more pairs of in-phase (I) and quadrature (Q) values;
means for deriving soft decision values, each of the soft decision values corresponding to each respective received pair of(I,Q) values that defines a set of a least significant bits of received data, where n is the number of bits of data that were subject to convolutional encoding in the TCM process;
means for calculating multiple branch metric values for use in the decoding process, from the soft decision values;
a Viterbi decoder configured to decode said n least significant bits of data at a time using the multiple branch metric values, to produce n bits at a time of output data;
a convolutional encoder, for re-encoding the n bits at a time of output data to reproduce pairs of values;
means for selecting and processing unencoded data bits in a hard decision process to recover multiple uncoded bits of received data; and
means for assembling the recovered uncoded bits of received data with the n bits of decoded data output from the Viterbi decoder, to provide a complete data symbol;
and wherein the Viterbi decoder employs a full rate trellis, without de-puncturing.
9. Apparatus as defined in claim 8 , wherein the apparatus further comprises means for delaying the uncoded bits to synchronize their output with the recovered decoded bits.
10. Apparatus as defined in claim 8 , wherein the means for deriving soft decision values comprises means for calculating a distance corresponding to the minimum of the distance between a received (I,Q) data point and each possible data point in the signal constellation.
11. Apparatus as defined in claim 8 , wherein data decoded in the apparatus was encoded using an encoder with constraint length of at least nine.
12. Apparatus as defined in claim 8 , wherein data decoded in the apparatus was encoded without puncturing.
13. Apparatus as defined in claim 8 , wherein:
data received in the apparatus is in the form of two pairs of (I,Q) data, corresponding to a four-dimensional TCM operation;
the means for calculating branch metric values generates c d =sixteen such values, where d is the TCM dimension divided by two, and c is the number of cosets of data, which is four.
14. Apparatus as defined in claim 13 , where n=3.