Trellis Codes
Lecture 12
Vladimir Stojanović
6.973 Communication System Design – Spring 2006
Massachusetts Institute of Technology
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Trellis codes� Invented by Gottfried Ungerboeck of IBM in 1982 � [1] G. Ungerboeck "Channel coding with
multilevel/phase signals," IEEE Transactions on Information Theory, vol. 28, no. 1, pp. 55-67, 1982.
� [2] G. Ungerboeck "Trellis-coded modulation with redundant signal sets Part II: State of the art," IEEE Communications Magazine, vol. 25, no. 2, pp. 12-21,1987.
� [3] G. Ungerboeck "Trellis-coded modulation with redundant signal sets Part I: Introduction," IEEE Communications Magazine, vol. 25, no. 2, pp. 5-11,1987.
6.973 Communication System Design 2
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
4-state Ungeroboeck Trellis code
� 1 bit controls the subset (input to conv. encoder) � 2 bits choose a point in a subset
� Two minimum distance scenarios � Distance between two points in a subset (2 times greater than uncoded 8SQ QAM) � When two sequences differ in more than one symbol period
� Symbol points either chosen from even or odd subsets � Within the odds or evens distance the same as 8SQ QAM
� Diverging at one state and merging at another sate forces the squared distance to be doubled d8SQ
2+ d8SQ 2=2 d8SQ
2
� So, this code 3dB better than uncoded 8SQ QAM transmission
6.973 Communication System Design 3
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Trellis codes – Motivation
� In multi-level modulations � Trellis codes allow code design directly for
maximization of Euclidean distance � Hamming distance maximizes Euclidean
distance only in binary modulation
4
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
6.973 Communication System Design
General coset (subset) encoder
� xm – N dimensional vector sequence of points � Each N-dimensional symbol chosen from N-dim constellation � Sequences of xm are the codewords x(D)=summ(xmDm)
� Signal constellation has 2b+rg signal points in some coset of N-dimensional real lattice Λ
� Signal constellation contains 2k+rg cosets, each with 2b-k points � rg_bar=rg/N – normalized redundancy � kg_bar=k/N – informativity of the coset code
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
6.973 Communication System Design 5
Coset partitioning
� Coset partitioning Λ| Λ’ � Partition of the lattice Λ into | Λ| Λ’| (called the
“order” of the partition) cosets of a sublattice Λ’ such that each point in the original lattice Λ is contained in one, and only one, coset of the sublattice Λ’
� If the encoder G is � Convolutional encoder
� The set of all possible transmitted sequences {x(D)} is a Trellis Code
� Block encoder � The set of N-dimensional vectors is a Lattice Code
� Both trellis codes and lattice codes are coset codes
6.973 Communication System Design 6
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Gain of coset codes
� The fundamental gain always with respect to the uncodedsystem (x_tilda)
� Latice redundancy
� Coding gain between 3 and 6dB
� Shaping gain ~1.5dB (fixed by constellation geometry)
6.973 Communication System Design 7
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Coset partitioning example (D2 lattice)
� Ungerboeck rate ½ 3dB trellis code � 8AMPM (or 8CR) constellation is a subset of Λ=D2 lattice that contains |Λ|=8
points � Average energy per symbol is E=10 (E_bar=5) � Sublattice Λ’ has a coset Λ0 with two points |Λ0|=2 so that |Λ| Λ’|=4 cosets of
Λ’ in Λ � Λ0={0.4} Λ1={1,5} Λ2={2,6} Λ3={3,7} � These cosets selected by two bit, rate ½ convolutional encoder output
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
6.973 Communication System Design 8
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
6.973 Communication System Design 9
6.973 Communication System Design 8
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Example, continuedMin. distance in cosets dmin(Λ’)=2dmin(Λ)=4sqrt(2)Sequence distance (any two paths that start and terminate in the same pair of states must have a distance that is d’=sqrt(16+8+16) >= 4sqrt(2)So, the parallel transition distance is the minimum distance for this code
This is still sqrt(2) better than distance corresponding to no extra bit (or just transmitting uncoded 4QAM)
Mapping by set partitioning� Basic partitioning can be extended systematically to larger values of b (i.e.
constellation sizes)
Ungerboeck labeling in two dimensions �
� The LSB v0 of the encoder output is used to specify which of the first 2 partitions (B0, v0=0 or B1, v0=1) contains the selected coset of the sublattice Λ’, and then uses v1to specify which of the next level parititions (C0,C2,C1,C3) contains the selected coset of the sublattice, etc.
� The remaining bits vk+r, …, vb+r-1 are used to select points within the coset � In practice, this mapping is often used for N=1,2,4 and 8
� One dimensional partitioning halves PAM constellation into sets of “every otherpoint”, realizing 6dB increase in intra-partition distance for each such halving � In 4 and 8 dimensions the distance is 1.5dB and 0.75dB per partition, respectively)
6.973 Communication System Design 11
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Image removed due to copyright restrictions.
8PSK mapping by set partitioning
� Ungerboeck
6.973 Communication System Design 12
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
(000) (100) (010) (110) (001) (101) (011) (111)
y2 = 0
y0 = 0
1
1
1 1
1
1
10 0
0
0
∆o = 2 Sin (π/B) = 0.765
∆1 = 1.414
∆2 = 2.000
(y2y1y0)
Subset B1
Subset C3
A0 = 8 - PSK
B0
C0 C2 C1
(∆3 0)
y1 = 0
Figure by MIT OpenCourseWare.
PSK example from Ungerboeck
� Path distance greater than internal coset distance ∆2=2, so � dfree=min(path distance, internal coset distance)=2
6.973 Communication System Design 13
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Images removed due to copyright restrictions.
Benefiting from larger number of states
6.973 Communication System Design 14
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Images removed due to copyright restrictions.
BER improvement
6.973 Communication System Design
15 Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.
MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
Figure by MIT OpenCourseWare.
3 dB
Uncoded4 - PSK
0.5
1 dB1211098765
10-4
10-3
10-2
4 - state trellis - coded 8 - PSK (Simulation)Er
ror -
eve
nt p
roba
bilit
y
SNR (Es/No)
Asympt.limit
Channelcapacityof 8 - PSK= 2 bit/sec/Hz
QAM example
� For m information bits need 2m+1 points � Extra bit chooses even or odd cosets � Coding gain of approx 4dB over uncoded modulation
6.973 Communication System Design 16
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Image removed due to copyright restrictions.
Trellis for QAM example
� Error paths with distance 5d02 from sequence
D0-D0-D3-D6 � All error paths start and re-emerge in one node
6.973 Communication System Design 17
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Image removed due to copyright restrictions.
Coding gain vs. state
� Significant gains � With as few as 4,8,16 states � 3dB (4 states) � 4dB (8 states) � 5dB (16 states) � up to 6dB (128 or more)
� Doubling of states does not always increase dfree � Can get big increase in � Num. nearest neighbors � Num. next-nearest neighbors
6.973 Communication System Design 18
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Image removed due to copyright restrictions.
Another example
� Rate 2/3 trellis code � Increase fundamental gain beyond 3dB (which was the parallel
transition distance in the rate ½ code) � Need constellation partitioning by one additional level/step to
ensure that the parallel transition distance will now be 6dB
6.973 Communication System Design 19
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Image removed due to copyright restrictions.
Min. distance
� Now, min distance occurs between two longer length sequences through the trellis, instead of between parallel transitions
6.973 Communication System Design 20
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Images removed due to copyright restrictions.
One-dimensional TCM
� Up to 6dB of fundamental gain � Only need to partition twice Λ’= Λ(2) to realize min
separation between any two parallel transitions that is 6dB higher than uncoded PAM
� The partition chain for the one-dimensional trellis codes is, with Λ=Z, Z|2Z|4Z, with corresponding min distances between points dmin(Z)=1, dmin(2Z)=2, dmin(4Z)=4, and rG=1
� The parallel separation is never more than d2=16 � G(D) must then be a rate ½ code
6.973 Communication System Design 21
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
One-dimensional Trellis code tables
� Ne – number of nearest neighbors � N1,2,3,4 numbers of next-to-near neighbors
6.973 Communication System Design 22
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Figure by MIT OpenCourseWare.
dmin w.r.t. A10
dmin w.r.t. B10
dmin w.r.t. C10
Ne w.r.t. A10
Ne w.r.t. B10
Ne w.r.t. C10
C10
B10
A10
B11
C12 C1
1 C13
11
1
22
21
2 2 1
2
2
4
1
4 2 5 9 2.25 4 8 16 32 64 3.32 123.528 04 13 10 2.50 4 8 16 40 72 3.78 24
483.9980481688
282456
48126
80236
4.194.60
4896
84
12
4.394.395.12
2.752.753.25
111113
23041616326464
128
128128256256
512
024054126
160124362370
0342 1017
515515207267
235161103 14
1416
1615
4.00
42
3.503.75
3.754.00
4.003.503.50 5.44
5.446.02
6.025.74
5.745.44
6.02 2
48
66
36 0320
348
326
0 56408014
100
2566690 0
840
16456
13268
0
140268136344
1060236420 4.61
4.945.01
5.165.245.475.42
5.51 1536
768768384384
384192192
8
1514
16
10 234510
3.98
2v h1 h0 d2 γ f (dB) ND-
N4-
N3-N2
-N1-Ne
- γ f~
-
-
--
-
min
332
Two dimensional codes
� Use 3-level partitioning so that Λ’= Λ(3) � To realize min separation between any two parallel
transitions that is 6dB higher than uncoded two-dimensional QAM
� The partition chain is with Λ=Z2, Z2|D2|2Z2|2D2
� Corresponding min distance dmin(Z2)=1, dmin(D2)=sqrt(2), dmin(2Z2)=2, dmin(2D2)=2sqrt(2) and rG=1
� rG=1 implies doubling of the two-dimensional constellation size |Λ| with respect to uncoded transmission, the maximum fundamental gain is limited to
6.973 Communication System Design 23
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
Two-dimensional partitioning
� Notice larger number of Ne and N1,2,3,4
6.973 Communication System Design 24
Cite as: Vladimir Stojanovic, course materials for 6.973 Communication System Design, Spring 2006.MIT OpenCourseWare (http://ocw.mit.edu/), Massachusetts Institute of Technology.
Downloaded on [DD Month YYYY].
4 - 2 5 4 2 2 16 64 256 1024 3.01 83.018 04 02 11 5 2.5 8 36 160 714 3144 3.58 32
604.0186161952410805264
202202
984800
47124848
4.374.44
116116
2884
4.774.774.77
333
666
230416163232646464
128128128128
256256256512 0510
274370304
164024056042
036060064 016
004052
014150100142
056272162
0346 1001401
401417
263245223203
115143101 7
77
77
744
44
44
43.5
3.53.5
3.53.53.5 5.44
5.445.44
5.445.44
5.44
6.026.02
6.026.02
6.02 22
1822
86172
20
28 130146126
03129466
1521543264 350
124612658
376484
12842950
496592504 2484
24802204
0602816841292
28162736522
1530 67682732
1318213926
66248200
2932073492
107561226412236 4.68
4.724.78
4.744.944.915.01
5.235.245.225.33 1796
900900900
451451451451
228228228
24
88
88
8
10 06 41451634
3.98
2v h2 h1 h0 d2 γ f (dB) ND-
N4-
N3-N2
-N1-Ne
- γ f~dmin w.r.t. A2
0
dmin w.r.t. B20
dmin w.r.t. C20
Ne w.r.t. A20
Ne w.r.t. B20
Ne w.r.t. C20
dmin w.r.t. D20
Ne w.r.t. D20
dmin w.r.t. D20
Ne w.r.t. D20
D24 D2
6 D25
D23D2
1D22D2
0
C20
B20
A20
B21
C22 C2
1 C23
D27
2
4 2
2 1 1
11
1 1
11
1
44
41
2
2
4
8
4 4 2
2
2
2
2
1 1
-
-
--
-
-
-
min
Figure by MIT OpenCourseWare.