Adaptive data rate modem
First Claim
1. A modem operating at one of a plurality of data rates for use with a forward channel transmitter, a forward channel receiver, a return channel transmitter, and a return channel receiver, comprising:
- a. encoding means for generating l output bits as a function of j input bits, where l is greater than j;
b. mapping means connected to said encoding means for mapping the l-bit output of said encoding means to an element of a predetermined symbol set for transmission by said forward channel transmitter over a forward channel to said forward channel receiver; and
c. trellis decoder means connected to said forward channel receiver for searching a trellis, for selecting a trellis path which most closely resembles the received symbol sequence in terms of a cumulative path metric, for providing a decoded bit sequence as an output in response to the selected trellis path and the number of data bits per symbol in each branch of the selected trellis path, for estimating a reliable data rate as a function of a cumulative path metric of at least one survivor path, for dynamically and without interruption searching a dynamically changing trellis, and wherein the number of bits per symbol is dynamically changing; and
d. said trellis decoder means connected to said return channel transmitter for transmitting data rate information to said return channel receiver for use, in real time, by at least one of said encoding means and said mapping means.
1 Assignment
0 Petitions
Accused Products
Abstract
An adaptive data rate modulator/demodulator (modem) (102), particularly useful for transmitting data over fading communications channels, uses an adaptive data rate technique which supports multiple data rates in the same device. The modem incorporates an adaptive data rate encoder (104) and an adaptive data rate decoder (105) using adaptive, parallel-branch decoding to translate received symbols into corresponding data bits. Significantly, the soft decision metrics of the decoder are also used to provide an estimate W of the signal-to-noise ratio. An optional predictor (232) receives W from the adaptive data rate decoder (105) and predicts the future signal-to-noise ratio to determine the desired data rate for the modem. The data rate is changed automatically and dynamically without interrupting the decoding process. A constant channel symbol rate and a single signal set simplify signal acquisition and synchronization. Incoming and outgoing data are buffered, and the transmission rate is changed dynamically by a memory controller (109) to avert buffer overflows and underflows. An optional adaptive phase-lock loop system (116) maintains synchronization of the decoder at all data rates.
542 Citations
46 Claims
-
1. A modem operating at one of a plurality of data rates for use with a forward channel transmitter, a forward channel receiver, a return channel transmitter, and a return channel receiver, comprising:
-
a. encoding means for generating l output bits as a function of j input bits, where l is greater than j; b. mapping means connected to said encoding means for mapping the l-bit output of said encoding means to an element of a predetermined symbol set for transmission by said forward channel transmitter over a forward channel to said forward channel receiver; and c. trellis decoder means connected to said forward channel receiver for searching a trellis, for selecting a trellis path which most closely resembles the received symbol sequence in terms of a cumulative path metric, for providing a decoded bit sequence as an output in response to the selected trellis path and the number of data bits per symbol in each branch of the selected trellis path, for estimating a reliable data rate as a function of a cumulative path metric of at least one survivor path, for dynamically and without interruption searching a dynamically changing trellis, and wherein the number of bits per symbol is dynamically changing; and d. said trellis decoder means connected to said return channel transmitter for transmitting data rate information to said return channel receiver for use, in real time, by at least one of said encoding means and said mapping means. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A modem operating at one of a plurality of data rates for use with a forward channel transmitter, a forward channel receiver, a return channel transmitter, and a return channel receiver, comprising:
-
a. encoding means for generating l output bits as a function of j input bits, where l is greater than j; b. mapping means connected to said encoding means for mapping the l-bit output of said encoding means to an element of a predetermined symbol set for transmission by said forward channel transmitter over a forward channel to said forward channel receiver; and c. trellis decoder means connected to said forward channel receiver for searching a trellis, for selecting a trellis path which most closely resembles the received symbol sequence in terms of a cumulative path metric, for providing a decoded bit sequence as an output in response to the selected trellis path and the number of data bits per symbol in each branch of the selected trellis paths, for dynamically and without interruption searching a dynamically changing trellis, and wherein the number of bits per symbol is dynamically changing; and d. estimation means connected to said trellis decoder means for estimating a reliable data rate based on channel conditions, said estimation means also connected to said return channel transmitter for transmission over a return channel, for reception by said return channel receiver, and for use, in real time, by said at least one of said encoding means and said mapping means for determining a reliable data rate. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. An electrical circuit for transferring data at one of a plurality of data rates comprising:
-
a. a first shift register of size J bits where J is a common multiple of the data rates in bits per symbol; b. a second shift register of size k bits where k is the highest data rate in bits per symbol; c. a first counter, modulo-k with a variable start, for counting from k minus Ki to k bits where Ki is one of a plurality of data rates, and where Ki is less than or equal to k; d. a second counter, modulo J-1, for counting from 0 to J-1; e. said first shift register connected to said second shift register through a serial data line, to said first counter through a shift control line, to said second counter through a load line and said shift control line, and to an external memory through a data bus of size J bits; f. said second shift register being connected to said shift control line and further having k output bits from said second shift register connected to an output; g. said first counter being connected to a NAND gate through said first counter'"'"'s output line, to an external load pulse signal, an external bit clock, and an external data rate word, and h. said second counter being connected to said shift control line at said second counter'"'"'s clock input and to an external memory read line through said second counter'"'"'s output line.
-
-
31. An adaptive phase-locked loop comprising:
-
a. a bandpass filter having an input connected to receive data from said forward channel receiver and having an output; b. a programmable Mth power law device having an input connected to receive the output of said bandpass filter and producing an output therefrom corresponding to the input raised to the Mth power; c. phase detecting means having a first input connected to the output of said Mth power law device and also having an output representing the phase error of the input; d. a programmable loop filter having an input connected to the output of said phase detecting means and also having an output representing a filtered version of the input; e. a programmable voltage controlled oscillator having an input connected to the output of said programmable loop filter and having an output connected as a second input to said phase detecting means; f. a programmable divide-by-M circuit connected to the output of said programmable voltage controlled oscillator providing an output to a demodulator; and g. variation means for selecting the value of M and for modifying operating parameters of said programmable loop filter and said voltage controlled oscillator based on the value of said data rate of said received data.
-
-
32. A method for transmitting and receiving data over a two-way communications channel at one of a plurality of data rates, comprising the steps of:
-
a. encoding data by mapping J output bits to l output bits, where l is greater than j; b. mapping said l output bits to an element Sjk '"'"', of a predetermined symbol set by dynamically and without interruption searching a dynamically changing trellis, wherein the number of bits per symbol is dynamically changing; c. transmitting said element over a forward channel; d. receiving said element and generating an estimate, Sjk '"'"', i=1, 2, . . . , in terms of a predetermined metric; f. providing a decoded bit sequence as an output in response to selected trellis path and the number of data bits per symbol in the selected trellis path; g. estimating a reliable data rate based on channel conditions; h. transmitting data rate information over a return channel; and i. receiving said data rate information for use, in real time, by said encoding step for determining an operating data rate.
-
-
33. A system for transmitting and receiving data over a communications channel, comprising:
-
a. encoding means for mapping data to elements of a predefined symbol alphabet having symbol alphabet elements by dynamically and without interruption searching a dynamically changing trellis, and wherein the number of bits per symbol is dynamically changing; b. transmitting means connected to the encoding means for transmitting signals representative of the symbol alphabet elements over the communications channel at one of a set of predefined data rates; c. receiving means for receiving signals representative of elements of the symbol alphabet over the communications channel and producing in accordance therewith signals representative of the received symbol alphabet elements; d. decoding means connected to the receiving means for receiving said representative signals and generating in response thereto received data signals representative of the signals received; e. predictor means connected to said decoding means for estimating and having an output predicting future reliable data rates based on channel conditions, and f. means for sending said predictor means output to the transmitting means to control the selection of said data rate thereof, in real time, in response to the predictor means output.
-
-
34. A method for transmitting and receiving data over a communications channel, comprising the steps of:
-
a. encoding data to be transmitted by mapping said data to elements of a predefined symbol alphabet having symbol alphabet elements for dynamically and without interruption searching a dynamically changing trellis, and wherein the number of bits per symbol is dynamically changing; b. transmitting signals representative of said symbol alphabet elements over the communications channel at one of a set of predefined data transmission rates; c. receiving signals representative of elements of the symbol alphabet over the communications channel; d. decoding said signals and generating in response thereto received data signals representative of the signals received; e. predicting future reliable data rates based on channel conditions; f. controlling said data transmission rate during the transmission in real time in response to the prediction of future reliable data rates.
-
-
35. A modem operating at one of a plurality of data rates for use with a forward channel transmitter, a forward channel receiver, a return channel transmitter, and a return channel receiver, comprising:
-
a. encoding means for generating l output bits as a function of j input bits, where l is greater than j; b. mapping means connected to said encoding means for mapping the l-bit output of said encoding means to an element of a predetermined symbol set for transmission by said forward channel transmitter over a forward channel to said forward channel receiver for dynamically and without interruption searching a dynamically changing trellis, and wherein the number of bits per symbol is dynamically changing; and c. trellis decoder means connected to said forward channel receiver for dynamically and without interruption searching a dynamically changing trellis, for selecting a trellis path which most closely resembles the received symbol sequence in terms of a cumulative path metric, for providing a decoded bit sequence as an output in response to the selected trellis path and the number of data bits per symbol in each branch of the selected trellis path, and for estimating a reliable data rate as a function of a cumulative path metric of at least one survivor path; and d. said trellis decoder means connected to said return channel transmitter for transmitting data rate information to said return channel receiver for use in real time with at least one of said encoding means and said mapping means. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
Specification