awgn_soft_2psk.m

来自「该MATLAB程序评估了viterbi算法在衰落信道下的卷积译码的性能」· M 代码 · 共 30 行

M
30
字号
%蒙特卡罗仿真(AWGN信道,软判决,2PSK)
%
Eb=1;     %每比特的能量,能量越大,卷积译码的误码率越小
k=1;
G=[1 0 1;1 1 1];
input=[1 0 1 0 1 1 1 0 0 1 ];
dsource=cnv_encd(G,k,input);
N=length(dsource);
n=size(G,1);    %得到码字长度
Ec=k*Eb/n;      %得到码元能量

%产生加性高斯噪声
for i=1:N
awgn(i)=gngauss(0,0.5);
end;

% 通过AWGN信道
for i=1:N
%matched filter output
%soft-decision
   %产生的高斯噪声均值为0,方差为1
   if(dsource(i)==0)
       r(i)=-sqrt(Ec)+awgn(i);
   else 
       r(i)=sqrt(Ec)+awgn(i);
   end;
end;
   
%软判决维特比译码
[decoder_output,survivor_state,cumulated_metric]=soft_2PSK_viterbi(G,k,r,Ec);

⌨️ 快捷键说明

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