tions can be found in [4], whereas a comprehensive tutorial presentation has been ...... Example9: An example of a W R code (WRC) is the. 4-state TCM code ...
Performance Evaluation of Trellis-Coded Modulation Schemes SERGIO BENEDETTO, SENIOR MEMBER, IEEE, MARINA GUIDO MONTORSI
MONDIN,
MEMBER, IEEE, AND
A description of the algorithms to evaluate the main parameters determining the pegormance of a Trellis-Coded Modulation (TCM)scheme is presented. TCM schemes are divided into classes that have an increasing degree of symmetry, so as to properly match the various algorithms to each class. The algorithms are compared in terms of computational complexity and tested on a set of multidimensional PSK codes.
I. INTRODUCTION The idea of combining channel modulation and coding, which dates back to the early days of information theory [ 11, [2], was first revisited by Ungerboeck [3]. The basic idea consists of transmitting m bits/waveform in each signaling interval using a modulator with a set of M waveforms, M > 2m, normally M = 2m+1. The redundancy in the number of available waveforms is exploited through a proper choice, in each signaling interval, of the 2m waveforms necessary to transmit m bits. The choice, in each interval, is made on the basis of the past transmitted signals through the memory of the encoder. The whole process gives rise to the so-called Trellis-Coded Modulation (TCM). A detailed description of TCM schemes and their applications can be found in [4], whereas a comprehensive tutorial presentation has been published in [ 5 ] , [6]. In this paper we consider the performance evaluation of TCM schemes over AWGN channels through the computation of the most important parameters: minimum Euclidean distance dfree, number of nearest neighbors Nfree, distance spectrum (DS), error event probability (EEP), bit error probability (BEP). As the computational complexity of the algorithms depends on the degree of symmetry of a code, we classify the TCM Manuscript received January 18, 1993; revised February 28, 1994. This work was supported by CNR under Progetto Finalizzato Trasporti, Sottoprogetto “Prometheus.” The authors are with the Dipartimento di Elettronica, Politecnico di Torino. Corso Duca degli Abruzzi 24, 10129 Turin, Italy. IEEE Log Number 9400794.
schemes according to their degree of symmetry, show how the belonging of a code to a particular class can be checked, and describe the algorithms which are most suitable for the various classes. The objective is to give a unified and comprehensive treatment of the subject, at a tutorial level. We will try not only to make the matter comprehensible to a broad audience of electronic engineers, but, more ambitiously, to permit, those who need it, the application of the methods described in the paper. To this purpose, all the algorithms will be explained in detail, and Fortran subroutines implementing them are supplied through Internet. We are mainly interested in analytical or semi-analytical methods to evaluate performance. Thus simulation based on Monte Carlo or other statistical tools, such as importance sampling, will not be addressed in the paper. We recognize their importance and usefulness in many system environments. Essentially, they are complementary to analytical methods, as they permit estimation of low-toand, medium values of the error probabilities ( 10-1more importantly, allow the investigation of more complex channels and system environments. In Section I1 a brief description of TCM schemes is presented. In Section 111 the main performance parameters are defined. In Section IV, TCM schemes are classified according to their symmetry properties. In Section V the various algorithms are described, according to each performance parameter and for the various classes of codes. Though in an elaborated and, where possible, unified form, this paper relies heavily on already published contributions. However, some of the algorithms, the examples of application, as well as the comparison between different algorithms are original. We tried to avoid the common pitfall of presenting complicated theories and powerful algorithms only to end up applying them to trivial cases far from practical applications. All examples refer to significant TCM schemes, using uni- or multidimensional modulation constellations. Thus beyond their main motivation to illustrate the capabilities of the proposed algorithms, the examples do have a validity in themselves.
0018-9219/94$04.00 0 1994 IEEE PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6, JUNE 1994
833 ~-
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
41 A
TRELLIS
T
S"
to the channel
Encoder states
Fig. 1. TCM encoder representation.
11. DESCRIPTION OF TCM SCHEMES
step n
A. The Encoder-Modulator A block diagram of the encoder-modulator is shown in Fig. 1. The source generates a sequence of binary digits at a rate Rs = 1/Ts bits per second. The serial sequence is then converted into m parallel sequences with a reduced rate R = 1/T = R s / m bits per second. Associating the sequence of intervals of length T to the sequence of natural numbers, we denote as (a,,") the binary sequence emitted by the source and as ( a t ) ) ,i = 1,. . . ,m the m binary sequences at the output of the serial-to-parallel converter, with the obvious correspondence a:) = ~ [ ( , - 1 ) ~ + i ] / ~ . The vector sequence (an) will be a shorthand notation for the m parallel sequences. The m parallel bits {&)}Elenter the block labeled ENCODER, which produces at its output a new bit e:. As Fig. 1 shows, the m 1 sequences (ct'), i = 0 , . . . , m so obtained enter the block labeled MAPPER. Notice that e$) = a t ) , i = 1, " - ,m. The encoder contains U delay elements of T seconds, and some logic circuitry. Thus the newly formed bit CL') depends on the m bits a;), i = l , . - - , m ; U bits, the memory of the encoder, obtained from the sequences ( Q k ) ,IC > 0; the way those m U bits are combined to produce Let a, be the vector containing the U bits at the outputs of the delay elements, the state of the encoder. The integer U is the constraint length (or memory) of the encoder, and the number of states will be L = 2". Two equations govern the encoder behavior
+
+
c p = r(a, , a,)
an+l = P(an,an ).
CL').
(1) (2)
A trellis is a useful graphical representation of the functions y and p. The nodes of the trellis are the values that can be assumed by the encoder state a, at time n; the trellis branches are associated with the transitions from a, to a,+1,and each transition is labeled with the corresponding value of a, and cLo) (see Fig. 2). Our representation of the encoder is very general, and includes almost all TCM schemes known in the literature. Two assumptions, however, have been made. The first one concerns the cardinality of the modulator alphabet, called A4 in the Introduction. We suppose that A4 = 2"+', i.e., that the modulator has twice the signals available than strictly needed to transmit the m parallel bits. This assumption is almost always verified in the TCM schemes 834
step n+t
Fig. 2. General trellis structure.
known, and it has been justified in [3] on the basis of the available gain in terms of channel capacity, by showing that very little incremental gain can be achieved by further increasing the modulator alphabet redundancy. The second assumption concerns the encoder realization. As the m bits which enter the encoder also enter the mapper unchanged, the realization of the encoder is called a systematic encoder withfeedback [7]. This is not the only possible realization. An equivalent realization, called the minimal feedback-free encoder, is possible. Both realizations require the same constraint length and give rise to codes equivalent in almost all the performance measures. Transformations from one representation to the other stem from the structural properties of convolutional codes [3], [7], [8]. Our choice was motivated by two reasons: Almost all the tables of good codes available in the literature are given in the systematic feedback form. Though only slightly, the performance of the systematic form in terms of symbol error probability (a seldom used performance measure for TCM schemes) is better than for the feedback-free realization [8]. The block labeled MAPPER in Fig. 1 converts the (m+l) bits at its input into an integer 1, ranging from 0 to 2m+1 - 1 which acts as a label identifying one of the 2m+1 signals of the modulator; this, in turn, will send to the channel a sequence of signals (3,) corresponding to the sequence (1,). Four examples of TCM schemes will help clarify the matter. In three of them, the number of parallel bits a? used in (1) and (2) is less than m. This phenomenon is highly important in practice, because it implies that the same pair of states can be connected by two or more branches, each associated with different sets of input bits a,. In this case we say that the trellis nodes are connected by parallel transitions. In general, we will denote by the number of bits { a t ) } used in (1) and (2), and, by convention, will assume that they are the first &, which is always possible by a permutation of the parallel bits a, without consequence to the code properties. Thus from each state it is possible to reach 2m other states. If m > 6, parallel transitions ,are present so that each trellis transition is formed by 2"-" parallel transitions. Example 1 : The 8-state 8-PSK TCM code first proposed by Ungerboeck in [3] has the systematic encoder of Fig. 3. The number of delay elements is v = 3 and therefore the
{~t)}~~
PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6, JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
d2)
.
*w
a“’
p) n
a‘.’
c‘3’
000011 1 1
cill
c
‘
1
0011001 1
01010101
101234567+&
Fig. 3. Systematic encoder for the ?-state code of Example 1. Fig. 6. Systematic encoder for the 4-statecode of Example 2. 1,:
c‘n2’ cp
cf’
0 2 4 6 1 3 5 7
(0000) (0100) (1000) (1100)
2 0 6 4
.
,_----._ e . *o ..____-.
i
3 1 7 5
4 6 0 2
0
c(ll n pn1 :
I
5 7 1 3
6 4 2 0 7 5 3 1
Fig. 4. Trellis diagram of the 8-state code of Example 1.
t Fig. 7. Trellis diagram of the 4-state code of Example 2.
Fig. 5. Natural labeling of the 8-PSK constellation used in Example 1.
number of states is L = 2” = 8. The number of input bits is m = 2, the number of bits checked by the encoder is 6 = 2, and thus this code does not have parallel transitions. In Fig* the mapper correspondence between bits c?), i = 0, ... ,m and the labels I, is reported. In this case the correspondence can be expressed in the form 2
I, = p c ; ) i=O
(natural mapping). In Fig. 4 the trellis diagram of the code is shown; each state is identified with a label ranging from 0 to 7. For notational simplicity, the four labels I, associated with the branches emanating from each node are written on the left side of each node. The first label on the left is associated with the uppermost transition from the node, the second label is associated with the transition immediately below it, and so on. Finally, the correspondence (natural labeling) between the labels I, and the 8-PSK signals s, 0 actually sent to the channel is shown in Fig. 5. Example 2: A second code, proposed in [9]-[ 11J is the 4-state 16-PSK TCM scheme whose encoder, in systematic form, is shown in Fig. 6. The number of delay elements is v = 2, and therefore the number of trellis states is 4. The number of input bits is m = 3, and the number of bits checked by the encoder is 6 = 1, and therefore
~
~
Fig. 8. Systematic encoder for the 8-state code of Example 3.
the number of parallel transitions exiting from each trellis node is 2m-m = 4, as shown in Fig. 7, where the same convention of Fig. 4 in associating the output bits to the trellis branches is used. 0 Example 3: We present here a Multi-Dimensional (MD) TCM scheme, i.e., the 8-state 2 x 8 PSK scheme with rate R = 2.5 b/waveform proposed in [lo] and [121. The corresponding encoder, in systematic form, is shown in Fig. 8. The number of delay elements is v = 3, and the value of each delay is T = 2T,, where T, is the duration of a waveform corresponding to a single 8-PSK signal. The number of input bits is m = 5 , and the number of output bits is m+ 1 = 6. The two 8-PSK symbols are transmitted serially on the channel during the symbol interval T. The number of bits checked by the encoder is 6 = 2, and therefore the number of_parallel transitions exiting from o each trellis node is 2”-” = 8, as shown in Fig. 9. Example 4: The encoder for the TCM scheme described in the CCITT Recommendation V. 32 [13] is shown in Fig. 10. The binary code is nonlinear, as the encoder contains not only delay elements and modulo-2 adders (EXOR), but also other elements of nonlinear logic (in particular, two AND gates). This complication is introduced
BENEDETTO er al.: PERFORMANCE EVALUATION OF TRELLIS-CODED MODULATION SCHEMES
835
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
451
c p ~cj131 c(n2) 41clpi :
(000000)(001000)(010000)(011000 (100000)(101WO)(11 0000)(111000) ciz)
t
111 (01 :
n Cn Cn
(000)(110)(100)(010) (001)(111)(101)(011) (110)(000)(010)(100) (111)(001)(011)(101)
.
-'(00011)-* (01111)
(100)(010)(000)(110) (101)(011)(001)(111) (010)(100)(110)(000)
(01011)
'
*
(10111)
1
(011)(101)(111)(001)
Fig. 9. Trellis diagram of the 8-state code of Example 3.
E R
I
I
U
Fig. 10. Nonlinear encoder for the code of Example 4.
ci41 13) 121 n Cn Cn
,..I
:
(oWoo)(olooo)(loooo)(llooo)
__.--._ 0
c
z ..___ ..'
1 SNR = 2u2
0
f
i
by a two-arms coherent demodulator front-end followed by a maximum-likelihood soft-decoder acting on the unquantized demodulator outputs. The noise variance per ' = N0/2 and the dimension of the signal space is 0 signal-to-noise ratio (SNR) is defined as
0
(WO)(110)(010)(100)
0
(001)(101)(111)(011)
1
1
(110)(000)(100)(010)
2
2
(011)(111)(101)(001)
3
3
(010)(100)(000)(110)
4
4
(111)(011)(001)(101)
5 6
5
(100)(110)(110)(000) (101)(001)(011)(111)
7
7
6
Fig. 11. Trellis diagram for the nonlinear code of Example 4.
in order to make the TCM scheme invariant to phase rotations of 90". The encoder has 3 delay elements and the corresponding trellis diagram, shown in Fig. 11, has 8 states. The number of input bits is m = 4, the number of bits checked by the encoder is % = 2, so that we have 4 parallel transitions from each state. The 32CROSS modulation scheme shown in Fig. 12 is used in the modulator. Fig. 12 also shows the correspondence between i = 0 , . . . ,4and the signals belonging to output bits the 32-CROSS constellation. 0
~ 2 ) ~
111. PERFORMANCE EVALUATION OF TCM SCHEMES
where we have assumed that the average energy of the signal constellation is equal to 1. If each waveform cames the information of m bits per symbol, the ratio between energy per bit Et, and noise spectral density can be expressed as
In the following, we present five parameters which influence or determine the performance of a TCM scheme over AWGN channels. They are: the minimum Euclidean distance dfreerthe (average) number of nearest neighbors Nfree, the distance spectrum, the error event probability, and the bit error probability. Obviously, the five parameters are related to each other. As an example, the distance spectrum can be used to obtain the error event probability. The first four parameters depend only on the code sequences, whereas the fifth requires complete knowledge of the mapping from input sequences to code sequences. A . The Minimum Distance dfree The minimum distance is defined as the minimum Euclidean distance between all pairs of distinct code sequences
The encoded signal sequence (sn) is sent over an additive white Gaussian noise (AWGN) channel with doublesided spectral noise density No/2. The receiver is formed 836
PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6, JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
The significance of this parameter stems from the fact that it determines the following asymptotic performance measures: A lower bound on the error event probability, in the form
The DS can also be used to upper bound the bit error probability through [ 161
where also the average number of bit errors B; occurring on paths with distance d; is needed. This parameter can be computed together with the DS. An asymptotically tight estimate' of the error event probability (requiring also the knowledge of Nf,,,), as
The asymptotic coding gain ym (7)
where d:, is the minimum squared Euclidean distance between pairs of signals of an uncoded scheme bearing the same number m of bits per dimension of the TCM at hand. A search for "good" codes normally makes use of this parameter to restrict the number of candidate codes, on which a more refined performance evaluation will be made. As a consequence, availability of fast algorithms to evaluate dfreeis of crucial importance. Moreover, this role of dfree often requires a computational algorithm applicable to the most general class of TCM schemes. B. The Average Number of Nearest Neighbors Nfree
The parameter Nf,,, is sometimes used, together with dfree, to identify good codes in an exhaustive search. Moreover, it appears in the error event probability estimate (6). It is defined as the average multiplicity of code sequence pairs with distance dfree. A mathematical definition will be given when describing the computational algorithms.
C . The Distance Spectrum The distance spectrum (DS) of a TCM scheme is the dfree,No E Nfree) of all set of pairs { d ; , N i } g o (do distances di between code sequences, and the corresponding average multiplicities N ; . It can be used to obtain an upper bound to the error event probability in the form [16]
In practice, the summation on the RHS of (8) is truncated to a finite number of terms, so as to make the truncation error negligible. 'Being the result of the application of the union bound to a lower bound, it is neither a proper lower bound nor an upper bound; it can be considered, however, a reasonable estimate of the error event probability for high SNR values.
D.The Error Event Probability Analytical upper bounds to the error event probability (EEP) are based on the transfer function methods [15]. They represent the closed-form equivalent of the infinite summation in the RHS of (8), and can be computed directly (without knowing the DS) from suitably defined state diagrams of the code, whose complexity depends on the degree of regularity of the code. E. The Bit Error Probability Analytical upper bounds to the bit error probability (BEP) are also based on transfer function methods and represent the closed-form equivalent of the infinite summation on the RHS of (9). The computational complexity is about the same as for the EEP.
IV. CLASSIFWATION OF TCM SCHEMES Good TCM codes have been found by computer search, like convolutional codes. A truly exhaustive search, however, would be impractical even for moderate values of the constraint length. As a consequence, some rules of thumb, derived from intuitive considerations and confirmed by experience, have been devised to restrict the searched class of codes. All of them rely on the so-called mapping by set partitioning [3], which will be briefly described in the following. A . Partitioning the Signal Constellation
Starting from the set S of 2m+1 signals forming the modulator alphabet, we partition it in subsets having progressively larger intrasubset distances. The partition at each level i consists of 22 subsets, each of them composed of Zm+'-' signals. We will denote these subsets as S:k) for k = 1,. . . , 2a. Examples for 8-PSK and 16-PSK are shown in Figs. 13 and 14. The successive partitions are identified by their level i, from 0 to 3 in Fig. 13, and from 0 to & 1 in general, and by their intraset distances 6, (that is, the minimum Euclidean distance between signals belonging, at level i, to the same subset in the partition). Based on the signal set partitioning, the code design rules are as follows [3].
+
All signals are used equally often. Transitions originating from (or merging into) the same state of the trellis use signals from the same subset Si1) or Si2)belonging to the first level of partition. Parallel transitions use signals from the same subset at the partition level i% 1.
BENEDETTO el al.: PERFORMANCEEVALUATION OF TRELLIS-CODED MODULATION SCHEMES
+
837
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
LEVEL 0
4
8: = 2.
1
/
\
/
\
Fig. 13. Set partitioning of 8-PSK constellation.
LEVEL
0
4
a:= 0,5858
1
/
\
4
&2.
2
I \
It can be easily verified that the TCM schemes presented in Examples 1 4 satisfy the aforementioned rules (for Examples 1 and 2, this can be done directly on the basis of the signal partitions of Figs. 13 and 14, while the others require suitable signal partitions). The third design rule states that each set of parallel transitions corresponds to a subset of the signal constellation at level 6 1. Furthermore (see Figs. 13 and 14) the association of bit labels to signals can be done in such
+
838
a way that the labels of each set of parallel transitions coincide with the first 6 1 positions (that is, in the value of the 6 1 encoded bits), while the remaining m - 6 uncoded bits can Ssume all the possible values (and they generate the 2m-m different labels corresponding to the 2m-m signals of each subset). Based on this labeling, we define a subset label as the value of the 6 1 encoded bits corresponding to the subset. When 6 = m, the subsets collapse into
+
+
+
PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6, JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Uncoded bits
I
1
...
1
cm
1
I
Fig. 15. Linear systematic convolutional encoder.
individual signals and the subset labels coincide with signal labels.
E . Identification of a TCM Scheme The most general form of description of a TCM scheme consists in the knowledge of the code matrix C. It is a 2" x 2" matrix whose entry c;,j is zero if the one-step transition o; + aj is not allowed, and contains the signal s k (or the subset of signals in the case of parallel transitions) associated with that transition when it is allowed. Example 5: The code matrix of the 4-state code of Example 2 is
where the subsets S i z ) i, = 1,' . . , 4 come from the twolevel partitioning of the 16-PSK signal set shown in Fig. 14. 0 For linear encoders, i.e., encoders comprising only delays and modulo-2 adders as in Fig. 15, a more concise representation consists in giving the 5 1 binary vectors i = O,-..,G, each containing v 1 bits. These vectors (usually given in octal form) completely specify the connections in the linear convolutional encoder of Fig. 15. Example 6: The encoder of Example 1 (Fig. 3) can be described by the binary vectors
+
h(2)= 0100,
h(l) = 0010,
+
h(O)= 1001
A . General Codes ( G C ) Codes in this class do not comply with any symmetry condition. They are described through their code matrix C. Even though they seldom (if ever) appear in tables listing good codes, a need to evaluate some of their performance parameters may arise during some phase of searching for good codes. B . Quasi-Regular Codes (QRC) The condition of quasi-regularity (QR) for TCM schemes was introduced in [16]. Let o and i? be two states in the code trellis, and e = {eo,. . . , e,} be a vector representing a binary (m+1)-tuple, called the error vector. The distance polynomial P,,e,e(D) is defined as
where p(cla) is the probability that the vector c labels a , transition originating from the state a, and d 2 [ s ( c )s(c@e)] is the squared Euclidean distance between signals s(c) (originating from a ) and signals s(c @ e ) (originating from 8),which are labeled by two binary ( m 1)-tuples which differ by e.* The summation in (11) is extended over all vectors c labeling transitions originated from a. Definition 1: A TCM scheme is said to be a QRC if: 1) its encoder is linear, 6j,) 2) for all e and all pair of states (ai,8i) and (aj,
+
or by the vectors expressed in octal form
h(2)= 4,
h(') = 2,
h(0)=
11,
0
C . Symmetry Properties of TCM Schemes As we shall see in the next section, the computation of the five performance parameters previously defined presents a different computational complexity, according to the extent of symmetry of the TCM scheme. We will distinguish the following classes of TCM codes.
0 To verify condition (12), we must consider each pair of states and construct the polynomials for each admissible error vector e. *The distance polynomials are only defined for those e for which there exists a branch leaving U and a branch leaving 5 whose binary labels differ by e.
BENEDETTO et al.: PERFORMANCE EVALUATIONOF TRELLIS-CODED MODULATION SCHEMES
839
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Table 1 Values of the Squared Distances d 2 [ s ( c ) ,s(c @ e)] Between the Signals s(c) (with Label c) and the Signals s(c @ e) (with Label c @ e) for the Code of Example 1 e
s4vs7 s(c)
c
OOO
001
010
011
100
101
110
111
Fig. 16. 8-PSK constellation and valuesof the distances between signals.
Example 7: The 8-state TCM code described in Example 1 is a QRC. To check it, we see first, from Fig. 3, that its encoder is linear. Then, we show in detail how condition (12) can be verified. With reference to Fig. 4, consider the two states 0 and 1 and the error vector e = {OOO). As the binary labels of the branches originating from state 1 (001, 01 1,101,111) are different from those originating from state 0 (OOO, 010, 100, 110), the polynomial P0,1,000 is not defined and we can proceed to the next error vector e = (001). In this case the polynomial is defined because the set of labels of the signals stemming from state 1 is obtained by adding the error vector e = (001) to the set of labels of the signals stemming from state 0. Thus, we obtain the polynomial
Moreover, all squared Euclidean distances appearing in (13) are equal, and take the same value A:, so that
where the distances between the 8-PSK signals are labeled as in Fig. 16, and the correspondence between distances and error vectors are reported in Table 1. From now on, each time a new polynomial is defined for the error vector 001, we must check whether it is equal to (14) or not. As an example, the two states 6 and 7 yield the polynomial + p ( 11016)DdZ 11o),S(11111 which matches (14). Continuing this procedure, it can be verified that condition (12) holds for all values of the error vector e, thus obtaining the distance polynomials
P?Joo(D)= 1, POlO(D>= ox:, PlOO(D) = ox:, PllO(D) = ox:, 840
POOl(D) =ox:, 1 P o l @ ) = -ox; 2
+m, 2
PI01 (D) = ox;, 1 P111(D) = -ox: 2
1 + -ox;. 2
As the polynomials do not depend on the considered pair of states, the code is a QRC and the polynomials have been 0 labeled only with the value of e. A different formulation of the quasi-regularity condition has been expressed by Zehavi and Wolf in [17] for TCM codes with rate k / ( k l)3. This condition (here denoted ZW condition for brevity), concerns the weightprofile of TCM schemes. As the ZW condition requires a different check procedure with respect to QR, it is useful to describe it as well. Consider, as before, the binary error vector e and the two subsets Si1)and S!2) forming the first partition level of a signal set. We define the weight profile of S i i ) , i = 1 , 2 , with respect to e, to be the function F(Sii',e, D)
+
where nd is the number of signals s(c) in sii) having Euclidean distance d from the signal s(c @ e), and the sum is taken over all the possible values of d. Definition 2 [17]: A TCM scheme is said to be a ZWC if its encoder is linear, the weight profiles of the two subsets Si1),Si2) are identical F ( S i l ) , e , D ) = F ( S i 2 ) , e , D ) , for all e.
(16)
U 1
2
31n [14] it is claimed that QR condition applies to a larger class of codes. However, it is possible to prove [18] that an easy extension of the condition of Zehavi-Wolf to rate k / n TCM schemes makes the two conditions completely equivalent. PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6, JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Example 8: For the QRC of Example 7 we have
Table 2 Values of the Squared Distances Between the Subsets S i i ) ,i = 1 . . . . , 4 for the Code of Example 2
F ( S p , 0 0 0 , D ) = F ( S p , o O o , D )= 4 F ( S y , 0 0 1 , D ) = F ( S p , O o l , D ) = 4DXZ F ( S y , O l o , D ) = F(S;2),010,D) = 4DX: F ( S y , o l l , D ) = F(S?),Oll,D) = 2DXi
+ 2DX2
F(Sil),l00,D) = F ( S i 2 ) lO0,D) , = 4DXZ
qsy,101, D ) = F(Si2’,101,D) = 4DXZ F(SI1),110, D )= F ( S i 2 ) 110,D) , = 4DX: F(S;l),lll,D) =F($),lll,D)
=2DXi +2DX2
and therefore this code is a ZWC. 0 The main difference between the condition of (16) and the QR condition of (14) is that the former is independent from the choice of the code. In fact, the subsets Sii) and the correspondence between signals and binary vectors necessary to verify (16), are determined only by the choice of the partition and by the mapping rule. The fact that the encoder is linear guarantees that every state in the trellis uses signals belonging either to Si1)or Si2). Thus when the code search is limited to linear encoders, and the chosen first level of partitioning satisfies (16), all codes are indeed ZWC. Almost all good linear codes proposed in the literature are ZWC.
C . Regular Codes Restricting further the class of TCM schemes, we arrive at the definition of regular codes. Definition 3 (Weak-SenseRegularity): A TCM scheme is regular in the weak sense (WR) if and only if: 1) its trellis encoder is linear, 2) the subsets SE’ i = 1,2, . . . ,2m+1, 65 m, formm+l’ ing the partition of the modulator alphabet at level 6 1 are such that the minimum Euclidean distance between elements of any two subsets depends only on the modulo-2 sum of the binary labels of the subsets. I
+
0 This property, with different denominations, was formulated in [16], 1193, [20]. Example9: An example of a W R code (WRC) is the 4-state TCM code described in Example 2. The code has h3 = 1, and therefore it uses the partition chain of Fig. 14 at level 2. According to the definition of subset label, the four i = 1,. . . , 4 can be labeled with the value of subsets the bits c!)crp‘ used to select them (see Fig. 7), obtaining the correspondence
di),
si1)U 00
sp U 01 sp * 10 sp U 11.
(17)
The minimum squared Euclidean distance between any two elements of the two subsets at level 2 are shown in Table 2.
Table 3 Values of the Squared Distances Between the Subsets Sp),i = 1,.. . , 4 for the Code of Example 2 as a Function of the Binary Difference Between Subset Labels
Distance
eS
Considering now the correspondence in (17), and defining as es the binary difference between two subset labels, we note from Table 2 that the squared distance between two subsets depends only on the value es as shown in Table 3. 0 Therefore the code satisfies the WR condition. Defrnition 4 (Strong-Sense Regularity) [21]: A TCM scheme is regular in the strong-sense (SR) if and only if 1) its trellis encoder is linear, 2) the subsets Se’ i = 1 , 2 , . . - , 2 m + 1 , 5ii 5 m, m+>’ forming the partition of the signal constellation at level 6 1 are such that the set of distances between any element of one subset SF) and all elements of
-
+
m+l
another subset Sg’ depends only on the modulo-2 m+l sum of the binary labels of the subsets.
0 When a code does not have parallel transitions, WR and SR become equivalent. Example 10: The code of Example 1 is neither SR nor WR. In fact, from Table 1 it is possible to observe that, given an error vector e = 011, the Euclidean distance between the two signals with labels d’ = 000 and d’ @ e is A i , while the squared Euclidean distance between the two signals with labels d’ = 001 and c” @ e is A.; Example 11: The 4-state 4-PSK TCM scheme proposed in [22], whose encoder and trellis are shown in Figs. 17 and 18, is an SRC. As the code does not have parallel transitions, there is a coincidence between signals and subsets, and we have SF) = si-1, for i = 1 , . . - , 4 . The encoded bits ckl)cio) are associated with the signals si, i = 0, . . . , 3 as shown in Fig. 19. The minimum squared Euclidean distance between pair of signals are shown in Table 4. From Table 4 and Fig. 19 we see that the squared
BENEDETTO er al.: PERFORMANCE EVALUATION OF TRELLIS-CODEDMODULATION SCHEMES
84 I
-
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Rate kk+l TCM codes (GC)
Binary linear
Fig. 17. Systematic encoder for the 4-state code of Example 14.
1
Fig. 20. Pictorial representation of the set relationships between the various code classes.
(11)
Table 5 Values of the Squared Distances Between the 4-PSK Signals s,. i = 0,. . . , 3 for the Code of Example 11 as a Function of the Binary Difference Between Signal Labels
3
(01)
Fig. 18. Trellis diagram of the 4-state code of Example 14.
t =
Distance
00
0
01
2
10
4
11
2
00
I
Fig. 19. Correspondence between bits and signals in the 4-PSK constellation used in Example 14, and values of the distances between signals.
Table 4 Values of the Squared Distances Between the Signals 3 %, i = 0, . . , 3 for the Code of Example 11
so
0
2
4
2
s1
2
0
2
4
SI1
4
2
0
2
s3
2
4
2
0
distance between two signals depends only on the value of the modulo-2 sum of their binary labels, reported in Table 5 , and therefore the code is SR. Note that this is due to the isometry that exists between Hamming distance and Euclidean distance for Gray mapped 4-PSK. Indeed, the 0 vast majority of good trellis codes are not SR.
D.Geometrically Uniform Codes In [21], Forney defined geometrically uniform TCM codes (GUC). Though interesting and illuminating, the 842
e
algebraic apparatus behind the definition is beyond the scope of this paper. The characteristics of GUC can be explained in words if we consider the encoder sequences of signals like signal points in an infinite-dimensional metric space. When transmitted over an AWGN channel it is widely known that the decision rule that minimizes the error probability consists in choosing the signal point closest (in the Euclidean distance sense) to the received one. A decision (or Voronoi) region for the signal point is thus the one enclosing the set of points in the space of noisy received signals which are closer to that signal point than to any other. For GUC, the decision regions are congruent, i.e., they can be superposed on each other by simple translations and rotations. This fact has relevant implications in the performance evaluation. In fact, it means that the average performance measure, whatever it is, coincides with the one computed in the hypothesis that one particular sequence had been transmitted (uniform error property). As we shall see in the following sections, this greatly simplifies the performance analysis and is, in itself, a good motivation to search for good and GUC. The class of GUC encompasses the codes presented in this paper, as it does not restrict the encoder to be a binary convolutional encoder. Checking a posteriori whether a code is GU or not is not easy. A better procedure is that of limiting a priori the search to GUC, so as to make use of much faster algorithms to evaluate the performance parameters [22]-[24]. In Fig. 20, the relationships between the various classes of codes are depicted using a Venn diagram. As the set of PROCEEDINGS OF THE IEEE, VOL. 82. NO. 6. JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
51 START
Set the state diagram structure and the constant K. Set all the wrong state metrics equal to K.
Set the OQ state metric equal to 0. Set evaluatedflag = 0 for the o,, state. Set evaluatedflag = 1 for the wrong states.
Select the set of states which are not evaluated (evaluatedflag = 0)
Is the
Choose the state with the minimum metric in the set (current state)
+For
every reachable stale:
new metric = metridcurrent state1 t metric increment If h e w metric = 0)then metrichext state) = K.
NO
1
metrichext state) = new metric evaluated-flaghext state] = 0
dfree
= mmetric
of the
O,,
state.
I
Fig. 21. Flow diagram of the GUA algorithm.
SRC is a subset of GUC, and no better algorithm for SRC can be devised than for GUC, we will not talk about SRC in the following section. All that is said about GUC is also applicable to SRC.
v.
ALGORITHMS FOR PERFORMANCE EVALUATION In this section, we will present the algorithms that permit one to compute the performance parameters previously described. As the computational complexity of the algorithms vary according to the class (or degree of symmetry) of the TCM code to be examined, we will treat separately the various cases of codes belonging to the classes of GC, QRC and ZWC, WRC, and GUC. Beyond a description of the algorithms, we will also present the results of extensive applications to actual codes. As test codes, we consider the best GU 2 x 8 PSK schemes
with 4, 8, 16, 32, and 64 states yielding an information rate of 2.5 b/symbol, presented in [22] and summarized in Table 6 (the parameter yooused in Table 6 has been defined in Section 111-A). All these codes are GU, i.e., codes with the highest degree of symmetry. This choice has been made in order to test all the algorithms on the same codes. For each of the five performance measures, we will present the algorithms in increasing order of complexity. The algorithms will be compared in terms of required CPU time using a VAX 6520 computer4.
A. Computation of dfree WRC-GUC; For WR and GU codes, the best algorithm, which we denote as the Geometrically Uniform code Algo4The computer programs in Fortran implementing the various algorithms can be accessed as explained in Appendix I.
BENEDE7TO et al.: PERFORMANCEEVALUATION OF TRELLIS-CODED MODULATION SCHEMES
843
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Table 6 2x8-PSK TCM Codes Considered in the Performance Analysis (Evaluation of (ifpre Nf,,, , P,( e ) , Pb ( e ) and DS) U
I%
2
1
3
2
4
h(’)
h(2)
n;,,,,
dFrep
h(0)
jo5
6
1
2.000
4
2.32
4
6
11
2.929
16
3.98
2
16
12
23
3.515
56
4.71
5
2
26
4
53
3.515
16
4.71
6
2
4
30
113
4.000
6
5.33
-
0 0
- I 4 .
0
0 0 0 1
y
i
4
0 0 2
2 z
4
A 10
0 10 0
o *
4
4
y
{
6 \
0
2..
6
1
)
2
-
a
6
6
6
3
4
5
Fig. 22. The GUA algorithm for the 4-state 4-PSK code.
rithm (GUA), is the one proposed in [8]. The flow diagram of the algorithm is reported in Fig. 21, the following example will explain the procedure. Example 12: The code of Example 11 is examined in order to determine its free distance dfreewith the GUA. The algorithm associates with each state of the code trellis a metric that represents the minimum distance of all the examined paths merging into it and a flag that declares whether it has been “evaluated” (E) or not (NE). A state is considered evaluated (E), when all the transitions from it have been considered and the sum of its metric with the distance of the transition label from the identity (all-zero) label5 has been compared to the metric of the state reached by the transition. If the new metric is smaller than the metric previously stored it replaces the old one and the new state is considered NE, otherwise the transition is neglected. As all error paths must diverge from the identity state only at the first step, the identity state is first considered NE (white circles in Fig. 22) and its metric is set to 0 while all other states are E (black circles) and their metrics are set to a large number (00).In the successive steps, the identity state is always considered E. Furthermore, as the correct path must be neglected in the first step, the transition (00) is not considered. At each iteration of the algorithm all NE states are considered and the one with the smallest metric is evaluated. The algorithm ends when all the states are E, and then the metric of the identity state is df,,. Refemng to the code of Example 11 and Fig. 22, the following steps are performed. 1) State 1 is NE as the metric of the transition from the identity state is always smaller than the metrics of the other states that are initially set to 00. ’The distance between two labels is defined as the minimum distance between all the signals belonging to the subsets identified by the labels. 844
2) The two transitions from state 1 are considered; the distances from the identity signal is 2 for both. State 1 then becomes E while the third and fourth states become NE. 3) As the two NE states have the same metric one of them is taken (2 in the example) and all the transitions from it are considered. The first transition goes back to the identity state with a metric 10 = 6 + 4< 00. It can be noticed that the identity state, although updated, is left E. The second transition to state 2 gives a metric value 6 larger than the values 4 previously stored and thus it is neglected. 4) Only the fourth state remains NE. As the two transitions from it reach states with smaller metric they can be neglected. Therefore, state 4 becomes E. 5) As all states are E, the metric value 10 stored in the 0 identity state is the dfree of the code. The algorithm, proposed for GUC can be directly applied to the WRC. In fact, the minimum Euclidean distance of a code depends only on the minimum distance between the subsets used by the code and thus the WR guarantees that the minimum Euclidean distance of a code can be computed using the all-zero sequence. QRC-ZWC: The GUA can be extended to this class of codes through the substitution in the code trellis of the transitions labels with error vectors e. The distance of a label e from the identity label in this case must be defined as the minimum distance that appears in the weight profile relative to e. The modified GUA algorithm will be called GUZWA. Example 13: For the QRC of Example 1, the following correspondence between labels and distances (derived in Example 8) is used in the trellis of Fig. 4:
o+oO0+o. l-+oOl+XrJ 2 + 010 + X I 3 -+ 01 1 + XO = min { XO, X2} 4+1oO~X3
5 -+ 101 + A2 6 + llO+X1 7 + 111 + A0 = min {Xo,
X2}.
Then, dfreecan be computed using the GUA algorithm. In Fig. 23, the steps of the algorithm are labeled according to the previous description. It is apparent that the GUA and GUZWA have reduced complexity compared to the standard Viterbi algorithm, because they do not need to 0 consider all the nodes in the trellis. For QRC and ZWC, the algorithm proposed in [16] (called in the following the Rouanne-Costello Algorithm (RCA)) and used to compute the distance spectrum can also be used to compute the minimum Euclidean distance dfree. In this case, only the first (and faster) part of the algorithm needs to be run. GC: An algorithm to compute dfree for GC was first proposed in [25] and [26]. Its complexity grows with the PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6. JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Table 7 CPU Time for the Evaluation of dfree (in seconds) (Algorithms GUZWA and RCA include the test of quasi-regularity.)
Number of States Algorithm
Class 4
8
16
32
64
GUGCA
GC
0.09
0.20
0.86
5.32
18.31
GUZWA
ZWC-QRC
0.93
1.98
4.24
8.34
16.81
RCA
ZWC-QRC
0.68
1.24
2.32
4.66
9.01
GUA
SRC-GUC-WRC
< 0.01
< 0.01
< 0.01
< 0.01
< 0.01
,...,, 2.6 2
0
0
2.6
2.6
0 0 2.6
2.6
0 2.6
2
,...' 2.6
0
1
2
5.4
3
2.6
4
i 2.6
c).;...*!/;i'A a 2.6
'%.
2.6
',,,,,'..*
0
2
.aA
2.6
2.6
2.6
2.6
2.6
2.6
5
6
7
'",,,.
)/
2.6
...*
:/
2.6
. / ' 2.6
2.6
2.6
0 0 0 0;::. Fig. 24. 8
2
3
4
5
6
Constraint length
CPU time required for the evaluation of dfree (in seconds). ZWA and RCA include the test of quasi-regularity.
9
Fig. 23. The GUZWA algorithm for the 8-state 8-PSK code.
square of the number of trellis states. For a GC it is necessary to consider all possible error events, i.e., all possible pairs of merged paths in the trellis. To achieve this objective, a new trellis with L2 superstates Cij consisting of pairs of states of the original trellis must be created. A sequence in the new trellis that begins in a superstate Cii and ends in a superstate C j j corresponds to a pair of paths that diverged from the state C T ~and merge in the state a j , thus representing an error event. We have extended the GUA algorithm, previously explained in Example 12 to the evaluation of dfreefor GC. It works on the code trellis with the superstates Cij, and offers a reduction of complexity with respect to the algorithm in [25]. The reduction is comparable to that of the GUA with respect to the VA. The algorithm will be called the GUGCA. Comparison of Different Algorithms: In Fig. 24 we report the computer time required to compute dfree as a function of the constraint length of the code, whereas the required computer times are given in Table 7. From the table, the complexity of the general algorithm growing with the square of the number of states is apparent. It can be noticed that, for low values of the number of states, the RCA and GUZWA behave worse than the GUGCA. This is due to the time required to check for the QR and ZW conditions. To save the time required to check for the ZW condition, one could limit a priori the code search to the class of ZW codes. The complexity of these algorithms grows almost
linearly with the number of states. Finally, the GUA is by far the fastest. As a final comment, we can say that limiting the search for good codes to GUC permits the use of the fastest algorithm, the GUA, whereas in the class of codes employing linear convolutional encoders and suitably partitioned signal sets the GUZWA and RCA can be applied. When practical reasons, for example rotational invariance ([27]), require the search to be extended to nonlinear codes, the GUGCA must be used.
B . Computation of Nfree The fastest algorithm to compute dfree for GUC, the GUA, cannot be extended to find Nfree,as it does not keep track of the multiplicities of the retained paths. Thus a standard Viterbi algorithm (VA) has been implemented to do this. For QRC and ZWC, the RCA algorithm was used to compute Nfree. As for GUC, the best algorithm to compute cifree for GC, the GUGCA, cannot be extended to find Nfree.Thus the general algorithm (GA) proposed in [25] was extended. Its description will be given when dealing with the distance spectrum evaluation. For the parameter Nfree,WRC also require the use of the GA, as the symmetries of the code cannot be exploited. In Fig. 25, the computer time required to compute Nfree as a function of the constraint length of the code is reported. The exact computer time figures are shown in Table 8. The
BENEDETTO er al.: PERFORMANCEEVALUATION OF TRELLIS-CODED MODULATION SCHEMES
845
-
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Table 8 CPU Time for the Evaluation of Nfr,, (in seconds) (Algorithm RCA includes the test of quasi-regularity.) Number of States Algorithm
Class 4
8
16
32
64
GA
GC-WRC
0.22
2.46
15.18
68.91
246.36
RCA
ZWC-QRC
0.70
1.32
3.12
4.83
9.14
VA
SRC-GUC
0.01
0.03
0.07
0.13
0.22
INITIALIZATION Get treks structue and the maximum distance Dmax Compute and store Mi( Z,, ) . Consder only superstates I,, that are reached by transitions from a commm state Set k=l
2
3
4 5 Constraint length
6
Fig. 25. CPU time required for the evaluation of A Y , , , (in seconds). Algorithm RCA includes the test of quasi-regularity.
same considerations as for the computation of cifree seem appropriate. The greater complexity of GA with respect to GUGCA is noticeable. C . Computation of the Distance Spectrum The distance spectrum is a necessary tool for computing the error event and bit error probabilities for codes not admitting a closed-form expression of these performance parameters. This is the case for GC and WRC. GUC: When one is interested in a limited number of pairs (distance, multiplicity), a direct approach (instead of passing through the transfer function evaluation) is also preferable for codes possessing the uniform error property. Thus for GUC we have implemented the standard VA computing the DS using the all-zero sequence as the reference sequence. Note that for GUC any sequence can be used as the reference sequence. ZWC-QRC: For ZWC and QRC, we have used the RCA algorithm. Its detailed description can be found in [16] and a schematic presentation is given in Appendix 11. The algorithm consists of two steps. The first step computes the worst case distance spectrum, which is, roughly speaking, a distance spectrum based on a uniform error property assumption. As a by-product, it allows the evaluation of cifree. Its computational complexity is that of the VA. Our algorithm uses for this first step a bidirectional stack search as in [ 161. The second step improves on the first one, by extending the worst case distance spectrum to the actual distance spectrum. The computational complexity of this second step depends on the sum of the average multiplicities of 846
COMPARISONS For each 211 count the nunber of pathsN,, With distance d at step k
(d,,k)
CHECK FOR MERGING PATHS If M,( 1,, ) is not empty, there are paths merging in 0, Add their distance to the DS Ifnot already contained) For each merging path with distance dlcompute N,(d,) according l o (22) Clear &( )for J=o., .L-i
6 r,,
all distances the accumulated > Dmax ?
NO
1 END OF ALGORITHM For e a c h d i in the DS evaluate the multiplicity L accordina to (241.
N
Fig. 26. Flow diagram of the General Algorithm (GA).
the required distances CiNi. This quantity varies from one code to the other, quite independently of the number of states of the code. As a consequence, the required computer time is quite unpredictable and may not be monotonically increasing with the code memory, as we shall later see. GC-WRC: For GC and WRC we have implemented the GA, which is an extension of the original algorithm presented in [25]. Since this algorithm has never been published in the open literature, we will explain it here in detail. PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6, JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
The algorithm works on a trellis consisting of N 2 superstates Cij, as already defined, and consists of the following steps (see Fig. 26 for a flow diagram): 1) Initialization The first step of the algorithm considers all pairs of starting error events, i.e. pairs of paths diverging from a single state, and initializes the set of arrays M 1 (Cij) by storing in its Ith entry the distance between signals associated with the transitions from state 1 to states i and j (see Fig. 27) M l ( C i j ) = ( d 2 ( S o i ,S o j ) , d 2 ( S l i , S l j ) ,
:
v\
*ij
Fig. 27. First step: all possible diverging paths are considered.
.. . >
d2(SL-li, SL-lj)).
If for some i and j there are no transitions from a common state, the corresponding array element is set to zero. The value of parameter D,,,, which acts as a threshold to stop the algorithm, and which depends on the largest distance to be found, is also defined. 2) Main Step The step index is incremented to k = k 1. Then, for each superstate, the precursor superstates are determined; if n = 2" is the number of transitions from a given state, there are n2 = precursor superstates (see Fig. 28). Each precursor superstate has associated with it the array Mk.The arrays are then updated according to the following:
+
Mk+l(Cij)
+
Mk(Cpt(0)p3(0))
+ d 2 ( % ( 0 ) i , SP,(O)j)
-
~pj(3) J
Fig. 28. Main step for 2" =
11
= 4.
The multiplicity Nl, representing the number of error events with distance d l , is evaluated by adding the numbers Nk ( d l ) (representing the multiplicities of error events with distance dl at step k) with respect to k. The N k ( d l ) can be computed as
xi;
Mk+l(Cij)
+
~k&(n-l)p,(n-l))
+ d 2 ( s p , ( n - l ) i , sp, ( n - 1 ) j ) where the symbol "t"means that the distance obtained in the right-hand side of (18) is added to the matrix M k ( & j ) , and p;(O) . p i ( n - 1) are the n precursors states of IT^ (see Fig. 28). 3 ) Comparisons All entries of M k + l ( C i l ) larger than the preassigned threshold D,, are eliminated. For each superstate Cij and for each distance dl the path counter N i j ( d l , k) is updated. In particular, if the same distance appears more than once in the array associated with a given superstate, only one value is kept and the multiplicity of that distance is updated accordingly. 4) Check for Merging Paths The presence of a nonempty entry in M k ( C j j ) for some j means that a pair of states have merged, giving rise to an error event. Thus the entries of M k ( C j j ) for j = O , . . . , L - 1 are included in the distance spectrum. a
where ( d l , k) is the number of paths with distance dl merging in state i at step k. Once the merging paths at step k have been added to the distance spectrum, M k ( C j j ) can be set to zero for j = 0, . . . ,L - 1, as only the paths that have diverged at the first step are considered. 5 ) End of Algorithm If the code is not catastrophic, the algorithm will stop when no more pairs of paths with distance lower than D,,, can be found. When the final goal is the evaluation of the bit error probability, according to (9), for each distance dl the average number of bit errors Bl occurring on a path with that distance must be evaluated by the algorithm. This is done through a procedure analogous to the one used to evaluate Nl. When only the evaluation of dfreeand Nfree are required, the algorithm is stopped when all the accumulated distances relative to unclosed paths are greater than the smallest distance already obtained in the distance spectrum. Comparison of Dizerent Algorithms: In Fig. 29 we report the computer time required to compute the DS as a function
BENEDEITO et al.: PERFORMANCEEVALUATION OF TRELLIS-CODEDMODULATION SCHEMES
a47
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Table 9 CPU Time for the Evaluation of the First 5 Distances of the Distance Spectrum (in seconds) (Algorithm RCA includes the test of quasi-regularity.) ~~
Number of States Algorithm
Class 4
8
16
32
64
GA
GC-WRC
1.02
7.04
50.92
201.63
1074.63
RCA
ZWC-QRC
50.36
2.47
10.8
10.10
63.46
VA
SRC-GUC
0.03
0.05
0.2
0.41
0.93
300
function methods [15]. They can be computed directly without the knowledge of the DS by defining the code state diagram. The error event probability is upper bounded by
250
g 200 I
150 2
8
100
50
I %J/
0
2
3
.
1z.
-::=.
e .
t’
. .-.
4 5 Constraint length
I
where T ( D ,I ) is the transfer function of the code, or by a tighter upper bound, based on the inequality e r f c m 5 erfc f i e - y [ 151
6
Fig. 29. CPU time required for the evaluationof the first 5 distances of the distance spectrum (in seconds). Algorithm RCA includes the test of quasi-regularity.
Fig. 30. Labeled state diagram used to evaluate the transferfunction T ( D ,I) of the TCM scheme of Example 11.
of the constraint length of the code. The exact computer time figures are shown in Table 9. The number of spectral fines, i.e., the number of pairs ( d i , N i ) has been taken equal to five. This limited number has been imposed by the computer time required by the RCA. As previously observed, and made evident from Fig. 29, the curve representing the RCA is not monotonically increasing with the number of states. For the codes at hand, this is due to the fact that the code with 4 states presents a much higher number of multiplicities than the codes with 8 and 16 states, and, consequently, it requires more computer time. Also in this case, the computation of a large number of lines in the DS for GUC is highly efficient even for codes with a large number of states.
D.Computation of the Error Event Probability GUC: Closed-form upper bounds to the EEP for codes exhibiting the uniform error property are based on transfer 848
The transfer function T ( D ,I ) of a TCM scheme is found according to the following steps: i) given the code trellis, the code directed graph is derived [20], by splitting the state (TO into two separate states (the start state and the end state), and then joining the various states with directed branches according to the trellis structure (the self-transition uo -+ 00 corresponding to the correct se uence is omitted). 9 ii) Every branch j is labeled by Ir3Dd3, where rj is the number of input “ones” associated with the branch and d: is the ED between the signal associated with the branch and the signal associated with the g o -+ 00 trellis transition. iii) The transfer function T ( D ,I) between the start and end states is evaluated by techniques of graph reduction or methods based on the solution of a linear system [20]. Example 14: To give a practical example, we evaluate the transfer function of the code of Example 11. On the basis of the trellis diagram of Fig. 18 and the constellation of Fig. 19, the directed graph of Fig. 30 is obtained, whose transfer function is
0
We have implemented the transfer function method [9] in the algorithm called TFA. QRC-ZWC: For QRC and ZWC, a modified transfer function approach, yielding the same complexity as the TFA for GUC, can be applied. First proposed in [17], the ZWA (as we call it) is based on the transfer function method applied to the error directed graph, a modified directed graph with the same structure and number of states as the directed graph in the previous section. PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6, JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Table 10 CPU Time for the Evaluation of the Error Event Probability (in seconds) (For the GC class 5 series terms are used. Algorithm ZWA includes the test of quasi-regularity.)
Number of States Algorithm
Class
4
8
16
32
64
GA
GC-WRC
0.97
7.33
52.01
217.81
1100.71
ZWA
zwc-QRC
2.05
4.35
8.58
18.65
42.33
TFA
SRC-GUC
0.07
0.14
0.34
1.25
7.74
The transfer function T ( D ,I ) can now be obtained [20] by solving the system of linear equations:
Fig. 31. Labeled error directed graph used to evaluate the modified transfer function T ( D ,I) of the TCM scheme of Example 1.
The directed branches in the modified graph are labeled using the weight profiles F ( . ) defined in (15) as
F ( S f ) ,e, 0) I’
2m
where T is the number of ones in e and e is the label of the signal relative to the transition. The transfer function T ( D ,I ) of the modified graph can be computed as was shown for the standard state diagram, and substituted into (21) and (24) to evaluate the EEP and BEP for ZWC (and QRC). Example 15: Consider the code of Example 1, which has been shown to be a ZWC. On the basis of the trellis diagram of Fig. 4,the constellation of Fig. 5, and the weight profiles obtained in Example 8, the error graph of Fig. 31 is obtained, with labels
In our computer programs, the solution of systems like this and the ones resulting from the application of the standard transfer function approach to GUC is automated.0 As a final comment, the ZWA has the same complexity as the TFA. It requires, however, some nontrivial preliminary analytical computations to find the appropriate labels for the modified graph. GC-WRC The EEP for these classes of codes could be evaluated using the generalized transfer function [ 151 of the code, an extension of the previously described standard approach for codes possessing the uniform error property. This approach, however, involves the computation of the transfer function of a directed graph with L2 states, and becomes impractical for codes with very low complexity. For this reason, we have not implemented it, and instead have used the GA to obtain the distance spectrum and the truncated series approximation (9) based on it. Comparison of Diflerent Algorithms: In Fig. 32 we report the computer time required to compute the EEP as a function of the constraint length of the code. The exact figures are shown in Table 10. In Fig. 33 we also report the values of the EEP evaluated with the TFA according to (21) versus SNR for several values of the code constraint length. In order to check the number of spectral lines required to obtain values of (8) close enough to those obtained in closed-form from (21), we have plotted the EEP using different truncations of (8) for the 16-state code in Fig. 34. It is apparent that several spectral lines are needed to reduce the truncation error of the bound (8) with respect to the transfer function bound (2 1) to acceptable values, especially for relatively high values of the error probabilities. As a consequence, the estimate of the error probability according to (5) or (6) may not be satisfactory for values of
BENEDETTO er al.: PERFORMANCE EVALUATIONOF TRELLIS-CODED MODULATION SCHEMES
849
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Table 11 Two 32-State 8-PSK TCM Codes Considered in the Analysis of the Relative Contributions to the P, ( e ) of the Various Terms of the Distance Spectrum
I
0
1 2
'
I
I
1
5
2
34
16
45
5.757
2
5
2
14
26
53
5.172 0.25
--.-L---.-- II
v__L 4--- u -__. - J---
1
Y 1
I
3
4
5
4
4.59
4.13
100
6
Constraint length
80
Fig. 32. CPU time required for the evaluation of the error event probability (in seconds). In the GA, 5 series terms are used. Algorithm ZWA includes the test of quasi-regularity,
0
60 U?
U
U
1.E-02
40 20
1.E-06
0
3
4
5
6
8
7
9 1 0 1 1 1 2
I
2 l.E-10 nm
r
l
T
/
l
I
,
I
1.26E-2 1.20E-4 2.42E-7 3.26E-11 3.63E-17 6ME-6 4.43E-9 7.34E-I4 2.65E-21 1.47E-3
l.E-14
l.E-18
pe (e)
Fig. 35. Relative contribution of the various distances in the upper bound for code #1. 11
12
13
14
15
16
SNR (dB) Fig. 33. Error event probability evaluated with the TFA versus SNR for v = 2, 3, 4, 5 , 6.
1.E-03
-
1.504
1
nw
1.E-05
1.E-06
11.0
11.2
11.4 11.6 SNR (dB)
11.8
12.0
Fig. 34. Error event probability versus SNR for the 16-state code evaluated with the GA according to (8) using 1, 2, 5, 7, 10, 15 distances. A curve label GA(n) means that U terms of (8) have been used in the approximation.
error event probability (P,(e)) in the range - 10-5),6 as the codes performance is far from the asymptotic coding gain defined in (7). To clarify this, we applied our algorithms to the 32-state 8-PSK TCM codes identified by their main parameters in Table 1 1. The terms of the sum in the bound (8) to the error 6This range of values is particularly important when the TCM scheme is used as the inner code in a concatenated coding scheme [28]; in this case, the inner error probability can be as high as 850
event probability, apart from the factor Ni, are decreasing with i . For o2 + 0, the dominant term becomes the first one with distance dfree.The other terms, depending on their Ni, are responsible of the code behavior at medium to high values of P,(e). In Table 12 we report the distance spectrum of the two codes obtained with the GA algorithm. The distance spectra have been used to show the actual influence of the various pairs d i , Ni on the error event probability, by defining the percent value of the single terms
in (8), as
The functions F(.: .) are plotted as a function of &/NO and P,(e)in Figs. 35 and 36 for the two codes at hand. The relative contribution of each term different from dfree reaches a maximum and then goes to zero, while the term dfreetends to 100% when Eb/No -+ 00. Code # 1 has a regular behavior: the term dfreegives the most significant contribution even at low Eb/N0 and the other terms give PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6 , JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
100
80 0
560
w"
-
U
1L
40 20 0
4
3 ~
1
5
7
6
1
,
8
1
9 1 0 1 1 1 2
1
1
,
3
2
1
4 5 Constraint length
6
,
1S E - 2
1.20E-4 2.42E-7 326E-11 3.63E-I7 1.47E3 6.83E-6 4.43E-9 7.34E-14 2.65E-21
pe (e)
Fig. 37. CPU time required for the evaluation of the bit error probability (in seconds). In the GA, 5 series terms are used. Algorithm ZWA includes the test of quasi-regularity.
Fig. 36. Relative contribution of the various distances in the upper bound for code #2.
1. E 4 2 1.E-04
Table 12 Distance Spectrum for Considered 32-State 8-PSK Schemes Code # 1
i 1 2 3 4 5 6 7 8
9 10 11 12 13 14
1.E-08
Code # 2
v
ci"
4
NZ
dT
NZ
5.757 6.000 6.343 6.929 7.171 7.514 7.757 8.000 8.101 8.343 8.586 8.686 8.929 9.172
4.000 1.Ooo 4.000 4.000 3.000 20.000 16.750 1.000 36.000 25.375 12.000 52.000 67.188 29.250
5.172 5.757 6.343 6.586 6.929 7.171 7.414 7.515 7.757 8.000 8.101 8.343 8.586 8.686
0.250 2.250 5.375 0.500 7.375 5.000 1,000 13.063 13.375 1.500 36.813 27.375 7.500 62.219
l.E-12
contributions that decrease with the relative distance di. This is due to the quite regular distance spectrum (Table 12). On the other hand, code # 2 presents an inversion of the various contributions for &/No < 8.5. This behavior, which is due to the very small value of Nfreefor code # 2, clearly points to the necessity, in some cases, of better knowledge than that allowed by dfree and Nfree.
E. Computation of the Bit Error Probability Considerations very similar to the case of error event probability can be expressed for the evaluation of the BEP. For GUC obtained through binary convolutional codes, as has been always assumed in this paper, a closed-form upper bound can be computed in the form'
'For the validity of the bounds for GUC defined over nonbinary groups, a sufficient condition consists in requiring a homomorphism between the input and coded sequences, which is always the case for GUC schemes based on linear binary convolutional codes.
1 .E-1 6
SNR (dB)
Fig. 38. Bit error probability evaluated with the TFA versus SNR for U = 2, 3, 4, 5 , 6.
or in a tighter form as 1
Pb(e)5 -erfc 2m
(%)
We have thus implemented the standard transfer function method using the algorithm TFA. For QRC and ZWC, we have used the algorithm ZWA previously described, and finally, for GC and WRC, the algorithm GA and the truncated series approximation (9) has been implemented. In Fig. 37 we report the computer time required to compute the BEP as a function of the constraint length of the code. The exact figures are shown in Table 13. The values of BEP versus SNR evaluated with the TFA according to (24) are shown in Fig. 38, for several values of the code constraint length. In Fig. 39 we have plotted the BEP for the 16-state code using different truncations of (9). VI. CONCLUSION A tutorial description of algorithms to evaluate the main parameters determining their performance of TCM schemes has been presented.
BENEDETTO e l al.: PERFORMANCE EVALUATION OF TRELLIS-CODED MODULATION SCHEMES
85 1
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Table 13 CPU Time for the Evaluation of the Bit Error Probability (in seconds) (For the GC class 5 series terms are used. Algorithm ZWA includes the test of quasi-regularity.) Number of States Algorithm
Class
16
32
64
GC-WRC
1.21
9.16
61.61
236.28
1263.79
ZWA
ZWC-QRC
1.99
4.40
8.76
18.46
40.72
TFA
SRC-GUC
0.08
0.15
0.36
1.12
7.29
Definition: Minimum distance associated with c: Let c and c' be two labels and d [ s ( c ) (d)] , be the Euclidean distance between the two signals identified by these labels. The minimum distance associated with c, denoted w(c), is the minimum distance in the set { d [ s ( d ) ,s ( d @ c ) ] }where d belongs to the set of labels that identify the constellation signals, i.e.
1. E 4 4
a"
8
GA
1.E-03
-
4
1.E-05
l.E-06 1.E-07
w(c) = min(d[s(c'), s(c' @ c ) ] ) .
1.E-08
1.E-09
C'
11
12 13 SNR (dB)
14
Fig. 39. Bit error probability v e r w SNR for the 16-state code evaluated with the GA according :o (12) using 1, 2, 5, 7, 15 distances. A curve label GA(n) means that n terms of (13) have been used in the app7nximation.
As the complexity of the algorithms varies according to the degree of symmetry presented by the code, we have divided TCM schemes in classes of increasing symmetry, and described the algorithms which are most suitable for the various classes. The various algorithms have been applied to a set of test codes, and compared in terms of computational complexity.
APPENDIX I THESUBROUTINES The algorithms used for the performance evaluation of TCM schemes described in this paper are available to the interested reader through an anonymous FTP from poltcx.polito.it (IP address 130.192.2.45),directory [.TCMPBRF]. Table 14 summarizes the correspondence between the algorithms as presented in the body of the paper and the name of the Fortran subroutines. All the directions to make an executable program are given in the same area (READ.ME). APPENDIXI1 RCA FOR COMPUTING THE DISTANCE SPECTRUM The RCA algorithm presented in [16] can be used to evaluate the distance spectrum of codes satisfying the QR condition. In order to describe the algorithm, we need some additional definitions. 852
The set of labels c for which there exists at least one label d such that d [ s ( d ) ,s ( d @ c)] is greater than w(c), is denoted by E. Definition: Worst case distance spectrum of a code C The worst case distance spectrum of a trellis code C is derived from the distance spectrum of the code by replacing the distance d [ s ( c ) ,s(d)] by w(c @ d) for all pairs of labels ( c , ~ ' ) Given . a sequence as the correct sequence, two incorrect sequences will have the same worst case distance if and only if: i) they are at the same distance from the correct sequence (distance calculated using the w ( G ) ) , ii) they have the same number of occurrences of ci for each ci E E.
The distance spectrum of a QR code can be computed from its worst case distance spectrum. The RCA is formed by two parts. The first part computes the worst case distance spectrum and the second part extends the worst case distance spectrum to the actual distance spectrum. The worst case distance spectrum can be computed by assuming that the correct transmitted sequence corresponds to the all-zero sequence. It can be evaluated by any algorithm assuming the all-zero sequence as transmitted sequence, such as, for example, the Viterbi algorithm. We will follow [16], where a bidirectional stack algorithm is used. A. Computation of the Worst Case Distance Spectrum
The bidirectional stack algorithm keeps track of the number of paths with the same worst case distance. All the paths reaching a given state are retained if their distance is smaller than a fixed distance, the maximum distance search in the distance spectrum. There are two kinds of paths in a bidirectional search: the forward paths leaving the all-zero state on a nonzero branch in the forward direction, and the backward paths that leave the all-zero state on a nonzero branch in the backward direction. PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6, JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Table 14 Correspondence Between Algorithms Described in the Paper and Denomination of Fortran Subroutines Performance Parameter
Distance spectrum
Error event probability
Bit error probability
Class of Symmetry
Subroutine
GUC, WRC, SRC
DFUEP
ZWC, QRC
DFZEH or DFCOS
GC
DFTOT
GUC-SRC
DNFUEP
ZW-QRC
use the algorithm for GC or the algorithm for the distance spectrum DPZEH limited to the first line
GC-WRC
DNFTOT
GUC, SRC
DPUEP
ZWC. QRC
DPZEH
GC, WRC
DPTOT
GUC
UBUEP (type EVE or TEVE)
ZWC, QRC
UBZEH (type EVE or TEVE)
GC, WRC
UBTOT (type E V E )
GUC-SRC
UBUEP (type BIT or TBIT)
ZWC, QRC
UBZEH (type BIT or TBIT)
GC, WRC
UBTOT (type TBIT)
A path is determined by the following information: - its direction; - its terminal state s, i.e., the last state reached by the path; - its length I , i.e., the number of branches from the all-zero state for a forward path and to the all-zero state for a backward path; - its distance d, i.e., the sum of the worst case distances W(G) along the path; - the array 2 of occurrences of ci E E , i.e., the number of branches on the path for which the label was c;. The multiplicity A s , d , l , ~is the number of identical paths ending in the state s, with a distance d, a length I, and an array 2.Paths are ordered by decreasing distances and lengths. The top path in the ordered stack is extended first, as it has the largest probability of giving the smallest merging distance. It is extended by computing its 2m successors. The terminal state cannot be the all-zero state because the path must reach the zero state through the terminal state of a path moving in the opposite direction. When this happens (a “merging”), two cases can occur: i) when no previous merging paths had a distance equal to that of the new merger, a new spectral line is created ii) BENEDETTO er
al.:
when the distance of the new merger is equal to the distance of an existing spectral line, the multiplicity of the line is incremented by one. A spectral line is determined by - its distance, which is the sum of the merging forward and backward path distances; - its multiplicity, which is the product of the multiplicity of the merging forward and backward paths; - an array 2, which is the sum of the merging forward and backward path arrays.
B . Extension of the Worst Case Distance Spectrum Each spectral line in the worst case distance spectrum has to be extended. This consists of replacing w ( q ) by all the possible distances d [ s ( c ’ ) ,s(c’ @ c , ) ] for all c, E E and stored in the array 2. As an example, let ( d , L , W )be a spectral line of distance d; c1 and cz be two labels E E ; and D1 = {dt),i = 1 , . . . . k 1 } and 0 2 = { d t ) . i = l....,kz} the sets of distances that must replace, respectively, w(c1) and w(c2) and { p t ’ . i = l , . . . , k l } , { p ;( ) , i = l,.--,kn}the fraction of times in which w ( q ) must be replaced by d p ) . If Z(c1) = n1 (which means that c1 occurs nl times in
PERFORMANCE EVALUATION OF TRELLIS-CODED MODULATION SCHEMES
853
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
the spectral line) and Z ( c 2 ) = 722, the spectral line will be extended in (k1)”l * (k2)n2 distances for the distance spectrum. The distance
with the multiplicity M = A s , d , l , z ,will be replaced by all the possible
where ig is any element of {l,...,k~} and jf is any element of { 1, . . . ,k p } . The multiplicity of d’ will be
When the RCA is employed only for the evaluation of the free distance dfree, the extension from the worst case spectrum to the distance spectrum can be avoided. The algorithm can be stopped when all the accumulated distances relative to unclosed paths are greater than or equal to the smallest distance already obtained in the distance spectrum. ACKNOWLEDGMENT
The suggestions of two anonymous reviewers which have contributed to improve the paper presentation are gratefully acknowledged. The authors also wish to thank L. Brino for providing the line drawings.
REFERENCES D. Slepian, “A class of binary signalling alphabets,” Bell Sysr. Tech. J . , vol. 35, pp. 203-234, Apr. 1956. -, “Group odes for the Gaussian channel,” Bell Sysr. Tech. J., vol. 47, pp. 575-602, Apr. 1968. G. Ungerboeck, “Channel coding with multilevel/phase signals,” IEEE Trans. Informar. Theory, vol. IT-25, no. 2, pp. 55-67, Jan. 1982. E. Biglieri, D. Divsalar, P. J. McLane, and M. K. Simon,
Introduction to Trellis-Coded Modulation with Applications. New York: Macmillan, 1991. G. Ungerboeck, “Trellis-coded modulation with redundant signal sets-Part I: Introduction,” IEEE Commun. Mag., vol. 25, no. 2, pp. 5-11, Feb. 1987. -, “Trellis-coded modulation with redundant signal 11: State of the art,” IEEE Commun. Mag., vol. sets-Part 25, no. 2, pp. 12-21, Feb. 1987. G. D. Fomey Jr., “Convolutional codes I: Algebraic structure,” IEEE Trans. Informar. Theory, vol. IT-16, no. 5, pp. 720-738, Sept. 1970. J.-E. Porath, “On trellis-coded modulation for Gaussian and band-limited channels,” Tech. Rep. 22 I , Chalmers University of Technology, Goteborg, Sweden, 1991. S . Benedetto, M. Ajmone Marsan, G. Albertengo, and E. Giachin, “Combined coding and modulation: Theory and application,” IEEE Trans. Informat. Theory, vol. 34, no. 2, pp. 223-236, Mar. 1988. S . S . Pietrobon, R. H. Deng, A. Lafanechkre, G. Ungerboeck, and D.J. Costello, “Trellis-coded multidimensional phase modulation,” IEEE Trans. Informar. Theory, vol. 36, no. 1, pp. 63-89, Jan. 1990.
S . G. Wilson, H. A. Sleeper, P. J. Schottler, and M. T. Lyons, “Rate 3/4 convolutional coding of 16 PSK: Code design and performance study,” IEEE Trans. Commun., vol. COM-32, no. 12, pp. 1308-1315, Dw. 1984. S . G. Wilson, “Rate 5/6 trellis-coded 8-PSK,” IEEE Trans. Commun., vol. COM-34, no. 10, pp. 1045-1049, Oct. 1986. CCITT Study group XVII, “Recommendation V.32 for a family of 2-wire, duplex modems operating on the general switched telephone network and leased telephone-type circuits,” Doc. AP VIII-43-E, May 1984. C. Schlegel, “Evaluating distance spectra and performance bounds of trellis codes on channels with intersymbol interference,” IEEE Trans. Informat. Theory, vol. 37, no. 3, pp. 627-634, May 1991. A. J. Viterbi and J. K. Omura, Principles of Digital Communication and Coding. New-York McGraw-Hill, 1979. M. Rouanne and D. J. Costello, “An algorithm for computing the distance spectrum of trellis codes,” IEEE J. Sel. Areas Commun., vol. 7, no. 6, pp. 929-940, Aug. 1989. E. Zehavi and J. K. Wolf, “On the performance evaluation of trellis codes,” IEEE Trans. Informat. Theory, vol. IT-33, no. 2, pp. 196-202, Mar. 1987. L. Mallard, “On geometrically uniform multidimensional TCM codes,” Master’s thesis, Ecole Nationale Sup6rieure de TBlecomunications, Paris, France, 1992. A. R. Calderbank and N. J. Sloane, “New trellis codes based on lattices and cosets,” IEEE Trans. Informat. Theory, vol. IT-33, no. 2, pp. 177-195, Mar. 1987. S. Benedetto, E. Biglieri, and V. Castellani. Digital Transmission Theory. Englewood Cliffs, NJ: Prentice-Hall, 1987. G. D. Fomey, Jr., “Geometrically uniform codes,” IEEE Trans. informat. Theory, vol. 37, no. 5 , pp. 1241-1260, Sept. 1991. S . Benedetto, R. Garello, M. Mondin, and G. Montorsi, “Geometrically uniform partition of L x MPSK constellations and related binary trellis codes,” IEEE Trans. Informat. Theory, vol. 39, no. 6, pp. 1773-1798, Nov. 1993. S . Benedetto, L. Mallard, M. Mondin, and G. Montorsi, “Geometrically uniform multidimensional PSK trellis codes,” Electron. Lett., vol. 28, no. 14, pp. 1286-1288, July 1992. S . Benedetto, R. Garello, M. Mondin, and G. Montorsi, “Geometrically uniform TCM codes over groups based on L x MPSK constellations,” IEEE Trans. Informat. Theory, vol. 40, no. 1, pp. 137-152, Jan. 1994. R. C. P. Saxena, “Optimum encoding in finite state modulation,” Tech. Rep. 83-2, Rensselaer Polytechnic Institute, Troy, NY, 1983. M. G. Mulligan and S . G. Wilson, “An improved algorithm for evaluating trellis phase codes,” IEEE Trans. Informat. Theory, vol. IT-31, no. 6, pp. 846-851, Nov. 1985. S. S. Pietrobon, G. Ungerboeck, and D. J. Costello, “Rotationally invariant nonlinear trellis codes for two-dimensional modulation,” submitted tolEEE Trans. Informat. Theory, Sept. 1991. R. H. Deng and D. J. Costello, “High rate concatenated coding systems using multi-dimensional bandwidth efficient trellis inner codes,” IEEE Trans. Commun., vol. 37, no. 5 , pp. 420-427, May 1989. G. J. Pottie and D. P. Taylor, “Multilevel codes based on partitioning.” IEEE Trans. Informar. Theory, vol. 35, no. 1, pp. 87-98, Jan. 1989. L. F. Wei, “Trellis coded-modulation with multidimensional constellations.” IEEE Trans. Informat. Theory, vol. IT-33, no. 4, pp. 483-501, July 1987.
Sergio Benedetto (Senior Member, IEEE) received the “Laurea in Ingegneria Elettronica” (summa cum laude) degree from Politecnico di Torino, Turin, Italy, in 1969. From 1970 to 1979 he was with the Istituto di Elettronica e Telecomunicazioni, first as a Research Engineer, then as an Associate Professor. In 1980, he was promoted to Professor in Radio Communications at the Universiti di Bari. In 1981 he went back to the Politecnico di Torino as a Professor in Data Transmission Theory at the Electronics Departmeat. He spent nine months during 1980-1981 at the PROCEEDINGS OF THE IEEE, VOL. 82, NO. 6, JUNE 1994
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.
Systems Science Department, University of California, Los Angeles, as a Visiting Professor. He is also an Associate Professor at the Ecole Nationale Superieur de Telecommunications, Paris, France. He has coauthored two books; one in signal theory and probability and random variables (in Italian), and another Digital Telecommunicarion Theory (Englewood Cliffs, NJ: Prentice-Hall, 1987), as well as a hundred papers in leading engineering conference proceedings and joumals.. He has been active in the field of digital transmission systems since 1970; his curmet interests are in the field of performance evaluation and simulation of digital communication systems, trellis coding, and VLSI algorithms for telecommunications, and coherent optical communications Mr. Benedetto is Editor for signal design, modulation, and detection for the IEEE TRANSAC~IONS ON COMMUNICATIONS.
Her current professional interests are in the area of trellis-coded modulations, simulation of communication systems, and analysis and design of algorithms for digital telecommunication applications, suited for VLSI implementation. Dr. Mondin is a member of the IEEE Communications and Information Theory Societies.
Guido Montorsi was born in Turin, Italy, on January I , 1965. He received the “Laurea in lngegneria Elettronica” degree in 1990 from the Politecnico di Torino, Turin, with a master thesis conceming the study and design of coding schemes for HDTV, developed at the RA1 Research Center, Turin. Since 1990 he has been attending the Ph.D. program at the Dipartimento di Elettronica at the Politecnico di Torino. He spent 1992 as a Visiting Scholar in the Departmentof Electrical Engineering at the Renselaer Polytechnic Institute, Troy, NY. His current interests are in the area of trellis-coded modulations and study and design of decoding algorithms, suboptimal with respect to the Viterbi algorithm and finalized to a VLSI implementation.
Marina Mondin (Member, IEEE) was born in Torino, Italy, on March 17, 1961. She received the “Laurea in Ingegneria Elettronica” (summa cum laude) degree in 1986, and the “Dottorato di Ricerca in Ingegneria Elettronica” degree in 1990, both from the Politecnico di Torino, Turin, Italy. She spent the year 1987-1988 as a Visiting Scholar in the Departmentof Electrical Engineering at the University of Califomia, Los Angeles, and since 1990, she has been with the Dipartimento di Elettroni ca, Politecnico di Torino, as a Research Engineer.
BENEDETTO et
a1 :
PERFORMANCE EVALUATION OF TRELLIS-CODED MODULATION SCHEMES
855
-
Authorized licensed use limited to: Politecnico di Torino. Downloaded on March 12,2010 at 12:43:33 EST from IEEE Xplore. Restrictions apply.