BER результат для QAM модуляции Matlab
Я пытаюсь провести двоичный вектор через модулятор 16-QAM, канал AWGN, демодулятор и в конце измерить BER. по какой-то причине он продолжает давать мне BER=0, даже после того, как я изменю длину вектора. (Я должен был сделать это с каналом Рэлея позже, но я еще не там).
когда я делаю то же самое, но без модулятора я получаю BER!=0
что хорошо
что мне здесь не хватает?
вот мой код:
Sig = randi([0 1],1,1E5);
SigMod=qammod(Sig,16);
y=awgn(SigMod,50);
SigDemod=qamdemod(y,16);
z=SigDemod>0;
BER = biterr(Sig,z)
2 ответа
Решение
Второй вход в awgn
SNR в дБ. В вашем примере SNR составляет 50 дБ, что дает очень маленький BER.
Попробуйте уменьшить SNR, например, до 5 дБ, и вы увидите некоторые битовые ошибки.
Попробуйте увидеть этот пример в Matlab:
SNR = 3; frameLen = 100;
x = randi ([0 1], frameLen, 1);
y = awgn (2 * x-1, SNR);
z = y> 0;
битерр (х, я)