1
00:00:04,700 --> 00:00:07,551
Hi, and welcome to module 9.5
of Digital Signal Processing.

2
00:00:08,760 --> 00:00:13,640
In this module, we will touch briefly
on some topics in receiver design.

3
00:00:13,640 --> 00:00:16,210
A lot of things unfortunately
happen to the signal while it's

4
00:00:16,210 --> 00:00:17,860
traveling through the channel.

5
00:00:17,860 --> 00:00:21,210
The signal picks up noise,
we have seen that already.

6
00:00:21,210 --> 00:00:25,180
It also gets distorted because the channel
will act as some sort of filter

7
00:00:25,180 --> 00:00:28,130
that is not necessarily all-pass and
linear phase.

8
00:00:28,130 --> 00:00:29,910
Interference happens, too.

9
00:00:29,910 --> 00:00:32,922
There might be parts of the channel
that we thought were usable and

10
00:00:32,922 --> 00:00:34,083
they're actually not.

11
00:00:34,083 --> 00:00:39,006
So the receiver really has to deal with
a copy of the transmitted signal that is

12
00:00:39,006 --> 00:00:43,040
very, very far from the idealized
version we have seen so far.

13
00:00:44,790 --> 00:00:46,280
The way receivers,

14
00:00:46,280 --> 00:00:50,330
especially digital receivers,
can cope with the distortions and

15
00:00:50,330 --> 00:00:55,260
the noise introduced by the channel is by
implemented adaptive filtering techniques.

16
00:00:55,260 --> 00:00:58,170
Now we will not have
the time to go into very

17
00:00:58,170 --> 00:01:00,620
many details about adaptive
signal processing.

18
00:01:00,620 --> 00:01:03,520
Again, these are topics that
you will be able to study in

19
00:01:03,520 --> 00:01:05,720
more advanced signal processing classes.

20
00:01:05,720 --> 00:01:09,470
But I think it is important
to give you an overview

21
00:01:09,470 --> 00:01:14,370
of the things that have to happen inside
a receiver, inside your ADSL receiver for

22
00:01:14,370 --> 00:01:18,220
instance, so that you can enjoy these
high data rates that are available today.

23
00:01:18,220 --> 00:01:23,348
And the first technique that we will
look at is adaptive equalization and

24
00:01:23,348 --> 00:01:28,055
then we will look at some very simple
timing recovery that is used in

25
00:01:28,055 --> 00:01:29,836
practice in receivers.

26
00:01:29,836 --> 00:01:32,769
Let's begin with a blast form the past.

27
00:01:32,769 --> 00:01:37,172
[SOUND] Those of you that are a little bit

28
00:01:37,172 --> 00:01:42,126
older will certainly have recognized this

29
00:01:42,126 --> 00:01:46,944
sound as the obligatory soundtrack every

30
00:01:46,944 --> 00:01:51,773
time you used to connect to the Internet.

31
00:01:51,773 --> 00:01:55,020
And indeed,
this is the sound made by a V.34 modem,

32
00:01:55,020 --> 00:02:01,070
that was the standard dial-up connection
device in 90s until the early 2000s.

33
00:02:01,070 --> 00:02:04,790
Now, if you have ever used a modem,
you've heard the sound and

34
00:02:04,790 --> 00:02:06,530
you probably wondered what was going on.

35
00:02:06,530 --> 00:02:11,660
So we're going to analyze what we just
heard from the graphical point of view.

36
00:02:11,660 --> 00:02:15,525
If we look at the block diagram for
the receiver once again,

37
00:02:15,525 --> 00:02:20,396
what we're going to do is we're going
to plot the baseband complex samples

38
00:02:20,396 --> 00:02:22,507
as points on the complex plane.

39
00:02:22,507 --> 00:02:27,284
So we going to take br(n) as
the horizontal coordinate, and

40
00:02:27,284 --> 00:02:31,310
bi(n) as the vertical coordinate.

41
00:02:31,310 --> 00:02:36,038
And before we do so, let's just look for
second at what happens inside

42
00:02:36,038 --> 00:02:40,286
the receiver when the signal at
the input is a simple sinusoid,

43
00:02:40,286 --> 00:02:43,540
like cosine (omega c + omega 0) n.

44
00:02:43,540 --> 00:02:47,746
We are demodulating this very simple
signal with the two carriers,

45
00:02:47,746 --> 00:02:50,916
the cosine (omega c n) and
sine (omega c n), and

46
00:02:50,916 --> 00:02:55,210
then we're filtering the result
with a low pass filter.

47
00:02:55,210 --> 00:02:58,960
So if we work out this formula with
standard trigonometric identities,

48
00:02:58,960 --> 00:03:00,230
we can always express, for instance,

49
00:03:00,230 --> 00:03:04,650
the product of two cosine
functions as the sum of the cosine

50
00:03:04,650 --> 00:03:08,990
of the sum of the angles plus the cosine
of the difference of the angles.

51
00:03:08,990 --> 00:03:11,860
And same for
the product of the cosine and sine.

52
00:03:11,860 --> 00:03:16,290
So if we do that,
we get four terms, two of which

53
00:03:16,290 --> 00:03:20,770
have a frequency that will fall outside
of the past band of the filter H.

54
00:03:20,770 --> 00:03:25,798
So when we apply the filter to this terms,
we're left only with cosine (omega

55
00:03:25,798 --> 00:03:31,000
0 n) + j sine (omega 0 n), which is,
of course, e to the j omega 0 n.

56
00:03:31,000 --> 00:03:34,670
So when the input to
the receiver is a cosine,

57
00:03:34,670 --> 00:03:40,060
the points in the complex baseband
sequence will be points around the circle

58
00:03:41,370 --> 00:03:45,380
and the difference between two
successive points is the angle, omega 0.

59
00:03:45,380 --> 00:03:49,430
The reason why we might be called to
demodulate the simple sinusoid is

60
00:03:49,430 --> 00:03:52,304
because the receiver will send
what are called pilot tones.

61
00:03:52,304 --> 00:03:55,690
Simple sinusoid that are used
to probe the line and

62
00:03:55,690 --> 00:03:59,010
gauge the response of the channel
at particular frequencies.

63
00:03:59,010 --> 00:04:03,240
So with this in mind, let's look at this
slow motion analysis of the baseband

64
00:04:03,240 --> 00:04:08,070
signal samples when the input is
the audio file which is turned before.

65
00:04:08,070 --> 00:04:10,235
So let's start with the part
that goes like this.

66
00:04:10,235 --> 00:04:15,659
[SOUND] This signal contains several
sinusoids that we can see here in the pod,

67
00:04:15,659 --> 00:04:20,666
and the sinusoids also contain abrupt
phase reversal, meaning that at

68
00:04:20,666 --> 00:04:25,770
some given points in time, the phase
of the sinusoid is augmented by pi.

69
00:04:25,770 --> 00:04:30,310
You can see this as this small explosions
in the circular pattern in the plot.

70
00:04:30,310 --> 00:04:34,170
This phase reversals are used by
the transmitter and the receiver as time

71
00:04:34,170 --> 00:04:39,780
markers to estimate the propagation delay
of the signal from source to destination.

72
00:04:39,780 --> 00:04:41,465
The next part goes like this.

73
00:04:41,465 --> 00:04:45,110
[SOUND] And this is a training sequence.

74
00:04:45,110 --> 00:04:48,974
The transmitter sends a sequence of
known symbols, namely the receiver knows

75
00:04:48,974 --> 00:04:53,069
the symbols that are being transmitted and
so the receiver can use this knowledge to

76
00:04:53,069 --> 00:04:56,270
train an equalizer to undo
the effects of the channel.

77
00:04:56,270 --> 00:05:00,302
The last part is the data transmission
proper, the noisy part if you want,

78
00:05:00,302 --> 00:05:01,329
of the audio file.

79
00:05:01,329 --> 00:05:04,437
And the interesting thing
is that transmitter and

80
00:05:04,437 --> 00:05:07,323
receiver perform
a handshake procedure using

81
00:05:07,323 --> 00:05:11,270
a very low bit rate QAM transmission
using only four points.

82
00:05:11,270 --> 00:05:13,110
Therefore, two bits per symbol,

83
00:05:13,110 --> 00:05:18,060
to exchange the parameters of the real
data transmission that is going to follow.

84
00:05:18,060 --> 00:05:21,100
The speed,
the constellation size and so on.

85
00:05:21,100 --> 00:05:25,680
Using the four point QAM constellation in
the beginning ensures that even in very

86
00:05:25,680 --> 00:05:30,310
noisy conditions, transmitter and receiver
can exchange their vital information.

87
00:05:32,065 --> 00:05:35,965
So even from this simple qualitative
description of what happens in the real

88
00:05:35,965 --> 00:05:37,495
communications scenario,

89
00:05:37,495 --> 00:05:42,405
we can see that the task that the receiver
is saddled with is very complicated.

90
00:05:42,405 --> 00:05:45,082
So it's a dirty job but
a receiver has to do it.

91
00:05:45,082 --> 00:05:49,972
And the receiver has to cope with
four potential sources of problem.

92
00:05:49,972 --> 00:05:53,172
Interference, the propagation delay.

93
00:05:53,172 --> 00:05:55,132
So, the delay introduced by the channel.

94
00:05:55,132 --> 00:05:58,012
The linear distortion
introduced by the channel.

95
00:05:58,012 --> 00:06:03,232
And drifts in the internal clocks between
the digital system inside the transmitter,

96
00:06:03,232 --> 00:06:05,260
and the digital system
inside the receiver.

97
00:06:05,260 --> 00:06:08,020
So, when it comes to interference,
the handshake procedure and

98
00:06:08,020 --> 00:06:10,090
the line probing pilot tones,

99
00:06:10,090 --> 00:06:14,750
are used in clever ways to circumvent
the major sources of interference.

100
00:06:14,750 --> 00:06:17,790
We will see some examples
later on when we discuss ADSL.

101
00:06:18,860 --> 00:06:23,050
The propagation delay is tackled
by a delay estimation procedure,

102
00:06:23,050 --> 00:06:25,300
that we will look at in just a second.

103
00:06:25,300 --> 00:06:29,530
The distortion to this by
the channel is compensated using

104
00:06:29,530 --> 00:06:34,000
adaptive equalization techniques, and
we will see some examples of that as well.

105
00:06:34,000 --> 00:06:38,180
And clock drifts are tackled by timing
recovery techniques, then in and

106
00:06:38,180 --> 00:06:40,340
off themselves are quite sophisticated,
and

107
00:06:40,340 --> 00:06:44,720
therefore we leave them
to more advanced classes.

108
00:06:44,720 --> 00:06:50,210
Graphically, if we sum up the chain
of events that occur between

109
00:06:50,210 --> 00:06:52,840
the transmission of the original
digital signal, and

110
00:06:52,840 --> 00:06:56,590
the beginning of the demodulation
of the received signal.

111
00:06:56,590 --> 00:06:59,810
We have a digital to analog
converter at the transmitter.

112
00:06:59,810 --> 00:07:02,910
This is the transmitter part of the chain

113
00:07:02,910 --> 00:07:05,710
that operates with a given
sampling period T s.

114
00:07:05,710 --> 00:07:09,880
This generates an analog signal
which is sent over a channel.

115
00:07:09,880 --> 00:07:13,730
We can represent the channel, for
the time being, as a linear filter

116
00:07:13,730 --> 00:07:17,390
in the continuous time domain,
with frequency response D( j omega).

117
00:07:17,390 --> 00:07:21,990
At the input of the receiver, we have
a continuous time signal s hat (t),

118
00:07:21,990 --> 00:07:26,970
which is a distorted and delayed
version of the original analog signal.

119
00:07:26,970 --> 00:07:28,740
We will neglect noise for the time being.

120
00:07:30,040 --> 00:07:36,400
This signal is sampled by an A/D converter
that operates at a period T prime of s.

121
00:07:36,400 --> 00:07:40,300
And we obtain the sequence of samples
that will be input to the modulator.

122
00:07:40,300 --> 00:07:42,520
So this is the receiver part of the chain.

123
00:07:42,520 --> 00:07:45,710
We have to take into account
the distortion introduced by the channel.

124
00:07:45,710 --> 00:07:49,610
And we have to take into account the
potentially time varying discrepancies in

125
00:07:49,610 --> 00:07:52,339
the clocks between the transmitter and
the receiver.

126
00:07:52,339 --> 00:07:56,963
These two systems are Geographically
remote, and there is no guarantee that

127
00:07:56,963 --> 00:08:00,018
the two internal clocks that
are used in the A to D and

128
00:08:00,018 --> 00:08:04,380
D to A converters are synchronised or
run exactly at the same frequency.

129
00:08:04,380 --> 00:08:07,570
Let's start with problem
of delay compensation.

130
00:08:07,570 --> 00:08:10,820
To simplify the analysis we will assume
that the clocks that transmitter and

131
00:08:10,820 --> 00:08:13,790
receiver are synchronized and synchronous.

132
00:08:13,790 --> 00:08:16,850
So T prime of S is equal to TS.

133
00:08:16,850 --> 00:08:18,760
And the channel acts as a simple delay.

134
00:08:18,760 --> 00:08:23,050
So the received signal is simply a delayed
version of the transmitted signal

135
00:08:23,050 --> 00:08:26,330
which implies that the frequency
response of the channel is simply

136
00:08:26,330 --> 00:08:28,550
E to the minus J omega D.

137
00:08:28,550 --> 00:08:31,310
So the channel introduces
a delay of d seconds.

138
00:08:31,310 --> 00:08:34,330
You can express this in samples,
in the following way.

139
00:08:34,330 --> 00:08:39,400
We write d as the product of the sampling
period time time b plus tau where

140
00:08:39,400 --> 00:08:43,700
b is an integer and tau is strictly
less than one-half in magnitude.

141
00:08:43,700 --> 00:08:48,790
So b is called the bulk delay because it
gives us an integer number of samples

142
00:08:48,790 --> 00:08:52,300
of delay at the receiver and
tau is the fractional delay.

143
00:08:52,300 --> 00:08:58,310
So the fraction of samples introduced
by the continuous time delay of d.

144
00:08:58,310 --> 00:09:00,690
So how do we compensate for this delay?

145
00:09:00,690 --> 00:09:03,790
Well, the bulk delay is
rather easy to tackle.

146
00:09:03,790 --> 00:09:06,350
Imagine the transmitter
begins transmission

147
00:09:06,350 --> 00:09:08,900
by sending just an impulse
over the channel.

148
00:09:08,900 --> 00:09:11,830
So the discrete time signal is this one,
it's just a delta and

149
00:09:11,830 --> 00:09:16,410
zero, it gets sent the d2a converter, and
the converter will output a continuous

150
00:09:16,410 --> 00:09:19,930
time signal that looks like
an interpolation function, like a sink.

151
00:09:19,930 --> 00:09:21,560
And like all interpolation functions,

152
00:09:21,560 --> 00:09:25,910
it will have a maximum peak in zero
that corresponds to the non-zero sample.

153
00:09:25,910 --> 00:09:28,430
This signal gets transmitted
over the channel and

154
00:09:28,430 --> 00:09:32,260
it gets to the receiver after a delay,
D, that we can estimate, for instance,

155
00:09:32,260 --> 00:09:36,230
by looking at the displacement of
the peak of the intervalation function.

156
00:09:36,230 --> 00:09:39,120
The receiver converts this
into discrete time sequence.

157
00:09:39,120 --> 00:09:41,860
Now in the figure here it look
as if the sampling instance and

158
00:09:41,860 --> 00:09:44,770
the transmitter and
receiver are perfectly aligned.

159
00:09:44,770 --> 00:09:47,440
Now this is not necessarily the case
because the starting time for

160
00:09:47,440 --> 00:09:50,330
the interpolator, and
the transmitter, and the sampler, and

161
00:09:50,330 --> 00:09:52,890
the receiver are not
necessarily synchronized.

162
00:09:52,890 --> 00:09:58,090
But any difference in starting time can
be integrated into the propagation delay

163
00:09:58,090 --> 00:10:01,390
as long as the sampling
periods are the same.

164
00:10:01,390 --> 00:10:04,930
So with this, all we need to do
in the receiver, is to look for

165
00:10:04,930 --> 00:10:08,530
the maximum value in
the sequence of samples.

166
00:10:08,530 --> 00:10:10,780
Because of the shape of
the interpolating function,

167
00:10:10,780 --> 00:10:15,150
we know that the real maximum will be at
most half a sample in either direction

168
00:10:15,150 --> 00:10:17,690
of the location of
the maximum sample value.

169
00:10:17,690 --> 00:10:20,610
So, at the receiver to
offset the bulk delay,

170
00:10:20,610 --> 00:10:23,140
we will just set the nominal time,
n equal to zero,

171
00:10:23,140 --> 00:10:27,910
to coincide with the location of
the maximum value of the sample sequence.

172
00:10:27,910 --> 00:10:30,660
Now of course, we need to compensate for
the fractional delay, so

173
00:10:30,660 --> 00:10:33,020
we need to estimate tao.

174
00:10:33,020 --> 00:10:35,530
And to do that,
we'll use a different technique.

175
00:10:35,530 --> 00:10:39,270
Let me add in passing that in real
communication devices, of course we're not

176
00:10:39,270 --> 00:10:44,750
using impulses to offset the bulk delay
because impulses are full band signals and

177
00:10:44,750 --> 00:10:49,030
so they would be filtered out by the pass
band characteristic of the channel.

178
00:10:49,030 --> 00:10:52,180
The trick is to embed
discontinuities in pilot tones and

179
00:10:52,180 --> 00:10:55,620
to recognize those
discontinuities in the receiver.

180
00:10:55,620 --> 00:10:58,720
As we have seen in the animation
at the beginning of this module,

181
00:10:58,720 --> 00:11:03,140
we use phase reversals, which are abrupt
discontinuities in sinusoids,

182
00:11:03,140 --> 00:11:07,790
to provide a recognizable instant in
time for the receiver to latch on.

183
00:11:07,790 --> 00:11:09,940
Okay, so what about the fractional delay?

184
00:11:09,940 --> 00:11:13,770
Well for the fractional delay,
we use a sinusoid instead of a delta.

185
00:11:13,770 --> 00:11:16,160
So we build a base band signal,

186
00:11:16,160 --> 00:11:20,410
which is simply a complex exponential
at a known frequency omega zero.

187
00:11:20,410 --> 00:11:26,190
This will be converted to a real signal
before being sent to the D to A converter.

188
00:11:26,190 --> 00:11:28,940
And so what we transmit
actually is cosine of omega c,

189
00:11:28,940 --> 00:11:34,570
the carrier frequency, plus the pilot's
frequency omega zero times n.

190
00:11:34,570 --> 00:11:37,560
The receiver will receive
a delayed version of this

191
00:11:37,560 --> 00:11:42,350
which contains a delay now in samples and
fraction of sample, b + tau.

192
00:11:43,530 --> 00:11:48,770
After we demodulate this cosine,
you remember we get a complex exponential.

193
00:11:48,770 --> 00:11:52,210
And we can also compensate already for
the bulk delay, which we know.

194
00:11:52,210 --> 00:11:54,390
So, for an integer number of sample b.

195
00:11:54,390 --> 00:11:56,380
And we obtain a base band signal,

196
00:11:56,380 --> 00:12:00,520
half b of n, which is e to the j omega,
m minus tau.

197
00:12:00,520 --> 00:12:02,300
Since we know the frequency omega zero,

198
00:12:02,300 --> 00:12:06,596
we can just multiple this quantity
by e to the minus j omega zero n.

199
00:12:06,596 --> 00:12:11,710
And obtain e to the minus j omega
zero tau, which is a constant and

200
00:12:11,710 --> 00:12:15,110
which we can invert, given that
we know the frequency omega zero.

201
00:12:15,110 --> 00:12:18,980
And so now we have an estimate for both
the bulk delay and the fractional delay.

202
00:12:18,980 --> 00:12:22,970
Now we have to bring back
the signal to the original timing.

203
00:12:22,970 --> 00:12:24,470
The bulk delay is really no problem.

204
00:12:24,470 --> 00:12:26,408
It's just an integer number of samples.

205
00:12:26,408 --> 00:12:29,770
What creates a problem is the fractional
delay because that will shift

206
00:12:29,770 --> 00:12:33,550
the peaks with respect to
the sampling intervals.

207
00:12:33,550 --> 00:12:35,600
So if we want to compensate for

208
00:12:35,600 --> 00:12:38,800
the bulk delay we need to
compute sub-sample values.

209
00:12:38,800 --> 00:12:42,790
And in theory to do that we should
use a sinc fractional delay,

210
00:12:42,790 --> 00:12:47,660
namely a filter with impulse
response sinc(n + tau).

211
00:12:47,660 --> 00:12:51,220
In practice however,
we will use a local interpolation, and

212
00:12:51,220 --> 00:12:54,650
this is a very practical application
of the Lagrange interpolation technique

213
00:12:54,650 --> 00:12:55,860
that we saw in module 6.2.

214
00:12:55,860 --> 00:12:58,770
So graphically the situation is like so.

215
00:12:58,770 --> 00:13:00,760
We have a stream of samples coming in.

216
00:13:00,760 --> 00:13:05,140
And for each sample we want to
compute the sub-sample value

217
00:13:05,140 --> 00:13:08,860
with a distance of tau from
the nearest sampling interval.

218
00:13:08,860 --> 00:13:13,750
And we want to only use a local
neighborhood of samples to estimate this.

219
00:13:13,750 --> 00:13:17,290
Now you remember from module 6.2
the Lagrange approximation works

220
00:13:17,290 --> 00:13:20,490
by building a linear combination
of Lagrange polynomials

221
00:13:20,490 --> 00:13:22,850
weighed by the samples of the function.

222
00:13:22,850 --> 00:13:26,140
So as per usual we choose
the sampling interval equal to one so

223
00:13:26,140 --> 00:13:27,880
that we lighten the notation.

224
00:13:27,880 --> 00:13:30,950
We have a continuous
time function x of T and

225
00:13:30,950 --> 00:13:36,780
we want to compute x of n plus tau with
tau less than one half in magnitude.

226
00:13:36,780 --> 00:13:42,130
So we have samples of this function
at integers n and the local

227
00:13:42,130 --> 00:13:47,830
Lagrange approximation around n is given
by this linear combination of Lagrange

228
00:13:47,830 --> 00:13:52,980
polynomials weighted by the samples of the
functions around the approximation point.

229
00:13:52,980 --> 00:13:56,280
So, we use the notation XL(n;t).

230
00:13:56,280 --> 00:14:00,180
n is the center point and t is the value

231
00:14:00,180 --> 00:14:03,458
from the center point at which we
want to compute the approximation.

232
00:14:03,458 --> 00:14:07,120
And the Lagrange polynomials
are given by this formula here

233
00:14:07,120 --> 00:14:09,770
which is the same as in module 6.2.

234
00:14:09,770 --> 00:14:12,850
So the delayed compensated
input signal will be set

235
00:14:12,850 --> 00:14:15,630
equal to the Lagrange
approximation at tau.

236
00:14:15,630 --> 00:14:16,900
So let's look at an example.

237
00:14:16,900 --> 00:14:21,400
Assume that we want a second-order
approximation, so we pick N = 1, and

238
00:14:21,400 --> 00:14:25,160
we will have three Lagrange polynomials.

239
00:14:25,160 --> 00:14:30,420
And so we will need to use three samples
of the sequence to compute interpolation.

240
00:14:30,420 --> 00:14:34,790
The three polynomials will be
centered in n- 1, n, and n + 1,

241
00:14:34,790 --> 00:14:38,530
and scaled by the values of
the samples at these locations.

242
00:14:38,530 --> 00:14:43,170
And finally we will sum the pool numbers
together and computer value in n + tau.

243
00:14:43,170 --> 00:14:46,810
So, we start with the first one,
which is centered in n- 1.

244
00:14:46,810 --> 00:14:50,580
And like all interpolation
polynomials its value is one and

245
00:14:50,580 --> 00:14:55,210
n- 1 and zero at other integer
values of the argument.

246
00:14:55,210 --> 00:14:58,100
The second polynomial
will be centered in n and

247
00:14:58,100 --> 00:15:01,040
the third polynomial will
be centered in n + one.

248
00:15:01,040 --> 00:15:04,170
When we sum them together
we obtain a second order

249
00:15:04,170 --> 00:15:07,860
curve that goes through the points
that interpolates the three points and

250
00:15:07,860 --> 00:15:12,020
then we can compute the approximation
as the value of this curve in n + 10.

251
00:15:12,020 --> 00:15:16,490
Now the nice thing about this approach
is that if we look at the approximation,

252
00:15:16,490 --> 00:15:19,360
if we take the Lagrange
approximation around n,

253
00:15:19,360 --> 00:15:22,860
we can define a set of
coefficients d tau of k,

254
00:15:22,860 --> 00:15:28,109
which are the the values of each
Lagrange polynomial in tau.

255
00:15:28,109 --> 00:15:33,560
So d tau of k are 2N+1 values
that form the coefficients

256
00:15:33,560 --> 00:15:38,810
of an FIR filter and we can compute
the value of the Lagrange approximation

257
00:15:38,810 --> 00:15:44,560
simply as the convolution of the incoming
sequence with this interpolation filter.

258
00:15:44,560 --> 00:15:49,528
So for example, if these are the three
Lagrange polynomials for

259
00:15:49,528 --> 00:15:53,668
N = 1, we can compute this polynomials for
t = tau,

260
00:15:53,668 --> 00:15:58,367
where tau is the fractional
delay that we estimated before.

261
00:15:58,367 --> 00:16:02,476
And we will obtain three coefficients,
like here, for instance,

262
00:16:02,476 --> 00:16:04,800
is an example for tau equal to 0.2.

263
00:16:04,800 --> 00:16:08,430
Three coefficients that
give us an FIR filter, and

264
00:16:08,430 --> 00:16:12,840
then we can just simply filter the samples
coming into the receiver with this filter

265
00:16:12,840 --> 00:16:14,830
to compensate for the fractional delay.

266
00:16:14,830 --> 00:16:17,720
So again, the algorithm is
estimate the fractional delay,

267
00:16:17,720 --> 00:16:19,820
the bulk delay is no problem again.

268
00:16:19,820 --> 00:16:24,850
Compute the 2N+1 Lagrangian coefficients
and filter with the resulting FIR.

269
00:16:24,850 --> 00:16:28,730
The added advantage of the strategy is
that if the delay changes over time for

270
00:16:28,730 --> 00:16:32,550
any reason, all we need to do is
to keep the estimation running and

271
00:16:32,550 --> 00:16:36,750
update the FIR coefficients as
the estimation changes over time.

272
00:16:36,750 --> 00:16:39,320
Okay, now that we know
how to compensate for

273
00:16:39,320 --> 00:16:41,970
the propagation delay
introduced by the channel,

274
00:16:41,970 --> 00:16:46,926
let's consider a channel with an arbitrary
frequency response D(j omega).

275
00:16:46,926 --> 00:16:51,803
And the transmission chain goes
from the passband signal s(n),

276
00:16:51,803 --> 00:16:54,763
discrete time, into a D/A converter,

277
00:16:54,763 --> 00:17:00,511
analog signal s(t) that gets filtered
by the channel, gives us hat s(t),

278
00:17:00,511 --> 00:17:07,020
which is sampled at the receiver to give
us a received passband signal hat s(n).

279
00:17:07,020 --> 00:17:10,580
But now we have seen in the previous
module that this block diagram

280
00:17:10,580 --> 00:17:15,613
can be converted into an old digital
scheme where our bandpass signal

281
00:17:15,613 --> 00:17:21,040
s[n] gets filtered by the discrete time
equivalent of the channel and gives us

282
00:17:21,040 --> 00:17:26,610
a filtered version of the bandpass signal
as it would appear inside the receiver.

283
00:17:26,610 --> 00:17:29,410
So, the problem now is
that we would like to undo

284
00:17:29,410 --> 00:17:32,670
the effects of the channel
on the transmitted signal.

285
00:17:32,670 --> 00:17:37,610
And the classic way to do that is to
filter the received signal hat s(n)

286
00:17:37,610 --> 00:17:42,590
by a filter E that compensates for
the distortion, or

287
00:17:42,590 --> 00:17:44,520
the filtering, introduced by the channel.

288
00:17:44,520 --> 00:17:49,062
So the target is that the output of
the filtering operation gives us a signal,

289
00:17:49,062 --> 00:17:52,945
hat se(n),
which is equal to the transmitted signal.

290
00:17:54,695 --> 00:17:56,275
How do we do that?

291
00:17:56,275 --> 00:18:00,835
In theory, it would be enough to pick a
transfer function for the filter E, which

292
00:18:00,835 --> 00:18:04,815
is just a reciprocal of the equivalent
transfer function of the channel.

293
00:18:04,815 --> 00:18:07,775
But the problem is that we don't know
the transfer function of the channel in

294
00:18:07,775 --> 00:18:10,875
advance because each time we
transmit data over the channel,

295
00:18:10,875 --> 00:18:13,100
this transfer function may change.

296
00:18:13,100 --> 00:18:17,290
And also, even while we're transmitting
data, the transfer function might change

297
00:18:17,290 --> 00:18:23,190
because it is a physical system that might
be subject to drifts and modifications.

298
00:18:23,190 --> 00:18:24,750
So what do we do?

299
00:18:24,750 --> 00:18:28,160
We need to use adaptive equalization.

300
00:18:28,160 --> 00:18:32,340
For the filter to compensate for
distortion introduced by a channel is

301
00:18:32,340 --> 00:18:38,860
called an equalizer and what we want
to do is to change the filter in time.

302
00:18:38,860 --> 00:18:42,980
So change the filter coefficients
in a DSP realization

303
00:18:42,980 --> 00:18:47,470
as a function of the error that we
obtain when we compare the output

304
00:18:47,470 --> 00:18:51,510
of the filter with the signal
that we would like to obtain.

305
00:18:51,510 --> 00:18:56,670
In our case, the signal that we would
like to obtain is the transmitted signal.

306
00:18:56,670 --> 00:19:01,810
And so we take the received signal,
we filter it with the equalizer, we

307
00:19:01,810 --> 00:19:06,780
look at the result, we take the difference
with respect to the original signal.

308
00:19:06,780 --> 00:19:08,150
And we use the error,

309
00:19:08,150 --> 00:19:13,340
which should be zero in the ideal case,
to drive the adaptation of the equalizer.

310
00:19:13,340 --> 00:19:14,370
But wait.

311
00:19:14,370 --> 00:19:18,560
How do we get the exact transmitted
signal at the receiver?

312
00:19:18,560 --> 00:19:19,730
Well, we use two tricks.

313
00:19:19,730 --> 00:19:21,650
The first one is bootstrapping.

314
00:19:21,650 --> 00:19:25,960
The transmitter will send a pre-arranged
sequence of symbols to the receiver.

315
00:19:27,090 --> 00:19:30,970
So let's call this
sequence of symbols at(n).

316
00:19:30,970 --> 00:19:36,050
This gets modulated and
generates a passband signal s(n).

317
00:19:36,050 --> 00:19:40,880
Now, at the receiver,
the sequence at(n) is known.

318
00:19:40,880 --> 00:19:44,917
And the receiver has an exact
copy of the modulator,

319
00:19:44,917 --> 00:19:47,865
of the transmitter inside of itself.

320
00:19:47,865 --> 00:19:54,744
So the transmitter can generate locally
an exact copy of the passband signal s(n).

321
00:19:54,744 --> 00:19:57,972
And so for
the bootstrapping part of the adaptation,

322
00:19:57,972 --> 00:20:00,914
we actually have an exact
copy of the transmitted

323
00:20:00,914 --> 00:20:06,280
passband signal that we can use to drive
the adaptation of the coefficients.

324
00:20:06,280 --> 00:20:09,860
The train of sequence is just long
enough to bring the equalizer to

325
00:20:09,860 --> 00:20:10,930
a workable state.

326
00:20:10,930 --> 00:20:14,110
For the handshake procedure that
we saw in the video before, for

327
00:20:14,110 --> 00:20:16,970
instance, this would correspond
to the moment where the receiver

328
00:20:16,970 --> 00:20:19,880
starts demodulating the four-point QIM.

329
00:20:19,880 --> 00:20:22,960
At that moment,
the receiver will switch strategy and

330
00:20:22,960 --> 00:20:25,240
implement a data driven adaptation.

331
00:20:26,330 --> 00:20:27,600
The thing works like this.

332
00:20:27,600 --> 00:20:31,530
The received signal gets equalized,
gets demodulated,

333
00:20:31,530 --> 00:20:36,880
and then the slicer will recover
the sequence of transmitted symbols.

334
00:20:36,880 --> 00:20:40,560
Since the receiver has a copy of
the transmitter inside of itself,

335
00:20:40,560 --> 00:20:43,180
it can use the sequence
of transmitted symbol

336
00:20:43,180 --> 00:20:46,540
to build a local copy of
the transmitted signal.

337
00:20:46,540 --> 00:20:51,082
Now, of course, errors might
happen in the slicing process, and

338
00:20:51,082 --> 00:20:54,420
so this local copy is not
completely error free.

339
00:20:54,420 --> 00:20:59,069
But the assumption is that the equalizer
is doing already enough of a good job to

340
00:20:59,069 --> 00:21:02,745
keep the number of errors in
this sequence sufficiently low.

341
00:21:02,745 --> 00:21:07,603
So that the difference with respect to
the received signal is enough to refine

342
00:21:07,603 --> 00:21:09,845
the adaptation of the equalizer and

343
00:21:09,845 --> 00:21:13,970
especially to track the time
varying conditions of the channel.

344
00:21:15,360 --> 00:21:18,280
What we have seen is just
a qualitative overview of

345
00:21:18,280 --> 00:21:20,250
what happens inside of a receiver.

346
00:21:20,250 --> 00:21:24,970
And there are still so many questions that
we would have to answer to be thorough.

347
00:21:24,970 --> 00:21:28,770
For instance, how do we carry out
the adaptation of the coefficients in

348
00:21:28,770 --> 00:21:30,140
the equalizer?

349
00:21:30,140 --> 00:21:31,660
How do we compensate for

350
00:21:31,660 --> 00:21:37,400
different clock rates in geographically
diverse receivers and transmitters?

351
00:21:37,400 --> 00:21:41,330
How do we recover from the interference
from other transmission devices?

352
00:21:41,330 --> 00:21:44,350
And how do we improve
the resilience to noise?

353
00:21:44,350 --> 00:21:48,130
The answers to all those questions
require a much deeper understanding

354
00:21:48,130 --> 00:21:50,210
of adaptive signal processing.

355
00:21:50,210 --> 00:21:53,358
And hopefully that will be the topic
of your next signal processing class.

