您现在的位置:首页 >> 编解码 >> 内容

m基于BP译码的LDPC误码率matlab仿真,分析不同码长,码率,信道对译码性能的影响,对比卷积码

时间:2023/2/23 20:02:15 点击:

  核心提示:14_017_m,包括程序操作录像...

1.完整项目描述和程序获取

>面包多安全交易平台:https://mbd.pub/o/bread/ZJWYm5Zt

>如果链接失效,可以直接打开本站店铺搜索相关店铺:

点击店铺

>如果链接失效,程序调试报错或者项目合作可以加微信或者QQ联系。

2.部分仿真图预览





3.算法概述

         LDPC ( Low-density Parity-check,低密度奇偶校验)码是由 Gallager 在1963 年提出的一类具有稀疏校验矩阵的线性分组码 (linear block codes),然而在接下来的 30 年来由于计算能力的不足,它一直被人们忽视。1996年,D MacKay、M Neal 等人对它重新进行了研究,发现 LDPC 码具有逼近香农极限的优异性能。并且具有译码复杂度低、可并行译码以及译码错误的可检测性等特点,从而成为了信道编码理论新的研究热点。

4.部分源码

...................................................................

R        = 0.5;

N        = 204;    

M        = N*R;

EbN0     = [0,1,2,3,4,5]; 

max_iter = 40;

[H,G]    = getG(M,N);

 

disp('Start......');

for i=1:length(EbN0)

    

    Bit_err(i) = 0;

    Num_err    = 0;

    Numbers    = 0; %误码率累加器

    

    while Num_err <= Times(i)

          Num_err

          fprintf('Eb/N0 = %f\n', EbN0(i));

          Trans_data = round(rand(1,N-M));  %产生需要发送的随机数

          ldpc_code  = mod(Trans_data*G,2); %LDPC编码

          Trans_BPSK = 2*ldpc_code-1;       %BPSK

          

          %通过高斯信道

          sigma      = sqrt(1./(2*10^(EbN0(i)/10)*R));  

          Rec_BPSK   = Trans_BPSK + sigma*randn(1,size(G,2));   

          

          %LDPC译码 

          z_hat = func_Dec(Rec_BPSK,sigma,H,max_iter);

 

           x_hat      = z_hat(size(G,2)+1-size(G,1):size(G,2));

 

         [nberr,rat]  = biterr(x_hat',Trans_data);

          Num_err     = Num_err+nberr;

          Numbers     = Numbers+1;    

    end 

    Bit_err(i)=Num_err/(N*Numbers);

end

figure;

semilogy(EbN0,Bit_err,'o-r');

xlabel('Eb/N0(dB)');

ylabel('BER');

grid on;

if N == 204

   save R1.mat EbN0 Bit_err

end

if N == 504

   save R2.mat EbN0 Bit_err

end

if N == 1008

   save R3.mat EbN0 Bit_err

end

14_017_m

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关文章
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168