A myterious problem in help example of DPSK in Rayleigh channel
2 次查看(过去 30 天)
显示 更早的评论
The following Matlab HELP code evaluates the performance of dpsk modulation in Rayleigh channel:
% 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 oupt put is completely ok but when I increase the SNR range to 80dB like this:
SNR = 0:2:80; % Range of SNR values, in dB.
this time there will be an irriducible BER floor in the output ber curve after SNR of 30dB. I think bcuz of limmited number of dpsk samples the BER should be zero for high SNRs. Can anyone justify why this happens?
1 个评论
oziyakuza
2016-12-3
I have the same problem, but I could not solve the issue. If you have any progress please let me know.
回答(0 个)
另请参阅
类别
在 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!