Coded modulation - Universitetet i Bergeneirik/INF244/Lectures/Lecture20.pdf · Coded modulation...

25
1 Coded modulation So far: Binary coding Binary modulation Will send R information bits/symbol (spectral efficiency = R) Constant transmission rate: Requires bandwidth expansion by a factor 1/R Until 1976: ”Coding not useful for spectral effiencies 1” ”Coding gain achieved at the expense of bandwidth expansion” Quantum leap: Coded modulation Trellis coded modulation (TCM) Block coded modulation (BCM) Turbo coded modulation

Transcript of Coded modulation - Universitetet i Bergeneirik/INF244/Lectures/Lecture20.pdf · Coded modulation...

1

Coded modulation• So far:

• Binary coding• Binary modulation• Will send R information bits/symbol (spectral efficiency = R)• Constant transmission rate: Requires bandwidth expansion by a

factor 1/R• Until 1976:

• ”Coding not useful for spectral effiencies ≥ 1”

• ”Coding gain achieved at the expense of bandwidth expansion”• Quantum leap: Coded modulation

• Trellis coded modulation (TCM)• Block coded modulation (BCM)• Turbo coded modulation

2

Coded modulation: What is it?

• Concatenation of an error correcting code (convolutional code, block code, turbo code) and a signal constellation

• Groups of coded bits are mapped into points in the signal constellation in a way that enhances the distance properties of the code

• Thus, a codeword can be seen as a vector of signal points

• Decode, ideally, to the codeword which is closest to the received vector in terms of squared Euclidean distance (assuming an AWGN channel)

3

Coded modulation: Fair comparisons• Gain of coding?• Reference system:

• Uncoded information mapped, k bits at a time, into signal constellation with 2k different signal points, and with average signal energy Es

• Reference spectral efficiency is k• Typical scheme with coded modulation:

• Rate k/(k+1) error correcting code. Coded bits are mapped, k+1 bits at a time, into signal constellation with 2k+1 different signal points, and scaled down so that the average signal energy is Es

• Spectral efficiency is k

4

Coded modulation: Constellations

5

Coded modulation: Energy per symbol

• Assume in all cases that the minimum Euclidean distance between two points is 2

• 2-AM: Es = 2⋅(+1)2 /2 = 1

• 4-AM: Es = 2⋅((+1)2 + (+3)2)/4 = 5

• 8-AM: Es = 2⋅((+1)2 + (+3)2 + (+5)2 + (+7)2)/8 = 21

6

QAM: Energy per symbol

• Assume in all cases that the minimum Euclidean distance between two points is 2

• 4-QAM: Es = 4⋅((+1)2 + (+1)2)/4 = 2

• 8-CROSS: Es = 4⋅(((+1)2 + (+1)2) + ((0)2 + (+3)2))/8 = 5.5

7

Coded modulation: Energy per symbol

8

Symbol error probability

• Uncoded modulation (QPSK):• Ps ≤ 2Q((Es/N0)1/2) + Q((2Es/N0)1/2) ≈ 2Q((Es/N0)

1/2)• Uncoded modulation (general constellation):

● Ps ≤ AminQ((dmin2/2N0)1/2) ≈ (Amin/ 2) e-dmin

2/4N0

• Amin = number of nearest neighbour points

• dmin2 = minimum squared Euclidean distance

(MSE) between signal points (= 2Es for QPSK)● Coded modulation:

● Pe ≤ ≈ (Adfree/ 2) e-dfree2/4N0

9

Asymptotic coding gain

• Now, the uncoded reference system and the coded system have the same spectral efficiency

• Asymptotic coding gain γ = (dfree:coded2 / Ecoded)/(dmin:uncoded

2 / Euncoded)● γ = (Euncoded / Ecoded ) (dfree:coded

2 / dmin:uncoded2)

= γc-1 ⋅ γd

= (constellation expansion factor)-1 ⋅ distance gain factor

• But what is dfree:coded?

• Binary modulation: dfree:coded is proportional to the free Hamming distance of the code. Hence, design for Hamming distance

• Nonbinary modulation: dfree:coded depends on the code as well as on the mapping from code bits to points in the signal constellation

10

Average and minimum Euclidean WE• Constellation with 2k+1 points

• Let e ∈{0,1}k+1, v → s (v is label of s), and v’ = (v ⊕ e) → s’

• For each e, there are 2k+1 pairs (v,v’) of this type. The distance ∆v

2(e) between s and s’ varies over the set of pairs {(v,v’)}

• For a specified constellation and for each error vector e, the average Euclidean WE (AEWE) is

∆e2(X) = 2-k-1 ∑v X ∆v2(e)

• For a specified constellation and for each error vector e, the minimum Euclidean WE (MEWE) is

δe2(X) = X minv ∆v2(e)

11

Computing the WEFs• Use the error trellis

• Mason's gain formula on the modified error state diagram with the branch labels X w(e) can be used to compute the Hamming WEF

• The same algorithm applied to the modified error state diagram with branch labels δe

2(X) can compute the minimum free squared Euclidean (MFSE) distance of the system, provided the code-bit-to-signal mapping is uniform

• The same algorithm applied to the modified error state diagram with branch labels ∆e

2(X) can compute the average weight enumerating function of the system, provided the code-bit-to-signal mapping is uniform

12

Uniform mapping

• Split the signal constellation in two subsets, Q(0) and Q(1) such that Q(i) consists of points with a label v with v(0) = i

• Let ∆e,i2(X) be the AEWE for e with respect to Q(i)

• A 1-1 mapping f: v → s is uniform iff. ∆e,02(X) = ∆e,1

2(X) ∀ e

13

Uniform mapping: Example

Q(0) and Q(1) isomorphic. One can be obtained from the other by isometric mapping. Necessary for the existence of a uniform mapping

14

Nonuniform mapping: Example

No isometry between Q(0) and Q(1)

15

Nonuniform mapping: ExampleQ(0) and Q(1) isomorphic. One can be obtained from the other by isometric mapping. Necessary but not sufficient for the existence of a uniform mapping

16

Uniform mapping• Lemma: Consider a (k+1,k) binary convolutional code

whose output is blockwisely and uniformly mapped to a 2k+1-ary signal constellation. Then, for each binary error sequence e(D) in the error trellis, there exists a pair of sequences y(D) and y’(D) such that ∑

l ∆vl

2(el) = ∑

l ∆2(e

l), where the

summation is over the blocks where y(D) and y’(D) differ

• Proof: Follows because the mapping is uniform

• Thus, the MFSE distance can be computed by a modified Viterbi algorithm on the error trellis, with the MEWEs as edge labels

• By similar reasoning, the average WEF can be computed by using a modified error state diagram with the AEWEs as edge labels

17

Two commonly used mappings

Gray mapping:

• The labels of two adjacent signal points will differ in only one position

• Used for uncoded modulation. Also used in coded modulation, as it is distance preserving in some cases, for example for QPSK

Natural mapping:

• Signal points are labeled in ascending order (integerwise)

• Used for applications which need to be robust against carrier phase errors

18

Examples: QPSK (∆min2 = 2)

19

Using the error trellis to compute distance

5 2.4 7.2 6

3 7.2 2.4 10

20

Example: R = 2/3 with 8-PSK

21

Example: R = 2/3 with 8-PSK

1.76 But uncoded QPSK has ∆min

2 = 2...

22

Example: R = 1/2 with 8-PSK

1.76

Parallel

branches 4.0

23

Example: R = 1/2 with 8-PSK

4.59

Best possible

24

Initial rules for design of coded modulation

• MSE distance between parallel branches should be maximized

• Branches in the modified error trellis leaving and entering the same state should have the largest possible MSE distance

25

On uniform and nonuniform mappings

• For nonuniform mappings:

• Calculations on the error trellis will provide only a lower bound on the minimum distance (Example 18.5)

• More difficult to analyze (but the system as such may be as good as or better than one using a uniform mapping)

• Stricter condition: Geometric uniform (GU) mappings

• Even easier to analyze

• Most systems are not GU