Coded modulation - Universitetet i Bergeneirik/INF244/Lectures/Lecture20.pdf · 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
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
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
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
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