ldpc_demo.m

来自「LDPC码在AWGN信道下的MATLAB仿真程序」· M 代码 · 共 42 行

M
42
字号
%clear all;
%clc;
tic


rows=4096;
cols=8192;


s=round(rand(1, cols-rows));

%产生H矩阵
H=genH(rows,cols);

%使用H矩阵进行LDPC编码
[u,P,rearranged_cols]=ldpc_encode(s,H);
for SNR=1:4:21
amp=1;
tx_waveform=bpsk(u,amp);
rx_waveform=awgn(tx_waveform,SNR);

scale(1:length(u))=1;  %No fading.

%LDPC译码
[uhat vhat]=ldpc_decode(rx_waveform,SNR,amp,scale,H,rearranged_cols);

errmax=find(s~=uhat);
nerr=length(errmax)
BER=nerr/(cols-rows)

%LDPC性能图
plot(SNR,BER,'-.r*')
set(gca,'Yscale','log');
hold on
end
grid on;
ylabel('BER');
xlabel('SNR');
title('LDPC在AWGN下的性能曲线');

toc

⌨️ 快捷键说明

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