a method and apparatus for decoding forward error correction encoded data . a stream of units of fec encoded bits are received , where the units are derived from a transmitted signal , where each unit represents a one - bit data value , and where each unit includes correctness bits that together reflect a level of probability that the one - bit data value represented by the unit differs from corresponding bits in the signal before it was transmitted . the stream of units of fec encoded bits are decoded by using the quality level of bits to perform soft - decision convolution decoding on the stream of units of fec bits , where the soft - decision convolution decoding produces , for block decoding , a stream of symbols made up of bits . in the stream of units of fec bits , subsequences of units that are prone to erroneous soft - decision convolution decoding are detected by determining , for the sub - sequences whether the distribution of quality bits indicate the units are below a threshold level of correctness , and by comparing characteristics of that distribution to a given set of characteristics predetermined to be prone to result in incorrect decoding . among the symbols produced for block decoding , symbols containing one or more bits that correspond to units that were in subsequences detected to be prone to erroneous soft - decision convolution decoding are flagged or tagged , and thereby , errors in the stream of symbols may be soft - decision block decoded by erasing the flagged symbols .