i'm trying to encode and decode a simple message using Matlab , Im trying to implement in matlab viterbi decoder with k=7 , r=1/2 .
so I coded message which it's [0 0 1] in the encoder k=7 , r=1/2 . so the output of the encoder I entered it to my viterbi decoder that I decoded but the decoded
message isn't the same as input message , it means the decoded message should be the same as [0 0 1].
my code in matlab is:
msg=[1 1 0]; %input
constlen = 7;
codegen = [171, 133]; % G1=171 , G2=133. this is parameters for k=7 , r=1/2 .
trellis = poly2trellis(constlen, codegen);
ViterbiDecoderMsg=vitdec(coded, trellis, length(msg),'cont','soft',1);
the output (decoded message) isn't the same input message, it means that my viterbi decoder isn't properly working and I get wrong decoded message.
Note: the output of the encoder is two bits (a0, a1).
any help please how do I update/fix my code in order to get correct decoded message as the input message?