Hi and welcome to Module 9.6 of Digital Signal Processing.
This is our last module in our Data Communications section, and with
everything that we've learned so far we will be able to look inside an ADSL modem
and see how that works. We will start by examining the nature of
the channel. That ABSL works on.
Namely the copper wire links your home to the nearest central office.
We will look at the signaling strategy that is best put on place on such a
channel. And finally we will look at a very
efficient implementation of that signalling strategy that goes under the
name of discrete multi-tone modulation. If we just take an abstract view of the
telephone network today, we see that we have a link that goes.
From the home to the central office, and in the central office, a fundamental
split takes place. The voice communication, when you talk on
the phone, is sent to the voice network and then relayed to the, what is called
the plain old telephone system, POTS. The data part of your communication when
you use the ADSL is separated from the voice content and sent to a DSLAM.
DSLAM stands for digital subscriber line access multiplier.
And it's fundamentally a bank of modems that manage to handle multiple
communications at the same time. And the data here then goes on to the
internet in digital format. So, if you want, what we're really
interested in is how to send the data from your home to the central office,
because what happens afterwards is already entirely in the digital domain.
But here, we have what is called a last mile, a piece of copper wire, namely an
analog channel. That connects your home to the central
office. Now a copper wire has, naturally, a very
large bandwidth in excess of one 1MHz. But because of the width of the bandwidth
and because the wire is not shielded, it is actually likely to pick up a lot of
interference and noise. If we look at how the ADSL channel is
organized and we're showing here just the positive frequencies.
We can see three distinct regions. The first one is the part reserved to the
telephone conversation, this is the base band part of the channel up to about four
kilohertz. Then we have a region that is devoted to
the upstream part of the data communication, the data that you send up
to the internet, and then a downstream part that is much larger that is used for
data download. This asymmetry between upstream and
downstream is actually the reason why the communication protocol is called ADSL.
ADSL stands for Asymmetric Digital Subscriber Line.
If we now look at all the nasty things that can happen on the channel when we
send data. We can identify three fundamental sources
of worry. The first one is an attenuation curve for
the channel that is completely uneven. This could be due to imperfection in the
wire, parasitic capacitance, and so on, so forth.
Then we might have very large noise or interference in certain regions of the
spectrum. For instance, you turn on your vacuum
cleaner, and that raises the noise floor in the certain frequency band.
And thirdly we have very localized interference from radio communications
now the radio band starts well within the bandwidth of the ADSL channel for
instance from 15 to a hundred kilohertz here you have ship to shore
communication. Up to 500 kilohertz, you have airplane
communication, and over 500 kilohertz you have the AM radio band.
So if you live near a radio station, for instance, tough luck.
You have a lot of interference in the upper regions of the ADSL band.
Since the channel is so wide, and the type of disturbances is so diverse, it
would be extraordinarily difficult to try to equalize and compensate for this
problems on a global scale. So the ideal, instead, is to divide the
channel into independent sub channels. And create each sub channel separately.
So here for instance, this channel contains, highly localized, radio
frequency interference would not probably be used because it would be to difficult
to compensate for that. Here on these channels the noise level is
different and so for instance we can use different signalling strategy according
to the local signal to noise ratio. And similarly here for channels that have
a very large attenuation, probably wouldn't be worth while to try and send
data over these thins. But on the other hand that we will try to
exploit the cleanest sub channels to send maximum amount of data.
Now to formalize the sub channel structure.
Suppose that we want to allocate N subchannels over the total positive
bandwidth. We want the subchannels to have equal
bandwidth, so their bandwidth will be F max over N, where F max is the maximum
frequency allowed for by the channel. And we equally space the subchannels, by
sensoring them over k F max over N, with k that goes from 0 to big N minus 1.
This means that the first channel K equal to 0, will be bass-band.
And then the subsequent channels will be bass-band, with center frequencies given
by this formula. Now we want to translate this design, to
the digital domain, so we pick a sampling frequency that is at least twice the
maximum frequency in the channel. But careful now, because Fmax is quite
high. The center frequency for each sub channel
will be omega K equal to 2 pi kFmax over N divided by the sampling frequency.
And if we sample at the[UNKNOWN] frequency, so Fs is equal twice Fmax,
then omegak becomes simple 2 pi over 2N times k.
We will not simplify the 2's in the fraction, because they will be useful
later. The bandwidth of each subchannel, is also
2 pi over 2N. And so, if we want to send symbols over
any of these subchannels, remember the modulation scheme that we've seen in the
previous modules, then we will have to use an up-sampling factor, k, that is at
least 2N. If we plot the result in visual domain.
Let's suppose that we just want to have three sub-channels, we have something
that looks like this. The center frequencies will be multiples
of 2 pi over 6, so we'll have 0. 2 pi over 6 and 4 pi over 6 and we will
center channels over these frequencies and the band width of each channel will
be 2 pi over 6. So the 1st channel is the base band
channel and then we have two pass band channels with of course their negative
frequency counterpart. The next step in ADSL communication is to
put a QAM modem on each subchannel independently and we will decide on the
data rate for each modem. Based on the signal to noise ratio of
each sub channel. So if the noise floor is low, then we
will have a large constellation for that sub channel and vice versa.
On channels that are unusable because of noise or interference, we will just send
zeroes and we will not care about that. The structure of the SQL scheme is of
course going to be communicated From the transmitter to the receiver so that the
receiver knows where to expect data. This is part of the handshaking procedure
between transmitter and receiver. Now let's look more in detail at the
structure of the modem that we use on each sub-channel.
This is a classic modulation scheme where we start with a sequence of symbols as
produced by the mapper. Then we have an up-sampling by a factor
of 2 N. So inserting two n minus one zero's every
other sample and then filtering the sequence with a low pass, usually a
raised cosine, with a cutoff frequency two pi over two n, in this case.
This produces the complex base band signal bk of n and this.
Complex baseband signal gets modulated with a complex exponential whose
frequency is indexed by the channel number.
And this is the center frequency of each channel.
Omega ck is equal to 2pi over 2n times k. And here we have, finally, the pass band
signal. That fits the prescribed bandwidth of the
kth channel. And normally, if we just had one channel,
we would put here a block that computes the real part and then our d2a converter.
But here we have several modems in parallel.
And so we have a structure that looks like this.
Each channel will have two things that vary with respect to the others: the
frequency of the modulation and of course, the series of symbols produced by
the mapper. We sum all the complex base band signals
together before taking the real part, and then send in the signal To the D to A
converter. Now this picture should ring a bell.
An indeed we have seen something that was very very close to this back in module
4.3. So here's the picture to jog your memory
and remember that DFT reconstruction formula could be interpreted as.
A bank of n oscillators. Each oscillator would operate at a
frequency that was two pi over n times k. And we would scale each oscillator with
an amplitude, a of k, and with a phase offset, five k.
We would run this machine for big n samples.
And we will get our signal out. Now, the difference between this scheme
and what we just saw is fundamentally that, in this scheme, a of k and phi of k
are kept constant for the whole duration of the generation process.
So while n goes from zero to big n minus one, a of k and phi of k stay the same.
Whereas in the modem scheme that we seen before.
The symbol sequence which is a complex symbol sequence so embeds both magnitude
and phase will change at each new value of n.
So is there a way to map the modem structure to the inverse DFT structure?
We can do that if we manage to find a way to keep the symbols constant over the
whole duration. So we will show how to do that and we
will show that if we manage to do that, then ADSL transmission can be efficiently
implemented with simple an inverse FFT. The name of this technique is discrete
multitone modulation. So the great ADSL trick is very simple.
Instead of using a[INAUDIBLE] sign in the up sampler, let's use a bad filter.
Simply the indicator function for the interval 0 to 2n-1 and see what happens.
So the impulse response of the upsampling filter is now this one.
And please notice that this is just an un-normalized moving average filter and
the frequency response of course is this one, we have seen it many times before.
With the first 0 here in pi over N. If we compare the frequency response of
the moving average if you want, or the indicator function with that of the
filter that we should be using, namely a low pass filter with cut of pi over 2N.
Then we see that the performance of the filter is not very good.
Nonetheless, the thing will work, especially thanks to some clever little
tricks in the way we choose the transmission symbols.
But we will not have time to go into that.
So let's go back to the subchannel modem. The thing to remark here is that the
symbols from the mapper. Come in at a rate of B symbols per
second. And because of the upsampling, samples
out of the modulator, come out at a rate of 2NB samples per second.
So this part works much faster than this part here.
Now the carrier, is periodic with period 2N.
And so, each symbol Will influence a full period of the carrier.
If we use a standard low pass filter here, for every value of n here, so for
every value of the carrier there will be a different value in this Base band
sequence that comes out of the sample. On the other hand if we use the indicator
function as the input response the net result is that the values of bk of n will
be constant over chunks of 2N samples. In that case we can simplify this whole
scheme like so where now the only clock in the system is the output clock N.
So now the oscillator in the modulator. Runs freely, at a frequency which is a
multiple of 2 pi over 2N. This frequency is periodic, with period
2N, so. And for each chunk of 2N samples, we go
look for the symbol. The corresponds to this interval so if
say n is equal to 0 here, n is equal to 2n here, n is equal to 4n here and n is
equal to 6n here for this interval we will go look for a of zero and multiply
this portion of the carrier by this value.
Able to look for a one, here a two, and so on and so on.
So with this simplification, the whole transmitter can be sketched like so.
We have the symbols from different sub channels that get multiplied by the
carrier and kept constant over intervals of two and outward samples.
The whole thing gets summed together. We get the aggregate bandpass signal, we
take the real part, and we're ready for the D2A converter.
We can now write explicitly, the formula for the aggregate bandpass signal c n.
And this is the sum over all subchannels, of the symbol For that subchannel for
that interval, multiplied by e to the j two pi over two n, nk.
Now because of the way the index to the ak sequence is computed, these symbols
will stay constant over intervals for the output index.
That are 2n long. So for instance, for small n that goes
from 0, to 2n minus 1, these values will stay constant.
And again, for values of the output index that g from 2n.
2, 4 and minus 1. So we could compute two big N values for
the sequence CN in one fell swoop if we exploit the fact that this guy looks
remarkably like an inverse DFT. As a matter of fact, by looking at the
argument here, we can say that this is almost an inverse DFT over two big end
points. The two things that are missing are the
normalizing factor in front, 1 over 2N And the terms in the sum for the index k
that goes from n to 2n minus 1. But that's not a problem.
We can supplement this elements. And so we can compute a chunk of two big
n output samples in one go as an inverse dft over two n points of a vector that is
given by n channel symbols. And has another big n zeros appended to
the end of it. The index for the subchannel symbols is
given by the value of the output index divided by 2 n and we take the integer
part. But we can do even better because in the
end, remember, we're interested in the real part of the vector c of n.
And we can write that real part as c of n plus the conjugate of c of n divided by
2. Now it is easy to prove, and it's left as
an exercise, that the conjugate of the inverse DFT of a vector, is equal to the
inverse DFT of the conjugate of the time reversed vector.
And, when we time reverse a finite length vector It's useful to think of the
periodic extension. With this result and knowing that c of n
is equal to 2n times the inverse DFT of a vector that is zeros in its latter part.
We can sum cn with it's conjugate to obtain that the real part of cn is equal
to N times the inverse DFT of a vector that is given by twice the symbol for the
base band sub channel. The reason why we can write this is
because the baseband signal will always have real value symbols, because it's a
baseband, followed by the complex symbols for the n minus one remaining
subchannels, followed by The conjugate of the symbols, for the N minus 1 remaining
subchannels, but going from channel N minus 1, to channel 1.
Schematically, we can draw up the ADSL transmitter, as one big inverse FFT, and
the inputs to this FFT are twice the baseband symbol.
Followed by the symbols for the subchannels from one to n minus one, and
then we take these values, we conjugate them, and we flip their order, and we put
those in the remaining inputs of the FFT. Now we run the inverse FFT and we get two
n output samples in one go. We use a parrel to serial device to
output the samples one at a time and here we have our d to i converter to put them
on the channel. Once the n samples have been put out we
go back, we fetch another set of n symbols from the n mamppers of the sub
channels. Then we repeat the process.
An actual ADSL modem uses a maximum frequency for the channel of 1004
kilohertz divides this channel in to 256 sub-channels.
Each QAM modem for the sub-channel. Can independently choose between zero and
fifteen bits per symbol. Now the first seven channels are left off
because that is the band used by the voice communication over a telephone
channel. Channels seven through 31 are used for
data upstream. And the rest is left for data downstream
for a maximum theoretical throughput of 14.9 megabits per second.
This would happen if all the downstream sub channels could use their maximum
theoretical rate Which is a rare occurrence.
And these are the specs of the on-line modem that you most probably used to
watch this on-line class.