A system used with a communications channel for encoding and convolutionally decoding a plurality of data words in a data word sequence, each of said plurality of data words having k bits, with k being a number of bits in each of said plurality of data words, and with each of said plurality of data words defining a signal point, comprising:
- first processor means for selecting, for a first data word in the data word sequence, using a trellis encoding algorithm and a previous signal point, a first 2.sup.k subset of signal points from a two-dimensional lattice of signal points having a plurality of X coordinates and a plurality of Y coordinates, the two-dimensional lattice of signal points including a constellation of 2.sup.k+1 signal points, a corner of the first 2.sup.k subset of signal points being defined by the previous signal point;
- said first processor means for selecting, using the first data word, a first signal point from the first 2.sup.k subset of signal points, the first signal point having an X coordinate and a Y coordinate;
- a modulator for generating a first frequency-shift-keying (FSK) signal from an M-ary FSK signalling scheme of the X coordinate of said first signal point, and for generating a second FSK signal from the M-ary FSK signalling scheme of the Y coordinate of said first signal point;
- a transmitter for transmitting the first FSK signal at a first frequency and the second FSK signal at a second frequency over a communications channel as a first frequency pair, the first frequency being orthogonal to the second frequency;
- a demodulator for demodulating the first FSK signal as a first received X coordinate and the second FSK signal as a first received Y coordinate;
- and
- second processor means for estimating a first 2.sup.k received subset of signal points using a convolutionally decoding algorithm and a previously received data word;
- said second processor means for estimating a first received data word from the first received X coordinate, the first received Y coordinate, and the first 2.sup.k received subset of signal points;
- said first processor means for selecting, for a second data word in the data word sequence, using said trellis encoding algorithm and a previous signal point, a second 2.sup.k subset of signal points from the two-dimensional lattice of signal points;
- said first processor means for selecting, using the second data word, a second signal point from the second 2.sup.k subset of signal points, the second signal point having an X coordinate and a Y coordinate;
- said modulator for generating a third FSK signal from the M-ary FSK signalling scheme of the X coordinate of said second signal point, and for generating a fourth FSK signal from the M-ary FSK signalling scheme of the Y coordinate of said second signal point;
- said transmitter for transmitting the third FSK signal at a third frequency and the fourth FSK signal at a fourth frequency over a communications channel as a second frequency pair, the third frequency being orthogonal to the fourth frequency;
- said demodulator for demodulating the third FSK signal as a second received X coordinate and the fourth FSK signal as a second received Y coordinate;
- said second processor means for estimating a second 2.sup.k received subset of signal points using the convolutionally decoding algorithm and a previously received data word;
- and
- said second processor means for estimating a second received data word from the second received X coordinate, the second received Y coordinate, and the second 2.sup.k received subset of signal points.