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.