卷积码(3 1 2)编译码matlab程序
电子信息与计算机工程系2011级信息工程
——卷积码(3 1 2)
1.卷积码编译码程序
1.1内嵌函数trel1.m
clear;clc
trel = poly2trellis(3,[06,05,07]);
msg = randint(1,10)
code = convenc(msg,trel)
code1 = encode312(msg)
code-code1
msg1=decode_312(code)
msg-msg1
1.2编码程序encode312.m
function code = encode312(msg)
code = zeros(1,length(msg)*3);
current = [0 0];
for i = 1:length(msg)
[out,next] = state_machine(msg(i),current);
current = next;
code(3*i-2) = out(1);
code(3*i-1) = out(2);
code(3*i) = out(3);
end