• 大小: 2KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-19
  • 语言: 其他
  • 标签:

资源简介

212卷积码的编码与译码,并且具有对编码序列随机出错的功能,以及误码率的计算

资源截图

代码片段和文件信息

function outsignal=decode(signal)
d0=0;m0=[];
d1=0;m1=[];
d2=0;m2=[];
d3=0;m3=[];
s0=[0 0];
s1=[0 1];
s2=[1 0];
s3=[1 1];
%N=1
data=signal(1:2);
d0=path(datas0);
m0=[0];

d1=path(datas3);
m1=[1];
%N=2
yd0=d0;yd1=d1;
ym0=m0;ym1=m1;
data=signal(3:4);
d0=yd0+path(datas0);
m0=[ym00];

d1=yd0+path(datas3);
m1=[ym01];

d2=yd1+path(datas2);
m2=[ym10];

d3=yd1+path(datas1);
m3=[ym11];
%N>=3
for i=5:2:length(signal)
    ym0=m0;ym1=m1;ym2=m2;ym3=m3;
    yd0=d0;yd1=d1;yd2=d2;yd3=d3;
    data=signal(i:(i+1));
    %状态0的两个路径比较
    if(d0+path(datas0))<(d2+path(datas3))
        d0=d0+path(datas0);
        m0=[ym00];
    else
        d0=d2+path(datas3);
        m0=[ym20];
    end
     %状态1的两个路径比较 
      if(d0+path(datas3))<(d2+path(datas0))
        d1=d0+path(datas3);
        m1=[ym01];
    else
        d1=d2+path(datas3);
        m1=[ym21];
      end
     %状态2的两个路径比较 
     if(d1+path(datas2))<(d3+path(datas1))
        d2=d1+path(datas2);
        m2=[ym10];
    else
        d2=d3+path(datas1);
        m2=[ym30];
     end
     %状态3的两个路径比较 
     if(d1+path(datas1))<(d3+path(datas2))
        d3=d1+path(datas1);
        m3=[ym11];
    else
        d3=d3+path(datas2);
        m3=[ym31];
     end
end
m0m1m2m3
outsignal=m0(1:(length(m0)-2));
end

    


     
     
        
    






 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1439  2009-05-13 21:30  212卷积\decode.m

     文件        328  2009-05-21 23:04  212卷积\encode.m

     文件        538  2009-05-21 22:35  212卷积\main.m

     文件        424  2009-05-21 21:51  212卷积\opposite.m

     文件         73  2009-05-13 19:58  212卷积\path.m

     目录          0  2009-06-17 21:52  212卷积

----------- ---------  ---------- -----  ----

                 2802                    6


评论

共有 条评论

相关资源