tx_interleaver.m

来自「该文件夹给出了卷积编码、交织及维特比软译码仿真程序」· M 代码 · 共 20 行

M
20
字号
% Interleaver

function interleaved_bits = tx_interleaver(in_bits,N_subcarrier,map_flag)

interleaver_depth =N_subcarrier*map_flag;

num_symbols = length(in_bits)/interleaver_depth;

% Get interleaver pattern for symbols
single_intlvr_patt = tx_gen_intlvr_patt(interleaver_depth,N_subcarrier);

% Generate intereleaver pattern for the whole packet
intlvr_patt = interleaver_depth*ones(interleaver_depth, num_symbols);
intlvr_patt = intlvr_patt*diag(0:num_symbols-1);
intlvr_patt = intlvr_patt+repmat(single_intlvr_patt', 1, num_symbols);
intlvr_patt = intlvr_patt(:);

% Perform interleaving
interleaved_bits(intlvr_patt) = in_bits;

⌨️ 快捷键说明

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