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.