br_decode2.m

来自「OFDM宽带无线系统的链路级的仿真程序(多天线」· M 代码 · 共 25 行

M
25
字号
% convulutional decoder
% t is the trellis
% By Carlos
% CTIF,AAU
%clflores@kom.aau.dk

function decoded = BR_decode2(code_rate,R_demod,t)
tb = min(35,floor(length(R_demod)*code_rate));
if code_rate==1
    decoded = R_demod;
    return
elseif code_rate==1/2
     decoded = vitdec(R_demod,t,tb,'trunc','hard');  
     return
elseif code_rate==1/3
    decoded = vitdec(R_demod,t,tb,'trunc','hard'); % Decode.
    return
elseif code_rate==2/3
    coded = -2*R_demod+1;
    nicode = zeros(1,2*length(coded)*code_rate); % Zeros represent inserted data.
    nicode(1:4:end) = coded(1:3:end); % Write actual data.
    nicode(2:4:end) = coded(2:3:end); % Write actual data.
    nicode(3:4:end) = coded(3:3:end); % Write actual data.
    decoded = vitdec(nicode,t,tb,'trunc','unquant'); % Decode.
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?