In 1996, we noted that the near optimal multiuser detection (well known as the
M-algorithm decoder) might be able to be extended to decode convolutional codes.
But how to control the side-effect of the M-algorithm is a very difficult
problem. Based on Anderson et. al.'s work, we first established some
theoretical understanding of the problem and then found a near optimal decoding
algorithm to decode long convolutional codes. Currently, our efforts are focusing on the following aspects.
-
Hierarchical Decoding Algorithm (HDA) for Near Optimal Decoding Long
Convolutional Codes in a Short Packet Format (<500 bits).
Key Results:
- Here is a glimpse of the imperfectness of terminated long convolutional
codes versus the Shannon sphere packing lower bound.
block error rate of 1%.
block error rate of 10-4.
- (2,1,14) code: g[1]=56721, g[2]=61713, decoded by the Hierarchical Decoder with M=1024.
14 tail bits are used. The average complexity is less than that of the 500 and 400 states VA for a block error rate
of 1% or 10-4 respectively.
- (2,1,19) code: g[1]=5122642, g[2]=7315626, decoded by the Hierarchical Decoder with M=(
256,1024,4096). Three parity bits and 19 tail bits are used. The average
complexity is less than that of the 350 and 170 states VA for a block error rate
of 1% or 10-4 respectively. Side-effects (false joint and 3 parity bits) increase Eb/No by 0.15-0.2 dB.
This is why the (2,1,19) code has a worse performance than the (2,1,14) code. These
side-effects will disappear for codes with longer memory lengths.
- (2,1,25) code: g[1]=665041116, g[2]=516260772, decoded by the Hierarchical Decoder with M=(
256,1024,4096,16384). Three parity bits and 25 tail bits are used.
The average complexity is less than that of the 1043 and 195 states VA for a block error rate
of 1% or 10-4 respectively.
- (2,1,30) code: g[1]=66504111704, g[2]=51626077364, decoded by the Hierarchical Decoder with M=(256,1024,4096,16384,32768). No parity bits and 30 tail bits are used.
The average complexity is less than that of the 1250-2130 and 80-180 states VA for a block error rate
of 1% or 10-4 respectively.
- (2,1,40) code: coming soon.
More information about imperfectness of other codes can be found at
JPL Imperfectness Web Page.
Last modified: June, 2001.