EVM with phase noise
by Krishna Sankar on July 9, 2012 Analog inShare
The previous post on phase noise discussed about finding the root mean square phase noise for a given phase noise profile. In this post let us discuss about the impact of phase noise on the error vector magnitude (evm) of a transmit symbol.
Error Vector Magnitude due to constant phase offset
Consider a system model introducing a constant phase offset the figure. and thermal noise as shown in
Figure : System model with phase noise and thermal noise The received symbol , where is the phase distortion in radians, is the transmit symbol and is the contribution due to thermal noise Expanding into real and imaginary components, . Representing in matrix algebra, is,
The power of the error vector is,
. Finding the average error over many realizations, . The individual terms can be simplified as, i) as ii) as iii) . iv) , the variance of the noise. and are uncorrelated. .
Applying (i), (ii) , (iii) and (iv), the error term simplifies to
EVM due to random phase offset
The above equation derives the evm when the system is affected by a constant phase offset Assume that the phase is Gaussian distributed with zero mean and variance having a probability density function as, . radians^2
. The conditional error power for a given phase is,
. Computing the average over all realization of phase, . The integral term is, (Note : proof will be discussed in another post)
2
Then the error vector power is,
and the error vector magnitude is,
Using Taylor series, and assuming that the ,
is small,
Figure : Example constellation plot (Es/N0=30dB,
=5 degrees)
Matlab/Octave example
Attached script computes the evm of a QPSK modulated symbol versus Es/N0 for different values of rms phase noise.
% Script for simulating the error vector magnitude (evm) of a QPSK % modulated symbol affected by phase noise and thermal noise
% ---------------------------------------------------------clear;close all; N = 10^5 % number of bits or symbols Es_N0_dB = [15:3:40]; % multiple Eb/N0 values phi_rms_deg_vec = [0:1:5]; for ii = 1:length(Es_N0_dB) for jj = 1:length(phi_rms_deg_vec) % Transmitter ip_re = rand(1,N)>0.5; % generating 0,1 with equal probability ip_im = rand(1,N)>0.5; % generating 0,1 with equal probability s = 1/sqrt(2)*(2*ip_re-1 + j*(2*ip_im-1)); % QPSK modulation n = 1/sqrt(2)*[randn(1,N) + j*randn(1,N)]; % thermal noise phi = phi_rms_deg_vec(jj)*(pi/180)*randn(1,N); % phase noise % Noise addition y = s.*exp(j*phi) + 10^(-Es_N0_dB(ii)/20)*n; % error vector error_vec = (y-s); evm(ii,jj) = error_vec*error_vec'; theory_evm(ii,jj) = 10^(-Es_N0_dB(ii)/10) + 2 - 2*exp((phi_rms_deg_vec(jj)*pi/180).^2/2); end end figure; plot(Es_N0_dB,10*log10((evm/N)),'s-'); hold on;grid on plot(Es_N0_dB,10*log10(theory_evm),'+-'); xlabel('Es/N0,dB'); ylabel('error vector magnitude, dB'); title('EVM vs Es/N0 for different phase noise rms values'); legend('0deg rms','1deg rms','2deg rms','3deg rms','4deg rms','5deg rms')
Figure : EVM vs Es/N0 for different values of rms phase noise
Summary
As a quick rule of thumb, for a system with rms phase noise of 1 degree, the evm due to phase noise alone is -35.16dB and rises by 6dB per octave (or 20dB per decade). The phase noise profile used in this simulations assumes a Gaussian distributed flat spectrum, which is not the case in typical phase noise profiles. The EVM with a classical phase noise profile will be discussed in another post.
References
[1] Georgiadis, A.; , Gain, phase imbalance, and phase noise effects on error vector magnitude, Vehicular Technology, IEEE Transactions on , vol.53, no.2, pp. 443- 449, March 2004 doi: 10.1109/TVT.2004.823477 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1275708&isnumber=28551