rsc_encode.m

来自「一个turbo码的仿真程序」· M 代码 · 共 32 行

M
32
字号
function y = rsc_encode(g, x, terminated)[n,K] = size(g);m = K - 1;if terminated>0  L_info = length(x);  L_total = L_info + m;else  L_total = length(x);  L_info = L_total - m;end  % initialize the state vectorstate = zeros(1,m);% generate the codewordfor i = 1:L_total   if terminated<0 | (terminated>0 & i<=L_info)      d_k = x(1,i);   elseif terminated>0 & i>L_info      % terminate the trellis      d_k = rem( g(1,2:K)*state', 2 );   end    a_k = rem( g(1,:)*[d_k state]', 2 );   [output_bits, state] = encode_bit(g, a_k, state);   % since systematic, first output is input bit   output_bits(1,1) = d_k;   y(n*(i-1)+1:n*i) = output_bits;end

⌨️ 快捷键说明

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