基于Matlab模拟LDPC-BP信道编码

⛄ 内容介绍

通信是社会发展的基础。如何提高通信的可靠性,一直是全人类研究的课题。信道编码通过增加冗余来提高系统的抗干扰能力。本文简单介绍了信道编码的基本原理以及分析与识别,通过MATLAB进行仿真,来阐明信道编码在通信系统中传输信息的重要性。

图片

图片

图片

图片

⛄ 部分代码

WER= nb_err./nb_code;

EbN0dB= SNRdB+10*log10(n/k/2);%化成Eb/N0,参考式(1)

figure(1)

semilogy(EbN0dB, WER,'o-','LineWidth',2)

xlabel('Eb/N0')

ylabel('WER')

grid on;

hold on

SNRdB=0:0.25:3; %SNR in dB

k=512/2;

n=1024/2; % 码长

niter= 60;% 最大迭代此时

nb_err = zeros(1,length(SNRdB));

nb_code = zeros(1,length(SNRdB));

nb_err_max= 100 ;

nb_code_max= 1e4;

H= gen_h(n,6,3);% 产生H

[Hs,H]=gen_Hs(H); % 化为系统码

Q= Hs(:,1:k)'; % 生成矩阵的Q

for s= 1:length(SNRdB)

    sigma = 10^(-SNRdB(s)/20);% 其平方是噪声功率

    while nb_err(s)<nb_err_max && nb_code(s)<nb_code_max

        nb_code(s) = nb_code(s)+1;

        b = rand(1,k)<0.5;

        c=[b,rem(b*Q,2)];% 系统码编码

        x=(-1).^c;% BPSK modulation

        noise = sigma * randn(1,length(x));

        y = x+noise;

        lam_ch= 2*y/sigma^2;%软解调

        hat_c= msa(lam_ch,niter,H);

        err = any(hat_c~=c); %c是发送码字,hat_c是硬判决

        if err

            nb_err(s)= nb_err(s)+err;

            disp([nb_err;nb_code])

        end

    end

end

WER= nb_err./nb_code;

EbN0dB= SNRdB+10*log10(n/k/2);%化成Eb/N0,参考式(1)

figure(1)

semilogy(EbN0dB, WER,'s-','LineWidth',2)

xlabel('Eb/N0')

ylabel('WER')

grid on;

hold on

SNRdB=0:0.25:3; %SNR in dB

k=512;

n=1024; % 码长

niter= 60;%最大迭代此时

nb_err = zeros(1,length(SNRdB));

nb_code = zeros(1,length(SNRdB));

nb_err_max= 100 ;

nb_code_max= 1e4;

H= gen_h(n,6,3);%产生H

[Hs,H]=gen_Hs(H); %化为系统码

Q= Hs(:,1:k)'; %生成矩阵的Q

⛄ 运行结果

图片

⛄ 参考文献

[1]张天瑜. 基于LDPC码的联合信源信道编码研究[J]. 曲阜师范大学学报(自然科学版), 2010(4):36.

⛄ 完整代码

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值