The GSM time-division multiple access (TDMA) frame in Figure 1 has duration of 4.615 ms and comprising 8 slots, one assigned to each active mobile user. A normal transmission burst occupying one time slot contains 57 message bits on each side of a 26-bit midamble, called a training or sounding sequence. The slot-time duration is 0.577 ms (or the slot rate is 1733 slots/s). The purpose of the midamble is to assist the receiver in estimating the impulse response of the channel adaptively (during the time duration of each 0.577 ms slot). For the technique to be effective, the fading characteristics of the channel must not change appreciably during the time interval of one slot.
Consider a GSM receiver used aboard a high-speed train, traveling at a constant velocity of 200 km/hr (55.56 m/s). Assume the carrier frequency to be 900 MHz (the wavelength is λ = 0.33 m). The distance corresponding to a half-wavelength is traversed in
T0≈λ/2V≈3T0≈λ/2V≈3 size 12{T rSub { size 8{0} } approx { { {λ} slash {2} } over {V} } approx 3} {} corresponds approximately to the coherence time. Therefore, the channel coherence time is more than five times greater than the slot time of 0.577 ms. The time needed for a significant change in channel fading characteristics is relatively long compared to the time duration of one slot.
The GSM symbol rate (or bit rate, since the modulation is binary) is 271 kilosymbols/s; the bandwidth, W, is 200 kHz. Since the typical rms delay spread
στστ size 12{σ rSub { size 8{τ} } } {} in an urban environment is on the order of 2μs, then the resulting coherence bandwidth:
f
0
≈
1
5σ
τ
≈
100
kHz
f
0
≈
1
5σ
τ
≈
100
kHz
size 12{f rSub { size 8{0} } approx { {1} over {5σ rSub { size 8{τ} } } } approx "100"" kHz"} {}
Since
f0<Wf0<W size 12{f rSub { size 8{0} } <W} {} , the GSM receiver must utilize some form of mitigation to combat frequency-selective distortion. To accomplish this goal, the Viterbi equalizer is typically implemented.
Figure 2 shows the basic functional blocks used in a GSM receiver for estimating the channel impulse response.
This estimate is used to provide the detector with channel-corrected reference waveforms as explained below: (the Viterbi algorithm is used in the final step to compute the MLSE of the message bits)
Let
str(t)str(t) size 12{s rSub { size 8{ ital "tr"} } \( t \) } {} be the transmitted midamble training sequence, and
rtr(t)rtr(t) size 12{r rSub { size 8{ ital "tr"} } \( t \) } {} be the corresponding received midamble training sequence. We have:
r
tr
(
t
)
=
s
tr
(
t
)
∗
h
c
(
t
)
r
tr
(
t
)
=
s
tr
(
t
)
∗
h
c
(
t
)
size 12{r rSub { size 8{ ital "tr"} } \( t \) =s rSub { size 8{ ital "tr"} } \( t \) * h rSub { size 8{c} } \( t \) } {}
At the receiver, since
rtr(t)rtr(t) size 12{r rSub { size 8{ ital "tr"} } \( t \) } {} is part of the received normal burst, it is extracted and sent to a filter having impulse response
hmf(t)hmf(t) size 12{h rSub { size 8{ ital "mf"} } \( t \) } {} , that is matched to
str(t)str(t) size 12{s rSub { size 8{ ital "tr"} } \( t \) } {}. This matched filter yields at its output an estimate of
hc(t)hc(t) size 12{h rSub { size 8{c} } \( t \) } {}, denoted
he(t)he(t) size 12{h rSub { size 8{e} } \( t \) } {}:
h
e
(
t
)
=
r
tr
(
t
)
∗
h
mf
(
t
)
h
e
(
t
)
=
r
tr
(
t
)
∗
h
mf
(
t
)
size 12{h rSub { size 8{e} } \( t \) =r rSub { size 8{ ital "tr"} } \( t \) * h rSub { size 8{ ital "mf"} } \( t \) } {}
=
s
tr
(
t
)
∗
h
c
(
t
)
∗
h
mf
(
t
)
=
s
tr
(
t
)
∗
h
c
(
t
)
∗
h
mf
(
t
)
size 12{ {}=s rSub { size 8{ ital "tr"} } \( t \) * h rSub { size 8{c} } \( t \) * h rSub { size 8{ ital "mf"} } \( t \) } {}
where
Rs(t)=str(t)∗hmf(t)Rs(t)=str(t)∗hmf(t) size 12{R rSub { size 8{s} } \( t \) =s rSub { size 8{ ital "tr"} } \( t \) * h rSub { size 8{ ital "mf"} } \( t \) } {} is the autocorrelation function of
str(t)str(t) size 12{s rSub { size 8{ ital "tr"} } \( t \) } {}. If
str(t)str(t) size 12{s rSub { size 8{ ital "tr"} } \( t \) } {} is designed to have a highly-peaked (impulse-like) autocorrelation function
Rs(t)Rs(t) size 12{R rSub { size 8{s} } \( t \) } {}, then
he(t)≈hc(t)he(t)≈hc(t) size 12{h rSub { size 8{e} } \( t \) approx h rSub { size 8{c} } \( t \) } {}.
Next, we use a windowing function,
w(t)w(t) size 12{w \( t \) } {}, to truncate
he(t)he(t) size 12{h rSub { size 8{e} } \( t \) } {} to form a computationally affordable function,
hw(t)hw(t) size 12{h rSub { size 8{w} } \( t \) } {}. The time duration of
w(t)w(t) size 12{w \( t \) } {}, denoted
L0L0 size 12{L rSub { size 8{0} } } {}, must be large enough to compensate for the effect of typical channel-induced ISI. The term
L0L0 size 12{L rSub { size 8{0} } } {} consists of the sum of two contributions, namely
LCISILCISI size 12{L rSub { size 8{ ital "CISI"} } } {}, corresponding to the controlled ISI caused by Gaussian filtering of the baseband waveform (which then modulates the carrier using MSK), and
LCLC size 12{L rSub { size 8{C} } } {}, corresponding to the channel-induced ISI caused by multipath propagation. Thus,
L
0
=
L
CISI
+
L
C
L
0
=
L
CISI
+
L
C
size 12{L rSub { size 8{0} } =L rSub { size 8{ ital "CISI"} } +L rSub { size 8{C} } } {}
The GSM system is required to provide distortion mitigation caused by signal dispersion having delay spreads of approximately 15–20 μs. Since in GSM the bit duration is 3.69 μs, we can express
L0L0 size 12{L rSub { size 8{0} } } {} in units of bit intervals. Thus, the Viterbi equalizer used in GSM has a memory of 4–6 bit intervals. For each
L0L0 size 12{L rSub { size 8{0} } } {}-bit interval in the message, the function of the Viterbi equalizer is to find the most likely
L0L0 size 12{L rSub { size 8{0} } } {}-bit sequence out of the
2L02L0 size 12{2 rSup { size 8{L rSub { size 6{0} } } } } {} possible sequences that might have been transmitted.
Determining the most likely transmitted
L0L0 size 12{L rSub { size 8{0} } } {}-bit sequence requires that
2L02L0 size 12{2 rSup { size 8{L rSub { size 6{0} } } } } {} meaningful reference waveforms be created by disturbing) the
2L02L0 size 12{2 rSup { size 8{L rSub { size 6{0} } } } } {} ideal waveforms (generated at the receiver) in the same way that the channel has disturbed the transmitted slot. Therefore, the
2L02L0 size 12{2 rSup { size 8{L rSub { size 6{0} } } } } {} reference waveforms are convolved with the windowed estimate of the channel impulse response,
hw(t)hw(t) size 12{h rSub { size 8{w} } \( t \) } {} in order to generate the disturbed or so-called channel-corrected reference waveforms.
Next, the channel-corrected reference waveforms are compared against the received data waveforms to yield metric calculations. However, before the comparison takes place, the received data waveforms are convolved with the known windowed autocorrelation function
w(t)Rs(t)w(t)Rs(t) size 12{w \( t \) R rSub { size 8{s} } \( t \) } {}, transforming them in a manner comparable to the transformation applied to the reference waveforms. This filtered message signal is compared to all possible
2L02L0 size 12{2 rSup { size 8{L rSub { size 6{0} } } } } {} channel-corrected reference signals, and metrics are computed in a manner similar to that used in the Viterbi decoding algorithm. It yields the maximum likelihood estimate of the transmitted data sequence.