久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2344|回復: 1
收起左側

LDPC_decoder(LDPC譯碼程序代碼)

[復制鏈接]
ID:307581 發表于 2018-4-13 20:11 | 顯示全部樓層 |閱讀模式
function [dec,success] = LDPC_decoder(receiveword,sigma,H,IterNum)
[M,N] = size(H);
K = N-M;
rate = K/N;
H = int8(H);
maxrowdegree = max(sum(H'));
maxcolumndegree = max(sum(H));

VNlen=zeros(1,N);
VNset=zeros(N,maxcolumndegree);

CNlen=zeros(1,M);
CNset=zeros(M,maxrowdegree);
for i=1:N
   temp=find(H(:,i));
   VNlen(i)=length(temp);
   for j=1:Vnlen(i)
   VNset(i,j)=temp(j);
   end
end
for i=1:M
   temp=find(H(i,:));
   CNlen(i)=length(temp);
   for j=1:CNlen(i)
      CNset(i,j)=temp(j);
   end
end
%參數初始化
success=0;
p0=(1+exp(-2*(sigma^(-2)).*receiveword)).^(-1);
p1=(1+exp(2*(sigma^(-2))).*receiveword)).^(-1);
messQ0=zeros(M,N);
messQ1=zeros(M,N);
messR0=zeros(M,N);
messR1=zeros(M,N);
for i=1:N
   for j=1:VNlen(i)
      messQ0(VNset(i,j),i)=p0(i);
          messQ1(VNset(i,j),i)=p1(i);
   end
end
iter=0;
%迭代譯碼
for i=1:IterNum
   iter=iter+1;
   for j=1:M;
      for k=1:CNlen(j)
             delta=1;
                 for t=1:CNlen(j)
                    if(CNset(j,k)~=CNset(j,t))
delta=delta*(1-2*messQ1(j,CNset(j,t)));
            end
                end
                messR0(j,CNset(j,k))=0.5+0.5*delta;
                messR1(j,CNset(j,k))=1-messR0(j,CNset(j,k));
      end
    end
    for j=1:N
          for k=1:VNlen(j)
              alpha1=1;
                  alpha2=1;
                  alpha=1;
                  for t=1:VNlen(j)
                     if(VNset(j,k)~=VNset(j,t))
alpha1=alpha1*messR0(VNset(j,t),j);
alpha2=alpha2*messR1(VNset(j,t),j);
             end
                        end
                        alpha=1/(p0(j)*alpha1+p1(j)*alpha2);
                        messQ0(VNset(j,k),j)=alpha*p0(j)*alpha1;
                        messQ1(VNset(j.k),j)=alpha*p0(j)*alpha2;
                        end
                end
                %加權值統計
                Q0=zeros(1,N);
                Q1=zeros(1,N);
                for j=1:N
                   gama1=1;
                   gama2=1;
                   gama=1;
                   for k=1:VNlen(j)
                      gama1=gama1*messR0(VNset(j,k),j);
                      gama2=gama2*messR1(VNset(j,k),j);
                   end
                   gama=1/(p0(j)*gama1+p1(j)*gama2);
                   Q0(j)=gama*p0(j)*gama1;
                   Q1(j)=gama*p1(j)*gama2;
                end
                %譯碼判決
                for j=1:N
                   if(Q0(j)>=0.5)
                      decodeword(j)=0;
                   else
                      decodeword(j)=1;
                   end
                end
                %檢查校驗方程
            CH=mod(double(H)*decodeword',2);
                if(CH==0)
                   success=1;
                   break;
                end
    end
        %譯碼輸出
        dec = decodeword(1,N-M);
               

回復

使用道具 舉報

ID:435800 發表于 2018-11-29 15:34 | 顯示全部樓層
您好,請問您有多進制LDPC的編譯碼程序嗎??
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩视频专区 | 国产成人精品免高潮在线观看 | 国产一级片av | 日韩中文一区二区三区 | 成人在线视频免费播放 | 国产美女福利在线观看 | 成人福利电影 | 免费中文字幕日韩欧美 | 国产a区| 日韩精品视频在线观看一区二区三区 | 精品一区二区三区免费毛片 | 一区二区三区欧美在线观看 | 精品国产一区二区三区久久久蜜月 | 亚洲天天干 | 99热视| 久久久91精品国产一区二区精品 | 亚洲香蕉在线视频 | 一级午夜aaa免费看三区 | 精品视频在线一区 | 97成人免费| 国产农村妇女毛片精品久久麻豆 | 日本五月婷婷 | 色视频在线免费观看 | 国产精品一区二区av | 日本久久久一区二区三区 | 91麻豆精品国产91久久久久久 | 国产精品日韩 | 婷婷久久久久 | 91一区 | 91精品欧美久久久久久久 | 国产日韩精品视频 | 在线免费观看视频你懂的 | 久久亚洲欧美日韩精品专区 | av在线成人 | 欧美日韩国产精品激情在线播放 | 日本电影韩国电影免费观看 | 国产二区三区 | 亚洲久久一区 | 在线黄 | 亚洲精品在线免费观看视频 | 久久国产精品-国产精品 |