A
aliazmat
Guest
друзі,
Я простий імітації awgn канал сверточних кодів, однак код, який я розробив не працює .. PLZ необхідна допомога .... Я хочу, щоб BER кривий
код
КГО;
очистити всі;
N = 1000;
tx_data ті = (1, N);% раунд (Rand (1, N));
snr_db = [-10:2.5:15];
snr_linear = (10. ^ (snr_db/10));
T = poly2trellis ([4 3], [4 5 17 7; 4 2]);% Визначити шпалер.
conv_enc_data = convenc (tx_data, T);% Кодувати рядок з них.
ТБ = 2;% відслідковує довжини для декодування
PE = нулів (розмір (snr_db));% initliaze ПЕ вектор
для I = 1: розмір (snr_db, 2)
Sigma = 1/sqrt (snr_linear (1, I));
nois = 1/sqrt (2) * (randn (1, розмір (conv_enc_data, 2)) J * randn (1, розмір (conv_enc_data, 2)));
шум = nois * сигма;
rx_data = conv_enc_data шум;% додати awgn
detced_bits = (середнє (rx_data, 1)> = 0);
декодірован = vitdec (detced_bits, Т, ТБ, 'TRUNC', 'жорсткого');% Декодування.
nr_of_bit_err = сума (а не (декодірован == tx_data));
ПЕ (I) = nr_of_bit_err / N;
кінець
semilogy (snr_db, PE)
Я простий імітації awgn канал сверточних кодів, однак код, який я розробив не працює .. PLZ необхідна допомога .... Я хочу, щоб BER кривий
код
КГО;
очистити всі;
N = 1000;
tx_data ті = (1, N);% раунд (Rand (1, N));
snr_db = [-10:2.5:15];
snr_linear = (10. ^ (snr_db/10));
T = poly2trellis ([4 3], [4 5 17 7; 4 2]);% Визначити шпалер.
conv_enc_data = convenc (tx_data, T);% Кодувати рядок з них.
ТБ = 2;% відслідковує довжини для декодування
PE = нулів (розмір (snr_db));% initliaze ПЕ вектор
для I = 1: розмір (snr_db, 2)
Sigma = 1/sqrt (snr_linear (1, I));
nois = 1/sqrt (2) * (randn (1, розмір (conv_enc_data, 2)) J * randn (1, розмір (conv_enc_data, 2)));
шум = nois * сигма;
rx_data = conv_enc_data шум;% додати awgn
detced_bits = (середнє (rx_data, 1)> = 0);
декодірован = vitdec (detced_bits, Т, ТБ, 'TRUNC', 'жорсткого');% Декодування.
nr_of_bit_err = сума (а не (декодірован == tx_data));
ПЕ (I) = nr_of_bit_err / N;
кінець
semilogy (snr_db, PE)