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

📄 convsysterm_withoutconv.m

📁 卷积码的vitrbi译码 M语言仿真 包括各种情况下的 对比
💻 M
字号:
Pd=268000; %每帧符号数
tblen=35; %回溯深度
msg=randint(Pd,1); %生成一帧二进制随机序列
trel=poly2trellis(7,[171,133]); %定义(2,1,7)卷积码网格
out_cnv=convenc(msg,trel); %卷积编码
out_BPSKModulator=pskmod(out_cnv,2); %BPSK调制
hold off;%准备一个空白图形
%在信噪比-10到10dB的范围内进行BPSK解调和维特比译码
for SNR=-10:10
    out_AWGN=awgn(out_BPSKModulator,SNR);
    out_BPSKDemodulator=pskdemod(out_AWGN,2);
    out_Viterb=vitdec(out_BPSKDemodulator,trel,tblen,'trunc','hard');
    i=SNR+11;
    [number,ratio(i)]=biterr(out_Viterb,msg);
end
%绘制误比特率曲线
SNR=-10:10;    
i=SNR+11;
semilogy(SNR,ratio(i),'-*'),title('不同信噪比下有无卷积编译码的误比特率曲线比较'),xlabel('信噪比/dB'),ylabel('误比特率');
hold on;
grid on;
    
out_BPSKModulator=pskmod(msg,2); %BPSK调制
%在信噪比-10到10dB的范围内进行BPSK解调和维特比译码
for SNR=-10:10
    out_AWGN=awgn(out_BPSKModulator,SNR);
    out_BPSKDemodulator=pskdemod(out_AWGN,2);
    i=SNR+11;
    [number,ratio(i)]=biterr(out_BPSKDemodulator,msg);
end
%绘制误比特率曲线
SNR=-10:10;
i=SNR+11;    
semilogy(SNR,ratio(i),'-o');

legend('经过(2,1,7)卷积编译码','未编码',3);%图例
    

⌨️ 快捷键说明

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