A method for BTFD decoding of signals having at least a message block of
k-bit from a length candidate set S={s.sub.1, s.sub.2, . . . s.sub.i},
wherein the k message bits are encoded by a CRC encoder and processed by
an (n, l, m) convolutional encoder to generate encoded data that includes
decoding a received frame to form a decoded sequence that includes an
s.sub.i-bit message and an error correcting code, calculating a
.delta.(s.sub.i) value, comparing .delta.(s.sub.i) with a threshold
value, repeating the decoding and calculating steps if .delta.(s.sub.i)
is greater than the threshold, and updating the threshold to be
.delta.(s.sub.i) if .delta.(s.sub.i) is less than or equal to the
threshold.