Matlab 软维特比解码器工作不正常
我一直在matlab2009的简单1/2速率卷积编码器上研究维特比解码器。 这是我的密码Matlab 软维特比解码器工作不正常,matlab,telecommunication,viterbi,Matlab,Telecommunication,Viterbi,我一直在matlab2009的简单1/2速率卷积编码器上研究维特比解码器。 这是我的密码 trel = poly2trellis(3,[7 5]); msg = [ 0 1 0 1 1 1 0 0 1 0 1 0 0 0 1 ]; code = convenc(msg,trel); % Traceback Length tblen = 5; ucode = real(awgn(1-2*code,tblen,'measured')); dcd = vitdec(ucode,trel,tblen
trel = poly2trellis(3,[7 5]);
msg = [ 0 1 0 1 1 1 0 0 1 0 1 0 0 0 1 ];
code = convenc(msg,trel);
% Traceback Length
tblen = 5;
ucode = real(awgn(1-2*code,tblen,'measured'));
dcd = vitdec(ucode,trel,tblen,'cont','unquant');
根据这个输入代码
我得到的代码是00 11 10 00 01 10 01 11 10 00 10 11 00 11
哪个是正确的
但是谈到维特比译码器后输出的dcd是不正确的
i、 e 000000101110010。这与我的味精输入大不相同
指引我去哪里不正确解码输出取决于您选择的
操作模式
输入的类型
在cont
的情况下,输出延迟等于tblen
符号数,而还有“term”和trunc
模式
您可以将初始的msg(1,end-tblen)
符号与dcd(1,tblen+1:end)
进行比较。他们是一样的
您可以在Matlab帮助中查看vitdec 它看起来转移到了我身上……是的,我早就意识到我的错误了。仍然感谢你的回答。:)Ashish Sharma你能帮我用软输入软输出的matlab代码吗。