我正在研究卷积编码和解码。在MATLAB中,我使用vitdec()函数进行解码。结果很好,误码率符合预期,但我想更深入地研究此函数,直到将其击中vitdec()调用的vit()函数(vitdec(函数Matlab)中的代码行402),我都做得很好。 )。在MathWorks或到目前为止的其他任何地方,我都找不到有关此功能的任何帮助。
我要粘贴下面使用vit()函数的vitdec()MATLAB函数的那一部分。
% Call to vit.c
code = double(code); % for proper numerical operation
[varargout{1}, varargout{2}, varargout{3}, varargout{4}] ...
= vit(code, k, n, trellis.numStates, outputs, trellis.nextStates,...
tblen, opmodeNum, dectypeNum, nsdec, puncErasMode, puncVectorRow,...
erasVector, initTableSet, initmetric, initstate, initinput);
% Set output data type to logical if appropriate
if outLog, varargout{1} = logical(varargout{1});
end
else
[varargout{1}, varargout{2}, varargout{3}, varargout{4}] ...
= vitdeccore(code, k, n, trellis.numStates, outputs, trellis.nextStates,...
tblen, opmodeNum, dectypeNum, nsdec, puncErasMode, puncVectorRow,...
erasVector, initTableSet, initmetric, initstate, initinput);
我知道维特比算法的工作原理。我已经用C语言实现了它的结果与MATLAB的结果相匹配。我只想看看videc()如何逐步计算分支和路径指标。任何链接/书籍参考,表示赞赏。