PSK Modulation performance in rayleigh channel
조회 수: 6 (최근 30일)
이전 댓글 표시
Hi dear friends:
I intend to simulate the performance of PSK modulation in rayleigh channel. First I used the example of Matlab for DPSK which is:
% Create Rayleigh fading channel object.
chan = rayleighchan(1/10000,100);
% Generate data and apply fading channel.
M = 2; % DBPSK modulation order
hMod = modem.dpskmod('M', M); % Create a DPSK modulator
hDemod = modem.dpskdemod(hMod); % Create a DPSK demodulator
% using the modulator
tx = randi([0 M-1],50000,1); % Generate a random bit stream
dpskSig = modulate(hMod, tx); % DPSK modulate the signal
fadedSig = filter(chan,dpskSig); % Apply the channel effects
% Compute error rate for different values of SNR.
SNR = 0:2:20; % Range of SNR values, in dB.
numSNR = length(SNR);
BER = zeros(1, numSNR);
for n = 1:numSNR
rxSig = awgn(fadedSig,SNR(n)); % Add Gaussian noise
rx = demodulate(hDemod, rxSig); % Demodulate
reset(hDemod);
% Compute error rate.
[nErrors, BER(n)] = biterr(tx,rx);
end
% Compute theoretical performance results, for comparison.
BERtheory = berfading(SNR,'dpsk',M,1);
% Plot BER results.
semilogy(SNR,BERtheory,'b-',SNR,BER,'r*');
legend('Theoretical BER','Empirical BER');
xlabel('SNR (dB)'); ylabel('BER');
title('Binary DPSK over Rayleigh Fading Channel');
the output for this code is sensible and it fits the theoretical curve.
But when I edit the code to do the simulations for psk modulation like bellow:
hMod = modem.pskmod('M', M);
hDemod = modem.pskdemod(hMod);
This time I get an approximately flat line as the BER curve. I don't know what's wrong with it?! It will be very appreciated if you help me with this tricky problem.
댓글 수: 0
답변 (1개)
Deepak Rathore
2013년 4월 21일
Dear This is due to not using the channel estimation or equalizer. DPSK not require but bpsk, qpsk and qam require the channel compensation at the receiver.
댓글 수: 4
ABDUL
2020년 10월 2일
which is the best channel estimation or equalizer that can be used for m-ary psk for implementing the BER of the M-ary psk systems
Regards
Abdul Azeez
참고 항목
카테고리
Help Center 및 File Exchange에서 Propagation and Channel Models에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!