Error correction on burst channels by sequential decoding
First Claim
1. A sequential decoder and system for determining error patterns for making error correction on burst and random noise channels using convolutionally encoded data comprising:
- de-interleaver means for time-demultiplexing the convolutionally encoded data from a data channel into a predetermined transformed order;
a decoded data buffer for storing received data which has been decoded by said de-interleaver;
a syndrome bit generator connected to the output of said de-interleaver means for calculating a syndrome bit from a combination of the presently received subblock together with a given number of previous sub-blocks received from said de-interleaver means and stored in said decoded data buffer, said syndrome bit indicating if the current assumption of the path through a convolutional tree is correct;
burst tracking means, connected to the output of said de-interleaver means, for tracking burst errors and deriving burst indicator bits which indicate the presence of burst errors in a channel, said burst tracking means also being connected to said decoded data buffer which stores previously decoded received data;
memory means for storing tables of error likelihood and error pattern values derived from known error statistics about the data channel, statistics of probability of random errors and burst errors, error severity within a burst, and average burst duration, said memory means being connected to and addressed by a calculating means for providing error likelihood and error pattern values to said decoded data buffer; and
said calculating means connected to both said syndrome bit generator and said burst tracking means for using said syndrome bits and said burst indicator bits to calculate a table address in said tables of error likelihood and error pattern values, said table address providing a likelihood value and an error pattern which are used to update a total likelihood value and determine an error pattern which are used to change received subblock data.
0 Assignments
0 Petitions
Accused Products
Abstract
A sequential decoder for error correction on burst and random noise channels using convolutionally encoded data. The decoder interacts with a deinterleaver which time demultiplexes data from a data channel from its time multiplexed form into a predetermined transformed order. The decoder includes a memory for storing a table of likelihood values which are derived from known error statistics about the data channel such as the probabilities of random errors and burst errors, burst error severity and burst duration. The decoder removes an encoded subblock of data from the deinterleaver and enters it into a replica of the convolutional encoder which calculates a syndrome bit from a combination of the presently received subblock together with a given number of previous subblocks. The syndrome bit indicates if the current assumption of the path through the convolutional tree is correct. Where there is no error in the channel, then the received sequence is a code word and the syndrome bit indicates that the correct path in the convolution tree is taken. For each received bit, and indicator bit is calculated which is a function of the difference between the current path and the received sequence. The sequential decoder employs the syndrome bit together with burst indicator bits to calculate a table address in a table of likelihood values and error pattern values. The likelihood value is used to update a total likelihood of error value and the error pattern value is used to change the received subblock of data.
-
Citations
13 Claims
-
1. A sequential decoder and system for determining error patterns for making error correction on burst and random noise channels using convolutionally encoded data comprising:
-
de-interleaver means for time-demultiplexing the convolutionally encoded data from a data channel into a predetermined transformed order; a decoded data buffer for storing received data which has been decoded by said de-interleaver; a syndrome bit generator connected to the output of said de-interleaver means for calculating a syndrome bit from a combination of the presently received subblock together with a given number of previous sub-blocks received from said de-interleaver means and stored in said decoded data buffer, said syndrome bit indicating if the current assumption of the path through a convolutional tree is correct; burst tracking means, connected to the output of said de-interleaver means, for tracking burst errors and deriving burst indicator bits which indicate the presence of burst errors in a channel, said burst tracking means also being connected to said decoded data buffer which stores previously decoded received data; memory means for storing tables of error likelihood and error pattern values derived from known error statistics about the data channel, statistics of probability of random errors and burst errors, error severity within a burst, and average burst duration, said memory means being connected to and addressed by a calculating means for providing error likelihood and error pattern values to said decoded data buffer; and said calculating means connected to both said syndrome bit generator and said burst tracking means for using said syndrome bits and said burst indicator bits to calculate a table address in said tables of error likelihood and error pattern values, said table address providing a likelihood value and an error pattern which are used to update a total likelihood value and determine an error pattern which are used to change received subblock data. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for determining error patterns for making error correction on burst and random noise channels using convolutional codes with sequential decoding, comprising:
-
encoder means for encoding source data by convolutional encoding; time interleaving means for multiplexing the encoded data from its received order into a predetermined transformed order; data channel means for transmitting said time-interleaved data; de-interleaver means for time-demultiplexing data from a data channel into a predetermined transformed order; a decoded data buffer for storing received data which has been decoded by said de-interleaver, said decoded data buffer storing subblock data; decoder means for sequentially decoding the received convolutionally encoded data from said de-interleaver into the source data form; a syndrome bit generator, connected to said de-interleaver means and said decoded data buffer for calculating a syndrome bit from a combination of the presently received subblock together with a given number of previous subblocks, said syndrome bit indicating if the current assumption of the path through a convolutional tree is correct; burst tracking means, connected to the output of said de-interleaver means, for tracking burst errors and deriving burst indicator bits which indicate the presence of a burst error in a channel; and calculating means, connected to said syndrome bit generator and said burst tracking means for using said syndrome bits and said burst indicator bits to provide an error likelihood value and determine an error pattern which are used to change the received subblock data. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
Specification