1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/xuchonghhh233-XC_5g_ldpc

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
ldpcExample.m 973 Байты
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Peter Neuhaus Отправлено 11.12.2018 18:26 2952189
%% Clean up
clear all;
clc;
%% Init
if ~isdeployed
addpath('./codes');
end
% Constellation size
M = 4;
% LDPC config
blkSize = 256;
codeRate = '5/6';
% Get LDPC struct
LDPC = ldpcGet(blkSize, codeRate);
% Simulation parameters
ebno = 8;
numIter = 1e2;
numErr = 0;
% Convert E_b/N_0 to some SNR
snr = ebno + 10*log10(log2(M)) + 10*log10(str2num(codeRate));
%% Simulate
for i = 1:numIter
% Generate random data
data = randi([0 1], 1, LDPC.numInfBits);
% Encode
dataEnc = ldpcEncode(data, LDPC);
% QAM mapping
dataMod = qammod(dataEnc(:), M, 'InputType', 'bit', 'UnitAveragePower', true);
% AWGN
dataRx = awgn(dataMod, snr);
% LLR demapping
dataLlr = qamdemod(dataRx, M, 'OutputType', 'llr', 'UnitAveragePower', true);
% Decode
dataHat = ldpcDecode(dataLlr', LDPC);
% Count number of bit errors
numErr = numErr + sum(abs(dataHat - data));
end
%% BER
ber = numErr / (numIter * LDPC.numInfBits)

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/xuchonghhh233-XC_5g_ldpc.git
git@api.gitlife.ru:oschina-mirror/xuchonghhh233-XC_5g_ldpc.git
oschina-mirror
xuchonghhh233-XC_5g_ldpc
xuchonghhh233-XC_5g_ldpc
master