A soft decision maximum likelihood detection method and apparatus. Both
encoding and decoding schemes are provided for a forward error correcting
code. The decoding technique utilizes soft decision maximum likelihood
decoding especially suited for codes that operate on symbols rather than
bits. The decoding technique utilizes a maximum likelihood function in
combination with an erasure correcting coding scheme to correct b+1 errors
in a block wherein the erasure correcting code itself can correct up to b
erasures. The decoding method uses likelihood values for all possible
symbol values for each received symbol in addition to hard decisions.
First, the (b+1).sup.th error is corrected by assuming a single error in
each symbol location. Then, for each symbol in a codeword all valid symbol
possibilities are tested. For each symbol possibility, the metric of the
resulting codeword is calculated using the likelihoods provided by the
receiver. The remaining b errors are corrected by assuming erasures in all
possible combinations of b symbols. The codeword yielding the maximum
metric is selected and subsequently decoded and output.