u.m

来自「Matlab数字通信系统仿真与实现」· M 代码 · 共 30 行

M
30
字号


L_total = 9;
g = [ 1 1 1;
         1 0 1 ];
[n,K] = size(g); 
m = K - 1;
puncture = 0;
 x = [1 0 1 1 0 0 1]    % info. bits
 input = x;
output1 = rsc_encode(g,input,-1)
alpha=[7 6 5 4 3 2 1 8 9]
en_output = encoderm( x, g, alpha, 1)
rate=1/3;
EbN0db = [1.0];
en = 10^(EbN0db/10);
L_c = 4*1*en*rate; 
sigma = 1/sqrt(2*rate*en);
puncture=1;
     r = en_output+sigma*randn(1,L_total*(2+puncture));
 yk = demultiplex(r,alpha,1);
 rec_s = 0.5*L_c*yk;
  L_e(1:L_total) = zeros(1,L_total)
   L_a(alpha) = L_e
    L_all = logmapo(rec_s(1,:), g, L_a, 1); 
     % L_e = L_all - 2*rec_s(1,1:2:2*L_total) - L_a
      
      %L_a = L_e(alpha); 
       % L_all = logmapo(rec_s(2,:), g, L_a, 2);
      %xhat(alpha) = (sign(L_all)+1)/2

⌨️ 快捷键说明

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