Professional Documents
Culture Documents
and operators point of view. All the parameters related to QoS are not same important for all users and applications.There are many QoS parameters defined by different standardization bodies like 3GPP, 3GPP2, GSMA, ITU-T,Mobile WiMAX Forum etc. [2-7] to meet user's QoS requirement.
EJ/Io (Eb/1o)
SNR
Minimum Path Loss Channel Capacity Maximum Bit Rate Delay Variation ,Jitter Handover Delay Max Transfer Delay Dropped Call Rate Call Completion Rate Call Setup Success Ratio
The blocking probability for cleared calls and an infinite number of sources
This is Erlang's Loss Formula or the Erlang B formula for blocking probability
The call congestion (holding probability) is the probability that N channels are busy with
M-1 users:
where: QoS = overall QoS [unitless] MR = number of received message [messsages] MS;ideal = number of messages attempted to be sent [messsages] MS;actual = actual number of messages sent [messsages] TI = Timeliness Index [seconds] TD = average time delay [seconds] LC = load consumption
(a) Generation of random BPSK modulated symbols +1s and -1s (b) Passing them through Additive White Gaussian Noise channel (c) Demodulation of the received symbol based on the location in the constellation (d) Counting the number of errors
(e) Repeating the same for multiple Eb/No value.
clc clear N = 10^4% number of bits or symbols rand('state',100); % initializing the rand() function randn('state',200); % initializing the randn() function % Transmitter ip = rand(1,N)>0.5; % generating 0,1 with equal probability s = 2*ip-1; % BPSK modulation 0 -> -1; 1 -> 1 n = 1/sqrt(2)*[randn(1,N) + j*randn(1,N)]; % white gaussian noise, 0dB variance Eb_N0_dB = [-3:10]; y=qfunc(Eb_N0_dB); ps= 0.5*y semilogy(Eb_N0_dB,ps); hold on xlabel('Eb/No, dB'); ylabel('Bit Error Rate'); title('Bit error probability curve for BPSK modulation');
clear N = 10^4% number of bits or symbols rand('state',100); % initializing the rand() function randn('state',200); % initializing the randn() function % Transmitter ip = rand(1,N)>0.5; % generating 0,1 with equal probability s = 2*ip-1; % BPSK modulation 0 -> -1; 1 -> 1 n = 1/sqrt(2)*[randn(1,N) + j*randn(1,N)]; % white gaussian noise, 0dB variance Eb_N0_dB = [-3:10]; % multiple Eb/N0 values for ii = 1:length(Eb_N0_dB) % Noise addition y = s + 10^(-Eb_N0_dB(ii)/20)*n; % additive white gaussian noise % receiver - hard decision decoding ipHat = real(y)>0; % counting the errors nErr(ii) = size(find([ip- ipHat]),2); end simBer = nErr/N; % simulated ber theoryBer = 0.5*erfc(sqrt(10.^(Eb_N0_dB/10))); % theoretical ber % plot
close all figure semilogy(Eb_N0_dB,theoryBer,'b.-'); hold on semilogy(Eb_N0_dB,simBer,'mx-'); axis([-3 10 10^-5 0.5]) grid on legend('theory', 'simulation'); xlabel('Eb/No, dB'); ylabel('Bit Error Rate'); title('Bit error probability curve for BPSK modulation');
clear N = 10^5; % number of symbols alpha4pam = [-3 -1 1 3]; % 4-PAM alphabets Es_N0_dB = [-3:20]; % multiple Eb/N0 values ipHat = zeros(1,N); for ii = 1:length(Es_N0_dB) ip = randsrc(1,N,alpha4pam);
s n y r
= = = =
(1/sqrt(5))*ip; % normalization of energy to 1 1/sqrt(2)*[randn(1,N) + j*randn(1,N)]; s + 10^(-Es_N0_dB(ii)/20)*n; % additive white gaussian noise real(y); % taking only the real part
ipHat(find(r< -2/sqrt(5))) = -3; ipHat(find(r>= 2/sqrt(5))) = 3; ipHat(find(r>=-2/sqrt(5) & r<0)) = -1; ipHat(find(r>=0 & r<2/sqrt(5))) = 1; nErr(ii) = size(find([ip- ipHat]),2); end simBer = nErr/N; theoryBer = 0.75*erfc(sqrt(0.2*(10.^(Es_N0_dB/10)))); close all figure semilogy(Es_N0_dB,theoryBer,'b.-'); hold on semilogy(Es_N0_dB,simBer,'mx-'); axis([-3 20 10^-5 1]) grid on legend('theory', 'simulation'); xlabel('Es/No, dB') ylabel('Symbol Error Rate') title('Symbol error probability curve for 4-PAM modulation')
clear N = 10^5; % number of symbols Es_N0_dB = [-3:20]; % multiple Eb/N0 values ipHat = zeros(1,N); for ii = 1:length(Es_N0_dB) ip = (2*(rand(1,N)>0.5)-1) + j*(2*(rand(1,N)>0.5)-1); % s = (1/sqrt(2))*ip; % normalization of energy to 1 n = 1/sqrt(2)*[randn(1,N) + j*randn(1,N)]; y = s + 10^(-Es_N0_dB(ii)/20)*n; y_re = real(y); % real y_im = imag(y); % imaginary ipHat(find(y_re < 0 & y_im < 0)) = -1 + -1*j; ipHat(find(y_re >= 0 & y_im > 0)) = 1 + 1*j; ipHat(find(y_re < 0 & y_im >= 0)) = -1 + 1*j; ipHat(find(y_re >= 0 & y_im < 0)) = 1 - 1*j; nErr(ii) = size(find([ip- ipHat]),2); end simSer_QPSK = nErr/N; theorySer_QPSK = erfc(sqrt(0.5*(10.^(Es_N0_dB/10)))) (1/4)*(erfc(sqrt(0.5*(10.^(Es_N0_dB/10))))).^2; close all figure semilogy(Es_N0_dB,theorySer_QPSK,'b.-'); hold on semilogy(Es_N0_dB,simSer_QPSK,'mx-'); axis([-3 15 10^-5 1]) grid on legend('theory-QPSK', 'simulation-QPSK'); xlabel('Es/No, dB') ylabel('Symbol Error Rate') title('Symbol error probability curve for QPSK(4-QAM)')
clear N = 2*10^5; % number of symbols alpha16qam = [-3 -1 1 3]; % 16-QAM alphabets Es_N0_dB = [0:20]; % multiple Es/N0 values ipHat = zeros(1,N); for ii = 1:length(Es_N0_dB) ip = randsrc(1,N,alpha16qam) + j*randsrc(1,N,alpha16qam); s = (1/sqrt(10))*ip; % normalization of energy to 1 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 y_re = real(y); % real part y_im = imag(y); % imaginary part ipHat_re(find(y_re< -2/sqrt(10))) ipHat_re(find(y_re > 2/sqrt(10))) ipHat_re(find(y_re>-2/sqrt(10) & y_re<=0)) ipHat_re(find(y_re>0 & y_re<=2/sqrt(10))) ipHat_im(find(y_im< -2/sqrt(10))) ipHat_im(find(y_im > 2/sqrt(10))) ipHat_im(find(y_im>-2/sqrt(10) & y_im<=0)) = -3; = 3; = -1; = 1; = -3; = 3; = -1;
end
ipHat_im(find(y_im>0 & y_im<=2/sqrt(10))) = 1; ipHat = ipHat_re + j*ipHat_im; nErr(ii) = size(find([ip- ipHat]),2); % couting the number of errors
simBer = nErr/N; theoryBer = 3/2*erfc(sqrt(0.1*(10.^(Es_N0_dB/10)))); close all figure semilogy(Es_N0_dB,theoryBer,'b.-','LineWidth',2); hold on semilogy(Es_N0_dB,simBer,'mx-','Linewidth',2); axis([0 20 10^-5 1]) grid on legend('theory', 'simulation'); xlabel('Es/No, dB') ylabel('Symbol Error Rate') title('Symbol error probability curve for 16-QAM modulation')
The capacity of the SISO additive white Gaussian noise (AWGN) channel is
For MIMO, when assuming the transmitter has M antennas and the receiver has N antennas and Channel Side Information (CSI) is not present, the
capacity i where _ is a constant, H is the channel matrix and is the average SNR at each receiver branch
Next task: to compare BER for BPSK modulation with 2x2 MIMO with different MIMO receiver structures. MIMO equalization schemes (a) Minimum Mean Square Error (MMSE) equalization, (b) Zero Forcing equalization with Successive Interference Cancellation (ZF-SIC) and (c) ZF-SIC with optimal ordering.