|

TECHNICAL FIELD
This invention relates to multidimensional trellis-coded modulation useful, for example, in voiceband data transmission (e.g., modem) applications.
BACKGROUND OF THE INVENTION
Various techniques have been used to improve the bandwidth efficiency and noise immunity of communication channels. One particularly useful technique is rotationally-invariant, multidimensional trellis-coded modulation. Such codes have been disclosed, for example, in U.S. Pat. No. 4,713,817, issued Dec. 15, 1987, entitled "Multidimensional, Convolutionally Coded Communication Systems." However, certain prior art codes had a defect in that the same sequence of signal points can be generated by the trellis encoder when the trellis encoder traverses two different paths of trellis states.
This defect in the prior art is not easily corrected, especially when the code must, at the same time, achieve rotational invariance and a large amount of coding gain.
SUMMARY OF THE INVENTION
The defect of the prior art is overcome, while maintaining rotational invariance and a large amount of coding gain, by providing a novel trellis code in which the trellis encoder is operated such that the selected subset corresponding to a transition of the trellis encoder from a present state i to a different next state j is different from the selected subset that corresponds to a transition of the trellis encoder from a present state j to a next state i.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of the transmitter portion of a communication system utilizing a trellis-coded modulation scheme embodying the principles of the invention;
FIG. 2 is a block diagram of the receiver portion of a communication system capable of receiving and processing the signals generated by the transmitter of FIG. 1;
FIG. 3 shows a two-dimensional constellation that may be used in the transmitter of FIG. 1 either by itself or as a constituent of a higher-dimensional constellation;
FIG. 4 is a schematic diagram of an exemplary embodiment of the trellis encoder of the transmitter of FIG. 1; and
FIGS. 5 and 6 together are a state transition diagram that represents the trellis code embodied in the trellis encoder of FIG. 4.
DETAILED DESCRIPTION
Referring now to the drawings, FIGS. 1 and 2 show the transmitter and receiver portions, respectively, of an exemplary communication system constructed for use with the present invention. In FIG. 1, a stream of bits from a data source 100, such as a computer terminal, is clocked into a scrambler 102, which randomizes the bits in a conventional manner. The serial bit stream output from scrambler 102 is provided to a serial-to-parallel converter 104, which outputs parallel words. Two bits from converter 104 are provided to a differential encoder 106, which illustratively is a Mod-4 differential encoder, via line 108. Two other bits from converter 104 are provided to a trellis encoder 110 via line 112. As described in greater detail below, trellis encoder 110 encodes the two bits from line 112, together with two bits received on line 113 from differential encoder 106, to output five bits (which may be referred to as the "trellis encoded bits") on line 118 to a 2.sup.13 -point 4D 96-QAM constellation mapper 116.
Constellation mapper 116 provides channel signal points to a modulator 120 by selecting the signal points from a predetermined 2.sup.13 -point 4D QAM signal constellation. In particular, constellation mapper 116 uses the five bits received from trellis encoder 110 to select a subset of the 4D QAM signal constellation, and uses an additional eight bits received from converter 104 on line 114 to select a 4D signal point from the selected subset. (The sequence formed by successive selected subsets is hereafter referred to as a "valid" sequence of subsets of the trellis code. Similarly, the sequence formed by successive selected signal points is hereafter referred to as a "valid" sequence of signal points of the trellis code. Generally, the performance of a trellis-coded system is determined by the minimum square Euclidian distance (MSED) between any two valid sequences of signal points of the code.) The selected 4D signal point is provided to conventional pulse-shaping filters (not shown) and then to modulator 120. Modulator 120 modulates the sequence of selected signal points onto a communication channel 122 for transmission to the receiver portion of the communication system.
Referring now to the receiver portion of the communication system, shown in FIG. 2, a signal received from communication channel 120 is processed in a conventional manner by equalizer/demodulator 200. Equalizer/demodulator 200 generates a sequence of channel-distorted signal points, which is then processed by a maximum-likelihood-type decoder (illustratively a Viterbi decoder or a reduced-complexity Viterbi decoder). The output bits of decoder 202 are provided to a differential decoder 204 for decoding in a conventional manner. Decoder 204 outputs bits to a parallel-to-serial converter 206, descrambled in a conventional manner by a descrambler 208, and received by a data sink 210 (which may be, for example, a mainframe computer).
FIG. 3 shows an exemplary 2-dimensional (2D) QAM constellation suitable for use with the present invention. The constellation has 96 symbols, which are partitioned into eight 2D subsets A through H. The MSED between any two symbols of the constellation is given by d.sub.0.sup.2. The constellation has four phase symmetries. That is, when a symbol of the constellation is rotated by 90, 180, or 270 degrees, that symbol becomes another symbol of the constellation. The MSED between any two symbols of a particular subset, A through H, is 8d.sub.0.sup.2.
A 2.sup.13 -point 4D 96-QAM constellation is formed by first concatenating a pair of 2D 96-QAM constellations and then deleting selected signal points, using the technique disclosed in my earlier U.S. Pat. No. 4,713,817, issued Dec. 15, 1987, entitled "Multidimensional, Convolutionally Coded Communication Systems" (the "Wei patent"), which is hereby incorporated by reference. The 4D constellation is then partitioned into 32 4D subsets, 0 to 31, as shown in FIG. 18 of the Wei patent. The 4D constellation also has four phase symmetries. Subsets 0 to 15 are grouped together to form a first 4D family of subsets, and subsets 16 to 31 are grouped together to form a second 4D family of subsets. The MSED between any two points of the 4D constellation is d.sub.0.sup.2. The MSED between any two points within each of the two families is 2d0.sup.2. The MSED between any two points within each of the 32 4D subsets is 8 d.sub.0.sup.2.
Each of the families can be evenly divided into four groups wherein the four subsets within a group can be obtained from one another through 90 degree rotations. For example, the four groups in the first 4D family are {0,1,2,3}, {4,5,6,7}, {8,9,10,11 } and {12,13,14,15}. Thus, the 4D subsets 0, 1, 2, and 3, for example, belong to the same group because they can be obtained from each other through 90 degree rotations.


Using the 32-subset partitioning of the 4D constellation, a rotationally invariant 64 state, rate-4/5 trellis encoder was designed as shown in FIG. 19 of the Wei patent. (As used herein, a code is "rotationally invariant" when a valid sequence of signal points becomes another valid sequence of signal points after each signal point in the sequence is rotated by a given phase angle that corresponds to a phase symmetry of the constellation.) The trellis encoder will, in response to the four input bits received during each 4D signal interval, transition from a present state to a next state and generate five trellis-encoded output bits. These five trellis-encoded bits are used by constellation mapper 116 to select a subset of the 4D constellation. However, the trellis encoder of the Wei patent has the following defect: it is possible that the selected subset that corresponds to a transition of the trellis encoder from a present state i to a different next state j is identical to the selected subset that corresponds to a transition of the trellis encoder from a present state j to a next state i. For example, the selected subsets that correspond to transitions of the trellis encoder from a present state 2 to a next state 36 and from a present state 36 to a next state 2 are both 5. As a result of this property, for a given valid sequence of subsets (or signal points) there may exist another valid sequence that originates from the same initial state as the given sequence and whose square Eucledian distance from the given sequence is less than 5d.sub.0.sup.2. For example, two such valid sequences of subsets that originate from an initial trellis state 0 are 2, 5, 5, 5, 5 . . . and 0, 2, 5, 5, 5, . . . The squared Euclidian distance between these two valid sequences of subsets is 4d.sub.0.sup.2.
I have overcome this problem in the prior art by constructing a novel 64 state rate-4/5 trellis encoder based on the 32 subset partitioning of the 4D constellation described above. This code has both of the following properties: a) it is invariant to 90, 180, and 270 degree rotations of the constellation, and b) the selected subsets that correspond to the transitions of the trellis encoder from a present state i to a different next state j and from a present state j to a next state i are different. As a result of the latter property, it is possible to design the code such that the MSED between its valid sequences of subsets is 5d.sub.0.sup.2. One such code is described below with reference to FIGS. 4-6.
FIG. 4 shows a novel trellis encoder 400 constructed in accordance with the principles of the present invention. Trellis encoder 400 is a 64 state rate-4/5 encoder. Trellis encoder 400 includes six delay elements labeled 2T (where T represents the delay associated with a 2D signal interval), AND gates 402 and 404, and exclusive OR gates (which are represented by the symbol "+"). The bits that are stored in the six delay elements for the present 4D signaling interval are denoted as W1.sub.n, W2.sub.n . . . , W6.sub.n, as shown in FIG. 4. The bits that are stored in the corresponding six delay elements for the next 4D signaling interval are denoted as W1.sub.n+2, W2.sub.n+2, . . . , W6.sub.n+2. The five bits that are output by trellis encoder 400 for the present 4D signaling interval are denoted as YO.sub.n, I1.sub.n, I2.sub.n, I3.sub.n ', I4.sub.n ', as shown in FIG. 4.
FIGS. 5 and 6 each show a portion of a state transition diagram which represents the code embodied by trellis encoder 400. The vertical axis of each diagram indicates the present state of the trellis encoder and the horizontal axis of each diagram indicates the next state of the trellis encoder. In the diagram, the present state W1.sub.n W2.sub.n W3.sub.n W4.sub.n W5.sub.n W6.sub.n and the next state W1.sub.n+2 W2.sub.n+2 W3.sub.n+2 W4.sub.n+2 W5.sub.n+2 W6.sub.n+2 are represented by their decimal equivalents. If a state transition from a present state i to a next state j is allowed, then the corresponding entry in the state diagram is filled with a number. That number indicates the selected subset that corresponds to that state transition. The subset number is represented by the decimal equivalent of the encoder output bit pattern YO.sub.n I1.sub.n I2.sub.n I3.sub.n 'I4.sub.n '. For example, a transition from a present state 20 to a next state 9 is allowed, and the selected subset that corresponds to that state transition is 5 (see FIG. 5). If a state transition from a present state i to a next state j is not allowed, then the corresponding entry in the state diagram is left blank.
One skilled in the an will appreciate that the code embodied in trellis encoder 400 and in the state diagram of FIGS. 5 and 6 satisfies the desired properties discussed above. Namely, a) the code is invariant to 90, 180, and 270 degree rotations of the constellation, and b) the selected subsets that correspond to the transitions of each trellis encoder from a present state i to a different next state j and from a present state j to a next state i are different. One skilled in the an also will appreciate that the MSED between valid sequences of subsets or between valid sequences of signal points for this code is 5d.sub.0.sup.2.
In a preferred embodiment of the invention, the states that can be occupied by trellis encoder 400 are divided into two categories. The first category consists of even-numbered states, and the second category consists of odd-numbered states. The 4D subsets that are associated with state transitions from an even-numbered present state belong to the first 4D family of subsets (described above). Similarly, the 4D subsets that are associated with state transitions from an odd-numbered present state belong to the second 4D family of subsets. From each present state there are sixteen allowed transitions. Half of these transitions lead to even-numbered next states, while the remaining transitions lead to odd-numbered next states.
Suppose that a 4D group is used for the state transitions from a certain present state. In accordance with one aspect of the invention, only two subsets of the 4D group are used for the state transitions from the present state to the even-numbered next states. The remaining two subsets of the group are used for the state transitions from the present state to the odd-numbered next states. For example, the 4D group that consists of subsets 0, 1, 2, and 3 is used for state transitions from present state 0. The 4D subsets 0 and 1 of this group are used for state transitions from present state 0 to next states 0 and 4, while the 4D subsets 2 and 3 of this group are used for state transitions from present state 0 to next states 1 and 5.
It will be apparent to one skilled in the art that other modifications can be made to the described embodiment without departing from the scope of the invention. For example, although I have disclosed one code constructed in accordance with the invention, in view of the present disclosure, other such codes could be readily constructed. Also, constellations of different sizes could be used, and a different number of input bits could be used for each 4D signaling interval. In still other embodiments, the 4D constellation could be formed using conventional constellation shaping techniques.
|
|