viterbi软判决问题
大家好,我编了一个程序,如下:
clear all;
clc;
cycl = 50;
snr_db = 0:1:10;
% 输入信息
msg = randint(1,1024);
ber0 = zeros(cycl,length(snr_db));
ber1 = zeros(cycl,length(snr_db));
ber2 = zeros(cycl,length(snr_db));
% Trellises
trel = poly2trellis(3,[5 7]); %Define trellis for rate 1/2 code.
for n = 1:cycl
for x = 1:length(snr_db)
% Code words
code = convenc(msg,trel); % Encode.
% Interleaver
state = 20;
inter = randintrlv(code,state);
% BPSK 调制
s0 = sign(msg - 0.5);
s1 = sign(inter-0.5);
s2 = sign(code-0.5);
% AWGN Channel
add_noise0=awgn(s0,snr_db(x),