📄 gen2trellis.m
字号:
function [trellis1,trellis2,statego]=gen2trellis(g1,g2,M)
% function to change generator code to trellis
% trellis1 = trellis antenna 1
% trellis2 = trellis antenna 2
% statego = state moving
v1 = length(g1)-1;
v2 = length(g2)-1;
v = v1+v2;
jumlahstate = 2^v;
m =log2 (M);
state = 0:jumlahstate-1;
for a=1:jumlahstate
for b=1:4
input = [getbits(state (1,a),jumlahstate/2),getbits(state(1,b),2)];
% serial to paralel
n_kol = length (input)/2;
for index=0:n_kol-1
c(:,index+1) = input(1,(m * index)+1:m*(index+1));
end
temp = zeros (m,v);
for k=0:n_kol-1 % time
% initialzation
for in=0:v-2
temp(:,v-in)=temp(:,v-in-1);
end
temp(:,1)=c(:,k+1);
% symbol = g*c
for l=1:m
for j=0:v1
stemp1(l,j+1)= g1(l,j+1)*temp(1,j+1);
end
for j=0:v2
stemp2(l,j+1)= g2(l,j+1)*temp(2,j+1);
end
shat(l,k+1) = sum(sum(stemp1)) + sum(sum(stemp2));
stemp1=[];stemp2=[];
end
temp;
end
s = mod(shat,M);
trellis1(a,b) = s(1,n_kol);
trellis2(a,b) = s(2,n_kol);
statego(a,b) = bit2num(input(1,(length(input)-v2):length(input)));
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -