Professional Documents
Culture Documents
Technology
3
3
4
5
7
8
10
12
13
14
1 - Definition
16 PSK is a digital modulation scheme that conveys data by changing, or
modulating, the phase of a reference signal (the carrier wave).
16 PSK uses 16 points on the constellation diagram (4 identical constellations
rotate an angle of
), equispaced around a circle , 16 PSK can encode 4 bits per
symbol, shown in the diagram with Gray coding to minimize the bit error
rate(BER)
15
1111
1000
= Energy-per-bit
= Energy-per-symbol =
with n bits per symbol
= Bit duration
= Symbol duration
No/2 = Noise power spectral density (W/Hz)
= Probability of bit-error
= Probability of symbol-error
Q(x) - give the probability that a single sample taken from a random process
with zero-mean and unit-variance Gaussian probability density function will
be greater or equal to x It is a scaled form of the complementary Gaussian
error function
( )
A-
( )
with
( | )
To derive the symbol error rate, the objective is to find the probability that
the phase of the received symbol lies within this boundary defined by the
magenta lines i.e. from
to
.
For simplifying the derivation, let us make the following assumptions:
(a) The signal to noise ratio, Es/No is reasonably high.
The
( )
The symbol
. ( )
. //
. /
. ( )
we get
. //
( ))
. /
( )-
causes the symbol to fall in the adjacent symbol bin. Now thanks to the Gray
coded mapping, even if the symbol goes into the adjacent symbol there will be
only 1 bit in error from the
error is,
Note:
For very low symbol to noise ratio, the noise can cause the symbol to fall into the
non-adjacent symbol bin. This may cause more than 1 bit error for each symbol
error. However, we can ignore this case considering that we are interested only in
reasonably high values of symbol to noise ratio
So , for M = 16, we have : k=
4- MATLAB program:
1) Symbol
error
rate
)-
for ii = 1:length(Es_N0_dB)
% symbol generation
% -----------------ipPhase = randsrc(1,N,thetaMpsk);
ip = exp(j*ipPhase);
s = ip; % normalization of energy to 1
% noise
% ----n = 1/sqrt(2)*[randn(1,N) + j*randn(1,N)]; % white guassian noise, 0dB variance
y = s + 10^(-Es_N0_dB(ii)/20)*n; % additive white gaussian noise
% demodulation
% -----------% finding the phase from [-pi to +pi]
opPhase = angle(y);
% unwrapping the phase i.e. phase less than 0 are
% added 2pi
opPhase(find(opPhase<0)) = opPhase(find(opPhase<0)) + 2*pi;
% rounding the received phase to the closest
% constellation
ipPhaseHat = 2*pi/M*round(opPhase/(2*pi/M)) ;
% as there is phase ambiguity for phase = 0 and 2*pi,
% changing all phases reported as 2*pi to 0.
% this is to enable comparison with the transmitted phase
ipPhaseHat(find(ipPhaseHat==2*pi)) = 0;
% counting errors
nErr(ii) = size(find([ipPhase- ipPhaseHat]),2); % couting the number of errors
end
simBer = nErr/N;
theoryBer = erfc(sqrt(10.^(Es_N0_dB/10))*sin(pi/M));
close all
figure
semilogy(Es_N0_dB,theoryBer,'bs-','LineWidth',2);
hold on
semilogy(Es_N0_dB,simBer,'mx-','LineWidth',2);
axis([0 25 10^-5 1])
grid on
legend('theory', 'simulation');
xlabel('Es/No, dB')
ylabel('Symbol Error Rate')
title('Symbol error probability curve for 16-PSK modulation')
5a).Simulation results
10
11
grid on
legend('theory', 'simulation');
xlabel('Eb/No, dB')
ylabel('Bit Error Rate')
title('Bit error probability curve for 16-PSK modulation')
5b - Simulation Result:
12
Reference
1.
2.
3.
13
Remark: If we only look at the figure from Matlab simulation, we cant see
clearly the different between the Theoretical and Simulation results when n is
significant or negligible (when calculate Ps above, we assumed
).
An Important thing is the y-axiss unit is divided into different value per section ,
i.e:- 10^-5 10^-4 = 0.00001/section
-
So, Ive made a zoom on Matlab results and take note the difference on the
table below
Comparison between Theoretical and Simulation result by Calculation
Table 1. Symbol Error Rate (Ps)
12
16
20
7.2
1.52
1.13
0.63
0.19
0.14
24
Theory
Simulate
Different
(*
)
14
0.003
12
16
25
2.2
0.1
0.016
0.012
Theory
Simulate
Different
(*
)
15