⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 decodelogdomainsimple.m

📁 LDPC Decoder for rate=1/2 Min-Sum, Sum-Product, Scaling Min-Sum Layered Decoding for Matlab Code
💻 M
字号:
function vHat = decodeLogDomainSimple(rx, H, iteration)
[M N] = size(H);
Lci = -rx';
Lrji = zeros(M, N);
Pibetaij = zeros(M, N);
Lqij = H.*repmat(Lci, M, 1);
for n = 1:iteration
   alphaij = sign(Lqij);  
   betaij = abs(Lqij);
   % ----- Horizontal step -----
   for i = 1:M
      c1 = find(H(i, :));
      for k = 1:length(c1)
         minOfbetaij = realmax;
         for l = 1:length(c1)
            if l ~= k  
               if betaij(i, c1(l)) < minOfbetaij
                  minOfbetaij = betaij(i, c1(l));
               end
            end           
         end
         prodOfalphaij = prod(alphaij(i, c1))*alphaij(i, c1(k)); 
         Lrji(i, c1(k)) = prodOfalphaij*minOfbetaij;      
      end
   end
   % ------ Vertical step ------
   for j = 1:N
      r1 = find(H(:, j));
      for k = 1:length(r1)         
         Lqij(r1(k), j) = Lci(j) + sum(Lrji(r1, j)) - Lrji(r1(k), j);    
      end
      LQi = Lci(j) + sum(Lrji(r1, j));
      if LQi < 0
         vHat(j) = 1;
      else
         vHat(j) = 0;
      end                 
   end
end
fprintf('Min-sum is done...\n');

⌨️ 快捷键说明

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