Trellis Codes - MIT OpenCourseWare

24
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].

Transcript of Trellis Codes - MIT OpenCourseWare

Page 1: Trellis Codes - MIT OpenCourseWare

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].

Page 2: Trellis Codes - MIT OpenCourseWare

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].

Page 3: Trellis Codes - MIT OpenCourseWare

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].

Page 4: Trellis Codes - MIT OpenCourseWare

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

Page 5: Trellis Codes - MIT OpenCourseWare

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

Page 6: Trellis Codes - MIT OpenCourseWare

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].

Page 7: Trellis Codes - MIT OpenCourseWare

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].

Page 8: Trellis Codes - MIT OpenCourseWare

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

Page 9: Trellis Codes - MIT OpenCourseWare

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

Page 10: Trellis Codes - MIT OpenCourseWare

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)

Page 11: Trellis Codes - MIT OpenCourseWare

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.

Page 12: Trellis Codes - MIT OpenCourseWare

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.

Page 13: Trellis Codes - 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.

Page 14: Trellis Codes - MIT OpenCourseWare

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.

Page 15: Trellis Codes - MIT OpenCourseWare

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

Page 16: Trellis Codes - MIT OpenCourseWare

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.

Page 17: Trellis Codes - MIT OpenCourseWare

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.

Page 18: Trellis Codes - MIT OpenCourseWare

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.

Page 19: Trellis Codes - MIT OpenCourseWare

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.

Page 20: Trellis Codes - MIT OpenCourseWare

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.

Page 21: Trellis Codes - MIT OpenCourseWare

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].

Page 22: Trellis Codes - MIT OpenCourseWare

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

Page 23: Trellis Codes - MIT OpenCourseWare

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].

Page 24: Trellis Codes - MIT OpenCourseWare

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.