# TCM metric computation

Started by May 26, 2005
```Hi,

I am writing a Matlab simulation of "Pragmatic-TCM" (see "A pragmatic
approach to trellis coded modulation", Viterbi et al, IEEE Comms
magazine, July, 1989, p.11).

One point I am unsure of is how to compute the metrics for the Viterbi
algorithm which decodes the least-significant bits of the received
signal point.

I understand that when you receive a point for decoding, you first make
a hard decision on which sector the point lies (based on knowledge of
set partitioning at the transmitter). Within that sector, the Euclidean
distance is measured from the received point to the allowed points
within that sector (there are always four points in pragmatic-TCM,
since there are always two code bits).

What I don't understand is the specifics of this procedure. As far as I
am aware conventional Euclidean distance is not valid, since it is
actually the Euclidean distance between the bits (which define the
point) that is important. For a hard decision decoder, I can just about
get my head around this, but I get muddled for a soft decision metric.

Furthermore, I always thought Euclidean distance measures were strictly
non-negative, and some articles and books show the metrics as having a
negative value over some range. Presumably some cost-saving
manipulation has been performed on the metric computation.

I would be very grateful if anyone could shed some light on how the
metric for TCM is computed, both idealy and/or in implementation. Even
reference to a good paper on the topic would be much appreciated, since
I have been unable to find what I am looking for either on the web, or
in IEEE.

Porterboy

```
```porterboy76@yahoo.com wrote:

>Hi,
>
>I am writing a Matlab simulation of "Pragmatic-TCM" (see "A pragmatic
>approach to trellis coded modulation", Viterbi et al, IEEE Comms
>magazine, July, 1989, p.11).
>
>One point I am unsure of is how to compute the metrics for the Viterbi
>algorithm which decodes the least-significant bits of the received
>signal point.
>
>I understand that when you receive a point for decoding, you first make
>a hard decision on which sector the point lies (based on knowledge of
>set partitioning at the transmitter). Within that sector, the Euclidean
>distance is measured from the received point to the allowed points
>within that sector (there are always four points in pragmatic-TCM,
>since there are always two code bits).
>
>What I don't understand is the specifics of this procedure. As far as I
>am aware conventional Euclidean distance is not valid, since it is
>actually the Euclidean distance between the bits (which define the
>point) that is important. For a hard decision decoder, I can just about
>get my head around this, but I get muddled for a soft decision metric.
>
>
Why do you care about the actual bits at this stage? You have a point
which isn't where is ought to be, and the Euclidean distance between
there and the places it maybe should have been is a good metric for the
quality of (mis-)match. Of course, you don't usually use the Euclidean
distance. You use it's square - for better or worse it is the pragmatic
solution (this is pragmatic TCM, right? :-) ). I'm not sure what you
mean by a Euclidean distance distance between the bits. Bits are usually
separated by a Hamming distance, like you have in a hard decision
Viterbi system.

>Furthermore, I always thought Euclidean distance measures were strictly
>non-negative, and some articles and books show the metrics as having a
>negative value over some range. Presumably some cost-saving
>manipulation has been performed on the metric computation.
>
>
A negative metric? Better than perfect? :-\    I haven't met that in
connection with TCM.

>I would be very grateful if anyone could shed some light on how the
>metric for TCM is computed, both idealy and/or in implementation. Even
>reference to a good paper on the topic would be much appreciated, since
>I have been unable to find what I am looking for either on the web, or
>in IEEE.
>
>
I don't think there is much detailed stuff on the web.

Regards,
Steve
```
```>I'm not sure what you mean by a Euclidean distance distance between the
>bits. Bits are usually  separated by a Hamming distance, like you have in a
>hard decision  Viterbi system.

Sorry, I phrased that badly.

>You have a point which isn't where is ought to be, and the Euclidean distance
>between there and the places it maybe should have been is a good metric for
>the  quality of (mis-)match

OK, I see. I guess I was over-complicating the issue. The distance
between the rx point and the possible tx points is the metric. In a
soft decision device this just gets quantised to however many bits
right? And you pass that into the Viterbi algorithm.

The reason I got muddled, is because i am looking at a book called
"OFDM for wireless multimedia communications" by Van-Nee and Prasad,
and they compute a different metric for each bit b0 and b1 (supposing a
rate 1/2 coder) and add the metrics to compute the total metric. But if
we can get the metric in one go I guess that would do just as well.

Porterboy

```