Decoder for implementing an approximation of the Viterbi algorithm using analog processing techniques
First Claim
1. A decoder for decoding a stream of received convolutionally encoded data, which may be corrupted by noise, having a predetermined plurality of possible states and an arbitrary predetermined code rate, comprisingan input terminal capable of receiving the stream of convolutionally encoded data;
- first means connected to said input terminal capable of both (a) effecting the availability of at least a first and a second inverted and noninverted sample of the analog waveform received at said input terminal, each of said samples being separated by a time interval which corresponds to the data rate of the received signal and said first sample corresponds to the most recently received sample, and (b) computing likelihood functions represented by analog voltage signals for all possible transitions into each state of the convolutional code which has a plurality of possible states, said first means selectively using the inverted and noninverted analog waveforms of said first and second samples and the analog voltage signal representative of the most recently computed most probable likelihood function for each of said plurality of possible states for computing said likelihood functions;
second means connected to said first means capable of temporarily storing the most recently computed analog voltage signal generated by said first means representative of the most probable likelihood function for each state for subsequent use by said first means for computing the likelihood functions for each possible transition during the next time interval;
third means connected to the output of said first means for comparing the analog voltage signals representative of the likelihood functions associated with each state and generating an output signal indicating the most probable transition into each state of said plurality of possible states; and
fourth means responsive to the output of said third means for storing the most likely data sequence into each state over a predetermined length and for producing at an output terminal thereof a stream of data corresponding to the decoded data.
0 Assignments
0 Petitions
Accused Products
Abstract
The present invention relates to two novel approaches for implementing an approximation of the Viterbi decoding algorithm using analog processing techniques which offer the potential for decoding at higher rates than currently achievable with digital processing decoders. The first approach employs at least one tapped delay means having a plurality of taps to enable the provision of the inverted and noninverted received analog channel waveform while path metric operations are performed by selectively switching between corresponding inverting and noninverting provisions of the at least one delay means according to the contents of a decision-directed digital memory. The second approach employs sample-and-hold circuits to store and update the path metrics based upon previous maximum-likelihood decisions.
-
Citations
17 Claims
-
1. A decoder for decoding a stream of received convolutionally encoded data, which may be corrupted by noise, having a predetermined plurality of possible states and an arbitrary predetermined code rate, comprising
an input terminal capable of receiving the stream of convolutionally encoded data; -
first means connected to said input terminal capable of both (a) effecting the availability of at least a first and a second inverted and noninverted sample of the analog waveform received at said input terminal, each of said samples being separated by a time interval which corresponds to the data rate of the received signal and said first sample corresponds to the most recently received sample, and (b) computing likelihood functions represented by analog voltage signals for all possible transitions into each state of the convolutional code which has a plurality of possible states, said first means selectively using the inverted and noninverted analog waveforms of said first and second samples and the analog voltage signal representative of the most recently computed most probable likelihood function for each of said plurality of possible states for computing said likelihood functions; second means connected to said first means capable of temporarily storing the most recently computed analog voltage signal generated by said first means representative of the most probable likelihood function for each state for subsequent use by said first means for computing the likelihood functions for each possible transition during the next time interval; third means connected to the output of said first means for comparing the analog voltage signals representative of the likelihood functions associated with each state and generating an output signal indicating the most probable transition into each state of said plurality of possible states; and fourth means responsive to the output of said third means for storing the most likely data sequence into each state over a predetermined length and for producing at an output terminal thereof a stream of data corresponding to the decoded data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method of decoding a stream of received convolutionally encoded data having a predetermined plurality of possible states and an arbitrary predetermined code rate which may be corrupted by noise, the method comprising the steps of:
-
(a) making available at least a first and a second inverted and noninverted sample of the received analog waveform, each of said samples being separated by a time interval corresponding to the data rate of the received signal and said first sample corresponds to the most recently received sample; (b) computing likelihood functions for all possible transitions into each state of the convolutional code by selectively using the inverted and noninverted analog waveforms of said first and second samples and analog voltage signals representative of the most recently computed most probable likelihood function for each of said plurality of possible states to generate analog voltage signals representative of the computed likelihood functions; (c) temporarily storing the most recently computed analog voltage signal generated in step (b) which is representative of the most probable likelihood function for each state for subsequent use in step (b) for computing the likelihood functions for each possible transition during the next time interval; (d) comparing the analog voltage signals representative of the likelihood functions associated with each state as generated in step (b) for determining the most probable transition into each state of said plurality of possible states; and (e) in response to the determination made in step (d), generating a binary bit corresponding to the decoded data for the most probable transition into each state and concurrently storing the most likely data sequence into each state over a predetermined length for producing an output stream of data corresponding to the decoded data.
-
Specification