(1 votes, average: 4.00 out of 5)

A generic simulation technique to simulate all M-PSK modulation techniques (for upto M=32) is given here. The given simulation code is very generic, and it plots both simulated and theoretical symbol error rates for all M-PSK modulation techniques (upto M=32).

M-PSK Modulation and simulation methodology:

The general expression for a M-PSK signal set is given by

$\dpi{120} {\color{DarkBlue}s_i \left( t \right)=V cos \left[ 2 \pi f_c t \; – \; \frac{ \left( i - 1 \right) 2 \pi }{M}\right] \;\;\; \text{ where i = 1,2,…,M} \;\; \rightarrow (1) }$

Here M defines the number of constellation points in the constellation diagram and essentially the M-PSK type. For example M=4 implies 4-PSK or QPSK, M=8 implies 8-PSK. The value of M depends on another parameter ‘k’ – the number of bits we wish to squeeze into a single M-PSK symbol. For example if we wish to squeeze in 3 bits (k=3) in one transmit symbol, M = 2^(k) = 2^(3) = 8. This gives us 8-PSK configuration.

Equation (1) can be separated into cos and sin terms as follows

$\dpi{120} {\color{DarkBlue}s_i(t) = V cos \left[ \frac{(i-1)2\pi}{M} \right] cos(2 \pi f_c t) \; + \; V sin \left[ \frac{(i-1)2\pi}{M} \right] sin(2 \pi f_c t) \rightarrow \;\;\;(2) }$

This can be written as

$\begin{matrix} s_i(t) = s_{i1}\phi_{1}(t) + s_{i2}\phi_{2}(t) \;\; \rightarrow (3)\\ where,\\ \\ s_{i1} = \sqrt{E_s}\; cos \left[ \frac{(i-1)2\pi}{M} \right] \;,\; s_{i2} = \sqrt{E_s}\; sin \left[ \frac{(i-1)2\pi}{M} \right]\\ \\ \phi_{1}(t) = \frac{V cos(2\pi f_c t)}{\sqrt{E_s}},\phi_{2}(t) = \frac{V sin(2\pi f_c t)}{\sqrt{E_s}}\end{matrix}$

Here $\phi_{1}(t)$ and $\phi_{2}(t)$ are orthonormal basis functions that follows from Gram-Schmidt orthogonalization procedure and $s_{i1}$ and $s_{i2}$ are the coefficients of each signaling point in the M-PSK constellation. $E_s$ is the symbol energy usually normalized to $1/\sqrt{2}$ The constellation points on the M-PSK constellation lie $2 \pi /M \;$ radians apart and are placed on a circle of radius $\sqrt{E_s}$. The coefficients si1 and si2are termed as inphase (I) and quadrature-phase (Q) components respectively.

Figure 1: Constellation digram for MPSK with M=8

The ideal constellation diagram for M-PSK contains M equally spaced signaling points that are located at the distance $\sqrt{E_s}$ from the origin. Figure 1 illustrates the ideal constellation diagram for 8-PSK constellation.

The generated I and Q components are then added with AWGN noise of required variance depending on the required Es/N0. The received signal’s constellation is corrupted with noise and the detection is based on comparing the received symbols with the ideal signaling points and making a decision based on the minimum distance.

Finally the simulated and theoretical symbol error rates are computed.

The theoretical symbol error rate [1] for M-PSK modulation is given by

\dpi{120} {\color{DarkBlue} \begin{align*} P_s &= 2Q\left[\sqrt{2E_s} \; sin\left(\frac{\pi}{M}\right)\right] \\ &= erfc\left [ \sqrt{E_s} \; sin\left(\frac{\pi}{M}\right)\right ] \end{align*} \;\;\;\;\; \rightarrow(4) }

Matlab Simulation:

File 1: simulateMPSK.m

Check this book for full Matlab code.
Simulation of Digital Communication Systems Using Matlab – by Mathuranathan Viswanathan

Simulation Result:

Figure 2:Performance curves for MPSK