tx_puncture.m
来自「MATLAB Simulation of OFDM System」· M 代码 · 共 20 行
M
20 行
%打孔
function punctured_bits = tx_puncture(in_bits, code_rate)
[punc_patt, punc_patt_size] = get_punc_params(code_rate);
% 剩余的比特即分组最后一些不是打孔窗口大小倍数的比特。
num_rem_bits = rem(length(in_bits), punc_patt_size);
puncture_table = reshape(in_bits(1:length(in_bits)-num_rem_bits), punc_patt_size, fix(length(in_bits)/punc_patt_size));
tx_table = puncture_table(punc_patt,:); %打孔
% 对剩余比特进行打孔
rem_bits = in_bits(length(in_bits)-num_rem_bits+1:length(in_bits));
rem_punc_patt = find(punc_patt<=num_rem_bits);
rem_punc_bits = rem_bits(rem_punc_patt)';
punctured_bits = [tx_table(:)' rem_punc_bits];
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?