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

📄 rx_qpsk_demod.m

📁 此代码是LDPC码进行BP算法的重要参考代码
💻 M
字号:
function [pr, soft_bits] = rx_qpsk_demod(rx_symbols, SNR)

n_rx_symbols=size(rx_symbols, 2);
n_bits=n_rx_symbols*2;

soft_bits(2:2:n_bits) = imag(rx_symbols);  %bit1;
soft_bits(1:2:n_bits) = real(rx_symbols);  %bit0;

noise_var = 1/(10^(SNR/10));

% Angle [-3*pi/4 -pi/4 pi/4 3*pi/4] corresponds to 
% Gray code vector [00 10 11 01], respectively.
table=exp(j*[-3/4*pi 3/4*pi -1/4*pi 1/4*pi]);     % generates qpsk symbols

gMat=zeros(4,n_rx_symbols);
pn1=zeros(1,n_bits);
pn0=zeros(1,n_bits);

%LDPC译码
%依次计算接收信号与各星座点的欧氏距离
for i=1:4
   gMat(i,:)=exp(-(real(rx_symbols-table(i)).^2+imag(rx_symbols-table(i)).^2)/noise_var);
end

pn1(1:2:n_bits)=(gMat(3,:)+gMat(4,:));
pn0(1:2:n_bits)=(gMat(1,:)+gMat(2,:));
pn1(2:2:n_bits)=(gMat(2,:)+gMat(4,:));
pn0(2:2:n_bits)=(gMat(1,:)+gMat(3,:));

pr=pn1./pn0;

⌨️ 快捷键说明

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