Baixe Sistema Comunicação - trellis coded modulation e outras Provas em PDF para Engenharia Elétrica, somente na Docsity!
Trellis-Coded Modulation [TCM]
- Limitations of conventional block and convolutional codes on
bandlimited channels
- Basic principles of trellis coding: state, trellis, and set partitioning
- Coding gain with trellis codes
- System mechanization: application of the Viterbi Algorithm for
decoding
- Systems issues
- Applications to wired and wireless channels
- Advanced concepts: multi-dimensional trellis codes
- Three aspects of TCM [or any code]
- Design the code
- Determine the performance of the code (coding gain)
- Mechanize the encoder and decoder (Viterbi Algorithm
Classic Coding
- Information theory tells us that for optimal communications we should design
long sequences of signals, with maximum separation among them; and at the
receiver we should perform decision making over such long signals rather than
individual bits or symbols.
- If this process is done properly, then the message error probability will
decrease exponentially with sequence length, n
provided that the rate R is less than R 0 , which in turn is less than the Shannon
Capacity.
- This is the idea behind coding. In conventional coding, the coding is separate
from modulation. Coding occurs at the digital level, before modulation and
generally involves adding bits to the input sequence. The resultant redundancy
requires added bandwidth.
- At the receiver, hard decoding occurs after demodulation. The decoding
operation is based on hard decisions, since a digital bit (or symbol) stream fees
the decoder and is either in error or not. Decoding can also be done based on
the analog received samples, and this is called soft decoding. The theoretical
loss due to hard [vs soft] decoding leads to a ~2dB performance loss.
R R n Pe Ke
−( 0 − ) <
Trellis Coded Modulation
- The key idea is that the operations of [baseband] modulation and coding are
combined.
- The bandwidth is not expanded: same symbol rate, but redundancy is
introduced by using a constellation with more points than would be required
without coding.
- Typically, the number of points is doubled
- The symbol rate is unchanged
- The power spectrum is unchanged
- Since there are more possible points per symbol, it may appear that the error
probability would increase for a given S/N.
- As in conventional coding, dependencies are introduced among different
symbols ---only certain sequences of successive constellation points are
allowed.
- By properly making use of these constraints during reception, the error
probability actually decreases.
- A measure of performance improvement is the coding gain , which is the
difference is S/N between a coded and uncoded system of the same
information rate that produces the same error probability.
History of Trellis-Coded Modulation
Rotationally Invariant TCM with M-PSK 1988
TCM with Built-In Time Diversity 1988 - 1990
TCM with Tomlinson Precoder 1990 - 1991
TCM with Unequal Error Protection 1990
Multilevel Coding with TCM 1992 - 1993
Concatenated Coding with TCM 1993 - present
Multidimensional TCM 1984 - 1985
Rotationally Invariant TCM 1983
Ungerboeck Invented TCM 1976
- Satellite Communications - Wireless Communications Trials - Digital Subscriber Loops - HDTV - Broadcast Channels - Satellite Communications - HDTV - CATV - DBS - Digital Subscriber Loops
- Voiceband Modems up to 14.4 Kbps
- Voiceband Modems up to 33.4 Kbps
Trellis Coding---the basics
- It can be shown for the Gaussian channel that there is an input discrete
alphabet that has capacity very close to the capacity with continuous
inputs
- As shown on the next chart, an eight- level system can achieve a
capacity of 2 bits/symbol
- This suggests that it is only necessary to double the signal
constellation to get good coding gains (increasing the signal alphabet
will not improve the coding gain)
- Note that at about 19 dB we can achieve with a four-level
constellation
- With coding, using an 8-level constellation we can theoretically
transmit 2 bits/symbol error free down to about 13dB
- Hence using coded modulation we could gain as much as 19-13 = 6 dB
- The bandwidth has not been expanded (same symbol rate)
10
Trellis Coding – The Basics
The Information Conveyed by a Real-Valued Discrete
time Channel with Additive Gaussian Noise
16-AM
8-AM
4-AM
2-AM
SNR (dB)
C (Bits/Symbol) (^10) -
0.5 log 2 (1+ββ/σσ^2 ) 10 -
Uncoded
Shannon Capacity
Trellis Coding ---QAM modulation
- Given a channel with a bandwidth limitation, first determine the maximum symbol rate that can be transmitted.
- Determine the size of the alphabet, , that is needed to produce the desired bit rate.
- Double the size of the constellation and introduce a channel coder that produces one extra bit
- The coder need not code all the incoming bits
- There are many ways to map the coded bits into symbols. The choice of mapping will drastically affect the performance of the code.
- Ungerboeck produced a good heuristic technique called mapping by set partitioning
- The encoding philosophy is to first partition the larger constellation into smaller subsets
- The Euclidean distance between sequences of signal points in different subsets is substantially increased (and may be on the order of the distance between points in the same subset)
- Performance will be determined by the distance between sequences in different subsets.
- Trellis coding produces a dramatic increase in the Euclidean (free) distance between sequences of signal points and the Viterbi Algorithm is used to detect the signal
- Results also hold for 2-dimensional modulation
2^ L
2 L +^1
Trellis Coding Summary
- Ungerboeck (1976) showed that for bandlimited channels substantial coding
gains could be achieved by convolutional coding of signal levels (rather than
coding of binary source levels)]
- He joined modulation and coding to increase the Euclidean distance between
signal sequences
- Called channel “trellis coding” because the sequence of states in the finite state
machine which encodes the signal levels follows a trajectory in a trellis of
possible trajectories
- The larger Euclidean distance between signal sequences, the lower the error
rate, which for moderate to large SNR is
- Codewords consist of modulated level sequences. Trellis coding uses dense
signal sets but restricts the sequences that can be used. This provides a gain in
minimun distance and the code imposes a time dependency on the allowed
signal sequences that allows the receiver to ride through “noise bursts” as it is
estimating the transmitted sequence.
- Since the pulse shape and symbol rate are unchanged ---> no bandwidth
expansion
( / 2 ),where theaverage number ofsequencesat ,and ( ) x^2 /^2
Pe NfreeQ dfree Nfree dfree Q x e
13
Limitations of Conventional Coding Techniques for Bandlimited Channels
- For the example uncoded 4-PSK and rate 2/3 coded 8-PSK system [same customer date rate] - if the uncoded system has a BER = 10 -5, the coded system will have an error rate at the demodulator output of worse than 10 -2. What sort of code is needed to make the 8-PSK system have a 10 -5^ decoded BER?
- A t-error correcting code of block length n, with k information bits must satisfy the Hamming bound [see Weldon and Peterson]--- which provides a lower bound on the code block length
- Suppose t=2 and k/n = R= 2/3 [as per our example] we find that n > 24.
- With such a code we need a binary block length of 24 bits or eight 8-PSK symbols. Each of the symbols has an error rate of 10 -2. With Gray coding [ie, a symbol error --->one bit error], the code will correct two symbol errors.
- An error will be made if 3 [or more] of the 8 symbols are in error, and the decoded BER
- Thus relatively complex codes [n=24] are required and this code did not provide “gain.”
- For a non-bandlimited channel the coded system has a DEMOD error rate of 10 -4^ and the BER is
∑^ ( )
=
− (^) ≥
t
i
n i
n k 0
2
8 2 3 5 3
− − ∗ ≈ ∗
8 -4 3 -
3 ∗(10^ ) ≈^10
So in a bandlimited channel can a simpler code can be used to achieve large coding gain?
14
Trellis Coded Modulation (Example continued)
- Uncoded four phase d^2 = 2. Coded d^2 =?
- Coded system uses 8-point constellation and the signal mapping shown below
- Number of states = 2#SR’s^ = 4
- Number of paths leaving node = 2# bits/symbol (user)
- Tribit determines signal point
- Each new dibit X 1 and X 2 causes a state transition, as well as generating an output
(shown are input dibit and output tribit)
∆∆ 0 = 2
3 ∆∆ 1 = 2 2
1
0 7
6
5
4 ∆ ∆ 0 = 2sin(ππ/8)
∆ ∆ 2 = 2
Four-point (uncoded) and eight-point (coded) signal constellations. Each has radius one, and thus an average signal power of unity
free
Encoder State Trellis
TCM does not protect parallel branches Receiver trellis strives to generate (i.e. “estimate”) the transmit path through the trellis
00
01
10
11
s 1 s 0 x 2 x 1 [ y 2 y 1 yo ]
00 10 01 11
00 10 01 11 01 11 00 10
01 11 00 10 n n + 1 time
[000] [100] [010] [110]
[010] [110] [000] [100] [001] [101] [011] [111]
[011] [111] [001] [101]
Trellis Encoding
- The new state is a function of the current state and the input
- Transitions are NOT possible between every state
- Parallel branches, corresponding to the two paths associated with each
uncoded bit, represent points at at maximum separation in Euclidean distance
- Branches emerging from and converging to a point have the next largest
separation
- Each parallel pair represents a pair of points with a Euclidean Distance = 2
- At each node the four arms entering have Euclidean distance
- The minimum distance separation at the same node is
2
- 38 8
2 sin =
π
Basic Philosophy of TCM
- Form an expanded constellation, with double the number of points
- Partition that constellation into subsets. The points within each subset are far
apart in Euclidean distance, and are made to correspond to the uncoded bits.
- The remaining bits determine the choice of the subset. Only certain sequences
of subsets are allowed. Typically, the allowed sequences correspond to a
simple convolutional code.
- In order to keep the allowed sequences far apart, choose subsets that
correspond to branching in and out of each state to have maximum distance
separation.
- At the receiver, we find the allowed sequence which is closest in Euclidean
distance to the received sequence of signals.
- After the output sequence is decoded, the receiver decides between the
uncoded points based on the Euclidean distance to the nearest signal point ---
thus the distance between uncoded pairs and closest sequences should be ~ the
same.
Partitioning of 16-Point Constellation
The dmin between points in subsets is increased by at least a factor of 2 with each partitioning.
Note that this gain has to overcome the larger constellation power.
Partitioning of 16-Point Constellation
2
d 0
2 d 0
2 d 0
A B
a b c d