debpsk.m
来自「一份完整的OFDM仿真程序,设计完整并在matlab7.0环境下运行成功」· M 代码 · 共 45 行
M
45 行
%该程序用来完成对输入信号进行4QAM解调,属于《链路级仿真软件设计》程序二的4QAM解调模块
function [llr]=debpsk(x,h,SNR_db)
%[llr]=deqam4(x)
%x是1*(Lp+8)的复向量,其中向量元素表示输入到解调器中的信号
%h为信道估值向量,是1*(Lp+8)的复向量,其中向量元素表示对应采样时刻的信道状态。
%SNR_db为信道噪比。
%llr为x通过解调器后的输出信号,是1*2(Lp+8) 的实向量,表示经过相关解调后的数据“似然比“信息。
%SNR_db为信道信噪比,信号功率为1,噪声功率为n_power
SNR_linr=10^(SNR_db/10);
%噪声方差
n_power=1/SNR_linr;
%len_input为输入信号的长度
len_input=length(x);
%首先判断是奇数位还是偶数位
for i=1:len_input
if (mod(i,2)==1)
s1=1;
s2=-1;
%计算信号点与标准信号星座点之间的距离
d1=abs(x(i)-s1);
d2=abs(x(i)-s2);
else
s1=j;
s2=-j;
%计算信号点与标准信号星座点之间的距离
d1=abs(x(i)-s1);
d2=abs(x(i)-s2);
end
%计算该位的似然比信息,越0越正,越1越负
llr(i)=1*(d2^2-d1^2)/(n_power*(1/((abs(h(i)))^2)));
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?