Generalization to Higher Order Pulse Amplitude Modulation
Page 1 | Page 2
It is easy to generalize to a
level Pulse Amplitude Modulation scheme, known as M-ary Pulse Amplitude
Modulation (where ). This
merely involves allowing the coefficients in the waveform to take
on
equally spaced values. Each value then represents a sequence of
bits. Here is a function that generates the set of amplitudes needed
for M-ary Pulse Amplitude Modulation.
![[Graphics:../Images/logos_gr_33.gif]](../Images/logos_gr_33.gif)
As an example we consider .
The amplitudes needed are,
![[Graphics:../Images/logos_gr_35.gif]](../Images/logos_gr_35.gif)
![[Graphics:../Images/logos_gr_36.gif]](../Images/logos_gr_36.gif)
In this case each pulse will transmit a sequence of two bits.
We need to change a data sequence into the appropriate amplitudes.
This can be done easily with substitution rules. First we show how
to do this with an example, then we build a function from what we
have learned. First a sample data sequence:
![[Graphics:../Images/logos_gr_37.gif]](../Images/logos_gr_37.gif)
![[Graphics:../Images/logos_gr_38.gif]](../Images/logos_gr_38.gif)
Now partition the data into pairs of bits.
![[Graphics:../Images/logos_gr_39.gif]](../Images/logos_gr_39.gif)
![[Graphics:../Images/logos_gr_40.gif]](../Images/logos_gr_40.gif)
We assign symbols according to Gray Encoding whereby the
bit sequence of adjacent symbols differs by at most one bit.
![[Graphics:../Images/logos_gr_41.gif]](../Images/logos_gr_41.gif)
![[Graphics:../Images/logos_gr_42.gif]](../Images/logos_gr_42.gif)
For a baseband QPAM (Quaternary Pulse Amplitude Modulated) waveform
the amplitudes are assigned according to the Gray Encoding used
above. Here is a function that creates the QPAM waveform corresponding
to a user supplied bit sequence.
![[Graphics:../Images/logos_gr_43.gif]](../Images/logos_gr_43.gif)
Here is a version where a random bit sequence is generated that
is nBits long.
![[Graphics:../Images/logos_gr_44.gif]](../Images/logos_gr_44.gif)
This is the waveform for a random bit sequence as a function of
time (we only have to plot it out to
since there are two bits transmitted for each symbol).
![[Graphics:../Images/logos_gr_46.gif]](../Images/logos_gr_46.gif)
![[Graphics:../Images/logos_gr_47.gif]](../Images/logos_gr_47.gif)
As in the BPAM case above we can build the eye diagram. Here is
the function that makes an eye diagram from a random bit sequence
that is nBits long.
![[Graphics:../Images/logos_gr_48.gif]](../Images/logos_gr_48.gif)
And here is the version that takes a user supplied bit sequence.
![[Graphics:../Images/logos_gr_49.gif]](../Images/logos_gr_49.gif)
Here is an example of the eye diagram.
![[Graphics:../Images/logos_gr_50.gif]](../Images/logos_gr_50.gif)
![[Graphics:../Images/logos_gr_51.gif]](../Images/logos_gr_51.gif)
As in the BPAM case, let's look at the eye diagram for different
values of the
parameter in the raised cosine pulse. First generate a random bit
sequence.
![[Graphics:../Images/logos_gr_53.gif]](../Images/logos_gr_53.gif)
Now show the eye diagrams for this particular bit sequence for
.
![[Graphics:../Images/logos_gr_55.gif]](../Images/logos_gr_55.gif)
![[Graphics:../Images/logos_gr_56.gif]](../Images/logos_gr_56.gif)
The helpful effects of the increase in excess bandwidth with increasing
is evident from these graphs.
|