Hi, and welcome to module 9.2 of digital signal processing.
We are talking about digital communication systems, and in this
module, we will talk about how to fulfil the bandwidth constraint.
The way that we're going to do this is by introducing an operation called
upsampling. And we will see how upsampling will allow
us to fit the spectrum generated by the transmitter onto the band allowed for by
the channel. Remember that our assumption is that the
signal generated by the transmitter is a wide sequence.
And therefore, it's spiral spectral density will be full band.
What we need to do is to shrink the support of it's spiral spectral density
so that it fits on the band allowed by the channel.
The way we do this is by using multirate techniques.
In multirate, the goal is to increase or decrease the number of samples of a
digital signal. One way to do this is to interpolate the
digital signal into a continuous time signal.
And then resample the interpolation at a different sampling rate.
However, we want to avoid the transition to discrete time, and we want to perform
this aritficial change of sampling rate entirely in the digital domain.
Let's consider the up sampling operation, which is really what we're interested in.
And let's look at how to do this, going through an interpolation and resampling
operation first. So we have a discrete time signal here,
we interpolate with the given period Ts. We obtain a continuous time signal and
then we sample this continuous time signal with a period that is k times
smaller than the original interpolation sample, and we obtain another discrete
times sequence here. Graphically, assume this is our discrete
times signal. The interpolation to continuous time will
give us this and the resampling with a smaller sampling period will give us a
higher density of samples on the same curve so that the resulting upsampled
signal would look like this. Now, we are interpolating to continuous
time, so the choice of the sampling period is completely arbitrary for
simplicity as per usual, which is Ts equal to 1, and here we have that the
interplay signal is given by the standard sync interplay formula.
When we resample, with the period that is 1 over k, k times smaller than the
original, we are taking samples of the interplayed function at n over big K.
And the result Is an interpolation formula, where the sync function now, is
centered at fractional intervals, so n over big K.
In the frequency domain, the process looks like so.
Imagine we have a discreet time signal, whose spectrum is limited to 3 pi over 4.
We interpolate it to continuous time, and we get an analog spectrum that looks like
this, where our nyquist frequency is omega n, equal to pi over Ts.
When we resample, with the sampling period which is k times smaller, that is
equivalent to multiplying nyquist frequency by k.
So we make it bigger and we move it over here.
And when we plot the result in digital spectrum.
We map, as per usual, the nyquist frequency to pi, which corresponds to a
contraction of the frequency spectrum by a factor of K.
If here, we choose k, which is equal to 3.
We get that what was the highest frequency of the spectrum, 3 pi over 4,
now becomes pi over 4. Can we do this completely in the digital
domain? Well the idea is that we need to increase
the number of samples by a factor of K. And obviously the sample sequence will
have to coincide with the original values when the index of the up sample sequence
is a multiple of K. There are several reasons why this is so,
but probably the most intuitive one is that if we then discard the extra
samples, we should be able to obtain the original sequence again.
So for lack of a better strategy, we can start by building a sequence where we put
the original samples, every K samples and then we put zeros everywhere else in
between. So for example, for k equal to 3, the
upsample sequence, say this is m equal to 0, will be equal to x0 and m equal to
zero. Then we put two zeros, then we put x1,
then we put two zero, then we put x2, and then we put two zeroes.
We can see this in the time domain start with the same sequence that we showed
before. And what we are doing, we're simply
introducing zeroes between each stamp. With this choice, the Fourier transform
of the upsample sequence is rather easy to compute.
We just write out the standard DTFT formula, but now here, we remember that
xu of m will be equal to zero every time that m is not a multiple of K.
And so with this, we can simplify the sum and use only the known zero terms.
And we get the sum from n that goes to minus infinity to plus infinity of x of
n, which is our original sequence, that multiplies e to the minis j, omega nK.
And so, this is simply a scaling of the frequency axis by a factor of K.
Graphically, we can plot the digital spectrum and we know that now, since
we're multiply the frequency access be a factor of K, there will be a shrinkage of
the frequency access like this. But we should never forget that the
digital spectrum is 2 pi periodic. So lets plot this explicitly, for minus 5
pi to 5 pi. If we choose k equal to 3, we're mapping
the interval from minus 3 pi to 3 pi back onto the minus pi, pi interval.
And when we do that, we get something that is very close to what we obtained
going through the analog domain. In the sense that this frequency here is
again pi over 4. But, we have extra copies that have crop
in the main frequency interval. Now, we know what to do in this cases, we
apply some drastic low pass filter to get rid of them.
We choose an ideal low-pass filter with cutoff frequency pi over K, because this
is where the original pi in the frequency spectrum would be mapped to.
And this will get rid of the extra copies, and leave us with a spectrum that
is identical to what we obtain using an interpolator followed by a sampler.
So now let's look at the procedure back in the time domain.
So the first step is to insert K minus 1 zeros after each sample, followed by an
ideal low-pass filter. And we choose the cutoff frequency for
the filter to be pi over K as we saw in the previous graph.
So now, the resulting sequence is simply the convolution of the upsampled sequence
with zeroes. And the impulse response of the filter
that, with this cutoff frequency will be simply sink of n over K.
And if we work out the convolution sum, we have this summation here.
But again, we remember that of these terms, only 1 every K will be non zero.
So we replace i with mK, and we sum over m.
And we get the sum for m that goes to minus infinity to plus infinity of x of
m, sync of n over K minus m. Which is exactly the same formula we got
using an interpolator and a sample. As we've mentioned before, if we have an
upsampled sequence we can always recover the original sequence by downsampling,
which means we keep only one sample out of k and throw away the rest.
Now, this is obvious in the case of an upsample sequence where we just introduce
K minus 1 zeroes every sample, but it is also true for a filtered sequence where
we used an ideal filter. Or any other filter that fulfills the
interpolation properties that we have seen in module 6.
In other words, we want impulse response to be equal to 1 for n equal to 0, and to
be equal to 0, for all multiples of K. In general, downsampling is a more
complex operation that upsampling, just like sampling is more complicated than
interpolation. We have the pesky problem of aliasing,
because we are throwing away information. We will not develop the properties of the
downsampling operator in detail because we will not need it in the following.
But you're encouraged to read about multirate signal processing in the book.
So let's go back to the bandwidth constraint, as you remember the channel
imposes that we only use frequencies between Fmin and Fmax.
We also want to translate these requirements into the digital domain.
So we choose a sampling frequency and Fs over two, half of our sampling frequency
will be our nyquist frequency in the analog domain.
Now, here's a new trick. Compute the positive bandwidth.
Namely, the width of the channel bandwidth on the positive axis, and call
that W. Now, pick the sample frequency so that
two things happen. First of all, the sample frequency will
have to be at least twice the maximum frequency that we can use in the channel
to avoid aliasing. But then, we choose the sample frequency
as an integer multiple of the positive bandwidth.
So we say that Fs is equal to KW for K a positive integer.
With this choice when we translate the analogue specifications into digital
domain and remember the formula is always the same, 2 pi F over Fs.
What happens is that the bandwidth in visual domain will be 2 pi W divided by
Fs which is equal to 2 pi over K and so. We can simply upsample the symbol
sequence by k so that it's bandwidth will move from two pi to two pi over k and
therefore, it's width will fit on the band allowed for on the channel.
Now, upsampling does not change the data rate, because we're creating a sequence
of symbols. From the user data bitstream and then we
are introducing the zeros between samples.
So, we are not introducing extra information.
So, we produce and transmit W symbols per second and then we have sampled that by K
to achieve a sample rate which is equal to the sample of frequency.
W, therefore is the fundamental data rate of the system and sometimes it's called
the baud rate of the system. A golden rule for digital communication
systems is that the baud rate will be equal to the positive bandwidth allowed
by the channel. So here is our revised baud diagram for
the transmitter. User data comes in as a bit stream.
The Scrambler makes sure that we have a random sequence of symbols.
The mapper will create, the random sequence of symbols.
We upsample the sequence by K. We filter this with a low pass filter
with cutoff frequency pi over K, and we obtain base band signal b of n, which is
centered in 0, and extends from minus pi over K to pi over K.
Now, we need to move this base band signal, to the pass band of the channel.
And to do so, we modulated with a cosine carrier.
This frequency is the center frequency of the channel's band.
This pass band signal s of n can now be converted to the analog domain, before
being transmitted over the channel. Graphically, assume these are the
specifications dictated by the channel and translated to the digital domain.
So here we have the positive bandwidth, and the negative bandwidth.
The sequence of symbols generated by the mapper, is a wide sequence and therefore,
inspires spectral density Pa of e to the j omega, is a full band signal.
Now when we upsample this sequence by a factor of k, we reduce its spectral
support, to a baseband signal that goes from a minus pi over K, 2pi over K.
And then, we modulate this with a cosine carrier, to fit it onto the bands that
are available on the channel. As a final note, since we are developing
a completely digital transmission system, we will probably want to use FIR filters
in its implementation. Now, we know that the sync filter that we
have used in the upsampling operator Will be a notoriously difficult filter to
approximate with an FIR. So what is used in practice is another
type of filter called a raised cosine. The frequency response of the raised
cosine is shown here in this picture, and you can see that the transition band is
no longer a discontinuity. But it is actually a smooth transition
from past band to star band as a matter of fact a raised cosine has a parameter
that you can tune to have an even gentler transition then.
Now, the raised cosine remains an ideal filter because you can see it is constant
over the pass band, and the stop band. But it is much easier to approximate than
the sync. Another good property of the raise
cosine, is that it fulfills the interpolation property that we need to do
upsampling. And the final selling pointing, is that
the impulse response, it can be shown decays as 1 over n cubed.
So even short FIR approximations can get a very good response.
[BLANK_AUDIO]