# Generating QPSK Constellation Diagram

I was wondering how a diagram like this is generated.

I am generating a QPSK signal using MATLAB by taking a cos and sin wave, multiplying each one by either 1 or -1 and adding them together to form a real valued QPSK signal. I then simulate an AWGN channel and send it to my demodulator. I mix it down using another cos and sin wave plus Low Pass Filter to get my recovered I and Q data. At this point I am left with the baseband which I can recover my data from by taking the angle of the I and Q components.

I am wondering at what point in that chain I could generate a the plot I post above.

Thank you

• It looks like a QPSK signal that is still at ~2 samples per symbol. If you have a part of your pipeline where you are sampled at around that rate, plot the imaginary part versus the real part and you should get a diagram like the above. – Jason R May 20 '16 at 18:07

This is what I do when making such a plot for a QPSK modulation:

First I upsample the I and Q data so that I can see more of the trajectory between samples given (assuming you start with at least 2 samples per symbol otherwise, due to Nyquist, the information on the trajectory between symbols is not available, but as long as you have 2 or more samples, all the information of what happens in the first Nyquist zone is preserved):

Is = resample(I, 10, 1);

Qs = resample(Q, 10, 1);


and then I make a plot of I vs Q

plot(Is,Qs)


I used a resampling increase of 10, but you could make it higher if desired. The result is the interpolated samples for the full trajectory during symbol transitions.