Viterbi IP Core User Guide

ID 683280
Date 11/06/2017
Public
Document Table of Contents

3.3.3. About Converting Received Signals

The Viterbi decoder calculates the distances to the nearest four symbol points as an unsigned number in the range 0...00 to 1...11 (number of softbits).
Where the range is equal to the radius of the symbol map. The decoder works with accumulative metrics (not Euclidean metrics), so the decoder inverts these distances (000 becomes 111; 001 becomes110).
Figure 12. Conversion of Received Symbol into Four Branch Metrics and a Sector Number

For example, consider a received symbol that lands in sector number 2 with the following distances to the four nearest symbol map points:

  • 1111
  • 1101
  • 1011
  • 0001

Where the distance of the radius for 4 softbits is 1111. The distances are inverted to obtain the following branch metrics:

  • Branch metric 0 = 0000
  • Branch metric 1 = 0010
  • Branch metric 2 = 0100
  • Branch metric 3 = 1110

The decoder uses the coded bits (c1, c0) to select the branch metric number, which it uses to decide where to connect the branch metrics to the rr input of the Viterbi decoder. Branch metric 3 goes to the most significant bits (MSB) of rr; branch metric 0 goes to the least significant bits (LSB) of rr.