% a function to calculate the locator polynomial according to the syndrome polynomial
function sigma_x=rs_decode_iterate(synd_x)
% for debug, matrix 'x' can storage values of every iteration
% the last row is the final result
sigma=zeros(8,7);
% initial values
x(-1+2,1)=1;
D=zeros(1,8);
D(-1+2)=0;
d=zeros(1,8);
d(-1+2)=1;
sigma(0+2,1)=1;
D(0+2)=0;
d(0+2)=synd_x(1+1);
j=0;
% 'flag' is to record the last non-zero d
flag=-1;
for j=0:5
% massey arithmetic
if d(j+2)==0
sigma(j+2+1,:)=sigma(j+2,:);
D(j+2+1)=D(j+2);
else
% to find the 'flag' for the iterate
sigmaji=circshift(sigma(flag+2,:),[0 j-flag]);
% iteration to calculate locator polynomial
for l=1:7
% if cc(l)==0
% x(j+2+1,l)=0;
% else
sigma(j+2+1,l)=rs_add(sigma(j+2,l),rs_mul(rs_mul(d(j+2),rs_rev(d(flag+2))),sigmaji(l)));
% end
end
% to get the D(j)
for h=1:7
if sigma(j+2+1,h)~=0
D(j+2+1) =h-1;
end
end
flag=j;
end
% calculate d for every iteration
if j~=5
r=j+1;
d(r+2)=synd_x(r+1+1);
for k=1:D(r+2)
d(r+2)=rs_add(d(r+2),rs_mul(sigma(r+2,k+1),synd_x(r+1-k+1)));
end
end
end
sigma_x=sigma(6+2,1:(D(8)+1));
RS_Code.rar_RS code_rs_rs matlab
版权申诉
10 浏览量
2022-09-21
06:04:57
上传
评论
收藏 7KB RAR 举报
小波思基
- 粉丝: 72
- 资源: 1万+
最新资源
- Pytorch-pytorch深度学习教程之前馈神经网络.zip
- Pytorch-pytorch深度学习教程之线性回归.zip
- Pytorch-pytorch深度学习教程之基本操作.zip
- 基于QT的地图可视化桌面系统后台数据库为MySQL5.7源码.zip
- 基于simulink的PLL锁相环系统仿真【包括模型,文档,参考文献,操作步骤】
- 基于EM-GMM模型的目标跟踪和异常行为检测matlab仿真【包括程序,注释,参考文献,操作步骤,说明文档】
- 2109010044_胡晨燕_选课管理数据库设计与实现.prj
- 帕鲁介绍的PPT备份没什么好下的
- demo1-202405
- 两种方式修改Intel网卡MAC地址
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈