main.m

来自「卷积码的Viterbi译码算法仿真程序 要求:递归卷积码」· M 代码 · 共 55 行

M
55
字号
%  mainclose all;clear all;global  state_num;global  memory_len;global  state_inbits;global  state_outbits1;global  state_outbits2;global gama;global alpha;frame_len=400;frame_num=100;ViterbiInit;%inbits=[1 0 1 0 0 1 1 1]%tx_bits  = Encoder( inbits )%L=length(tx_bits);%rx_bits=tx_bits+wgn(L,2,1);%[LLR,dec_outbits ] =ViterbiDecoder( 0,rx_bits );%LLR%dec_outbits pe=[];for SNR=0:4    SNR    E=[];    for n=1:frame_num        inbits=randint(1,frame_len);        tx_bits=encoder(inbits);              L=length(tx_bits);        Pn=-SNR;           %Eb=1=0dB        rx_bits=tx_bits+wgn(L,2,Pn);               [LLR,dec_outbits ] =ViterbiDecoder(Pn,rx_bits);                E=[E abs(inbits-dec_outbits)];    end    pe=[pe mean(E)];endsnr=(0:4);semilogy(snr,pe);grid

⌨️ 快捷键说明

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